SMDS (Switched Multimegabit Data Service — коммутируемый мультимегабитный сервис передачи данных) представляет собой технологию передачи данных, разработанную в Bellcore. SMDS можно рассматривать как частный случай MAN-технологии IEEE 802.6 DQDB (Distributed Queue Dual Bus – распределенная двойная шина с очередью), которая была разработана для высокоскоростной передачи данных без организации соединений на основе коммутации пакетов по сетям общего пользования. В настоящее время SMDS обеспечивает доступ к сетям со скоростью до DS-3 (44,726 Мбит/с) и планируется увеличение скорости передачи до 155,520 Мбит/с (OC-3c). SMDS принимает до 9188 октетов из высокоскоростных пользовательских потоков, делит принятые данные на ячейки размером 53 октета, которые передаются через сеть сервис-провайдера. На приемной стороне осуществляется сборка (reassembling) пакетов из принятых ячеек.
Доступ пользователей к сети SMDS контролируется на сетевом уровне (уровень 3) с помощью протокола SIP. Протокол SIP на сетевом уровне принимает и передает кадры с информацией протоколов вышележащих уровней. На канальном уровне протокол SIP (стандарт IEEE 802.6 DQDB) управляет доступом к физической среде передачи. Уровень 1 протокола SIP включает в себя PLCP и передающую систему.
На рисунке показано положение стека протоколов SMDS в эталонной модели OSI:
Положение стека протоколов SMDS в эталонной модели OSI
SIP, уровень 3
Модули данных SIP SDU, содержащие 9188 октетов, передаются с вышележащих уровней протоколу SIP сетевого уровня для последующей передачи через сеть. Протокол сетевого уровня SIP формирует пакеты L3 PDU, включающие заголовок и трейлер, как показано на рисунках. Пакеты L3 PDU передаются протоколу SIP канального уровня, который сегментирует их в ячейки размером 53 октета – L2 PDU. Ячейки L2 PDU затем передаются PLCP для последующей передачи через физическую среду.
Формат L3 PDU показан на рисунке.
Заголовок |
Информация |
PAD |
X + CRC32 |
Трейлер |
|
36 |
9188 |
0-3 |
0, 4 |
4 |
Байты |
Формат SIP PDU для сетевого уровня
Формат заголовка сетевого уровня показан на рисунке.
Биты |
||||||||
0 |
6 |
8 |
12 |
13 |
15 |
|||
Резерв |
BEtag |
|||||||
BAsize |
||||||||
Адрес получателя (8 байтов) |
||||||||
Адрес отправителя (8 байтов) |
||||||||
X+HLPI (6 битов) |
PL |
X + QoS |
CIB |
HEL |
||||
X + Bridging |
||||||||
HE (12 байтов) |
Формат заголовка сетевого уровня
На следующем рисунке показан формат трейлера сетевого уровня.
Резерв |
BEtag |
BAsize |
1 байт |
1 байт |
2 байта |
Трейлер сетевого уровня
Ниже приведено описание полей L3 PDU.
Резерв
Зарезервированное поле размером 1 октет, которое CPE и SS заполняют нулями.
BEtag
Поле размером 1 октет, содержащее тег начала/завершения. Тег представляет собой двоичное число в диапазоне 0-255, используемое для установки соответствия между первым сегментом (содержащим заголовок) и последним сегментом (содержащим трейлер) пакета L3 PDU.
BAsize
Это поле имеет размер 2 октета и содержит значение длины L3 PDU в октетах от начала поля «Адрес получателя« до конца поля CRC32 (если оно присутствует).
Адрес получателя
Поле, содержащее адрес получателя PDU (8 октетов). Поле адреса получателя делится на два подполя:
4 старших бита указывают тип адреса — индивидуальный (1100) или групповой (1110).
Оставшиеся 60 битов задают адрес SMDS.
Адрес отправителя
Это поле содержит адрес отправителя пакета (8 октетов) и так же состоит из двух частей (см. Адрес отправителя).
HLPI
Идентификатор протокола вышележащего уровня – Higher Layer Protocol Identifier — представляет собой шестибитовое поле, используемое для выравнивания форматов протокола SIP и DQDB.
PL
Размер поля PAD (заполнение) — двухбитовое поле, указывающее количество октетов в поле PAD. Поле PAD используется для выравнивания L3 PDU по 32-битовым границам.
QoS
Качество обслуживания – Quality of Service — четырехбитовое поле, используемое для выравнивания форматов протокола SIP и DQDB.
CIB
Бит индикации CRC32, указывающий на наличие (1) или отсутствие (0) поля контрольной суммы CRC32.
HEL
Длина расширения заголовка. Трехбитовое поле, которое указывает количество 32-битовых слов в поле расширения заголовка.
Bridging
2-октетное поле, используемое для выравнивания форматов протокола SIP и DQDB.
HE
Расширение заголовка — Header Extension — 12-октетное поле, которое содержит версию протокола, а также дополнительную (по выбору оператора) информацию, представленную в виде набора перечисленных ниже субполей:
Длина элемента: однооктетное поле, содержащее общий размер (в октетах) полей Длина элемента, Тип элемента и Значение элемента.
Тип элемента: однооктетное поле, содержащее двоичное значение, которое определяет тип информации в поле Значение элемента.
Значение элемента: поле переменной длины, интерпретация которого определяется значением поля Тип элемента.
HE PAD: поле переменной длины (0 — 9 октетов), которое используется для выравнивания длины поля HE (расширение заголовка) до 12 байтов.
Информационное поле
Поле переменной длины (до 9188 октетов), содержащее пользовательскую информацию.
PAD
Поле выравнивания имеет переменную длину (1 — 3 октета) и используется для выравнивания общей длины L3 PDU по 32-битовой границе. Все октеты данного поля имеют нулевое значение.
CRC32
Двухоктетное поле, содержащее контрольную сумму, которая служит для обнаружения ошибок в PDU. При подсчете контрольной суммы учитываются поля от Адреса получателя до CRC32 (включая последнее).
SIP, уровень 2
После того, как процесс формирования L3 PDU завершен, сформированный пакет передается на канальный уровень для формирования одного или нескольких пакетов L2 PDU. SIP канального уровня генерирует 53-октетные ячейки, которые передаются через PLCP и физическую среду. L2 PDU содержит пятиоктетный заголовок и 44 октета данных (элемент сегментации) и двухоктетный трейлер. Формат ячейки показан на рисунке.
Биты |
|||||||
2 |
4 |
6 |
8 |
||||
Контроль доступа |
|||||||
Управляющая сетевая информация (32 бита) |
|||||||
Тип сегмента |
Порядковый номер |
||||||
Идентификатор сообщения |
|||||||
Элемент пакета (352 бита или 44 байта) |
|||||||
Длина содержимого |
|||||||
Контрольная сумма содержимого |
Формат SIP PDU канального уровня
Ниже приведено описание полей L2 PDU.
Контроль доступа
8-битовое поле, задающее тип содержимого поля Контроль доступа PDU канального уровня — информация (1) или пустое поле (0).
Управляющая сетевая информация
Четырехоктетное поле, задающее тип содержимого поля Управляющая сетевая информация — информация (FFFFF022H) или пустое поле (0).
Тип сегмента
Двухбитовое поле, указывающее получателю способ обработки непустых ячеек L2 PDU. Сегменты могут быть следующих типов:
00 COM (Continuation of Massage — продолжение сообщения)
01 EOM (End of Message — конец сообщения)
10 BOM (Beginning of Message — начало сообщения)
11 SSM (Single Segment Message — односегментное сообщение).
Порядковый номер
Четырехбитовое поле, используемое отправителем и получателем ячеек для соблюдения порядка ячеек при обратной сборке пакета L3 PDU.
Идентификатор сообщения
Десятибитовое значение, позволяющее ассоциировать различные ячейки с одним пакетом L3 PDU.
Элемент пакета
44-октетное поле, содержащее сегмент (часть) пакета L3 PDU.
Длина содержимого
Шестибитовое поле, показывающее, какие из 44 октетов сегмента содержат реальные данные. Для сегментов типа BOM и COM это поле всегда содержит значение 44, для сегментов EOM — кратное 4 значение в диапазоне от 4 до 44, а для сегментов SSM — от 28 до 44 (так же кратное 4).
Контрольная сумма содержимого
Десятибитовое поле контрольной суммы, при вычислении которой учитываются поля Тип сегмента, Порядковый номер, Идентификатор сообщения, Элемент пакета, Длина содержимого и Контрольная сумма содержимого.
После завершения формирования ячеек L2 PDU последние передаются PLCP и физическому уровню SIP.
SIP, уровень 1
SIP на физическом уровне используется для передачи сформированных уровнем 2 ячеек L2 PDU. Функции передачи информации делятся на два подуровня – верхний подуровень PLCP и нижний подуровень системы передачи. Уровень PLCP обеспечивает взаимодействие с SIP канального уровня и поддерживает передачу данных и управляющей информации. Подуровень системы передачи определяет формат и скорость передачи данных в физическую среду. Чаше всего для реализации физического уровня SIP используются технологии и стандарты DS-1 и DS-3.
Пример декодирования пакета SMDS