Литмир - Электронная Библиотека

Любой из упомянутых выше факторов может сделать время ожидания неприемлемым, поэтому конференц-связь в реальном времени требует внимания к каждому из них. Краткий обзор IP-телефонии и анализ этих факторов см. в Goode (2002).

Теперь, когда мы обсудили проблему времени ожидания для потокового мультимедиа, мы перейдем к другой важной проблеме систем проведения конференций. Это проблема того, как устанавливать и прекращать вызовы. Мы рассмотрим два протокола, которые широко используются для этой цели — H.323 и SIP. Skype — это ещё одна важная система, но его внутреннее устройство закрыто.

H.323

Еще до того как голосовые и видеозвонки стали совершаться при помощи Интернета, всем было понятно, что если каждый производитель станет изобретать собственный стек протоколов, система никогда работать не будет. Во избежание возникновения этой проблемы заинтересованные стороны объединились под покровительством Международного союза телекоммуникаций (ITU) и начали разработку единого стандарта. В 1996 году ITU выпустил рекомендации с индексом H.323 под заголовком «Видеотелефонные системы и оборудование локальных вычислительных сетей, не предоставляющих гарантированное качество обслуживания». Такое название могло родиться только в телефонной индустрии. Данные рекомендации были пересмотрены в 1998 году, и новый вариант H.323 стал носить название «Системы мультимедиа-коммуникаций, основанные на пакетах».

H.323 скорее дает общее представление об архитектуре систем интернет-телефонии, нежели описывает некий конкретный протокол. В документе можно найти множество ссылок на различные специализированные протоколы кодирования речи, установки соединения, передачи сигналов, данных и т. п., однако их описание не приводится. Общая модель изображена на рис. 7.33. В центре находится шлюз (gateway), соединяющий Интернет с телефонной сетью. Он поддерживает протокол H.323 со стороны Интернета и протоколы коммутируемой телефонной сети общего пользования с «телефонной» стороны. Коммуникационные устройства называются терминалами. В локальной вычислительной сети может быть машина-привратник (gatekeeper), управляющая конечными узлами, находящимися под ее юрисдикцией (в ее зоне).

Работу телефонной сети обеспечивает множество протоколов. Во-первых, необходим протокол кодирования и декодирования аудио и видео. Стандартное телефонное представление одного голосового канала кодируется как цифровое аудио с потоком 64 Кбит/с (8 бит на отсчет с частотой 8000 раз в секунду), что определено в G.711. Все системы H.323 обязаны поддерживать G.711. Тем не менее разрешена (но не является обязательной) поддержка и других протоколов кодирования речи. Они используют

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

Компьютерные сети. 5-е издание - _431.jpg

Поскольку разрешено использование нескольких алгоритмов сжатия, необходим отдельный протокол, который позволил бы терминалам договориться об использовании одного из этих протоколов. Такой протокол называется H.245. Он позволяет согласовать также другие параметры соединения, например битовую скорость. RTCP требуется для управления каналами RTP. Кроме того, нужны протоколы для установления и разрыва соединений, обеспечения тонального вызова, генерирования звуков звонков и других стандартных функций телефонной системы. Используется стандарт ITU Q.931. Терминалам нужен протокол для ведения переговоров с машиной-привратником (если оный присутствует в локальной сети). Для этого в системе работает протокол H.225. Канал между ПК и привратником, которым этот протокол управляет, называется каналом RAS (Registration/Admission/Status Регистрация/Доступ/ Статус). Он позволяет терминалам, кроме всего прочего, входить в зону и покидать ее, запрашивать и освобождать пропускную способность, обновлять данные о состоянии и т. п. Наконец, нужен протокол для непосредственной передачи данных. На этом участке работает RTP через UDP. Как обычно, управляется он RTCP. Иерархия всех этих протоколов показана на рис. 7.34.

Компьютерные сети. 5-е издание - _432.jpg

Рис. 7.34. Стек протоколов H.323

Чтобы понять, как эти протоколы взаимодействуют друг с другом, рассмотрим случай персонального компьютера (ПК), являющегося терминалом локальной сети (с привратником) и звонящего на удаленный телефон. Вначале компьютеру нужно найти привратника, поэтому он рассылает широковещательным образом специальный UDP-пакет через порт 1718. Из ответа привратника ПК узнает его IP-адрес. Теперь компьютер должен зарегистрироваться у привратника. Для этого он посылает ему сообщение RAS в пакете UDP. После регистрации компьютер обращается к привратнику с просьбой (сообщение доступа RAS) о резервировании пропускной способности. Только после выделения этого ресурса можно начинать установку соединения. Предварительное резервирование пропускной способности позволяет привратнику ограничить число соединений, устанавливаемых на исходящей линии, что, в свою очередь, служит для обеспечения необходимого качества обслуживания.

Строго говоря, телефонные системы выполняют ту же работу. Когда вы поднимаете трубку, на местный абонентский пункт отсылается сигнал. Если на пункте достаточно мощности для обработки еще одного звонка, он генерирует непрерывный гудок. В ином случае вы ничего не услышите. На сегодняшний день размер системы настолько велик, что вы практически всегда услышите непрерывный гудок, но раньше, когда телефония только зарождалась, на это почти всегда требовалось несколько секунд. Так что если ваши внуки когда-нибудь спросят, зачем нужны непрерывные гудки до начала набора, теперь вы будете знать, что им ответить. Хотя к тому времени стационарных телефонов, скорее всего, не останется.

Теперь ПК устанавливает TCP-соединение с привратником, чтобы осуществить телефонный звонок. При установлении телефонного соединения используются традиционные протоколы телефонной сети, ориентированные на соединение. Поэтому требуется протокол TCP. С другой стороны, в телефонной системе нет никаких RAS, которые позволяли бы телефонным аппаратам заявлять о своем присутствии, поэтому разработчики H.323 могли применять как UDP, так и TCP для передачи сообщений RAS, и они выбрали протокол с наименьшими накладными расходами — UDP.

Когда терминалу уже выделена пропускная способность, он может послать по TCP-соединению сообщение SETUP (стандарт Q.931). В нем указывается номер вызываемого абонента (или IP-адрес и порт, если вызывается удаленный компьютер). Привратник отвечает 0,.931-сообщением CALL PROCEDING, подтверждая тем самым факт корректного приема запроса. Затем привратник пересылает сообщение SETUP на шлюз.

Шлюз, который является, с одной стороны, компьютером, а с другой — телефонным коммутатором, осуществляет обычный звонок на обычный телефон. Оконечная телефонная станция вызываемого абонента выполняет свою обычную работу (у абонента звенит звонок), а кроме этого отсылает обратно 0,.931-сообщение ALERT, извещая ПК о том, что началась серия звонков. Когда абонент поднимает трубку, оконечная телефонная станция отправляет сообщение CONNECT, сообщая компьютеру о том, что соединение установлено.

После установления соединения привратник перестает принимать участие в этом процессе, хотя шлюз, конечно, продолжает работать, обеспечивая двустороннюю связь. Пакеты идут в обход привратника и направляются напрямую по IP-адресу шлюза. Такую ситуацию можно сравнить с обычным каналом между двумя сторонами. Это действительно просто соединение физического уровня, по которому передаются биты, и все. Ни одна из сторон не в курсе того, что представляет собой противоположная сторона.

257
{"b":"639789","o":1}