Втрата пакетів виникає, коли один або більше пакетів даних, що передаються через комп'ютерну мережу, не досягають свого призначення. Втрата пакетів спричиняється або помилками під час передавання даних, зазвичай у бездротових мережах, або перевантаженням мережі.Kurose, J.F. & Ross, K.W. (2010). Computer Networking: A Top-Down Approach. New York: Addison-Wesley. Втрата пакетів вимірюється як відсоток втрачених пакетів відносно надісланих пакетів.

Transmission Control Protocol (TCP) виявляє втрату пакетів і виконує повторні передавання, щоб забезпечити надійний обмін повідомленнями. Втрата пакетів у TCP-з'єднанні також використовується для уникнення перевантаження і, таким чином, призводить до навмисного зменшення пропускної здатності з'єднання.

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

Причини Internet Protocol (IP) розроблений відповідно до принципу end-to-end як служба негарантованої доставки, з наміром зберегти логіку, яку повинні реалізовувати маршрутизатори, якомога простішою. Якби мережа сама забезпечувала гарантії надійної доставки, це вимагало б інфраструктури зберігання та пересилання, де кожен маршрутизатор виділяв би значний обсяг пам'яті для пакетів, очікуючи перевірки того, що наступний вузол належним чином їх отримав. Надійна мережа не змогла б підтримувати свої гарантії доставки у разі відмови маршрутизатора. Надійність також не потрібна для всіх застосунків. Наприклад, у разі потокового мультимедіа в реальному часі важливіше швидко доставляти останні пакети, ніж забезпечувати, щоб застарілі пакети зрештою були доставлені. Застосунок або користувач також може вирішити повторити операцію, яка виконується надто довго, і в такому разі до навантаження з доставки початкового набору буде додано ще один набір пакетів. Така мережа також може потребувати протоколу керування та контролю для керування перевантаженням, що додасть ще більше складності.

Щоб уникнути всіх цих проблем, Internet Protocol дозволяє маршрутизаторам просто відкидати пакети, якщо маршрутизатор або сегмент мережі надто завантажений, щоб своєчасно доставити дані. Це не є оптимальним для швидкого й ефективного передавання даних і не очікується в мережі без перевантаження. Відкидання пакетів діє як неявний сигнал про те, що мережа перевантажена, і може змусити відправників зменшити обсяг споживаної пропускної здатності або спробувати знайти інший маршрут. Наприклад, використовуючи сприйняту втрату пакетів як зворотний зв'язок для виявлення перевантаження, TCP розроблений так, що надмірна втрата пакетів змусить відправника знизити швидкість передавання і припинити заповнювати даними вузьке місце.

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

Бездротові мережі Бездротові мережі схильні до впливу низки чинників, які можуть пошкоджувати або спричиняти втрату пакетів під час передавання, таких як електромагнітна завада (, RFI), надто слабкі радіосигнали через відстань або завмирання сигналу через багатопроменеве поширення, несправне мережеве обладнання або несправні мережеві драйвери.

Wi-Fi є за своєю природою ненадійним, і навіть коли два ідентичні приймачі Wi-Fi розташовані близько один до одного, вони не демонструють подібних закономірностей втрати пакетів, як можна було б очікувати.

У стільникових мережах втрата пакетів може бути спричинена «високою ймовірністю бітових помилок (BER), нестабільними характеристиками каналу та мобільністю користувача». Навмисне обмеження швидкості TCP не дає бездротовим мережам працювати на швидкостях передавання, близьких до їхнього теоретичного потенціалу, оскільки немодифікований TCP розглядає всі відкинуті пакети так, ніби вони були спричинені перевантаженням мережі, і тому може обмежувати бездротові мережі, навіть коли вони насправді не перевантажені.

Перевантаження мережі Перевантаження мережі є причиною втрати пакетів, яка може впливати на всі типи мереж. Коли вміст протягом тривалого часу надходить до певного маршрутизатора або сегмента мережі зі швидкістю, вищою за ту, з якою його можна передати далі, не залишається іншого вибору, окрім як відкинути пакети. Якщо один маршрутизатор або канал обмежує пропускну здатність усього шляху передавання або мережевого передавання загалом, це називається вузьким місцем. У деяких випадках пакети навмисно відкидаються процедурами маршрутизації,Perkins, C.E. (2001). Ad Hoc Networking. Boston: Addison-Wesley. p. 147. або за допомогою методики стримування мережевого трафіку з метою операційного керування."Controlling Applications by Managing Network Characteristics" Vahab Pournaghshband, Leonard Kleinrock, Peter Reiher, and Alexander Afanasyev ICC 2012

Наслідки Втрата пакетів безпосередньо зменшує пропускну здатність для певного відправника, оскільки частина надісланих даних ніколи не отримується і не може бути зарахована до пропускної здатності. Втрата пакетів опосередковано зменшує пропускну здатність, оскільки деякі протоколи транспортного рівня інтерпретують втрату як ознаку перевантаження та регулюють швидкість передавання, щоб уникнути колапсу через перевантаження.

