XMPP定义:
•XMPP:The Extensible Messaging and Presence Protocol(可扩展通讯和表示协议)
•XMPP可用于服务类实时通讯、表示和需求响应服务中的XML数据元流式传输。XMPP以Jabber协议为基础,而Jabber是即时通讯中常用的开放式协议
•XMPP是基于XML的协议,用于即时消息(IM)以及在线现场探测。促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同
XMPP的基本结构
•XMPP是一个典型的C/S架构,而不是像大多数即时通讯软件一样,使用P2P客户端到客户端的架构,也就是说在大多数情况下,当两个客户端进行通讯时, 他们的消息都是通过服务器传递的。采用这种架构,主要是为了简化客户端,将大多数工作放在服务器端进行
•
•XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生
•
•服务器同时承担了客户端信息记录,连接管理和信息的路由功能
•网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信),MSN,ICQ等
•
•基本的网络形式是单客户端通过TCP/IP连接到单服务器,然后在之上传输XML流
XMPP工作原理
1.节点连接到服务器
2.服务器利用本地目录系统中的证书对其认证
3.节点指定目标地址,让服务器告知目标状态
4.服务器查找、连接并进行相互认证
5.节点之间进行交互
XMPP的优缺点
•优点
–开放
–标准(XMPP的技术规格已被定义在RFC 3920及RFC 3921)
–证实可用
–分散
–安全
–可扩展
–
•缺点
–数据负载过重
–没有二进制传输
XMPP的传输小结
•XMPP是一种类似于HTTP协议的一种数据传输协议,其过程就如同“解包装--〉包装”的过程。只需要理解其接收的类型及返回的类型,便可以很好的利用XMPP来进行数据通讯