Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Вещание видео
на 10 гбит/с
Макс Лапшин,
CTO Flussonic LLC.

Sunday, October 27, 13
Стриминг видеофайлов
•
•
•
•
•
Sunday, October 27, 13

Пользователь хочет посмотреть видео
Надо показать ему в реальном вр...
Седая древность в IPTV
•
•
•
•
•
Sunday, October 27, 13

Constant bitrate
каждая секунда — фиксированное количество байт
л...
Хайтек от IPTV (RTSP)
•
•
•
•
Sunday, October 27, 13

Контроль по TCP с поддержкой реконнекта
Данные по UDP с возможностью...
Псевдостриминг
•
•
•
•
•
•
Sunday, October 27, 13

variable bitrate в видео и аудио
примитивный flv контейнер и ещё примити...
Хайтек от Адоби (RTMP)
•
•
•
•
•
Sunday, October 27, 13

Закрытый недокументированный протокол

Не получилось ничего

Попы...
Потребности сегодня
•
•
•
•
Sunday, October 27, 13

FullHD, а следовательно и мультибитрейт
Выбор языков, субтитров. За чт...
Возможности сегодня
•
•
•
•
Sunday, October 27, 13

Процессоры за 5 лет особо быстрее не стали
Подешевели 10G линки (до 20...
Экономика проблемы
•
•
•
•
•
Sunday, October 27, 13

1G линк — 25 000 рублей в месяц
10G линк — 200 000 рублей в месяц
сер...
Цифры при 10G вещании
•
•
•
•
Sunday, October 27, 13

1 мбит/с контент
10 000 онлайн пользователей
5 000 запросов в секунд...
Проблемы с железом
•
•
•
•
Sunday, October 27, 13

дисковая подсистема
сетевая подсистема
процессор
память
Память
•
•
•
•
Sunday, October 27, 13

Под кеш всё равно не хватит
LRU пищит и всё портит
Изредка влезает самый свежак, но...
Процессор
•
•
•

Sunday, October 27, 13

Хватит масштабироваться, работать надо
Гигагерцы лучше ядер
Одного процессора хва...
Сеть
•
•
•

Sunday, October 27, 13

Intel, как будто бы есть другие варианты
Самые свежие драйвера
Балансировка прерываний...
Диски
•
•
•
•
•
Sunday, October 27, 13

Основная нагруженная часть
10 Гбит без SSD не потянуть, но HDD дешевле
Лучше меньш...
Проблемы с софтом
•
•
•
•
•
Sunday, October 27, 13

Псевдостриминг дает перерасход трафика до 30%
Для переключения контент...
Выбранные решения
•
•
•
•
•
•
Sunday, October 27, 13

JBOD HDD для хранения контента
или HTTP сетевое хранилище (Swift)
SS...
Flussonic
(эрливидео)

•
•
•
•
Sunday, October 27, 13

Быстрое mp4 чтение: распаковка индекса только на лету
Никакого пока...
Дисковое чтение
•
•
•
•
Sunday, October 27, 13

Открытый файл держит в памяти весь moov (индекс данных)
У каждого файла пл...
Нерешенные проблемы
•
•
•
•
Sunday, October 27, 13

Правильное вычисление дискового устройства по имени файла
Автобалансир...
Резюме
•
•
•
•
•
Sunday, October 27, 13

Вещание более 2G с сервера стало рентабельным
Старые техники не годятся, нужны но...
Вопросы?
Макс Лапшин
max@flussonic.com

Sunday, October 27, 13
Sunday, October 27, 13
Upcoming SlideShare
Loading in …5
×

Максим Лапшин, Erlyvideo

1,510 views

Published on

HighLoad++ 2013

  • Be the first to comment

Максим Лапшин, Erlyvideo

  1. 1. Вещание видео на 10 гбит/с Макс Лапшин, CTO Flussonic LLC. Sunday, October 27, 13
  2. 2. Стриминг видеофайлов • • • • • Sunday, October 27, 13 Пользователь хочет посмотреть видео Надо показать ему в реальном времени Пользователь хочет управлять просмотром Уникальные данные для каждого пользователя Для каждого из 10 000 пользователей онлайн
  3. 3. Седая древность в IPTV • • • • • Sunday, October 27, 13 Constant bitrate каждая секунда — фиксированное количество байт легкая перемотка и т.п. планирование capacity сервиса (на всех 50 абонентов) многие так живут до сих пор
  4. 4. Хайтек от IPTV (RTSP) • • • • Sunday, October 27, 13 Контроль по TCP с поддержкой реконнекта Данные по UDP с возможностью ретрансмита Энтерпрайзно и неподъёмно Доживает свой век у 3G операторов
  5. 5. Псевдостриминг • • • • • • Sunday, October 27, 13 variable bitrate в видео и аудио примитивный flv контейнер и ещё примитивнее flash player mod_flv в nginx — основное средство вещания никакого мультибитрейта или мультиязыка примитивное управление проигрыванием популярно и сегодня (весь «html5 video»)
  6. 6. Хайтек от Адоби (RTMP) • • • • • Sunday, October 27, 13 Закрытый недокументированный протокол Не получилось ничего Попытка решить и риалтайм доставку и широковещание Сумрачный индусский гений придумал делать уникальный поток для каждого пользователя Адоб закрыли программу RTMP, но не все ещё догадались
  7. 7. Потребности сегодня • • • • Sunday, October 27, 13 FullHD, а следовательно и мультибитрейт Выбор языков, субтитров. За что и любим torrents.ru Управление проигрыванием (пауза, перемотка и т.п.) 3D, больше FPS и т.п.
  8. 8. Возможности сегодня • • • • Sunday, October 27, 13 Процессоры за 5 лет особо быстрее не стали Подешевели 10G линки (до 200 тыс рублей в месяц) SSD бегут по планете и спотыкаются об трупы HDD Стремительный переход на HTTP стриминг (HDS/HLS)
  9. 9. Экономика проблемы • • • • • Sunday, October 27, 13 1G линк — 25 000 рублей в месяц 10G линк — 200 000 рублей в месяц сервер — 10-20 000 рублей в месяц каждый сервер требует обслуживания больше линков, меньше серверов
  10. 10. Цифры при 10G вещании • • • • Sunday, October 27, 13 1 мбит/с контент 10 000 онлайн пользователей 5 000 запросов в секунду за 200 Кб сегментами ощущаются проседания на международных каналах
  11. 11. Проблемы с железом • • • • Sunday, October 27, 13 дисковая подсистема сетевая подсистема процессор память
  12. 12. Память • • • • Sunday, October 27, 13 Под кеш всё равно не хватит LRU пищит и всё портит Изредка влезает самый свежак, но всё ломает LRU 32 Гб за глаза хватает под сетевые буферы
  13. 13. Процессор • • • Sunday, October 27, 13 Хватит масштабироваться, работать надо Гигагерцы лучше ядер Одного процессора хватает для чтения, перепаковки, посылки и учета пользователей на 10 Гбит/с
  14. 14. Сеть • • • Sunday, October 27, 13 Intel, как будто бы есть другие варианты Самые свежие драйвера Балансировка прерываний по ядрам
  15. 15. Диски • • • • • Sunday, October 27, 13 Основная нагруженная часть 10 Гбит без SSD не потянуть, но HDD дешевле Лучше меньше да больше: у SSD есть предел скорости Аппаратные рейды оставьте продавцам Спасибо Unix за удобное управление очередью диска
  16. 16. Проблемы с софтом • • • • • Sunday, October 27, 13 Псевдостриминг дает перерасход трафика до 30% Для переключения контента нужен стриминг, причем HTTP HDS/HLS для флеш-плеера и остальных Предсегментация ломает префетч и перерасходует диск Сегментация на лету — вариант
  17. 17. Выбранные решения • • • • • • Sunday, October 27, 13 JBOD HDD для хранения контента или HTTP сетевое хранилище (Swift) SSD для промежуточного кеша старые новые рекомендации по упаковке mp4 сегментация на лету постоянный самоконтроль
  18. 18. Flussonic (эрливидео) • • • • Sunday, October 27, 13 Быстрое mp4 чтение: распаковка индекса только на лету Никакого покадрового чтения: только GOP Агрегация дисковых запросов Контроль за использованием ресурсов
  19. 19. Дисковое чтение • • • • Sunday, October 27, 13 Открытый файл держит в памяти весь moov (индекс данных) У каждого файла плавающий пул воркеров на чтение Все воркеры проходят через единую очередь чтения с диска На любом запросе может прийти HTTP 503 Overloaded
  20. 20. Нерешенные проблемы • • • • Sunday, October 27, 13 Правильное вычисление дискового устройства по имени файла Автобалансировка между HDD при чтении одного файла Кластерная балансировка пользователей 40G
  21. 21. Резюме • • • • • Sunday, October 27, 13 Вещание более 2G с сервера стало рентабельным Старые техники не годятся, нужны новые (HTTP стриминг, SSD) Новые подходы есть, отлажены и пинают трупы старых Важно не только работать, но и не перерабатывать Flussonic (эрливидео) прекрасно справляется
  22. 22. Вопросы? Макс Лапшин max@flussonic.com Sunday, October 27, 13
  23. 23. Sunday, October 27, 13

×