XMPP协议详解

1、XMPP的基本 络结构是怎样/p>

xmpp中定义了三个角色,客户端、服务器和 关;通讯可以在这三者之间的任意两者中进行双向进行。服务器同时承担了客户端的信息记录,连接管理和信息的路由功能。 关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信),MSN,ICQ等。基本的 络形式是单客户端通过TCP/IP连接到单服务器,然后在之上传输XML。

 

2、XMPP协议的 络架构:

XMPP是一个典型的C/S架构,而不是像大多数即时通讯软件一样,使用P2Pclient到client的架构,也就是说在大多数情况下,当两个client进行通讯时,他们的消息都是通过server传递的(也有例外,比如在两个client传输文件时).採用这样的架构,主要是为了简化client,将大多数工作放在server端进行,这样,client的工作就比較简单,并且,当添加功能时,多数是在server端进行.

 

3、XMPP通过TCP传输了什么/p>

传输的是与即时通讯相关的消息指令,在以前这些命令要么用2进制的形式发送(比如QQ),要么用纯文本指令加空格加参数加换行符的方式发送(比如MSN)。而XMPP传输的即时通讯指令的逻辑与以往相仿,只是协议的形式变成了XML格式的纯文本。这不但使得解析容易了,人也容易阅读了,方便了开发和查错。而XMPP的核心部分就是一个在 络上分片断发送XML的流协议。这个流协议是XMPP的即时通讯指令的传递基础,也是一个非常重要的可以被进一步利用的 络基础协议。所以可以说,XMPP用TCP传的是XML流。

 

4、XMPP的工作原理:

(1)节点连接到server;

(2)server利用本地文件夹系统中的证书对其认证;

(3)节点指定目标地址,让server告知目标状态;

(4)server查找、连接并进行相互认证;

(5)节点之间进行交互.

 

5、XMPP客户端

XMPP 系统的一个设计标准是必须支持简单的client。其实,XMPP 系统架构对client仅仅有非常少的几个限制。一个XMPP client必须支持的功能有:

 

1. 通过 TCP 套接字与XMPP server进行通信;

2. 解析组织好的 XML 信息包;

3. 理解消息数据类型。

MPP client与服务端通过XML 在TCP 套接字的5222 port进行通信,而不须要client之间直接进行通信。

 

6、XMPP服务端

XMPP server遵循两个主要法则:

1、监听client连接,并直接与client应用程序通信;

2、与其它 XMPP server通信;

 

7、XMPP 关

XMPP 突出的特点是能够和其它即时通信系统交换信息和用户在线状况。因为协议不同,XMPP 和其它系统交换信息必须通过协议的转换来实现,眼下几种主流即时通信协议都没有公开,所以XMPP server本身并没有实现和其它协议的转换,但它的架构同意转换的实现。实现这个特殊功能的服务端在XMPP 架构里叫做 关(gateway)。眼下,XMPP 实现了和AIM、ICQ、IRC、MSN Massager、RSS0.9 和Yahoo Massager 的协议转换。因为 关的存在,XMPP 架构其实兼容全部其它即时通信 络,这无疑大大提高了XMPP 的灵活性和可扩展性。

 

 

 

 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年3月18日
下一篇 2019年3月18日

相关推荐