SIP百科.docx
《SIP百科.docx》由会员分享,可在线阅读,更多相关《SIP百科.docx(9页珍藏版)》请在冰豆网上搜索。
SIP百科
SIP百科
SIP是类似于HTTP的基于文本的协议。
SIP可以减少应用特别是高级应用的开发时间。
由于基于IP协议的SIP利用了IP网络,固定网运营商也会逐渐认识到SIP技术对于他们的深远意义。
一、介绍
什么是SIP
SIP(SessionInitiationProtocol)是一个应用层的信令控制协议。
用于创建、修改和释放一个或多个参与者的会话。
这些会话可以好似Internet多媒体会议、IP电话或多媒体分发。
会话的参与者可以通过组播(multicast)、网状单播(unicast)或两者的混合体进行通信。
SIP是类似于HTTP的基于文本的协议。
SIP可以减少应用特别是高级应用的开发时间。
由于基于IP协议的SIP利用了IP网络,固定网运营商也会逐渐认识到SIP技术对于他们的深远意义。
使用SIP,服务提供商可以随意选择标准组件。
不论媒体内容和参与方数量,用户都可以查找和联系对方。
SIP对会话进行协商,以便所有参与方都能够就会话功能达成一致以及进行修改。
它甚至可以添加、删除或转移用户。
SIP它既不是会话描述协议,也不提供会议控制功能。
为了描述消息内容的负载情况和特点,SIP使用Internet的会话描述协议(SDP)来描述终端设备的特点。
SIP自身也不提供服务质量(QoS),它与负责语音质量的资源预留协议(RSVP)互操作。
它还与若干个其他协议进行协作,包括负责定位的轻型目录访问协议(LDAP)、负责身份验证的远程身份验证拨入用户服务(RADIUS)以及负责实时传输的RTP等多个协议。
SIP的一个重要特点是它不定义要建立的会话的类型,而只定义应该如何管理会话。
有了这种灵活性,也就意味着SIP可以用于众多应用和服务中,包括交互式游戏、音乐和视频点播以及语音、视频和Web会议。
SIP消息是基于文本的,因而易于读取和调试。
新服务的编程更加简单,对于设计人员而言更加直观。
SIP如同电子邮件客户机一样重用MIME类型描述,因此与会话相关的应用程序可以自动启动。
SIP重用几个现有的比较成熟的Internet服务和协议,如DNS、RTP、RSVP等。
不必再引入新服务对SIP基础设施提供支持,因为该基础设施很多部分已经到位或现成可用。
对SIP的扩充易于定义,可由服务提供商在新的应用中添加,不会损坏网络。
网络中基于SIP的旧设备不会妨碍基于SIP的新服务。
例如,如果旧SIP实施不支持新的SIP应用所用的方法/标头,则会将其忽略。
SIP独立于传输层。
因此,底层传输可以是采用ATM的IP。
SIP使用用户数据报协议(UDP)以及传输控制协议(TCP),将独立于底层基础设施的用户灵活地连接起来。
SIP支持多设备功能调整和协商。
如果服务或会话启动了视频和语音,则仍然可以将语音传输到不支持视频的设备,也可以使用其他设备功能,如单向视频流传输功能。
通信提供商及其合作伙伴和用户越来越渴求新一代基于IP的服务。
现在有了SIP(TheSessionInitiationProtocol会话启动协议),一解燃眉之急。
SIP是不到十年前在计算机科学实验室诞生的一个想法。
它是第一个适合各种媒体内容而实现多用户会话的协议,现在已成了Internet工程任务组(IETF)的规范。
今天,越来越多的运营商、CLEC(竞争本地运营商)和ITSP(IP电话服务商)都在提供基于SIP的服务,如市话和长途电话技术、在线信息和即时消息、IPCentrex/HostedPBX、语音短信、push-to-talk(按键通话)、多媒体会议等等。
独立软件供应商(ISV)正在开发新的开发工具,用来为运营商网络构建基于SIP的应用程序以及SIP软件。
网络设备供应商(NEV)正在开发支持SIP信令和服务的硬件。
现在,有众多IP电话、用户代理、网络代理服务器、VOIP网关、媒体服务器和应用服务器都在使用SIP。
SIP从类似的权威协议--如Web超文本传输协议(HTTP)格式化协议以及简单邮件传输协议(SMTP)电子邮件协议--演变而来并且发展成为一个功能强大的新标准。
但是,尽管SIP使用自己独特的用户代理和服务器,它并非自成一体地封闭工作。
SIP支持提供融合的多媒体服务,与众多负责身份验证、位置信息、语音质量等的现有协议协同工作。
本白皮书对SIP及其作用进行了概括性的介绍。
它还介绍了SIP从实验室开发到面向市场的过程。
本白皮书说明SIP提供哪些服务以及正在实施哪些促进发展的方案。
它还详细介绍了SIP与各种协议不同的重要特点并说明如何建立SIP会话。
SIP较为灵活,可扩展,而且是开放的。
它激发了Internet以及固定和移动IP网络推出新一代服务的威力。
SIP能够在多台PC和电话上完成网络消息,模拟Internet建立会话。
与存在已久的国际电信联盟(ITU)SS7标准(用于呼叫建立)和ITUH.323视频协议组合标准不同,SIP独立工作于底层网络传输协议和媒体。
它规定一个或多个参与方的终端设备如何能够建立、修改和中断连接,而不论是语音、视频、数据或基于Web的内容。
SIP大大优于现有的一些协议,如将PSTN音频信号转换为IP数据包的媒体网关控制协议(MGCP)。
因为MGCP是封闭的纯语音标准,所以通过信令功能对其进行增强比较复杂,有时会导致消息被破坏或丢弃,从而妨碍提供商增加新的服务。
而使用SIP,编程人员可以在不影响连接的情况下在消息中增加少量新信息。
例如,SIP服务提供商可以建立包含语音、视频和聊天内容的全新媒体。
如果使用MGCP、H.323或SS7标准,则提供商必须等待可以支持这种新媒体的协议新版本。
而如果使用SIP,尽管网关和设备可能无法识别该媒体,但在两个大陆上设有分支机构的公司可以实现媒体传输。
而且,因为SIP的消息构建方式类似于HTTP,开发人员能够更加方便便捷地使用通用的编程语言(如Java)来创建应用程序。
对于等待了数年希望使用SS7和高级智能网络(AIN)部署呼叫等待、主叫号码识别以及其他服务的运营商,现在如果使用SIP,只需数月时间即可实现高级通信服务的部署。
这种可扩展性已经在越来越多基于SIP的服务中取得重大成功。
Vonage是针对用户和小企业用户的服务提供商。
它使用SIP向用户提供20,000多条数字市话、长话及语音邮件线路。
Deltathree为服务提供商提供Internet电话技术产品、服务和基础设施。
它提供了基于SIP的PC至电话解决方案,使PC用户能够呼叫全球任何一部电话。
DenwaCommunications在全球范围内批发语音服务。
它使用SIP提供PC至PC及电话至PC的主叫号码识别、语音邮件,以及电话会议、统一通信、客户管理、自配置和基于Web的个性化服务。
某些权威人士预计,SIP与IP的关系将发展成为类似SMTP和HTTP与Internet的关系,但也有人说它可能标志着AIN的终结。
迄今为止,3G界已经选择SIP作为下一代移动网络的会话控制机制。
Microsoft已经选择SIP作为其实时通信策略并在MicrosoftXP、PocketPC和MSNMessenger中进行了部署。
Microsoft同时宣布CEdotnet的下一个版本将使用基于SIP的VoIP应用接口层,并承诺向用户PC提供基于SIP的语音和视频呼叫。
另外,MCI正在使用SIP向IP通信用户部署高级电话技术服务。
用户将能够通知主叫方自己是否有空以及首选的通信方式,如电子邮件、电话或即时消息。
利用在线信息,用户还能够即时建立聊天会话和召开音频会议。
使用SIP将不断地实现各种功能。
二、历史回顾
SIP出现于二十世纪九十年代中期,源于哥伦比亚大学计算机系副教授HenningSchulzrinne及其研究小组的研究。
Schulzrinne教授除与人共同提出通过Internet传输实时数据的实时传输协议(RTP)外,还与人合作编写了实时流传输协议(RTSP)标准提案,用于控制音频视频内容在Web上的流传输。
Schulzrinne本来打算编写多方多媒体会话控制(MMUSIC)标准。
1996年,他向IETF提交了一个草案,其中包含了SIP的重要内容。
1999年,Shulzrinne在提交的新标准中删除了有关媒体内容方面的无关内容。
随后,IETF发布了第一个SIP规范,即RFC2543。
虽然一些供应商表示了担忧,认为H.323和MGCP协议可能会大大危及他们在SIP服务方面的投资,IETF继续进行这项工作,于2001年发布了SIP规范RFC3261。
RFC3261的发布标志着SIP的基础已经确立。
从那时起,已发布了几个RFC增补版本,充实了安全性和身份验证等领域的内容。
例如,RFC3262对临时响应的可靠性作了规定。
RFC3263确立了SIP代理服务器的定位规则。
RFC3264提供了提议/应答模型,RFC3265确定了具体的事件通知。
早在2001年,供应商就已开始推出基于SIP的服务。
今天,人们对该协议的热情不断高涨。
SunMicrosystems的JavaCommunityProcess等组织正在使用通用的Java编程语言定义应用编程接口(API),以便开发商能够为服务提供商和企业构建SIP组件和应用程序。
最重要的是,越来越多的竞争者正在借助前途光明的新服务进入SIP市场。
SIP正在成为自HTTP和SMTP以来最为重要的协议之一。
SIP的优点:
类似Web的可扩展开放通信
使用SIP,服务提供商可以随意选择标准组件,快速驾驭新技术。
不论媒体内容和参与方数量,用户都可以查找和联系对方。
SIP对会话进行协商,以便所有参与方都能够就会话功能达成一致以及进行修改。
它甚至可以添加、删除或转移用户。
不过,SIP不是万能的。
它既不是会话描述协议,也不提供会议控制功能。
为了描述消息内容的负载情况和特点,SIP使用Internet的会话描述协议(SDP)来描述终端设备的特点。
SIP自身也不提供服务质量(QoS),它与负责语音质量的资源保留设置协议(RSVP)互操作。
它还与若干个其他协议进行协作,包括负责定位的轻型目录访问协议(LDAP)、负责身份验证的远程身份验证拨入用户服务(RADIUS)以及负责实时传输的RTP等多个协议。
SIP规定了以下基本的通信要求:
1.用户定位服务
2.会话建立
3.会话参与方管理
4.特点的有限确定
三、SIP会话构成
SIP会话使用多达四个主要组件:
SIP用户代理、SIP注册服务器、SIP代理服务器和SIP重定向服务器。
这些系统通过传输包括了SDP协议(用于定义消息的内容和特点)的消息来完成SIP会话。
下面概括性地介绍各个SIP组件及其在此过程中的作用。
3.1、SIP用户代理
SIP用户代理(UA)是终端用户设备,如用于创建和管理SIP会话的移动电话、多媒体手持设备、PC、PDA等。
用户代理客户机发出消息。
用户代理服务器对消息进行响应。
3.2、SIP注册服务器
SIP注册服务器是包含域中所有用户代理的位置的数据库。
在SIP通信中,这些服务器会检索参与方的IP地址和其他相关信息,并将其发送到SIP代理服务器。
3.3、SIP代理服务器
SIP代理服务器接受SIPUA的会话请求并查询SIP注册服务器,获取收件方UA的地址信息。
然后,它将会话邀请信息直接转发给收件方UA(如果它位于同一域中)或代理服务器(如果UA位于另一域中)。
3.4、SIP重定向服务器
SIP重定向服务器允许SIP代理服务器将SIP会话邀请信息定向到外部域。
SIP重定向服务器可以与SIP注册服务器和SIP代理服务器同在一个硬件上。
以下几个情景说明SIP组件之间如何进行协调以在同一域和不同域中的UA之间建立SIP会话:
在同一域中建立SIP会话
下图说明了在预订同一个ISP从而使用同一域的两个用户之间建立SIP会话的过程。
用户A使用SIP电话。
用户B有一台PC,运行支持语音和视频的软客户程序。
加电后,两个用户都在ISP网络中的SIP代理服务器上注册了他们的空闲情况和IP地址。
用户A发起此呼叫,告诉SIP代理服务器要联系用户B。
然后,SIP代理服务器向SIP注册服务器发出请求,要求提供用户B的IP地址,并收到用户B的IP地址。
SIP代理服务器转发用户A与用户B进行通信的邀请信息(使用SDP),包括用户A要使用的媒体。
用户B通知SIP代理服务器可以接受用户A的邀请,且已做好接收消息的准备。
SIP代理服务器将此消息传达给用户A,从而建立SIP会话。
然后,用户创建一个点到点RTP连接,实现用户间的交互通信。
1.呼叫用户B
2.查询B在哪里
3.响应B的SIP地址
4.呼叫
5.响应
6.响应
7.多媒体通道已建立
在不同的域中建立SIP会话
本情景与第一种情景的不同之处如下。
用户A邀请正在使用多媒体手持设备的用户B进行SIP会话时,域A中的SIP代理服务器辨别出用户B不在同一域中。
然后,SIP代理服务器在SIP重定向服务器上查询用户B的IP地址。
SIP重定向服务器既可在域A中,也可在域B中,也可既在域A中又在域B中。
SIP重定向服务器将用户B的联系信息反馈给SIP代理服务器,该服务器再将SIP会话邀请信息转发给域B中的SIP代理服务器。
域B中的SIP代理服务器将用户A的邀请信息发送给用户B。
用户B再沿邀请信息经由的同一路径转发接受邀请的信息。
1.呼叫用户B
2.询问B中的用户
3.响应
4.呼叫域B的SIP代理
5.查询B在哪里
6.用户B的地址
7.代理呼叫
8.响应
9.响应
10.响应
11.多媒体通道已建立
无缝、灵活、可扩展:
展望SIP未来
SIP能够连接使用任何IP网络(有线LAN和WAN、公共Internet骨干网、移动2.5G、3G和Wi-Fi)和任何IP设备(电话、PC、PDA、移动手持设备)的用户,从而出现了众多利润丰厚的新商机,改进了企业和用户的通信方式。
基于SIP的应用(如VOIP、多媒体会议、push-to-talk(按键通话)、定位服务、在线信息和IM)即使单独使用,也会为服务提供商、ISV、网络设备供应商和开发商提供许多新的商机。
不过,SIP的根本价值在于它能够将这些功能组合起来,形成各种更大规模的无缝通信服务。
使用SIP,服务提供商及其合作伙伴可以定制和提供基于SIP的组合服务,使用户可以在单个通信会话中使用会议、Web控制、在线信息、IM等服务。
实际上,服务提供商可以创建一个满足多个最终用户需求的灵活应用程序组合,而不是安装和支持依赖于终端设备有限特定功能或类型的单一分散的应用程序。
通过在单一、开放的标准SIP应用架构下合并基于IP的通信服务,服务提供商可以大大降低为用户设计和部署基于IP的新的创新性托管服务的成本。
它是SIP可扩展性促进本行业和市场发展的强大动力,是我们所有人的希望所在。
四、H.323和SIP协议的比较
简介
H.323和SIP分别是通信领域与因特网两大阵营推出的建议。
H.323企图把IP电话当作是众所周知的传统电话,只是传输方式发生了改变,由电路交换变成了分组交换。
而SIP协议侧重于将IP电话作为因特网上的一个应用,较其它应用(如FTP,E-mail等)增加了信令和QoS的要求,它们支持的业务基本相同,也都利用RTP作为媒体传输的协议。
但H.323是一个相对复杂的协议。
H.323采用基于ASN.1和压缩编码规则的二进制方法表示其消息。
ASN.1通常需要特殊的代码生成器来进行词法和语法分析。
而SIP的基于文本的协议,类似于HTTP。
基于文本的编码意味着头域的含义是一目了然的,如From、To、Subject等域名。
这种分布式、几乎不需要复杂的文档说明的标准规范风格,其优越性已在过去的实践中得到了充分的证明(现在广为流行的邮件协议SMTP就是这样的一个例子)。
SIP的消息体部份采用SDP进行描述,SDP中的每一项格式为=,也比较简单。
在支持会议电话方面,H.323由于由多点控制单元(MCU)集中执行会议控制功能,所有参加会议终端都向MCU发送控制消息,MCU可能会成为颈,特别是对于具有附加特性的大型会议;并且H.323不支持信令的组播功能,其单功能限制了可扩展性,降低了可靠性。
而SIP设计上就为分布式的呼叫模型,具有分布式的组播功能,其组播功能不仅便于会议控制,而且简化了用户定位、群组邀请等,并且能节约带宽。
但是H.323的集中控制便于计费,对带宽的管理也比较简单、有效。
H.323中定义了专门的协议用于补充业务,如H.450.1、H.450.2和H.450.3等。
SIP并未专门定义的协议用于此目的,但它很方便地支持补充业务或智能业务。
只要充分利用SIP已定义的头域(如Contact头域),并对SIP进行简单的扩展(如增加几个域),就可以实现这些业务。
例如对于呼叫转移,只要在BYE请求消息中添加Contact头域,加入意欲转至的第三方地址就可以实现此业务。
对于通过扩展头域较难实现的一些智能业务,可在体系结构中增加业务代理,提供一些补充服务或与智能网设备的接口。
在H.323中,呼叫建立过程涉及到第三条信令信致到:
RAS信令信道、呼叫信令信到和H.245控制信道。
通过这三条信道的协调才使得H.323的呼叫得以进行,呼叫建立时间很长。
在SIP中,会话请求过程和媒体协商过程等一起进行。
尽管H.323v2已对呼叫建立过程作了改进,但较之SIP只需要1.5个回路时延来建立呼叫,仍是无法相比。
H.323的呼叫信令通道和H.245控制信道需要可靠的传输协议。
而SIP独立于低层协议,一般使用UDP等无法连接的协议,用自己信用层的可靠性机制来保证消息的可靠传输。
总之,H.323沿用的是传统的实现电话信令模式,比较成熟,已经出现了不少H.323产品。
H.323符合通信领域传统的设计思想,进行集中、层次控制,采用H.323协议便于与传统的电话网相连。
SIP协议借鉴了其它因特网的标准和协议的设计思想,在风格上遵循因特网一贯坚持的简练、开放、兼容和可扩展等原则,比较简单。
以下针对它们的应用目标、标准结构、系统组成以及系统实现的难易程度等几个方面进行简单分析。
4.1、标准的应用目标
h.323标准是itu-t组织1996年在h.320/h.324的基础上建立起来的,其应用目标是,在基ip的网络环境中,实现可靠的面向音视频和数据的实时应用。
目前经过多年的技术发展和标准的不断完善,h.323已经成为被广大的itu成员以及客户所接受的一个成熟标准族。
sip标准是itef组织在1999年提出的,其应用目标是在基于internet环境,实现数据、音视频实时通讯,特别是通过internet将视频通讯这种应用大众化,引入到千家万户。
由于sip协议相对于h.323而言,相对简单、自由,厂商可以使用相对小的成本就可以构造满足应用的系统。
例如仅仅使用微软基于sip协议的msn,和rtc就可以构造一个简单的,基于internet应用环境的视频通讯环境。
这样网络运营商就可以在尽量少的成本基础上,利用现有的网络资源开展视音频通讯业务的扩展工作。
4.2、标准的体系结构
h.323是一个单一标准,而不是一个关于在ip环境中实时多媒体应用的完整标准族,对于呼叫的建立、管理以及所传输媒体格式等各个方面都有完善而严格的规定。
一个遵守h.323标准建立的多媒体系统,可以保证实现客户稳定完善的多媒体通讯应用。
sip标准严格意义上讲是一个实现实时多媒体应用的信令标准,由于它采用了基于文本的编码方式,使得它在应用上,特别是点到点的应用环境中,具有极大的灵活性、扩充性以及跨平台使用的兼容性,这一点使得运营商可以十分方便的利用现有的网络环境实现大规模的推广应用。
但是sip协议自身不支持多点的会议功能以及管理和控制功能,而是要依赖于别的协议实现,影响了系统的完备性,特别是对于需要多点通讯的要求,应用单纯的sip系统难以实现。
针对这些不足,以radvison公司为首的itu-tsg16小组提出了sip的运用规范,并实现了sip和h.323之间的互通互联,并成功的解决了sip在多点环境下的应用难题。
4.3、系统的组成结构
首先,在系统主要组成成员的功能性方面进行类比,sip的ua等价于一个h.323的终端,实现呼叫的发起和接收,并完成所传输媒体的编解码应用;sip代理服务器、重定向服务器以及注册服务器的功能则等价于h.323的gatekeeper,实现了终端的注册、呼叫地址的解析以及路由。
其次,虽然在呼叫信令和控制的具体实现上不同,但一个基于sip的呼叫流程与h.323的q931相类似,sip所采用的会话描述协议(sdp)则类似于h.323中的呼叫控制协议h.245。
4.4、系统实现的难易性
h.323标准的信令信息是采用符合asn.1per的二进制编码,并且在连接实现全过程都要严格标准的定义,系统的自由度小,如要实现大规模的应用,需要对整个网络的各个环节进行规划。
sip标准的信令信息是基于文本的,采用符合iso10646的utf-8编码,并且全系统的构造结构相对灵活,终端和服务器的实现也相对容易成本也较低,从网络运营商的角度考虑,构造一个大规模视频通讯网络,采用sip系统的成本要廉价许多,而且也更具有可实现性。
4.5、总结
通过对sip和h.323协议之间进行比较,我们不难看出,h.323和sip之间不是对立的关系,而是在不同应用环境中的相互补充。
sip作为以internet应用为背景的通讯标准,是将视频通讯大众化,引入千家万户的一个有效并具有现实可行性的手段。
而h.323系统和sip系统有机结合,又确保了用户可以在构造相对廉价灵活的sip视频系统的基础上,实现多方会议等多样化的功能,并可靠的实现sip系统与h.323系统之间的互通,在最大程度上满足用户对未来实时多媒体通信的要求。