Флаг координации
0 = координировано
1 = не координировано
Координированные передачи MSH-DSCH осуществляются с помощью субкадров управления. В обоих случаях для установления режима требуется тройной обмен (запрос, предоставление, подтверждение предоставления). Не координированный обмен возможен только в минидоменах, которые не создают помех координированной диспетчеризации.
Флаг запрос/отклик
0 = сообщение запроса
1 = предоставление (используется и для подтверждения предоставления)
Тип запрос говорит о том, что от одного или более узлов поступил новый запрос. Поле число запросов в этом случае не равно нулю. Сообщение может содержать также предоставления и подтверждения.
Тип предоставление указывает, что осуществлено одно или более предоставлений или подтверждается получение. Флаг всегда равен нулю для скоординированной распределенной диспетчеризации.
Формат сообщения конфигурирования сеточной (MESH) сети (MSH-NCFG)
Такие сообщения используются для взаимодействия узлов-соседей в сети (BS и SS) для согласования их параметров.
Таблица 72. Формат сообщения MSH-NCFG
Синтаксис |
Размер |
Комментарий |
MSH-NCFG _Message_Format() { |
|
|
Тип сообщения управления = 39 |
8 бит |
|
NumNmbEntries |
5 бит |
|
NumBSEntries |
2 бита |
|
Флаг вложенного пакета |
1 бит |
0= нет, 1= имеется |
Xmt Power |
4 бита |
|
Xmt Antenna |
3 бита |
|
NetEntry MAC Address Flag |
1 бит |
0= нет, 1= имеется |
Базовый канал сети |
4 бита |
|
Зарезервировано |
4 бита |
|
NetConf Count |
4 бита |
|
Временная метка
Номер кадра
Номер управляющего сетевого домена в кадре
Число шагов синхронизации |
12 бит
4 бита
8 бит |
|
NetConf диспетчерские данные
Следующий Xmt Mx
Показатель Xmt Holdoff |
3 бита
5 бит |
|
if(NetEntry MAC Address Flag)
NetEntry MAC Address |
48 бит |
|
for(i=0; i<NumBSEntries; ++i) { |
|
|
Идентификатор узла базовой станции |
16 бит |
|
Число шагов |
3 бита |
|
Xmt energy/bit |
5 бит |
|
} |
|
|
for(i=0; i<NumNmbEntries; ++i) |
|
|
{ |
|
|
Nbr Node ID (число идентификаторов) |
16 бит |
|
MSH-Nbr_Physical_IE() |
16 бит |
|
} |
|
|
if(Embedded Packet Flag)
MSH-Nbr_Logical_IE() |
Перем. |
|
} |
|
|
if(Embedded Packet Flag)
MSH-NCFG_embedded_data() |
Перем. |
|
} |
|
|
Формат сообщения (REP-REQ) о результате измерения для канала
Таблица 71. Формат сообщения REP-REQ
Синтаксис |
Размер |
Комментарий |
Report_Response_Message_Format() { |
|
|
Тип сообщения управления = 37 |
8 бит |
|
Отклик-отчет (TLV) |
перем. |
|
} |
|
|
Формат сообщения (REQ-REQ) запроса результата измерения для канала
Таблица 70. Формат сообщения REQ-REQ
Синтаксис |
Размер |
Комментарий |
Report_Request_Message_Format() { |
|
|
Тип сообщения управления = 36 |
8 бит |
|
Запрос отчета (TLV) |
перем. |
|
} |
|
|
Идентификатор нисходящего канала
Идентификатор нисходящего канала, к которому относится сообщение. Этот идентификатор произвольно выбирается BS и является уникальным для заданного домена подуровня MAC.
Параметры сообщения, которые следуют за числом изменений конфигурации, кодируются в формате TLV.
Downlink_Burst_Profile имеет комбинированную кодировку TLV, которая сопряжена с DIUC (Downlink Interval Usage Code) используемого физического канала. Каждый Downlink_Burst_Profile представляет собой неупорядоченный список атрибутов PHY, закодированных в формате TLV. Каждому интервалу с помощью сообщения DL-MAP ставится в соответствие DIUC.
Каждый Downlink_Burst_Profile в сообщении DCD содержит следующие параметры: Тип модуляции
Тип кода FEC
Длина последнего кода
Порог обязательного выхода DIUC
Порог минимальной записи DIUC
Присутствие преамбулы
Если тип кода FEC равен 1, 2 или 3 Downlink_Burst_Profile будет содержать также RS байты данных (К)
RS байты четности (R)
Если тип кода FEC равен 2, то Downlink_Burst_Profile будет содержать тип кода BCC. Если же тип кода FEC равен 4, то Downlink_Burst_Profile будет содержать тип кода ряда BTC, тип кода колонки и тип интерливинга BTC.
Соответствие между профайлом кластера и DUIC представлено в табл. 14.
Таблица 14. Соответствие между профайлом кластера и DIUC
Профайл кластера (burst) |
DIUC |
Профайл DL 1 |
0 |
Профайл DL 2 |
1 |
Профайл DL 3 |
2 |
Профайл DL 4 |
3 |
Профайл DL 5 |
4 |
Профайл DL 6 |
5 |
Профайл DL 7 |
6 |
Профайл DL 8 |
7 |
Профайл DL 9 |
8 |
Профайл DL 10 |
9 |
Профайл DL 11 |
10 |
Профайл DL 12 |
11 |
Профайл DL 13 |
12 |
Зарезервировано |
13 |
Зазор (Gap) |
14 |
Конец таблицы DL-MAP |
15 |
Конец таблицы DL-MAP указывает на первый PS после конца DL-субкадра. В табл. 15 представлен формат Downlink_Burst_Profile, который используется в сообщении DCD. Профайл кодируется с типом =1, 8-битовой длиной и 4-битовым DIUC.
Таблица 15. Формат Downlink_Burst_Profile
Синтаксис |
Размер |
Описание |
Тип=1 |
8 бит |
|
Длина |
перем. |
|
Зарезервировано |
4 бита |
Следует устанавливать в 0 |
DUIC |
4 бита |
|
Информация в формате TLV |
перем. |
|
<
Секции данных нисходящего канала используются для передачи информационных и управляющих сообщений для станций клиентов. Для данных всегда используется FEC-кодирование. В режиме TDM данные передаются в порядке понижения трудоемкости профайлов. В случае режима TDMA данные группируются в кластеры (burst). Сообщение DL-MAP содержит карту соответствия, которая уведомляет, с какого PS начинаются изменения профайла. Если в пределах кластера данные (DL) не заполняют всего субкадра, передатчик прекращает работу.
Вообще число PS i, выделенное для конкретного кластера, может быть вычислено на основе DL-MAP. Пусть n - минимальное число PS, необходимое для одного кодового слова FEC данного профайла. Тогда i=kn+j+q, где k - число кодов FEC, которые относятся к данному кластеру, j - число PS, занятых наибольшим возможным укороченным кодовым словом, а q (0#q<1) равно числу PS, занимаемых заполнителем в конце кластера, чтобы гарантировать целое i. Для операций с фиксированными кодами j=0. В конце кластера (когда нет следующего кодового слова) добавляются 4q символа, чтобы завершить PS. На рис. 4 показана схема привязки DL-MAP для варианта TDM, а на рис. 5 то же для варианта TDMA.
Рис. 4. Схема привязки DL-MAP, использующая укороченные блоки FEC - вариант TDM
Рис. 5. Схема привязки DL-MAP, использующая укороченные блоки FEC - вариант TDMA
Поле данных для нисходящего канала разбивается на блоки, размер которых согласуется с размером кодов после добавления указателя CS. Заметим, что длина поля данных может варьироваться в зависимости от того разрешено ли использование укороченных кодов в профайле кластера. К каждому сегменту поля данных добавляется байт указателя. Это показано на рис. 6.
Рис. 6. Формат PDU при передаче по нисходящему каналу CS
Поле указателя определяет номер байта в пакете, который указывает либо на начало первого MAC PDU в пакете, либо на начало любого набора байт, который предшествует следующему MAC PDU. Если в CS-пакете нет MAC PDU или набора байт, тогда байт указателя устанавливается равным нулю.
Когда имеются данные для передачи, stuff_byte равный 0xFF будет использоваться в пределах поля данных для заполнения любых ниш между MAC PDU.
Кодирование и модуляция на физическом уровне нисходящего канала для данного режима отражены на рис. 7.
Рис. 7. Блок-схема подуровня PMD нисходящего канала
Нисходящий канал поддерживает адаптивное формирование профайлов кластеров для пользовательской части данных кадра. Может быть определено до 12 профайлов кластера. Параметры каждого передаются SS через МАС-сообщения в управляющей части нисходящего кадра. Использование DIUC определено в табл. 16.
Таблица 16. Значения DIUC
DIUC |
Назначение |
0 |
Управление кадром (не в сообщениях DCD) |
1-6 |
Профайлы кластеров TMD (без преамбулы) |
7-12 |
Профайлы кластеров TMDA (фиксированная преамбула) |
13 |
Зарезервировано |
14 |
Зазор (в сообщениях DCD) |
15 |
Конец таблицы соответствия |
Так как модуляция и схема FEC могут быть для SS опционными, для BS предусмотрены механизмы идентификации возможностей SS. Эта информация передается от SS к BS при регистрации.
Идентификатор восходящего канала
Идентификатор канала, к которому относится сообщение. Идентификатор произвольно выбирается BS и является уникальным в пределах домена субуровня MAC.
Информационное сообщение аутентификации (Authent Info)
Сообщение Authent Info содержит один атрибут CA-Certificate формата Х.509 производителя SS.
Код = 12
Атрибуты сообщения Authent Info представлены в табл. 37.
Таблица 37. Атрибуты сообщения Authent Info
Атрибут |
Содержимое |
СА-сертификат |
Сертификат производителя SS |
Информационный элемент диспетчеризации MSH-DSCH
Информация, содержащаяся в сообщениях MSH-DSCH, используется для рассылки информации, необходимой для определения времени передачи этих сообщений, при координируемой распределенной диспетчеризации. Каждый узел сообщает два связанных параметра, сопряженных с ним самим и соседними узлами. Диспетчерская информация включает следующие параметры:
Таблица 86. Информационный элемент MSH-DSCH
Синтаксис |
Размер |
Комментарий |
MSH-DSCH_scheduling_IE() { |
|
|
NextXmt Mx |
5 бит |
|
Показатель Xmt Holdoff |
3 бита |
|
Число SchedEntries |
8 бит |
|
for(i=0; i<No_ SchedEntries; ++i) { |
|
|
ID узла соседа |
16 бит |
|
Следующий Xmt Mх соседа |
5 бит |
|
Показатель Xmt Holdoff соседа |
3 бита |
|
} } |
|
|
Информационный элемент предоставления MSH-DSCH
Элементы предоставления передаются в сообщении MSH-DSCH и несут в себе данные о предоставленном интервале минидоменов из выбранном из диапазона доступных. Элементы предоставления могут использоваться для предоставления минидоменов и для подтверждения такого предоставления. Элемент предоставления (Grants) содержит в себе следующие параметры:
Таблица 89. Информационные элементы предоставления MSH-DSCH (Grants)
Синтаксис |
Размер |
Комментарий |
MSH-DSCH_Grants_IE() { |
|
|
ID канала |
8 бит |
|
Начальный номер кадра |
8 бит |
8 младших бит номера кадра |
Начало минидомена |
8 бит |
|
Диапазон минидомена |
8 бит |
|
Направление |
1 бит |
|
Протяженность (persistence) |
3 бита |
|
Канал |
4 бита |
|
} |
|
|
Направление
0= от источника запроса
1= к источнику запроса
Информационный элемент возможностей MSH-DSCH
Возможности, записанные в сообщении MSH-DSCH, будут использоваться для указания на свободные диапазоны минидоменов, которым соседи могут предоставить доступ. В перечень возможностей могут входить:
Таблица 88. Информационные элементы возможностей MSH-DSCH
Синтаксис |
Размер |
Комментарий |
MSH-DSCH_Availability_IE() { |
|
|
Начальный номер кадра |
8 бит |
8 младших бит номера кадра |
Начало минидомена |
8 бит |
|
Диапазон минидомена |
7 бит |
|
Направление |
2 бита |
|
Протяженность (persistence) |
3 бита |
|
Канал |
4 бита |
|
} |
|
|
Начальный номер кадра
Младшие 8 бит номера кадра, где начинается IE Availability
Диапазон минидомена
Число свободных минидоменов
Направление
0= доступность аннулируется
1= доступна для передачи в этом диапазоне минидоменов
2= доступна для приема в этом диапазоне минидоменов
3= доступна для приема и передачи
Протяженность
Поле persistence для возможностей. Число кадров, для которых Availability действительна.
0= доступность аннулируется
1 = одиночный кадр
2 = 2 кадра
3 = 4 кадра
4 = 8 кадров
5 = 32 кадра
6 = 128 кадров
7 = сохраняется вплоть до аннулирования или уменьшения
Канал
Логический номер канала из субнабора возможных номеров физического канала, сопряженный с сетевым дескриптором.
Информационный элемент запроса MSH-DSCH
Запрос, содержащийся в сообщении MSH-DSCH, транспортирует запрос ресурса на поканальной основе. Запрос включает в себя следующие параметры.
Таблица 87. Запрос, содержащийся в сообщении MSH-DSCH
Синтаксис |
Размер |
Комментарий |
MSH-DSCH_Request_IE() { |
|
|
ID канала |
8 бит |
|
Уровень требования |
3 бита |
|
Протяженность (persistence) |
3 бита |
|
Зарезервировано |
1 бит |
|
} |
|
|
ID канала
ID, присвоенное передающим узлом каналу до соседа, который относится к данному запросу.
Уровень требования
Требуемое число минидоменов.
Протяженность
Поле протяженность для запроса. Число кадров, где присутствует запрос.
0 = аннулировать резервирование
1 = одиночный кадр
2 = 2 кадра
3 = 4 кадра
4 = 8 кадров
5 = 32 кадра
6 = 128 кадров
7 = сохраняется вплоть до аннулирования или уменьшения
Конец отсрочки передачи
Размер конечного окна отсрочки передачи для исходного соперничества за диапазон, выраженный через степень 2. Значение n может лежать в интервале 0-15 (старшие биты могут не использоваться и приравниваться нулю).
Запрос размера конечного окна отсрочки передачи для исходного соперничества за диапазон, выраженный через степень 2. Значение n может лежать в интервале 0-15 (старшие биты могут не использоваться и приравниваться нулю).
Таблица 18. Формат сообщения UCD
Синтаксис |
Размер |
Описание |
UCD_Message_Format () { |
|
|
Тип управляющего сообщения = 0 |
8 бит |
|
Идентификатор восходящего канала |
8 бит |
|
Счетчик изменений конфигурации |
8 бит |
|
Размер минидомена (minislot) |
8 бит |
|
Начало отсрочки передачи |
8 бит |
|
Конец отсрочки передачи |
8 бит |
|
Запрос начала отсрочки |
8 бит |
|
Запрос конца отсрочки |
8 бит |
|
Информация о канале в кодировке TLV |
перем. |
|
Начало секции, специфической для PHY { |
|
|
for(i=1; i<=n; i++) { |
|
Для каждого профиля восходящего канала с 1 до n |
Uplink_Burst_Profile } |
перем. |
|
} } |
|
|
Чтобы обеспечить гибкость, остальные параметры сообщения кодируются в формате TLV.
Uplink_Burst_Profile имеет комбинированную кодировку TLV, которая сопряжена с UIUC (Uplink Interval Usage Code) используемого физического канала. Каждый Uplink_Burst_Profile представляет собой неупорядоченный список атрибутов PHY, закодированных в формате TLV. Каждому интервалу с помощью сообщения UL-MAP ставится в соответствие UIUC.
Lan_
4.1 Локальные сети (обзор)
Семенов Ю.А. (ГНЦ ИТЭФ)
Номер раздела |
Название раздела |
Объем в страницах |
Объем в кбайт |
4.1.1 |
|
1 |
1 |
4.1.2 |
|
12 |
12 |
4.1.3 |
|
3 |
22 |
4.1.4 |
|
5 |
75 |
4.1.5 |
|
4 |
139 |
4.1.6 |
|
8 |
328 |
4.1.7 |
|
4 |
37 |
4.1.8 |
|
7 |
58 |
4.1.9 |
|
4 |
29 |
4.1.10 |
|
1 |
19 |
4.1.11 |
|
1 |
4 |
4.1.12 |
|
5 |
35 |
4.1.13 |
|
2 |
17 |
4.1.14 |
|
6 |
30 |
В этом разделе речь идет о физической среде локальных сетей.
Mov_
4.1.8.1 Мобильные телекоммуникации
Семенов Ю.А. (ГНЦ ИТЭФ)
В 80-х – 90-х годах весьма активное развитие получила мобильная телефония. В последнее время услуги мобильной связи стали применяться и для передачи цифровых данных. Мобильные телекоммуникации использует диапазоны в интервале 50 МГц – 1 ГГц. Мобильные системы работают при малых выходных мощностях передатчика, что ограничивает размер зоны приема. Вне этой зоны другие передатчики могут функционировать независимо. Такие зоны называются сотами (ячейками). По аналогии с пчелиными сотами их часто изображают шестигранными, хотя реально они могут иметь самую причудливую форму в зависимости от профиля местности. Ячейки должны перекрываться, так как показано на рис. 4.1.8.1.1
Рис. 4.1.8.1.1. Схема расположения ячеек при сотовой связи
Светлыми кружками отмечены реальные границы ячеек, их перекрытие должно обеспечить перекрытие всей зоны телекоммуникаций. В центре ячейки находится базовая станция ретранслятор. Такая станция содержит в себе ЭВМ и приемо-передатчик, соединенный с антенной. Такие системы могут обслуживать пейджерную или мобильную телефонную сеть. Пейджерные каналы однонаправлены а телефонные двунапрвлены (см. рис. 4.1.8.1.2). Пейджинговые системы требуют небольшой полосы пропускания. А одно сообщение редко содержит более 30 байт. Большинство современных пейджигновых систем работает в частотном диапазоне 930-932 МГц (старые занимали 150-174 МГц).
Рис. 4.1.8.1.2. Каналы пейджерной (слева) и мобильной телефонной сети (справа).
В небольших системах все базовые станции соединены с MTSO(mobile telephone switching office). В больших сетях может потребоваться несколько MTSO, которые в свою очередь управляются mtso следующего уровня и т.д.. Узловая MTSO соединена со станцией коммутируемой телефонной сети. В любой момент времени каждый мобильный телефон логически находится в одной определенной ячейке и управляется одной базовой станцией. Когда телефон покидает ячейку, базовая станция обнаруживает падение уровня сигнала и запрашивает окружающие станции об уровне сигнала для данного аппарата.
Управление аппаратом передается станции с наибольшим входным сигналом. Телефон информируется о смене управляющей станции, при этом предлагается переключиться на новый частотный канал (в смежных ячейках должны использоваться разные частотные каналы). Процесс переключения занимает около 300 мсек (handoff), что должно быть практически незаметно для пользователя. Присвоением частот управляет MTSO. Сигнал передатчика падает по мере удаления от центра ячейки, где он должен быть расположен. Там же должен находиться и приемник. В пределах ячейки предусмотрено несколько каналов для приема/передачи, разнесенные по частоте. Эти каналы управляются центральным коммутатором ячейки (MSC – mobile-service switching centre).
В рамках американского стандарта первого поколения AMPS (advanced mobile phone service; 1982) формируется 40 МГц канал в интервале 800-900 МГц. Система использует 832 полнодуплексных каналов. Данный частотный диапазон делится пополам, 20 МГц выделяется для передачи и столько же для приема. Данные диапазоны делятся в свою очередь на 666 двусторонних каналов, каждый по 30 кГц. Эти каналы расщепляются на 21 субканал, сгруппированные по 3. Обычно, как показано на рис. 4.1.8.1.1, гексагональные ячейки группируются по 7 (центральная и 6 ее соседей). Имея 666 каналов, можно выделить три набора по 31 каналу для каждой ячейки. Такая схема удобна в случае возникновения необходимости увеличения числа каналов, для этого достаточно уменьшить размер ячейки – число ячеек увеличится и, как следствие, увеличится число каналов на единицу площади. В хорошо спланированной сети плотность ячеек пропорциональна плотности пользователей. AMPS для разделения каналов использует метод мультиплексирования по частоте.
Каждый мобильный телефон в amps имеет 32-битовый серийный номер и телефонный номер, характеризуемый 10 цифрами. Телефонный номер представляется как код зоны (3 десятичные цифры) и номер подписчика (7 десятичных цифр). Когда телефон включается, он сканирует список из 21 управляющих каналов и находит тот, у которого наиболее мощный сигнал.
Управляющая информация передается в цифровой форме, хотя сам голосовой сигнал является аналоговым. При нормальной работе мобильный телефон перерегистрируется в MTSO (mobile telephone switching office) каждые 15 мин.
При осуществлении вызова пользователь набирает номер телефона и нажимает кнопку send. Аппарат посылает набранный номер и свой идентификационный код. Базовая станция принимает вызов и передает его MTSO. Если звонящий является клиентом mtso или ее партнером, ишется свободный канал и мобильный телефон переключается на него, ожидая когда адресат снимет трубку.
В режиме приема аппарат постоянно прослушивает канал пейджинга, чтобы обнаружить обращенный к нему вызов. Осуществляется обмен командными сообщениями с MTSO, после чего раздается звонок вызова.
Аналоговые сотовые телефоны не обеспечивают конфиденциальности. С помощью широкополосного сканера можно зафиксировать вызов и осуществить прослушивание. Другим недостатком является возможность кражи эфирного времени. Вседиапазонный приемник, подключенный к ЭВМ, может записать 32-битовый серийный номер и 34-битовый телефонный номер всех телефонов, работающих поблизости. Собрав такие данные вор может по очереди пользоваться любым из перехваченных номеров.
AMPS базируется на аналоговой модуляции, существует еще полдюжины аналогичных не стыкуемых друг с другом систем. В последнее время аналоговая модуляция повсеместно вытесняется цифровой. В Европе принят единый стандарт для систем мобильной связи GSM (groupe special mobile, второе поколение мобильных средств связи). gsm использует диапазоны 900 и 1800 МГц. Это довольно сложный стандарт, его описание занимает около 5000 страниц. Идеологически система имеет много общего с ISDN (например, переадресацию вызовов). GSM имеет 200 полнодуплексных каналов на ячейку, с полосой частот 200 кГц, что позволяет ей обеспечить пропускную способность 270,833 бит/с на канал. Каждый из 124 частотных каналов делится в GSM между восемью пользователями (мультиплексирование по времени).
Теоретически в каждой ячейке может существовать 992 канала, на практике многие из них недоступны из-за интерференции с соседними ячейками.
Система мультиплексирования по времени имеет специфическую структуру. Отдельные временные домены объединяются в мультифреймы. Упрощенная схема структуры показана на рис. 4.1.8.1.3.
Рис. 4.1.8.1.3. Структура кадров в GSM
Каждый временной домен (TDM) содержит 148-битовый кадр данных, начинающийся и завершающийся последовательностью из трех нулей. Кадр имеет два 57-битовых поля данных, каждое из которых имеет специальный бит, который указывает на то, что лежит в кадре - голос или данные. Между информационными полями размещается поле синхронизации (Sync). Хотя информационный кадр имеет длительность 547 мксек, передатчику позволено передавать его лишь раз в 4615 мксек, так остальное время зарезервировано для передачи другими станциями. Если исключить накладные расходы каждому соединению выделена полоса (без учета сжатия данных) 9600 кбит/с.
Восемь информационных кадров образуют TDM-кадр, а 26 TDM-кадров объединяются в 128-микросекундный мультифрейм. Как видно из рисунка 4.1.8.1.2 позиция 12 в мультифрейме занята для целей управления, а 25-я зарезервирована для будущих применений. Существует также стандарт на 51-позиционный мультифрейм, содержащий больше управляющих вставок. Управляющий канал используется для регистрации, актуализации положения и формирования соединения. Каждая стационарная станция поддерживает базу данных, где хранится информация обо всех обслуживаемых в данный момент клиентах. Общий управляющий канал делится на три субканала. Первый служит для обслуживания вызовов (paging channel), второй (random access channel) реализует произвольный доступ в рамках системы ALOHA (устанавливаются параметры вызова). Третий субканал служит для предоставления доступа (access grant channel).
Алгоритмы обслуживания мобильной связи достаточно нетривиальны. Из рисунка 4.1.8.1.1 видно, что области перекрываются (иначе бы существовали "мертвые" зоны без связи).
Существуют даже субобласти, накрываемые тремя MSC. По это причине процедура должна четко определить, с каким из MSC клиент должен быть связан, и при каких условиях его следует переключить на соседний MSC, не прерывая связи. Система должна также компенсировать падение сигнала, иногда достаточно резкое, чтобы обеспечить комфортную связь и безошибочную передачу информации. По этой причине частота ошибок (BER) в таких сетях составляет 10-3 (против 10-6 для обычных стационарных цифровых каналов связи). Следует иметь в виду, что в условиях города сигнал падает пропорционально не квадрату, а четвертой степени расстояния. На распространение радиоволн в городе влияют ориентация улиц (до 20 дБ), туннели (до 30 дБ) и листва деревьев в сельской местности (до 18 дБ).
GSM - система базирующаяся в основном на коммутации каналов. Применение модема на переносной ЭВМ позволяет подключиться к сети Интернет. Но здесь не все беспроблемно. Базовые станции временами теряют связь друг с другом (переключение с канала на канал), это может приводить к 300 миллисекундным потерям данных. Как уже говорилось выше, здесь высока вероятность ошибок. Так, нажав клавишу "a", можно получить на экране букву "я". Да и расценка за минуту работы в Интернет здесь весьма высока. В связи с этим был разработан стандарт на цифровую систему коммутации пакетов CDPD (Cellular Digital Packet Data). Система работает поверх AMPS. Система обеспечивает информационную пропускную способность на уровне 9,6 кбит/с. CDPD довольно точно следует модели OSI. В CDPD определены три типа интерфейсов. Е-интерфейс (внешний по отношению CDPD-провайдеру) соединяют CDPD-область с определенной сетью. I-интерфейс (внутренний по отношению CDPD-провайдеру) соединяет CDPD-области друг с другом. A-интерфейс (эфирный) используется для связи базовой станции с мобильной ЭВМ. В функции этого интерфейса входит сжатие и шифрование данных, а также исправление ошибок. 274-битные блоки сжатой и зашифрованной информации вкладываются в 378-битовые блоки, предназначенные для коррекции ошибок согласно алгоритму Рида-Соломона.
К каждому такому блоку добавляется семь 6-битовых флагов. Результирующие блоки имеют 420 бит и передаются в виде семи 60-битовых микроблоков. Эти микроблоки передаются к базовой станции со скоростью 19,2 кбит/с. Канал с аналогичным быстродействием создается для пересылки информации в противоположном направлении. При обмене применяется мультиплексирование с делением по времени. При этом временные домены имеют длительность 3,125 мсек (60 бит).
Когда мобильная ЭВМ хочет что-то передать, прослушивается канал базовой станции и проверяется флаг, сообщающий, свободен ли входной канал базовой станции. Если канал занят, ЭВМ вместо ожидания до очередного временного домена, пропуская псевдослучайное число временных доменов, после чего повторяет попытку. Если повторная попытка неудачна, время ожидания увеличивается примерно вдвое. Когда, наконец, ЭВМ обнаруживает, что канал свободен, она начинает пересылку своих микроблоков. Предусмотрена процедура, препятствующая попытке всех ЭВМ, готовых к передаче, захватить канал, как только он оказался свободным. Этот алгоритм называется DSMA (Digital Sense Multiple Access). Но, несмотря на применение DSMA, столкновение все же возможно, так как две или более ЭВМ могут воспользоваться одним и тем же временным доменом для начала передачи. Для выявления столкновений предусмотрен специальный флаг, который позволяет судить, корректно ли доставлен предыдущий микроблок. К сожалению это происходит не мгновенно а лишь спустя несколько микроблоков. При обнаружении ошибки передача прерывается. Следует иметь в виду, что информационный обмен имеет более низкий приоритет по отношению передачи голосовых данных. Предусмотрена возможность создания выделенных CDPD-каналов.
GSM использует довольно сложную комбинацию методик ALOHA, TDM и FDM. CDPD для передачи одиночных кадров не вполне согласуется с алгоритмом CSMA. Впрочем существует еще один метод формирования радио каналов - CDMA (Code Division Multiple Access).
Метод CDMA принципиально отличается от описанных выше, которые использовали для дультиплексирования доступа FDM, TDM или ALOHA.
CDMA позволяет каждой станции осуществлять передачу во всем частотном диапазоне постоянно. Множественные передачи реализуются с привлечением теории кодирования. Здесь предполагается, что сигналы, совпадающие по времени складываются линейно. В CDMA каждый бит-тайм делится на m коротких интервалов, называемых чипами. Обычно используется 64 или 128 чипов на бит. Каждой станции присваивается уникальный m-битный код (chip sequence). Чтобы передать 1 бит станция посылает свой чип-код. Для простоты далее будем предполагать, что m=8. Для того чтобы послать нулевой бит, посылается дополнение чип-кода по модулю один. Никакие другие кодовые последовательности не разрешены. Например, пусть станции 1 поставлен в соответствие чип-код 01010101, тогда при посылке логической 1 она отправляет код 01010101, а при отправке логического нуля - 10101010. Если имеется канал с полосой 1 МГц и 100 станций с FDM, то каждая из них получит по 10 КГц (10 кбит/c при 1 бите на Гц). При CDMA каждая станция использует весь частотный диапазон, так что будет получена скорость передачи 1 мегачип в секунду. При менее 100 чипов на бит CDMA обеспечивает большую пропускную способность, чем FDM. Для упрощения введем двуполярную нотацию, где нулю соответствует -1, а единице +1. Тогда чип-код станции 1 получит вид -1 +1 -1 +1 -1 +1 -1 +1. Каждая из станций получает уникальный чип-код. Чип-коды можно представить в виде m-компонентных векторов. Чип-коды выбираются так, что все они попарно ортогональны (не любой уникальный чип-код пригоден, так, если станция 1 имеет чип-код 01010101, то станция 2 не может иметь чип-код 10101001, но чип-код 10100101 вполне допустим). Математически это можно выразить следующим образом:
,
где Hi и Gi компоненты векторов чип-кодов H и G. Это равенство указывает, что число разных компонентов равно числу равных. Если G и H ортогональны, то и =0. В то же время:
[1]
Когда сигналы от разных станций совпадают во времени и складываются, принимающая сторона легко может вычислить наличие соответствующей компоненты.
Если компоненты суммарного сигнала Si, то компоненты Gi вычисляются с помощью произведения Si*H. Действительно, если:
> S4=[-1 +1 -3 +3 +1 -1 -1 +1]
Для выявления наличия компоненты G выполним операции "умножения" согласно описанным выше правилам.
S1*G =[-1 -1 -1 -1 +1 +1 +1 +1]/8=0 (G отсутствует)
S2*G =[0 -2 0 -2 - +2 0 +2]/8=0 (G отсутствует)
S3*G =[+1 +1 -1 -1 +1 +1 +3 +3]/8=1 (G имеется - передана логическая 1)
S4*G =[-1 -1 -3 -3 -1 -1 +1 +1]/8=-1 (G имеется - передан логический 0)
Хотя теоретически здесь все прекрасно, наложение слишком большого числа чип-кодов может создать проблемы и, в конечном итоге, привести к ошибкам.
Идеальная мобильная система связи представляется в виде телефонной трубки, которой человек пользуется дома, в автомобиле, в отпуске или командировке. При этом телефонный номер не меняется, где бы вы не находились. Такая система разрабатывается в настоящее время и называется PCS (Personal Communication Services) в США. В остальном мире эта система имеет имя PCN (Personal Communications Network). PCS использует технику сотовой телефонной сети. Но здесь размер ячейки лежит в пределах 50-100 м (против 20 км для AMPS). Это позволяет работать с малой выходной мощностью порядка 0,25 Вт и понизить вес аппарата. При этом для покрытия той же области требуется в 40000 раз больше ячеек и, следовательно, такая система будет значительно дороже даже с учетом более низкой цены одной ячейки.Некоторые телефонные компании осознали, что старомодные телеграфные столбы являются идеальным местом для размещения базовых станций новой системы (провода уже имеются!). Для системы PCS зарегервирован диапазон частот 1,7-2,3 ГГц.
Начало отсрочки передачи
Размер исходного окна отсрочки для исходного соперничества за диапазон, выраженный через степень 2. Значение n может лежать в интервале 0-15 (старшие биты могут не использоваться и приравниваться нулю).
Next Xmt Mх
Время Next Xmt равно следующему приемлемому интервалу MSH-DSCH для этого узла и вычисляется как:
2XmtHoldoffExponent × NextXmt Mx<Время NextXmt£ 2XmtHoldoffExponent×(NextXmt Mx+1)
Например, если NextXmt Mx=3 и Xmt Holdoff Exponent =4, тогда для узла будет рассматриваться возможным отправка следующего сообщения MSH-DSCH между 49 и 64 (с учетом гранулярности) возможностями передачи. Если поле NextXmt Mx содержит код 0х1F (все единицы), тогда соседа следует рассматривать способным передать сообщение с момента, определяемого этой величиной и в любое время, соответствующее возможностям MSH-DSCH после этого.
NumNmbEntries
Число соседей, указанных в сообщении. Число соседей может составлять часть полного набора соседей, известных узлу. Узел может сообщать о дополнительных наборах соседей в последующих сообщениях MSH-NCFG.
NumBSEntries
Число соседей сеточной базовой станции (ВS), указанных в этом сообщении.
Xmt Power
Мощность передатчика, выраженная через число ступеней, каждая из которых равна 2 dBm, начиная с 8 dBm. То есть 1111 означает 38 dBm.
Xmt Antenna
Логическая антенна, используемая для передачи этого сообщения. Это позволяет иметь до 8 антенных направлений.
Network base channel
Базовый канал, используемый сетью данного узла, равный логическому номеру физического канала. Соответствие между номерами логических и физических каналов определяется сетевым дескриптором.
Netconf count
Счетчик пакетов MSH-NCFG, переданных данным узлом. Счетчик используется соседями для детектирования потерянных пакетов. Счетчик увеличивается на 1 после передачи очередного пакета MSH-NCFG.
Frame Number
Счетчик по модулю 212, который увеличивается на 1 для каждого кадра.
Synchronization hop count (число шагов синхронизации)
Этот счетчик используется для определения относительного приоритета узлов при синхронизации сети. Узлы могут быть времязадающими серверами, синхронизуемыми извне (например, с помощью GPS). Эти узлы транслируют число шагов синхронизации, равное нулю. Узлы синхронизуют другие узлы с более низким числом шагов синхронизации.
Xmt Holdoff Exponent (показатель)
Xmt Holdoff Time равно числу возможностей передачи MSH-NCFG по истечении времени Next Xmt.
Xmt Holdoff Time = 2(Xmt Holdoff Exponent+4) (1)
Next Xmt Mx
Next Xmt Time является интервалом пригодности MSH-NCFG для данного соседа. Вычисляется согласно:
2Xmt Holdoff Exponent ×Next Xmt Mx < NEXT Xmt Time £ 2Xmt Holdoff Exponent ×(Next Xmt Mx+1)
например, если Next Xmt Mx=3 а Xmt Holdoff Exponent =4, то узел рассматривается рабочим для последующих передач MSH-NCFG между 49 и 64 периодами передачи.
ID узла BS
Идентификатор узла сеточной базовой станции.
Число шагов
Число шагов между передающим сообщение узлом и узлом сеточной базовой станции.
Xmt energy/bit factor
Указывает значение энергии/бит, необходимое для достижения сеточной базовой станции через данный узел. Xmt energy/bit вычисляется по формуле :
где N набор соседей, оповещающих о сеточной BS, а , PTxравно мощности передачи в мВт из узла i в узел j, а Ri®j- скорость передачи данных в Мбит/с из узла i в узел j. Ej равна Xmt energy/bitуказанному соседом j.
Указанный Xmt energy/bit factorравен вычисленному значению Xmt energy/bit, поделенному на 2(XmtEnergyUnitExponent-4).
XmtEnergyUnitExponent соответствует 4-битовому полю, содержащемуся в дескрипторе сети.
Nbr node ID
Идентификатор соседнего узла.
Формат физического информационного элемента Nbr представлен в таблице ниже.
Таблица 73. Формат физического информационного элемента
Синтаксис |
Размер |
Комментарий |
MSH-Nbr_Physical_IE() { |
|
|
Данные о логическом канале имеются |
1 бит |
0= нет, 1= присутствуют |
Логический канал запрошен |
1 бит |
0=Нет, 1= Да |
Логический канал реализован |
1 бит |
0=Нет, 1= Да |
Число шагов до соседа |
1 бит |
0= 1 шаг (непосредственный сосед) 1= 2 шага |
Оценка времени распространения |
4 бита |
в мкс |
Nbr Next Xmt Mx |
5 бит |
|
Nbr Xmt Holdoff Exponent |
3 бита |
|
} |
|
|
Формат логического информационного элемента Nbr представлен в таблице ниже.
Таблица 74. Формат логического информационного элемента
Синтаксис |
Размер |
Комментарий |
MSH-Nbr_Logical_IE() { |
|
|
Качество канала Rcv |
3 бита |
|
Профайл импульса Nbr |
4 бита |
|
Запрос дополнительного трафика |
1 бит |
0=Нет, 1= Да |
Мощность Nbr Xmt |
4 бита |
|
Антенна Nbr Xmt |
3 бита |
|
Nbr Xmt Mx |
5 бит |
|
Флаг короткой преамбулы |
1 бит |
0= не используется, 1= использование_запрошено /
использование_подтверждено |
} |
|
|
Качество канала Rcv
Мера надежности принимающего канала, указывающая на надежность размера пакетов MSH-NCFG, которые используются указанным профайлом импульса.
Надежность вычисляется согласно формуле:
Надежность=100× (1-10-(Rcv Link Quality+ 1)/4)% (4)
Профайл импульса Nbr
Указывает, какой профайл импульса должен использовать узел при посылке порций (импульсов) данных указанному узлу.
Запрос дополнительного трафика
Может использоваться, чтобы проинформировать соседа о том, что текущий темп передачи недостаточен для передачи данных, ожидающих в очереди.
Мощность Nbr Xmt
Предлагаемая мощность передачи для данного соседа. Измеряется в единицах, равных 2 дБм, начиная от 8 дБм. (То есть значение 1111 эквивалентно 38 дБм).
Флаг короткой преамбулы
Узел может опционно установить этот бит, чтобы использовать короткую преамбулу при передаче информационной части кадра. Возможность передачи короткой преамбулы является обязательной, возможность приема - опционной.
Данные, содержащиеся в MSH-NCFG имеют формат, представленный в таблице ниже в табл. 75.
Таблица 75. Формат данных в MSH-NCFG
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_embedded_data() { |
|
|
Расширенные embedded_data |
1 бит |
0=Нет, 1= Да |
Полученные |
3 бита |
|
Тип |
4 бита |
0=Нет, 1= Да |
Длина |
8 бита |
|
Embedded_data_IE() |
Переем. |
Длина embedded_data в байтах, исключая данный заголовок |
} |
|
|
Тип
Определены следующие значения поля тип.
0х0: Полученные
0х1: Сетевой дескриптор
0х2: Сетевой вход открыт
0х3: Сетевой вход закрыт
0х4: Сетевой вход подтвержден (Embedded_data_IE()==NULL)
0х5: Протокол установления канала с соседом
Сетевой дескриптор содержит следующие параметры
Таблица 76. Параметры сетевого дескриптора
Синтаксис |
Размер |
Комментарий |
MSH-NCFG _embedded_data() { |
|
|
Код длины кадра |
4 бита |
4 младшие бита протяженности кадра |
MSH-CTRL-LEN |
4 бита |
Длина субкадра управления |
MSH-DSCH-NUM |
4 бита |
Число DSCH-возможностей в субкадре управления |
MSH-CSCH-DATA-FRACTION |
4 бита |
|
Кадры диспетчеризации |
4 бита |
Определяет, сколько кадров имеется в субкадре управления между двумя субкадрами сетевого управления (кратно 4). 0 означает 0 кадров, 1 - 4 кадра и т.д.. |
Num_Burst_Profiles |
4 бита |
Число определений профайлов импульса |
ID оператора |
16 бит |
|
} |
|
|
<
Информационный элемент дескриптора сети имеет формат
Таблица 77. Формат информационного элемента дескриптора
Синтаксис |
Размер |
Комментарий |
XmtEnergyUnitsExponent |
4 бита |
|
Каналы |
4 бита |
Число логических каналов |
MinCSForwardingDelay |
7 бит |
Число OFDM символов задержки, введенных между получением и передачей пакетов управления |
ExtendedNeighborhoodType |
1 бит |
0= 2-шаговое соседство
1= 3-шаговое соседство |
if(Channels)
MSH-NCFG_Channel_IE() |
|
переменное |
for(i=0; i<Num_Burst_Profiles; i++) { |
|
|
Обязательный порог выхода |
8 бит |
|
Обязательный порог входа} |
8 бит |
|
} |
|
|
MSH-CSCH-DATA-FRACTION
Максимальный процент минидоменов (значение × 6.67) в субкадре данных, допустимый для централизованной диспетчеризации. Полученное число округляется до ближайшего целого и используется для выделения места в информационном субкадре.
ExtendedNeighborhoodType
Если значение поля =0, тогда анонсируются только узлы с Hops to Neighbor=0; если =1, тогда анонсируются только узлы с Hops to Neighbor=1.
MinCSForwardingDelay
Минимальная задержка в OFDM символах, которые будут вводиться между концом приема и началом передачи централизованного сообщения диспетчеризации (то есть MSH-CSCH и MSH-CSCF) любым узлом.
Формат канального безлицензионного информационного элемента MSH-NCFG представлен ниже в табл. 78.
Таблица 78. Формат элемента MSH-NCFG
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_Channel_IE() { |
|
Для безлицензионных каналов |
for(i=0; i<Channels; ++i) |
|
|
Код физического канала |
8 бит |
Физический канал ставится в соответствие логическому каналу i. |
Повторное использование канала |
3 бита |
Минимальное число шагов между каналами, прежде чем канал может быть использован повторно алгоритмом централизованной диспетчеризации. Диапазон равен 1-7 шагов. Равенство 0 запрещает повторное использование |
Флаг пик/среднее |
1 бит |
Регулирующие пределы задаются по пиковым или средним значениям. |
Зарезервировано |
2 бита |
|
NumChannelMaps |
2 бита |
|
for(i=0; i< NumChannelMaps; ++i) { |
|
|
Число каналов |
8 бит |
Число узлов, к которым применяются правила |
Max. xmt мощность на входе антенны } |
6 бит |
Регулировочный предел в дБм |
Max. EIRP |
6 бит |
Регулировочный предел в дБм |
} |
|
|
<
Формат канального лицензионного информационного элемента MSH-NCFG представлен ниже в табл. 79.
Таблица 79. Формат информационного элемента MSH-NCFG
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_Channel_IE() { |
|
Для лицензионных каналов |
for(i=0; i<Channels; ++i) |
|
|
Центральная частота физического канала |
24 бита |
Положительное число в кГц |
Полоса физического канала |
8 бит |
Положительное число в 100 кГц |
} |
|
|
Повторное использование канала |
3 бита |
Минимальное число шагов между каналами, прежде чем канал может быть использован повторно алгоритмом централизованной диспетчеризации. Диапазон равен 1-7 шагов. Равенство 0 запрещает повторное использование |
Зарезервировано |
5 бит |
|
} |
|
|
Сообщение Network Entry Open (сетевой вход открыт) используется в качестве отклика на запрос MSH-NENT и содержит в себе следующие параметры.
Таблица 80. Информационный элемент Открытого сетевого входа
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_embedded_data_IE() { |
|
|
Начало минидомена |
8 бит |
Начало графика для входа верхнего сетевого уровня |
Диапазон минидомена |
8 бит |
Диапазон графика для входа верхнего сетевого уровня |
Номер кадра |
12 бит |
Номер кадра, для которого действует график (расписание) |
Канал |
4 бита |
Логический канал для нового узла для Xmt в оговоренном диапазоне минидомена |
Действенность графика |
12 бит |
Область действия графика в кадрах |
Канал |
4 бита |
Логический канал Rcv для нового узла |
Оцененная задержка распространения |
4 бита |
мкс |
Зарезервировано} |
4 бита |
|
Отклонение попытки входа в сеть, которое используется для отклонения запросов MSH-NENT содержит следующие параметры.
Таблица 81. Информационный элемент отказа входа в сеть
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_embedded_data_IE() { |
|
|
Код режекции |
8 бит |
|
Причина режекции (отклонения) |
160 бит |
Строка ASCII |
} |
|
|
Код режекции
0x0 Значение оператора аутентификации некорректно
0x1 Превышение задержки распространения
0x2 Выбор нового инициатора
Структура информационного элемента установления канала с соседом показана в табл. 82.
Таблица 82. Информационный элемент установления соединения с соседом
Синтаксис |
Размер |
Комментарий |
MSH-NCFG_embedded_data_IE() { |
|
|
Код действия |
2 бита |
0х0 Вызов
0х1 Отклик на вызов
0х2 Принято
0х3 Отклонено |
Зарезервиовано |
6 бит |
|
if(код действия == 0х0 или 0х1) |
|
|
Значение Nbr аутентификации |
32 бита |
|
if(код действия == 0х1 или 0х2) |
|
|
ID канала |
8 бит |
Идентификатор канала передающего узла для данной связи |
} |
|
|
Значение Nbr аутентификации
HMAC{Ключ аутентификации | номер кадра | Собственный ID узла, ID другого узла}
Ключ аутентификации является секретным ключом (полученным от оператора)
Обзор
Региональные сети МАN обычно выполняют функции опорных сетей. В качеcтве MAN часто использовались FDDI, Token Ring или SDH. Кольцевая топология сети обеспечивает высокую надежность (при использовании двойного кольца) и удобна для работы с оптическими волокнами. Топология звезды уязвима в случае выхода из строя центрального узла. Топология сетки гарантирует высокую надежность, но существенно дороже кольца. Так как сети FDDI с их полосой 100 Мбит/c устарели, а Token Ring еще медленнее, приемлемого современного решения нет. Попутно замечу, что первая опорная сеть в РФ (ЮМОС, 1993г) была выполнены с применением именно технологии FDDI. В FDDI пакеты уничтожаются отправителем и по этой причине совершают полный круг. Маркерный доступ в принципе имеет определенные ограничения. Сегодня требуются адаптивные решения для региональных опорных сетей (МАN). Здесь желательны подходы, гарантирующие равноправное распределение ресурсов между разными потоками. Конечно, можно использовать решения, предлагаемые SONET (SDH). Но SDH гарантирует определенную полосу при связи точка-точка, но при этом неиспользуемая пропускная способность не может быть предложена для транспортировки других потоков. Можно построить кольцевую сеть на основе Гига-Ethernet (GE). Но этот протокол не может гарантировать равные возможности для разных потоков, да и эффективность использования доступной полосы нельзя признать хорошей. Низкая эффективность связана с тем, что протокол STP блокирует некоторые связи, препятствую образованию петлевых маршрутов, что в некоторых случаях удлиняет путь. GE, несмотря на ряд привлекательных черт, имеет четыре ограничения.
Во-первых, как уже отмечалось выше, Ethernet лишен механизмов выравнивания возможностей для разных потоков. Во-вторых, протокол STP запрещает кольцевые маршруты и один из участков кольцевой сети должен быть блокирован или замыкаться через маршрутизатор, что уводит сеть с уровня L2. В-третьих, когда канал или узел отказывает, дерево связей Ethernet должно выть заново вычислено, а это может потребовать нескольких сотен миллисекунд.
Определенное замедление может вызвать восстановление связности, когда используется протокол маршрутизации уровня L3. Наконец, хотя GE может предоставить простую схему приоритетного обслуживания, такая сеть не имеет механизмов гарантирования полосы пропускания, задержки и разброса времени доставки, которые имеют SONET и RPR.
Кольца SONET обеспечивают связь между узлами кольца по схеме точка-точка. SONET может гарантировать базовые параметры качества обслуживания. Время восстановления такой сети в случае отказа измеряется десятками миллисекунд. Основным недостатком SONET является неэффективность использования доступной полосы. Если все узлы требуют соединения со всеми, кольцо с N узлами будет требовать N2 соединений. Даже при ограниченном числе узлов в кольце, например при N=100, это может вызвать определенные проблемы.
Начиная с 2000 года, разрабатывается новый протокол для опорных региональных сетей с двойной кольцевой топологией (http://www.ieee802.org/17, сервер к сожалению платный и мало кому доступен). Этот протокол IEEE 802.17 называется RPR (Resilient Packet Ring - адаптивное кольцо для пакетов). В отличие от FDDI (а также Token Ring или DQDB) в этом протоколе пакеты удаляются из кольца узлом-адресатом, что позволяет осуществлять несколько обменов одновременно. Но такая схема параллельных обменов осложняет равенство возможностей для разных узлов в кольце. Кроме того, схема уничтожения пакета отправителем имеет и определенные преимущества. Так транспортировка пакета от получателя к отправителю обеспечивает подтверждение получения, что все равно надо делать, например, в случае протокола ТСР. Для пояснения особенностей работы RPR рассмотрим схему на рис. 1, где четыре потока совместно используют канал 4, чтобы достичь узла 5. В этом примере каждый из этих потоков должен получить 1/4 долю полосы (алгоритм "parallel parking lot").
Рис. 1.
Чтобы полностью использовать имеющиеся ресурсы на участке <1-2>, можно пропустить через канал еще 3/4 от того, что протекает между узлами 1 и 5.
Чтобы максимально возможно использовать имеющиеся ресурсы, узлы должны взаимодействовать друг с другом. Таким образом, для обеспечения равенства доступа к ресурсам алгоритм должен дросселировать трафик на входе узлов.
В RPR также как и в Ethernet пакет удаляется в точке назначения, что позволяет использовать незадействованную часть кольца. RPR реализует алгоритм распределенного выравнивания возможностей для разных потоков. Протокол не использует алгоритм STP и по этой причине может работать с замкнутыми маршрутами без ограничений. Кольца RPR транспортируют пакеты по пути вдоль кольца с минимальным числом шагов. Если какой-то узел или двунаправленный участок кольца откажет, RPR формирует альтернативный маршрут за время не более 50 мсек. Например, если канал между узами 4 и 5 будет оборван, узлы 4 и 5 будут соединены по маршруту 4-3-2-1-10-9-8-7-6-5.
Наконец, в RPR можно определить несколько классов трафика, что крайне важно для мультимедийных приложений. Класс А реализует канальное соединение между узлами кольца с гарантированной полосой, задержкой доставки и дисперсией времени доставки (аналогично SONET, но без ограничений дискретных значений полосы - OC-3, OC-12 и т.д.). Класс В имеет гарантированную полосу, но допускает кратковременные возрастания трафика сверх согласованных значений за счет потоков, которые не имеют гарантии полосы. Класс С предлагает услуги типа "лучшее-что-возможно", при этом не гарантируются никакие параметры трафика.
Целью RPR является одновременное достижение равных возможностей для разных потоков и высокая эффективность использования имеющихся ресурсов. Достижение равных возможностей можно проследить на примере реализации алгоритма "parallel parking lot" на рис. 1. Региональный сервис-провайдер стремится предоставить равные возможности всем клиентам, вне зависимости оттого, к какому узлу они подключены. На рис. 1 это означает предоставление каждому из потоков 1/4 полосы пропускания узла 5. Требования высокой эффективности использования ресурсов предполагают возможность привлечения всех ресурсов, незадействованных для обеспечения равных возможностей для всех конкурирующих потоков.
Примером использования имеющихся ресурсов является поток между узлами 1 и 2 на рис. 1, который использует до 75% пропускной способности этого канала. Если реализовать указанные цели, то любые два узла в кольце смогут обмениваться данными со скоростью, ограниченной уровнем насыщения (перегрузки) канала. Таким образом, целью алгоритма справедливого распределения ресурсов является дросселирование потоков во входных точках, чтобы обеспечить равенство доступа к ресурсам.
Это означает, что в случае, показанном на рис. 1, поток между узлами 1 и 5 должен быть дросселирован в точке 1 до уровня 0.25 от пропускной способности участка 4-5, оставляя доступной полосу на участке 1-2 на уровне 75%. Такое идеальное поведение может быть описано с помощью модели RIAS (Ring Ingress Aggregated with Spatial Reuse). Модель RIAS содержит в себе два ключевых компонента. Первый - определяет степень гранулярности трафика для определения справедливости распределения ресурсов. Модель RIAS гарантирует, что все узлы отправители получат равные доли полосы пропускания для каждого канала относительно долей других узлов отправителей. Второй компонент RIAS гарантирует максимальное использование ресурса сети при равном выделении полосы пропускания. Ресурс полосы может анонсироваться, если он не затребован или если не может быть использован из-за наличия узкого места где-то в другом узле или канале. Похожий (но несколько отличный от RPR) алгоритм распределения ресурсов реализован протоколом ТСР в сетях Интернет (уровень L4), здесь же это прелагается делать на уровне L2.
В случае класса А узлам запрещается анонсировать неиспользуемые ресурсы. Рассмотрим работу алгоритма для классов В (фиксированная полоса) и С ("лучшее-что-возможно"), в которых каждый узел анонсирует неиспользуемую полосу взвешенным образом. Архитектура RPR-узла показана на рис. 2. Весь трафик, входящий в кольцо, дросселируется контроллерами потоков. В случае алгоритма "parallel parking lot" поток <1-5> должен быть снижен до уровня 1/4.
Контроллеры потоков работают с учетом гранулярности, определяемой адресатом. Трафик делится на две категории в зависимости оттого, проходит ли он через перегруженный учаcток. Протокол RPR поддерживает обслуживание выходных очередей, как это делается в обычных переключателях.
Рис. 2.
Узлы RPR имеют модули измерения (счетчики байт), которые контролируют информационный поток станции и транзитные потоки. Результаты этих измерений используются алгоритмом справедливого распределения ресурсов полосы пропускания (fairness algorithm) для вычисления параметров управляющего сигнала, направляемого вышестоящим узлам для дросселирования их потоков. Узлы, которые получают такие сообщения, используют полученные данные совместно с локальной информацией для управления контроллерами входных потоков (см. рис. 2).
Узел, кроме того, содержит планировщик, который осуществляет арбитраж для внутренних и транзитных потоков. В режиме одной очереди для транзитного потока имеется один буфер типа FIFO, эта очередь называется PTQ (primary transit queue). В этом случае планировщик предоставляет абсолютный приоритет транзитному трафику по отношению к локальному. В режиме двойной очереди (dual-queue mode) имеется две транзитные очереди, одна для класса А (PTQ) и одна для класса В и С - STQ (secondary transit queue). В этом режиме планировщик всегда обслуживает в первую очередь трафик класса А. Трафик класса А самой станции будет обслужен сразу после PTQ, если STQ не заполнена. В противном случае планировщик обслуживает сначала трафик STQ, гарантируя отсутствие потерь. При прочих равных условиях планировщик использует карусельный принцип обслуживания очереди STQ для транзитного трафика и трафика станции классов В и С до тех пор, пока не будет достигнут порог для STQ. Когда достигается порог буфера STQ, транзитный трафик STQ получает преимущество по отношению к трафику станции.
В обоих случаях определяющим является стремление к простоте оборудования (исключение дорогостоящих решений с индивидуальными очередями для каждого потока или каждого входа) и подавлению потерь.
Пакет, вошедший в кольцо не должен быть потерян в последующих узлах.
Существуют два режима работы алгоритма справедливого распределения полосы RPR. Первый из них - агрессивный (АМ - aggressive mode) происходит от протокола SRP (Spatial Reuse Protocol), широко используемого во многих региональных сетях. Второй консервативный режим СМ связан с алгоритмом Аладдина. Оба режима работают схожим образом. Перегруженный узел, размещенный ниже по течению, передает свое состояние перегрузки узлам вверх, так что они дросселируют свой трафик, обеспечивая достаточную полосу транспортировки для станции внизу. Чтобы достичь этого, перегруженный узел передает информацию вверх по течению и все узлы, расположенные там, должны соответствующим образом дросселировать свои потоки. Спустя некоторое время перегрузка ослабеет, и все узлы получат справедливые доли пропускной способности. Аналогично, когда перегрузка исчезает, станции станут периодически увеличивать свой темп отправки данных, таким образом, получая максимально возможную долю полосы пропускания.
Существует два ключевых параметра для управления полосой пропускания в RPR, это forward_rate и add_rate. Первый представляет загрузку от транзитного трафика, а второй - полную загрузку от трафика станции. Оба параметра измеряются в байтах за фиксированный период времени (aging_interval). Измерение обеих величин производится на выходе планировщика и подвергается экспоненциальному усреднению.
Один раз за aging_interval каждый узел проверяет свое состояние перегрузки c учетом режима работы (АМ/CM). Когда узел N перегружен, он вычисляет свою скорость обмена local_fair_rate[N], которая является справедливым (fair) значением потока, который может быть передан узлу N. Узел N затем передает управляющее сообщение, содержащее значение local_fair_rate[N], своему выше стоящему соседу.
Если выше расположенный узел (N-1) при получении сообщения перегрузки от узла N, сам является перегруженным, он направит это сообщение выше расположенному узлу, используя значение, которое является минимальным из local_fair_rate[N] и local_fair_rate[N-1].
Определяющим здесь является информирование вышестоящих узлов о минимальной скорости передачи, которую они могут допустить, направляя трафик к месту назначения. Если узел N-1 не перегружен, но его forward_rate больше полученного значения local_fair_rate[N], он переадресует управляющее сообщение, содержащее local_fair_rate[N], вверх по течению, так как перегрузка сопряжена с транзитным трафиком, идущем сверху. В противном случае посылается управляющее сообщение с нулевым значением уровня перегрузки. Когда вышестоящий узел i получает управляющее сообщение с параметром local_fair_rate[N], он понижает свое ограничение на скорость передачи для потоков, следующих через перегруженный канал (allowed_rate_congested). Это значение равно сумме допустимых скоростей передачи потоков (i,j) для всех j, для которых n лежит на пути от i к j. Система настраивается так, чтобы вышерасположенные узлы отрегулировали свои контроллеры потоков на уровень, соответствующий допустимому. Следовательно, трафик станции не будет превосходить анонсированного значения local_fair_rate для любого из перегруженных узлов ниже по течению. В противном случае, если получено управляющее сообщение с нулевым значением fairness, узел увеличивает allowed_rate_congested на фиксированную величину, так что он может анонсировать наличие дополнительной полосы пропускания в случае, если один из потоков ниже по течению снизит свою интенсивность. Более того, такое сокращение потока существенно для сходимости процесса установки справедливых долей потоков даже в случае статического запроса.
Главным отличием между режимами АМ и СМ является детектирование перегрузки и вычисление локального значения справедливой величины потока. По умолчанию АМ использует режим двойной очереди, а СM - режим одной очереди.
Агрессивный режим (АМ) является режимом работы алгоритма обеспечения справедливого распределения ресурсов в RPR по умолчанию. В режиме АМ узел N считается перегруженным, если:
STQ_depth[N] > low_threshold
или
forward_rate[N] + add_rate[N] > unreserved_rate
где, как это было описано выше, STQ является транзитной очередью для трафика классов В и С. Значение порога low_threshold является долей размера транзитной очереди, по умолчанию равной 1/8 от размера очереди STQ. unreserved_rate равна полосе канала минус доля полосы, зарезервированная для трафика с гарантированным качеством обслуживания. Так как здесь рассматривается только режим "лучшее-что-возможно", далее будем считать, что unreserved_rate равна полосе канала.
Когда узел перегружен, он вычисляет свое значение local_fair_rate как нормированную скорость обслуживания собственного трафика, add_rate, и затем посылает управляющее сообщение, содержащее add_rate, вышестоящим узлам.
Рассмотрим пример алгоритма "parking lot" (рис. 1). Если ниже расположенный узел анонсирует значение add_rate ниже уровня справедливого значения потока (что типично для ситуации без перегрузки), все вышестоящие узлы дросселируют потоки до этого уровня. Этот процесс осциллирует вокруг справедливого значения потока.
Каждый СМ (Conservative mode) узел имеет таймер доступа, измеряющий время между двумя последовательными передачами пакетов станции. Так как СМ использует непосредственно приоритет транзитного трафика в отношении трафика станции в рамках режима одной очереди, этот таймер служит для того, чтобы гарантировать отсутствия блокировки трафика станции. Таким образом, в режиме СМ узел N считается перегруженным, если истекло время таймера доступа, или:
forward_rate[N] + add_rate[N] > low_threshold
В отличие от АМ low_threshold для СМ представляет собой параметр, имеющий размерность скорости передачи, и значение меньше полосы пропускания канала. Значение 0,8 от полосы канала является величиной по умолчанию. В дополнение к forward_rate и add_rate СМ режим выявляет ID узла путем анализа заголовка каждого пакета, и измеряет число активных станций, которые прислали хотя бы один пакет за время aging_interval.
Если узел СМ перегружен за время текущего aging_interval, но не был перегружен в предыдущий интервал, значение local_fair_rate вычисляется как общая не зарезервированная скорость обмена, деленная на число активных станций.
Если узел постоянно перегружен, значение local_fair_rate зависит от суммы forward_rate и add_rate. Если эта сумма меньше low_threshold, что индицирует недогруженность канала, значение local_fair_rate линейно увеличивается. Если эта сумма больше high_threshold (0,95 от емкости канала), то local_fair_rate линейно понижается.
Рассмотрим снова пример алгоритма "parking lot" (рис. 1), когда канал между узлами 4 и 5 оказался впервые перегружен, узел 4 передает данные со скоростью 1/4 (истинно справедливая доля полосы). Канал при этом будет рассматриваться перегруженным, так как его полный поток больше low_threshold. Более того, поскольку полный поток больше high_threshold, local_fair_rate будет периодически понижаться, пока сумма add_rate и forward_rate в узле 4 не станет меньше high_threshold, но больше low_threshold. Таким образом, для СМ максимальное использование канала будет соответствовать high_threshold.
Переходные процессы установления справедливых долей потока в системе может иметь осциллятивный характер (смотри [1,2]).
Ожидание до завершения
Если это поле содержит код нуль, тогда все предыдущие атрибуты диапазонных откликов должны быть использованы до посылки данного запроса. В противном случае это предполагаемое время, необходимое для завершения восприятия параметров выделенного диапазона и выраженное в десятках миллисекунд.
Сообщение RNG-REQ должно содержать следующие параметры:
Запрошенный профайл кластера нисходящего канала
МАС-адрес SS
Аномалии рабочего диапазона
Параметры сервисного потока
Полная спецификация сервисного потока включается в сообщение DSC-RSP, если она содержит вновь сформированный CID или расширенное имя класса услуг. Если набор параметров сервисного потока содержал принятый набор параметров QoS восходящего потока и этот сервисный поток не имеет ассоциированного CID, DSC-RSP должен включать в себя CID. Если набор параметров сервисного потока содержал имя класса сервиса и принятый набор параметров QoS, DSC-RSP будет включать набор параметров QoS, соответствующий этому классу. Если специфические параметры QoS были включены в запрос сервисного потока заданного класса, эти параметры будут включены в DSC-RSP вместо QoS-параметров того же класса.
Показатель Xmt Holdoff соседа
Анонсирует показатель Xmt Holdoff, сообщенный соседом.
Число SchedEntries
Число диспетчерных вложений MSH-DSCH соседа в сообщении.
ID узла соседа
ID узла, сообщенное соседом.
Порядковый номер
8-битовый код, инкрементируемый BS на 1 (по модулю 256) при формировании сообщения CLK-CMP. Этот параметр используется для детектирования потери пакетов.
Порядковый номер конфигурации
Указывает на конфигурацию, которая будет использоваться при интерпретации пакета. Конфигурация сопряжена с пакетом MSH-СSCH.
Флаг Grant/Request
0= Grant (передается по нисходящему каналу)
1= Request (передается по восходящему каналу)
Флаг конфигурации
Указывает, какой тип сообщения управляющего диспетчеризацией (CSCH или CSCF) будет передано следующим базовой станцией сетки.
Показатель шкалы потока
Определяет шкалу предоставляемой полосы. Его величина обычно зависит от числа узлов в сети, достижимой скорости передачи, требований трафика и предоставляемых услуг. Для DL он определяет абсолютное значение предоставляемого потока. Для UL используется наинизшее значение показателя для каждого шага.
NumFlowEntries
Число последующих 8-битных полей, упорядоченных согласно их появлению в MSH-CSCF.
UplinkFlow
Основа предоставленной/запрошенной полосы в бит/с для восходящего трафика узлов дерева диспетчеризации BS.
DownlinkFlow
Параметр, используемый для вычисления предоставленной/запрошенной полосы в бит/c для нисходящего трафика узла в дереве диспетчеризации BS. Поток характеризует трафик, который исходит или завершается в самом узле (транзитный трафик не учитывается). Действительное значение предоставляемой/запрашиваемой полосы вычисляется как:
BWтрафик в BS = UplinkFlow A2FlowscaleExponent+14 (бит/c)
BWтрафик из BS = DownlinkFlowA2FlowscaleExponent+14 (бит/c)
Флаг диспетчеризации кадра
Если флаг установлен, выделение потоков произойдет через два кадра, а не через один.
Узел инициатор
Три параметра (узел инициатора и профайлы) устанавливаются равными нулю, кроме случаев узлов, которые хотят зарезервировать выделение для инициализации МАС. Узел может установить эти величины, если все его дочерние узлы сообщают о равенстве этих параметров нулю. Сеточная BS в ответ осуществит выделение для индекса узла 0х00, который зарезервирован для этих целей.
Таблица 90. Формат сообщения MSH-CSCH
Синтаксис |
Размер |
Комментарий |
MSH-СSCH_ Message_IE() { |
|
|
Тип управляющего сообщения=42 |
8 бит |
|
Порядковый номер конфигурации |
3 бита |
Последний порядковый номер MSH-CSCF |
Флаг Grant/Request |
1 бит |
0= Grant; 1= Request |
Флаг диспетчеризации кадра |
1 бит |
|
Флаг конфигурации |
1 бит |
0= следующим сообщением управления графиком является MSH-CSCH
1 = следующим сообщением управления графиком является MSH-CSCF |
Зарезервировано |
2 бита |
|
NumFlowEntries |
8 бит |
|
for(i=0; i<NumFlowEntries; ++i) { |
|
|
UplinkFlow |
4 бита |
|
if(Grant/Request Flag ==0)
DownlinkFlow |
4 бита |
|
} |
|
|
Показатель шкалы потока |
4 бита |
|
Заполнитель |
4 бита |
|
if(Grant/Request Flag ==0) { |
|
|
No_link_updates |
4 бита |
|
for(i=0; i< No_link_updates; ++i) { |
|
|
Свой индекс узла |
8 бит |
Индекс в списке MSH-CSCF |
Индекс узла родителя |
8 бит |
Индекс в списке MSH-CSCF |
Профайл восходящего канала |
4 бита |
|
Профайл нисходящего канала } |
4 бита |
|
} else { |
|
Запрос узла инициатора |
Узел инициатор |
8 бит |
индекс дерева узлов |
Профайл DL |
4 бита |
|
Профайл UL |
4 бита |
|
} } |
|
|
Последовательность HMAC
Атрибут последовательности HMAC включает в себя дайджест сообщения, идентифицирующий отправителя. Этот атрибут является последним в списке.
Атрибут последовательности HMAC содержит дайджест сообщения (для аутентификации отправителя). Этот атрибут должен быть последним в списке.
Размер минидомена
Размер n минидоменов для восходящего канала в единицах физических доменов. Допустимыми значениями являются n=2m, где m равно целому из диапазона 0-7.
Re(Frequency_value[i]) и Im(Frequency_value[i])
Действительная (Re) и мнимая (Im) части измеренной амплитуды частоты в измерительной точке в формате целого числа со знаком и фиксированным положением запятой ([+/-][4бита].[11бит].
Результат сверки часов
8-битовый код разности (по модулю 256) между следующими двумя эталонными сигналами: (1) 10МГц эталонная частота, синхронизованная с символьными часами радиоканала (например, GPS), и (2) эталонной частотой 8.192 МГц, синхронизованной с сетевыми часами.
Счетчик изменений конфигурации
Увеличивается BS на 1 (по модулю 256), всякий раз, когда производится изменение любого параметра канала с данным дескриптором. Если значение счетчика для очередного UCD остается тем же, SS решает, что остальные поля не изменены и можно игнорировать оставшуюся часть сообщения.
Счетчик порядкового номера
Счетчик инкрементируется для каждого из запрашивающих сообщений при не координированной диспетчеризации. При координированной диспетчеризации он позволяет узлам детектировать потерю диспетчерских сообщений. Независимые счетчики используются для координированной и не координированной диспетчеризации.
Следующий Xmt Mх соседа
Уведомляет о следующем Xmt Mх, как это было сообщено соседом.
Сообщение централизованной диспетчеризации сетки (MSH-CSCH)
Сообщение MSH-СSCH формируется BS сетки (mesh) при использовании централизованной диспетчеризации. BS передает это сообщение широковещательно всем своим соседям и все узлы с числом шагов меньше чем HRпорог должны переадресовать сообщение MSH-СSCH своим соседям, которые имеют большее значение числа шагов. Во всех этих случаях флаг Grant/Request=0. HRпорог является конфигурационной величиной, которая должна быть известна BS сетки.
Узлы могут использовать сообщения MSH-СSCH для запросов полосы у BS сетки, установив флаг Grant/Request=1. Каждый узел сообщает об индивидуальных требованиях по трафику каждого дочернего узла субдерева BS. Формат сообщения MSH-СSCH показан в табл. Сообщение содержит следующие параметры:
| | |