LAPB
LAPB (англ. Link Access Procedure, Balanced — сбалансированная процедура доступа к каналу) — это протокол канального уровня модели OSI, обеспечивающий надёжную передачу данных между двумя узлами в сетях с коммутацией пакетов. LAPB является частью стека протоколов X.25 и стандартизирован Международным союзом электросвязи (ITU-T) в рекомендации X.25, а также Международной организацией по стандартизации (ISO) в стандарте ISO 7776. Протокол ориентирован на соединение, гарантирует доставку кадров без ошибок, с сохранением порядка и управлением потоком.
История
Разработка LAPB началась в 1970-х годах в рамках создания сети X.25, которая предназначалась для передачи данных по телефонным линиям с низким качеством. Первая версия X.25 была опубликована ITU-T в 1976 году. LAPB заменил более ранний протокол LAP (Link Access Procedure), который был асимметричным и менее эффективным. Основой для LAPB послужил протокол HDLC (High-Level Data Link Control), разработанный ISO. В отличие от HDLC, LAPB использует только сбалансированный режим (Asynchronous Balanced Mode, ABM), что позволяет обоим узлам (DTE — терминальное оборудование и DCE — оборудование канала данных) выступать в роли равноправных участников обмена. Протокол получил широкое распространение в 1980–1990-х годах в сетях X.25, особенно в банковской сфере, системах бронирования и государственных структурах, где требовалась высокая надёжность передачи. С развитием Ethernet и IP-сетей роль LAPB снизилась, но он продолжает использоваться в специализированных промышленных и телекоммуникационных системах.
Архитектура и принцип работы
LAPB работает на канальном уровне (уровень 2 модели OSI), обеспечивая логическое соединение между двумя узлами. Протокол использует кадры переменной длины, которые инкапсулируют пакеты сетевого уровня (например, пакеты X.25 уровня 3). Основные функции LAPB:
- Установление и разрыв соединения: обмен командами SABM (Set Asynchronous Balanced Mode) и DISC (Disconnect).
- Управление потоком: с помощью оконного механизма (скользящее окно) ограничивает количество неподтверждённых кадров.
- Обнаружение и исправление ошибок: использует контрольную сумму (Frame Check Sequence, FCS) и механизм повторной передачи (ARQ — Automatic Repeat reQuest).
- Сохранение порядка кадров: нумерация кадров (модуль 8 или 128) гарантирует доставку в правильной последовательности.
Режимы работы
LAPB работает в сбалансированном режиме (ABM), где оба узла могут инициировать передачу и управлять потоком. Это отличает его от асимметричных протоколов (например, LAPD в ISDN), где один узел является ведущим. В режиме ABM каждый кадр содержит номер последовательности (N(S) — номер отправленного кадра) и номер подтверждения (N(R) — номер ожидаемого кадра). Размер окна (k) по умолчанию равен 7 для модуля 8 и 127 для модуля 128 (расширенный режим).
Типы кадров
LAPB использует три типа кадров, определённых в HDLC:
- Информационные кадры (I-кадры): переносят данные пользователя. Содержат поля N(S) и N(R). Подтверждают получение предыдущих кадров.
- Управляющие кадры (S-кадры): выполняют функции управления потоком и подтверждения. Включают:
- RR (Receiver Ready) — готовность приёма, подтверждение.
- RNR (Receiver Not Ready) — временная занятость приёмника.
- REJ (Reject) — запрос повторной передачи кадра.
- Ненумерованные кадры (U-кадры): для установления и разрыва соединения, а также для сообщения об ошибках. Включают SABM, DISC, UA (Unnumbered Acknowledgment), DM (Disconnected Mode), FRMR (Frame Reject).
Формат кадра
Кадр LAPB имеет следующую структуру:
| Поле | Размер (байт) | Описание |
|---|---|---|
| Флаг | 1 | 01111110 — начало и конец кадра |
| Адрес | 1 | Идентифицирует DTE или DCE (0x01 — команда, 0x03 — ответ) |
| Управление | 1 | Тип кадра, номера N(S) и N(R) (или код команды) |
| Данные | 0–N | Поле данных (только для I-кадров), максимальная длина обычно 128–4096 байт |
| FCS | 2 | Контрольная сумма (CRC-16) |
| Флаг | 1 | 01111110 |
Адресное поле в LAPB упрощено по сравнению с HDLC: используется только один байт, где бит 0 указывает направление (команда или ответ). Для обеспечения прозрачности данных применяется бит-стаффинг (вставка нулевого бита после пяти единиц подряд).
Применение
LAPB исторически был основным протоколом канального уровня в сетях X.25. Основные области применения:
- Банковские системы: сети X.25 использовались для межбанковских расчётов и обмена данными с банкоматами (например, в России — сеть «Сбербанк»).
- Системы бронирования: авиабилеты (SITA, Amadeus) и гостиницы.
- Государственные сети: передача данных в административных и оборонных структурах.
- Промышленная автоматизация: протокол применяется в устаревших, но всё ещё эксплуатируемых системах SCADA и PLC.
- Спутниковая связь: LAPB используется в некоторых протоколах для спутниковых каналов с задержками.
В современных IP-сетях LAPB применяется редко, но может использоваться как транспорт для протоколов более высокого уровня (например, через LAPB over IP в эмуляторах X.25).
Сравнение с другими протоколами
| Характеристика | LAPB | HDLC (NRM) | PPP | Ethernet |
|---|---|---|---|---|
| Режим | Сбалансированный | Несбалансированный | Сбалансированный | Неориентированный на соединение |
| Ориентация на соединение | Да | Да | Да | Нет |
| Гарантия доставки | Да (с повторной передачей) | Да | Да (с опцией) | Нет |
| Управление потоком | Оконное | Оконное | Оконное (с опцией) | Нет |
| Исправление ошибок | Да (FCS + ARQ) | Да | Да (с опцией) | FCS, но без повторной передачи |
| Применение | X.25 | Синхронные линии | Dial-up, DSL | Локальные сети |
LAPB обеспечивает более высокую надёжность, чем Ethernet, но имеет меньшую пропускную способность из-за накладных расходов на подтверждения и повторные передачи.
Реализации и стандарты
LAPB описан в следующих документах:
- ITU-T Recommendation X.25 (раздел «Link Layer»).
- ISO 7776: «Information technology — Telecommunications and information exchange between systems — High-level data link control procedures — Description of the X.25 LAPB-compatible DTE data link procedures».
- RFC 1356: Multiprotocol Interconnect on X.25 and ISDN.
Реализации LAPB существуют в операционных системах (Linux — драйвер lapb в ядре, FreeBSD, OpenBSD), а также в виде программных эмуляторов и аппаратных контроллеров (например, в маршрутизаторах Cisco).
Интересные факты
- LAPB стал основой для протокола LAPD (Link Access Procedure on the D channel), используемого в цифровой сети ISDN.
- В России сети X.25 на основе LAPB активно применялись до середины 2000-х годов, например, в системе «Роспатент» и в некоторых региональных телекоммуникационных проектах.
- Протокол допускает расширенный режим нумерации (модуль 128), что позволяет работать с большими окнами и снижать задержки на спутниковых каналах.
Источники
- ITU-T Recommendation X.25 (1996) — Interface between Data Terminal Equipment (DTE) and Data Circuit-terminating Equipment (DCE) for terminals operating in the packet mode and connected to public data networks by dedicated circuit.
- ISO 7776:1995 — Information technology — Telecommunications and information exchange between systems — High-level data link control procedures — Description of the X.25 LAPB-compatible DTE data link procedures.
- RFC 1356 — Multiprotocol Interconnect on X.25 and ISDN.
- Таненбаум Э., Уэзеролл Д. «Компьютерные сети» (5-е издание), 2012.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →