11.28.2009

Orange the Best

На ежегодном World Communication Awards (WCA), который проходил в Лондоне в эту среду (25.11.2009), Orange получил три самые высокие награды в мире телекоммуникаций. Четвёртный год подряд Orange Business Services награждается званием "Best Global Operator" и в третий раз компания отмечена как "Best Mobile Service Provider".
Также совместно с Sorin Group (международная компания по производству медицинского оборудования, лидер в области лечения сердечно-сосудистых заболеваний), Orange Business Services получил награду "Best Change-Maker" за их совместную работу по внедрению M2M и технологии электронного здоровья (e-Health) с целью улучшить качество жизни т.н. сердечников.
"В течении этого года, Orange Business Services представила рынку целую серию внушительных проектов, поэтому их победа полностью заслужена. Жюри оценила последовательную стратегию, которая в результате предложила рынку достаточно сильные сервисы в хорошо управляемой комерческой среде", - отметил David Molony, председатель WCA.
Уже 11 лет World Communication Awards награждает компании, отмечая тем самым их значительные достижения и разработки в международной телеком индустрии.
Barbara Dalibard, президент и исполнительный директор Orange Business Services, так прокоментировала награду:
"В первую очередь, это победа всех наших сотрудников, которые каждый день обслуживают клиентов с неиссякаемым энтузиазмом и помогают нам придерживаться нашего курса. Нам видится светлое будущее, поскольку мы расширяем наше портфолио в таких областях как видеоконференции, контак-центры, М2М приложения и распределённое вычисление".
Что ж, остаётся поздравить Orange и пожелать им оставаться "двигателями" прогресса на телеком рынке.

Read More..

11.26.2009

SCCP routing

Итак, обещанная статья об SCCP маршрутизации. Сразу предупреждаю - писалась в небольшой, но спешке, да ещё и после лёгкой, но болезни.

Для начала небольшая картинка (все книги и статьи по SS7 обязательно её вставляют, не буду отходить от традиции и я):

А теперь посмотрим на ISUP. Хороший протокол, отлично работает без SCCP (есть какие-то варианты работы поверх SCCP, но я их не встречал). Зачем же было тогда придумывать SCCP?
А всё дело в задачах. ISUP предназначен для установления голосового канала между двумя заранее определёнными узлами сети. Эти узлы могут быть как внутри одной сети (2 MSC), так и в двух разных сетях (2 GMSC операторов-конкурентов). Кроме того, протокол изначально ориентирован на одну задачу - установить голосовой канал.
Что же делать, если узлы находятся непонятно где и необходимо сделать запрос, который к голосу не имеет никакого отношения? Вот для таких задач и придумали SCCP.
Для использования SCCP, каждому узлу кроме адреса на уровне MTP3 (Point Code, который), назначается ещё и т.н. Global Title (GT). GT - это адрес, например, набранный абонентом номер, который не обязательно явно содержит информацию, позволяющую маршрутизировать сообщение в сети SS7.
Вместе с MTP3, SCCP образует третий уровень эталонной модели взаимодействия открытых систем (OSI RM). Т.е. как и протокол IP, обеспечивает функции по маршрутизации сообщений в сети.  Происходит это примерно так:

1. Приложение на узле A отправляет сообщение узлу B.
2. Узел А проверяет свою таблицу маршрутов и:

2.1. находит его. Фактически происходит GTT (об этом ниже) - определяется Point Code для узла B и номер подсистемы (если необходимо). Это значит, что сообщение может быть отправлено с использованием MTP3-маршрутизации: узел А ставит Point Code узла B в DPC и ищет подходящий маршрут (linkset).
2.2. не находит "прямого" маршрута. Если задан маршрут по-умолчанию, то сообщение отправляется на указанный в нём Point Code (Узел C). Ожидается, что узел C знает, что делать с сообщением.
2.3. не находит вообще никакого маршрута. Приложению может быть отправлена ошибка - Message type:UDTS, Return cause:No translation for this specific address.

Пункты 2.1 и 2.3 нас особо не интересуют, поскольку мы рассматриваем случаи SCCP маршрутизации. Поэтому считаем, что сообщение поступило на узел C.

3. Узел С проводит аналогичную процедуру, что и узел А. И снова возможны 3 варианта. Есть смысл рассматривать вариант 1, тот который GTT. Его и рассмотрим.

