20 марта 2014 в 17:55

MNP: Как все устроено*

image

* Как все устроено не знает никто...


Страсти по внедрению услуги переносимости мобильного номера немного поутихли и теперь настало время разобраться, что и как было сделано, какова логика работы и посмотреть на некоторые технические аспекты. Хочу заранее попросить всех гуру телекома простить мне намеренные упрощения и игнор несущественных деталей.

Одной из главных задач, решаемых сетями, поддерживающими MNP, является установление принадлежности абонента к какому-либо оператору. Это необходимо, чтобы корректно направить голосовой вызов или SMS, а для платежных систем – кому перечислять деньги. Для решения этой задачи используется ЦБДПН – центральная БД перенесенных номеров.

Все помнят, что оператором ЦБДПН был назначен ФГУП ЦНИИС, в задачи которого входило развертывание упомянутой базы, с которой должны быть соединены все игроки. Разумеется, никаких собственных разработок у ЦНИИС не было, а было предложение купить готовое решение Numlex у литовской компании Медиафон. Собственно, так и произошло. Деньги на покупку в размере 70 млн. рублей были выделены министерством связи, что позволило запустить ЦБДПН в рекордно короткие сроки. Кстати, на сайте самого ЦНИИС есть возможность проверить принадлежность номера к оператору: www.zniis.ru/bdpn/check

ЦНИИС постоянно выкладывает скудную статистику по количеству успешных переходов, из которой, к сожалению нельзя понять главное: кто у кого какую долю отвоевал. Зато можно увидеть динамику востребованности услуги. Если так пойдет и дальше, думаю, прогнозы о том, что MNP востребован только для 1-2% окажутся ошибочными

image

Рассматривать MNP будем в двух плоскостях:

  • сама процедура переноса, в ходе которой абонент мигрирует от одного оператора к другому, а база ЦБДПН пополняется роутинговой информацией, главной из которых является роутинговый номер RN;
  • работа основных услуг оператора с учетом новых особенностей.

Еще было бы интересно посмотреть на платежные системы. Но, увы, я этим вопросом совсем не владею, поэтому вынужден оставить его более компетентным авторам. Подключайтесь, рассказывайте.

Забегая вперед, скажу, что краеугольным камнем всей логики обработки вызовов является роутинговый номер RN, который имеет следующий формат:

DXXYY, где:

D – всегда символ «D»
XX – код региона согласно Конституции. Похож на код ГИБДД, но для многих регионов он не совпадает. Например, для RN код 55 – относится к Новгородской области, хотя у ГИБДД в Новгороде код 53.
YY – код оператора. Для МТС-01, для МегаФон – 02, для Билайн – 99, для Теле2 – 20

ПОРТАЦИЯ АБОНЕНТА


В документах ЦНИИС можно обнаружить массу красочных диаграмм процессов и достаточно подробное описание команд, кодов завершения и всех необходимых процедур. Мы же рассмотрим типовой сценарий переноса, при котором абонент оператора-донора уходит к оператору-реципиенту. Одним словом, это называется Портация.

Рисунок 1 – диаграмма процесса портации.

image

Рассмотрим основные этапы процесса
  1. Абонент приходит в офис нового оператора (реципиента) и пишет заявление о переходе.
  2. Оператор-реципиент отправляет запрос в ЦБДПН, где регистрируется заявка и запускается процесс портации.
  3. Оператор-донор получает заявку и выполняет ряд проверок – принадлежность абонента отсутствие задолженности, отсутствие запрета на перенос в течение 6 мес. с даты подключения и пр.
  4. Если все проверки пройдены успешно, то донор отправляет предполагаемую дату начала переноса. Обычно эта дата выбирается через 7 полных суток от текущего момента. Как показывает практика, в этот период оператор-донор начинает обрабатывать абонента, пытаясь узнать у него причины его ухода и предлагает как следует подумать. Не уверен, насчет эффективности такой политики; мне кажется, абонент, если уже надумал и дошел ножками до офиса, чтобы написать заявление, его уже ничто не остановит.
  5. В назначенный день и час начинается этап малая портация, когда основные участники процесса вносят изменения в своих системах и после чего новая SIM-карта абонента сможет работать в новой сети. Первым начинает донор, который деактивирует абонента в своих системах – HLR и биллинге.
  6. Затем реципиент активирует своего нового абонента у себя. На все эти манипуляции согласно регламенту отводится пол часа. Именно в течение этого периода абонент остается полностью без связи. Нужно сказать, обычно, все укладываются в несколько минут. И после этого, абонент может регистрироваться в новой сети и даже пользоваться многими услугами.
  7. Далее, донор вносит изменения в свой SFR, чтобы вызовы из его сети к своему «бывшему» абоненту корректно отправлялись в его новую домашнюю сеть. На этом заканчивается этап малой портации и наш абонент, измученный, но счастливый, начитает привыкать к новому оператору.
  8. ЦБДПН выкладывает в свою базу инкрементальные данные о новом RN портированного абонента, а все присоединенные операторы забирают эти сведения раз в 2 часа и обновляют свои SRF

