Стек SS7

Спецификация SS7 (Signalling System 7 – система сигнализации №7, ОКС7) была разработана CCITT. SS7 представляет собой общеканальную систему сигнализации. Это означает, что один из каналов используется для передачи сигнальной информации, независимо от количества поддерживаемых каналов передачи данных. Аппаратные и программные функции протокола SS7 поделены на уровни, близкие уровням эталонной модели OSI.

  • MTP-2 Message Transfer Part Level 2

  • MTP-3 Message Transfer Part Level 3

  • SCCP Signalling Connection Control Part

  • DUP Data User Part

  • ISUP ISDN User Part

  • TUP Telephone User Part

  • TCAP Transaction Capabilities Application Part

  • MAP Mobile Application Part

 На рисунке показано положение стека протоколов SS7 в эталонной модели OSI.

gif_26

Положение стека протоколов SS7 в эталонной модели OSI

MTP-3

Q.704 http://www.itu.ch/itudoc/itu-t/rec/q/q500-999/q704_27792.html

Протокол MTP-3 (Message Transfer Part Level 3 – сеть сигнализации, уровень 3) служит для подключения Q.SAAL к пользователям. MTP-3 передает сообщения между узлами сигнальной сети. Протокол обеспечивает надежную передачу сообщений даже при возникновении сбоев на сигнальных линиях или узлах транзитной передачи. Следовательно, протокол включает функции и процедуры, необходимые как для информирования удаленных узлов сигнальной сети о происходящих сбоях, так и для изменения маршрутизации сообщений в сигнальной сети.

Структура заголовка MTP-3 показана на рисунке.

Индикатор сервиса

Поле субсервиса

4 бита

4 бита

Структура заголовка MTP-3

Индикатор сервиса

Это поле используется для распределения сообщений, а также (в некоторых случаях) для маршрутизации сообщений. Индикаторы сервиса позволяют разделить сообщения различных типов, используемые в международных сигнальных сетях.

  • Управляющие сообщения сигнальной сети.
  • Сообщения тестирования и поддержки сигнальной сети.
  • SCCP (подсистема управления сигнальными соединениями).
  • Пользовательская часть телефонии.
  • Пользовательская часть ISDN
  • Передача данных
  • Зарезервировано для MTP-тестирования пользовательской части.
Поле субсервиса

Поле субсервиса содержит идентификатор сети, а также два отдельных бита для разделения национальных и международных сообщений.

MTP-2

Q.703 http://www.itu.ch/itudoc/itu-t/rec/q/q500-999/q703_24110.html

ANSI T1.111 199

MTP-2 (Message Transfer Part Level 2 – звено сигнализации, уровень 2) представляет собой сигнальный канал, совместно с MTP-3 обеспечивающий гарантированную передачу сообщений сигнализации между двумя непосредственно соединенными точками сигнализации.

Формат заголовка MTP-2 показан на рисунке.

Биты

7

8

Флаг

BSN (7 битов)

BIB

FSN (7 битов)

FIB

LI (6 + 2 бита)

SIO

SIF

Контрольная сумма (16 битов)

Флаг

 

Формат заголовка MTP-2

BSN

Обратный порядковый номер (backward sequence number), используемый для подтверждения приема сигнальных сообщений от удаленной стороны сигнального канала.

BIB

Обратный бит индикации (backward indicator bit). Прямой и обратный биты индикации совместно с прямым и обратным порядковыми номерами используются функциями контроля ошибок для проверки корректности порядка передачи сигнальных сообщений и подтверждения приема сообщений.

FSN

Прямой порядковый номер (forward sequence number).

FIB

Прямой бит индикации.

LI

Индикатор длины (length indicator) указывает количество октетов, следующих за этим индикатором.

SIO

Октет сервисной информации (service information octet).

SIF

Поле сигнальной информации (signalling information field).

Контрольная сумма

Каждый сигнальный элемент имеет 16-битовую контрольную сумму, используемую для обнаружения ошибок.

SCCP

Q.713 http://www.itu.ch/itudoc/itu-t/rec/q/q500-999/q713_23786.html

ANSI T1.112

Протокол SCCP (Signalling Connection Control Part – управление сигнальными соединениями) обеспечивает дополнение к сервису уровня MTP-3, позволяющее поддерживать сервис с организацией прямых соединений (connection-oriented) или без них (connectionless), а также реализовать возможности трансляции. SCCP совместно с MTP-3 обеспечивают реализацию функций сетевого уровня модели OSI.

