作 者:中国新通信 宋传旺 王静
2.2基本功能
SIP的基本功能有5种:用户定位、用户能力、用户可用性、呼叫建立和呼叫处理。
2.3SIP组件
2.3.1体系结构
SIP是基于客户机/服务器结构的。基本分为用户代理和网络服务器,网络结构如图2所示。
(1)用户代理:用户代理客户端、用户代理服务器。
(2)网络服务器:代理服务器、重定向服务器、注册服务器、位置服务器。
2.4SIP消息
SIP消息分为两大类:请求和响应。响应又分为最终响应和临时响应。
2.4.1请求消息
请求消息分为6种:INVITE、ACK、BYE、CANCEL、REGISTER和OPTIONS。
2.4.2响应消息
响应消息分为6类:1xxInformational(通知)、2xxSuccessful(成功)、3xxRedirection(重定向)、4xx Request Failure(请求失败)、5xx Server Failure(服务失败)、6xx Global Failures(全局错误)。
2.5SIP操作
SIP操作包括:SIP服务器定位、SIP事务、SIP邀请、用户定位和注册服务。
2.5.1SIP服务器定位
客户在发起呼叫时,需要将请求发送到本地配置的独立于Request-URI的SIP服务器或者由Request-URI标识的IP地址和端口。
2.5.2SIP事务
一个SIP事务存在于一个客户与一个服务之间,由所有的(从最初的请求到最后的应答)消息组成。
一个事务只对应于一个呼叫,由Call-ID标识。所有对于一个请求的应答都包含相同的Call-ID、CSeq、To、From域(或其他包含的值)。客户机与服务器之间的每一个Call-ID只能有一个未结束的事务。
2.5.3SIP邀请
SIP会话由INVITE方法发起,通常情况下,INVITE包括会话描述(一般使用SDP格式),为被叫提供足够的会话信息;如果被叫同意加入会话,主叫就发送ACK方法确认呼叫成功;如果被叫拒绝加入会话或产生其他错误,主叫则发送BYE方法指示呼叫失败。
2.5.4SIP用户定位
考虑到用户可以在不同终端移动,SIP提供了定位功能。用户可以在SIP服务器或位置服务器注册其位置信息,一个用户可以注册到不同的位置。位置服务器可以采用其他协议。位置服务器可以解析出零个或多个可能位置,这些位置可以按照成功访问的概率来存储。
2.5.5SIP注册服务
用户在发起会话前,首先应到注册服务器注册。注册使用REGISTER方法。注册服务器通常将用户注册的地址信息保存在位置服务器,这样使代理服务器或者重定向服务器就知道那些地址是可以到达的。注册信息是随时刷新的(默认周期是1h),所以用户每隔一段时间都应主动注册。注册服务一般伴随其他功能,如提供用户鉴权功能,或者通过注册服务安装呼叫处理程序或第三方应用。