Automatic Repeat ReQuest, часто скорочено ARQ, є протоколом для контролю помилок під час передачі даних. Використовуючи коди виявлення помилок і підтвердження, протоколи ARQ можуть гарантувати безпомилкову доставку даних, гарантуючи, що одержувач отримає точну копію даних, переданих відправником.
Походження та рання історія автоматичних повторних запитів
Коріння Automatic Repeat ReQuest можна простежити до ранніх днів телеграфії в 19 столітті. Телеграфні оператори вручну вимагали повторної передачі нечітких або спотворених повідомлень. Однак перша згадка про автоматизовану систему, подібну до ARQ, міститься в патенті А. Гаррі Найквіста 1924 року на «телеграфну систему повторення».
Розробка та вдосконалення протоколів ARQ почали швидко зростати з появою цифрової передачі даних у 20 столітті. Найзначнішим кроком вперед у цю епоху було, мабуть, впровадження циклічної перевірки надмірності (CRC) у 1960-х роках, схеми кодування з виявленням помилок, яка все ще широко використовується в сучасних реалізаціях ARQ.
Суть автоматичних повторних запитів
Автоматичні повторні запити є фундаментальними для систем передачі даних, забезпечуючи цілісність даних під час передачі. Щоб досягти цього, протоколи ARQ містять три основні механізми: виявлення помилок, підтвердження та повторна передача.
У системі ARQ відправник додає код виявлення помилки (наприклад, CRC) до вихідних даних. Після отримання приймач використовує той самий алгоритм виявлення помилок для перевірки даних. Якщо дані без помилок, одержувач надсилає підтвердження назад відправнику. Якщо виявлено помилку, одержувач надсилає негативне підтвердження (NAK) або, у деяких випадках, просто мовчить, спонукаючи відправника повторно передати дані.
Механізми, що стоять за автоматичними повторними запитами
Протоколи ARQ зазвичай працюють за принципами, викладеними вище, але відрізняються тим, як вони обробляють конкретні ситуації. Деякі міркування щодо розробки ARQ включають:
- Що викликає повторну передачу?
- Як бути з пакетами, що не в порядку?
- Як оптимізувати ефективність і пропускну здатність системи?
Точні правила обробки цих сценаріїв визначають поведінку та характеристики продуктивності протоколу ARQ. Наприклад, те, як протокол реагує на кілька невдалих передач, може вплинути на його надійність у шумному або ненадійному середовищі зв’язку.
Основні характеристики автоматичних повторних запитів
Основні особливості протоколів ARQ включають:
- Безпомилкова доставка даних: протоколи ARQ можуть гарантувати, що одержувач отримає точну копію даних, переданих відправником.
- Адаптивність: ARQ може адаптуватися до різних рівнів шуму та частоти помилок у каналі зв’язку.
- Ефективність: шляхом повторної передачі лише помилкових даних ARQ уникає втрати смуги пропускання на непотрібні передачі.
Типи автоматичних повторних запитів
У системах передачі даних зазвичай використовуються три типи протоколів ARQ:
- Stop-and-Wait ARQ: найпростіша форма ARQ, відправник зупиняється та чекає на підтвердження після кожної передачі. Якщо протягом певного періоду очікування не отримано підтвердження, відправник повторно передає дані.
- Go-Back-N ARQ: у цьому підході відправник може передати серію пакетів, не чекаючи підтвердження, до певної межі (N). Якщо виявлено помилку, відправник «повертається» і повторно передає всі пакети з цього моменту.
- Вибіркове повторення ARQ: удосконалення в порівнянні з Go-Back-N, вибіркове повторення ARQ дозволяє одержувачу приймати непорядкові пакети та запитувати повторну передачу лише помилкових.
Практичні застосування та проблеми
Протоколи ARQ знаходять застосування майже в кожному аспекті передачі цифрових даних, включаючи стільникові мережі, Wi-Fi, супутниковий зв’язок і передачу файлів через Інтернет.
Однак використання ARQ не позбавлене проблем. Наприклад, додаткові дані, необхідні для виявлення помилок і підтвердження, можуть зменшити корисну пропускну здатність. Крім того, затримки, викликані повторними передачами, можуть впливати на програми зв’язку в реальному часі, такі як VoIP і потокове відео.
Порівняння з іншими протоколами контролю помилок
Окрім ARQ, у передачі даних використовуються два інших основних протоколи контролю помилок:
-
Пряме виправлення помилок (FEC): FEC кодує дані таким чином, що дозволяє приймачу виправляти обмежену кількість помилок. На відміну від ARQ, FEC не вимагає повторної передачі даних, але вимагає більшої пропускної здатності для додаткових кодів виправлення помилок.
-
Гібридний ARQ (HARQ): HARQ поєднує в собі елементи як ARQ, так і FEC. Якщо отриманий пакет містить помилки, HARQ спочатку намагається виправити помилки за допомогою FEC. Якщо це не вдається, він повертається до механізму ARQ із запитом на повторну передачу.
Майбутні перспективи та технології
З постійним розвитком технологій передачі даних протоколи ARQ також удосконалюються та оптимізуються. Наприклад, протоколи, розроблені для нових мереж 5G, використовують складні схеми HARQ, які можуть адаптуватися до умов каналу зв’язку в режимі реального часу, максимізуючи пропускну здатність даних і мінімізуючи затримку.
Крім того, майбутні дослідження квантової комунікації та обчислень можуть призвести до нових типів протоколів контролю помилок, які потенційно замінять або доповнять традиційний ARQ.
Проксі-сервери та автоматичні повторні запити
Проксі-сервери, як і ті, що надаються OneProxy, також можуть отримати вигоду від протоколів ARQ. Як посередники між клієнтом та Інтернетом проксі-сервери можуть використовувати ARQ для забезпечення цілісності даних, що передаються через них. Наприклад, проксі-сервер може використовувати ARQ для повторної передачі даних, якщо він стикається з помилками через перевантаження мережі, втрату пакетів або інші проблеми.
Завдяки цьому проксі-сервери можуть підвищити надійність підключення клієнта, особливо в сценаріях із нестабільними або ненадійними мережами.
Пов'язані посилання
Щоб отримати додаткові відомості про запити на автоматичне повторення та пов’язані з ними концепції, розгляньте такі ресурси: