Каждый день по всему миру отправляются миллиарды SMS. Большинство пользователей воспринимают это как очевидный процесс: нажал — пришло. Для бизнеса, который строит на SMS критическую инфраструктуру, понимание механики — не академический интерес. Это объяснение того, почему SMS иногда задерживается, почему одни маршруты надёжнее других и откуда берётся разница в доставляемости.
SMS придуман в 1985 году немецким инженером Фридхельмом Хильдебрандом в рамках стандарта GSM. Лимит в 160 символов Latin появился не случайно: Хильдебранд проанализировал образцы телефонных разговоров и деловой переписки и обнаружил, что большинство сообщений укладываются в этот объём. Кириллица занимает больше памяти в кодировке UCS-2 — отсюда лимит в 70 символов для русского текста.
Первое SMS в истории отправил 3 декабря 1992 года британский инженер Нейл Папворт своему коллеге Ричарду Джарвису через сеть Vodafone UK. Текст: «Merry Christmas». Получатель не мог ответить — его телефон этого не умел.
Шаг 1: Отправитель → SMSC. SMS поступает на SMSC — SMS Centre, центр обработки сообщений оператора. Это сервер, который принимает сообщение, проверяет его и берёт на хранение до момента доставки. Если абонент недоступен, SMSC хранит SMS и периодически пытается его доставить до истечения срока хранения.
Шаг 2: SMSC → HLR. HLR — Home Location Register — база данных оператора с информацией о каждом абоненте: активен ли номер, в какой сети находится, к какой базовой станции подключён в данный момент. SMSC запрашивает HLR, чтобы понять, куда направлять сообщение. Именно здесь определяется, достижим ли абонент прямо сейчас.
Шаг 3: SMSC → MSC. MSC — Mobile Switching Centre — коммутатор мобильной сети. Он получает сообщение от SMSC и направляет его через базовую станцию на телефон абонента.
Шаг 4: Телефон → статус доставки → отправителю. Телефон подтверждает получение. Статус «Delivered» возвращается по обратной цепочке к отправителю. Если подтверждение не пришло — SMSC повторяет попытку позже.
Путь SMS от бизнеса-отправителя до абонента проходит через SMS-шлюз (агрегатор) и дальше к операторам. Каждый дополнительный узел в этой цепочке — это потенциальная задержка и точка потери статуса доставки. Компания с прямыми подключениями к операторам исключает посредников: SMS идёт короче, быстрее и с более высокой доставляемостью — 95–98% при прямых подключениях.
Вся маршрутизация SMS построена на протоколе SS7, разработанном в 1975 году. Его главная уязвимость — отсутствие аутентификации узлов: любой участник SS7-сети теоретически может перехватить или перенаправить сообщение. На этом основаны SIM-swap атаки — мошеннический перевыпуск SIM-карты для получения доступа к SMS-кодам. Для финансовых организаций это операционный риск, снижаемый через IMSI-мониторинг — контроль смены SIM до отправки кода.
Один SMS-сегмент с кириллицей вмещает 70 символов — при превышении сообщение делится на части, каждая тарифицируется отдельно. При конкатенации служебные байты уменьшают полезную нагрузку сегмента до 67 символов. Шаблоны с переменными, персонализированные сообщения и ссылки нередко выходят за этот лимит — и стоимость рассылки неожиданно удваивается. SMS-инфраструктура с контролем длины сообщений реализована, в частности, в i-Digital.