您的位置 首页 > 产业综合

联通彩信设置?网络下彩信收发流程分析

其实联通彩信设置的问题并不复杂,但是又很多的朋友都不太了解网络下彩信收发流程分析,因此呢,今天小编就来为大家分享联通彩信设置的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

adbshelllogcat-vtime-bradio>logcat_radio.txt

adbshelllogcat-vtime>logcat.txt

adbshelltcpdump-iany-s0-w/data/tcpdump.pcap

MmsService|QtiGsmDCT|ConnectivityService:|Apnsettings

1.短信发送前先要给qcril发setupdatacall请求

2.qcril再通过qmi请求startnetworkinterface告诉modem发起PDNconnectivityrequest,

3.EMM实体发送以下三条NAS信令建立起到彩信网关的默认承载(到CT的是qci=8的承载):

[0xB0E3]OTALOGLTENASESMPlainOTAOutgoingMessagePDNconnectivityrequestMsg

[0xB0E2]OTALOGLTENASESMPlainOTAIncomingMessageActivatedefaultEPSbearercontextrequestMsg

[0xB0E3]OTALOGLTENASESMPlainOTAOutgoingMessageActivatedefaultEPSbearercontextacceptMsg

有以上三条消息,说明PDN建立成功,也意味着qcril的Setupdatacall请求成功。Datacall机那里起来后,有几点信息必须要从log中分析出来(qcril中过滤call_params):

1.源IP地址是手机的IP地址,即IPAddresses,端口随机

2.目的IP地址是彩信网关的IP地址,即GatewayAddresses,端口一般是80

这样我们就知道了网络上两个交互程序的标识(IP+PORT)。

并且我们知道彩信的收发是使用HTTP协议,因此在Wireshark里面应用以下过滤器,就可以把整个彩信收发流程涉及到的数据包过滤出来:

(ip.src==10.0.0.172)or(ip.dst==10.0.0.172)ormmseorhttp.accept

(ip.src==10.0.0.200)or(ip.dst==10.0.0.200)or(mmse)orhttp.accept

10.0.0.172是移动和联通手机wap上网的代理服务器,10.0.0.200是中国电信的

可以通过qcat工具将qxdm抓取的.isflog转换成pcap格式,然后通过Wireshark工具打开分析.

如下是一个完整的qxdm抓取的MMS发送过程的截图:

SMS只能传输文本信息,每次最多140个字节,MMS有自己的消息格式,并且为了减少传输的数据量,克服无线网络带宽窄、高延迟、稳定性差等特点,需要对传输的数据进行压缩。基本的压缩编码机制是由WAP-209-MMSEncapsulation定义的。发送和接收MMS的通信中,被传输的是MMSPDU(协议数据单元)。

MMSC是整个系统的核心,它完成对MM的存储和处理,包括消息的输入输出,地址解析,通知报告等,它由MMS中继服务器MMSRelay,MMSServer,UserDB,MseeageStore等组成。

a)客户端将MM发送给发端MMS代理中继(M-Send.req)

b)发端MMS代理中继发送给客户端(M-Send.conf)

c)从MMS代理中继取回消息(WSP/HTTPGET.req)

d)接收MM回复,收端代理中继发送至客户端(M-Retrieve.conf)

e)新MM到达通知,收端代理中继发送至客户端(M-Notification.ind)

f)MM通知回复,客户端发送至收端代理中继(M-NotifyResp.ind)

g)己发送消息的发送报告(M-Delivery.ind)

h)应答发送的消息(M-Acknowledge.ind)

i)已发送消息的阅读报告(M-Read-Rec.ind,M-Read-Orig.ind)

j)转发消息(MMS客户端发送一个请求让MMS代理中继转发消息M-Forward.req和M-Forward.conf

k)存储或更新消息(M-Mbox-Store.req,M-Mbox-Store.conf)

l)浏览下载消息(M-Mbox-View.req,M-Mbox-View.conf)

m)MMBOX上传操作(M-Mbox-Upload.req,M-Mbox-Upload.conf)

n)MMBOX删除操作(M-Mbox-Delete.req,M-Mbox-Delete.conf)