Итак, узел С получил сообщение и проанализировал SCCP Called Party Address (CdPA). Из чего состоит этот адрес описывать не буду (в Интернет достаточно информации по этому поводу). Выделю только ключевые для этой статьи поля:

  • Routing Indicator (в составе Address Indicator). Указывает на тип маршрутизации - по GT или PC+SSN.
  • Translation Type. Обычно это значение 0. ITU-T определило некоторые возможные значения и как их следует интерпретировать. На практике, эти значения можно использовать под свои нужды (об этом в примере).
  • Numbering Plan (детальнее смотрите на GSM numbering plans)
  • Address Information. Непосредственно номер.


Узел С начинает анализ сообщения. RI у нас точно указывает на Route on GT, потому что это мы собираемся делать окончательную трансляцию. В зависимости от значения поля TT, можно выбрать узел получателя сообщения. Например, если ТТ=0, отправить на узел B, а если ТТ=10, то отправить на узел D.
В зависмости от Numbering Plan маршрутитизация также может быть разной. Например, отправлять все сообщения с NP E.214 (такие как MAP Update Location) на роуминг-платформу для принятия решения (пускать абонента в эту сеть или нет). Роуминг платформа после обработки может вернуть сообщение обратно без каких-либо изменений (ну, только OPC и DPC поменяет местами). А чтобы узел C снова не отправил сообщение на роуминг-платформу, то она при отправке установит значение TT отличным от 0. Таким образом можно избежать петель маршрутизации. Хотя сравнительно новые STP могут дополнительно анализировать с какого направления (linkset или свой внутренний указатель) пришло сообщение, поэтому второй раз его на роуминг-платформу не отправят даже если ТТ=0.
Если все предыдущие проверки пройдены, но получатель так и не определён, то осталось поле Address Information. По нему узел C и определяет, что это сообщение для узла B и его подсистемы такой-то (это в случае, если подсистема не была указана в оригинальном сообщении в поле SSN). Point code узла B известен, сообщение отправляется через соответствующий linkset. Дело сделано, GTT осуществлёна.



Теперь немного о классах SCCP:

  • Class 0- Basic connectionless class
  • Class 1- In-sequence delivery connectionless class
  • Class 2- Basic connection-oriented class
  • Class 3- Flow control connection-oriented class


Не имел возможности работать с Class 2 и 3, потому что TCAP (а следовательно MAP, CAMEL, INAP) их не используют. Литература гласит, что Class 3 пока-что вообще не используется, а Class 2 используется для "Some BSSMAP messages (Setup)", с которым тоже не имел чести работать.
Что касается отличий Class 0 и Class 1, то тут могу рассказать. Для увеличения надёжности сети, её ключевые элементы, такие как STP, дублируют. Дублируются также и подключения узлов к сети - узлы подключаются к двум STP одновременно. При этом стараются распределить нагрузку между STP равномерно. Это значит, что узел А, отправляя сообщения, часть их отправляет через STP1, а часть через STP2. Иногда бывает так, что на запрос нужно ответить двумя, а то и тремя сообщениями. Если очередность доставки не важна (а это Class 0), то можно смело разбрасывать сообщения между STP. Но если получателю важен порядок сообщений (например, мы отправили TCAP Continue и TCAP End. Очень важно сохранить очередность), то используется Class 1 и все сообщения из цепочки будут отправлены через один и тот же linkset (читай STP), да ещё и через тот же линк (SLS).
Могу подтвердить, что это важная вещь. На практике встречал ситуации, когда 2 сообщения отправленные с интервалом в 10 мс через разные STP, приходили в неправильном порядке и в итоге "ничего не рапотает, насяльника". Картину прояснил только трейс снятый на конечной точке маршрута - коммутаторе. Почему второй STP доставлял сообщение до коммутатора быстрее осталось загадкой.

Read More..

11.22.2009

Настройка Wireshark для SS7

