# SMPP v3.4 против v5.0: что изменилось

> SMPP v5.0 обратно совместима с v3.4 и добавляет сигнализацию управления перегрузкой, операции широковещательной рассылки (broadcast_sm и связанные), дополнительное состояние сообщения (SKIPPED) и новые TLV. Несмотря на это, v3.4 остаётся доминирующим межсетевым интерфейсом, поскольку поддерживается повсеместно; v5.0 применяется только там, где обе стороны её реализуют.

- Канонический URL: https://www.broadnet.me/ru/reference/smpp-3-4-vs-5-0
- Язык: ru
- Последнее обновление: 2026-07-18
- Издатель: BroadNet (https://www.broadnet.me)

Практические различия между SMPP v3.4 и v5.0: управление перегрузкой, операции широковещания, дополнительные состояния сообщения и TLV — и почему v3.4 остаётся межсетевым стандартом по умолчанию.

## Что добавляет v5.0

v5.0 — это инкрементальная, обратно совместимая ревизия v3.4. Её ключевые добавления — управление перегрузкой (SMSC сообщает о загрузке, чтобы ESME могли замедлиться до троттлинга), семейство операций широковещания для рассылки в стиле cell broadcast, новое состояние сообщения SKIPPED и дополнительные опциональные параметры. Базовый формат PDU, модель bind и submit_sm/deliver_sm не изменились, поэтому ESME на v3.4 может общаться с SMSC на v5.0.

*Добавления v3.4 → v5.0*

| Область | v3.4 | Дополнение v5.0 |
|---|---|---|
| Управление перегрузкой | Нет (реакция на ограничение скорости) | congestion_state TLV — проактивный |
| Широковещательный | Не поддерживается | broadcast_sm / query_broadcast_sm / cancel_broadcast_sm |
| Состояния сообщения | 8 состояний | Добавлен статус SKIPPED (9) |
| Необязательные параметры | Набор TLV v3.4 | Дополнительные TLV |
| interface_version | 0x34 | 0x50 |

## Что осталось прежним

Основы идентичны: 16-байтовый заголовок, кодирование big-endian, три типа bind, состояния сессии, keepalive enquire_link, структуры полей submit_sm/deliver_sm и диапазон ошибок ESME_R* — всё переносится. TLV, введённые в v3.4, остаются механизмом расширения. Эта преемственность намеренна: v5.0 разрабатывалась так, чтобы существующие интеграции v3.4 продолжали работать.

## Какую версию использовать

Используйте v3.4, если у вас нет конкретной причины использовать v5.0 и обе стороны её поддерживают. v3.4 — безопасный универсальный выбор по умолчанию для A2P-межсетевого взаимодействия. Обращайтесь к v5.0, когда вам конкретно нужна её сигнализация перегрузки или операции широковещания, а провайдер подтверждает поддержку. Всегда подтверждайте согласованную версию из bind_resp (TLV sc_interface_version), а не предполагайте, что функция доступна.

## Частые вопросы

### Обратно ли совместима SMPP v5.0 с v3.4?

Да. v5.0 сохраняет формат PDU, модель bind и основные операции v3.4, поэтому ESME на v3.4 и SMSC на v5.0 могут взаимодействовать. Версия объявляется в interface_version (0x34 против 0x50).

### Почему SMPP v3.4 всё ещё самая распространённая версия?

Потому что она реализована повсеместно и полностью покрывает потребности A2P-рассылки. Добавления v5.0 — управление перегрузкой, широковещание — полезны в конкретных сценариях, но не требуются для стандартного трафика MT/MO, поэтому большинство межсетевых соединений осталось на v3.4.

### В чём основная практическая польза v5.0?

Упреждающее управление перегрузкой: TLV congestion_state позволяет SMSC сообщать о своей загрузке, чтобы кооперативный ESME замедлился до жёстких ошибок ESME_RTHROTTLED, обеспечивая более плавную пропускную способность под давлением.

### Как узнать, какую версию согласовала сессия?

Прочитайте TLV sc_interface_version, возвращённый в bind_resp. Не предполагайте, что функции v5.0 доступны, лишь потому что вы отправили interface_version 0x50 — SMSC сообщает, что он фактически поддерживает.

## Источники

- [SMPP v3.4 specification](https://smpp.org/SMPP_v3_4_Issue1_2.pdf)
- [SMPP v5.0 specification](https://smpp.org/SMPP_v5.pdf)

## См. также

- [Обзор протокола SMPP](https://www.broadnet.me/ru/reference/smpp-protocol-overview)
- [SMPP enquire_link и троттлинг](https://www.broadnet.me/ru/reference/smpp-enquire-link-throttling)
- [Операции bind в SMPP](https://www.broadnet.me/ru/reference/smpp-bind-operations)
- [Что такое SMPP?](https://www.broadnet.me/ru/answers/what-is-smpp)
- [Чек-лист интеграции SMPP (руководство)](https://www.broadnet.me/ru/guides/smpp-integration-checklist)
