Сети речевой связи – и операторские, и корпоративные, – основанные на технологии VoIP, получили уже довольно широкое распространение, но друг с другом они связываются как правило через шлюзы и телефонную сеть общего пользования. Связать их напрямую мешает ряд проблем, решить которые призван новый класс систем – пограничные сеансовые контроллеры, SBC.
На первом этапе своего существования технология VoIP рассматривалась по преимуществу как "транспортное средство", позволяющее снизить стоимость дальней телефонной связи за счет пропуска "дорогого" телефонного трафика (т.е. идущего из телефонной сети общего пользования – ТФоП) по "дешевым" интернет-каналам. Появление достаточно совершенных IP PBX сделало очевидным другое ее достоинство: на предприятии или в учреждении, где имеется локальная вычислительная сеть (а сейчас трудно представить себе предприятие без нее), эту сеть можно использовать и для передачи данных, и для передачи голоса, вместо того чтобы поддерживать две отдельные сети – локальную и телефонную, как принято сейчас. Соответственно значительно упрощается и удешевляется инфраструктура, повышается ее управляемость, сокращается штат обслуживающего персонала и т.д.
Если компания имеет несколько офисов, объединенных общей корпоративной сетью передачи данных (скажем, широкополосной операторской IP-VPN), то объединение их IP-телефонных сетей не составит проблемы. Более того, ничто не мешает непосредственно соединить и сети VoIP совершенно разных предприятий, сотрудники которых по тем или иным причинам часто звонят друг другу; тогда межофисные звонки не будут проходить через ТФоП и их не придется подвергать двукратному преобразованию протоколов VoIP – TDM. Прямое соединение VoIP – VoIP, без "захода" в ТФоП, проще, качественнее, дешевле, позволяет сотрудникам пользоваться сокращенным набором номера и обеспечивает ряд других удобств.
Но на практике сегодня, как правило, даже между двумя IP PBX звонки осуществляются через ТФоП: при подключении к разным операторам предприятия имеют возможность интегрировать некоторые свои приложения, но IP-телефония редко принадлежит к их числу. Образно выражаясь, в своем нынешнем состоянии сети IP-телефонии представляют собой острова в океане ТФоП, и объединить их, несмотря на универсальность протокола IP, далеко не просто.
Главный источник трудностей – отсутствие наработанного опыта, поскольку IP-телефония является первым и пока единственным массовым IP-сервисом реального времени (видеоконференции, а также потоковые аудио- и видеосервисы еще не получили достаточно широкого распространения, хотя в будущем это наверняка произойдет). Она принесла в мир IP-коммуникаций специфические требования, которые не были актуальны для традиционных интернет-сервисов – HTTP, FTP, электронной почты. Конкретные проблемы, с которыми сталкиваются операторы VoIP при попытке организовать прямое межсетевое IP-телефонное взаимодействие, связаны с более жесткими требованиями к надежности и безопасности, с необходимостью защитить собственные финансовые интересы, с неполной совместимостью оборудования.
Если на ситуацию взглянуть с точки зрения эталонной модели OSI, мы увидим, что маршрутизация IP-пакетов, содержащих телефонную сигнализацию и сами разговоры (медиатрафик), осуществляется на третьем, сетевом уровне модели с помощью IP-маршрутизаторов, в то время как собственно телефонное взаимодействие – на пятом, сеансовом (не случайно мы по-русски обычно говорим "сеанс связи") с помощью устройств, которые называют VoIP-коммутаторами (softswitches). При этом IP-маршрутизатор не может обеспечить такие "телефонные" функции, как:
контроль доступа к тем или иным телефонным номерам (не IP-адресам) в смысле возможности позвонить на них;
трансляция телефонных номеров (например, префиксов международной связи);
маршрутизация звонков (это вовсе не то же самое, что маршрутизация IP-пакетов);
проксирование IP-телефонного трафика: IP-маршрутизатор не "видит" содержимого IP-пакетов – он работает только с их заголовками;
контроль качества обслуживания с учетом собственно телефонных параметров.
В свою очередь, VoIP-коммутатор ничего не "знает" ни про параметры медиаканала (задержка, джиттер, потери пакетов), потому что они "видны" как раз на третьем уровне модели OSI, ни про особенности работы IP-сети.
Отсюда вытекает необходимость в специальных устройствах, функционирующих одновременно и на пятом, сеансовом уровне OSI, и на третьем, сетевом, и "понимающих" логику работы как телефонной, так и IP-сети. О них и пойдет речь в данной статье.
Для чего служат SBC
На рис. 1 и 2 приведены две схемы организации операторской сети IP-телефонии: первая отражает представления годичной давности, вторая – современные.
В обоих случаях мы видим централизованную сеть, логикой работы которой управляет VoIP-коммутатор (softswitch), но во втором по ее периметру установлены специальные функциональные элементы, обозначающие (или, лучше сказать, образующие) сам этот периметр. Название для них еще не вполне устоялось: используются термины "пограничные устройства" (Edge Devices), "сеансовые контроллеры" (Session Controllers), но чаще всего – "пограничные сеансовые контроллеры" (Session Border Controllers, SBC). Такие устройства выпускаются рядом производителей как на Западе, так и в России.
Начнем с определения. SBC: это элемент IP-сети, который отвечает за ее взаимодействие с другими сетями с точки зрения работы сервисов реального времени и обеспечивает безопасность, надежность и управляемость такого взаимодействия. В настоящее время SBC используются в основном в операторских сетях IP-телефонии, хотя со временем они, по-видимому, должны стать стандартным способом соединения любых IP-сетей, предоставляющих услуги сервисов реального времени.
Основные функции SBC таковы:
управление сигнализацией и медиатрафиком на стыке сетей, управление соглашениями об уровне сервиса (SLA) и контроль их выполнения;
обеспечение протокольной и межпротокольной интероперабельности для сигнализации и для медиапотока;
управление доступом к телефонным номерам (Call Admission Control, CAC);
проксирование сигнализации и медиатрафика, позволяющее скрыть структуру внутренней сети от внешего мира и наоборот, сделать внешние связи «невидимыми» изнутри;
обеспечение безопасности – работа с системами трансляции сетевых адресов (NAT) и межсетевыми экранами, создание возможности легального прослушивания разговоров (СОРМ);
преобразование кодеков и любые другие операции с медиатрафиком;
концентрация трафика;
в крупных иерархических сетях;
управление качеством обслуживания (QoS).
Разберем их подробнее.
Обмен валюты
Пересекая границу между двумя странами, человек обменивает имеющиеся у него деньги – разумеется, это нужно только в тех случаях, когда валюты одной и другой страны не совпадают. Точно так же на границе двух сетей может потребоваться преобразование протоколов. Для IP-телефонии такая необходимость обусловлена несколькими причинами.
Первая заключается в том, что самый популярный IP-телефонный протокол H.323, применяемый сегодня в большинстве операторских и корпоративных сетей, основан на наборе рекомендаций Международного союза электросвязи, не гарантирующем интероперабельности. Иначе говоря, работающие по этому протоколу устройства двух разных производителей вполне могут оказаться – и часто действительно оказываются – несовместимыми. Внутри одной сети проблема решается использованием аппаратуры только одного производителя (гетерогенных IP-телефонных сетей практически нет); операторы, подключающие корпоративные сети VoIP, могут настаивать на том, чтобы клиент использовал определенное оборудование. Но при соединении операторских сетей единственно возможным решением будет преобразование протоколов.
Вторая причина, по которой бывает нужно такое преобразование, состоит в том, что в некоторых сетях IP-телефонии уже используется новый протокол SIP – соответственно необходимо обеспечить взаимодействие между сетями SIP и H.323.
Преобразование может понадобиться и для медиапотока, например, если в соединяемых сетях используются разные кодеки. Во всех таких случаях SBC сможет устранить нестыковки и обеспечить прохождение через границу сетей как сигнализации, так и медиапотока VoIP.
Контроль общей и финансовой безопасности
Граница, как известно, должна быть на замке, чтобы через нее не перебрался шпион и не разведал каких-либо государственных секретов. Охраняемым секретом IP-сетей является их внутренняя структура: во избежание возможных злоупотреблений ее принято скрывать, для внешнего мира представляя всю сеть единственным адресом прокси-сервера. Это точно так же актуально и для сетей IP-телефонии, поэтому SBC функционируют как единая точка входа и выхода сигнализации и медиапотока. Просмотр IP-адресов пакетов не даст внешнему наблюдателю никакой информации об их передвижениях в сети – он увидит только адрес SBC. И, так как пограничный контроллер является точкой, через которую обязательно проходит весь трафик, он сможет предотвратить (например, при DoS-атаке) опасную перегрузку центрального IP-телефонного коммутатора (softswitch).
Необходимо, кроме того, обеспечить беспрепятственное прохождение нужного трафика. Практически во всех IP-сетях конечные пользователи сейчас работают через NAT или брандмауэр (межсетевой экран, firewall), а это означает, что входящие мультимедийные соединения по умолчанию запрещены. На SBC можно возложить взаимодействие с брандмауэром: он будет поддерживать в открытом состоянии порты для сигнализации и динамически управлять портами для медиапотока.
В сетях VoIP требуется скрывать не только внутреннюю структуру, но и внешние межоператорские связи. Это может понадобиться для сохранения коммерческой тайны. Так, иногда важно не дать двум партнерам узнать адреса друг друга. Рассмотрим следующий пример.
Представим себе московского оператора связи, имеющего партнеров во Вьетнаме и в США. В какой-то момент он обнаруживает, что тарифы его вьетнамского партнера значительно ниже тех, которыми пользуется для связи с Вьетнамом партнер в Америке. Оператор решает перепродать трафик вьетнамца американцу и заработать как посредник – такая практика широко распространена, транзитный бизнес – один из самых быстрорастущих в сегодняшних телекоммуникациях. Однако если два его партнера узнают адреса друг друга, они смогут договориться напрямую. Сделать это совсем не сложно, поскольку в IP-телефонии маршруты IP-пакетов с сигнализацией и с медиатрафиком не обязаны совпадать. И если IP-пакеты с сигнализацией в данном случае проходят через сеть посредника, то после установления связи RTP-пакеты, содержащие сам разговор, могут быть направлены по более прямому пути – скорее всего непосредственно от шлюза вьетнамского оператора к шлюзу американского и наоборот. Соответственно любой из них, изучив IP-адреса на этих пакетах, без труда определит партнера "с той стороны". Имея SBC, который является единой точкой входа для обоих видов телефонного трафика, московский оператор сможет спрятать от каждого из своих клиентов и партнеров информацию обо всех остальных и таким способом защитить свой посреднический бизнес. Эта функция SBC получила название RTP Proxy.
Попутно с помощью RTP Proxy решается проблема работы с сетями, использующими частные IP-адреса (10.Х.Х.Х, 172.16.Х.Х и 192.168.Х.Х). Функция RTP Proxy на лету меняет внутренние адреса, которые не маршрутизируются в интернете, на внешние и наоборот.
И последнее. Прослушивание телефонных разговоров, вообще говоря, запрещено, но не абсолютно: в определенных случаях оно производится на законном основании (например, следственными органами с санкции прокурора). Однако в условиях применения VoIP разрешением на прослушивание воспользоваться сложно: маршруты разных пакетов не совпадают, и очень непросто определить само понятие "разговора". SBC решает эту проблему, поскольку является точкой, где разрозненные пакеты собираются вместе.
Дорожная служба
В отличие от пограничных постов на дорогах, которые часто можно узнать издалека по длиннейшей очереди из машин и автобусов, SBC не создают препятствий для движения пакетов. Напротив, они помогают организовать это движение оптимальным образом и обеспечить наилучшее качество передачи голоса.
Важнейшими функциями SBC являются контроль доступной полосы пропускания и управление количеством одновременных вызовов в канале фиксированной пропускной способности (например, соединяющем корпоративную сеть и сеть оператора). Необходимо, чтобы он постоянно отслеживал количество активных вызовов и блокировал очередной, если для него недостаточно имеющейся полосы (с учетом используемых кодеков). Кроме того, SBC может правильно приоритизировать трафик для пограничных маршрутизаторов сети, т.е. выставлять нужные биты в полях IP-пактов, отвечающих за качество, – TOS, DiffServ и т.д.; это позволит организовать бесперебойную работу даже на сильно загруженных линиях.
В большой операторской сети, по периметру которой установлено несколько SBC, на них целесообразно вести мониторинг звонков и собирать соответствующую статистику по каждому направлению, чтобы в реальном времени принимать оптимальное решение по их маршрутизации (это может делать как сам SBC, так и центральный VoIP-коммутатор, собирающий и анализирующий эту статистику). Именно по такой схеме сейчас обеспечивается качество обслуживания в сетях крупнейших мировых операторов IP-телефонии, и постепенно этот подход становится доминирующим.
Крупным операторам часто бывает удобно использовать SBC как своего рода "концентраторы" трафика, например, идущего из какого-либо одного региона. Устанавливаемые в регионе SBC "собирают" внутрирегиональный трафик, взаимодействуя с центральным VoIP-коммутатором и другими такими же SBC в отношении межрегионального и межсетевого трафика. Подобная схема позволяет на местах решать вопросы подключения клиентов из регионов, так что центру нет необходимости вдаваться в мелкие детали и подробности устройства региональных сетей.
С появлением SBC "островная" эпоха развития IP-телефонии заканчивается: теперь сети VoIP можно связывать друг с другом без шлюзов, причем безопасным и контролируемым образом. Это открывает пути для аутсорсинга VoIP-сервисов и формирования рынка вторичных услуг, что способно коренным образом повлиять на дальнейшее развитие операторского бизнеса. В будущем у SBC наверняка появятся новые функции, а какие-то нынешние, очень полезные в настоящий момент, могут, наоборот, исчезнуть, поскольку отпадет необходимость в них. Не будем забывать, что SBC предназначены для поддержки не только IP-телефонии, но и любых других IP-сервисов реального времени. Их развитие и распространение также обязательно скажется на будущем SBC.