Давно я не писал чего-то общественно полезного. Пылится "на полке" запрос написать о GTT и прочей SCCP магии. А пока-что расскажу о том, как можно упростить свою жизнь с помощью простой настройки Wireshark.
Не вдаваясь в историю и детали, скажу просто - Wireshark это свободнораспространяемый анализатор пакетов. Долгое время его прародитель (Ethereal) использовался сетевыми (и не только) администраторами для анализа TCP/IP. Постепенно к нему добавляли поддержку множества других сетевых протоколов, в том числе и протокол сигнализации ОКС-7.
Вообще, весь этот блог начинался с идеи рассказать о том, как использовать Wireshark для "просмотра" SS7 трафика, проходящего через стек Dialogic. Статья об этом - декодер Septel. Со временем всё больше и больше проектов реализовывались на SigTRAN. И снова помощник тот же - Wireshark. Включил snoop (снифер в Solaris), скачал файл, открыл его в Wireshark и сразу понял, почему ничего не работает. Ну, или не сразу. Ладно, признаюсь - иногда даже это не помогает :)
Но я отвлёкся. Почему-то оказалось, что Wireshark требует некой начальной настройки для нормальной работы с SS7. О них и статья.
1. Настройка SSN для GSM MAP.
Если вместо прелестных смс-ок ни о чём не подозревающих абонентов, Вы видите кашу в 16-тиричном виде, то значит Wireshark не распознал GSM MAP. Для устранения досадной неприятности заходите в Edit->Preferences. Нажимайте на Protocols и ищите GSM_MAP. Далее заменяйте "6-9" на "6,7,8,9" так, как это показано на рисунке:


2. Настройка CAMEL
Аналогичным образом следует настроить Wireshark для протокола CAMEL. Выбирайте его в списке протоколов (надеюсь Вы уже догадались, что можно набрать имя протокола и он выберется?) и ставьте значение 146. Я остальные поля не трогаю и всё работает:


3. Настройка отображения пакетов в Wireshark
Это достаточно спорный вопрос, но я постараюсь обьяснить почему мой вариант мне нравится больше остальных. Снова заходим в Edit->Preferences. И теперь выбираем Layout:

Почему именно третий вариант? Потому что:

  • в окне 1 я вижу пакеты в порядке их прихода (в этом месте слышен хи-хи)
  • в окне 2 я "разворачиваю" пакет по протоколам, чтобы рассмотреть что там и как
  • в окне 3 (которое я делаю узким) спокойно читаем текст смс-ок (попались?! так и знал - ничего путнего, кроме чтения чужих смс Вы на работе не делаете)

Итого, картина выглядит примерно вот так:

Скажете неудобно? Форма для комментариев ниже :)
4. Раскраска пакетов по протоколам.
Когда в первом окне список из тысячи пакетов, найти проблему бывает трудно и утомительно. Чтобы упростить себе жизнь, можно воспользоваться чудесной функцией раскраски пакетов. Она позволяет сделать раскраску на основе фильтров Wireshark. Читать документацию и придумывать фильтры не обязательно - в окне 2 нажимаете на нужную часть пакета (например, GSM Mobile Application), а в левом нижнем углу читаете фильтр -  gsm_map:


Когда фильтр в ваших руках, спокойно идёте в View->Coloring Rules и нажимаете New. Дальше и сами разберётесь. Что хотелось бы добавить - не забудьте создать такой вот фильтр и окрасьте его в ярко красный цвет: tcap.abort. Очень полезный фильтр. Ещё не помешал бы фильтр для UDTS, но что-то я его в своей конфигурации не наблюдаю.
На этом пока-что всё. Если у кого есть полезные фильтры - пишите в комментарии.

Read More..

11.04.2009

LTE - мифы и реальность

В сети бродит множество мифов о том, что такое LTE и какие недостатки у этой технлогии. Организация 3GPP, которая активно занимается стандартизацией LTE, решила развеять часть из мифов.

Миф 1: LTE только для передачи данных
Реальность:  LTE поддерживает передачу голоса и эта поддержка была среди ключевых задач при проектировании. Голос в сетях LTE передаётся благодаря IMS VoIP, которое имеет чёткую спецификацию.
Решение 3GPP для передачи голоса поверх LTE это обьединенная работа по нескольким направлениям:

  • Работы в Rel 7 по оптимизации сигнализации в IMS и кодеков VoIP таким образом, чтобы качество и эффективность передачи было таким же или лучше чем в сетях с коммутацией каналов
  • Работы в Rel 8 по разработке новых поколений радио и опорной сети, оптимизированных для передачи пакетных данных
  • Работы в Rel 7 по добавлению требований к экстренным вызовам в IMS и адаптации их к законодательству.
  • Работы в Rel 8 по добавлению к LTE требований постоянного подключения по IP.

