- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
XMPP介绍
可扩展的消息和出席信息协议(XMPP)是一个XML应用,让任何两个或多个网络实体之间
进行结构化和可扩展的准实时信息交流.本文定义了XMPP的核心协议方法:XML流的配
置和解除,通道加密,验证,错误处理,以及消息通讯基础,网络可用性(presence),和
请求-应答交互。
XMPP的目标是允许两个(或多个)实体通过网络来交换相关的小件结构化数据(所谓XML节
).XMPP典型地使用分布式的客户端-服务器体系结构来实现,这里客户端需要连接到一
个服务器以获得对网络的访问,从而被允许和其他实体(可能在其他服务器上)交换XML节.
一个客户端连接到一个服务器,交换XML节,以及结束连接,这样的流程如下:
1.确定要连接的IP地址和端口号,典型的做法是对一个合格的域名做出解析
2.打开一个传输控制协议TCP连接
3.通过TCP打开一个XML流
4.握手最好使用传输层安全性TLS来进行通道加密
5.使用简单验证和安全层SASL机制来验证
6.绑定一个资源到这个流上
7.和其他网络上的实体交换不限数量的XML节
8.关闭XML流
9.关闭TCP连接
在XMPP中,一个服务器可以选择性地连接到另一个服务器以激活域间或服务器间的通讯.
这种情形下,两个服务器需要在他们自身之间建立一个连接然后交换XML节;这个过程所
做的事情如下:
1.确定要连接的IP地址和端口号,典型的做法是对一个合格的域名做出解析
2.打开一个TCP连接
3.打开一个XML流
4.握手最好使用TLS来进行通道加密
5.使用简单验证和安全层SASL机制来验证
6.交换不限数量的XML节,可以服务器之间直接交换,也可以代表每台服务器上的相
关实体来交换,例如那些连到服务器上的客户端
7.关闭XML流
8.关闭TCP连接
XMPP协议组成
主要的XMPP协议范本及当今应用很广的XMPP扩展:
RFC3920XMPP(RFC6120新):核心。定义了XMPP协议框架下应用的网络架构,引入
了XMLStream(XML流)与XMLStanza(XML节),并规定XMPP协议在通信过程中使用
的XML标签。使用XML标签从根本上说是协议开放性与扩展性的需要。此外,在通信的安
全方面,把TLS安全传输机制与SASL认证机制引入到内核,与XMPP进行无缝的连接,为
协议的安全性、可靠性奠定了基础。Core文档还规定了错误的定义及处理、XML的使用规
范、JID(JabberIdentifier,Jabber标识符)的定义、命名规范等等。所以这是所有基
于XMPP协议的应用都必需支持的文档。
RFC3921(RFC6121新):用户成功登陆到服务器之后,发布更新自己的在线好友管理、发
送即时聊天消息等业务。所有的这些业务都是通过三种基本的XML节来完成的:IQStanza
(IQ节),PresenceStanza(Presence节),MessageStanza(Message节)。RFC3921还
对阻塞策略进行了定义,定义是多种阻塞方式。可以说,RFC3921是RFC3920的充分补充。
两个文档结合起来,就形成了一个基本的即时通信协议平台,在这个平台上可以开发出各种
各样的应用。
XEP-0030服务搜索。一个强大的用来测定XMPP网络中的其它实体所支持特性的协议。
XEP-0115实体性能。XEP-0030的一个通过即时出席的定制,可以实时改变交变广告功能。
XEP-0045多人聊天。一组定义参与和管理多用户聊天室的协议,类似于Internet的Relay
Chat,具有很高的安全性。
XEP-0096文件传输。定义了从一个XMPP实体到另一个的文件传输。
XEP-0124HTTP绑定。将XMPP绑定到HTTP而不是TCP,主要用于不能够持久的维持与服
务器TCP连接的设备。
XEP-0166Jingle。规定了多媒体通信协商的整体架构。
XEP-0167JingleAu
文档评论(0)