Формат заголовка SCCP показан на рисунке.

Октеты

Метка маршрутизации

3-4

Код типа сообщения

1

Обязательная часть фиксированного размера

Обязательная часть переменного размера

Необязательная часть

Структура заголовка SCCP

Метка маршрутизации

Стандартная метка маршрутизации.

Код типа сообщения

Однооктетное поле, которое является обязательным для всех сообщений. Код типа сообщения уникально определяет назначение и формат каждого сообщения SSCP.

Ниже приведены возможные значения кодов типа сообщения:

CR Connection Request (запрос соединения)

CC Connection Confirm (подтверждение соединения)

CREF Connection Refused (отказ от соединения)

RLSD Release (разъединение)

RLC Release Complete (завершение разъединения)

DT1 Data Form 1 (данные, форма 1)

DT2 Data Form 2 (данные, форма 2)

AK Data Acknowledgement (подтверждение данных)

UDT Unidata

UDTS Unidata Service

ED Expedited Data (“ускоренные” данные)

EA Expedited Data Acknowledgement (подтверждение «ускоренных» данных)

RSR Reset Request (запрос сброса)

RSC Reset Confirm (подтверждение сброса)

ERR Protocol Data Unit Error (ошибка PDU)

IT Inactivity Test (проверка отсутствия активности)

XUDT Extended Unidata

XUDTS Extended Unidata Service

Обязательная часть фиксированного размера

Эта часть сообщения является обязательной и имеет фиксированную длину для сообщений каждого типа.

Обязательная часть переменного размера

Эта часть сообщения содержит обязательные и имеет переменную длину. Имена и порядок следования элементов данного поля определяются типом сообщения.

Необязательная часть

Данное поле содержит параметры, которые могут присутствовать, но не являются обязательными для данного типа сообщения. Поле может включать в себя параметры как фиксированной, так и переменной длины. Дополнительные поля могут передаваться в любом порядке. Каждое поле включает имя (один октет) и индикатор длины (один октет), после чего следует значение параметра.

DUP

ITU-T recommendation X.61 (Q.741)

http://www.itu.int/itudoc/itu-t/rec/q/q500-999/q741.html

Протокол DUP (Data User Part — пользовательские данные) определяет элементы, необходимые для управления вызовами, регистрации и отказа в международной общеканальной сигнализации при использовании SS7 в качестве сервиса передачи данных на основе коммутации устройств. Сигнальные сообщения делятся на две категории:

  • Сообщения, связанные с вызовами и устройствами, используются для организации и разрыва соединений, а также для контроля и управления состоянием устройств.
  • Сообщения, связанные с процедурами регистрации и отмены, используются для обмена информацией между станциями отправителя и получателя для регистрации или отмены операций, связанных с пользовательскими функциями.

Общий формат заголовков сообщений, связанных с вызовами и управлением устройствами, показан на рисунке.

Биты

8

14

16

28

32

DPS

OPC

BIC

BIC

TSC

HC

Параметры

 

Структура сообщений, связанных с вызовами и управлением устройствами

Общий формат заголовка сообщений, относящихся к процессам регистрации и отмены, показан на рисунке.

Биты

8

14

16

28

32

DPS

OPC

Резерв

HC

Параметры

 

Структура сообщений, относящихся к процессам регистрации и отмены

Метка маршрутизации

Метки содержатся в сигнальных сообщениях и используются протоколом DUP для идентификации процесса, к которому относится сообщение. Метки используются также при передаче сообщений (message transfer part) для маршрутизации сообщений в направлении адресатов. Метка маршрутизации содержит поля DPS, OPC, BIC и TSC.

DPS

Код точки назначения (Destination Point code).

OPC

Код точки-отправителя (Originating Point Code).

BIC

Код идентификации владельца (Bearer Identification Code).

TSC

Код временного интервала (Time Slot Code).

HC

Код заголовка (heading code), содержащий код типа сообщения, который обязателен для всех типов сообщений. HC уникально идентифицирует назначение и формат каждого сообщения DUP.

Параметры

Параметры включают поля, характерные для каждого сообщения. Размер параметров не фиксирован.

Резерв

Это поле не используется и должно иметь значение 0000.

