# SMPP协议是如何工作的？

- 规范 URL: https://www.broadnet.me/zh/answers/smpp-protocol
- 语言: zh-CN
- 最后更新: 2026-10-19
- 发布方: BroadNet (https://www.broadnet.me)
- 上述页面的 Markdown 版本，根据渲染后的页面生成。

协议 BroadNet回答

最后审核日期 2026年10月2日1 分钟阅读由BroadNet工程团队审核

本页内容

1. 01快速回答
2. 02详细回答
3. 03这是否有帮助？
4. 04相关问题

深入了解

[SMPP protocol overview](https://www.broadnet.me/reference/smpp-protocol-overview)

[浏览全部问答](https://www.broadnet.me/zh/answers)

快速回答

SMPP (Short Message Peer-to-Peer)是一种开放的TCP协议，用于在应用程序（即ESME）与移动运营商的SMSC之间传输A2P短信。ESME会开启持久绑定，将消息作为二进制submit_sm PDU提交，并通过同一套套接字接收状态报告。3.4版本（1999）几乎运行着当今所有的商业A2P绑定；虽然存在5.0版本，但很少被部署。SMPP是替代REST短信API的高吞吐量方案。

通俗定义供应商中立审核日期 2026年10月2日

来自平台

## 使用真实密钥进行测试，然后正式上线。

申请测试权限，然后向您自己的已验证号码发送首批消息。在正式上线前，我们会审核发送者身份、流量用途及目的地要求。

[申请测试权限（英文表单）](https://www.broadnet.me/zh/contact?intent=test-access)

流程图您的平台与 BroadNet 之间的 SMPP 会话

您的平台 (ESME)

BroadNet SMSC

一个持久的 TCP/TLS 连接

1. `bind_transceiver` 开启并验证会话
2. `bind_transceiver_resp` 会话已接受
3. `submit_sm` 发送消息
4. `submit_sm_resp` 已接受，已返回消息ID
5. `deliver_sm` 状态报告或入站消息
6. `deliver_sm_resp` 已确认
7. `enquire_link` 空闲时的保活机制

详细回答

## 只提供有价值的信息，杜绝冗余。

§01

### SMPP的工作原理，逐步解析

ESME开启一个TCP（理想情况下为TLS）连接，并发送带有system_id和密码的bind_transceiver。绑定完成后，它将每条消息作为submit_sm PDU提交；SMSC通过携带message_id的submit_sm_resp进行确认。状态报告通过同一个套接字以deliver_sm PDU的形式异步到达，并由message_id进行匹配。每30秒一次的enquire_link心跳包可保持会话活跃，unbind操作则可干净地关闭连接。详见/answers/what-is-smpp和/answers/what-is-esme.

§02

### 绑定类型与版本

ESME可绑定为发送端（仅发送）、接收端（仅接收）或收发端（在单个连接上实现双向）。基于SMPP 3.4的收发端是现代默认标准。SMPP 5.0增加了Unicode清晰报头和小区广播支持，但几乎无人部署 —— 目前的装机量绝大多数仍为3.4。BroadNet接受SMPP 3.4绑定；主机、端口和凭据将在您申请测试权限时提供。详见 /answers/smpp-3-4-vs-5-0.

§03

### 相比REST API的优势

一旦建立持久绑定，每条消息的成本几乎为零，因此在持续的大业务量下，SMPP消耗的CPU仅为按需请求式HTTPS的十分之一，带宽仅为四分之一。这是实现向SMSC提供低于100ms p99延迟的唯一方法——关键路径上没有HTTP握手——并且可以实时流式传输DLR。请参阅/compare/sms-api-vs-smpp.

§04

### 限制与注意事项

SMPP是一种必须由您操作的二进制协议：绑定管理、带有指数退避机制的重连、序列号追踪，以及通过message_id进行的DLR匹配（在某些SMSC上返回十六进制，在其他设备上返回十进制）均需由您负责。错误处理非常简练——提交失败会返回一个您必须解码的数字command_status。请使用/tools/smpp-error-codes查询将这些代码转换为具体操作。一个生产级的SMPP客户端拥有数千行代码；建议直接购买而非自行开发。

§05

### 您应该在何时选择SMPP而不是REST？

当您的每秒发送量达到数百条消息，或需要持久绑定（每个绑定的容量由您的客户团队协商确定），或者需要运行对延迟极度敏感、每一毫秒都至关重要的 OTP，或者需要集成到已广泛支持 SMPP 的运营商/聚合商生态系统中时，请选择 SMPP。否则，使用 REST SMS API（BroadNet 无固定的单账户速率限制）运行更简单，且通过相同的路由进行交付。请参阅 /developers/smpp 和 /products/sms-api。

§06

### SMPP使用哪个端口，2026年还会继续使用吗？

SMPP没有单一的预留端口；2775是历史性的明文默认端口，且运营商通常会在专用端口上开放TLS（BroadNet会根据您的账户提供其TLS端口）。是的——SMPP依然完全适用：它是几乎所有A2P互联合同中定义的协议，且BroadNet通过1,000多个运营商连接运行着1,000多个活动绑定，自2003年以来，以99.99%的正常运行时间每天承载超过3亿条消息。

BN由BroadNet工程团队编写·自2003年起运营电信级消息服务，总部位于迪拜· [编辑标准](https://www.broadnet.me/zh/about/editorial-standards)

[主题中心SMPP详解](https://www.broadnet.me/zh/explained/smpp)

相关问题

- [01什么是SMPP？](https://www.broadnet.me/zh/answers/what-is-smpp)
- [02 SMPP 3.4与SMPP 5.0对比——有哪些变化，该用哪个。](https://www.broadnet.me/zh/answers/smpp-3-4-vs-5-0)
- [03什么是ESME？](https://www.broadnet.me/answers/what-is-esme)
- [04什么是DLR（状态报告）？](https://www.broadnet.me/zh/answers/what-is-dlr)
- [05什么是SMSC？](https://www.broadnet.me/zh/answers/what-is-smsc)

[查看完整知识库](https://www.broadnet.me/zh/answers)

使用此项构建

- [SMPP集成](https://www.broadnet.me/developers/smpp)
- [SMPP错误代码查询](https://www.broadnet.me/tools/smpp-error-codes)
- [SMS API](https://www.broadnet.me/zh/products/sms-api)
- [开发者文档](https://www.broadnet.me/zh/developers)
- [SMSC网关](https://www.broadnet.me/zh/operators/smsc-gateway)

使用此项构建

### 需要协助进行对接吗？

以下页面涵盖了实现该概念的产品及集成指南。如果您希望进行实时演示，我们的工程团队可在中东和北非（MENA）工作时间内提供当日通话咨询。

[联系我们的工程团队](https://www.broadnet.me/zh/contact?topic=engineering)

- [SMPP集成](https://www.broadnet.me/developers/smpp)
- [SMPP错误代码查询](https://www.broadnet.me/tools/smpp-error-codes)
- [SMS API](https://www.broadnet.me/zh/products/sms-api)
- [开发者文档](https://www.broadnet.me/zh/developers)
- [SMSC网关](https://www.broadnet.me/zh/operators/smsc-gateway)

参考资料

### 我们引用的源文件。

本页面引用的标准机构与监管机构。在新标签页中打开。

- [SMPP 3.4 specification](https://smpp.org/SMPP_v3_4_Issue1_2.pdf)
- [SMPP 5.0 specification](https://smpp.org/SMPP_v5.pdf)

反馈

### 此回答对您有帮助吗？

您的投票将帮助我们决定优先通过示例、图表和代码片段来扩展哪些回答。

此回答对您有帮助吗？

谢谢 — 已记录。我们将持续维护此回答。

收到了。请告诉我们哪些内容缺失了—— [发送简短反馈](https://www.broadnet.me/zh/contact?topic=answer-feedback)。

[我们如何撰写和审核内容](https://www.broadnet.me/zh/about/editorial-standards)

[主题中心SMPP详解](https://www.broadnet.me/zh/explained/smpp)

相关问题

- [01什么是SMPP？](https://www.broadnet.me/zh/answers/what-is-smpp)
- [02 SMPP 3.4与SMPP 5.0对比——有哪些变化，该用哪个。](https://www.broadnet.me/zh/answers/smpp-3-4-vs-5-0)
- [03什么是ESME？](https://www.broadnet.me/answers/what-is-esme)
- [04什么是DLR（状态报告）？](https://www.broadnet.me/zh/answers/what-is-dlr)
- [05什么是SMSC？](https://www.broadnet.me/zh/answers/what-is-smsc)

[查看完整知识库](https://www.broadnet.me/zh/answers)

还需要帮助吗？

## 与真正的工程师讨论您的开发方案。

我们将在一个工作日内回复，生产账户可享受24/7全天候支持。我们的解决方案工程师交付的是代码，而非脚本。

[联系技术支持](https://www.broadnet.me/zh/contact) [联系销售](https://www.broadnet.me/zh/contact?topic=sales)

$ curl -X POST https://api.broadnet.me/sms/sendSms

响应SLA

测试权限申请我们将在一个工作日内回复

生产环境24 / 7 · < 15 min

运营商NOC 24 / 7 · 呼叫器

[support@broadnet.me](mailto:support@broadnet.me) · [+971 4 456 7768](tel:+97144567768)
