Квазисвязанный режим
Pax (обсуждение | вклад) |
Pax (обсуждение | вклад) |
||
| (не показаны 4 промежуточные версии 1 участника) | |||
| Строка 4: | Строка 4: | ||
| − | + | =Связанный режим= | |
В самом простом случае схема подключения двух станций (двух SP) по сигнализации ОКС№7 (CCS7) будет выглядеть следующим образом: | В самом простом случае схема подключения двух станций (двух SP) по сигнализации ОКС№7 (CCS7) будет выглядеть следующим образом: | ||
| Строка 38: | Строка 38: | ||
Это так называемый «связанный» режим подключения, который является только частным случаем взаимодействия объектов на сети ОКС№7. | Это так называемый «связанный» режим подключения, который является только частным случаем взаимодействия объектов на сети ОКС№7. | ||
| − | + | ||
| + | =Квазисвязанный режим= | ||
| + | |||
Для описания «квазисвязанного» режима работы необходимо написать несколько слов о структуре сети и принятой терминологии. | Для описания «квазисвязанного» режима работы необходимо написать несколько слов о структуре сети и принятой терминологии. | ||
| Строка 66: | Строка 68: | ||
Из этой схемы становятся понятными некоторые «особенности» настойки ОКС на оборудовании М-200: | Из этой схемы становятся понятными некоторые «особенности» настойки ОКС на оборудовании М-200: | ||
*Так как взаимодействие между узлами в сети осуществляется на основании PC, необходимо явно указывать адреса SSP и STP, подключенных к коммутатору. | *Так как взаимодействие между узлами в сети осуществляется на основании PC, необходимо явно указывать адреса SSP и STP, подключенных к коммутатору. | ||
| − | *Связь М-200 | + | *Связь М-200 -> STP описана на уровне MTP (PCM_MTP, параметры OPC и DPC). |
| − | *М-200 | + | *М-200 -> SSP на уровне ISUP (в данном случае значение NUMBERA порта). |
Если значения PC для STP и SSP различаются, оборудование работает в квазисвязанном режиме: | Если значения PC для STP и SSP различаются, оборудование работает в квазисвязанном режиме: | ||
| Строка 181: | Строка 183: | ||
| − | + | =Функции SSP (Связь между ISUP и MTP)= | |
| − | + | ==Исходящий вызов== | |
Связь между телефонным номером и PC осуществляется на этапе выбора канала, согласно правилам, описанным в таблице маршрутизации: | Связь между телефонным номером и PC осуществляется на этапе выбора канала, согласно правилам, описанным в таблице маршрутизации: | ||
| Строка 189: | Строка 191: | ||
*Параметр NUMBERA каждого канала должен быть записан в формате «OPC-DPC-CIC». Значение DPC будет использовано для отправки сообщений по сети ОКС№7. | *Параметр NUMBERA каждого канала должен быть записан в формате «OPC-DPC-CIC». Значение DPC будет использовано для отправки сообщений по сети ОКС№7. | ||
| − | + | ==Входящий вызов== | |
Во входящем IAM содержаться значения OPC, DPC и CIC. Формируется запись вида «DPC-OPC-CIC» (OPC и DPC «зеркальны» по отношению к М-200) и осуществляется поиск канала с соответствующим параметром NUMBERA. Если канал найден, дальше осуществляется обработка вызова, согласно стандартным процедурам М-200. | Во входящем IAM содержаться значения OPC, DPC и CIC. Формируется запись вида «DPC-OPC-CIC» (OPC и DPC «зеркальны» по отношению к М-200) и осуществляется поиск канала с соответствующим параметром NUMBERA. Если канал найден, дальше осуществляется обработка вызова, согласно стандартным процедурам М-200. | ||
| − | + | =Функции STP (Маршрутизация на основе PC)= | |
| − | + | ==LinkSet== | |
LinkSet представляет собой набор из одного или более сигнальных линков, соединяющих две SP. В случае М-200 в один LinkSet объединяются все сигнальные линки с одинаковыми значениями OPC и DPC в профиле PCM_MTP. Каждый LinkSet должен иметь уникальное значение LinkSetID (номер набора в пространстве станции). | LinkSet представляет собой набор из одного или более сигнальных линков, соединяющих две SP. В случае М-200 в один LinkSet объединяются все сигнальные линки с одинаковыми значениями OPC и DPC в профиле PCM_MTP. Каждый LinkSet должен иметь уникальное значение LinkSetID (номер набора в пространстве станции). | ||
| Строка 227: | Строка 229: | ||
В случае работы в квазисвязанном режиме LinkSet-ы должны быть описаны явным образом, так как в дальнейшем их параметры будут использованы в маршрутизации. | В случае работы в квазисвязанном режиме LinkSet-ы должны быть описаны явным образом, так как в дальнейшем их параметры будут использованы в маршрутизации. | ||
| + | ''Даже если только один из стыков квазисвязанный, а все остальные связанные, linksetID должны быть ОБЯЗАТЕЛЬНО прописаны везде!'' | ||
Схема на рис. 4 может быть описана следующим образом (количество сигнальных линков на STP-2110 увеличено до двух и прописаны значения linksetID для обоих линксетов): | Схема на рис. 4 может быть описана следующим образом (количество сигнальных линков на STP-2110 увеличено до двух и прописаны значения linksetID для обоих линксетов): | ||
| Строка 303: | Строка 306: | ||
| − | + | ==RoutingRules== | |
В случае работы в квазисвязанном режиме значения DPC для MTP и ISUP различаются. Таким образом, должна быть возможность указывать станции, куда должны отправляться сообщения для каждого конкретного значения DPC. Это осуществляется путем привязки значений DPC к линксетам (к значениям linksetID). | В случае работы в квазисвязанном режиме значения DPC для MTP и ISUP различаются. Таким образом, должна быть возможность указывать станции, куда должны отправляться сообщения для каждого конкретного значения DPC. Это осуществляется путем привязки значений DPC к линксетам (к значениям linksetID). | ||
| Строка 317: | Строка 320: | ||
routingRules = ("2110-1" "2120-0" "2500-0" "2500-1") | routingRules = ("2110-1" "2120-0" "2500-0" "2500-1") | ||
''Пример 6.'' | ''Пример 6.'' | ||
| + | |||
| + | |||
| + | Данная запись говорит станции, что: | ||
| + | *Сообщения на STP-2110 будут уходить через линксет 1 (потоки 1 и 2); | ||
| + | *Сообщения на STP-2120 будут уходить через линксет 0 (поток 3); | ||
| + | *Сообщения на SSP-2500 могут отправляться как через линксет 0, так и через линксет 1; | ||
| + | |||
| + | Если сообщения на один и тот же DPC могут проходить через разные линксеты, то последовательность записей определяет приоритет их использования. В примере 5 станция сначала будет пытаться отправить сообщение 2500 через линксет 0 и затем, только если он по каким-то причинам недоступен, через линксет 1. | ||
| + | |||
| + | При создании таблицы следует учитывать, что: | ||
| + | *Таблица RoutingRules одна на всю систему и все сообщения, проходящие через станцию, будут перенаправляться, согласно прописанным в ней правилам; | ||
| + | *Любой DPC, не прописанный в таблице, будет рассматриваться, как ошибочный; | ||
| + | *При работе только в связанном режиме данная таблица также существует, но создается автоматически. И в этом случае она может быть расписана вручную, но необходимости в этом нет; | ||
| + | *При наличии в станции одновременно и связанных, и квазисвязанных подключений, RoutingRules необходимо расписать вручную для всех возможных DPC. | ||
| + | |||
| + | Для удобства работы с объектами, которые содержат большое количество подключений, RoutingRules прописываются не в одном месте, а в качестве параметра в профилях потоков (PCM_MTP). Это позволяет прописывать в одном месте только те DPC, которые действительно имеют отношение к данному линксету. При разборе конфигурации станция собирает все разбросанные по профилям правила и формирует одну результирующую таблицу, с которой и будет в дальнейшем работать. | ||
| + | Записи в профилях обрабатываются последовательно, по мере увеличения номеров. В случае возникновения неоднозначностей они будут решаться в пользу старших номеров профилей. | ||
| + | |||
| + | Если вернуться к примеру 4 и добавить к нему RoutingRules, получится следующее: | ||
| + | |||
| + | |||
| + | // описание портов (потоков) | ||
| + | |||
| + | PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 1 | ||
| + | NUMBERA = "=100-2500-0002+" | ||
| + | } | ||
| + | } | ||
| + | PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 1 | ||
| + | NUMBERA = "=100-2500-0034+" | ||
| + | } | ||
| + | } | ||
| + | PCM [3] { PROFIL = 5 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 1 | ||
| + | NUMBERA = "=100-2500-0066+" | ||
| + | } | ||
| + | } | ||
| + | |||
| + | // профили | ||
| + | |||
| + | PROFIL [3] { TYPE = PCM_MTP | ||
| + | DPC = 2110 | ||
| + | OPC = 100 | ||
| + | linksetID = 1 | ||
| + | networkIndicator = 2 | ||
| + | sigLinks = ( "10:1:1-0" "10:2:1-1" ) | ||
| + | routingRules = ("2110-1" "2500-1") | ||
| + | } | ||
| + | PROFIL [4] { TYPE = SIG_ISUP | ||
| + | } | ||
| + | PROFIL [5] { TYPE = PCM_MTP | ||
| + | DPC = 2120 | ||
| + | OPC = 100 | ||
| + | linksetID = 0 | ||
| + | networkIndicator = 2 | ||
| + | sigLinks = ( "10:3:1-0" ) | ||
| + | routingRules = ("2120-0" "2500-0") | ||
| + | } | ||
| + | PROFIL [6] { TYPE = PCM_NONE | ||
| + | } | ||
| + | Пример 7. | ||
| + | |||
| + | Или вариант с только одной записью: | ||
| + | |||
| + | PROFIL [3] { TYPE = PCM_MTP | ||
| + | DPC = 2110 | ||
| + | OPC = 100 | ||
| + | linksetID = 1 | ||
| + | networkIndicator = 2 | ||
| + | sigLinks = ( "10:1:1-0" "10:2:1-1" ) | ||
| + | routingRules = ( "2110-1" "2120-0" "2500-1" "2500-0" ) | ||
| + | } | ||
| + | PROFIL [4] { TYPE = SIG_ISUP | ||
| + | } | ||
| + | PROFIL [5] { TYPE = PCM_MTP | ||
| + | DPC = 2120 | ||
| + | OPC = 100 | ||
| + | linksetID = 0 | ||
| + | networkIndicator = 2 | ||
| + | sigLinks = ( "10:3:1-0" ) | ||
| + | } | ||
| + | Пример 8. | ||
| + | |||
| + | Результат в обоих случаях будет одинаковым: | ||
| + | |||
| + | >ccs7info | ||
| + | CCS7 Info: | ||
| + | CCS7[0]: | ||
| + | CCS7ID: 0 OPC: 100 | ||
| + | linkSet[0] | ||
| + | linkSetID: 1, DPC: 2110, SignallingLinks: 2, ActiveSignallingLinks: 0 | ||
| + | sigRouteSize: 0 | ||
| + | SigLink[0]: | ||
| + | SyncPoint: Module: 10, PCM: 1, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | SigLink[1]: | ||
| + | SyncPoint: Module: 10, PCM: 2, updateCountdown: 2 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | linkSet[1] | ||
| + | linkSetID: 0, DPC: 2120, SignallingLinks: 1, ActiveSignallingLinks: 0 | ||
| + | sigRouteSize: 0 | ||
| + | SigLink[0]: | ||
| + | SyncPoint: Module: 10, PCM: 3, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | routes: 4 | ||
| + | Route[0]: DPC -> linksetID: 2110 -> 1 | ||
| + | Route[1]: DPC -> linksetID: 2120 -> 0 | ||
| + | Route[2]: DPC -> linksetID: 2500 -> 1 | ||
| + | Route[3]: DPC -> linksetID: 2500 -> 0 | ||
| + | Done | ||
| + | |||
| + | |||
| + | В конце вывода добавилась информация о работающих в данной конфигурации RoutingRules. | ||
| + | |||
| + | |||
| + | =Пример конфигурации= | ||
| + | |||
| + | |||
| + | Имеется следующая схема подключения оборудования М-200: | ||
| + | |||
| + | [[Файл:Ccs7-q-06.png]] | ||
| + | <br>''Рис. 2. Пример подключения к сети.'' | ||
| + | |||
| + | *Подключение к STP-201. 3 потока Е1. Связь с SSP 301, 302 и 303. | ||
| + | *Подключение к STP-202. 2 потока Е1. Связь с SSP 301 и 303. | ||
| + | *Подключение к STP-203. 3 потока Е1. Связь с SSP 302, 303 и 304. | ||
| + | |||
| + | Соответственно связь с SSP может осуществляться: | ||
| + | *301 – через STP-201, STP-202. Приоритет у STP-201. | ||
| + | *302 – через STP-203, STP-201. Приоритет у STP-203. | ||
| + | *303 – через STP-202, STP-201, STP-203. Приоритет у STP-202, потом у STP-201. | ||
| + | *304 – через STP-203. | ||
| + | |||
| + | |||
| + | CONF | ||
| + | { | ||
| + | PROFIL = 1 NAME ="" | ||
| + | |||
| + | MODULE [10] | ||
| + | { | ||
| + | TYPE = MODULE_MP NAME = "" PROFIL = 2 | ||
| + | |||
| + | PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 1 | ||
| + | NUMBERA = "=100-301-0002+" | ||
| + | } | ||
| + | } | ||
| + | PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP | ||
| + | PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 2 | ||
| + | NUMBERA = "=100-302-0033+" | ||
| + | } | ||
| + | } | ||
| + | PCM [3] { PROFIL = 3 // TYPE PCM = PCM_MTP | ||
| + | PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 3 | ||
| + | NUMBERA = "=100-303-0033+" | ||
| + | } | ||
| + | } | ||
| + | PCM [4] { PROFIL = 5 // TYPE PCM = PCM_MTP | ||
| + | PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 4 | ||
| + | NUMBERA = "=100-301-0033+" | ||
| + | } | ||
| + | } | ||
| + | PCM [5] { PROFIL = 5 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 5 | ||
| + | NUMBERA = "=100-303-0002+" | ||
| + | } | ||
| + | } | ||
| + | PCM [6] { PROFIL = 6 // TYPE PCM = PCM_MTP | ||
| + | PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 6 | ||
| + | NUMBERA = "=100-302-0002+" | ||
| + | } | ||
| + | } | ||
| + | PCM [7] { PROFIL = 6 // TYPE PCM = PCM_MTP | ||
| + | PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 7 | ||
| + | NUMBERA = "=100-303-0065+" | ||
| + | } | ||
| + | } | ||
| + | PCM [8] { PROFIL = 6 // TYPE PCM = PCM_MTP | ||
| + | PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP | ||
| + | GROUP = 8 | ||
| + | NUMBERA = "=100-304-0001+" | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | PROFIL [1] { TYPE = AIR_COMMON | ||
| + | } | ||
| + | PROFIL [2] { TYPE = AIR_MODULE | ||
| + | wide = 64 | ||
| + | } | ||
| + | PROFIL [3] { TYPE = PCM_MTP | ||
| + | DPC = 201 | ||
| + | OPC = 100 | ||
| + | linksetID = 0 | ||
| + | networkIndicator = 2 | ||
| + | routingRules = ("201-0" "202-1" "203-2" "301-0" "301-1" "302-2" "302-0" "303-1" "303-0" "303-2" "304-2") | ||
| + | sigLinks = ( "10:1:1-0" ) | ||
| + | } | ||
| + | PROFIL [4] { TYPE = SIG_ISUP | ||
| + | } | ||
| + | PROFIL [5] { TYPE = PCM_MTP | ||
| + | DPC = 202 | ||
| + | OPC = 100 | ||
| + | linksetID = 1 | ||
| + | networkIndicator = 2 | ||
| + | routingRules = ( ) | ||
| + | sigLinks = ( "10:4:1-0" ) | ||
| + | } | ||
| + | PROFIL [6] { TYPE = PCM_MTP | ||
| + | DPC = 203 | ||
| + | OPC = 100 | ||
| + | linksetID = 2 | ||
| + | networkIndicator = 2 | ||
| + | routingRules = ( ) | ||
| + | sigLinks = ( "10:6:1-0" ) | ||
| + | } | ||
| + | |||
| + | GROUP [1] { ROUTE = 1 } | ||
| + | GROUP [2] { ROUTE = 1 } | ||
| + | GROUP [3] { ROUTE = 1 } | ||
| + | GROUP [4] { ROUTE = 1 } | ||
| + | GROUP [5] { ROUTE = 1 } | ||
| + | GROUP [6] { ROUTE = 1 } | ||
| + | GROUP [7] { ROUTE = 1 } | ||
| + | GROUP [8] { ROUTE = 1 } | ||
| + | |||
| + | DIR [1] { NAME = "to 301" 1 4 } | ||
| + | DIR [2] { NAME = "to 302" 6 2 } | ||
| + | DIR [3] { NAME = "to 303" 5 3 7 } | ||
| + | DIR [4] { NAME = "to 304" 8 } | ||
| + | |||
| + | ROUTE [1] { NAME = "Test" | ||
| + | RECORD "1******" 1 | ||
| + | RECORD "2******" 2 | ||
| + | RECORD "3******" 3 | ||
| + | RECORD "4******" 4 | ||
| + | } | ||
| + | } | ||
| + | Пример 9. | ||
| + | |||
| + | >ccs7info | ||
| + | CCS7 Info: | ||
| + | CCS7[0]: | ||
| + | CCS7ID: 0 OPC: 100 | ||
| + | linkSet[0] | ||
| + | linkSetID: 1, DPC: 202, SignallingLinks: 1, ActiveSignallingLinks: 0 | ||
| + | sigRouteSize: 0 | ||
| + | SigLink[0]: | ||
| + | SyncPoint: Module: 10, PCM: 4, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | SigLink[1]: | ||
| + | SyncPoint: Module: 10, PCM: 5, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingAbsent, signallingOutOfService, … | ||
| + | linkSet[1] | ||
| + | linkSetID: 2, DPC: 203, SignallingLinks: 1, ActiveSignallingLinks: 0 | ||
| + | sigRouteSize: 0 | ||
| + | SigLink[0]: | ||
| + | SyncPoint: Module: 10, PCM: 6, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | SigLink[1]: | ||
| + | SyncPoint: Module: 10, PCM: 7, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingAbsent, signallingOutOfService, … | ||
| + | SigLink[2]: | ||
| + | SyncPoint: Module: 10, PCM: 8, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingAbsent, signallingOutOfService, … | ||
| + | linkSet[2] | ||
| + | linkSetID: 0, DPC: 201, SignallingLinks: 1, ActiveSignallingLinks: 0 | ||
| + | sigRouteSize: 0 | ||
| + | SigLink[0]: | ||
| + | SyncPoint: Module: 10, PCM: 1, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingPresent, signallingOutOfService, … | ||
| + | SigLink[1]: | ||
| + | SyncPoint: Module: 10, PCM: 2, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingAbsent, signallingOutOfService, … | ||
| + | SigLink[2]: | ||
| + | SyncPoint: Module: 10, PCM: 3, updateCountdown: 3 | ||
| + | tetminalNotAvail, signallingAbsent, signallingOutOfService, … | ||
| + | routes: 11 | ||
| + | Route[0]: DPC -> linksetID: 201 -> 0 | ||
| + | Route[1]: DPC -> linksetID: 202 -> 1 | ||
| + | Route[2]: DPC -> linksetID: 203 -> 2 | ||
| + | Route[3]: DPC -> linksetID: 301 -> 0 | ||
| + | Route[4]: DPC -> linksetID: 301 -> 1 | ||
| + | Route[5]: DPC -> linksetID: 302 -> 2 | ||
| + | Route[6]: DPC -> linksetID: 302 -> 0 | ||
| + | Route[7]: DPC -> linksetID: 303 -> 1 | ||
| + | Route[8]: DPC -> linksetID: 303 -> 0 | ||
| + | Route[9]: DPC -> linksetID: 303 -> 2 | ||
| + | Route[10]: DPC -> linksetID: 304 -> 2 | ||
| + | Done | ||
[[Категория:Конфигурирование оборудования]] | [[Категория:Конфигурирование оборудования]] | ||
[[Категория:ОКС7]] | [[Категория:ОКС7]] | ||
| − | |||
Текущая версия на 11:14, 10 марта 2015
- VoIP
- Цифровые потоки (Е1)
- Абонентская сигнализация
- СОРМ
- Прошлый век
- Дополнительно
Содержание |
[править] Связанный режим
В самом простом случае схема подключения двух станций (двух SP) по сигнализации ОКС№7 (CCS7) будет выглядеть следующим образом:
Рис. 1. ОКС№7, связанное подключение.
Для реализации подобной схемы в файл конфигурации М-200 необходимо добавить примерно такие строки :
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2500
OPC = 100
networkIndicator = 3
sigLinks = ( "127:1:1-0" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
Пример 1.
Это так называемый «связанный» режим подключения, который является только частным случаем взаимодействия объектов на сети ОКС№7.
[править] Квазисвязанный режим
Для описания «квазисвязанного» режима работы необходимо написать несколько слов о структуре сети и принятой терминологии.
Все объекты, являющиеся узлами сети и участвующие в обмене данными, называются точками сигнализации (signaling point, SP) и описываются двумя ключевыми параметрами:
- Network indicator (NI) – код (уровень) сети, на котором установлено оборудование (международный, национальный и т.д.);
- Point code (PC) – уникальный номер объекта на сети данного уровня.
Таким образом, базовая настройка SP подразумевает установку:
- NI – network indicator;
- OPC – origination point-code . «Свой» номер;
- DPC – destination point-code. Номер подключаемой станции.
Если обмен сообщениями на всех уровнях ОКС№7 (и MTP, и ISUP) происходит на одни и те же PC, то это получается связанный режим работы, который и был описан выше.
SP, работающие на сетях ОКС№7, бывают трёх типов:
- SSP - Signal (Service) Switching Point. Узлы инициирующие, обрабатывающие и завершающие телефонные вызовы. Основная задача SSP, это преобразование телефонной нумерации (ISUP) в сигнальные сообщения ОКС№7. SSP принимают вызов в классической телефонной нотации и переводят его «на язык» PC маршрутизации, понятной для сетевой модели ОКС.
- STP - Signal Transfer Point. Узлы, которые получают сигнальные сообщения и распределяют их к месту назначения. STP выполняют на сети роль маршрутизаторов, пересылающих сигнальные сообщения на основании PC между другими SP.
- SCP - Service Control Point. Узлы, предназначенные для работы с дополнительными сервисами .
В случае связанного режима (рис. 1) узел совмещает функции SSP и STP. Данный вариант можно схематически представить следующим образом:
Из этой схемы становятся понятными некоторые «особенности» настойки ОКС на оборудовании М-200:
- Так как взаимодействие между узлами в сети осуществляется на основании PC, необходимо явно указывать адреса SSP и STP, подключенных к коммутатору.
- Связь М-200 -> STP описана на уровне MTP (PCM_MTP, параметры OPC и DPC).
- М-200 -> SSP на уровне ISUP (в данном случае значение NUMBERA порта).
Если значения PC для STP и SSP различаются, оборудование работает в квазисвязанном режиме:
В соответствии со схемой должна быть изменена конфигурация:
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
sigLinks = ( "127:1:1-0" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
Пример 2.
Как видно из примера, значения DPC на уровнях MTP и ISUP различаются (2500 и 2120).
Для повышения надежности связи часто используется резервирование STP, что можно схематически отобразить так:
Данная схема подразумевает использование минимум двух сигнальных линков. В случае с М-200 допустимо использование только одного сигнального линка на поток Е1 и, таким образом, задействованы будут минимум два потока.
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 5 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
PCM [2] { PROFIL = 4 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 5 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0034+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2110
OPC = 100
sigLinks = ( "127:1:1-0" )
}
PROFIL [4] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
sigLinks = ( "127:2:1-0" )
}
PROFIL [5] { TYPE = SIG_ISUP
}
Пример 3.
Здесь добавился еще один профиль, который отличается значением DPC (теперь их три – 2110, 2120 и 2500). На уровне ISUP значения DPC не меняются и, кроме того, сохраняется сквозная нумерация CIC.
Так же следует рассмотреть «обратный» вариант:
Трафик маршрутизируется на два SSP через один STP. На уровне MTP оба потока взаимодействуют с одной STP и, соответственно, оба описываются одним профилем PCM_MTP. Голосовые каналы уходят на разные SSP, что отображено в значениях NUMBERA.
В результате получается конфигурация:
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2510-0001+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
networkIndicator = 2
sigLinks = ( "10:1:1-0" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
Пример 4.
На этом этапе базовые настройки квазисвязанного подключения завершены. Далее необходимо разобраться с функциями взаимодействия с SSP и STP на станциях М-200.
[править] Функции SSP (Связь между ISUP и MTP)
[править] Исходящий вызов
Связь между телефонным номером и PC осуществляется на этапе выбора канала, согласно правилам, описанным в таблице маршрутизации:
- На основе записи в таблице маршрутизации выбирается одно из направлений для организации исходящего вызова.
- Согласно правилам, заданным при создании направления, выбирается один из каналов.
- Параметр NUMBERA каждого канала должен быть записан в формате «OPC-DPC-CIC». Значение DPC будет использовано для отправки сообщений по сети ОКС№7.
[править] Входящий вызов
Во входящем IAM содержаться значения OPC, DPC и CIC. Формируется запись вида «DPC-OPC-CIC» (OPC и DPC «зеркальны» по отношению к М-200) и осуществляется поиск канала с соответствующим параметром NUMBERA. Если канал найден, дальше осуществляется обработка вызова, согласно стандартным процедурам М-200.
[править] Функции STP (Маршрутизация на основе PC)
[править] LinkSet
LinkSet представляет собой набор из одного или более сигнальных линков, соединяющих две SP. В случае М-200 в один LinkSet объединяются все сигнальные линки с одинаковыми значениями OPC и DPC в профиле PCM_MTP. Каждый LinkSet должен иметь уникальное значение LinkSetID (номер набора в пространстве станции).
В случае, если коммутатор работает исключительно в связанном режиме, значения LinkSetID можно не указывать и программа расставит их автоматически. Наличие и прядок расстановки значений LinkSetID можно увидеть в терминале с помощью команды 'ccs7info'. Так, для конфигурации из примера 3, вывод будет следующим:
>ccs7info
CCS7 Info:
CCS7[0]:
CCS7ID: 0 OPC: 100
linkSet[0]
linkSetID: 0, DPC: 2110, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 127, PCM: 1, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
linkSet[1]
linkSetID: 1, DPC: 2120, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 127, PCM: 2, updateCountdown: 2
tetminalNotAvail, signallingPresent, signallingOutOfService, …
routes: 0
Done
Создано два LinkSet (linkSet[0] и linkSet[1]) со значениями linkSetID: 0 и 1. В обоих наборах по одному сигнальному линку (SignallingLinks: 1) и в данный момент все они неактивны (ActiveSignallingLinks: 0).
В случае работы в квазисвязанном режиме LinkSet-ы должны быть описаны явным образом, так как в дальнейшем их параметры будут использованы в маршрутизации.
Даже если только один из стыков квазисвязанный, а все остальные связанные, linksetID должны быть ОБЯЗАТЕЛЬНО прописаны везде!
Схема на рис. 4 может быть описана следующим образом (количество сигнальных линков на STP-2110 увеличено до двух и прописаны значения linksetID для обоих линксетов):
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0034+"
}
}
PCM [3] { PROFIL = 5 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0066+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2110
OPC = 100
linksetID = 1
networkIndicator = 2
sigLinks = ( "10:1:1-0" "10:2:1-1" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
PROFIL [5] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
linksetID = 0
networkIndicator = 2
sigLinks = ( "10:3:1-0" )
}
Пример 5.
Вывод подтверждает, что станция правильно поняла внесенные в конфигурацию изменения:
>ccs7info
CCS7 Info:
CCS7[0]:
CCS7ID: 0 OPC: 100
linkSet[0]
linkSetID: 1, DPC: 2110, SignallingLinks: 2, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 1, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
SigLink[1]:
SyncPoint: Module: 10, PCM: 2, updateCountdown: 2
tetminalNotAvail, signallingPresent, signallingOutOfService, …
linkSet[1]
linkSetID: 0, DPC: 2120, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 3, updateCountdown: 2
tetminalNotAvail, signallingPresent, signallingOutOfService, …
routes: 0
Done
При установке значений linksetID необходимо придерживаться следующих правил:
- Нумерация начинается с «0»;
- Нумерация должна идти подряд, без пропусков – 0, 1, 2, …;
- Если значение linksetID прописано хотя бы в одном профиле «PCM_MTP», его необходимо указать и во всех остальных.
[править] RoutingRules
В случае работы в квазисвязанном режиме значения DPC для MTP и ISUP различаются. Таким образом, должна быть возможность указывать станции, куда должны отправляться сообщения для каждого конкретного значения DPC. Это осуществляется путем привязки значений DPC к линксетам (к значениям linksetID).
RoutingRules – своего рода «таблица маршрутизации» для значений PC, согласно которой станция выбирает, в какой линксет анализируемое сообщение будет отправлено. Формат таблицы следующий:
routingRules = ( "DPC1-LS1" "DPC2-LS2" … "DPCn-LSn")
Так, для рис. 4 и для конфигурации в примере 5 таблица должна иметь следующий вид:
routingRules = ("2110-1" "2120-0" "2500-0" "2500-1")
Пример 6.
Данная запись говорит станции, что:
- Сообщения на STP-2110 будут уходить через линксет 1 (потоки 1 и 2);
- Сообщения на STP-2120 будут уходить через линксет 0 (поток 3);
- Сообщения на SSP-2500 могут отправляться как через линксет 0, так и через линксет 1;
Если сообщения на один и тот же DPC могут проходить через разные линксеты, то последовательность записей определяет приоритет их использования. В примере 5 станция сначала будет пытаться отправить сообщение 2500 через линксет 0 и затем, только если он по каким-то причинам недоступен, через линксет 1.
При создании таблицы следует учитывать, что:
- Таблица RoutingRules одна на всю систему и все сообщения, проходящие через станцию, будут перенаправляться, согласно прописанным в ней правилам;
- Любой DPC, не прописанный в таблице, будет рассматриваться, как ошибочный;
- При работе только в связанном режиме данная таблица также существует, но создается автоматически. И в этом случае она может быть расписана вручную, но необходимости в этом нет;
- При наличии в станции одновременно и связанных, и квазисвязанных подключений, RoutingRules необходимо расписать вручную для всех возможных DPC.
Для удобства работы с объектами, которые содержат большое количество подключений, RoutingRules прописываются не в одном месте, а в качестве параметра в профилях потоков (PCM_MTP). Это позволяет прописывать в одном месте только те DPC, которые действительно имеют отношение к данному линксету. При разборе конфигурации станция собирает все разбросанные по профилям правила и формирует одну результирующую таблицу, с которой и будет в дальнейшем работать. Записи в профилях обрабатываются последовательно, по мере увеличения номеров. В случае возникновения неоднозначностей они будут решаться в пользу старших номеров профилей.
Если вернуться к примеру 4 и добавить к нему RoutingRules, получится следующее:
// описание портов (потоков)
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0002+"
}
}
PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0034+"
}
}
PCM [3] { PROFIL = 5 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-2500-0066+"
}
}
// профили
PROFIL [3] { TYPE = PCM_MTP
DPC = 2110
OPC = 100
linksetID = 1
networkIndicator = 2
sigLinks = ( "10:1:1-0" "10:2:1-1" )
routingRules = ("2110-1" "2500-1")
}
PROFIL [4] { TYPE = SIG_ISUP
}
PROFIL [5] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
linksetID = 0
networkIndicator = 2
sigLinks = ( "10:3:1-0" )
routingRules = ("2120-0" "2500-0")
}
PROFIL [6] { TYPE = PCM_NONE
}
Пример 7.
Или вариант с только одной записью:
PROFIL [3] { TYPE = PCM_MTP
DPC = 2110
OPC = 100
linksetID = 1
networkIndicator = 2
sigLinks = ( "10:1:1-0" "10:2:1-1" )
routingRules = ( "2110-1" "2120-0" "2500-1" "2500-0" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
PROFIL [5] { TYPE = PCM_MTP
DPC = 2120
OPC = 100
linksetID = 0
networkIndicator = 2
sigLinks = ( "10:3:1-0" )
}
Пример 8.
Результат в обоих случаях будет одинаковым:
>ccs7info
CCS7 Info:
CCS7[0]:
CCS7ID: 0 OPC: 100
linkSet[0]
linkSetID: 1, DPC: 2110, SignallingLinks: 2, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 1, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
SigLink[1]:
SyncPoint: Module: 10, PCM: 2, updateCountdown: 2
tetminalNotAvail, signallingPresent, signallingOutOfService, …
linkSet[1]
linkSetID: 0, DPC: 2120, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 3, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
routes: 4
Route[0]: DPC -> linksetID: 2110 -> 1
Route[1]: DPC -> linksetID: 2120 -> 0
Route[2]: DPC -> linksetID: 2500 -> 1
Route[3]: DPC -> linksetID: 2500 -> 0
Done
В конце вывода добавилась информация о работающих в данной конфигурации RoutingRules.
[править] Пример конфигурации
Имеется следующая схема подключения оборудования М-200:
Рис. 2. Пример подключения к сети.
- Подключение к STP-201. 3 потока Е1. Связь с SSP 301, 302 и 303.
- Подключение к STP-202. 2 потока Е1. Связь с SSP 301 и 303.
- Подключение к STP-203. 3 потока Е1. Связь с SSP 302, 303 и 304.
Соответственно связь с SSP может осуществляться:
- 301 – через STP-201, STP-202. Приоритет у STP-201.
- 302 – через STP-203, STP-201. Приоритет у STP-203.
- 303 – через STP-202, STP-201, STP-203. Приоритет у STP-202, потом у STP-201.
- 304 – через STP-203.
CONF
{
PROFIL = 1 NAME =""
MODULE [10]
{
TYPE = MODULE_MP NAME = "" PROFIL = 2
PCM [1] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 1
NUMBERA = "=100-301-0002+"
}
}
PCM [2] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 2
NUMBERA = "=100-302-0033+"
}
}
PCM [3] { PROFIL = 3 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 3
NUMBERA = "=100-303-0033+"
}
}
PCM [4] { PROFIL = 5 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 4
NUMBERA = "=100-301-0033+"
}
}
PCM [5] { PROFIL = 5 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 5
NUMBERA = "=100-303-0002+"
}
}
PCM [6] { PROFIL = 6 // TYPE PCM = PCM_MTP
PORT [2-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 6
NUMBERA = "=100-302-0002+"
}
}
PCM [7] { PROFIL = 6 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 7
NUMBERA = "=100-303-0065+"
}
}
PCM [8] { PROFIL = 6 // TYPE PCM = PCM_MTP
PORT [1-31] { PROFIL = 4 // SIG = SIG_ISUP
GROUP = 8
NUMBERA = "=100-304-0001+"
}
}
}
PROFIL [1] { TYPE = AIR_COMMON
}
PROFIL [2] { TYPE = AIR_MODULE
wide = 64
}
PROFIL [3] { TYPE = PCM_MTP
DPC = 201
OPC = 100
linksetID = 0
networkIndicator = 2
routingRules = ("201-0" "202-1" "203-2" "301-0" "301-1" "302-2" "302-0" "303-1" "303-0" "303-2" "304-2")
sigLinks = ( "10:1:1-0" )
}
PROFIL [4] { TYPE = SIG_ISUP
}
PROFIL [5] { TYPE = PCM_MTP
DPC = 202
OPC = 100
linksetID = 1
networkIndicator = 2
routingRules = ( )
sigLinks = ( "10:4:1-0" )
}
PROFIL [6] { TYPE = PCM_MTP
DPC = 203
OPC = 100
linksetID = 2
networkIndicator = 2
routingRules = ( )
sigLinks = ( "10:6:1-0" )
}
GROUP [1] { ROUTE = 1 }
GROUP [2] { ROUTE = 1 }
GROUP [3] { ROUTE = 1 }
GROUP [4] { ROUTE = 1 }
GROUP [5] { ROUTE = 1 }
GROUP [6] { ROUTE = 1 }
GROUP [7] { ROUTE = 1 }
GROUP [8] { ROUTE = 1 }
DIR [1] { NAME = "to 301" 1 4 }
DIR [2] { NAME = "to 302" 6 2 }
DIR [3] { NAME = "to 303" 5 3 7 }
DIR [4] { NAME = "to 304" 8 }
ROUTE [1] { NAME = "Test"
RECORD "1******" 1
RECORD "2******" 2
RECORD "3******" 3
RECORD "4******" 4
}
}
Пример 9.
>ccs7info
CCS7 Info:
CCS7[0]:
CCS7ID: 0 OPC: 100
linkSet[0]
linkSetID: 1, DPC: 202, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 4, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
SigLink[1]:
SyncPoint: Module: 10, PCM: 5, updateCountdown: 3
tetminalNotAvail, signallingAbsent, signallingOutOfService, …
linkSet[1]
linkSetID: 2, DPC: 203, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 6, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
SigLink[1]:
SyncPoint: Module: 10, PCM: 7, updateCountdown: 3
tetminalNotAvail, signallingAbsent, signallingOutOfService, …
SigLink[2]:
SyncPoint: Module: 10, PCM: 8, updateCountdown: 3
tetminalNotAvail, signallingAbsent, signallingOutOfService, …
linkSet[2]
linkSetID: 0, DPC: 201, SignallingLinks: 1, ActiveSignallingLinks: 0
sigRouteSize: 0
SigLink[0]:
SyncPoint: Module: 10, PCM: 1, updateCountdown: 3
tetminalNotAvail, signallingPresent, signallingOutOfService, …
SigLink[1]:
SyncPoint: Module: 10, PCM: 2, updateCountdown: 3
tetminalNotAvail, signallingAbsent, signallingOutOfService, …
SigLink[2]:
SyncPoint: Module: 10, PCM: 3, updateCountdown: 3
tetminalNotAvail, signallingAbsent, signallingOutOfService, …
routes: 11
Route[0]: DPC -> linksetID: 201 -> 0
Route[1]: DPC -> linksetID: 202 -> 1
Route[2]: DPC -> linksetID: 203 -> 2
Route[3]: DPC -> linksetID: 301 -> 0
Route[4]: DPC -> linksetID: 301 -> 1
Route[5]: DPC -> linksetID: 302 -> 2
Route[6]: DPC -> linksetID: 302 -> 0
Route[7]: DPC -> linksetID: 303 -> 1
Route[8]: DPC -> linksetID: 303 -> 0
Route[9]: DPC -> linksetID: 303 -> 2
Route[10]: DPC -> linksetID: 304 -> 2
Done



