Язык операций 1 (англ. Transaction Language 1, сокр. TL1) — широко используемый в телекоммуникациях протокол. Это общий для производителей, технологий человеко-машинный язык, широко использующийся для управления инфраструктурой оптического (SONET) и широкополосного доступа в Северной Америке.
TL1 применяется во входных и выходных сообщениях, которые передаются между OSS и сетевыми элементами (СЭ). В таких областях, как наблюдение, управление памятью, а также доступа и тестирования, определяют и используют TL1 сообщения для выполнения конкретных функций между OSS и СЭ. TL1 описан в Telcordia Technologies (прежде Bellcore) Generic Requirements document GR-831-CORE.
TL1 разработан компанией Bellcore в 1984 для Regional Bell Operating Companies (RBOCs), как стандартный человеко-машинный язык для управления сетевыми элементами. Он основан на группе стандартов человеко-машинного языка Z.300. TL1 был разработан, как стандартный протокол читаемый как машинами, так и людьми для замены разнообразных протоколов основанных на ASCII используемых разными производителями сетевых элементов. Язык расширяем и способен включить все специфические команды производителей.
Telcordia OSS такие как NMA (Network Monitoring and Analysis) используют TL1 как протокол (EMS) управления сетевыми элементами. Это вынудило производителей сетевых элементов реализовать поддержку TL1 в своих устройствах.
TL1 — это текстовая команда, которая состоит из набора полей, разделенных двоеточиями, и оканчивается точкой с запятой.
Общий формат команды
VERB:TID:AID:CTAG:GENBLOCK:OPTIONS
В каждой команде обязательно должны быть: verb (имя команды), точка с запятой и двоеточия.
VERB - аббревиатура имени выполняемой команды. В общем это команды, которые запрашивают или изменяют данные. Например, команда запроса даты и времени: RTRV-DAT
TID (Target Identifier) - идентификатор цели.
Необязателен для большинства команд. Перед выполнением команды некоторые устройства могут проверять соответствие TID, указанного в команде, и SID (Source Identifier - идентификатор источника). Если TID и SID совпадают, то команда будет выполнена, иначе отклонена.
AID (Access Identifier) - идентификатор доступа. Указывает объект в отношении которого будет выполнена команда. Формат AID зависит от выбранного объекта.
CTAG - (correlation tag) - метка взаимосвязи. Необязательна для большинства команд. Это поле используется для нахождения соответствия между командой и ответом. Указанный в команде CTAG возвращается в ответе. Если CTAG оставлен пустым, в заголовке ответа значение CTAG будет 0.
GENBLOCK (general block) - общий блок. Необязателен для команд, в которых не заполнено поле OPTIONS. Для команд с заполненным полем OPTIONS, общий блок должен быть пустым (null).
OPTIONS - параметры команды. Параметры используемые для выполнения команды.
Элемент | Символ | Роль | Пояснение |
---|---|---|---|
Точка с запятой | ; | терминатор | Точка с запятой означает конец сообщения TL1. |
Двоеточие | : | отделитель | Двоеточие используется для разделения "полей" данных в сообщении TL1. |
Запятая | , | делитель и местозаполнитель | Запятые используются для разделения аргументов сообщений и для указания мест, где опущены аргументы. |
Например, аргументы от A до E must должны быть разделены запятой - :A,B,C,D,E;
Аргументы могут быть просто исключены с конца - :A,B;
Пробелы в аргументах требуют использования запятых в качестве заполнителей - :,B,,,E;
Для описания ответов на TL1 команды используется синтаксис BNF, как определено в документе Tltcordia GR-831-CORE. Следующая таблица определяет формат обозначений, используемых в ответах на входные команды.
Символ | Описание |
---|---|
^ | Представляет пробел |
* | Означает, что предыдущий блок параметров может повторятся 0 или более раз |
+ | Означает, что предыдущий блок параметров должен повторятся 1 или более раз |
/* | Начало ASCII текста комментария в свободной форме |
*/ | Конец ASCII текста комментария в свободной форме |
( | Начало дополнительного блока |
) | Конец дополнительного блока |
<cr> | Представляет символ возврата каретки |
<lf> | Представляет символ перевода строки |
Язык TL1 состоит из наборов сообщений. Есть 4 типа сообщений:
TL1 сообщения имеют фиксированную структуру, и все команды должны соответствовать ей. Тем не менее, команды сами расширяемы и новые команды могут быть добавлены производителями СЭ.
Вот несколько компонентов сообщения:
Структура:
Входное сообщения TL1 | |||||||
Код команды | Подготовительный блок | Блок с полезной нагрузкой | |||||
Имя команды | атрибут1 | атрибут2 | TID | AID | CTAG | Общий блок | Блок данных |
ENT | USER | SECU | MyNE | sridev | 101 | password |
Пример:
ENT-USER-SECU:MyNE:sridev:101::password;
Структура:
Выходное сообщение TL1 | |||||||
Заголовок ответа | Идентификатор ответа | Блок ответа | Указатели конца | ||||
SID | Дата | Время | M | CTAG | Код завершения операции | ||
MyNE | 04-08-14 | 09:12:04 | M | 101 | COMPLD | «UID=sridev:CID=CRAFT,UAP=1:» | ; |
Пример:
ENT-USER-SECU:MyNE:sridev:101::password;
Структура:
Сообщение подтверждения приёма TL1 | |||
Код подтверждения приема | CTAG | Признак конца | |
OK | 101 | > |
Пример:
OK 101 |
> |
Структура:
Независимое сообщение TL1 | |||||||
Заголовок сообщения | Идентификатор | Данные | Признаки конца | ||||
SID | Дата | Время | Код аварии | ATAG | Имя команды | ||
MyNE | 04-08-14 | 09:12:04 | A | 101 | REPT EVT SESSION |
Пример:
MyNE 04-08-14 09:12:04 |
A 101 REPT EVT SESSION |
«root:NO,» |
; |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .