利用SIP可实现会话的发起、建立和释放,并支持单播、组播和移动性。此外,SIP还可与SDP(会话描述协议,用来描述多媒体会话)配合,动态调整和修改会话属性,如通话带宽、传输媒体类型、媒体的编解码格式。SIP以其简单、灵活的特点越来越受到青睐,作为移动通信标准化组织的3GPP 已经决定在SIP 协议基础上建立第三代移动通信的全 IP 网络,并要求未来的 3G 终端支持SIP。
SIP-T 则是为了实现在 IP 上透明传递 ISUP 消息以促进与 PSTN 与 IP 的互通提出的,主要通过封装(Encapsulation)和转换(Translation)两种手段实现。
目前,在厂家开发的各类软交换系统中,SIP 协议主要应用于软交换与 SIP终端之间,也有某些厂家将 SIP 协议用于软交换与应用服务器之间,提供基于SIP 实现的增值业务。总体来说,SIP 协议主要用于语音与数据相结合的业务以及多媒体业务的呼叫建立、释放,此时,SIP终端为具备多媒体能力的智能终端,而控制SIP终端的软交换实际充当SIP网络服务器角色,提供SIP 网络服务器功能。
SIP 协议发展现状 :
SIP协议的最早版本为1999年发布的RFC2543,但由于很多方面不能够适应NGN 和 3GPP 中新情况的要求,IETF 于 2002 年 6 月初发布了新的 SIP 协议—RFC3261,同时发布了RFC3262至3266等几个与SIP协议相关的其它协议,下面介绍各个协议标准的主要内容。
1) RFC3261
RFC3261 修改了 RFC2543 中的错误并添加了 RFC 2543 中没有叙述的新情况,其对RFC2543最大的发展应该是它用分层的模型描述了SIP协议,这对SIP协议在应用中的实际实现起到了很大的帮助。RFC3261 相对于 RFC2543 的主要改变如下:
- RFC 3261中BYE 只能够在存在的对话中被发送,然而在RFC 2543中任何时刻它都可被发送。
- RFC 3261中SIP BNF修改为与RFC 2234兼容。
- 在RFC 2543 中,CANCEL和 INVITE事务是混合的。在RFC3261中它们被分开了。当用户先发送INVITE然后是CANCEL时,INVITE事务仍然正常的终止。UAS 需要用487响应来响应原INVITE请求。
- RFC 2543允许当接收到BYE时,UAS 不对INVITE发送响应。在 RFC 3261中是不允许的,原INVITE需要响应。
- 在RFC 2543 中,UA只需要支持UDP。在RFC 3261中,UA需要支持UDP和TCP。 - 在 RFC 2543 中,分支代理当在多个询问的情况时只传递来自下游元素的一个询问。在RFC 3261 中,代理应该收集所有的询问并且将它们放入转发响应中。
- 规定了用 SIP 来接通的完善的 SDP 提供/应答交互过程,并且允许 SDP 在INVITE/200或200/ACK中用于基本的 SIP实现。
- 在URI 和Via 头域中增加了对IPV6 的支持。
- RFC 3261中环路检测已变为可选的,它被Max-Forwards的强制使用所取代。并且RFC 2543中的环路检测程序有一严重的问题,它会把正常的“螺旋”报告为错误状况,这在RFC 3261 中得以修改。
- RFC 3261中标签的使用是强制的(它们在RFC 2543中是可选的),因为它们现在是对话标识的基本组成部份。
- 增加了Supported头域。
- Route 和Record-Route 构造的处理在RFC 3261被彻底的重写。 - Expire头域和参数中绝对时间的使用已被删除。
- RFC 3261中Via 头域值的branch参数现在被所有元素强制使用。它现在担任唯一事务标识的角色。
- RFC 3261中,删除了PGP,用S/MIME取代了它。
- 对端到端的 TLS 增加了“sips”URI 机制及其它安全特色,确保了传递的安全性。 - RFC 2543中,代理不需要转发从101到199的上行响应。RFC 3261 改为必须转发。这是因为RFC 3261 的其它新特征依赖从101到199所有临时响应的传递。
- RFC 3261 中,UA 不能够对呼叫发送BYE直到它接收到初始请求的ACK。这在RFC 2543中是允许的,从而导致了潜在的竞态条件。
- 取消了注册中的action参数。
- RFC 2543的基本鉴权被完全删除并且禁止它的使用。
- 对用户增加了用于可选内容表示的Alert-Info,Error-Info,和Call-Info 头域。 - 增加了Content-Language, Content-Disposition和MIME-Version头域。 - 增加In-Reply-To和Reply-To头域来支持一段时间后丢失呼叫或消息的返回。 - 增加TLS和SCTP 作为合法的SIP传输机制。
- Date头域用在REGISTER中来提供用户代理日期自动配置的简单方法。 2) RFC3262
此 RFC 标准对 SIP 协议进行了扩展,该扩展使用了选择标签 100rel 并定义了新的临时响应确认(PRACK)方法。
临时响应提供了请求处理的进展情况信息,但它在 RFC3261 中是不可靠地发送的。然而在某些情况下可靠性却是非常重要,例如在与PSTN的互操作中。因此需要一个可选的能力来支持临时响应的可靠传输,该能力就是在 RFC3262中定义的。为了实现临时响应的可靠性,采用了与200响应几乎相同的机制。可靠的临时响应被TU以指数回退来重传。这些重传在接收到PRACK消息时停止。PRACK的作用与 ACK 一样,但是用于临时响应。每个临时响应给定了一个序列号,它承载在响应的RSeq头域中。PRACK消息包含一个 RAck头域,它指明了被确认的临时响应的序列号。
3) RFC3263
SIP 协议可通过 DNS 将 SIP URI 解析为要联系的下一跳的 IP 地址,端口,和传输协议,RFC3263 详细描述了 SIP 网络如何利用 DNS 进行服务器定位以及如何在主客户机失败时服务器通过DNS发送响应到备份客户机。
4) RFC3264
RFC3264 的全称是“采用会话描述协议(SDP)的提供/应答(offer/ answer)模型”。该文档定义了一种机制,通过这种机制两实体可使用SDP 协议来达到对他们之间多媒体会话的共同观点。在该模型中,一个参与者从他的观点提供给另一参与者所需会话的描述,并且另一参与者从他的观点来应答所需的会话。这种提供/应答模型在单播会话中非常有用,这是因为需要双方对会话的完全观点。提供/应答模型广泛应用于SIP协议中。
5) RFC3265
此 RFC 标准对 SIP 协议进行了扩展,定义了新的 SUBSCRIBE 方法,此扩展使得 SIP节点能够从远端节点请求通知来指示某事件发生了,这在需要很多需要终端节点协作的 SIP 业务中非常有用,例如自动回叫业务(基于终端状态事件),好友列表(基于用户出席事件),消息等待指示(基于邮箱状态变化事件),以及PSTN 和INTERNET互通(基于呼叫状态事件)。
6) RFC3266
此RFC文档描述了 IPV6 地址与SDP的结合使用。该文档特别是阐明了目前SDP中与IPV6 地址语法相关的文本。
2.2.2 SIP 协议的功能和特点
(1)SIP 是一个客户/服务器协议。协议消息分为两类:请求和响应; 协议消息的目的是:建立或终结会话; (2)“邀请”是 SIP 协议的核心机制;
(3) 响应消息分为两类:中间响应和最终响应;
(4) 媒体类型、编码格式、收发地址等信息由 SDP协议(会话描述协议)来描述,并作为 SIP消息的消息体消息体消息体消息体和头部一起传送,因此,支持 SIP 的网元和终端必须支持 SDP
(5) 采用 SIP URL的寻址方式,特别地,其用户名字段可以是电话号码,以支持 IP 电话网关寻址,实现IP 电话和PSTN的互通 (6) SIP的最强大之处就是用户定位功能 用户定位基于登记和DNS机制
(7) SIP 独立于低层协议,可采用不同的传送层协议,若采用UDP传送,要求
响应消息沿请求消息发送的同样路径回送;若采用TCP传送,则同一事务的请求和响应需在同一TCP连接上传送
总之,SIP 主要支持以下5个方面的功能: 用户定位:确定通信所用的端系统位置。 用户能力交换:确定所用的媒体类型和媒体参数。
用户可用性判定:确定被叫方是否空闲和是否愿意加入通信。 呼叫建立:邀请和提示被叫,在主被叫之间传递呼叫参数。 呼叫处理:包括呼叫终结和呼叫转交。
2.2.3 SIP的网络构成
SIP 协议虽然主要为 IP 网络设计的,仅它并不关心承载网络,也可以在 ATM、帧中继等承载网中工作,它是应用层协议,可以运行于 TCP,UDP,SCTP 等各种传输层协议之上。SIP 用户是通过类似于 e-mail 地址的 URL 标识,例如:sip:myname@mycompany.com,通过这种方式可以用一个统一名字标识不同的终端和通信方式,为网络服务和用户使用提供充分的灵活性。
2.2.3.1
器地址参数。
URL形式:USER@HOST;
SIP URL结构
URL格式:SIP:用户名:口令@主机:端口;传送参数;用户参数;方法参数;生存期参数;服务
用途:代表主机上的某个用户,可指示 From, To, Request URI, Contact等 SIP 头部字段。
URL 应用举例: Sip:j.doe@big.com
Sip:j.doe:secret@big.com;transport=tcp;subject=project Sip:+1-212-555-1212:1234@gateway.com;user=phone Sip:alice@10.1.2.3
Sip:alice@registar.com;method=REGISTER
2.2.3.2 系统基本组成
SIP 协议是一个 Client/Sever 协议。SIP 端系统包括用户代理客户机(UAC)和用户代理服务器(UAS),其中 UAC 的功能是向 UAS 发起 SIP 请求消息,UAS 的功能是对UAC发来的 SIP 请求返回相应的应答。在SS(SoftSwitch)中, 可以把控制中心 SoftSwitch 看成一个 SIP 端系统。
在 Ip tel系统中,与PSTN互通的网关也相当于一个端系统。
按逻辑功能区分,SIP 系统由 4 种元素组成:用户代理、代理服务器、重定向服务器以及注册服务器,如图 2.2-1 所示。
1. 用户代理
用户代理(UserAgent)分为两个部分:客户端(User Agent Client),负责发起呼叫;用户代理服务器(UserAgent Server),负责接受呼叫并做出响应。二者组成用户代理存在于用户终端中。用户代理按照是否保存状态可分为有状态代理、有部分状态用户代理和无状态用户代理。 2. 代理服务器
代理服务器(Proxy Server),负责接收用户代理发来的请求,根据网络策略将请求发给相应的服务器,并根据收到的应答对用户做出响应。它可以根据需要对收到的消息改写后再发出。 3. 重定向服务器
重定向服务器务器(Redirect Serever),接收用户请求,把请求中的原地址映射为零个或多个地址,返回给客户机,客户机根据此地址重新发送请求。
用于在需要的时候将用户新的位置返回给呼叫方,呼叫方可以根据得到的新位置重新呼叫。 4. 注册服务器
注册服务器(Registrar)用于接收和处理用户端的注册请求,完成用户地址的注册。 以上几种服务器可共存于一个设备,也可以分布在不同的物理实体中。SIP 服务器完全
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库6.3 核心网技术- 固网软交换技术(8)在线全文阅读。
相关推荐: