Google исправил ошибку, около 10 лет присутствующую в TCP-стеке ядра Linux

Материал из Викиновостей, свободного источника новостей
Перейти к навигации Перейти к поиску

27 сентября 2015 года

<dynamicpagelist>

category = Опубликовано category = Компьютерные технологии notcategory = Не публиковать notcategory = Ожидаемые события по датам notcategory = Архивные новости notcategory=Викиновости коротко count = 18 stablepages = only suppresserrors = true namespace = Main addfirstcategorydate = true ordermethod = created </dynamicpagelist>

Wikinews-logo-ru.svg

Сетевые инженеры Google диагностировали и разработали патч для ошибки, около десяти лет остававшейся неисправленной в TCP-стеке ядра Linux и приводившей к снижению эффективности передачи данных. Проблема негативно влияет на приложения, в которых интенсивный трафик чередуется с короткими периодами приостановки передачи, например, подобное поведение характерно для некоторой активности в Web, в частности, для потокового вещания.

Ошибка присутствовала в реализации алгоритма контроля перегрузки Cubic, используемого по умолчанию во многих дистрибутивах Linux. Проблема заключалась в неверной обработке состояния приостановки передачи данных приложением, что приводило к неверному трактованию параметров перегрузки (во время приостановки передачи информация о перегрузке не поступает, что воспринималось алгоритмом как незагруженность сети и возможность нарастить скорость передачи, хотя фактически полоса пропускания не изменилась). В итоге, когда приложение возобновляло передачу данных после паузы, отправка пакетов производилась слишком быстро, что не соответствовало реальной полосе пропускания и могло привести к потере пакетов и инициированию их повторной передачи, а как следствие потере скорости и задержкам в приложении.

 

Источники[править]

OpenNET logo.png
Creative Commons
Эта статья содержит материалы из статьи «Google исправил ошибку, около 10 лет присутствующую в TCP-стеке ядра Linux», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Cartoon Robot.svg
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
 

Комментарии:Google исправил ошибку, около 10 лет присутствующую в TCP-стеке ядра Linux