📄 mms实现详细分析(benq m22模块)--(2)---mms pdu的头域和二进制编码分析_resplendent.htm
字号:
<SCRIPT type=text/javascript> /*<![CDATA[*/window.onerror=function(){return true;}var RelatedDocData = null, GetAndEval = false;(function(){ var xhr = BdAjax.getXHR(); if(xhr == null){ RelatedDocData = -1; return; } xhr.open("GET", "/sys/search?type=8&word=MMS%CA%B5%CF%D6%CF%EA%CF%B8%B7%D6%CE%F6%A3%A8BENQ%20M22%C4%A3%BF%E9%A3%A9%2A%2D%2D%A3%A82%A3%A9%2D%2D%2DMMS%20PDU%B5%C4%CD%B7%D3%F2%BA%CD%B6%FE%BD%F8%D6%C6%B1%E0%C2%EB%B7%D6%CE%F6&item=bf597507bf427fc87a894754&t=" + new Date().getTime(), true); xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ if(xhr.status == 0 || xhr.status == 200){ if(GetAndEval){ eval(xhr.responseText); }else{ RelatedDocData = xhr.responseText; } } } } xhr.send(null);})();/*]]>*/</SCRIPT>
<META content="MSHTML 6.00.2900.2722" name=GENERATOR></HEAD>
<BODY onload=formatonlinpic();>
<CENTER>
<SCRIPT type=text/javascript>/*<![CDATA[*/if(top.location != self.location){ top.location = self.location;}var myref = encodeURIComponent("http://hi.baidu.com/luv%5Fresplendent/blog/item/bf597507bf427fc87a894754%2Ehtml");/*]]>*/</SCRIPT>
<LINK
href="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/mods.css"
type=text/css rel=stylesheet><LINK
href="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/fa69aff4f5c7856eddc474e1.css"
type=text/css rel=stylesheet><LINK
href="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/space.css"
type=text/css rel=stylesheet>
<STYLE type=text/css>#usrbar {
PADDING-RIGHT: 10px; PADDING-LEFT: 0px; FONT-SIZE: 12px; BACKGROUND: #ffffff; FILTER: alpha(opacity=65); PADDING-BOTTOM: 3px; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 19px; PADDING-TOP: 4px; FONT-FAMILY: Arial; LETTER-SPACING: normal; HEIGHT: 19px; TEXT-ALIGN: right; moz-opacity: 0.5
}
#usrbar A {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#usrbar A:link {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#usrbar A:visited {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#ft {
CLEAR: both; FONT-SIZE: 12px; COLOR: #666666; LINE-HEIGHT: 20px; FONT-FAMILY: Arial; HEIGHT: 20px; TEXT-ALIGN: center
}
#ft A {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#ft A:link {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#ft A:visited {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#usrbar {
LETTER-SPACING: normal
}
#usrbar A {
LETTER-SPACING: normal
}
#usrbar A:link {
LETTER-SPACING: normal
}
#usrbar A:visited {
LETTER-SPACING: normal
}
#ft {
LETTER-SPACING: normal
}
#ft A {
LETTER-SPACING: normal
}
#ft A:link {
LETTER-SPACING: normal
}
#ft A:visited {
LETTER-SPACING: normal
}
</STYLE>
<DIV id=usrbar><NOBR><A href="http://www.baidu.com/" target=_blank>百度首页</A> | <A
id=hi_index href="http://hi.baidu.com/" target=_blank>百度空间</A>
<SCRIPT type=text/javascript> document.write('| <a href="http://passport.baidu.com/?login&tpl=sp&tpl_reg=sp&u=http://hi.baidu.com' + encodeURIComponent('/luv%5Fresplendent/blog/item/bf597507bf427fc87a894754%2Ehtml') + '">登录</a>'); </SCRIPT>
</NOBR></DIV>
<SCRIPT type=text/javascript>function set_cookie_4_bdtip(index/* start from one */, value){ var bdtip = document.cookie.match(/(^| )BDTIP=([^;]*)(;|$)/); if(!bdtip){ bdtip=new Array(index); for(var i=0,n=bdtip.length;i<n;i++) { if(bdtip[i]=="" || bdtip[i]==null) bdtip[i]=0; if(i == index - 1){ bdtip[i] = value; } } }else{ bdtip = bdtip[2].split('-'); if(index > bdtip.length) bdtip.length= index; for(var i = 0, j = bdtip.length; i < j; i ++){ if(bdtip[i]=="" || bdtip[i]==null) bdtip[i]=0; if(i == index - 1){ bdtip[i] = value; } } } bdtip = bdtip.join('-'); document.cookie = "BDTIP=" + bdtip+ ";expires=Wed, 28-Nov-37 01:45:46 GMT;path=/;domain=.baidu.com";}</SCRIPT>
<DIV id=main align=left><!--[if IE]>
<SCRIPT>
var objmain = document.getElementById("main");
function updatesize(){ var bodyw = window.document.body.offsetWidth; if(bodyw <= 790) objmain.style.width="772px"; else if(bodyw >= 1016) objmain.style.width="996px"; else objmain.style.width="100%"; }
updatesize(); window.onresize = updatesize;
</SCRIPT>
<![endif]-->
<DIV id=header>
<DIV class=lc>
<DIV class=rc></DIV></DIV>
<DIV class=tit><A class=titlink
title="luv_resplenden的空间 http://hi.baidu.com/luv_resplendent"
href="http://hi.baidu.com/luv_resplendent">Resplendent</A></DIV>
<DIV class=desc>☆21世纪、什么最重要—我!博客新地址:http://blog.csdn.net/luv_y</DIV>
<DIV id=tabline></DIV>
<DIV id=tab><A href="http://hi.baidu.com/luv_resplendent">主页</A><A class=on
href="http://hi.baidu.com/luv_resplendent/blog">博客</A><A
href="http://hi.baidu.com/luv_resplendent/album">相册</A><SPAN>|</SPAN><A
href="http://hi.baidu.com/luv_resplendent/profile">个人档案</A> <SPAN>|</SPAN><A
href="http://hi.baidu.com/luv_resplendent/friends">好友</A> </DIV></DIV>
<DIV class=stage>
<DIV class=stagepad>
<DIV style="WIDTH: 100%">
<TABLE class=modth cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=modtl width=7> </TD>
<TD class=modtc noWrap>
<DIV class=modhead><SPAN class=modtit>查看文章</SPAN></DIV></TD>
<TD class=modtc noWrap align=right></TD>
<TD class=modtr width=7> </TD></TR></TBODY></TABLE>
<DIV class=modbox id=m_blog>
<DIV class=tit>MMS实现详细分析(BENQ M22模块)*--(2)---MMS PDU的头域和二进制编码分析</DIV>
<DIV class=date>2008-06-07 上午 10:58</DIV>
<TABLE style="TABLE-LAYOUT: fixed">
<TBODY>
<TR>
<TD>
<DIV class=cnt id=blog_text>
<P><FONT size=3>为了便于理解,以下以发送请求(M-Send.req) PDU为例,对<FONT
color=#993300><STRONG>MMS PDU的头域和二进制编码进行了分析</STRONG>。<IMG
src="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/j_0007.gif"></FONT></FONT></P>
<P></P>
<P><FONT color=#993300 size=3><STRONG>MMS PDU的头域</STRONG></FONT></P>
<P><FONT color=#008080 size=3><STRONG>转载注明源地址:</STRONG></FONT></P>
<P><FONT color=#008080 size=3><STRONG><A
href="http://hi.baidu.com/luv_resplendent/blog/item/bf597507bf427fc87a894754.html">http://hi.baidu.com/luv_resplendent/blog/item/bf597507bf427fc87a894754.html</A></STRONG></FONT></P>
<P><FONT size=3>具体含义见表</FONT></P>
<P></P>
<P></P>
<P><FONT size=3>MMS头:<BR>
8C—表示X-Mms-Message-Type<BR> 80—
m-send-req<BR> 98—
X-Mms-Transaction-ID<BR> 39 36 30 34 30 35
39-Transaction-ID值:9604059<BR> 8D—
X-Mms-Version<BR> 90— MMS
Version值1.0<BR> 2B 38 36 3133 39 30 30 30 30 30 30 30
30—具体源地址:+8613900000000<BR> 2B 38 36 3133 35 32 31 30 36
39 35 36 34—目的地址:+8613521069564<BR> 2F 54 59 50 45 3D 50
4C 4D 4E 00— TYPE=PLMN<BR> 96—主题<BR>
7465737400—主题值:test<BR> 32 30 30 36 30 33 33 313138 33
37 00— 200603311837(2006.3.31 18:37)<BR>
85—表示date<BR> 88—表示X-Mms-Expiry<BR> 44
30 FB F3— X-Mms-Expiry时间值<BR>
84—表示:Content-Type<BR> MMS消息体:<BR>
A3—表示:application/vnd.wap.multipart.mixed<BR>
A1—表示:multipart/form-data<BR>
9E—表示:image/jpeg(表示之后的图片数据属性为JPEG格式)<BR> FF
D8—表示图片的开始<BR>
······—表示传输的JPEG图片数据(本论文对JPEG图片数据不再作分析)<BR> FF
D9—表示图片的结束<BR> 以上分析的就是一个典型的MMS PDU消息格式,即MMS
PDU包含MMS头和MMS消息体。发送的MMS信息只有一张图片,采用JPEG编码格式;目的手机号:13521069564;主题值:test.<BR>
由于只发送单一的图像或文本,Content-Type被设置为applicationJvnd.wap.multipart.related方式。Content-Type后面是JPEG图像数据:image/jpeg,再不需要加入SMIL描述部分和Start参数设置,这样可以减少传输的字节数据,优化网络传输。在实现MMS发送时,可以根据MMS的内容选择不同的Content-Type.<BR></FONT></P>
<P></P>
<DIV forimg="1">
<P><FONT size=3><IMG class=blogimg
src="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/797d78f9d29aeb4d242df253.jpg"
border=0 small="0"></FONT></P>
<P></P>
<DIV forimg="1">
<P><FONT size=3><IMG class=blogimg
src="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/9f37e2a9379144e81f17a25b.jpg"
border=0 small="0"></FONT></P>
<P><FONT size=3>为了节约无线领域的带宽资源,表中分配数值即为每个域名关键字使用预定义的二进制编码,MMS
PDU封装的二进制编码的基本编码机制来源于WAP/WSP,最优化在空中传播的数据量。MMS
PDU生成及翻译是MMS客户机程序的重要组成部分。其它类型的PDU头域大致和发送请求(M-Send.req)的头域是类似的。</FONT></P>
<P><FONT size=3><IMG
src="MMS实现详细分析(BENQ M22模块)--(2)---MMS PDU的头域和二进制编码分析_Resplendent.files/j_0017.gif"><BR></FONT><FONT
size=3><STRONG><FONT color=#993300>MMS
PDU数据分析<BR></FONT></STRONG> 现以MMS发送过程中获取的一段MMS
PDU数据流为例进行数据分析(具体的MMS发送数据流和数据流获取过程将在后面分析)。这段MMS
PDU数据流是十六进制数据,进行ASCII码转换后(为了与MMS控制字符区别,部分ASCII码做了数据转意),对照前面分析的MMS
PDU封装格式和头域编码,根据对解码数据的分析,这段典型的MMS PDU协议封装格式分析如下:<BR>
获取的MMS PDU十六进制数据流:<BR>
8C809820202039363034303539008D90891A802B383631 33
39303030<BR>30303030302F545950453D504C4D4E00972B3836313335323130363935<BR>36342F545950453D504C4D4E0096746573740032303036303333313138<BR>33
37 00 85 04 44 2D 07 73 88 06 80 04 44 30 FB F3 84 A3 0101 A1 9E FF
D8......(标准<BR>的JPEG图片数据略)......FF D9<BR>
其中对某些具体数据分析如下:</FONT></P>
<P><FONT size=3>MMS头:<BR>
8C—表示X-Mms-Message-Type<BR> 80—
m-send-req<BR> 98—
X-Mms-Transaction-ID<BR> 39 36 30 34 30 35
39-Transaction-ID值:9604059<BR> 8D—
X-Mms-Version<BR> 90— MMS
Version值1.0<BR> 2B 38 36 3133 39 30 30 30 30 30 30 30
30—具体源地址:+8613900000000<BR> 2B 38 36 3133 35 32 31 30 36
39 35 36 34—目的地址:+8613521069564<BR> 2F 54 59 50 45 3D 50
4C 4D 4E 00— TYPE=PLMN<BR> 96—主题<BR>
7465737400—主题值:test<BR> 32 30 30 36 30 33 33 313138 33
37 00— 200603311837(2006.3.31 18:37)<BR>
85—表示date<BR> 88—表示X-Mms-Expiry<BR> 44
30 FB F3— X-Mms-Expiry时间值<BR>
84—表示:Content-Type<BR> MMS消息体:<BR>
A3—表示:application/vnd.wap.multipart.mixed<BR>
A1—表示:multipart/form-data<BR>
9E—表示:image/jpeg(表示之后的图片数据属性为JPEG格式)<BR> FF
D8—表示图片的开始<BR>
······—表示传输的JPEG图片数据(本论文对JPEG图片数据不再作分析)<BR> FF
D9—表示图片的结束<BR> 以上分析的就是一个典型的MMS PDU消息格式,即MMS
PDU包含MMS头和<BR>MMS消息体。发送的MMS信息只有一张图片,采用JPEG编码格式;目的手机号13521069564;主题值:test.<BR>
由于本实验中只发送单一的图像或文本,Content-Type被设置为applicationJvnd.wap.multipart.related方式。</FONT><FONT
size=3>Content-Type后面是JPEG图像数据:image/jpeg,再不需要加入SMIL描述部分和Start参数设置,这样可以减少传输的字节数据,优化网络传输。在实现MMS发送时,可以根据MMS的内容选择不同的Content-Type.<BR></FONT></P>
<P><FONT color=#993300 size=3><STRONG><A
href="http://hi.baidu.com/luv_resplendent/blog/item/aa546efc91493987b901a0b3.html"
target=_blank>下一篇:MMS发送的无线网络连接协议分析</A></STRONG></FONT></P>
<P></P><FONT color=#993300 size=3><STRONG>
<P><FONT color=#008080 size=3><STRONG>转载注明源地址:</STRONG></FONT></P>
<P><FONT color=#008080 size=3><STRONG><A
href="http://hi.baidu.com/luv_resplendent/blog/item/bf597507bf427fc87a894754.html">http://hi.baidu.com/luv_resplendent/blog/item/bf597507bf427fc87a894754.html</A></STRONG></FONT></P></STRONG></FONT></DIV></DIV></DIV></TD></TR></TBODY></TABLE><BR>
<DIV class=opt><A title=查看该分类中所有文章
href="http://hi.baidu.com/luv_resplendent/blog/category/Windows%20Ce">类别:Windows
Ce</A> | <A title=将此文章添加到百度搜藏 onclick="return addToFavor();"
href="http://cang.baidu.com/do/add" target=_blank>添加到搜藏</A> | 浏览(<SPAN
id=result></SPAN>) | <A
href="http://hi.baidu.com/luv_resplendent/blog/item/bf597507bf427fc87a894754.html#send">评论</A> (1)
<SCRIPT language=javascript>/*<![CDATA[*/var pre = [true,'MMS实现详细分析(BENQ M22模块)*--(1)---------MMS实现的流程分析', 'MMS实现详细分析(BENQ M22模块...','/luv%5Fresplendent/blog/item/2b49fab536468ccb37d3ca41.html'];var post = [true,'MMS实现详细分析(BENQ M22模块*--(3)------MMS发送的无线网络连接协议分析','MMS实现详细分析(BENQ M22模块*...', '/luv%5Fresplendent/blog/item/aa546efc91493987b901a0b3.html'];if(pre[0] || post[0]){ document.write('<div style="height:5px;line-height:5px;"> </div><div id="in_nav">'); if(pre[0]){ document.write('上一篇:<a href="' + pre[3] + '" title="' + pre[1] + '">' + pre[2] + '</a> '); } if(post[0]){ document.write('下一篇:<a href="' + post[3] + '" title="' + post[1] + '">' + post[2] + '</a>'); } document.write('</div>');}/*]]>*/</SCRIPT>
</DIV>
<DIV class=line></DIV>
<STYLE type=text/css>#in_related_doc A {
TEXT-DECORATION: none
}
</STYLE>
<DIV id=in_related_tmp></DIV>
<SCRIPT language=javascript type=text/javascript>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -