Процедура соединения по H.323
Рассмотрим по шагам сценарий установления соединения между двумя терминалами H.323 без использования контроллера зоны (рис.6.5).
- Оконечный пункт A (вызывающая сторона) соединяется с оконечным пунктом B (вызываемая сторона) и посылает сообщение Setup (установка, как определено в H.225.0), включающее тип вызова (например, только звуковые сигналы), номер вызываемой и вызывающей стороны и адрес.
Рис. 6.5. Сценарий установки соединения по протоколу H.323
- Оконечный пункт B откликается сообщением уведомления (Alerting). Оконечный пункт A должен принять это сообщение прежде, чем истечет время, отведенное на установку.
- Когда пользователь в оконечном пункте B отвечает на вызов (снимает трубку), сообщение Connect (соединение) передается в оконечный пункт A.
- Оба терминала передают информацию о своих возможностях (типы среды, выбор кодека и информация о мультиплексировании) в сообщении TerminalCapabilitySet (установка возможностей терминала).
- Каждый терминал отвечает сообщением TerminalCapabilitySetAck (подтверждение установки возможностей терминала). В случае если удаленный оконечный пункт не обладает какими-то возможностями, будет передано сообщение TerminalCapabilitySetReject (отклонение установки возможностей терминала), и терминалы продолжат передавать эти сообщения, пока не определят, что устанавливаемые возможности поддерживаются обоими оконечными пунктами.
- Каждый терминал передает сообщение H.245 OpenLogicalChannel (открыть логический канал), позволяющее открыть логический канал с удаленным оконечным пунктом, чтобы настроить речевые каналы, по которым будет производиться обмен мультимедийными потоками.
- В случае готовности к приемке данных каждый терминал передает OpenLogicalChannelAck (подтверждение открытия логического канала) в удаленный оконечный пункт, определяя номер порта, на который удаленному оконечному пункту следует передавать данные RTP, и номер порта, на который следует передавать данные RTCP удаленному оконечному пункту.
- Оконечные пункты обмениваются информацией в пакетах RTP. Во время этого обмена передаются пакеты RTCP для контроля качества передачи данных.
- Когда оконечный пункт A дает отбой (вешает трубку), он должен передать сообщение H.245 CloseLogicalChannel (закрыть логический канал) для каждого канала, открытого с оконечным пунктом B.
- Оконечный пункт B отвечает сообщением CloseLogicalChannelAck (подтверждение закрытия логического канала).
- Оконечный пункт A посылает команду H.245 EndSessionCommand (команда завершения сеанса) и закрывает канал после приема такого же сообщения от оконечного пункта B.
- Оба терминала посылают сообщение H.225.0 ReleaseComplete (освобождение завершено) по каналу сигнализации вызова, которое закрывает канал и завершает соединение.