Вы здесь

Cisco H.323 Gatekeeper. Теория

Gatekeeper - это важная часть средних и крупных H.323 VoIP Networks.
Главная функция Gatekeeper - это возможность масштабирования диалплана, что позволяет содержать диалплан в одном месте, а не распылять усилия на локальные устройства.

Основными функциями Gatekeeper являются:

  • Address translation - звонки, идущие от сети H.323 могут использовать alias или псевдоним. Gatekeeper может осуществлять трансляцию Calling party number или Called Party number в соответствии с принятым диалпланом. Например, при использовании в филиалах предприятия Partitioned addressing (Overlapping addressing) для доступа в регионы используются Site Codes, а также необходима трансляция Calling и Called номеров. Ну и конечно при выходе наружу нам нужно транслировать внутренний DN на внешне доступный номер.
  • Call Admission Control - не позволяет перегрузить сеть слишком большим количеством звонков. Например по определенному каналу CAC может разрешить только 10 одновременных звонков. В этом отличие CAC от QoS: QoS обеспечивает приоритезацию голосового трафика, а CAC регулирует количество голосового трафика.
  • Bandwidth control - при регистрации на Gatekeeper, endpoint указывает свой предпочитаемый кодек, тем самым регулируя затраты Bandwidth на свои звонки.
  • Zone management - работа Gatekeeper (address translation, admission
    control, bandwidth control) выполняется на основе принципа разделения на зоны.

Дополнительными функциями Gatekeeper являются:

  • Call authorization - ограничения на звонки например по времени дня.
  • Call management - Gatekeeper может воспринимать active call information, например понимать что абонент занят и автоматически перенаправить звонок.
  • Bandwidth management - Gatekeeper может запрещать установление соединения в случае недоступности необходимой полосы пропускания.
  • Call control signaling - Gatekeeper может позволить сигнализации H.225 либо идти непосредственно между endpoints, так и "проксировать" сигнализацию через себя к другому Gatekeeper (Gatekeeper-Routed Call Signaling (GKRCS) model)

cisco_h.323_gatekeeper._teoriya_basic_gatekeeper_scheme_ciscomaster.ru.jpg
При каждом запуске Endpoint пытается зарегистрироваться на Gatekeeper. Если Endpoint хочет позвонить на другую Endpoint, она, набирая номер, фактически запрашивает admission на инициирование звонка. Если Gatekeeper даёт разрешение, он возвращает этой Endpoint destination IP address.
Этот адрес есть либо фактический адрес destination endpoint, либо адрес посредника например proxy или gatekeeper.

Сигнализация Gatekeeper

Gatekeeper использует сигнализацию RAS (Registration, Admission, and Status).
RAS - это подмножество протокола H.225 и использует в качестве транспорта UDP.

Для инициации соединения между самими H.323 endpoints используется протокол H.225.
cisco_h.323_gatekeeper._teoriya_gatekeeper_signaling_ciscomaster.ru.jpg
Как показано на рисунке, изначально Gateway запрашивает admission, используя сигнализацию H.225 RAS (UDP). Эта сигнализация используется для взаимодействия с Gatekeeper и основными функциями этого канала являются Registration, Admission, и Status (RAS). Gatekeeper даёт "добро" и возвращает инициирующему шлюза IP адрес второго шлюза.

Далее уже между шлюзами устанавливается сигнализация H.225 Call Setup (TCP). H.225 позволяют создать соединение между H.323 endpoints. Для создания соединения должны быть выполнены call setup procedures, которые базируются на ISDN ITU Q.931.

Далее негоциируется H.245. H.245 это control signaling protocol, который используется для сигнализации и управления собственно самими потоками Аудио или Видео. H.245 использует отдельный logical channel 0, который всегда в открытом состоянии.
H.245 используется для таких функций как:
- Logical channel signaling - открывает/закрывает потоки RTP, RTCP
- Capabilities exchange - Негоциация аудио, видео, кодеков.
- Master or responder determination
- Mode request
Таким образом H.245 устанавливает и сопровождает и закрывает сессию звонка.

После того, как звонок между шлюзами установлен номера портов RTP UDP устанавливаются динамически из диапазона 16384–32767.

RAS Messages

Gatekeeper взаимодействует через RAS channel используя различные типы RAS messages.
Общий список сообщений ниже.
Gatekeeper Discovery
Gatekeeper Request (GRQ)
Gatekeeper Confirmation (GCF)
Gatekeeper Reject (GRJ)

Terminal and Gateway Registration
Registration Request (RRQ)
Registration Confirmation (RCF)
Registration Reject (RRJ)

Terminal and Gateway Unregistration
Unregistration Request (URQ)
Unregistration Confirmation (UCF)
Unregistration Reject (URJ)

Resource Availability
Resource Availability Indicator (RAI)
Resource Availability Confirmation (RAC)

Bandwidth
Bandwidth Request (BRQ)
Bandwidth Confirmation (BCF)
Bandwidth Reject (BRJ)

Location
Location Request (LRQ)
Location Confirmation (LCF)
Location Reject (LRJ)

Call Admission
Admission Request (ARQ)
Admission Confirmation (ACF)
Admission Reject (ARJ)

Disengage
Disengage Request (DRQ)
Disengage Confirmation (DCF)
Disengage Rejection (DRJ)

Request in Progress
Request in Progress (RIP)

Status
Info Request (IRQ)
Info Re