SMPP协议,CMPP协议是啥子?

CMPP和SMPP都是短信协议中的一种,但它们不是同一类型的协议。SMPP和ESME和SMC(短信中心)之间的协议,而CMPP是SP和中国移动ISMG之间的通讯协议。

SMPP协议,CMPP协议的区别

SMPP协议是点对点协议,又称之为端口对端口协议。一般用在国际短信上。
CMPP是SP(移动端:手机号)对ISMG(互联网短信中心管理)协议,是中国移动的协议。对应的协议有,联通的SGIP协议,中国电信的SMGP协议,网通的CNGP协议。
因为协议差异SMPP的请求数据会比CMPP的更加严谨,可以参考:
https://blog.csdn.net/tylz04/article/details/9045637
https://blog.csdn.net/daibei0402/article/details/4909115
它们的互联网短信王国逻辑网络结构如图1

这边重点讲哈CMPP协议。

CMPP功能概述

CMPP协议主要提供以下两类业务操作:
(1)短信发送(Short Message Mobile Originate,SM MO)
典型的业务操作举例如图2所示:

1)手机发出数据请求(可能是订阅信息或图片点播等),被归属ISMG接收;
2)归属ISMG对接收到的信息返回响应;
3)归属ISMG在本地查询不到要连接的SP,向GNS(汇接网关)发路由请求信息;
4)GNS将路由信息返回;
5)归属ISMG根据路由信息将请求前转给接入ISMG;
6)接入ISMG对接收到的信息返回响应;
7)接入ISMG将请求信息送SP;
8)SP返回响应;
在以上操作中,步骤3到步骤8均使用CMPP协议;
在随后的操作中,接入ISMG在接收到SP的响应后将产生MO状态报告发给归属ISMG。

(2)短信接收(Short Message Mobile Terminated,SM MT)
典型的业务操作举例如图3所示:

1)SP发出数据请求(可能是短信通知或手机铃声等),被接入ISMG接收;
2)接入ISMG对接收到的信息返回响应;
3)接入ISMG在本地数据库中找不到要目的手机号段所对应网关代码,向GNS(汇接网关)发路由请求信息;
4)汇接网关将路由信息返回;
5)接入ISMG根据路由信息将请求前转给归属ISMG;
6)归属ISMG对接收到的信息返回响应;
7)归属ISMG将请求信息发送至SMC;
8)SMC向归属ISMG返回响应;
在上述操作中,步骤1到步骤6均使用CMPP协议;
在随后的操作中,SMC将通过NO.7信令网向移动用户发送信息,移动用户收到后将返回状态报告(Delivery-Receipt)给短信中心,短信中心将按照MO操作的流程将状态报告返回给SP(如果SP要求返回状态报告)。

协议栈

CMPP的协议底层主要通过TCP/IP作为底层通信承载。
SP与ISMG之间、ISMG之间进行信息交互时,可以采用长连接方式,也可以采用短连接方式;现阶段建议均采用长连接的方式。所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发链路检测包以维持此连接。短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,即每次TCP连接只完成一对CMPP消息的发送。

长连接就好比MYSQL数据库那种,只要连接了就不会关闭,确保数据请求能随时响应。

协议涉及的端口号如图4:

接下来是SMS论坛网站(包括国内外的协议规范,模拟器,实施测试,国家号码段,国家码):https://smsforum.net/
下面放SMS源码感兴趣的大家可以参考,或者进群一起学习
https://gitee.com/hajj/SMSGate

