RFC3261中文译文[D版]
Parallel Search:并行搜索。在并行搜索中,一个代理服务器发出多个请求到可能的用户位置,以期收到请求的回应。串行搜索,在发出下一个请求前,会等待上一个请求的最终响应。与串行搜索不同,并行搜索不等待之前发出请求的结果便发出多个请求。
Provisional Response:临时响应。服务器用来指示进展的响应,但并不终结SIP事务。1xx响应是临时响应,其他响应则为最终响应。
Proxy, Proxy Server:代理服务器。代理服务器是一种为了代表其他客户生成请求,同时具有服务器和客户行为的中间实体。代理服务器主要起路由的作用,这意味着它的工作是保证请求被发送到距目标用户最近的另一实体。代理对于强制策略也是有好处的(例如,确保用户被允许进行呼叫)。在转发请求消息前,代理服务器对请求消息进行解释,如果有必要,它会对其特殊的部分进行重写。
Recursion:递归。当客户产生一个新的请求并要将其发送到响应中的Contact头字段URI的一个或多个时会在3xx响应中陷入递归。
Redirect Server:重定向服务器。重定向服务器是为它收到的请求产生3xx响应的用户代理服务器(UAS),并指导客户与重定向后的URI联系。
Registrar:注册服务器。注册服务器接受REGISTER请求,并且将请求中的信息发送到它控制的域的定位服务器上。
Regular Transaction:常规事务。任何带有INVITE、ACK,或者CANCEL方法的事务均为常规事务。
Request:请求。从客户发送到服务器的SIP报文,为了调用关键操作。
Response:响应。从服务器发送到客户的SIP报文,为了指示从客户发送到服务器的请求的状态。
Ringback:回铃音。回铃音是由主叫的应用产生的信号音,用于指示被叫已经收到(振铃)提示。
Route Set:路由集。路由集是有序的SIP/SIPS URI的集合,即发送特别请求时经过的代理服务器的(地址)列表。路由集可以通过类似于Record-Route头字段被学习,或者可以对它进行配置。
Server:服务器。服务器是接收请求的网络实体,它根据请求提供服务并且回送这些请求的响应。举例来说,服务器有代理服务器、用户代理服务器、重定向服务器,和注册服务器。
Sequential Search:串行搜索。在串行搜索中,代理服务器依次尝试每一个联系地址,在收到之前(操作)的最终响应后才会处理下一个。2xx或者6xx级的最终响应总是会终结串行搜索。
Session:会话。从SDP规范文档中可知:“多媒体会话是由多媒体发送者和接收者和二者之间的数据流构成的。多媒体会议是多媒体会话的一个例子。”(RFC 2327[1])(对于SDP定义的会话能够由一个或者多个RTP会话组成。)作为定义,被叫能够在同一会话中被不同呼叫多次邀请。如果使用SDP,会话由SDP由用户名、会话ID、网络类型、地址类型,和源域中的地址实体联合定义。
SIP Transaction:SIP事务。SIP事务发生在客户和服务器之间,从客户发送第一个请求,到从服务器发送到客户的由服务器作出的最终响应(非1xx)之间的所有报文。如果是INVITE请求,并且最终响应是非2xx响应,那么事务还包括响应的ACK。对于INVITE请求的2xx响应的ACK是一个特殊事务。
Spiral:回旋。回旋是被路由到某代理服务器的SIP请求,向前传递,并且再次到达那个代理服务器,但是这次将导致与最初请求不同的处理决策。特别是,这意味着请求的Request-URI与它之前到达的不同。回旋不像环路,并不是错误的情形。回旋的典型的原因是呼叫转移。某一个用户呼叫[email protected]。example.com代理服务器会将请求路由到Joe的个人电脑,发现Joe设定了呼叫转移到[email protected]。故此,这个请求被路由回example.com代理服务器。然而,这不是环路,因为请求的目标用户不同,这被认为是回旋,且是有效情形。
Stateful Proxy:有状态代理服务器。事务状态代理服务器是,维护本标准文档(描述)在处理请求时,定义的客户和服务器事务状态机的逻辑实体。有状态代理服务器的行为细节在第16章。(事务)有状态代理服务器和呼叫状态代理服务器并不一样。
Stateless Proxy:无状态代理服务器。无状态代理服务器是,不维护本标准文档(描述)在处理请求时,定义的客户或者服务器事务状态机的逻辑实体。无状态代理服务器转发每个它从下沿收到的请求和每个从上沿收到的响应。
Strict Routing:严格路由。如果代理服务器遵守RFC2543及这个RFC发展中的版本中的路由处理规则,我们称这个代理服务器是严格路由的。当路由头字段是当前的URI,严格路由有可能使代理服务器损毁Request-URI的内容。在这种情况时,不使用严格路由,建议使用松散路由。具有严格路由性质的代理也被称作严格路由器。
Target Refresh Request:目标刷新请求。目标刷新请求是在对话中发送的,负责更改对话中的远程目标。
Transaction User (TU):事务用户。事务用户位于事务层之上,负责协议处理,包括UAC核心(core)、UAS核心(core),及代理核心(core)。
Upstream:上行流。上行流是指在事务中响应消息从用户代理服务器回到用户代理客户的流动方向。
URL-encoded:URL-编码。根据RFC2396中2.4节【5】规定的格式进行编码的字符串。
User Agent Client (UAC):用户代理客户。UAC是一个逻辑实体,用来创建新的请求,并且使用客户事务状态机发送这一请求。UAC的角色仅维持于这个事务的整个时期。换句话说,如果某软件的一部分初始化一个请求,那么它仅在处理这个请求的事务的整个时期扮演UAC。之后,当接收到一个请求时,它又转变成用户代理服务器进行事务的处理。
UAC Core:用户代理客户核心。UAC需要的处理函数的集合,位于传输层之上。
User Agent Server (UAS):用户代理服务器。UAS是一个逻辑实体,生成SIP请求的响应。该响应可以接受、拒绝,或重定向SIP请求。UAS的角色仅维持于这个事务的整个时期。换句话说,如果某软件的一部分响应一个请求,那么它仅在处理这个请求的事务的整个时期扮演UAS。之后,当它生成一个请求时,它又转变成用户代理客户进行事务的处理。
UAS Core:用户代理服务器核心。UAS需要的处理函数的集合,位于传输层之上。
User Agent (UA):用户代理。一个逻辑实体,既具有用户代理客户的功能,又具有用户代理服务器的功能。
UAC和UAS同代理和重定向服务器一样,是在串行事务的基础上定义的。例如,当用户代理发送一个初始INVITE请求时,它是作为UAC在初始化一个呼叫,而当从被叫收到一个BYE请求时,它是作为一个UAS的。类似地,相同的软件既可以是一个请求的代理服务器,又可以是另一个请求的重定向服务器。上面定义的代理服务器、定位服务器,和注册服务器都是逻辑实体,实现时,可将它们联合在一个应用中。
初衷:
SIP协议是3G时代的核心协议之一,中国拥有自己的SIP标准,我真心的希望能有更多的人研究SIP,使中国在此方向上处于领先的位置,也希望自己能为此贡献微薄之力。
SIP网上的中文资料很少,如我一样英文不好的技术人员还是有的,为了方便更多的人了解SIP协议,研究SIP协议,故而有了这样大胆的念头。
本译文的原文为RFC3261,由于本人的英文水平,因此对于文档采用直译的方式,当然字里行间都有个人理解,对于不当的地方,真心地请予指正。另外,转载注明出处,请不要用于商用。
——Dandan
SIP会话初始协议中文译文(二)[5-6]
5 协议结构
SIP是一个分层协议,这意味着它将通过几个相对独立的处理层对其行为进行描述,各层间采用松耦合方式(进行通信)。按照层次来描述协议的行为,是为了使表达(清晰、准确),即,在某一单独的部分,允许通过涉及该功能的SIP各实体对功能进行描述。SIP协议并没有以任何方式规定它的实现。当我们说某实体包含某一层时,我们的意思是它服从该层定义的一组规则。
协议中,并非每一个SIP实体都被指出包含每一层。此外,SIP定义的实体是逻辑上的,而非物理上的。(真正的)物理设备可以选择担当不同的逻辑实体,尤其多数是以串行事务为基础的。
SIP的最低层是语法编码层。它采用扩展的Backus-Naur形式文法(BNF范式)进行编码。完整的BNF范式定义在第25章;SIP消息结构的概述在第7章。
第二层是传输层(最低层视为第一层)。它定义了:通过网络,客户端如何发送请求和接收响应;服务器端如何接收请求和发送响应。所有的SIP实体均含有事务层。事务层在第18章中进行描述。
第三层是事务层。事务是SIP的基本组成部分。一个事务是由客户端事务(通过传输层)发送到服务器端事务的请求,连同从服务器端事务传回给客户端的该请求的所有响应组成的。事务层处理应用层的中继重发,响应到请求的匹配和应用层的超时设定。用户代理客户端(UAC)完成的任何任务都是通过使用一系列事务实现的。我们将在第17章对事务进行讨论。用户代理和有状态代理服务器包含事务层。无状态代理服务器不包含事务层。事务层拥有客户端组件(称作客户端事务)和服务器端组件(称作服务器端事务),每个组件都维护一个处理特定请求的有限状态自动机。
事务层之上是事务用户(TU)层。每个SIP实体,除了无状态代理服务器,都是事务用户。当TU希望发送一个请求时,它会创建一个客户端事务实例,并通过目的IP地址、端口和传输设备将请求发送出去。
事务用户可以创建客户端事务,也可以取消它。当一个客户取消一个事务时,它将请求服务器停止更进一步的处理,回滚到初始化事务前存在的状态,并且产生一个该事务的特定的错误响应。这一操作通过CANCEL请求完成,该请求拥有自己的事务,但是涉及到被取消的事务(第9章)。
SIP实体,即用户代理客户端和服务器端、无状态和有状态代理服务器和注册服务器,包含区别于其他实体的核心。除了无状态代理服务器,其他实体的核心都是事务用户。虽然UAC和UAS核心的行为取决于方法,但所有的方法都有一些共同的规则(第8章)。对于UAC而言,这些规则负责请求的构造;对于UAS而言,这些规则负责请求的处理和生成响应。因为在SIP中注册起到重要作用,因此负责处理REGISTER的UAS有了一个特别的名字——登记员。第10章描述了在REGISTER方法中UAC和UAS核心的行为。第11章描述了在OPTIONS方法中UAC和UAS核心的行为,OPTIONS方法用于确定UA的性能。
某些其他的请求会在对话中发送。一个对话是两个用户代理间持续一段时间的点对点的SIP关系。对话使用户代理间报文的排序和请求的适当路由更加容易。INVITE方法是在文档中被定义的建立对话的唯一方式。当UAC发送在对话上下文中的请求时,它遵循在第8章讨论过的通用的UAC规则,同时遵守临时对话请求的规则。第12章将讨论对话,并对其的构造和维护加以介绍,除此之外还介绍了对话涉及到的请求的构造。
在SIP中最重要的方法是INVITE方法,用于在两个参与者之间建立会话。会话是由参与者们和他们之间的媒体流组成的,其目的是通讯。第13章讨论了如何通过一个或多个SIP对话去初始化会话。第14章讨论了在对话中如何通过使用INVITE请求修改会话的属性。最后,第15章介绍了如何终止一个会话。
第8、10、11、12、13、14和15章的内容完整地介绍了UA核心(第9章描述了取消,适用于UA核心和代理服务器核心)。第16章讨论了代理服务器实体,它是用户代理间报文的路由更加容易。
6 术语表
以下术语对于SIP协议有着特殊的意义。
Address-of-Record:地址记录。地址记录(AOR)是一个指向拥有定位服务的域的SIP或者SIPS的URI,定位服务可以将此URI映射到用户可用的另一URI(即用户物理地址)。代表性地,定位服务通过注册(机制)实现。一条AOR常常被视为用户的公共地址。
Back-to-Back User Agent:背靠背用户代理。背靠背用户代理(B2BUA)是一个接收请求并作为用户代理服务端(UAS)处理该请求的逻辑实体。为了确定如何应答请求,它还将发挥用户代理客户端(UAC)的作用,且生成请求。不像是代理服务器,B2BUA需要维护对话状态,且必须参与它所建立的对话中所有请求的发送。因为它是UAC和UAS串联而成,故不需要对其行为进行显示定义。
Call:呼叫。呼叫是非正式术语,用于指示点到点的通讯,通常用于多媒体会话的建立。
Call Leg:子呼叫。对话的别名[31];在本文档中不再使用。
Call Stateful:有状态呼叫。如果一个代理服务器从初始化INVITE请求到终止BYE请求时,一直维护对话状态,称该代理服务器是有状态呼叫。一个有状态呼叫的代理服务器总是处理有状态事务,但是颠倒过来未必正确。
Client:客户。客户是能够发送SIP请求和接收SIP响应的任何网络实体。客户可以或者不可以直接与人类用户相合。用户代理客户端和代理服务器都是客户。
Conference:会议。多方参与的多媒体会话(见下文)。
Core:核心。核心指出特殊类型SIP实体的特定功能,也就是,明确是有状态的还是无状态的代理服务器,用户代理还是登记员。除了无状态的代理服务器,所有的核心都是事务用户。
Dialog:对话。 对话是两个用户代理间持续一段时间的点对点的SIP关系。对话是通过SIP报文建立的,例如INVITE请求的2xx响应。呼叫标识、本地标签和远程标签共同确定一个对话。在RFC2543文档中,对话相当于子呼叫(Call Leg)。
Downstream:下游。下游是事务中报文传递的方向,特指请求从UAC到UAS流动的方向。
Final Response:最终响应。最终响应终结一个SIP事务,和临时响应相对。所有的2xx、3xx、4xx、5xx和6xx响应都是最终响应。
Header:报头。报头是SIP报文的组成部分,传达与报文有关的信息。它是由一系列头域构建而成。
Header Field:头域。头域是SIP报头的组件。头域可以是一个或多个头域行。头域行由头域名和零个至多个头域值组成。在一个给出的头域行中,多个头域值用“,”隔开。某些头域仅可以有单独的头域值,且因此总是出现在单独的头域行里。
Header Field Value:头域值。头域值是一个单一的值;头域由0个或多个头域值组成。
Home Domain:本域。本域提供服务给SIP用户。典型地,该域在注册的地址记录中URI中出现。
Informational Response:报告响应。同临时响应一样。
Initiator, Calling Party, Caller:主叫。主叫通过INVITE请求初始化一个会话(对话)。从它发送初始INVITE建立对话直到终止该对话,主叫要一直保留该任务。
Invitation:邀请。一个INVITE请求。
Invitee, Invited User, Called Party, Callee:被叫。被叫接收为了建立新会话的INVITE请求。从它接收INVITE请求直到终止这个由INVITE建立的对话,被叫要一直保留这一任务。
Location Service:定位服务。定位服务通过SIP重定向服务器或者代理服务器获得被叫可用位置信息。它含有一个地址记录绑定表,关联0个或者多个联系地址。这一绑定可以通过很多方式创建或移除;在本规范中定义了REGISTER方法更新绑定。
Loop:环路。环路是指,到达某一代理服务器的请求,向前发送,之后被传回到同一代理服务器。当它第二次到达,它的Request-URI同第一次一样,且其他影响代理服务器操作的头域也没发生改变,因此代理服务器将会采取同它第一次相同的决策处理该请求。造成环路的请求是错误的,协议中有对这一错误请求的检测和控制途径的介绍。
Loose Routing:松散路由。如果代理服务器遵守本标准定义的程序去处理Route头域,那么该代理服务器是松散路由的。该程序将请求的目的地(Request-URI出现的)同沿路经过的代理服务器的路由集(Route头域出现的)相分离。适应这种机制的代理服务器也被称作松散路由路。
Message:报文。作为协议的一部分,在两个SIP实体间发送的数据。SIP报文既可以是请求,也可以是响应。
Method:方法。方法是服务器上请求打算调用的特有功能。方法由请求报文自身携带。例如,INVITE和BYE方法。
Outbound Proxy:出境代理服务器。代理服务器从客户那接收请求,即使它也许不是Request-URI中决定的服务器。另外,一个用户代理可以手动配置出境代理服务器,或者可以通过自动配置协议学习到(所需的出境代理服务器)。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dandan0328/archive/2008/07/10/2633384.aspx