综述:SIP协议详解


对于SIP协议,我们应该有所了解。那么对于这部分的基础我们再来详述一下。也是我们学习SIP协议应用的一个铺垫。这里就让我们看看SIP协议详解的具体内容吧。

SIP概述

SIP (Session Initiation Protocal)称为会话初始协议,是由IETF(Internet Engineering Task Force)组织于1999年提出的一个在基于IP网络中,特别是在Internet这样一种结构的网络环境中,实现实时通讯应用的一种信令协议.而所谓的会话(Session),就是指用户之间的数据交换.在基于SIP协议的应用中,每一个会话可以是各种不同类型的内容,可以是普通的文本数据,也可以是经过数字化处理的音频、视频数据,还可以是诸如游戏等应用的数据,应用具有巨大的灵活性.

作为一个IETF提出的标准,SIP协议在很大程度上借鉴了其他各种广泛存在的Internet协议,如HTTP(超文本传输协议)、SMTP(简单邮件传输协议)等,和这些协议一样SIP也采用的基于文本的编码方式,这也是SIP协议同视频通讯领域其他现有标准相比最大的特点之一.

SIP协议的提出和发展,是伴随着Internet的发展而发展的,到目前为止它走过了一下几个阶段:

n1996年首先出现了SIP的概念,这时SIP的主要应用是针对Internet上的各种文本应用,如电子邮件、文字聊天等;

n1999年3月,ITEF的多方多媒体会话控制(MMUSIC)工作组提出了RFC2543建议,供各厂商和机构讨论;

n1999年9月,SIP工作组从MMUSIC中分离并独立出来,成立了SIP工作组,并与2000年7月发表了SIP的草案;

n2002年6月,ITEF的SIP工作组又发表了RFC3261建议,以取代RFC2543.

由于网络环境以及相关多媒体技术的不足,在SIP协议首次提出的时候,仅仅针对各种文本应用,随着技术的发展,并通过和IETF中IP电话工作组(IPTEL)、IP网中电话选路(TRIP)工作组等兄弟工作组配合工作,在SIP协议中大大加强了对多媒体通讯的支持.

由于Internet的飞速发展,在最近的两年时间内,SIP已经开始被ITU-T SG16、ETSI TIPON(欧洲标准化组织),IMTE等各种标准化组织所接受,并在这些组织中成立了与SIP相关的工作组.特别是作为ITU-T SG16主要成员,在多年发展H323应用的基础上,针对SIP应用在视频领域的特点,提出了SIP的应用指导,并推出了相应的SIP协议栈,使得ITU的成员实现了这两种协议之间的互通性.

SIP协议详解:SIP系统基本组成

按逻辑功能区分,SIP系统由4种元素组成:用户代理,SIP代理服务器,重定向服务器以及SIP注册服务器.

lSIP用户代理:又称为SIP终端,是SIP系统中的最终用户,在RFC3261中将它们定义为一个应用.根据它们在会话中扮演的角色的不同,又可分为用户代理客户机(UAC)和用户代理服务器(UAS)两种.其中前者用于发起呼叫请求,后者用于响应呼叫请求.

lSIP代理服务器(SIP Proxy Server):是一个中间元素,它既是一个客户机又是一个服务器,具有解析名字的能力,能够代理前面的用户向下一跳服务器发出呼叫请求.然后服务器决定下一跳的地址.

l重定向服务器(Redirect Server):是一个规划SIP呼叫路径的服务器,在获得了下一跳的地址后,立刻告诉前面的用户,让该用户直接向下一跳地址发出请求而自己则退出对这个呼叫的控制.

lSIP注册服务器(SIP Register Server):用来完成对UAS的登录,在SIP系统的网元中,所有UAS都要在某个登录服务器中登录,以便UAC通过服务器能找到它们.

SIP用于视频通信的优势与问题

由于SIP协议与H.323协议族都基于分组交换网络,而当前分组交换网上最成熟的视频通信系统都基于H.323协议族.所以使用SIP协议的视频通信系统不可避免地需要和H.323系统比较来得到优势与不足.虽然SIP协议和H.323协议族并不是谁替代谁的竞争关系,但是通过比较得到的优势和不足可以帮助我们在不同的条件下作出更恰当的选择.

协议功能模块比较

SIP协议功能模块中用户代理等价于一个H.323的终端(或者分组交换网络侧的网关),SIP服务器则等价于H.323的网守.另外,SIP类似H.323中的RAS和Q.931协议,而SDP则相当于H.245.在IETF的SIP体系结构中,媒体流的承载采用了RTP协议,这是和H.323一样的.所以,H.323与IETF的SIP主要的不同在于呼叫信令和控制是如何实现的.

基本呼叫的建立和拆除

H.323第二版的呼叫建立是基于可靠的传输协议-TCP协议,所以呼叫建立需要两个连接阶段:TCP连接建立和呼叫连接建立.而在H.323第三版,支持TCP和UDP,因此简化了呼叫建立过程.SIP的呼叫建立类似H.323第三版的处理过程,使用INVITE信息包.呼叫拆除的过程与呼叫建立相反,主叫和被叫都能拆线,H.323协议采用RELEASE COMPLETE,SIP协议采用BYE.

呼叫控制业务

SIP和H.323都支持呼叫保持、呼叫转移、呼叫前转、呼叫等待、电话会议和其他补充业务.以呼叫保持为例:H.323定义了近点呼叫保持和远点呼叫保持两种保持业务的场景.网守仅仅透明地传送SS-HOLD.而SIP实现同样的功能,只要向需要呼叫保持的一方发送一个更改了SDP描述的INCVITE命令即可.更改的SDP描述段仅将媒体发送的目的地址变为空<0.0.0.0>,而其他的内容不变.收到该用户的UA,让呼叫保持,直到有新的INVITE到来为止.

SIP协议详解就到这里了。望对大家有所帮助。

相关内容