Концепт кадрирования на основе CRC был разработан корпорацией StrataCom для улучшения эффективности стандартного протокола ATM (англ. asynchronous transfer mode — асинхронный способ передачи данных).

Данная технология широко применялась в ключевых протоколах канального уровня самого ATM и была одной из важнейших разработок StrataCom. Продвинутая версия данного метода кадрирования была использована в общей процедуре инкапсуляции данных (ITU-T SG15 G.7041 Generic Framing Procedure), которая сама по себе была после использована в нескольких протоколах канального уровня.

Обзор метода кадрирования на основе CRC править

Данный метод кадрирования использует заголовок циклического избыточного контроля ( англ. cyclic redundancy check или CRC), который представлен в протоколе ATM и других подобных протоколах, для обеспечения кадрирования ссылки без дополнительных процедур. В АТМ, получившееся поле обозначается как НЕС-поле (англ. Header Error Control/Check - Проверка/управление ошибками заголовка). Оно состоит из остатка от деления 32 бит заголовка (взятых из коэффициентов многочлена над полем с двумя элементами) на многочлен типа  . Бинарная последовательность 01010101 складывается по модулю 2 с 8 битами остатка, после чего результат ставится на последние 8 мест заголовка[1].

Данная схема, которая проверяется на протяжении всего времени передачи данных, позволяет корректировать однобитные ошибки и засекать ошибки, поражающие сразу много битов. Для примера вычисления CRC, см. математическое описание CRC.

CRC/HEC-заголовок также нужен для улучшения надёжности доставки ячеек внутри самой системы АТМ. Используя то же самое поле CRC/HEC для этой цели кадрирования ссылок значительно улучшило эффективность соединений по сравнению с другими методами кадрирования, так как для этой самой второй цели не нужно было выделять дополнительных бит.

Приёмник, использующий данный метод кадрирования, осуществляет последовательный побитовый сдвиг потока полученных данных, пока не находит ту битовую позицию, в которой заголовок CRC оказывается корректным определённое количество раз. Затем приёмник подаёт сигнал о том, что требуемый кадр был найден. При этом, гистерезисная функция закрывает приёмник в случае возможности возникновения ошибки.

В соединениях, в которых уже присутствует закрывающий битовый механизм (например, в кадрах по стандартам E1 или SDH), приёмнику потребуется совершить лишь байтовый сдвиг (вместо последовательного побитового сдвига) потока полученных данных для обнаружения замка.

Кадрирование на основе Length/HEC править

Продвинутая версия кадрирования на основе CRC с переменной длиной кадра использовалась в ITU-T SG15 G.7041 GFP, где она указывалась как "кадрирование на основе Length/HEC". Смещение к следующему действительному заголовку представлено в фиксированной позиции, в сравнении с CRC/HEC. Приёмник ищет позицию в получаемом потоке данных основываясь на правильности переданного CRC/HEC-заголовка, а также на том факте, что сдвиг байтов будет указывать на следующий действительный CRC/HEC-заголовок.

Изобретение кадрирования на основе CRC править

StrataCom произвела первый (стандартный) коммерческий асинхронный способ передачи данных, называемый IPX. IPX использовал ячейки по 24 байта (в отличие от ячеек ATM размером в 53 байта), а также имел немного иные описания полей, однако сама идея использования коротких ячеек фиксированной длины была неизменной. Первый продукт StrataCom имел цифровые каналы типа Т1 (1.544 Мбит/с), которые включали в себя CRC-заголовки длиной в 5 бит, по аналогии с 8-битными CRC-заголовками АТМ.

Т1 представляет собой протокол, использующий мультиплексирование с разделением по времени (англ. time-division multiplexing или TDM), с 24 байтами полезной нагрузки, переносимой в кадре размером 191 бит. Первый бит каждого кадра содержит один бит определённого шаблона. Приёмник находит этот шаблон путём перебора битовых позиций в поступивших данных, в которых требуемый шаблон появляется каждый 193-й байт. Для StrataCom было удобно сделать длину ячеек равной длине кадра в стандарте Т1[2], так как подходящие для Т1 микросхемы производства компании Rockwell на тот момент были широко доступны на рынке. Данные микросхемы позволили находить 193 бита TDM-кадров и разбивать их на 24 байта таким образом, чтобы это было удобно.

Но когда пришло время производства соответствующего продукта для европейского рынка, удобство использования 24 байт превратилось в обязанность. Европейские цифровые каналы типа Е1 имели кадр размером в 32 бита, из которых 30 могли переносить информацию. Первым предложением команды разработчиков было использование протокола HDLCHigh-Level Data Link Control (с англ. — «высокоуровневое управление линией связи») для преобразования последовательности ячеек из 24 байтов в байтовый поток, получаемый из 30 байт полезной нагрузки в Е1. Однако, данный способ был крайне неэффективным, так как протокол HDLC был слишком тяжёлым и сильно зависел от передаваемых данных. Тогда команда разработчиков решила, что сможет сделать свой метод кадрирования, основываясь на CRC. Была разработана схема, которая проверяла входящий поток данных из кадрирующего устройства Е1 и искала позицию бита, для которого значение заголовка CRC было постоянно правильным. Также команда создать технологию более толерантной к возможным ошибкам[3].

Указанная технология была запатентована в 1984 году. Она использовала CRC для поиска начала кадра размером в 50 бит, который состоял из 36 бит полезной нагрузки, 13 битах CRC и 1 бита, обозначающего начало кадра.[4]

Примечания и источники править

Ссылки править