IOSOR База знаний

Оконные лимиты SMPP и ограничения сессий

Узнайте, как рассчитывать высоконагруженные SMPP-подключения, настраивать размер окна, ограничивать сессии и управлять балансом в IOSOR.

Оконные лимиты SMPP и ограничения сессий.

Размер окна SMPP и асинхронный поток протокола

Протокол Short Message Peer-to-Peer (SMPP) использует механизм неподтвержденного окна для обеспечения высокой пропускной способности без ожидания синхронных ответов (submit_sm_resp). В асинхронной SMPP-сессии размер окна определяет точное количество пакетов Protocol Data Units (PDU), находящихся в процессе обработки через одно TCP-соединение. При расчете параметров для клиентов с большими объемами трафика SMS критически важно правильно задать размер окна.

Лимиты сессий и топология трансиверов

Крупные клиенты часто пытаются открыть десятки одновременных подключений типа transmitter (TX), receiver (RX) или transceiver (TRX) для масштабирования отправки сообщений. Однако бесконтрольное увеличение числа сессий создает высокую нагрузку на потоки и оперативную память маршрутизирующих узлов. IOSOR применяет жесткие ограничения на количество сессий для каждой учетной записи.

Резервирование средств на предоплате для SMPP

Обработка высоконагруженного SMPP-трафика при предоплатной схеме требует мгновенной проверки баланса до того, как PDU попадут во внешние сети. Чтобы избежать ухода кошелька в минус при пиках до 500 SMS в секунду, IOSOR использует механизм автоматического холдирования средств в реальном времени. Когда PDU submit_sm поступают в активное окно сессии, платформа создает временное резервирование на балансе клиента в соответствии с базовым тарифом для направления E.164. После получения финального отчета DLR или подтверждения доставки временное резервирование списывается с баланса.

Расчет максимальной емкости PDU для клиентов

При формировании коммерческих условий для крупных агрегаторов необходимо согласовывать заявленную пропускную способность с параметрами сессий. Расчет на 200 SMS в секунду должен четко определять рекомендуемое количество трансиверов TCP и размер окна на одну привязку. Обещание высокой скорости без учета сетевых задержек приводит к невыполнению SLA. В консоли управления IOSOR операторы могут создавать профили квот, привязывающие учетные данные system_id к лимитам PDU, максимальному размеру окна и приоритетам очередей.

Настройка сессий и сопутствующие протоколы

Проектирование масштабируемой архитектуры отправки сообщений требует балансировки параметров SMPP с другими протоколами и системными правилами. Для поддержания высокого качества обслуживания инженеры комбинируют SMPP-сессии с API-интерфейсами и правилами голосовой маршрутизации.

Связанные материалы: Балансировка лимитов параллельных соединений и пропускной способности · Балансировка пакетных запросов и пропускной способности API · SIP digest auth и hold баланса для prepaid voice.

Начните с IOSOR

В консоли IOSOR откройте шлюз SMPP, создайте system_id и сразу привяжите его к предоплатному кошельку — до первого bind. Задайте лимит сессий TX/TRX и окно неподтверждённых submit_sm под тот TPS, который вы реально выставите в котировке: окно × сессии = объём, который холд должен закрыть. Прогоните bind в песочнице, сверьте inflight PDU с холдами и отдавайте креды клиенту только если вспышка не уводит баланс в минус.

Итог IOSOR

Котировка высокоскоростного SMPP — это произведение окна и числа bind на предоплатных холдах, а не голый TPS. Пять TRX с окном 50 дают 250 inflight submit_sm, которые нужно зарезервировать до submit_sm_resp.

Делайте: фиксируйте system_id, лимит сессий и окно в одном профиле и проверяйте вспышкой. Не делайте: не открывайте безлимитные TX и не обещайте 200 SMS/с, не назвав окно и число сессий.

Был ли материал полезен?

Связанные гайды