Все! Теперь все операторы знают о том, что наш клиент перешел в новую сеть.

И здесь остается добавить, что большинство операций выполняется в автоматическом режиме. Исключения – конечно же, взаимодействие с абонентом и обработка различных ошибок и особых ситуаций. К примеру, абонент мог передумать менять сеть – на этот случай существуют свои типовые сценарии.

РАБОТА ОСНОВНЫХ СЕРВИСОВ


Поскольку вся эта история про телефонный номер, основной интерес представляют голосовые вызовы и SMS. Как я уже писал, главной задачей для обслуживания вызова является установление местонахождения вызываемого абонента. В классической мобильной сети решает ее коммутатор, называемый GMSC, а помогает ему шлюз сигнализации STP, в котором описаны статические маршруты отправки запросов к HLR’ам исходя из номера искомого абонента. Если вы слабо знакомы с принципами работы мобильных сетей, поясню, что HLR – это база данных, где хранится информация не только о технических параметрах абонентов, но и о текущем обслуживающем коммутаторе каждого из них. И чтобы найти вызываемого абонента, сеть делает запрос в HLR.

С появлением MNP, статическая маршрутизация сигнального трафика, основанная на MSISDN уже не позволяет нам найти нужный HLR, а потому у оператора появляется новый узел, называемый SRF. Основной задачей SRF является хранение, обновление и предоставление информации о принадлежности любого номера к региону и оператору. Признаком принадлежности является роутинговый номер RN, который в связке с номером MSISDN используется далее, для маршрутизации MAP и ISUP-трафика коммутаторами GMSC/MSS.

Теперь разберем сценарий голосового вызова к абоненту, портированному в новую сеть. Для примера, абонент А из сети Теле2 звонит абоненту B, перешедшему в МТС **. Откуда он перешел теперь не имеет значения, поскольку его прошлый оператор в процедурах больше не участвует. Внутренние алгоритмы работы с SRF у операторов могут быть разными. Но, мы посмотрим на схему в общих чертах, держа в уме, что это может быть лишь одним из вариантов.

** операторы выбраны произвольно.


Рисунок 2 — Вызов на портированного абонента
image
  1. Номер набрал абонент A, из домашней сети Т2. Обслуживающий его коммутатор MSC передает вызов к шлюзовому GMSC, задачей которого будет дальнейшая организация звонка.
  2. Шлюзовой GMSC делает запрос в SRF, где имеется информация о роутинговом номере RN с кодами региона и оператора (например, D5501 — МТС Новгорода)
  3. Узел SRF возвращает в GMSC ответ на SRI, где в качестве временного номера фигурирует связка из RN+MSISDN
  4. GMSC, исходя из полученного RN+MSISDN маршрутизирует вызов на оператора МТС.
  5. Ну, а дальше – стандартная процедура поиска абонента внутри сети – запрос в HLR-B, получение временного номера и GT VLR, установление голосового соединения к конечному MSC абонента B.

Для простоты понимания опущен этап проверки принадлежности абонента B на стороне принимающего оператора (МТС). Выполняется она также, через SRF и необходима на тот случай, если другие операторы будут присылать вызовы не по адресу, т.е. в нашем случае – на номера не принадлежащие МТС’у. Такие вызовы МТС отправит туда, где теперь реально прописан вызываемый абонент и возьмет за это свою копеечку за транзит.