MMS服务的实现是通过MMS客户端和MMS分发代理之间相互唤起和响应来传递信息的,这些传输流包括MM信息和相应的响应状态信息等。而这些MM信息被封装在相关的PDU中进行传输。

完整的MMS信息被包含在MMSPDU之中,采用多媒体邮件扩展MIME方式打包。在基于WAP的传输方式中,MMSPDU被封装在WSPPDU之中,作为WSP的消息体传输。WSPPDU的内容类型必须被指定为application/vnd.-wap.mms-message,用以指明客户端应该进行的处理操作,它可以将多媒体部分的内容与显示控制部分的内容封装成为一个消息体。MMSPDU由MMS头和消息体组成。MMS头具体的描述了PDU的特定信息,消息体是可选的。通信的大多数情况是没有消息体的,只有在M-Send.req和M-Retrieve.conf原语中有消息体。在一个MMS中一次可填充多个消息体,消息体可以是不同类型的,由多个媒体对象组成,每个对象占据一个part(按照RFC2387标准)。根据消息内容的组装是否有序,消息的组装方式分为:.application/vnd.wap.multipart.mixed方式,所有的消息内容混合在一起,没有时间上的顺序,在终端同一时间一次就把所有的消息内容显示出来。.application/vnd.wap.multipart.related方式,各消息内容之间有一定关系,该关系可能是显示的时间上的先后,显示的位置等。这样在终端显示该消息的时候,就可以以类似"小电影"的方式显示一系列消息,使得该MM的显示更加趣味化。

在MMSPDU之中,application/vnd.wap.multipart.related含有显示控制语言"presentation",而application/vnd.wap.multipart.mixed不含有显示控制语言。通过application/vnd.wap.multipart.related内容类型可以将多媒体部分的内容与显示控制部分"presentation"内容封装成为一个消息体。

由上图可看出MMS传输MM相关的PDU的整个过程为:1)MMS客户端发送MM时,MM被封装在称为M-Send.reqPDU中,并被传送给MMS分发代理;2)通过M-Send.confPDU接收分发代理返回的信息;3)MMS分发代理通过M-Notification.indPDU通知MMS客户端有新MM到达,MMS客户端通过M-NotifyResp.indPDU进行回应;4)MMS客户端从MMS分发代理请求MM下载的操作基于标准的WSP/HTTPGET方法,本项目中采用WSPGET.reqPDU,回应下载的PDU类型为M-Retrive.confPDU;5)MMS客户端可以向MMS分发代理请求M-Forward.reqPDU转发位于服务器上的MM,并获取回应信息M-Forward.confPDU;6)当MMS客户端发送或转发的MM被接收方成功接收后,如果发送方请求传达报告、接收方允许该操作,则分发代理会向发送方发送传达报告M-Delivery.indPDU,指示mm传送状态信息,不需要客户端进行回应或确认;7)当发送方要求已读报告、接收方允许己读报告时,MMS客户端产生M-read-rec.indPDU发送给接收方的分发代理,由其转发给原始发送方的分发代理,后者接收到M-read-rec.indPDU后,产生一个M-read-orig.indPDU并将其发送到MMS客户端来传送已读报告;8)MMS客户端通过M-Mbox-Store.reqPDU和M-Mbox-Store.confPDU将新到MM存储到MMBOX,或更新已在MMBOX中的MM的状态和标记;通过M-Mbox-View.reqPDU向MMS分发代理请求位于MMBOX中的一个或多个MM的信息用于浏览,也可以获取指定的MM的内容;通过M-Mbox-Upload.reqPDU将本地的MM上传存储到MMBOX中;通过M-Mbox-Delete.reqPDU请求MMS分发代理删除位于MMBOX中的MM.MMBOX中的MM均有MM标记属性,其由客户端进行维护,主要用于客户端检索、过滤MM之用,这些功能支持是可选的。

END,本文到此结束,如果可以帮助到大家,还望关注本站哦!

本站涵盖的内容、图片、视频等数据,部分未能与原作者取得联系。若涉及版权问题,请及时通知我们并提供相关证明材料,我们将及时予以删除!谢谢大家的理解与支持!

Copyright © 2023