资源描述:
《【6A文】RFC3920(XMPP协议)中文版》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、RFC3920可扩展的消息和出席信息协议(XMPP):核心协议关于本文的说明本文为互联网社区定义了一个互联网标准跟踪协议,并且申请讨论协议和提出了改进的建议。请参照“互联网官方协议标准”的最新版本(STD1)获得这个协议的标准化进程和状态。本文可以不受限制的分发。版权声明本文版权属丁•互联网社区(C)ThelnternetSociety(20XX)・摘要本文定义了可扩展消息和岀席信息协议(XMPP)的核心功能,这个协议采用XML流实现在任意两个网络终端接近实时的交换结构化信息。XMPP提供一个通用的可扩展的框架来交换XML数据,它主要用来建立即时
2、消息和出席信息应用以实现RFC2779的需求。目录1.绪论2.通用的架构3.地址空间4.XML流5.TLS的使用&SASL的使用7.资源绑定8.服务器回拨9.XML节10.服务器处理XML节的规则11.12.13.XMPP中的XML用法核心的兼容性要求际化事项14.安全性事项15.IANA事项16.参考1.绪论口1.1•概览XMPP是一个开放式的XML协议,设计用于准实时消息和出席信息以及请求-响应服务。其基本的语法和语义最初主要是由Jabber开放源代码社区于1999年开发的。20XX年,XMPP工作组被授权接手开发和改编Jabber协议以适应
3、IETF的消息和出席信息技术。作为XMPP工作组的成果,本文定义了XMPP1.0的核心功能;在RFC2779[IMP-REQS]中指定的提供即时消息和出席信息功能的扩展,定义在XMPP-IM协议[thcExtcnsiblcMcssagingandPrcscnccProtocol(XMPP):InstantMcssagingandPresence]中。1.2.术语本文中大写的关键字〃MUST〃,〃MUSTN0T〃,"REQUIRED",〃SHAI丄〃,〃SHAI丄N0T〃,〃SH0ULD〃,,,SH0ULDN0T,z,〃RECOMMENDED",〃
4、MAY〃,和"OPTIONAL"的确切含义符合BCP14,RFC2119[TERMS].2.通用的架构目1.1.概览尽管XMPP没有结合任何特定的网络结构,通常认为它是客户-服务器架构的一种实现,在这里客户端用XMPP的方式访问服务器采用的是TCP连接,服务器之间的通信也是TCP连接。以下是这一架构的抽象的示意图(这里〃-〃表示使用XMPP通讯,〃二〃表示可使用任何协议通讯)。C1——S1---S2---C3C2——+---G1===FN1===FC1符号代表的意思如下:•C1,C2,C3二XMPP客户端•S1,S2二XMPP服务器•G1二一个X
5、MPP和外部(非XMPP)消息网络Z间进行“翻译”的网关•FN1二一个外部消息网络•FC1二外部消息网络上的一个客户端2.2.服务器服务器充当XMPP通信的一个智能抽象层,它主要负责:•管理发出的连接或其他实体的会话,在XML流(第四章)的表单中接收和发送给授权的客户端,服务器和其他实体。•用XML流通过实体转发特定地址的XML消息(第九章)大部分XMPP兼容的服务器也负责存储客户端使用的数据(比如基于XMPP应用的联系人名单);在这种情况下,XML数据直接由服务器代替客户端处理而不需要转发到其他实体。2.3.客户端大部分客户端通过TCP连接直接
6、连到服务器,并通过XMPP获得由服务器和任何相关的服务所提供的全部功能。多个不同资源(比如不同的设备和地点)的客户端可以同时登陆并且并发的连接到一个服务器,每个不同资源的客户端通过XMPP地址的资源标识符来区分(比如<node@domain/home>和<node@domain/work>),参见地址空间(第三章)。—建议―的客户端和服务器连接的端口是5222,这个端口已经在IANA(在第十X五章第九节查阅端口号码)注册了。.2.4.网关网关是一个特殊用途的服务器端的服务,主要功能是把XMPP翻译成外部(非XMPP)消息系统,并把返回的消息翻译成
7、XMPPo例如到email(参见[SMTP]),IRC(参见[IRC]),SIMPLE(参见[SIMPLE]),SMS的网关;还有和别的消息服务的网关,比如AIM,ICQ,MSNMessenger,Yahoo!InstantMessengero网关和服务器z间的通信,网关和外部消息系统的通信,不在本文描述范围之内。2.5.网络因为毎个服务器都是由一个网络地址来标识的并且服务器之间的通信是客户-服务器协议的直接扩展,实际上整个系统是由很多互通的服务器构成的。例如,<juliet@example.com>可以和<romeo@example.net>交
8、换消息,出席信息和其他信息。这种模式常见于那些需要使网络地址标准化的协议(比如SMTP)o任意两个服务器之间的通信是可选(OPTIONA