Повторюсь, что детали внутренних решений у разных операторов могут отличаться. Но, в целом, принцип неизменен в одном: для нахождения пути маршрутизации, сеть использует собственный узел SRF, который «знает», какой абонент портирован и куда, а какой нет.

Рассматривать в деталях аналогичный сценарий по отправке SMS, большого смысла нет. Скажу лишь, что для поиска абонента-получателя, SMSC инициирует стандартный запрос SRI_for_SM, который должен попасть в HLR получателя. По пути этот запрос перехватывается SRF, который поможет найти реального оператора-получателя. В ответ, SMSC получит GT VLR где находится получатель и IMSI, необходимые для отправки сообщения к обслуживающему коммутатору. Как конкретно эти сведения будет добывать SRF – вопрос сугубо в маршрутизации сигнальной сети оператора и используемого доп. функционала на узлах STP.

ПРОБЛЕМЫ


На начальном этапе внедрения MNP нередко бывало, что какие-то отдельно взятые операторы не везде успели внести изменения в маршрутизацию вызовов и сигналлизации. Из-за этого некоторые диапазоны номеров могли отрабатываться по прежней схеме, без участия SRF. Сейчас такое встречается крайне редко.

Некоторые проблемы возникают в связи с несвоевременным обновлением локальных баз данных операторов. Дело в том, что у каждого крупного игрока несколько узлов SFR и синхронизируются они не напрямую с ЦБДПН, а через локальную БДПН оператора. Эти процессы несколько снижают оперативность процедуры портации. Для абонента это может выглядеть, как отсутствие входящей связи от каких-то операторов.

Если основные услуги уже более-менее оттестированы и вычищены от багов, то масса экзотики, «умных» услуг, построенных на IN-платформах – различные виды переадресаций вызовов, SMS, короткие номера, мобильные номера в городском формате ABC, и все такое прочее – все это еще предстоит перепроверить. Я не утверждаю, что тут все плохо. Но, нужно понимать, что чем больше костылей и чем менее востребован функционал, тем больше вероятность, что какие-то механизмы забыли скорректировать под MNP.

ЗАКЛЮЧЕНИЕ


Когда осенью 2013 года все участники рынка критиковали организацию проекта MNP, они были правы. Со стороны Минкомсвязи внятные правила были объявлены с большим опозданием. Но, внедрить проект удалось благодаря тому, что наша страна не была пионером в этой области. На рынке существовали готовые решения – как для ЦБДПН, так и для каждого оператора и вендора его оборудования. Так что отмена мобильного рабства, в целом прошла спокойно, без истерик. И, хотя шероховатости еще остались, в целом, операторы связи, вопреки сложившемуся стереотипу, сработали весьма оперативно и согласованно.
@Barabek
карма
10,0
рейтинг 0,0
Похожие публикации
Самое читаемое Администрирование

