XMPP翻译:概述[2](Summary of XMPP)
这篇概述翻译自Summary of XMPP,简单的讲述了XMPP的发展和其包括的一些主要的规范及目标用途。此Summary在xmpp.org网站上的最后更新时间为2006年10月4日。
XMPP是基于XML流的协议的IETF(Internet工程任务组)正式版,该协议是由1999年开始的Jabber社区为即时通讯与即时出席所发展形成的。
RFC 3920中指定的XMPP的核心“传输”层是一个可以使任意两个网络端点之间实现互传XML片断的XML流协议。发生在XML流这层的关于权限和编码的规范使用IETF简单认证与安全安全层协议(SASL)RFC 2222和传输层安全协议RFC 2246。XMPP的架构是一个纯粹的客户端/服务器模型,在这样的模型里,客户端与服务器连接,需要的话服务器之间相互连接以实现域内的通信。XMPP的地址是完全国际化的,客户端的地址形式为〈node@domain〉(跟email的地址相似)。
很多种形式的应用程序都可以基于XML流核心层之上建立。第一种此类应用程序是即时通讯与即时出席。定义在RFC 3921中的基本的即时通讯与即时出席的扩展满足了RFC 2779的需要,如同联系人列表被期待具有即时通讯与即时出席系统的功能一样。如果需要的话,RFC 3921也使得我们可以功能性的分开即时通讯与即时出席(虽然多数配置均提供两者)。
XMPP的发展史上,协议初始的发展是在Jabber开源社区完成的。经过多年的实践和deployment experience,基础协议在2002年被JSF(Jabber Software Foundation )提交给了Internet标准进程。在安全与国际化方面适当的标准化后,该基础协议于2004年10月被批准作为IETF推荐的即时通讯与即时出席技术。
除了定义在RFC 3920和RFC 3921中的基础协议外,还有很多RFC 2779所不需要的XMPP扩展功能。这些扩展通常定义在JSF发布的XEP系列里。
下面的列表给出了主要的XMPP协议范本及当今应用很广的XMPP扩展:
- RFC 3920 -- XMPP:核心 -- XML流的核心协议,包括硬性授权,信道加密和国际化编址。
- RFC 3921 -- XMPP:即时通讯与即时出席 -- 给即时通讯, 联系列表, 会议, and privacy blocking提供的基础的XMPP扩展。
- RFC 3923 -- 定义端到端的签名和对象加密 -- 一个定义端到端的签名和对象加密的XMPP扩展。
- XEP-0030 -- 服务搜索 -- 一个强大的用来测定XMPP网络中的其它实体所支持特性的协议。
- XEP-0115 -- 实体性能 -- XEP 0030的一个通过即时出席的定制,可以实时改变交变广告功能。
- XEP-0004 -- 数据表格 -- 一个通过XMPP控制表格的灵活的协议,主要用于工作流应用程序与动态设置。
- XEP-0045 -- 多人聊天 -- 一组定义参与和管理多用户聊天室的协议,类似于Internet的Relay Chat,但是其具有高的安全性。
- XEP-0096 -- 文件传输 -- 定义从一个XMPP实体到另一个的文件传输。
- XEP-0071 -- XHTML-IM -- W3C组织审阅过的定义XMPP实体间传送XHTML格式信息的协议。
- XEP-0124 -- HTTP绑定 -- 将XMPP绑定到HTTP而不是TCP,主要用于不能够持久的维持与服务器的TCP连接的设备。
- XEP-0060 -- 发布订阅 -- 定义了一个实现发布订阅功能的通用框架,主要用于配置协同工作组,扩展的即时出席和活动通知服务。
XEP系列同时定义了很多用于附加特性的XMPP扩展,包括XML-RPC 、SOAP绑定、in-band registration、扩展的即时出席、geolocation和可靠的消息分发。
Last Updated: 2006-10-04
The Extensible Messaging and Presence Protocol (XMPP) is the IETF's formalization of the base XML streaming protocols for instant messaging and presence developed within the Jabber community starting in 1999.
As specified in RFC 3920, the core "transport" layer for XMPP is an XML streaming protocol that makes it possible to exchange fragments of XML between any two network endpoints. Authentication and channel encryption happen at the XML streaming layer using the IETF-standard protocols for Simple Authentication and Security Layer (RFC 2222) and Transport Layer Security (RFC 2246). The normal architecture of XMPP is a pure client-server model, wherein clients connect to servers and (optionally) servers connect to each other for interdomain communications. XMPP addresses are fully internationalized, and are of the form <node@domain> for clients (similar to email).
A wide variety of applications can be built on top of the core XML streaming layer. The first such application is instant messaging (IM) and presence. The basic IM and presence extensions specified in RFC 3921 address the requirements of RFC 2779, as well as the contact list functionality expected IM and presence systems. RFC 3921 also makes it possible to separate the messaging and presence functionality if desired (although most deployments offer both).
The history of XMPP is that the protocols were initially developed within the Jabber open-source community. After several years of implementation and deployment experience, the base protocols were submitted to the Internet standards process by the Jabber Software Foundation in 2002. After appropriate formalization in the areas of security and internationalization, the base protocols were approved as IETF-appproved instant messaging and presence technologies in October 2004.
In addition to the base protocols specified in RFC 3920 and RFC 3921, there exist many XMPP extensions for functionality that was not required by RFC 2779. These extensions are generally specified in the XEP series published by the Jabber Software Foundation.
The following list describes the main XMPP protocol specifications and XMPP extensions that are in wide use today:
RFC 3920 -- Extensible Messaging and Presence Protocol (XMPP): Core -- the core protocols for XML streaming, including strong authentication, channel encryption, and internationalized addressing.
RFC 3921 -- Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence -- base XMPP extensions for instant messaging, contact lists, presence, and privacy blocking.
RFC 3923 -- End-to-End Signing and Object Encryption for the Extensible Messaging and Presence Protocol (XMPP) -- an XMPP extension for end-to-end signing and encryption.
XEP-0030 -- Service Discovery -- a robust protocol for determining the features supported by other entities on an XMPP network.
XEP-0115 -- Entity Capabilities -- a real-time profile of XEP-0030 for advertising capability changes via presence.
XEP-0004 -- Data Forms -- a flexible protocol for forms-handling via XMPP, mainly used in workflow applications and for dynamic configuration.
XEP-0045 -- Multi-User Chat -- a set of protocols for participating in and administering multi-user chat rooms, similar to Internet Relay Chat but with stronger security.
XEP-0096 -- File Transfer -- a protocol for transferring files from one XMPP entity to another.
XEP-0071 -- XHTML-IM -- a W3C-reviewed protocol for exchanging XHTML-formatted messages between XMPP entities.
XEP-0124 -- HTTP Binding -- a binding of XMPP to HTTP rather than TCP, mainly used for devices that cannot maintain persistent TCP connections to a server.
XEP-0060 -- Publish-Subscribe -- a generalized framework for publish-subscribe functionality, mainly used to deploy content syndication, extended presence, and event notification services.
The XEP series also defines XMPP extensions for a wide range of additional features, including XML-RPC and SOAP bindings, in-band registration, extended presence, geolocation, and reliable message delivery.
XMPP翻译:概述[2] (Summary of XMPP)到此结束,请继续关注下一篇 XMPP翻译:RFC 3920[1]