Александр Тоболь: "Ускорение скорости передачи данных в плохих сетях"
Ускорение скорости передачи данных в плохих сетях
В докладе мы поговорим про эволюцию и настройки сетевого стека TCP/IP в linux и android в контексте мобильных сетей, разберем проблемы TCP в плохих сетях, а так же посмотрим в сторону написания своих протоколов в user space поверх UDP. TCP был впервые имплементирован в 70-х годах и прекрасно справлялся со своей задачей в эру проводного интернета. Но беспроводные сети отличаются переменной пропускной способностью, высоким random packet loss, сменой IP и MTU на лету и прочими вещами, которые приводят к деградации TCP-соединения. В социальной сети одноклассники более 30 млн человек ежедневно заходят используя мобильные сети. Средний packet loss в этих сетях порядка 1-3%, но бывает сети и с потерями до 10-15%. Кроме этого в мобильных сетях высокие значения jitter-а и RTT. Это все приводит к тому, что канал утилизируется не полностью, а передача данных работает медленнее, чем могла бы. Мы поговорим про проблемы TCP, его tuning. Рассмотрим эволюцию TCP стека для ускорения передачи данных от cubic congestion control до BBR cc, а так же tail loss probe, tcp fast open, zeroRTT handshake в TLS 1.3, как это настроить и как это работает ;) Но многие улучшения TC{ не достаточно быстро оказывается в продакшене как на серверах, так и на конечных устройствах пользователей. Поэтому мы рассмотрим дальнейшее развитие сетевого стека в сторону userSpace протоколов типа QUIC. И реализуем свой протокол передачи данных поверх UDP.
Александр Тоболь
Россия. Санкт-Петербург
Руководитель разработки платформ видео и ленты проекта
Ok.ru
Более 10 лет работает в области разработки программного обеспечения для обработки видео и хранения информации. Руководитель разработки платформ видео и ленты проекта «Одноклассники» компании Mail.Ru Group.