stringtranslate.com

Потеря пакетов

Потеря пакетов происходит, когда один или несколько пакетов данных, перемещающихся по компьютерной сети, не достигают места назначения. Потеря пакетов вызвана либо ошибками при передаче данных, обычно в беспроводных сетях , [1] [2] , либо перегрузкой сети . [3] : 36  Потеря пакетов измеряется как процент потерянных пакетов по отношению к отправленным пакетам.

Протокол управления передачей (TCP) обнаруживает потерю пакетов и выполняет повторную передачу для обеспечения надежного обмена сообщениями . Потеря пакетов в TCP-соединении также используется, чтобы избежать перегрузки и, таким образом, намеренно снижает пропускную способность соединения.

В приложениях реального времени, таких как потоковое мультимедиа или онлайн-игры , потеря пакетов может повлиять на качество работы пользователя (QoE).

Причины

Интернет -протокол (IP) разработан по сквозному принципу как служба доставки с максимальной эффективностью , с намерением сохранить логику, которую должны реализовать маршрутизаторы , как можно более простой. Если бы сеть сама обеспечивала надежные гарантии доставки , для этого потребовалась бы инфраструктура хранения и пересылки , в которой каждый маршрутизатор выделяет значительный объем места для хранения пакетов, ожидая проверки того, что следующий узел правильно их получил. Надежная сеть не сможет сохранить гарантии доставки в случае сбоя маршрутизатора. Надежность также необходима не для всех приложений. Например, при потоковой передаче мультимедиа в реальном времени более важно быстро доставить последние пакеты, чем гарантировать, что устаревшие пакеты в конечном итоге будут доставлены. Приложение или пользователь также могут решить повторить операцию, которая занимает много времени, и в этом случае к бремени доставки исходного набора будет добавлен еще один набор пакетов. Такой сети также может потребоваться протокол управления и контроля для управления перегрузками, что еще больше усложняет ее.

Чтобы избежать всех этих проблем, Интернет-протокол позволяет маршрутизаторам просто отбрасывать пакеты, если маршрутизатор или сегмент сети слишком заняты для своевременной доставки данных. Это не идеально для быстрой и эффективной передачи данных, и не ожидается, что это произойдет в незагруженной сети. [4] Отбрасывание пакетов действует как неявный сигнал о том, что сеть перегружена, и может привести к тому, что отправители уменьшат потребляемую полосу пропускания или попытаются найти другой путь. Например, используя воспринимаемую потерю пакетов в качестве обратной связи для обнаружения перегрузки, протокол управления передачей (TCP) спроектирован таким образом, что чрезмерная потеря пакетов заставит отправителя снизить скорость и прекратить наводнение узким местом данными. [3] : 282–283. 

Пакеты также могут быть отброшены, если контрольная сумма заголовка IPv4 или последовательность проверки кадра Ethernet указывают на то, что пакет поврежден. Потеря пакетов также может быть вызвана атакой сбрасывания пакетов .

Беспроводная сеть

Беспроводные сети подвержены воздействию ряда факторов, которые могут привести к повреждению или потере пакетов при передаче, например, радиочастотные помехи (RFI), [1] слишком слабые радиосигналы из-за расстояния или многолучевого замирания , неисправное сетевое оборудование или неисправные сетевые драйверы.

Wi-Fi по своей сути ненадежен , и даже когда два одинаковых приемника Wi-Fi расположены в непосредственной близости друг от друга, они не демонстрируют одинаковых закономерностей потери пакетов, как можно было бы ожидать. [1]

В сотовых сетях могут возникать потери пакетов из-за «высокой частоты ошибок по битам (BER), нестабильных характеристик канала и мобильности пользователей». [5] Преднамеренное регулирование TCP не позволяет беспроводным сетям работать со скоростью, близкой к теоретической потенциальной скорости передачи, поскольку немодифицированный TCP обрабатывает все отброшенные пакеты так, как если бы они были вызваны перегрузкой сети , и поэтому может регулировать беспроводные сети, даже если они на самом деле не перегружены. [5]

Перегрузка сети

Перегрузка сети является причиной потери пакетов, которая может повлиять на все типы сетей. Когда контент в течение длительного периода времени поступает на данный маршрутизатор или сегмент сети со скоростью, превышающей возможную для передачи, нет другого выбора, кроме как отбрасывать пакеты. [3] : 36  Если один маршрутизатор или канал ограничивает пропускную способность всего маршрута или сети в целом, это называется узким местом. В некоторых случаях пакеты намеренно отбрасываются процедурами маршрутизации [6] или с помощью техники подавления сети в целях оперативного управления. [7]

