Протокол разрабатывался 16-й группой ITU-T с 1997 года по 2000 год и был утверждён 15 июня 2000 года.
Стандартизован рекомендациями ITU-T с H.248.1 (основное описание протокола) по H.248.88 (наборы пакетов).
Аналогичный протокол, разработанный IETF в 2000 году и дополненный в 2003 имел название MEGACO (RFC 3015 и RFC 3525). Многие черты MEGACO получил от протокола управления шлюзами MGCP.
В 2008 году специалисты IETF в RFC 5125 перевели MEGACO (и соответствующий RFC 3525) в статус исторического наследия, оставив приоритет за стандартом H.248.
Принципы работы
Архитектура
Стандарт H.248.1 международного совета электросвязи (ITU) даёт следующие определения типов устройств, которые используются в протоколе:
Шлюз доступа (Access Gateway) - шлюз, который предоставляет интерфейс типа пользователь-сеть (User-Network Interface), например такой как ISDN.
Медиашлюз (Media Gateway, MG) - устройство которое преобразует медиаданные, предоставленные в сети одного типа, в формат, необходимый для сети другого типа. Например, MG может завершать однонаправленные каналы из сети с коммутацией каналов (такие как DS0) и медиапотоки из сети с коммутацией пакетов (потоки RTP в IP-сети). Этот шлюз может обрабатывать аудио, видео и ITU-T T.120 по отдельности или в любой комбинации, а также может выполнять полнодуплексную, т.е. двустороннюю передачу медиаданных. Медиашлюза также может воспроизводить аудио / видео сообщения и выполнять другие функции IVR или может поддерживать мультимедийные конференции.
Контроллер медиашлюзов (Media Gateway Controller, MGC) - устройство или приложение, управляющее соединением и состоянием вызова посредством управления медиа-каналами в медиашлюзе.
Шлюз сигнализации SCN FAS (SCN FAS Signalling Gateway, SG) - эта функция содержит интерфейс сигнализации SCN, который завершает ОКС-7, ISDN или другие каналы сигнализации, где канал управления вызовом и каналы передачи данных расположены в одном и том же физическом диапазоне.
Домашний шлюз (Residential Gateway) - аппаратный шлюз, который соединяет аналоговую линию с пакетной сетью. Residential Gateway обычно содержит одну или две аналоговые линии для подключения телефонных аппаратов и расположен в помещении клиента.
Многоточечный блок управления (Multipoint Control Unit, MCU) - сущность или объект, управляющий настройкой и координацией многопользовательской конференции, которая обычно включает в себя обработку аудио, видео и данных.
Дескриптор (descriptor) - синтаксический элемент протокола, который группирует связанные свойства. Например, свойства медиапотока в медиа-шлюзе могут быть установлены MGC путем включения соответствующего дескриптора в команду.
Фактически, ключевыми устройствами в H.248 являются контроллер (MGC) и медиашлюз (MG). Основные сущности, которыми они оперируют в рамках взаимодействия - это контексты (context) и окончания (termination).
Окончания (termination)
Эти источники или приемники одного или нескольких медиапотоков или управляющих потоков. Окончание может быть физическим или эфемерным (временным / виртуальным).
Контексты
Это звездообразные соединения, созданные путем объединения нескольких окончаний. Контекст - логический объект в медиашлюзе, который является ассоциацией между набором окончаний. НУЛЕВОЙ контекст содержит все несвязанные окончания. ContextID идентифицирует контекст.
Нормальный, «активный» контекст может иметь физическое оконечный (скажем, один DS0 в DS3) и одно временное (RTP-поток, соединяющий шлюз с сетью). Контексты создаются и освобождаются MG под управлением контроллером медиашлюзов (MGC). Контекст создается путем добавления первого завершения и освобождается путем удаления (вычитания) последнего завершения.
Окончание может иметь более одного потока, и поэтому контекст может быть многопоточным. Потоки аудио, видео и данных могут разделяться в контексте между несколькими окончаниями.
Сообщения и команды H.248
Контроллер медиашлюзов всегда сам управляет медиа-каналами, доступными на медиашлюзе посредством управления конкретными контекстами и окончаниями. При изменении состояния вызова, MGC отправляет соответствующее сообщение на шлюз и ожидает подтверждения.
Каждое сообщение является транспортным механизмом передачи команд, а не самой командой, в отличие от большинства прочих телекоммуникационных протоколов.
Команды протокола:
Add
Move
Subtract
Notify
Modify
AuditValue
AuditCapabilites
ServiceChange
Типовой сценарий обмена сообщениями в рамках вызова