Комментарии (40)

  • +1
    Если я перейду от оператора А к оператору Б, а потом обратно к оператору А — будет 2 записи о переносе номера или ни одной?
    А если от А к Б, а потом к В?
    • +1
      Вся история ваших портаций хранится в ЦБДПН. А вот будет ли SRF считать вас портированным (хранить ваш RN), когда вы вернетесь к родному оператору — не знаю. Такой практики пока нет.
      • НЛО прилетело и опубликовало эту надпись здесь
    • –1
      удалено
    • 0
      Во втором случае А -> Б -> В однозначно в ЦБДПН две записи и ваш текущий RN будет во всех SRF страны
      • 0
        Вы уверены? Почему не одна запись типа «А -> В»?
        • 0
          Почти уверен. Каждая портация — это отдельная сущность. Хранится именно история портаций.
          • +1
            То есть, если я сменю оператора 10 раз, то проблем не избежать? )
            • 0
              Ну, я не вижу причин для волнений. Просто будет 10 портаций в истории вашего номера. Последняя будет определять ваш текущий RN.
    • 0
      ЦБДПН изменения абонентов выкладывает в трех файлах: инкрементальные файл портаций, инкрементальный файл возвратов и полный файл с текущим состоянием миграций в базе. Если абонент перейдет от А к Б, а потом вернется обратно, то при первой миграции абонент появится один раз в инкрементальном файле с портациями и до возврата будет содержаться в каждом файле с полными выгрузками БД. При возврате абонент отобразится в инкрементальном файле с возвратами и пропадет из файлов с полной выгрузкой портаций. Проверил это на реальных примерах.
      • 0
        Большое спасибо. А по ситуации А → Б → В не можете проверить?
        • 0
          Подозреваю, что в этом случае после первого перехода абонент появится один раз в инкрементальном файле с переходами и будет появляться в каждой выгрузке полного списка с принадлежностью к Б.
          После перехода к В также один раз появится в инкрементальном файле с переходами и будет один раз указываться в полном списке, но уже с принадлежностью в В.
  • 0
    Есть ли сейчас возможность получить доступ к ЦБДПН операторам местной телефонной связи для правильной маршрутизации исходящих вызовов на мобильные номера?
    • 0
      Точно не гарантирую, но думаю — да. На сайте ЦНИИС есть документы с регламентом подключения.
      Наверное, вам понадобится свой SRF.
  • 0
    В процессе переноса. Девочка «зачем вы так» уже звонила. От какой даты отсчитывать 7 дней? Консультант в салоне сказал, что 7 дней минимум но может быть до 6 месяцев.
    Еще вопрос по оплате — говорят, что зачислить деньги на счет нового оператора можно будет только в салоне.

    Так же по обозначеным срокам полноценного ввода — это 15 апреля? Когда начинать партизанский маркетинг не опасаясь быть поколоченным друзьями и родными?
    • 0
      Спокойно плачу на номер жены с карты сбера через сбер-онлайн и в платежном терминале киви тоже без проблем попало куда надо.
      А вот через мобильный банк сбера — ушло старому оператору. Сбер обещает это поправить к концу апреля.
      • 0
        Говорят, что проблема может быть в самом начале. Т.е. ночью выполнили перевод и сразу онлайн положить не получится. Только утром искать салон. Странно, что 100 руб. не кладут на счет или не предлагают какую-то сумму или лимит ухода в минус для переходящих.
        • 0
          при подключении сперва покупается симка, у которой есть номер и баланс. её можно пополнить заранее.

          я пополнял после перевода из МТС в Билайн номер жены через час после фактического перехода — пришло куда надо без проблем, через сбер.
    • 0
      кстати, ММС сейчас на портированных не ходят.
  • 0
    Меня волнует один вопрос: после смены оператора, при входящем звонке выдается ли предупреждение для звонящего? Если нет, то буду пожалуй менять оператора.
    • +1
      нет, нигде и ничего _на текущий момент_ не предупреждается.
      • 0
        Где то упоминали о том что собираются?
        • 0
          Я пока слышал только о европейской практике, когда подобные предупреждения бывают.

          Но у нас фиг знает когда и что подумает и передумает, и в каком регионе что решит сделать :)
  • +1
    Не освещены 2 момента:

    — как MNP сказывается на абоненте с «городским» номером (основной MSISDN которого входит в DEF-код, например, «Билайна», но которому сопоставлен номер в телефонной сети «фиксированного» оператора, который «Билайн» арендует). Абонент хочет уйти из «Билайна» в МТС — переходит ли право аренды сопоставленного «городского» номера МТСу?

    — как оно работает в роуминге?
    • 0
      MNP на городские номера не распространяется.

      В роуминге ничего принципиально не меняется. В схеме вызова на портированного абонента (рис 2) это этап 5. Отличие только в том, что родная сеть находит абонента не у себя. Более конкретно — в ответ на SRI от HLR вернётся GT чужого VLR и чужой временный номер MSRN. И домашний GMSC направит вызов в чужую сеть.
  • 0
    После переноса номера от МТС к Мегафону перестало работать sms-оповещение о пропущенных вызовах при выключенном телефоне.
    Техподдержка о проблеме знает, но с 22 февраля ничего не изменилось(
    • 0
      (del)
  • +2
    Как разработчик со стороны платежных систем, несколько деталей.
    ЦБДПН предоставляет несколько инструментов для получения данных о перенесенных абонентах, в частности, он-лайн протокол и реестры перенесенных абонентов. Реестры трех видов: инкрементный (выкладывается то ли раз в час, то ли в два), полный (раз в сутки) и реестр возвращенных номеров. Файлы выкладываются на FTP-сервер, доступ ограничен. Мы выбрали вариант с реестрами, чтобы не завязываться на работу внешнего сервиса во время проверки реквизитов и проведения платежа.
    Соответственно, есть некоторый джоб, который через заданные промежутки времени проверяет наличие новых файлов и применяет их к локальной копии базы, раз в сутки — полная синхронизация. Соответственно, в рамках бизнес-логики задачи необходимо произвести маппинг пары (MNC, REG_ID) -> Id оператора в рамках платежной системы. Это соответствие было частично заполнено на основе номерных емкостей, изначально принадлежащих оператору, платежный сервис имеет свою такую таблицу плюс сам ЦБДПН такую информацию дает (только для тех случаев, где получилось это сделать однозначно). Там где автоматически не удалось, приходится заполнять вручную, регулярно в перенесенных реестрах появляются неизвестные системе пары (MNC, REG_ID), ответственные сотрудники получают соответствующее уведомление и заполняют соответствующий ID провайдера. Сами терминалы, софт для касс и прочее копии базы не имеют и делают он-лайн запрос в платежную систему, если он не удался, предлагаются варианты, по умолчанию — дефолный владелец номерной емкости (например, 903 — Билайн).
  • +2
    Главное, чтобы интернет работал.
    • 0
      Будет работать. Пока не появится идея сохранения статического IP при переходе между операторами :)
  • 0
    Спасибо за ликбез. Я в мобильной маршрутизации ничего не понимаю, я как-то всё по IP. Есть пара вопросов:
    1. Правильно ли я понимаю, что SRF так или иначе обрабатывает весь сигналинг отдельно взятого оператора по установлению принадлежности MSISDN-RN? Коробка-то довольно мощная должна быть. Сколько транзакций в секунду оно перелопачивает в случае среднестатистического оператора? Или их ставят несколько штук и балансят между ними нагрузку?
    2. Статическая маршрутизация исполняется на GMSC? Ну т.е. если SRF ответит, что у него в базе нет запрашиваемого SRF, то GMSC залезет в свою локальную таблицу и пойдёт в соответствующий HLR или чужой GMSC?
    • 0
      Тьфу, опечатался. «Запрашиваемого SRF» читать как «запрашиваемого MSISDN».
    • 0
      1. Не весь. Только запросы, относящиеся к поиску абонента. Весь сигналлинг обрабатывает STP (не весь, но много).
      2. SRF ответит, во-первых — портирован ли абонент или нет. Во-вторых, если портирован, то вернет его RN. Если же абонент не портирован (по мнению SRF), то GMSC поведет себя как вы и предположили. Но, это один из варинтов. Могу предположить, что в каких-то решениях для непортированных может тоже возвращаться RN — дефолный, в соответствии с закрепленными диапазонами нумерации.
      • 0
        Да, разумеется, я имел в виду только поиск абонента. Сумбурно сформулировал, пардон.
        Понятно, спасибо.
  • 0
    Скажите, пожалуйста, как после перехода к новому оператору вернуть непотраченные средства у старого? Не приведёт ли одностороннее расторгание договора с возвратом средств к проблемам с рутингом?
    • 0
      Увы, не особо владею темой. Но к проблемам с роутингом привести не должно. Вас либо портируют, либо будет отказ. Специально гадить никто не станет.
    • 0
      Деньги со старого номера от прошлого оператора не переносятся. Да и решить никак, только на платежки выводить.
  • 0
    По тексту и на картинках кое-где напутано SRF и SFR.
    А так весьма дельно. Спасибо.
  • 0
    Подскажите, что происходит с остатками денег на счете переносимого номера?
    Оператор донор переводит остатки средств на счете клиента оператору реципиенту?
    • 0
      нет, пишете заявление на возврат средств и вам на карту в течение месяца ваши 40 копеек вернут.

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.