ISUP

Q.763 http://www.itu.int/itudoc/itu-t/rec/q/q500-999/q763_23976.html

Протокол ISUP представляет собой пользовательскую часть ISDN в протоколе SS7. ISUP определяет процедуры организации, поддержки и разрыва для транковых соединений, используемых для передачи голоса и данных через коммутируемые телефонные сети общего пользования. Протокол может использоваться как для соединений ISDN, так для отличных от ISDN вызовов. Соединения в пределах одного коммутатора не использует сигнализации ISUP. Сообщения пользовательской части ISDN передаются через сигнальные каналы посредством сигнальных элементов. Информационное поле сигнального элемента содержит сообщение пользовательской части ISDN.

Формат пакетов ISUP показан на рисунке.

Октеты

Метка маршрутизации

3-4

Идентификатор канала

2

Код типа сообщения

1

Обязательная часть фиксированного размера (параметры)

Обязательная часть переменного размера (параметры)

Необязательная часть (параметры)

Структура пакета ISUP

Метка маршрутизации

Метки маршрутизации содержатся в сигнальных сообщениях и используются соответствующей пользовательской частью для идентификации процессов, с которыми связано сообщение. Метки используются также при передаче сообщений MTP для маршрутизации сообщений в направлении адресатов.

Идентификатор канала

Выделение идентификаторов отдельным каналам определяется двухсторонним соглашением (между участниками соединения) и/или в соответствии с применимыми предопределенными правилами.

Код типа сообщения

Однооктетное обязательное поле для всех сообщений. Код типа сообщения однозначно определяет назначение и формат каждого сообщения ISUP. Ниже приведены возможные значения этого поля.

  • Address complete
  • Answer
  • Blocking
  • Blocking acknowledgement
  • Call progress
  • Circuit group blocking
  • Circuit group blocking acknowledgement
  • Circuit group query @
  • Circuit group query response @
  • Circuit group reset
  • Circuit group reset acknowledgement
  • Circuit group unblocking
  • Circuit group unblocking acknowledgement
  • Charge information @
  • Confusion
  • Connect
  • Continuity
  • Continuity check request
  • Facility @
  • Facility accepted
  • Facility reject
  • Forward transfer
  • Identification request
  • Identification response
  • Information @
  • Information request @
  • Initial address
  • Loop back acknowledgement
  • Network resource management
  • Overload @
  • Pass-along @
  • Release
  • Release complete
  • Reset circuit
  • Resume
  • Segmentation
  • Subsequent address
  • Suspend
  • Unblocking
  • Unblocking acknowledgement
  • Unequipped CIC @
  • User Part available
  • User Part test
  • User-to-user information
Параметры

Каждый параметр имеет имя размером в один октет. Размер параметра может быть фиксированным или переменным и для каждого параметра может включаться индикатор длины.

ISUP

Пример декодирования ISUP

TUP

ITU-T recommendation Q.723

http://www.itu.int/itudoc/itu-t/rec/q/q500-999/q763_23976.html

Протокол TUP (Telephone User Part – телефония, пользовательская часть) ОКС7 передает сигнальные элементы по каналам сигнализации. Сигнальная информация в каждом сообщении содержит соответствующие сигналы, собранные в октеты. Сообщение содержит метку, код заголовка, а также один или несколько сигналов и/или индикаторов. Каждый из перечисленных элементов описан ниже.

Формат метки показан на рисунке.

Биты

DPC

14

OPC

14

CIC

12

 

Формат метки TUP

DPC

Код точки назначения (destination point code), указывающий точку в системе сигнализации, для которой предназначено данное сообщение.

OPC

Код точки отправления (originating point code), указывающий точку в системе сигнализации, отправившую данное сообщение.

CIC

Код идентификации канала (circuit identification code) указывает голосовой канал, непосредственно соединяющий точки назначения и отправления.

Код заголовка состоит из двух частей — H0 и H1. H0 идентифицирует указанную группу сообщений, а H1 содержит код сигнализации или (для более сложных сообщений) идентифицирует формат этих сообщений.

TCAP

ITU-T recommendation Q.773

http://www.itu.int/itudoc/itu-t/rec/q/q500-999/q773_24880.html

