摘 要 概述现有视频通信技术,包括H.320与H.323的应用,以及SIP协议的历史、组成部件,并展望了SIP协议用于视频通信的前景。
关键词 SIP 视频通信 H.323
一、引 言
通信技术发展到今天,电话网几乎覆盖全球。语音通信(电话)似乎已基本达到在任何时间,任何地点都可以沟通。随着技术的发展,人们已不满足仅仅语音通信,大规模视频通信已成为下一阶段信息产业发展方向。虽然电视会议已出现20多年,当前不但有统一的标准而且有成熟的产品,但是由于种种原因一直没有得到像电话那样的普遍应用。随着SIP协议的出现,视频通信在技术上又有了新的发展动力。
二、视频通信协议概述
1.基于H.320的视频应用
传统会议电视利用以电话网2M或者1.544M直连数字线路连接终端会议电视设备进行实时音频、视频和数据信息的传送。通过使用多点控制器,可以在一块控制板具备所有主会场的操作切换功能。最初会议电视厂家以各自专用的压缩和通信算法进行生产,各个会议电视厂家产品无法互联互通。
随着ITU-T推出H.320协议,上述问题得到很大程度的解决。H.320是同步电路交换网(如ISDN)上现频传输的标准。电路交换网适用于实时应用,如长时间和具有确定延迟的音频和视频信号传递。电路的建立依赖于带外信令、集中的路由控制和昂贵的交换设备。使用H.320协议,电话网商用会议电视的理想电路是384kbit/s。使用384kbit/s的电路可以以合理的成本提供高质量的音频和视频信号。采用2M或者1.544M的中继直连当然很容易满足上述带宽要求,但是等于建立专网,价格令用户难以承受。由于电话网络中继价格不断下降以及大量既成事实的基于H.320的电视会议应用,虽然H.320通信成本相对于现有的其它方式稍显昂贵,但其市场仍将在未来数年里继续成长。
2.基于H.323协议的视频应用
H.323是国际电信联盟制定的局域网上的多媒体通信系列标准。该协议专门为不提供服务质量(QoS)保证的局域网技术制定,例如运行于以太网、快速以太网和令牌环网(Token Ring)上的TCP/IP和IPX。尽管H.323协议特别为局域网制定,只要带宽时延满足要求同样可以应用在更大范围,例如城域网和广域网。1997年5月,国际电信联盟第15研究小组重新定义了H.323,它成为在“不保证服务质量的分组交换网上传递信息的多媒体通信系统”的标准。
H.323是在H.320的基础上建立起来。增加的一些功能是由分组交换网络代替电路交换网络所带来的,另一些功能则是由压缩算法和信令技术的发展带来的。H.323协议在规定了与H.320相同的视、音频压缩算法的同时又补充了一些新的算法。它是一个庞大的协议族,主要定义了四个部分:终端、网关、网守和多点控制单元。
(1)终端:在基于IP的网络上是一个客户端点。它需要支持下面3项功能:支持信令和控制;支持实时通信;支持编码,即传前压缩,收后进行解压缩。
(2)网关:提供在包交换网络和电路交换网络(SCN,Switch Circuit Network)之间的一个连接。
(3)网守:在H.323系统中是可选的,但如果出现,它们就具有某些强制性的功能,网守完成地址翻译、接纳控制、带宽控制、域管理4个必须功能。网守还支持呼叫控制信令、呼叫鉴权、带宽管理和呼叫管理4个可选的功能。
(4)多点控制单元(MCU):多点控制单元支持3个以上的端用户进行会话。典型的MCU包括一个多点控制器(MC)和若干个(也可以没有)多点处理器(MP)。MC提供控制功能,如终端之间的协商。MP完成会话中的媒体流的处理,如话音的混合、话音/视频的交换。
H.323是一个复杂而庞大的协议族,现阶段是视频应用的主流技术。由于过于复杂,现在正受到基于SIP协议视频应用的挑战。
二、SIP协议简介
1.SIP概述
SIP (Session Initiation Protocal)称为会话初始协议,是由IETF(Internet Engineering Task Force)组织于1999年提出的一个在基于IP网络中,特别是在Internet这样一种结构的网络环境中,实现实时通信应用的一种信令协议。而所谓的会话(Session)就是指用户之间的数据交换。在基于SIP协议的应用中,每一个会话可以是各种不同类型的内容,可以是普通的文本数据,也可以是经过数字化处理的音频、视频数据,还可以是诸如游戏等应用的数据,应用具有巨大的灵活性。
作为一个IETF提出的标准,SIP协议在很大程度上借鉴了其他各种广泛存在的Internet协议,如HTTP(超文本传输协议),SMTP(简单邮件传输协议)等,和这些协议一样SIP采用的也是基于文本的编码方式,这也是SIP协议同视频通信领域其他现有标准相比最大的特点之一。SIP协议的提出和发展,是伴随着Internet的发展而发展的,到目前为止它走过了以下几个阶段:
(1)1996年首先出现了SIP的概念,这时SIP的主要应用是针对Internet上的各种文本应用,如电子邮件、文字聊天等。
(2)1999年3月,ITEF的多方多媒体会话控制(MMUSIC)工作组提出了RFC2543建议,供各厂商和机构讨论。
(3)1999年9月,SIP工作组从MMUSIC中分离并独立出来,成立了SIP工作组,并于2000年7月发表了SIP的草案。
(4)2002年6月,ITEF的SIP工作组又发表了RFC3261建议,以取代RFC2543。
由于网络环境以及相关多媒体技术的不足,在SIP协议首次提出的时候,仅针对各种文本应用,随着技术的发展,通过和IETF中IP电话工作组(IPTEL)、IP网中电话选路(TRIP)工作组等兄弟工作组配合工作,在SIP协议中大大加强了对多媒体通信的支持。
由于Internet的飞速发展,在最近的两年时间内,SIP已经开始被ITU-T SG16,ETSI TIPON(欧洲标准化组织),IMTE等各种标准化组织所接受,并在这些组织中成立了与SIP相关的工作组。特别是作为ITU-T SG16主要成员,在多年发展H.323应用的基础上,针对SIP应用在视频领域的特点,提出了SIP的应用指导,并推出了相应的SIP协议栈,使得ITU的成员实现了这两种协议之间的互通性。
2.SIP系统基本组成
按逻辑功能区分,SIP系统由4种元素组成:用户代理,SIP代理服务器,重定向服务器以及SIP注册服务器。
(1)SIP用户代理:又称为SIP终端,是SIP系统中的最终用户,在RFC3261中将它们定义为一个应用。根据它们在会话中扮演的不同角色,又分为用户代理客户机(UAC) 和用户代理服务器(UAS)两种。其中前者用于发起呼叫请求,后者用于响应呼叫请求。
(2)SIP代理服务器(SIP Proxy Server):是一个中间元素,它既是一个客户机又是一个服务器,具有解析名字的能力,能够代理前面的用户向下一跳服务器发出呼叫请求,由服务器决定下一跳的地址。
(3)重定向服务器(Redirect Server):是一个规划SIP呼叫路径的服务器,在获得了下一跳的地址后,立刻告诉前面的用户,让该用户直接向下一跳地址发出请求,而自己则退出对这个呼叫的控制。
(4)SIP注册服务器 (SIP Register Server):用来完成对UAS的登录,在SIP系统的网元中,所有UAS都要在某个登录服务器中登录,以便UAC通过服务器能找到它们。
图1是一个SIP呼叫建立过程的示意图,其中:
(1)SIP用户代理向SIP代理服务器发送呼叫,建立请求(INVITE)。
(2)SIP代理服务器向重定向服务器发送呼叫建立请求。
(3)重定向服务器返回重定向消息。
(4)SIP代理服务器向重定向服务器指定的SIP代理服务器发送呼叫,建立请求。
(5)被请求的SIP代理服务器使用非SIP协议,例如域名查询或者LDAP到定位服务器查询被叫位置。
(6)定位服务器返回被叫位置(被叫SIP代理服务器)。
(7)被请求的SIP代理服务器向被叫SIP代理服务器发送呼叫,建立请求。
(8)被叫SIP代理服务器向SIP用户代理(被叫)发送呼叫,建立请求(被叫振铃或显示)。
(9)被叫用户代理向被叫SIP用户代理服务器发送同意或拒绝。
(10)被叫用户代理服务器向主叫代理服务器所请求的代理服务器发送同意或拒绝。
(11)主叫代理服务器所请求的代理服务器向主叫代理服务器发同意或拒绝。
(12)主叫代理服务器向主叫SIP用户代理指示被叫是否同意呼叫请求。
呼叫建立后,双方根据协商得到的媒体和压缩算法等信息相互通信。呼叫拆除过程类似于建立过程。
三、SIP用于视频通信的优势与问题
由于SIP协议与H.323协议族都基于分组交换网络,而当前分组交换网上最成熟的视频通信系统都基于H.323协议族。所以,使用SIP协议的视频通信系统不可避免地需要和H.323系统比较来得到优势与不足。虽然SIP协议和H.323协议族并不是谁替代谁的竞争关系,但是通过比较得到的优势和不足可以帮助我们在不同的条件下作出更恰当的选择。
1.协议功能模块比较
SIP协议功能模块中用户代理等价于一个H.323的终端(或者分组交换网络侧的网关),SIP服务器则等价于H.323的网守。另外,SIP类似H.323中的RAS和Q.931协议,而SDP则相当于H.254。在IETF的SIP体系结构中,媒体流的承载采用了RTP协议,这是和H.323一样的。所以,H.323与IETF的SIP主要不同在于呼叫信令和控制是如何实现的。
2.基本呼叫的建立和拆除
H.323第二版的呼叫建立是基于可靠的传输协议–TCP协议,所以呼叫建立需要两个连接阶段:TCP连接建立和呼叫连接建立。在H.323第三版中支持TCP和UDP,简化了呼叫建立过程。SIP的呼叫建立类似H.323第三版的处理过程,使用INVITE信息包。呼叫拆除的过程与呼叫建立相反,主叫和被叫都能拆线,H.323协议采用RELEASE COMPLETE,SIP协议采用BYE。
3.呼叫控制业务
SIP和H.323都支持呼叫保持、呼叫转移、呼叫前转、呼叫等待、电话会议和其他补充业务。以呼叫保持为例:H.323定义了近点呼叫保持和远点呼叫保持两种保持业务的场景。网守仅仅透明地传送SS-HOLD。而SIP实现同样的功能,只要向需要呼叫保持的一方发送一个更改了SDP描述的INVITE命令即可。更改的SDP描述段仅将媒体发送的目的地址变为空<0.0.0.0>,而其他的内容不变。收到该用户的UA,让呼叫保持,直到有新的INVITE到来为止。
4.SIP的第三方控制
第三方控制是指不参与会话的第三者具有建立呼叫的能力,这个业务特征目前只有SIP具有。H.323也在进行试图添加同样的业务功能的工作。第三方控制有很多应用场合,包括秘书为经理拨号、电话营销的自动拨号、参加者呼叫转移和呼叫中心业务。第三方控制是SIP值得很好利用的业务特征。由于SIP的这一特性,ITU-T和IETF在实现PINT(IN和因特网互通)业务时都采用了SIP协议。
5.能力交换
能力交换就是彼此交流各自对媒体流的处理能力,确定双方共有的能力,从而确保多媒体信号被双方接受。H.323采用H.245协议进行能力交换。终端的所有能力都描述在一组Capability Descriptor结构中,它们的每个项是一个Simultaneous Capabilities结构和一个Capability Decriptor Number。借助这种结构,每个终端能力的精确信息被表示在相关的紧缩结构中。
SIP使用SDP来进行能力交换,主叫方使用一个OPTION需求去找出被叫。因为受制于SDP的表达方式,所以SIP还不如H.245有完整灵活的协商能力,例如SIP不支持不对称能力交换(只收或只发)以及声频和视频编码的并发能力。
6.服务质量
服务质量包含很多不同方面的指标,一个和多媒体流相关的QoS参数包括带宽、最大时延、时延抖动和包丢失率。另外,还有呼叫建立时延影响感觉的QoS,它在很大程度上依赖于信令协议。呼叫时延也依赖所用的承载信令信息的传输协议,尤其是在信令信息丢失需要重传的时候。所以,对于媒体流,我们首先考虑信令协议对QoS的支持,然后再考察呼叫建立时延,因为呼叫建立时延受错误检测和错误纠正机制的影响。
7.媒体流的QoS支持
在H.323中,网守提供一组丰富的控制和管理功能,包括地址翻译、接纳控制、带宽控制和地域管理。网守中还提供呼叫控制信令、呼叫签权、带宽管理和呼叫管理等选择功能。SIP其自身不支持管理和控制功能,而是依赖于别的协议。
近年来,新的分级服务体系结构开始引人注目,H.323第三版能提供某些基于QoS协商参数(位流速、时延、抖动)的分级服务。在呼叫初始化时,终端可以申请担保的服务、受控服务和无指明服务中的一种,SIP和H.323老版本均不支持类似的服务。
8.呼叫建立时延
H.323第一版在呼叫建立时延时很大,第二版进行了改进,第三版则更好。SIP在呼叫建立时非常类似于H.323第三版,如果UDP呼叫建立失败,则H.323第三版要好于SIP。H.323第三版几乎同时建立一个UDP的连接和一个TCP连接,它提供一个有效的机制,如果UDP连接成功则关闭TCP连接。否则,立刻启用TCP。SIP是顺序地操作UDP和TCP,如果UDP失败,则会增加呼叫建立时延。
9.环路检测
为防止环路,H.323定义PathValue域来指出信令信息在丢弃前可达到的最大数目。问题是定义一个适用的值很关键。此外网络变化后,这个值也要相应改。SIP采用了via头字段,检查其内容,如果新端点已出现在via列表中,则表示有环路了。SIP的方法好于H.323。
10.互操作性
(1)版本之间的互操作性包括:H.323的完整后向兼容性使所有不同的H.323版本都能实现无缝集成。在SIP方面,新版本可能使某些旧功能不再被实现。
(2)与其他信令协议的互操作性:要支持传统的电信业务,VoIP信令协议必须支持ISDN和No.7信令,Q.931接口用于User-Network接口(UNI),ISUP用于Network-Network(NNI)。由于H.323的呼叫建立只是No.7信令/ISUP的一个子集,所以H.323只能部分地转换No.7信令的信息。H.32x系列定义了其他互操作协议,如H.320用于ISDN和B-ISDN,H.324用于GSTN。
SIP协议目前的版本不提供No.7信令的翻译,但有不少Internet的协议草案在进行这方面的工作。随着软交换概念的提出和发展,SIP也受到了重视,SIP有可能作为软交换设备之间的信令协议,成为各种信令互操作的纽带。
11.实现的难易性
H.323信令信息符合ASN.1PER的二进制编码,需要特殊的编解码器。SIP信息是基于文本的,采用ISO10646以UTF-8编码。基于文本的编码很容易用Java,Tcl和Perl等语言来实现,调试方便。
四、SIP协议在视频通信中的应用
SIP协议是一个建立会话的协议,类似于电话网中的信令。从理论上说,SIP协议可以用于任何基于会话的应用。因此视频应用当然也不例外。在企业网、局域网内使用SIP协议提供视频应用完全没有问题。但是,当SIP协议应用在为公众服务的大范围、大规模电信网络中的视频应用则较少。主要原因在上面SIP协议用于视频应用的优势与缺陷中已有提及。问题的根源在于SIP协议来源于IETF,电信行业标准主要来源于ITU,IETF与ITU属两大阵营,IETF来源于计算机行业,推崇尽力而为、免费服务与分散的控制。ITU来源于电信行业,推崇保证服务质量、收费服务与集中控制。SIP要在电信视频通信网得到应用,必须解决管理、计费以及服务质量等问题。
服务质量问题与SIP协议本身无关,是否能保证服务质量问题关键在于分组网络服务质量。所以,SIP协议与H.323协议在服务质量问题上是一致的,与他们比较的是基于电路的H.320视频应用。
SIP本身并不考虑计费,我们可以在用户代理服务器上收集计费数据。从这点看,似乎使用SIP协议的视频应用问题不大。实际上问题在于SIP协议是IETF协议,某种程度上是分散控制。终端拥有很强大的智能,虽然通常只实现用户代理,但是可以完全实现用户代理服务器甚至定位服务器。用户可以很容易地绕开收集计费信息的电信运营商设备直接在分组层取得视频服务。这样,电信运营商就得不到预期的利润,也就没有动力建设基于SIP的网络。
五、结束语
虽然SIP协议用于电信视频应用存在问题,但是随着SIP协议首先在语音交互中的应用以及软交换中的使用,可以看到SIP协议还是有较好的前景的。未来网络趋于分组网络,网络趋向使用简洁有效的协议,所以SIP协议有可能在未来视频通信网络中得到广泛应用。
摘自《电信网技术》