Эмеркоин сделал 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

When you submit the form an invisible reCAPTCHA check will be performed.
You must follow the Privacy Policy and Google Terms of use.