Протокол TCAP (Transaction Capabilities Application Part – управление транзакциями) обеспечивает возможность реализации интеллектуальных сетевых услуг посредством поддержки обмена информацией между сигнальными точками, использующими сервис SCCP, без организации прямых соединений. Сообщения TCAP содержатся в MSU (SCCP-часть). Сообщение TCAP включает в себя две части — транзакция и компонента.

Сообщение TCAP является единым информационным элементом, состоящим из нескольких частей — транзакция содержит информационные элементы, используемые подуровнем транзакций; компонента содержит информационные элементы, используемые подуровнем компонент; необязательная часть «диалог», содержит пользовательскую информацию и контекст приложений, не являющиеся компонентами. Каждая компонента является набором информационных элементов.

Тег

Длина

Содержимое

 

Структура пакета TCAP

Информационный элемент

Поле информационного элемента сначала обрабатывается в соответствии с его позицией в сообщении. Все информационные элементы сообщений TCAP имеет одинаковую структуру. Информационный элемент содержит три поля, расположенных в показанном ниже порядке.

Тег

Тег служит для разделения информационных элементов и определяет интерпретацию компонент. Размер тега может составлять один или несколько октетов. Поле тега состоит из кодов класса, формы и тега.

Длина

Указывает размер поля содержимого.

Содержимое

Поле содержит экземпляр элемента, содержащий (в свою очередь) основной информационный элемент, который нужно передать.

Типы пакетов TCAP

Существуют следующие типы пакетов TCAP.

Unidirectional (однонаправленный)

Query with permission (запрос с разрешением)

Query without permission (запрос без разрешения)

Response (отклик)

Conversation with permission (диалог с разрешением)

Conversation without permission (диалог без разрешения)

Abort (прерывание)

MAP

EIA/TIA-41 http://www.tiaonline.org

Сообщения MAP (Mobile Application Part – мобильные приложения) передаются между мобильными коммутаторами и базами данных для поддержки аутентификации пользователей, идентификации оборудования и роуминга. Сообщения MAP передаются с помощью протокола TCAP в мобильных сетях (IS-41 и GSM). Когда пользователь мобильной связи перемещается в зону обслуживания другого мобильного центра коммутации MSC (mobile switching center), встроенный регистратор местоположения пользователей запрашивает регистрационную информацию у регистратора, к которому приписан данный пользователь (home location register — HLR). Для таких запросов используется информация MAP, передаваемая в сообщениях TCAP.

Пакет MAP состоит из заголовка, за котором может следовать до 4 информационных элементов. Общий формат заголовка показан на рисунке. Поля типа операции и длины являются частями сообщения TCAP, содержащего MAP.

Биты

8

16

Тип операции

Длина

Информационные элементы

Структура заголовка MAP

Тип операции

Необязательное поле, указывающее тип пакета. Поддерживаются следующие значения типов операций:

  • AuthenticationDirective
  • AuthenticationDirectiveForward
  • AuthenticationFailureReport
  • AuthenticationRequest
  • AuthenticationStatusReport
  • BaseStationChallenge
  • Blocking
  • BulkDeregistration
  • CountRequest
  • FacilitiesDirective
  • FacilitiesDirective2
  • FacilitiesRelease
  • FeatureRequest
  • FlashRequest
  • HandoffBack
  • HandoffBack2
  • HandoffMeasurementRequest
  • HandoffMeasurementRequest2
  • HandoffToThird
  • HandoffToThird2
  • InformationDirective
  • InformationForward
  • InterSystemAnswer
  • InterSystemPage
  • InterSystemPage2
  • InterSystemSetup
  • LocationRequest
  • MobileOnChannel
  • MSInactive
  • OriginationRequest
  • QualificationDirective
  • QualificationRequest
  • RandomVariableRequest
  • RedirectionDirective
  • RedirectionRequest
  • RegistrationCancellation
  • RegistrationNotification
  • RemoteUserInteractionDirective
  • ResetCircuit
  • RoutingRequest
  • SMSDeliveryBackward
  • SMSDeliveryForward
  • SMSDeliveryPointToPoint
  • SMSNotification
  • SMSRequest
  • TransferToNumberRequest
  • TrunkTest
  • TrunkTestDisconnect
  • Unblocking
  • UnreliableRoamerDataDirective
  • UnsolicitedResponse
Длина

Длина пакета.

Информационные элементы

Информационные элементы, состав которых зависит от указанной операции.