即时通信工具的协议分析与互通研究

0引言随着信息技术的迅猛发展,即时通信(IM)软件应运而生。且立即风靡全球。现在我国流行的IM软件产品种类繁多,主要有国内腾讯公司的QQ,国外的MSN、Skype、ICQ、AIM、X-lite、YahooMessenger等。MSN是微软推出的即时通信产品,它最大的特点就是将个人邮箱与即时通信功能完善结合。目前最新中文版木是MSN6.0版。YahooMessenger中文名字叫雅虎通,由世界著名搜索引擎bhoo推出,它的最新简体中文版木足5・5版。Skype是一个风靡全球的网络软件,它占一据了美国长话业务中约60%的话务量。但这些主流即时通信软件所用协议的不统一性和不公开性,严重束缚着即时通信软件的快速发展,因此研究它们之间的互通具有现实意义。1主流即时通信软件文本消息传输协议分析仃)AIM与ICQ同是A0L公司的产品,因此协议格式基木相同。有两点不同Z处:一是AIM支持聊天室消息发送和接收服务,分别如表1所示的SNAC(0xoe,0x05)和SNAC(0xoe,0x06)服;二是AIM采用HTML格式组织消息体数据。'、W02003^Al■畔2QEK2Mie方心TUMHJWnOidOBOHlft^SW((MM<SBCClMMf(MB)泌(3・wzSU£(0i(MfChOT)••we*E标aKTiL碌朴■IW毎aMCMI式・CT表1四种IM文木消息传输协议特征对照表(2)MSN文木消息传输协议格式简单,M用层数据以命令为首标,采用命令行的方式组织数据,命令使用ASCII码表示,统一采用三个字母纟FI成,如“MSG”为消息传送命令,后面跟随零个或者更多个参数,参数Z问被一个或者多个空格字符分开,命令结束通过I叫车换行符(CRLF)表示。例如MSN客户端给消息服务器发送一个即时文木消息的应用层协议格式为:MSGTrIDNLength\r\nMessage。该消息中MSG是一个发送消息命令,命令之是用空格隔开三个数;TrID是客户端与服务器交互的标志N是服务器响应的特征码,表示只要求服务器不能转发消息给接收客户端时才响应;iHJJgth是消息长度;\r\ri是冋车换行符,表示命令结束{Message是指定长度的消息体。MS\的Message消息体消息是一个MIME格式编码流,使用标准的MIME头,可以参考RFC-1521和RFC-822来了解更多的关于MIME格式的信息。⑶雅虎通的协议格式如图1所示。图1雅虎通的协议格式2字W服务散据0-65535ji话ID协议版本■■■MB-■.YMSG■■■YMSG为应用层首标,由ASCII表示;其后的四个字节为客户端的协议版木号;数据长度指出教据部分的字节长度;服务是两字节的操作码,指明客户端发送的是哪一种服务请求或者说明服务器对哪一个服务的响应。雅虎通至少提供了45种以上的服务,发送一般消息的服务是0x0006,聊天室消息的服务是OxOOaSt状态在服务器响应的情况下,表示对请求的响应状态(成功,失败等)。会话ID是客户端与服务器端通信的标志,一口服务器指定它们之间的一个会话ID以后,它们Z间的所有数据包都使用这个ID进行通信。2主流即时通信软件系统架构分析即时通信系统一般有两种模式:客户/服务器模式,即发信端用户和收信端用户必须通过服务器来交流;客户/客户模式,即服务器给每对客户端建立一个TCP通道,他们的交流在这个TCP之上进行,无须通过服务器。QQ、MSN、ICQ、AIM和YahooMessenger这些主流软件使用的是客户/服务器模式,文木消息必须通过服务器才能从一个客户端传到另一个客户端。对于文木消息的传送,除了通信架构均是基于客户/服务器务器模式Z外,消息传输均是建立在TCP协议基础Z上的,而且服务器的端口一般都是I古I定端口。服务器通过提供固定的服务端口被动式地与客户端进行通信,起到消息中转的作用。需要特殊说明.雅虎通对同一个局域网内的客户端通信采用客户/客户的通信架构。下面以MSN的通信机制为例进行阐述:MSN是一个基于MSNP协议的IM通信系统,它提供了包括登录、认证、授权、重定向在内的全面服务框架。从网络拓扑的角度来说,MSNMessenger分为服务层、连接层和客户层三层。客户层的主要功能是接收用户指令,如发出登录请求、改变用户名状态、发送文木消息请求和发送文件请求等,并提交给相应的服务器集群。连接层提供了一个客户层到服务层的网络通路。MSN使用TCP传输协议,除了文件传输和语音聊天是直接的点对点通信Z外,其他所有的情形全部通过服务器进行。服务层有三种类型的服务器:(1)派遣服务器(DS)...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?