Оглавление:
- Определение - Что означает автоматический запрос повторения (ARQ)?
- Techopedia объясняет автоматический запрос повторения (ARQ)
Определение - Что означает автоматический запрос повторения (ARQ)?
Automatic Repeat ReQuest (ARQ), также называемый Automatic Repeat Query, представляет собой протокол контроля ошибок, который автоматически инициирует вызов для повторной передачи любого пакета данных или кадра после получения некорректных или неправильных данных. Когда передающему устройству не удается принять сигнал подтверждения, чтобы подтвердить, что данные были приняты, оно обычно повторно передает данные после предварительно определенного тайм-аута и повторяет процесс заданное количество раз, пока передающее устройство не получит подтверждение.
ARQ часто используются для обеспечения надежных передач по ненадежной услуге.
Techopedia объясняет автоматический запрос повторения (ARQ)
Три основных типа ARQ - это ARQ с остановом и ожиданием, ARQ с возвратом в исходное состояние и ARQ с выборочным повторением. Остановка и ожидание ARQ является самым простым ARQ. Он имеет один кадр за раз, без дополнительных кадров, пока не будет подтвержден прием предыдущего с помощью сигнала подтверждения.
Go-Back-N ARQ - гораздо более сложный протокол. Это позволяет отправлять кадры, даже если предыдущие кадры были получены без сигнала подтверждения. Этот протокол отслеживает последовательность. Когда последний кадр получен, он запрашивает повторную передачу кадров, отправленных без подтверждения. Это повторяется до тех пор, пока все кадры не будут приняты с сигналом подтверждения. Однако этот протокол может привести к тому, что многие кадры будут отправлены несколько раз, чего можно избежать с помощью протокола Selective Repeat ARQ.
Селективное повторение ARQ может использоваться для доставки и подтверждения отправленных пакетов данных или доставки подразделенных сообщений в подразделениях. В первой методике протокол продолжает принимать и подтверждать кадры, отправленные после первоначальной ошибки. Это продолжается до тех пор, пока не будет получено указанное количество кадров, называемое размером окна. Существует размер окна как для передачи, так и для приема, и они должны быть одинаковыми. Порядковые номера всех не полученных кадров отслеживаются и отправляются обратно в передатчик.
Отправитель продолжает отправлять кадры неподтвержденных данных до тех пор, пока не будет достигнут размер окна (он опустошил свое окно). Когда это происходит, отправитель повторно отправляет номер кадра, заданный сигналами подтверждения, и продолжает работу там, где он выключен. Чтобы убедиться, что все кадры получены, размер окна отправки и получения должен быть вдвое меньше максимального порядкового номера. Таким образом, если окно приема больше половины максимального порядкового номера, некоторые или даже все повторно отправленные кадры после требуемых тайм-аутов являются дубликатами, но не распознаются как таковые. Если отправитель перемещает свое окно (называемое скользящим окном) для каждого полученного подтверждения, количество подтверждений и самый большой порядковый номер должны быть равны, и половина этого числа должна быть размером окна, используемым получателем.
Во второй методологии, использующей подразделенные сообщения, процесс отличается. Непрерывные каналы связи используются там, где сообщения различаются по длине, но протоколы обрабатывают сообщение как единое целое. Альтернативно, каждое сообщение может быть подразделено на подблоки, которые имеют фиксированную длину, в процессе, называемом сегментацией пакетов. Каждое сообщение содержит переменное количество подблоков. Каждый неподтвержденный ответ несет дополнительный битовый флаг, указывающий, что каждый подблок успешно принят. Каждая повторная передача уменьшается в длине, она содержит только неподтвержденные субблоки.
ARQ с сообщениями переменной длины увеличивают сложность с более длинными сообщениями, потому что каждое повторяющееся сообщение имеет полную длину. Однако выборочная повторная передача сообщений переменной длины при использовании Selective Repeat ARQ устраняет трудности с доставкой более длинных сообщений. Меньшая сложность подтверждается сохранением успешно доставленных субблоков после каждой передачи и уменьшением количества незавершенных субблоков после каждой передачи.
Протоколы ARQ находятся на канальном или транспортном уровнях модели OSI. TCP использует вариант Go-Back-N ARQ для обеспечения надежной передачи данных по интернет-протоколу. Однако это не гарантирует доставку пакетов данных. Если TCP использует избирательное подтверждение (SACK), используется избирательное повторное ARQ. Когда локальные сети (LAN) имеют шумную среду, Selective Repeat ARQ используется с сегментацией пакетов.
