开发界
首页 移动开发 在线交易 IT笔记 网络技术 操作系统 企业架构 数据库 考试认证 IT培训 开源软件 数据存储 行业资讯
大家都在看:java   开发   C#   oracle   mysql   android   web开发   学习   sqlserver   linux   asp   php   ajax   javascript   css   html
SIP协议介绍 (一)
2013-02-20 10:46:34 来源:开发界 作者:admin 栏目:网络基础 责任编辑:admin
[导读]通信提供商及其合作伙伴和用户越来越渴求新一代基于 IP 的服务。现在有了 SIP协议(会话启动协议),一解燃眉之急。
  介绍
  
  通信提供商及其合作伙伴和用户越来越渴求新一代基于IP的服务。现在有了SIP协议(会话启动协议),一解燃眉之急。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同时宣布CE.net的下一个版本将使用基于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协议可以用于众多应用和服务中,包括交互式游戏、音乐和视频点播以及语音、视频和Web会议。
  
  下面是SIP协议在新的信令协议中出类拔萃的一些其他特点
  
  SIP协议消息是基于文本的,因而易于读取和调试。新服务的编程更加简单,对于设计人员而言更加直观。
  
  SIP协议如同电子邮件客户机一样重用MIME类型描述,因此与会话相关的应用程序可以自动启动。
  
  SIP协议重用几个现有的比较成熟的Internet服务和协议,如DNS、RTP、RSVP等。不必再引入新服务对SIP协议基础设施提供支持,因为该基础设施很多部分已经到位或现成可用。
  
  对SIP协议的扩充易于定义,可由服务提供商在新的应用中添加,不会损坏网络。网络中基于SIP协议的旧设备不会妨碍基于SIP协议的新服务。例如,如果旧SIP协议实施不支持新的SIP协议应用所用的方法/标头,则会将其忽略。
  
  SIP协议独立于传输层。因此,底层传输可以是采用ATM的IP。SIP协议使用用户数据报协议(UDP)以及传输控制协议(TCP),将独立于底层基础设施的用户灵活地连接起来。
  
  SIP协议支持多设备功能调整和协商。如果服务或会话启动了视频和语音,则仍然可以将语音传输到不支持视频的设备,也可以使用其他设备功能,如单向视频流传输功能。
  
  SIP协议会话构成
  
  SIP协议会话使用多达四个主要组件:SIP协议用户代理、SIP协议注册服务器、SIP协议代理服务器和SIP协议重定向服务器。这些系统通过传输包括了SDP协议(用于定义消息的内容和特点)的消息来完成SIP协议会话。下面概括性地介绍各个SIP协议组件及其在此过程中的作用。
  
  SIP协议用户代理(UA)是终端用户设备,如用于创建和管理SIP协议会话的移动电话、多媒体手持设备、PC、PDA等。用户代理客户机发出消息。用户代理服务器对消息进行响应。
  
  SIP协议注册服务器是包含域中所有用户代理的位置的数据库。在SIP协议通信中,这些服务器会检索参与方的IP地址和其他相关信息,并将其发送到SIP协议代理服务器。
  
  SIP协议代理服务器接受SIP协议UA的会话请求并查询SIP协议注册服务器,获取收件方UA的地址信息。然后,它将会话邀请信息直接转发给收件方UA(如果它位于同一域中)或代理服务器(如果UA位于另一域中)。
  
  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协议重定向服务
标签:sip sip协议
版权所有:转载请注明出处!
分享到:
上一篇类似百度的网站快照java实现 下一篇网络学习笔记初识OSI七层模型与TC..
您可能还喜欢
暂无...
今日最新资讯 最新推荐信息
考试认证 更多
开发技术 更多
移动开发 更多

关于开发界 | 合作伙伴 | 联系我们 | 友情链接 | 版权声明 | 网站制作 | 网站地图 | 加入收藏 | 设为首页

Copyright@2012-2016 开发界 京ICP备12027873号