Последствия

Потеря пакетов напрямую снижает пропускную способность для данного отправителя, поскольку некоторые отправленные данные никогда не принимаются и не могут учитываться как пропускная способность. Потеря пакетов косвенно снижает пропускную способность, поскольку некоторые протоколы транспортного уровня интерпретируют потерю как признак перегрузки и корректируют скорость передачи, чтобы избежать коллапса из-за перегрузки.

Когда необходима надежная доставка, потеря пакетов увеличивает задержку из-за дополнительного времени, необходимого для повторной передачи. [a] При отсутствии повторной передачи пакеты, испытывающие наибольшую задержку, могут быть предпочтительно отброшены (в зависимости от используемой дисциплины организации очереди ), что приведет к снижению общей задержки.

Измерение

Потери пакетов можно измерить как коэффициент потери кадров, определяемый как процент кадров, которые должны были быть перенаправлены сетью, но не были перенаправлены. [8] : 4 

Допустимая потеря пакетов

Потеря пакетов тесно связана с качеством обслуживания . Допустимый объем потери пакетов зависит от типа отправляемых данных. Например, для трафика голосовой связи по IP один комментатор подсчитал, что «пропуск одного или двух пакетов время от времени не повлияет на качество разговора. Потери от 5% до 10% общего потока пакетов повлияют на качество значительно». [9] Другой описал потерю пакетов менее 1% как «хорошую» для потоковой передачи аудио или видео, а 1–2,5% — как «приемлемую». [10]

Диагностика

Потеря пакетов обнаруживается с помощью надежных протоколов, таких как TCP. Надежные протоколы автоматически реагируют на потерю пакетов, поэтому, когда сетевому администратору необходимо обнаружить и диагностировать потерю пакетов, он обычно использует информацию о состоянии сетевого оборудования или специальных инструментов.

Протокол управляющих сообщений Интернета обеспечивает функцию эха , при которой передается специальный пакет, который всегда дает ответ. Такие инструменты, как ping , Traceroute , MTR и PathPing, используют этот протокол для обеспечения визуального представления пути, по которому проходят пакеты, и для измерения потерь пакетов на каждом прыжке . [б]

Многие маршрутизаторы имеют страницы состояния или журналы, где владелец может узнать количество или процент отброшенных пакетов за определенный период.

Восстановление пакетов для надежной доставки

Согласно сквозному принципу , Интернет-протокол оставляет ответственность за восстановление пакетов посредством повторной передачи отброшенных пакетов конечным точкам — компьютерам, отправляющим и получающим данные. Они находятся в лучшем положении, чтобы решить, необходима ли повторная передача, поскольку приложение, отправляющее данные, должно знать, лучше ли передать сообщение полностью или частично, прошла ли необходимость в отправке сообщения и как контролировать объем пропускной способности, потребляемой для устранения перегрузок.

Сетевые транспортные протоколы, такие как TCP, предоставляют конечным точкам простой способ обеспечить надежную доставку пакетов, поэтому отдельным приложениям не нужно самостоятельно реализовывать логику для этого. В случае потери пакета получатель запрашивает повторную передачу или отправитель автоматически повторно отправляет все неподтвержденные сегменты. [3] : 242  Хотя TCP может восстановиться после потери пакетов, повторная передача недостающих пакетов снижает пропускную способность соединения, поскольку получатели ждут повторной передачи, и они потребляют дополнительную полосу пропускания. В некоторых вариантах TCP, если переданный пакет потерян, он будет отправлен повторно вместе с каждым пакетом, который уже был отправлен после него.

Такие протоколы, как протокол пользовательских дейтаграмм (UDP), не обеспечивают восстановление потерянных пакетов. Ожидается, что приложения, использующие UDP, при необходимости реализуют свои собственные механизмы обработки потери пакетов.

Влияние дисциплины очередей

Существует множество дисциплин организации очередей , используемых для определения того, какие пакеты следует отбрасывать. Большинство базового сетевого оборудования будет использовать очередь FIFO для пакетов, ожидающих прохождения узкого места, и отбрасывать пакет, если очередь заполнена на момент получения пакета. Этот тип отбрасывания пакетов называется хвостовым отбрасыванием . Другие механизмы полной очереди включают случайное раннее обнаружение и взвешенное случайное раннее обнаружение . Отбрасывание пакетов нежелательно, поскольку пакет либо теряется, либо должен быть передан повторно, а это может повлиять на пропускную способность в реальном времени; однако увеличение размера буфера может привести к его раздуванию , что по-своему влияет на задержку и джиттер во время перегрузки.

