Эмеркоин сделал VoIP телефонию бесплатной с помощью ENUMER!

В статье рассказывается о децентрализованной реализации протокола IP-телефонии ENUM на базе блокчейна криптовалюты Emercoin. Дано описание ситемы ENUMER, её отличие от других реализаций ENUM. Также приведены инструкции по разворачиванию узла ENUMER и дан пример конфигурации VOIP АТС FreeSWITCH для работы с ENUMER.

Введение

В мире всё большее применение находит IP-телефония, которая обладает рядом преимуществ по сравнению с классической. IP-решения как правило дешевле классических и обладают большей функциональностью. В настоящее время IP ATC находят применение в различных организациях, но основные телефонные сети продолжают использовать классические решения, пусть даже и на базе цифровых АТС. В результате такого положения вещей, связь даже между двумя IP ATC происходит через обычную телефонную сеть, PSTN. Рассмотрим пример:

Пусть у нас есть организация «Покупатель», и другая организация, «Продавец». Обе организации используют для своих внутренних нужд IP ATC (также называемые PBX). Пусть сотрудник Покупателя нашёл в рекламе объявление Продавца, которое его заинтересовало. Покупатель решил позвонить Продавцу, и набирает его номер. Вызов происходит следующим образом:

При этом звонке, происходит соединение двух IP ATC через цепочку PSTN-провайдеров, и соответственно покупатель платит за звонок провайдеру, который перенаправляет звонок из VOIP-сети в PSTN-сеть (приземляет звонок). Ну а далее идут взаимозачёты между PSTN-провайдерами, которые нас не интересуют.

Если бы IP_AC_покупателя «знала бы дорогу», она могла бы через Интернет напрямую соединиться с IP_ATC_продавца, и тем избавила бы покупателя от платежа PSTN-приземлятелю, и звонок бы вышел бесплатным:

Да и надёжность и качество соединения было бы значительно выше, так как в такой цепочке и меньше промежуточных элементов, и перекодирований голосового трафика.

Понятно, что «знать все дороги», то есть поддерживать всевозможную карту прямых IP-соединений весьма трудоёмко, и был разработан сетевой протокол преобразования номера телефона в «дорогу», то есть в URI, который назвали ENUM.

ENUM

Протокол ENUM (rfc6116) работает как распределённая адресная книга, и позволяет по номеру телефона «найти дорогу» к соответствующей IP ATC, которая обслуживает этот номер. Описание протокола: https://en.wikipedia.org/wiki/Telephone_number_mapping

Идея использования протокола состоит в следующем:

  • Продавец регистрирует свою IP ATC (PBX) в системе ENUM.
  • При звонке IP ATC покупателя перед использования PSTN-сети пытается найти «короткую дорогу», для чего делает запрос в систему ENUM.
  • Если в системе есть «короткий путь» — АТС покупателя использует его. Если же нет — то она использует стандартный путь, через PSTN, и платит за приземление звонка обычным образом.

Выгода от ENUM

Использование ENUM даёт выгоду как для инициатора, так и для получателя звонка. Для них это:

  • Улучшение качества сигнала за счёт прямого цифрового соединения.
  • Повышенная скорость и надёжность соединения.
  • Обход лимита PSTN-оператора на количество линий или использованных минут.
  • Невозможна ситуация отказа в обслуживании по причине перегрузки оператора.
  • Для звонящего — звонок всегда бесплатен (прямая экономия).
  • Для получателя — бесплатен тоже, даже если у него toll-free number, когда он должен платить за входящие (тоже экономия).
  • Использование ENUM происходит автоматически, незаметно для пользователей, и требует только минимального конфигурирования IP ATC.

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

Проблемы текущих реализаций ENUM

  1.  Первая проблема ENUM — то, что сейчас просто нет такого места, где бы владелец обычной IP ATC мог бы зарегистрировать свой номер (или несколько номеров) и соответствующие SIP URI. Вернее — такие места были, например, freenum.org или e164.org. Но freenum давно недоступен, а e164.org прекратил работу в ноябре 2016. Да, где-то продолжают какое-то существование ENUM-сервера типа e164.arpa. Но это сервис — не для владельцев IP ATC или частных лиц, а «межпровайдерный узел», где крупные и взаимно проверенные VOIP-провайдеры дают информацию о возможности приземления в их сети. Эдакий «междусобойчик для своих», куда обычному владельцу IP ATC дороги нет.
  2.  Вторая проблема — критическая зависимость работы сети от централизованного сервиса, который может вести себя некорректно, или вообще не работать. Наглядный тому пример — e164.org. В последние 2 года — работал нестабильно, и кроме того, занимался непотребством, например — несмотря на зарегистрированные у него toll-free номера, направлял трафик не на IP ATC абонентов, а на «своих приземлятелей», которые естественно не забывали выставлять счета за доставленный по PSTN-сети звонки. Естественно, это поведение приводило к тому, что у владельцев toll-free номеров пропадал экономический стимул регистрировать эти номера в e164.org.
    А примерно за месяц до закрытия — e164.org вообще перестал отдавать ENUM-ответы, несмотря на то, что записи в нём содержались корректные (мы проверяли).
  3.  Так как классическая централизованная ENUM-система пользуется транспортом DNS, она уязвима против всевозможных атак на инфраструктуру DNS, таких как DNS-Spoofing, DNS-hijacking, и им подобных. Естественно, сбои в DNS-системе также приводят к отказу в обслуживании и в системе ENUM.
  4.  Ну и последнее, но важное: Нагрузка на такой сервер получается весьма большой, ибо запрос делается при попытке каждого звонка с IP ATC. Да, запросы кэшируются промежуточными DNS-серверами, но тем не менее — нагрузка всё равно остаётся высокой для сервера, обслуживающего все телефонные станции всего мира. Как следствие — отказы в обслуживании или задержки с обработкой запросов, а также высокая цена серверной инфраструктуры.

Вышеназванные причины «провала» имеют организационно-технический характер, проистекающий из централизованной организации сервиса и непрозрачности алгоритма разрешения запроса. Действительно, централизованная реализация ENUM, как и любого сетевого сервиса, зависит от работоспособности сайта, который обслуживает создание ENUM-записей и поддержку их актуальными, а также соответствующего DNS-сервера, который разрешает ENUM-запросы. Иными словами, доверие к такой ENUM-системе не может превышать доверия к организации, которая управляет этой системой. Доверие также снижает тот факт, что совершенно неизвестен алгоритм и критерии, по которым тот или иной централизованный сервис разрешает ENUM-запросы. Так, например, сегодня он может работать как надо, а завтра — перенаправлять куда следует звонки на некий номер, интересующий компетентных товарищей (которым дело до всего). Например, на промежуточный VOIP-узел, который в свою очередь может сделать с трафиком всякое. Почему вдруг перенаправлять? Ну может быть, владелец номера играет джаз…

Соответственно, выход из строя такого сервиса приводит к одномоментному останову всей сети. Оба эти недостатка в полной мере продемонстрировал e164.org: сначала перенаправлял toll-free звонки не на зарегистрированные номера, а на своего провайдера-приземлятеля, потом вообще отвечал пустыми ответами, а в завершение эпопеи вышел из бизнеса, со всеми базами.

ENUMER — децентрализованный ENUM

Далее (на Emercoin Medium) 

Error

default userpic

Your reply will be screened