Коли необхідна надійна доставка, втрата пакетів збільшує затримку через додатковий час, необхідний для повторного передавання. Якщо припустити відсутність повторного передавання, пакети, що зазнають найбільших затримок, можуть бути вибірково відкинуті (залежно від використовуваної дисципліни черги), що загалом призводить до меншої затримки.

Вимірювання Втрата пакетів може вимірюватися як коефіцієнт втрати кадрів, визначений як відсоток кадрів, які мережа мала переслати, але не переслала.

Допустима втрата пакетів Втрата пакетів тісно пов'язана з міркуваннями щодо якості обслуговування. Обсяг втрати пакетів, який є прийнятним, залежить від типу даних, що передаються. Наприклад, для трафіку передавання голосу через IP один із коментаторів вважав, що «пропуск одного-двох пакетів час від часу не вплине на якість розмови. Втрата від 5% до 10% загального потоку пакетів суттєво вплине на якість».Mansfield, K.C. & Antonakos, J.L. (2010). Computer Networking from LANs to WANs: Hardware, Software, and Security. Boston: Course Technology, Cengage Learning. p. 501. Інший описав втрату пакетів менше ніж 1% як «добру» для потокового аудіо або відео, а 1–2,5% — як «прийнятну».

Діагностика Втрата пакетів виявляється надійними протоколами, такими як TCP. Надійні протоколи автоматично реагують на втрату пакетів, тому, коли людині, наприклад мережевому адміністратору, потрібно виявити та діагностувати втрату пакетів, вона зазвичай використовує інформацію про стан мережевого обладнання або спеціально створені інструменти.

Internet Control Message Protocol забезпечує функціональність ехо, за якої передається спеціальний пакет, що завжди викликає відповідь. Такі інструменти, як ping, traceroute, MTR та PathPing, використовують цей протокол для візуального представлення шляху, яким проходять пакети, і вимірювання втрати пакетів на кожному переході.

Багато маршрутизаторів мають сторінки стану або журнали, де власник може знайти кількість або відсоток відкинутих пакетів за певний період.

Відновлення пакетів для надійної доставки Відповідно до принципу end-to-end, Internet Protocol покладає відповідальність за відновлення пакетів шляхом повторного передавання відкинутих пакетів на кінцеві вузли — комп'ютери, що надсилають і отримують дані. Вони перебувають у найкращому становищі, щоб вирішити, чи потрібне повторне передавання, оскільки застосунок, який надсилає дані, повинен знати, чи краще повторно передати повідомлення повністю або частково, чи минула потреба надсилати повідомлення та як контролювати обсяг споживаної пропускної здатності з урахуванням будь-якого перевантаження.

Мережеві транспортні протоколи, такі як TCP, надають кінцевим вузлам простий спосіб забезпечити надійну доставку пакетів, щоб окремим застосункам не потрібно було самостійно реалізовувати цю логіку. У разі втрати пакета одержувач запитує повторне передавання, або відправник автоматично повторно надсилає всі сегменти, отримання яких не було підтверджено. Хоча TCP може відновлюватися після втрати пакетів, повторне передавання відсутніх пакетів зменшує пропускну здатність з'єднання, оскільки одержувачі очікують повторних передавань, а вони додатково споживають пропускну здатність. У деяких варіантах TCP, якщо переданий пакет втрачено, його буде повторно надіслано разом із кожним пакетом, який уже було надіслано після нього.

Протоколи, такі як User Datagram Protocol (UDP), не забезпечують відновлення втрачених пакетів. Очікується, що застосунки, які використовують UDP, реалізують власні механізми обробки втрати пакетів, якщо це необхідно.

Вплив дисципліни черги Існує багато дисциплін черги, які використовуються для визначення того, які пакети слід відкидати. Більшість базового мережевого обладнання використовує чергу FIFO для пакетів, які очікують проходження через вузьке місце, і відкидає пакет, якщо черга є повною на момент отримання пакета. Цей тип відкидання пакетів називається відкиданням з хвоста. Інші механізми повної черги включають випадкове раннє виявлення та зважене випадкове раннє виявлення. Відкидання пакетів є небажаним, оскільки пакет або втрачається, або має бути повторно переданий, і це може впливати на пропускну здатність у реальному часі; однак збільшення розміру буфера може призвести до розбухання буфера, яке, своєю чергою, впливає на затримку та джиттер під час перевантаження.

У випадках, коли якість обслуговування застосовує обмеження пропускної здатності з'єднання, наприклад за допомогою алгоритму дірявого відра, пакети можуть навмисно відкидатися, щоб уповільнити певні служби для забезпечення доступної пропускної здатності для інших служб, позначених як важливіші. З цієї причини втрата пакетів не обов'язково є ознакою низької надійності з'єднання або ознакою вузького місця пропускної здатності.

Див. також Колізія кадрів Шейпінг (інформатика)

Примітки

Посилання