SMPP协议,CMPP协议是啥子相关推荐

  1. android 短信编解码方式,中移短信cmpp协议/smpp协议 netty实现编解码

    性能测试 在48core,128G内存的物理服务器上测试协议解析效率:35K条/s, cpu使用率25%. Build 执行mvn package . jdk1.6以上. 增加了业务处理API 业务层 ...

  2. CMPP协议对长短信的支持

    1.CMPP3.0 超长短信 1.长短信息:是指超过70个汉字,140个字节的信息内容. 最近在做一个某地市公司运营商的GPRS导引项目的时候,运营商要求将对用户的提示短信息(超过140个字节)发送到 ...

  3. 【计算机网络】传输层 : 总结 ( TCP / UDP 协议 | 寻址与端口 | UDP 协议 | TCP 协议特点 | TCP 连接释放 | TCP 流量控制 | TCP 拥塞控制 ) ★★★

    文章目录 一.传输层 TCP / UDP 协议 ★ 二.寻址端口号 ★ 三.UDP 协议特点 四.UDP 协议首部格式 五.UDP 校验 六.TCP 协议 特点 ★ 七.TCP 报文段首部格式 八.T ...

  4. 【计算机网络】应用层 : 电子邮件 ( SMTP 协议 | MIME 协议 | POP3 协议 | IMAP 协议 | 基于万维网的电子邮件 )

    文章目录 一.电子邮件信息格式★ 二.电子邮件系统 组成 结构 ★ 三.SMTP 协议 ( 简单邮件传送协议 ) ★ 四.SMTP 协议 连接建立流程 五.SMTP 协议 邮件发送 流程 六.SMTP ...

  5. 【计算机网络】网络层 : BGP 协议 ( BGP 协议简介 | BGP 协议信息交换 | BGP 协议报文格式 | BGP-4 常用报文 | RIP 、OSPF、BGP 协议对比 )

    文章目录 一.路由选择协议分类 二.BGP 协议 简介 三.BGP 协议 信息交换过程 三.BGP 协议 报文格式 四.BGP 协议 特点 五.BGP-4 协议的 四种报文 六.RIP .OSPF.B ...

  6. 【计算机网络】网络层 : DHCP 协议 ( DHCP 协议概念 | DHCP 协议特点 | DHCP 协议流程 )

    文章目录 一.DHCP 协议 概念 二.DHCP 协议 特点 三.DHCP 协议 流程 一.DHCP 协议 概念 DHCP 协议 概念 : ① 全称 : DHCP 协议 全称 "动态主机配置 ...

  7. 【计算机网络】数据链路层 : 轮询访问 介质访问控制 ( 轮询协议 | 令牌传递协议 )

    文章目录 一. 介质访问控制 ( Multiple Access Control ) 二. 轮询协议 三.令牌传递协议 四.令牌传递协议 示例 一. 介质访问控制 ( Multiple Access ...

  8. 网络编程 socket模块 tcp协议 udp协议

    网络基础相关知识 , socket模块 , tcp协议通信代码 , tcp和udp编码流程 网络基础相关知识(1) 架构 C / S 架构: client 客户端 和 server 服务器端 优势:能 ...

  9. websocket中发生数据丢失_tcp协议;websocket协议;同源策略和跨域

    tcp协议 为什么连接的时候是三次握手,关闭的时候却是四次握手? 答:因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文.其中ACK报文是用来应答的,SYN报 ...

  10. 计算机网络 | 网络基础 :网络协议,协议分层,数据封装与分用,地址管理,字节序

    目录 网络协议 网络协议的概念 网络协议的组成 协议分层 OSI七层模型 TCP/IP五层模型(四层模型) 数据封装与分用 封装 分用 地址管理 IP地址与端口 MAC地址 网络字节序与主机字节序 网 ...

最新文章

  1. R语言编写自定义函数、评估回归模型预测变量的相对重要性(Relative importance)、通过在所有可能的子模型中添加一个预测变量而获得的R方的平均增加、评估预测变量的重要度、并通过点图可视化
  2. 一文读懂:深扒人脸识别60年技术发展史
  3. django -- 插入行的不同方式
  4. Asp.net 操作cookie大全
  5. php处理微信返回xml数据,php将微信返回的xml格式转换成数组
  6. 基于MATLAB的MIMO系统分层空时码的仿真
  7. 网友希望一加7像iPhone XR一样流畅 刘作虎:iPhone很卡
  8. UVA10878 Decode the tape【编码】
  9. 小游戏策划案例精选_小游戏活动策划方案
  10. html缓存的图片放在哪里,浏览器图片缓存在哪
  11. socket: (10106) 无法加载或初始化请求的服务提供程序。
  12. springboot基于java的校园二手书籍交易平台毕业设计源码131558
  13. Jekyll分页功能
  14. 有感觉,有深意的说辞
  15. 【前端】页面适配?移动端适配屏幕的各种解决方案!
  16. pytorch中tf.nn.functional.softmax(x,dim = -1)对参数dim的理解
  17. 图片绘制适应屏幕处理的一些思路
  18. java计算时间区间工作日_Java如何计算两个日期之间的工作日数?
  19. 拼多多关键词推广技巧有哪
  20. 8051单片机Proteus仿真与开发实例-ULN2003A驱动步进电机仿真

热门文章

  1. Windows如何刷新DNS缓存
  2. 会声会影2022新版本对电脑配置要求
  3. VS2008SP1安装不上
  4. 【虚幻引擎4系列教程】第1章:虚幻引擎4的安装指导
  5. SSM框架-小区物业管理系统(附源码)
  6. 利用MATLAB编写高斯积分
  7. jsp为什么被淘汰了?
  8. 3.5 数值分析: 例题及迭代法收敛的充分条件
  9. windowskb2685811补丁_kb2685811安装失败
  10. 计算机启动命令提示符,7种方式在Windows 10中打开或启动命令提示符 | MOS86