Ключевой момент здесь это то, что для LTE голос это всего лишь один из многих потенциальных медийных потоков, который может быть передан. Это становится возможным благодаря сетям с коммутацией пакетов и технологии VoIP, которые эффективно используют радио и сетевые ресурсы.
Тем не менее, 3GPP понимает что адаптация LTE и IMS не може произойти за одну ночь. Для этого 3GPP предлагает переходной механизм, называемый "CS Fallback". Он позволит устройству LTE подключится к  традиционной сети 3G или 2G, если в IMS нет требуемой поддержки VoIP. Этот механизм является промежуточным решением для упрощения перехода на IMS и VoIP.


Миф 2: В LTE нет поддержки SMS
Реальность:  LTE и EPS (Evolved Packet System) будут поддерживать большое множество технологий передачи сообщений, SMS также поддерживается в LTE. Двойственное решение позволит обеспечить передачу SMS как в сетях с полноценным IMS, так и в сетях без поддержки IMS.
SMS поверх IP было полностью специфицировано в 3GPP Rel 7. Базируясь на IMS, это решение главным образом направлено на обеспечение совместимости между традиционными сотовыми сетями и сетями, которые предлагают более широкие возможности в обменене сообщениями.
Для сетей без IMS было специфицировано переходное решение, называемое SMS over SGs (ранее называемое SMS over CS). Это гибридное решение, которое позволяет передавать SMS из инфрастуктуры с коммутацией каналов по радио сети LTE. SMS over SGs было определено как часть Rel 8. Т.к. это решение требует наличия инфрастуктуры с коммутацией каналов для передачи SMS, то оно рассматривается как переходное.


Миф 3: IMS ещё не готово к использованию
Реальность:  Разработка IMS ведётся уже долгое время. Впервые эта система была представлена как часть Rel 5 в 2002 году. Она основана на протоколах IETF, таких как SIP и SDP, которые уже известны давно. Эти технологии были избраны индустрией как сигнальные механизмы для мультимедийных приложений.
В Rel 7 основной упор был сделан на оптимизацию IMS и сопутствующих протоколов для того, чтобы сделать поддержку голоса и других носителей такой же эффективной как и в сетях с коммутацией каналов.
IMS полностью описан и готов к использованию. Проблемы в разворачивании IMS не из-за протоколов или спецификаций. Ведь рассматриваются не только технические аспекты, но и смена взглядов во всей индустрии - отказ от коммутации каналов и полный переход на IP. А это миграция сервисов, политик и взаемодействие с традиционными сетями. Однако все это стоит того, чтобы предоставить пользователям широкий спектр сервисов. Эта работа происходит во многих сообществах, за пределами 3GPP.

Миф 4: LTE не поддерживает экстренные вызовы
Реальность:  Поддержка экстренных вызовов в VoIP (в т.ч. поддержка определения местоположения) указана как часть Rel 9. Она полностью удовлетворяет последним требованиям, что позволяет отделить VoIP от сетей с коммутацией каналов. Также есть переходной механизм, позволяющий перейти в сеть 3G/2G для совершения экстренного вызова. Такое решение было предложено до появления IMS (Rel 5).
Тем не менее, для решения ситуаций где обратно-совместимые сети недоступны, и был предложен Rel 9. Это позволяет оператору обеспечить выполнение требований LTE для VoIP звонков как для телефонов, которые могут зарегистрироваться для обычных сервисов, так и для устройств с ограниченным набором сервисов (в т.ч. устройства без USIM).
Описан также обратный звонок из PSAP (public safety answering point) и его взаимодействие с дополнительными сервисами, которые могут быть активированы.
Традиционная услугаПереходное решениеРешение EPS
Коммутация голосаCS Fallback (Rel 8)IMS VoIP (Rel 7)
SMSSMS over SGs (used to be called SMS over CS) (Rel 8)SMS over IP (Rel 7)
Дополнительные сервисыCS Fallback (Rel 8)Multimedia Telephony (Rel 7)
Экстренные вызовы с Поддержкой определения местоположенияCS Emergency Calls (Rel 5)IMS Emergency Calls w Location Support (Rel 9)

Read More..