陈斌彬的技术博客

Stay foolish,stay hungry

XMPP/Jabber 协议

XMPP(The Extensible Messaging and Presence Protocol):可扩展通讯和表示协议。

简介

可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯、表示和需求 - 响应服务中的 XML 数据元流式传输。XMPP 以 Jabber 协议为基础,而 Jabber 是即时通讯中常用的开放式协议。

XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。

XMPP 的前身是 Jabber,一个开源形式组织产生的网络即时通信协议。XMPP 目前被 IETF 国际标准组织完成了标准化工作。标准化的核心结果分为两部分;

核心的 XML 流传输协议

基于 XML FreeEIM 流传输的即时通讯扩展应用

XMPP 的核心 XML 流传输协议的定义使得 XMPP 能够在一个比以往网络通信协议更规范的平台上。借助于 XML 易于解析和阅读的特性,使得 XMPP 的协议能够非常漂亮。

XMPP 的即时通讯扩展应用部分是根据 IETF 在这之前对即时通讯的一个抽象定义的,与其他业已得到广泛使用的即时通讯协议,诸如 AIM,QQ 等有功能完整,完善等先进性。

XMPP 的扩展协议 Jingle 使得其支持语音和视频。 

XMPP 的官方文档时 RFC 3920.

常用网址:

http://xmpp.org/ XMPP 官网

http://wiki.jabbercn.org/ Jabber/XMPP 中文翻译计划

http://www.igniterealtime.org/ 开源软件,OpenFire 是一个即时通讯的服务器端软件,Spark 是即时通讯的客户端软件。