Frame Relay был создан в начале 1990-х в качестве замены протоколу X.25 для быстрых надёжных каналов связи, технология FR архитектурно основывалась на X.25 и во многом сходна с этим протоколом, однако в отличие от X.25, рассчитанного на линии с достаточно высокой частотой ошибок, FR изначально ориентировался на физические линии с низкой частотой ошибок, и поэтому большая часть механизмов коррекции ошибок X.25 в состав стандарта FR не вошла. В разработке спецификации принимали участие многие организации; многочисленные поставщики поддерживают каждую из существующих реализаций, производя соответствующее аппаратное и программное обеспечение.
Frame relay обеспечивает множество независимых виртуальных соединений (Virtual Circuits, VC) в одной линии связи, идентифицируемых в FR-сети по идентификаторам подключения к соединению (DLCI). Вместо средств управления потоком включает функции извещения о перегрузках в сети. Возможно назначение минимальной гарантированной скорости (CIR) для каждого виртуального канала.
В основном применяется при построении территориально распределённых корпоративных сетей, а также в составе решений, связанных с обеспечением гарантированной пропускной способности канала передачи данных (VoIP, видеоконференции и т. п.).
Каждый кадр начинается и замыкается «флагом» — последовательностью «01111110». Для предотвращения случайной имитации последовательности «флаг» внутри кадра при его передаче проверяется всё его содержание между двумя флагами и после каждой последовательности, состоящей из пяти идущих подряд бит «1», вставляется бит «0». Эта процедура (bit stuffing) обязательна при формировании любого кадра FR, при приёме эти биты «0» отбрасываются.
FCS (Frame Check Sequence) — проверочная последовательность кадра служит для обнаружения ошибок и формируется аналогично циклическому коду HDLC.
Поле данных имеет минимальную длину в 1 октет, максимальную по стандарту Frame Relay Forum — 1600 октетов, однако в реализациях некоторых производителей FR-оборудования допускается превышение максимального размера (до 4096 октетов).
Поле Адрес кадра Frame Relay, кроме собственно адресной информации, содержит также и дополнительные поля управления потоком данных и уведомлений о перегрузке канала и имеет следующую структуру:
DLCI (6 Bit)
C/R (1 Bit)
EA (1 Bit)
DLCI (4 Bit)
FECN (1 Bit)
BECN (1 Bit)
DE (1 Bit)
EA (1 Bit)
Наименования и значения полей:
Имя поля
Назначение
DLCI
Data Link Connection Identifier — идентификатор виртуального канала (PVC), мультиплексируемого в физический канал. DLCI имеют только локальное значение и не обеспечивают внутрисетевой адресации.
C/R
Command / Response — признак «команда-ответ», по аналогии с протоколом HDLC.
EA
Address Field Extension Bit — бит расширения адреса. DLCI содержится в 10 битах, входящих в два октета заголовка, однако возможно расширение заголовка на целое число дополнительных октетов с целью указания адреса, состоящего более чем из 10 бит. EA устанавливается в конце каждого октета заголовка; если он имеет значение «1», то это означает, что данный октет в заголовке последний.
FECN
Forward Explicit Congestion Notification — извещение о перегрузке канала в прямом направлении.
BECN
Backward Explicit Congestion Notification — извещение о перегрузке канала в обратном направлении.
DE
Discard Eligibility Indicator — индикатор разрешения сброса кадра при перегрузке канала. Выставляется в «1» для данных, подлежащих передаче в негарантированной полосе (EIR) и указывает на то, что данный кадр может быть уничтожен в первую очередь.
Виртуальные каналы
Для передачи данных от отправителя к получателю в сети Frame Relay создаются виртуальные каналы, VC (англ. Virtual Circuit), которые бывают двух видов:
постоянный виртуальный канал, PVC (Permanent Virtual Circuit), который создаётся между двумя точками и существует в течение длительного времени, даже в отсутствие данных для передачи;
коммутируемый виртуальный канал, SVC (Switched Virtual Circuit), который создаётся между двумя точками непосредственно перед передачей данных и разрывается после окончания сеанса связи
В первоначальном наборе стандартов (ANSI T1S1) CIR как отдельный параметр отсутствует, но для отдельного виртуального канала были определены параметры B(c) (bits committed, Committed Burst Size), B(e) (bits excess) и T(c) (Committed Rate Measurement Interval). B(c) при этом определяется как количество бит, гарантированно передаваемых за время T(c) даже при перегрузке сети, B(e) — максимальное количество бит, которые могут быть переданы за время T(c) при недогрузке сети, то есть без гарантии доставки: заголовки пакетов, отправляемые после превышения B(c) метятся битом DE (discard eligible, аналогичен CLP в ATM) и в случае возникновения в сети перегрузки уничтожаются на коммутаторах перегруженного участка.
Таким образом, для виртуального канала могут быть определены две полосы пропускания:
Возможна настройка и работа FR-каналов со значением CIR, равным нулю.
В ANSI T1S1 значение T(c) не было определено, так как значения T(c), B(c) и B(e) являются связанными параметрами, зависящими от скоростей физических интерфейсов, агрегированных полос пропускания виртуальных каналов, размеров буферов FR-коммутатора и других параметров, зависящих от реализации и настроек коммутатора.
Однако CIR и EIR оказались удобными показателями для описания параметров каналов при заключении соглашений между операторами FR-сетей и потребителями их услуг, более того, во многих случаях T(c) может динамически пересчитываться в зависимости от характера трафика, поэтому в RFC 3133 (Terminology for Frame Relay Benchmarking) CIR является первичным параметром и T(c) определяется как временной интервал, необходимый для поддержания CIR, то есть T(c)=B(c)/CIR, выступая в качестве аналога TCP Sliding Window.
В сетевых технологиях при множественном доступе к разделяемому каналу с двухуровневой приоритизацией (некоторые беспроводные и спутниковые сети и т. д.) также используют термин CIR для приоритезируемой клиентской полосы пропускания, при этом CIR является одним из целевых параметров конфигурации шейперов (shapers) — подсистем сглаживания трафика с буферизацией (RFC 2963, A Rate Adaptive Shaper for Differentiated Services), в этом случае вместо EIR используется комбинация параметров MIR (Maximum Information Rate) и PIR (Peak Information Rate).
Литература
Стив Мак-Квери, Келли Мак-Грю, Стивен Фой. Передача голосовых данных по сетям Cisco Frame Relay, ATM и IP = Cisco Voice Over Frame Relay, ATM, and IP. — М.: «Вильямс», 2002. — С. 512. — ISBN 5-8459-0340-8.