В случаях, когда качество обслуживания ограничивает скорость соединения, например, при использовании алгоритма дырявого ведра , пакеты могут намеренно отбрасываться, чтобы замедлить работу определенных служб и обеспечить доступную полосу пропускания для других служб, отмеченных более высокой важностью. По этой причине потеря пакетов не обязательно является показателем плохой надежности соединения или признаком узкого места в полосе пропускания.

Смотрите также

Примечания

  1. ^ Во время типичной перегрузки сети не все пакеты в потоке отбрасываются. Это означает, что неотброшенные пакеты будут поступать с низкой задержкой по сравнению с повторно переданными пакетами, которые поступают с высокой задержкой. Мало того, что повторно переданные пакеты должны пройти часть пути дважды, отправитель не поймет, что пакет был отброшен, пока он либо не получит подтверждение о получении в ожидаемом порядке, либо не сможет получить подтверждение в течение достаточно длительного времени, чтобы он предполагает, что пакет был отброшен, а не просто задержан.
  2. ^ В некоторых случаях эти инструменты могут указывать на отбрасывание пакетов, которые завершаются за небольшое количество переходов, но не тех, которые добираются до пункта назначения. Например, маршрутизаторы могут придавать эху ICMP-пакетам низкий приоритет и отбрасывать их преимущественно в пользу расходования ресурсов на подлинные данные; обычно это считается артефактом тестирования и его можно игнорировать в пользу сквозных результатов. [11]

Рекомендации

  1. ^ abc Сальерс, Дэвид К.; Стригель, Аарон; Пуэллабауэр, Кристиан. «Надежность беспроводной связи: переосмысление потери пакетов 802.11» (PDF) . Архивировано из оригинала (PDF) 12 июля 2019 г. Проверено 19 февраля 2018 г.
  2. ^ Тиан, Йе; Сюй, Кай; Ансари, Нирван (март 2005 г.). «TCP в беспроводной среде: проблемы и решения» (PDF) . Радиосвязь IEEE . 43 (3): С27–С32. дои : 10.1109/MCOM.2005.1404595. S2CID  735922. Архивировано из оригинала (PDF) 9 августа 2017 г. Проверено 19 февраля 2018 г.
  3. ^ abcd Курозе, Дж. Ф. и Росс, К. В. (2010). Компьютерные сети: нисходящий подход . Нью-Йорк: Аддисон-Уэсли.
  4. ^ Куросе, JF; Росс, К.В. (2010). Компьютерные сети: нисходящий подход . Нью-Йорк: Аддисон-Уэсли. стр. 42–43. ISBN 9780136079675. Доля потерянных пакетов увеличивается по мере увеличения интенсивности трафика. Поэтому производительность узла часто измеряется не только с точки зрения задержки, но и с точки зрения вероятности потери пакета… потерянный пакет может быть передан повторно на сквозной основе, чтобы гарантировать, что все данные в конечном итоге будут переданы. от источника к месту назначения.
  5. ^ Аб Е Тянь; Кай Сюй; Нирван Ансари (март 2005 г.). «TCP в беспроводной среде: проблемы и решения» (PDF) . Радиосвязь IEEE . ИИЭЭ . Архивировано из оригинала (PDF) 9 августа 2017 г. Проверено 19 февраля 2018 г.
  6. ^ Перкинс, CE (2001). Специальная сеть . Бостон: Аддисон-Уэсли. п. 147.
  7. ^ «Управление приложениями путем управления характеристиками сети» Вахаб Пурнагшбанд, Леонард Кляйнрок, Питер Райхер и Александр Афанасьев ICC 2012
  8. ^ С. Брэднер, изд. (июль 1991 г.). Сравнительная терминология для устройств сетевого взаимодействия. Сетевая рабочая группа. дои : 10.17487/RFC1242 . РФК 1242. Информационный.
  9. ^ Мэнсфилд, К.К. и Антонакос, Дж.Л. (2010). Компьютерные сети от локальных сетей до глобальных: оборудование, программное обеспечение и безопасность . Бостон: Технология курса, Cengage Learning. п. 501.
  10. ^ «ICTP-SDU: О PingER» . Архивировано из оригинала 10 октября 2013 г. Проверено 16 мая 2013 г.
  11. ^ «Потеря пакетов или задержка на промежуточных прыжках» . Проверено 25 февраля 2007 г.

Внешние ссылки