- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GSM短信编码与协议分析
1短信基本原理
由ESTI制订的SMS规范中,一共有三种方式来发送和接收SMS信息:Block Mode, Text Mode 和PDU Mode。Block Mode已很少使用。Text Mode是纯文本方式,可使用不同的字符集, 从技术上说也可用于发送中文短消息,但国内手机基本上不支持,主要用于欧美地区°PDU Mode被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式。PDU串表面上 是一串ASCII码,由‘ 0’ - ‘9’、 ‘A’ - ‘F’这些数字和字母组成。它们是8位字节的
十六进制数,或者BCD码十进制数。PDU串不仅包含可显示的消息本身,还包含很多其它信 息,如SMS服务中心号码、目标号码、回复号码、编码方式和服务时间等。在PDUMode中, 可以采用三种编码方式来对发送的内容进行编码,它们是7-bit、8-bit和UCS2编码。7-bit 编码用于发送普通的ASCII字符,它将一串7-bit的字符(最高位为0)编码成8-bit的数据, 每8个字符可“压缩”成7个。我们通常在短信中所说的ASCII编码方式,实际上是指7-bit 编码,而7-bit编码方式不仅能表示普通的ASCII字符,还可以表示一些特殊字符,因此 7-bit编码和ASCII编码实际上是两个完全不同的概念,它们仅仅在一些普通的ASCII字符 上编码相同;8-bit编码通常用于发送数据消息,比如图片和铃声等;而UCS2编码用于发 送Unicode字符。PDU串的用户信息(TP-UD)段最大容量是140字节,所以在这三种编码方 式下,可以发送的短消息的最大字符数分别是160、140和70。这里,将一个英文字母、一 个汉字和一个数据字节都视为一个字符。
2短信协议栈
GSM定义的短信基本架构如下图:
短信协议栈如下图:
SI]-AL泌TL
SI]-AL
泌TL
SI]-RL
SM-AL: Short Message Application Layer
SM-TL: Short Message Transfer Layer
SM-RL: Short Message Relay Layer 其它术语请参考《GSM 03.40》相关文档
3、短信PDU格式
参考上图,我们着重讨论在SM-TL层的PDU结构。在SM-TL层,定义了以下六种PDU类型: SMS-DELIVER:从 SC 到 MS 传递短信 SMS-DELIVER-REPORT SMS-SUBMIT:从 MS 到 SC 传递短 信 SMS-SUBMIT-REPORT SMS-STATUS-REPORT SMS-COMMAND 不同的 PDU 类型,定义了不同的 字段要求,比如 SMS-DELIVER 定义了 TP-MTI, TP-MMS, TP-RP, TP-UDHI, TP-OA, TP-PID, TP-DCS, TP-SCTS, TP-UDL, TP-UD,这些字段有些只占用一个位,有些占用多个位或一个字 节或多个字节。图示布局如下:
Layout of SMS-DELIVER:
NOTE:Bi t H.O .Oct t no tTP-OATP-PIDTP-DCSTP-SCTS
NOTE:
Bi t H.O .
Oct t no t
TP-OA
TP-PID
TP-DCS
TP-SCTS
TP-UDL
TP-UD
m白* 140
Any unusedl bits will be set to zero by the sending entity and will be ignored by the receiving entity.
TF-MMSp
TP-UDHI, TP-RP
4、长短信分析
随着手机终端的飞速发展,对长短信的支持越来越灵活,长短信应用也越来越广泛。比如现 在很多手机已经支持自动拆分长短信为多条短信发送。在此我们详细研究长短信的编码方 式。
在以上章节举例的PDU字段中,需要特别留意几个字段:TP-UDHI, TP-UDL,TP-UD,对于一 般非超长的普通短信,TP-UDHI字段是可选的,除非特殊的WAP Push等应用。但是对于超 长短信,这个字段必须要设置为1,才能构造成功的超长短信让手机自动合并。
TP-UDHI(TP?User?Data?Header?Indicator)字段在第一个字节的第 7 bit 位(bit 6), 占用一个bit,用来标识该短信是否拥有一个头信息,当TP-UDHI = 0时,表示在TP?UD中 没有头信息,当TP-UDHI = 1时,表示在TP?UD中含有头信息。长短信必须要在TP-UD中构 造特殊的头部信息。
短信消息体中的头部信息的结构可参考如下:
FIELD
LENGTH
Length of U
原创力文档


文档评论(0)