1. Сетевой уровень Пример топологии сети мониторинга приведен на рисунке .---. .----------. .----------. .----------. .----------. |Ком| | |<->4 | | 4<->| | .---. | |<->4 | | 4<->| | |пью|<->0 6 | : : | | : : | d 0<->|Rou|<->0 c | : : | | : : | * 0 |тер| | |<->f | | f<->| | |ter| | |<->f | | f<->| | `---' |---' | | `---| `---' |---' | | `---| | |->:Кан.2|<-Л->|Кан.1:<-' | ^ ^ | `->:Кан.1|<-Л->|Кан.2:<-| | | | :Кан.1|<-Э->|Кан.2: | | | | :Кан.2|<-Э->|Кан.1: | | | `->:Кан.3|<-П->|Кан.3:<-----. | | .----->:Кан.3|<-П->|Кан.3:<-' | `----------' `----------' | | | | `----------' `----------' | | | | .----------. .----------. | | | | .----------. .----------. <------->:Кан.1|<-Л->|Кан.1:<-----' | | `----->:Кан.1|<-Л->|Кан.1:<-. | | :Кан.2|<-Э->|Кан.2: | | | | :Кан.2|<-Э->|Кан.2: | | | .->:Кан.3|<-П->|Кан.3:<-. | | | | :Кан.3|<-П->|Кан.3:<-| | |---. | | .---| | | |---. | | .---| | |<->4 | | 4<->| | | | | |<->4 | | 4<->| | <-->0 * | : : | | : : | * 0<---' `--->0 * | : : | | : : | * 0 | |<->f | | f<->| | | |<->f | | f<->| | `----------' `----------' `----------' `----------' Структура сообщений: <Указатель><Маршрут><Данные><Контроль> Указатель занимает один байт: бит 7 (старший) - значение 0/1, если передается команда/ответ; бит 6 - резервный, должен быть 0; биты 5..0 - номер активного элемента в поле машрута. Маршрут представляется списком элементов, каждый из которых занимает половину байта и является идентификатором платы/канала или блока по пути продвижения со- общения. Перед идентификаторами блоков вставляется элемент со значением 0. Если сообщение адресовано блоку, после идентификатора этого блока следует элемент со значением 0 (признак конца списка). Остаток последнего байта маршрута должен заполняться 0 и при приеме должен игнорироваться. Поле данных может иметь произвольное количество байтов в пределах возможности передачи через Ethernet сеть. Сообщение должно завершаться контрольным байтом. Значение байта вычисляется аналогично DARPA IP протоколу: сумма всех байтов сообщения и возникающих при сложении переносов должна быть 0xFF. Идентификаторы плат/каналов: 0x0 - внешний (Ethernet) стык; 0x8 - плата фильтра прм; 0x1 - канал 1; 0x9 - резерв; 0x2 - канал 2; 0xa - плата первого усилителя прд; 0x3 - канал 3; 0xb - плата первого фильтра прд; 0x4 - плата модема; 0xc - плата второго усилителя прд; 0x5 - плата окончания канала 1; 0xd - плата второго фильтра прд; 0x6 - плата окончания канала 2; 0xe - плата питания; 0x7 - плата окончания канала 3; 0xf - резерв. Идентификаторы блокам назначаются конфигурированием, должны быть уникальными в пределах узла и могут иметь значения от 0 до 14. Значение 15 резервируется для широковещательных сообщений. При формировании команды в компьютере указателю присваивается значение 0. Если команда формируется в блоке, первому элементу маршрута присваивается зна- чение 0, указателю - значение 1. В процессе продвижения команды по очередному узлу ветвления определяется направление по активному элементу списка, элемент списка модифицируется для формирования маршрута ответного сообщения, инкремен- тируется указатель и корректируется контрольный байт. При формировании ответного сообщения должны использоваться указатель и марш- рут, полученные в команде. В процессе продвижения ответа по узлам ветвления указатель должен декрементироваться и должен формироваться маршрут к иточнику ответного сообщения. Ниже приводится пример, в котором показывается изменение команды и иницииро- ванного ответа в процессе их прохождения по узлам. Обмен выполняется с платой 5 нижнего правого блока (см. пример топологии). Скобками выделены элементы, на которые указывает указатель. Команда __Комп.__(6)_2__0__c__1__3__5_ Код команды: 0x00,0x26,0xc0,0x31,0x05,... 6 Блок 0 (2) 0 c 1 3 5 __Кан.2 0 (2) 0 c 1 3 5 d Кан.1 0 1 (0) c 1 3 5 __Блок____0__1__d_(c)_1__3__5_ c Блок 0 1 d 0 (1) 3 5 __Кан.1 0 1 d 0 (1) 3 5 * Кан.2 0 1 d 0 2 (3) 5 __Кан.3 0 1 d 0 2 (3) 5 * Кан.1 0 1 d 0 2 1 (5) Пл.5 Ответ * Пл.5 0 1 d 0 2 (1) 5 Код ответа: 0x85,0x10,0x0d,0x12,0x05,... __Кан.1 0 1 d 0 2 (1) 5 * Кан.3 0 1 d 0 (2) 3 5 __Кан.2 0 1 d 0 (2) 3 5 c Кан.1 0 1 d (0) 1 3 5 __Блок____0__1_(d)_c__1__3__5_ d Блок 0 (1) 0 c 1 3 5 __Кан.1 0 (1) 0 c 1 3 5 6 Кан.2 (0) 2 0 c 1 3 5 __Блок___(6) 2 _0__c__1__3__5_ Комп. Для представления блоков в сетевой топологии на экране монитора компьютера для каждого из блоков должно быть задано конфигурированием уникальное тексто- вое имя. Максимальная длина имени - 32 символа. Для обслуживания сетевого уровня используются команды: - чтения сетевых атрибутов блока; - записи сетевых атрибутов блока. Командой чтения сетевых атрибутов является команда без поля данных, адресо- ванная либо к конкретному блоку, либо ко всем блокам сетевого узла. Блок, при- нявший широковещательную команду от канала по ЛЭП, должен транслировать её во внешний стык. В ответном сообщении блоки должны посылать в поле маршрута свой идентификатор. Команда записи сетевых атрибутов адресуется к конкретному блоку и содержит поле данных: , где MType=0x0n - тип сообщения, n - идентификатор блока для записи; BName - имя блока для записи. Запись n выполняется только, если текущее значение имени блока в пределах длины BName сопадает с BName. Запись BName выполняется только, если текущее значение идентификатора блока совпадает с n. В ответном сообщении должны посылаться окончательные варианты идентификатора и имени блока. На обе команды должен посылаться ответ с полем данных: , где MType - тип сообщения. Возможные значения: 0x00 - команда принята по внеш- нему стыку, 0x01..0x03 - команда принята по каналу 1..3; BType - тип блока, занимает один байт, используется для объединения блоков с различной сетевой организацией; BName - имя блока. Ответ не посылается, если изменяется идентификатор блока. 2. Связь через порт Ethernet платы МД Сообщения между платой и компьютером должны передаваться с использованием протоколов UDP/IP4. Адреса со стороны платы: - MAC адрес задается конфигурированием в диапазоне 02.AD.C4.03.**.**. Рас- смотреть возможность автоматического инкрементирования значения перед записью его в процессе изготовления платы; - IP адрес задается конфигурированием в диапазоне 0.0.0.1..223.255.255.255, исходное значение 192.168.0.254; - номер порта для мониторинга 12348 (фиксированный). Должна обеспечиваться работа в виртуальной сети. Идентификатор VLAN задается конфигурированием. Должна быть возможность перехода к исходным IP адресу и сети (без изменения значений в конфигурационной памяти) и возрата к сконфигурированным IP адресу и сети с помощью кнопки. Плата должна отвечать на ARP и ICMP запросы компьютера. Плата должна сохранять MAC адрес, IP адрес и номер порта компьютера, полу- ченные в последнем принятом сообщении, и использовать их в последующих пере- даваемых сообщениях. Должна обеспечиваться совместная независимая работа с тремя компьютерами при условии, что компьютеры находятся в единой сети (VLANе). Идентификация должна обеспечиваться путем включения идентификатора компьютера в принятые сообщения. Сообщения в соединениях плата-плата, плата-bridge-плата должны содержать после MAC адресов длину и далее - данные (без IP). 3. Обмен данными мониторинга по кроссу через UART 3.1. Требования к электрическим параметрам Волновое сопротивление цепей - 110..115 Ом. Микросхемы, выдающие сигнал в цепь "Rx", должны иметь выходное сопротивление 10..15 Ом и обеспечивать высокий импеданс для чужих сигналов при произвольном (переходном) напряжении собственного питания (данные требования обспечиваются микросхемами серии UHS, например, NC7SZ125P5, NC7SZ126P5 ф. Fairchild). На вы- ходе микросхем должен быть включен последовательный резистор 100 Ом. Цепь "Rx" на плате МД подтянута к цепи питания +3,3В через резистор 4,7 кОм. Микросхемы для приема сигналов цепи "Tx" должны быть без клампинговых диодов. На входе микросхем должен быть включен последовательный резистор 100 Ом. Входы микросхем должны быть подтянуты к цепи "0V" через резистор 47 кОм. 3.2. Характеристики UART: скорость 115200 бод; число битов данных 8; контроль паритета -; число стоп битов 1. 3.3. Сообщения должны ограничиваться с обеих сторон символами 'Flag' 0x7E. Передача должна выполняться с замещением символов: 0x7E ('Flag') - последовательностью 0x7D, 0x5E; 0x7D ('Esc') - последовательностью 0x7D, 0x5D. Формат сообщений определён в разделе 1. 3.4. Плата МД выдаёт сообщения в цепь "Tx" по мере их появления. При отсутствии сообщений для передачи плата передаёт маркеры, заполняя паузы ожидания после передачи очередного маркера флагами. Маркер - однобайтовое сооб- щение, состоящее из одинаковых ниблов, содержащих идентификаторы платы/канала, определённые в разделе 1. Маркер предоставляет право занятия цепи "Rx" соответ- ствующей плате. После получения маркера (последовательности Флаг-Маркер-Флаг) адресуемая плата может передавать произвольное количество сообщений произвольной длины. Если адресуемая плата намерена передавать, она должна начать передачу не позже двух символьных интервалов (2*86.8мкс) после конца передачи постмаркерного фла- га и обеспечивать паузы между передаваемыми символами меньше одного символьного интервала (86.8мкс). При обнаружении передачи по цепи "Rx" после передачи маркера, плата МД за- держивает передачу следующих сообщений до завершения передачи по цепи "Rx". Иначе передача следующего сообщения начинается после передачи шести флагов. Плата, занявшая цепь "Rx", должна непрерывно контролировать активность в це- пи "Tx" и при обнаружении передачи по цепи символов-нефлагов максимально быстро освобождать цепь "Rx". Цикл формирования маркеров: 55-88-66-aa-77-bb-55-cc-66-dd-77-ee. 3.5. Канальные платы, предназначенные для трансляции сообщений в ЛЭП, должны обеспечивать буферизацию сообщений в ожидании передачи по сценариям: 1) 30 коротких сообщений по 208 байтов; 2) 15 коротких сообщений по 208 байтов и длинное сообщение 1488 байтов. При трансляции сообщений в направлении ЛЭП->цепь "Rx" платы должны замещать в позиции, на которую указывает указатель, прибывший идентификатор канала на свой идентификатор канала с соответствующей коррекцией контрольного байта. 4. Интерфейс между платой МД и канальными платами 4.1. Для связи используются четыре цепи: "CKx", "FSx", "DRx" - сигналы формируются платой МД; "DTx" - сигнал формируется канальной платой. 4.2. Требования к электрическим параметрам Волновое сопротивление цепей - 110..115 Ом. Выходное сопротивление формирователей сигналов должно быть 110..115 Ом. Сиг- налы должны выдаваться только, когда обеспечиваются логические уровни. Микросхемы для приема сигналов должны быть без клампинговых диодов. На входе микросхем должен быть включен последовательный резистор 100 Ом. Входы микросхем должны быть подтянуты к цепи "0V" через резистор 47 кОм. 4.3. Интерфейс может работать в режимах, приведённых в п. 4.4..4.6. 4.4. Аналоговый режим Временная диаграмма (TI формат): "CKx" _/~\_/~\_/~\_/.../~\_/~\_/ "FSx" _/~~~\________.../~~~\____ "DRx" : - :d15:d14:...: d0:d15: "DTx" : - :d15:d14:...: d0:d15: "CKx" - тактовый сигнал, частота 128кГц*(1+-0,000010); "FSx" - цикловый синхросигнал, период - 16 импульсов "CKx"; "DRx", "DTx" - 16-разрядные отсчёты в дополнительном коде, d15 - знаковый. 4.5. Цифровой режим Временная диаграмма: "CKx" _/~\_/~\_/~\_/~\_/~\_/~\_/ .. _/~\_/~\_/~\_/~\_/ .. _/~\_/~\_/~\_/~\_/ "FSx" ____/~\_/~\_/~~~~~~~~~~~~~ .. ~~~~~~~~\_/~\_____ .. ____/~\_/~\_/~~~~~ "DRx" :d1r:d2r:d3r:d4r:d5r:d6 .. d*r:dmr: :d1r:d2r:d3r:d4 "DTx" :d1t:d2t:d3t: .. t:d*t:d*t:dnt: :d1t: "CKx" - тактовый сигнал, частота 32кГц*(1+-0,000010); "FSx" для "DRx" и "FSx" для "DTx" циклические, период - 320 импульсов "CKx" (10мс). Смещение циклов "FSx" для "DRx" относительно "FSx" для "DTx" произволь- ное и может делать разовые перескоки на несколько периодов "CKx". Данные "DRx" и "DTx" селектируются по разным фронтам сигнала "CKx" при высо- ком уровне "FSx". Количество битов, передаваемых за цикл, изменяется в процессе работы и может быть в пределах: m=m_min..255, n=n_min..255, где m_min и n_min задаются конфигурированием. "FSx" для "DRx" исчезает при пропадании ВЧ связи. 4.6. Режим транзита По интерфейсным цепям передаются: "DRx" - сигнал, принятый из ЛЭП; "CKx" - постоянно 0 В; "FSx" - высокий уровень сигнализирует о наличии сигнала в цепи "DTx"; "DTx" - сигнал для передачи в ЛЭП. По цепям "DRx" и "DTx" передаются цифровые 16-ти разрядные отсчёты аналого- вых сигналов с частотой следования отсчётов 8 кГц, промодулированные с такто- вой частотой 384 кГц.