已阅读5页,还剩49页未读, 继续免费阅读
(通信与信息系统专业论文)sip协议的音视频软终端开发与研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨理工大学工学硕士学位论文 s i p 协议的音视频软终端开发与研究 摘要 从1 9 9 5 年首个i p ( i n t e r n e tp r o t o c 0 1 ) 电话软件的出现到今天i p 电话电信 级的大规模应用,i p 电话越来越深入的走进了人们的生活。 由于i n t e r n e t 的广泛应用,很多企业和家庭都是通过i n t e m e t 和外界进行 各种联系。因此,如何通过i n t e m e t 进行各种通信并和电信网兼容,是越来 越多的人考虑的问题,i p 电话就是一种解决方案。 s i p ( s e s s i o ni n i t i a t i o np r o t o c 0 1 ) 协议是由i e t f ( i n t e m e te n g i n e e r i n gt a s k f o r c e ) 提出的一个应用层信令控制协议,用于创建、修改以及终结由一个或 多个参与者参加的会话。它能更好的将电信级应用与i n t e r n e t 应用融合在一 起,打破传统的电信业务的传输模式,采用基于i n t e r n e t 的准则,提供基于 i p 的多媒体业务,具有广泛的应用前景,因此在i p 电话中采用s i p 协议作为 信令协议成为越来越多开发者的选择。本文就是围绕因特网上基于s i p 协议 的i p 电话终端软件的实现展开讨论的。 本文研究了基于s i p 协议的i p 软终端的实现方法,对软终端进行总体设 计和模块设计,解决了软终端开发过程中的实际问题。 论文研究了s i p 协议的信令过程以及i p 电话中的实时传输协议r t p 及 其它一些相关协议和标准,完成了音视频电话系统的设计与软件开发工作, 包括底层网络传输的设计与实现、中间s i p 协议栈的设计与实现、上层s i p u a 的设计与实现,同时研究了音视频数据采集、压缩解压缩的实现以及媒 体流实时传输的实现;论文的最后,指出了该系统的一些不足之处,对该系 统的进一步完善提出了自己的设想,并论述了s i p 技术发展的前景。 关键词s i p ;音视频;软电话 哈尔滨理t 大学工学硕士学位论文 t h ed e s i g na n dd e v e l o p m e n to fs i pp r o t o c o ls o f t t e r m i n a l 。f o ra u d i oa n dv i d e o a bs t r a c t i n19 9 5t h ef i r s ti p ( i n t e r n e tp r o t o c 0 1 ) p h o n ec a m eo u t u n t i lt o d a y , i pp h o n e h a sb e e na p p l i e di nt e l e c o m m u n i c a t i o nl e v e ls y s t e ma n dm o r ea n dm o r eb ea p a r t o fp e o p l e su s u a ll i f e a si n t e r n e t sr a p i dd e v e l o p m e n t ,ag r e a td e a lo fc o m m u n i c a t i o ng oa l o n g w i t hi t s oi tb e c o m ean e wp r o b l e mt h a th o wt oa m a l g a m a t ev a r i o u ss e r v i c e s i n t ot r a d i t i o n a lt e l e c o m m u n i c a t i o nn e t w o r ka n di pp h o n ei st h ea n s w e r s i pi sa na p p l i c a t i o n l a y e rc o n t r o lp r o t o c o lf o rc r e a t i n g ,m o d i l y i n g ,a n d t e r m i n a t i n gs e s s i o n sw i t ho n eo rm o r ep a r t i c i p a n t s i tc a l la m a l g a m a t et r a d i t i o n a l t e l e c o m m u n i c a t i o nn e t w o r ka p p l i c a t i o ni n t oi n t e r n e ta p p l i c a t i o na n db r e a kt h e t r a d i t i o n a lt e l e c o m m u n i c a t i o ns e r v i c em o d e l ,i tp r o v i d e sm u t i m e d i as e r v i c e b a s e do fi pw i t hi n t e r n e tr u l e s ,s oi pp h o n ew h i c hu s es i pa ss i g n a l i n gp r o t o c o l b e c o m eac h o i c eb ym o r ea n dm o r ed e v e l o p e r s t h i st h e s i sd i s c u s s e st h ei p p h o n et e r m i n a ls o f t w a r eb a s eo ns i pp r o t o c o lo v e ri n t e m e t ( s i pp h o n e ) t h et h e s i ss t u d i e st h em e t h o do fs o f t w a r ed e v e l o p m e n to fi ps o f tt e r m i n a l b a s e do ns i p , d o e st o t a ld e s i g na n di n t e g r a n td e s i g n ,r e s o l v e ss o m ea c t u a l d e v e l o p m e n tp r o b l e m s t h et h e s i sr e s e r c h e st h es i pc a l l i n gp r o c e s s ,r t pa n do t h e ri n t e r r e l a t e d p r o t o c o l s a c c o m p l i s ht h ed e s i g na n ds o f t w a r ed e v e l o p m e n to fp h o n es y s t e mf o r a u d i oa n dv i d e oi nd e t a i l ,i n c l u d i n gt h ed e s i g na n dr e a l i z a t i o no fn e t w o r k i n t e r f a c e ,t h ed e s i g na n dr e a l i z a t i o no fs i ps t a c ka n dt h ed e s i g na n dr e a l i z a t i o no f si pu a ,a n dr e s e r c ht h ec o l l e c t i o no fa v ( a u d i oa n dv i d e o ) d a t a ,t h er e a l i z a t i o no f c o m p r e s s d e c o m p r e s sa n dt h er e a l i z a t i o no ft h em u t i lm e d i ar e a l t i m et r a n s p o r t v i ar tp a tl a s t ,w eg i v et h ed i s a d v a n t a g e so ft h ev o l ps y s t e m ,a n dp r e s e n ts o m e i d e a st oi m p r o v ei ta n dm a k ei tp r e f e r k e y w o r d ss i p , m u t i m e d i a ,s o f t p h o n e i i 哈尔滨理工大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文( s i p 协议的音视频软终端开发 与研究,是本人在导师指导下,在哈尔滨理工大学攻读硕士学位期间独立进行 研究工作所取得的成果。据本人所知,论文中除已注明部分外不包含他人已发表 或撰写过的研究成果。对本文研究工作做出贡献的个人和集体,均已在文中以明 确方式注明。本声明的法律结果将完全由本人承担。 作者签名:焉帚年 日期:眦年王月石日 l 哈尔滨理工大学硕士学位论文使用授权书 s i p 协议的音视频软终端开发与研究系本人在哈尔滨理工大学攻读硕士 学位期间在导师指导下完成的硕士学位论文。本论文的研究成果归哈尔滨理工大 学所有,本论文的研究内容不得以其它单位的名义发表。本人完全了解哈尔滨理 工大学关于保存、使用学位论文的规定,同意学校保留并向有关部门提交论文和 电子版本,允许论文被查阅和借阅。本人授权哈尔滨理工大学可以采用影印、缩 印或其他复制手段保存论文,可以公布论文的全部或部分内容。 本学位论文属于 保密口,在年解密后适用授权书。 不保密凼 ( 请在以上相应方框内打) 作者签名:,高币f 日期功。s 年;月“日 新虢磷吁 隰加铲弓月伯 盼尔滨理工大学工学硕士学位论文 1 1 课题背景 第1 章绪论 在电信界以外毫无所知的情况下,一场静悄悄的革命发生了。这个革命 的目标是推翻已有数十年之久、青春不在却仍然是今天的有线和无线电信网 络基础的技术。这项革命能将人们从许多电信服务的高投入低增值中解放出 来,并把他们带入低投入高增值的服务中去这是i n t e m e t 的准则。这场 革命不用刀剑或者枪炮进行战斗,而是用技术i n t e m e t 技术用它来 重新定义电信网络的体系结构。领导这场静悄悄革命的是会话初始协议 ( s e s s i o n i n i t i a t i o n p r o t o c o l ,s i p ) ,它是i n t e m e t 工程任务组( i n t e r a c t e n g i n e e r i n gt a s kf o r c e ,i e t f ) 开发的一个i n t e m e t 标准【1 1 。 1 1 1 多媒体通信的发展 多媒体终端是一个新生事务,它最早出现在1 9 6 4 年,由美国的b e l l 实 验室研制成功。该实验室在当年的纽约国际博览会上展示了名为p i c t u r e p h o n em o d i 的可视电话系统,它的频带只有3 0 0 到3 4 0 0 h z ,只能传送黑 白静止硬拷贝图像。其后,美国b t 公司研制出1 m h z 带宽的黑白会议电视 系统,名为p i c t u r ep h o n em o d i i ,它可以提供活动图像的可视业务。该系 统曾于7 0 年代初在美国投入商业服务。由于以上两个系统采用的是模拟技 术,并且当时缺乏先进的音视频压缩技术,因此这些系统占用带宽较大,成 本高昂,并未得到商家的支持。 到了7 0 年代,模拟技术向数字技术转移,多媒体终端也获得了新发 展。在这个阶段,美国、日本、加拿大、西欧等都推出了可视电话系统。但 是,由于当时并没有统一的技术标准和成熟的音视频压缩技术,多媒体终端 业没有取得很大的发展。 1 9 8 8 年,原c c i r 和c c i t t 共同展开了图像压缩标准化的工作,并于 当年提出了用于会议电视、电视电话的h 2 6 1 图像编解码建议。随着该建议 于1 9 9 0 年l o 月通过以及其它一些相关建议的通过,多媒体终端业作为一种 产业开始了迅速发展。 国内的情况大致同国际的情况差不多,也是从黑白模拟会议电视开始, 哈尔滨理工大学t 学硕士学位论文 到1 9 7 8 年北邮和南邮开发出了这种制式的会议电视。随后,也向数字化方 向发展,多家单位研制出了可视电话系统【2 1 。 1 1 2 多媒体通信的市场概况 多媒体终端曾经由于价格、性能等因素的影响,并不被用户青睐,但近 年来随着各种条件的完善,多媒体终端产品,尤其是基于i p 的多媒体终 端,以其优良的影音品质和强大的功能,吸引了广大的消费者,备受人们关 注。 随着网络时代的到来,整个通信环境得到了大幅改良,由于传输技术的 提高和宽带网络的普及,新一代的多媒体终端的影音品质得到了全面的提 升,因此,对多媒体终端需求性与依赖性迅速增加。 在美国,自2 0 0 1 年秋天以来,多媒体终端的销量激增,总销量达到 2 0 0 0 年同期的2 3 倍,购买者大多为专业用户与个人家庭用户。由于多媒 体终端目前的价位比较合理,实用性也高,将极有可能取代传统电话的地 位。 目前,美国许多医疗部门也开始采用多媒体终端进行医疗观察与联系, 尤其是对于居家护理的长期慢性病人,医疗单位可随时通过多媒体终端追踪 观察病人每日动态,既能减少往来路途奔波的时间,又能更有效的为病人提 供咨询并开出处方。 在中国,2 0 0 1 年中共中央、国务院办公厅数次发出关于进一步精简会 议和文件的意见,要求各地区、各部门进一步精简会议和文件,强调尽 可能利用现代通信和技术手段召开电视、电话会议,为中国视讯市场的持续 增长提供了政策推动力。同时电子政务在2 0 0 2 启动,这又为中国视讯市场 的持续增长注入了新的活力。而且,对于一般中小型企业而言,多媒体终端 可以提供价廉物美的视频会议功能,节省差旅支出,提高工作效率。 多媒体终端根据功能的不同。价格相差很大。可以预见,随着使用的普 及及供应商的增加,新的音视频压缩技术的出现,多媒体终端的价格将大幅 下降,促进了供应商的积极性。形成良性循环。因此多媒体终端是一个很有 前途的产品,其市场前景看好1 3 , 4 1 。 1 2 技术可行性分析 多媒体终端虽然吸引人,但是其难度也不小。但是随着科学技术的发 哈尔滨理工大学丁学硕上学位论文 展,多媒体终端的各项关键技术均取得了突破性的发展,这给多媒体终端的 发展铺平了道路。下面就从技术的角度阐述研发多媒体终端的可行性。 多媒体终端的难点主要体现在以下几个方面: 1 要有足够好的多媒体编解码算法; 2 要有处理能力足够强的芯片或处理器,以便实现这些算法; 3 要有通信传输必须的传输网络: 4 对于产业化而言,要有一个大家公认的标准,以便实现不同公司产 品之间的互联互通; 5 价格不能太高。 以上的条件缺一不可1 4 , 5 。 众所周知,微电子业和p c 在上一个世纪里,特别是下半世纪,取得了 突飞猛进的发展。现在各个公司提供的高性能处理器芯片和个人电脑,基本 上都能胜任可视电话处理器的重任。在上世纪8 0 年代以来,陆续出现了许 多先进的编解码算法。其中音频方面比较有代表性的有:g 7 1 1 ,g 7 2 3 1 , g 7 2 9 等,视频方面有h 2 6 1 ,h 2 6 3 等,音视频交织的有m p e g 1 ,m p e g 一 2 ,m p e g 3 等。这些算法的共同特点就是在相对比较低的码率下也能得到 较好质量的音视频效果。至于传输网络,有带宽比较低但普及率很高的公众 电话网( p s t n ) ,也有带宽比较高但普及率相对比较低的i s d n ,也有普及率 较高带宽也较宽的i p 网等,并且,这些网络目前正在普及( 尤其是i p 网) 。 在技术标准方面,i t u 先后推出了h 3 2 3 ( 基于i p ) ,h 3 2 0 ( 基于i s d n ) , h 3 2 4 ( 基于p s t n ) 等协议,形成了比较完善的协议体系;i e t f 也推出了 s i p ( 基于i p ) 协议。目前市场上也有很多基于这些协议的产品,并且市场上 的可视电话产品基本上都符合上面协议中的一种或多种。 综上所述,阻碍开发多媒体终端的技术障碍目前己经消失,我们开发多 媒体终端的技术是完全可行的。 1 3 基于i p 的多媒体终端 多媒体终端根据其通讯媒体的不同,有好几种类型。普通的有基于 p s t n 的,由于p s t n 网络的高普及率,故基于p s t n 的可视电话是较早实 用化的多媒体终端产品。i t u 有相应的协议:h 3 2 4 。但是,由于p s t n 网 的带宽低于6 4 k b i t s s ,故基于p s t n 网的可视电话效果并不好。基于i s d n 的多媒体终端,其标准位h 3 2 0 ,基于i s d n 的多媒体终端是基于电路交换 哈尔滨理工大学t 学硕士学位论文 的,是有q o s 保证的,可靠性较高,目前己经有较多的用户。但是虽然其 带宽比p s t n 高一倍以上,音视频质量有较大的改善,但是其普及率不高。 而i p 网的带宽比前两者高很多,一般都是1 0 m 以上的,且普及率也较高, 仅次于p s t n 网。从它的发展趋势看,i p 网有可能在将来统一各种网络, 成为第一大网、发展前景看好。目前,一般企事业单位都有内部局域网( 一 般是以太网) ,而且城域网也在快速发展。因此,我们的多媒体终端是基于 i p 网的。基于i p 还可以带来另外的好处,即一般情况下可获得令人满意的 音视频质量【6 】。 目前,构建i p 语音电话系统的标准主要有2 种:即h 3 2 3 协议和s i p 协议。s i p 协议以其自身具备的诸多优点成为终端i p 信令控制协议中的首 选。 1 s i p 协议与现有的i n t e m e t 应用紧密结合s i p 标准与w w w 相似, 利用i n t e r n e t 结构,通过智能s i p 终端提供业务,包括w e b 以及e m a i l 业 务,而点击拨号( c l i c k t o d i a l ) 和点击传真( c l i c kt of a x ) 等协议都是基于s i p 的,s i p 可利用u r i 来动态组网。 2 s i p 协议具有良好的可扩展性s i p 采用和h t t p 相类似的方法和头 域组成s i p 消息,s i p 消息采用u t f 8 消息集合进行明文编码;对头域的结 构没有限制;对头域出现在消息中的顺序没有限制;s i p 本身不提供业务, 而是提供使用s i p 消息提供会话建立的机制;s i p 消息可以携带任何格式的 消息体。这些s i p 特性使s i p 具有非常良好的扩展性,可以通过定义新的方 法和消息头域丰富s i p 自身的呼叫控制,可以通过携带不同的消息体完成不 同的数据业务。 3 s i p 协议实现端到端的通信s i p 是实现端到端业务的协议,主要的 业务实现是在用户代理实体中。s i p 的p r o x y 等服务器完成消息的转发,消 息的路由功能,并不对业务进行处理,这样可以大大降低了对核心网络服务 器的压力,在同样情况下,可大幅提高系统对呼叫的处理能力。在s i p 系统 中增加业务,只需要终端增加业务处理,不需要在p r o x y 上实现,促进了智 能终端的发展,同时降低了网络更新频率,符合i n t e m e t 的发展趋势。 4 s i p 实现容易s i p 信息是基于文本的,u t f 8 消息集合进行明文编 码,实现起来简单,开发容易1 7 j j 。 哈尔滨理t 大学工学硕上学位论文 1 4 软终端系统及论文的工作 我们精心设计了基于s i p 协议的音视频软终端,它是独立的、基于i p 的多媒体终端。由于p c 机的处理功能比一般芯片强大,且普及率较高,不 用配置额外的硬件设备,基于p c 的多媒体软终端以其功能强大、实现简 单、价格便宜而成为目前支持宽带流媒体业务的主要终端设备。因此,我们 采用软件的方式在p c 机上实现这个多媒体软终端。 要实现一个多媒体终端,必须实现控制信令的协议栈、音视频编解码、 媒体数据的采集、传输、播放等功能。我们要选择一种更加快速和富有成效 的办法。因此,我们采用m i r c o s o f t 提供的d i r e c t s h o w 来实现这个s i p 多媒 体软终端。 基于以上的对我们设计的s i p 音视频软终端系统的描述,各个部分都要 编程用代码实现,论文主要有以下工作: 1 深入理解s i p 协议、s d p 协议、r t p 协议,阐述基于上述协议的软 件实现与开发; 2 阐述基于d i r e c t s h o w 技术的c o m 组件开发,为软终端开发音视频 编解码的f i l t e r 和r t pf i l t e r ; 3 编程实现对s i p 协议、s d p 协议底层方法的封装; 4 基于m f c 的程序设计,组合控制信令协议栈、音视频编解码、媒 体数据采集、传输、播放等功能,并为软终端设计简单的人机界面 和视频窗口: 5 对该软终端产品进行单元测试和功能测试,修改产品b u g 。 哈尔滨理丁大学t 学硕上学位论文 第2 章s i p 协议简介 2 1 会话初始协议( s i p ) 2 1 1s i p 协议概述 i n t e r n e t 的许多应用都需要建立和管理一个会话,会话在这里的含义是 在参与者之间的数据的交换。由于考虑到参与者的实际情况,这些应用的实 现往往是很复杂的:参与者可能是在代理间移动,他们可能可以有多个名 字,他们中间的通讯可能是基于不同的媒介( 比如文本,多媒体,视频,音 频等) ,有时候是多种媒介一起交互。人们创造了无数种通讯协议应用于实 时的多媒体会话数据比如声音,影像,或者文本。s i p ( 会话初始协议) 允许 使用i n t e m e t 端点( 用户代理) 来寻找参与者并且允许建立一个可共享的会话 描述。为了能够定位精确的会话参与者,并且也为了其他的目的,s i p 允许 创建基础的n e t w o r kh o s t s ( 【l q 做代理服务器) ,并且允许终端用户注册上去, 发出会话邀请,或者发出其他请求。s i p 是一个轻型的,多用途的工具,可 以用来创建,修改和终止会话,它独立运作于通讯协议之下,并且不依赖建 立的会话类型。 2 1 2s i p 协议功能与消息格式 s i p 是一个应用层的控制协议,可以用来建立、修改、和终止多媒体会 话( 或者会议) 例如i n t e m e t 电话。s i p 也可以邀请参与者参加已经存在的会 话,比如多方会议。媒体可以在一个已经存在的会话中方便的增a n ( 或者删 除) 。s i p 显示的支持名字映射和重定向服务,这个用于支持个人移动业务 一用户可以使用一个唯一的外部标志而不用关系他们的实际网络地点。s i p 在建立和维持终止多媒体会话协议上,支持5 个方面: 1 用户定位:检查终端用户的位置,用于通讯; 2 用户有效性:检查用户参与会话的意愿程度; 3 用户能力:检查媒体和媒体的参数; 4 建立会话:在呼叫方和被叫方建立会话参数; 哈尔滨理工人学工学硕士学位论文 5 会话管理:包括发送和终止会话,修改会话参数,激活服务掣5 1 。 s i p 不是一个垂直集成的通讯系统。s i p 可能叫做是一个部件更合适, 它可以用作其他i e t f 协议的一个部分,用来构造完整的多媒体架构。比 如,这些架构将会包含实时数据传输协议( r t p ) 用来传输实时的数据并且提 供q o s 反馈,实时流协议( r s t p ) 用于控制流媒体的的传输,媒体网关控制 协议( r f c 3 0 1 5 ) 用来控制到公共电话交换网( p s t n ) 的网关,还有会话描述协 议( s d p ) ( r f c 2 3 2 7 ) 用于描述多媒体会话。因此,s i p 应该和其他的协议一起 工作,才能提供完整的对终端用户的服务。虽然基本的s i p 协议的功能组件 并不依赖于这些协议1 9 l 【1 0 i 。 s i p 本身并不提供服务。但是,s i p 提供了一个基础,可以用来实现不 同的服务。比如,s i p 可以定位用户和传输一个封装好的对象到对方的当前 位置。并且如果我们利用这点来通过s d p 传输会话的描述,立刻,对方的 用户代理可以得到这个会话的参数。如果我们用这个像传输会话描述一样呼 叫方的照片,一个“呼叫i d 服务很容易就建立了。这个简单的例子说明 了,s i p 作为一个基础,可以在其上提供很多不同的服务儿1 2 1 。 s i p 并不提供会议控制服务( 比如议席控制或者投票系统) ,并且并没 有建议会议应该那样管理。可以通过在s i p 上建立其他的会议控制协议来发 起一个会议。由于s i p 可以管理参与会议的各方的会话,所以会议可以跨异 构的网络,s i p 并不能、也不打算提供任何形式的网络资源预留管理【1 3 儿1 4 i 。 安全对于提供的服务来说特别重要。要达到理想的安全程度,s i p 提供 了一套安全服务,包括防止拒绝服务,认证服务( 用户到用户,代理到用 户) ,完整性保证,加密和隐私服判1 5 】【1 6 l 。 s i p 消息采用文本方式编码,消息分为两类:请求消息和响应消息。请 求消息是客户端为了激活按特定操作而发给服务器的s i p 消息。响应消息是 用于对请求消息进行响应,指示呼叫的成功或失败状态。请求消息和响应消 息都包括s i p 头字段和s i p 消息字段。 s i p 协议中的请求消息提供了六种方法,如表2 1 所示。响应消息中的 相关应答码及其含义如表2 2 所示。 2 1 3s i p 协议的结构 如图2 1 所示s i p 是一个分层的协议,意思是说s i p 协议由一组相当无 关的处理层次组成,这些层次之间只有松散的关系。协议分成不同层次来描 哈尔滨理工人学工学硕士学位论文 述是为了能够更清晰的表达,在同一个小节里有功能的公共要素的交叉描 述。本协议并没有规定一个具体的实现。当我们说一个要素“包含 某一个 层,我们的意思是这个要素符合这个层定义的规则。 表2 - 1s i p 请求消息 t a b l e2 - 1t h er e q u e s tm e s s a g eo fs i p 请求消息消息含义 i n v i t e 发起会话请求,邀请用户加入一个会话,会话描述含于消息体 中。对于两方呼叫来说,主叫方在会话描述中指示其能够接受的媒 体类型及其参数。被叫方必需在成功响应消息的消息体中指明其希 望接受哪些媒体,还可以指示其行将发送的媒体。 如果收到的是关于参加会议的邀请,被叫方可以根据c a l l i d 或者会话描述中的标识确定用户已经加入该会议,并返回成功响应 消息。 a c k 证实已收到对于i n v i t e 请求的最终响应。该消息仅和 i n v i t e 消息配套使用。 b y e 结束会话 c a n c e l 取消尚未完成的请求,对于已完成的请求( 即已收到最终响应 的请求) 则没有影响 r e g i s t e r 注册 o p t i o n s 查询服务器的能力 表2 - 2s i p 响应消息 t a b l e2 - 2t h ea n s w e rm e s s a g eo fs i p 序号状态码消息功能 1 x x 信息响应( 呼叫进展响应)表示已经接收到请求消息,正在 对其进行处理 2 x x 成功响应表示请求已经被成功接受、处理 3 x x 重定向响应表示需要采取进一步动作,以完 成该请求 4 x x 客户出错表示请求消息中包含语法错误或 者s i p 服务器不能完成对该请求消息 的处理 5 x x 服务器出错 表示s i p 服务器故障不能完成对 正确消息的处理 6 x x 全局故障表示请求不能在任何s i p 服务器 上实现 不是s i p 每一个要素都一定包含每一个层。此外,s i p 定义的要素是逻 辑上的要素,不是物理要素。一个物理的实现可以实现不同的逻辑要素,或 哈尔滨理工大学工学硕十学位论文 许甚至是基于串行事务处理原理。 s i p 最底层的是它的语法和编码层。编码方式是采用扩展的b a c k u s n a u rf o r mg r a m m a r ( b n f 范式) 。 第二层是传输层。它定义了一个客户端如何发送请求和接收应答,以及 一个服务器如何接收请求和发送应答。所有的s i p 要素都包含一个通讯层。 第三层是事务层。事务是s i p 的基本组成部分。一个事务是客户发送的 一个请求事务( 通过通讯层) 发送到一个服务器事务,连同服务器事务的所有 的该请求的应答发送回客户端事务。事务层处理应用服务层的重发,匹配请 求的应答,以及应用服务层的超时。任何一个用户代理客户端( u s e ra g e n t c l i e n tu a c ) 完成的事情都是由一组事务构成的。用户代理包含一个事务层, 来实现有状态的代理服务器。无状态的代理服务器并不包含事务层。事务层 包含一个客户元素( 可以认为是一个客户事务) 和一个服务器元素( 可以认为 是一个服务器事务) ,他们都可以用一个有限状态机来处理特定的请求。 图2 1 s i p 分层结构 f i g 2 - 1l a y e r e ds t r u c t u r eo fs i p 在事务层之上是事务用户( t u ) 。每一个s i p 实体,除了无状态代理,都 是一个事务用户。当一个t u 发出一个请求,它首先创建一个客户事务实例 ( c l i e n tt r a n s a c t i o ni n s t a n c e ) 并且和请求一起发送,这包括了目标i p 地址、端 口号、以及发送请求的设备。t u 可以创建客户事务,也可以取消客户事 务。当客户取消一个事务,它请求服务器终止正在处理的事务,并且回滚状 态到该事务开始前的状态,并且产生指定的该事务的错误报告。这是由 c a n c e l 请求完成的,这个请求有自己的事务,并且包含一个被取消的事 哈尔滨理工大学t 学硕士学位论文 2 1 4s i p 的传输机制 1 u d p 与t c p 传输s i p 是一个应用层控制协议,既可以使用t c p ,又 可使用u d p 来传输。采用u d p 传输s i p 消息时,s i p 提供了内在的可靠机制, 不需要在网络的中间节点上保持状态,所以对消息的操作速度比较快。同 时,采用u d p 还可以实现s i p 消息的多播,这可以实现对群组呼叫的控制, 例如,在多播通道上的一群参与者之间的多媒体会话。采用t c p 传输时,同 一事物的请求和响应需在同一t c p 连接上传送。同一客户向同一服务器的若 干事务请求可用同m t c p 连接,也可用不同的t c p 连接。使用同- - t c p 连接 可以减少连接建立的负担,减轻高通信量结点的传输处理负担。而且,通过 持续t c p 连接传输的s i p 消息可以有效的穿过防火墙、网络地址翻译n a t 和 应用级网关( a l g ) 。 2 s c t p 传输目前i p 网中的信令消息交换通常是使用u d p 或t c p 来完 成,但这两者都不能完全满足电信网中信令承载的要求。u d p 本身仅提供不 可靠的数据包业务,不能满足可靠性的要求。t c p 虽然提供了差错和流量控 制,但对于传输信令消息来说,却存在着诸多缺陷。s c t p 发展了u d p 和 t c p 两种协议的长处。与u d p 相比,它具有快速转发( 对于s i p 来说,这可能 是最有意义的优点) 、拥塞控制、传输层分片等优点;与t c p 相比,它具有 避免h e a d o f - l i n e 阻塞、消息的分析更加容易、多宿主( m u l t i h o m i n g ) 等优 点。而且在s i p 中使用s c t p 并不需要改变s i p 头或它的语法规则【9 】。 2 2 会话描述协议( s d p ) s i p 消息体中传送的最重要的信息就是由s d p 协议描述的媒体控制信 息,供终端协商并建立媒体信道。因此,一般常记会话控制协议为 s i p s d p ,通过这两个协议的绑定使用,通常只需要往返三个消息就能完成 呼叫和媒体控制信令过程。 2 2 1s d p 协议功能概述 所谓多媒体会话就是泛指一组多媒体发送方和接收方以及从发送方至接 收方的数据流,多媒体会议就是多媒体会话的一个实例。i n t e m e t 一般采用 哈尔滨理工大学工学硕士学位论文 松耦合方式实现多媒体会议,其主要机制就是通过会话公告( s e s s i o n a n n o u n c e m e n t ) 将会议的地址、时间、媒体和建立等信息告知每一个可能的 参与者。用户收到此公告,获知会议的多播组地址和数据流的u d p 端口号 后,就可自由加入此会议。s d p 就是传送这类会话信息的协议。s d p 定义 了会话描述的统一格式,但是并不定义多播地址的分配和s d p 消息的传 送,也不支持媒体编码方案的协商,这些功能均由下层传送协议完成。 一般说来,s d p 传递的是多媒体会话的媒体流信息,这些媒体流是多 点到多点媒体流,且只在规定的时间区段内存在,这些时间区段可能是不连 续的,但可以重复发生。s d p 描述有两个目的:一是告知某会话的存在; 二是给出参与该会话所必需的信息。 除此之外,s d p 还可创建专用会话,即该会话描述需做加密处理。此 时,会话传送协议必须能传送解密密钥及加密方法等信息1 1 7 1 。 2 2 2s d p 协议的一般格式 s d p 会话描述完全是文本形式,采用u t f 8 编码的i s 0 1 0 6 4 6 字符集。之 所以采用文本形式而不采用诸如a s n 1 的二进制编码方式,是为了提高描述 的可携带性,使其可以用各种传送协议传递,并可用各种文本工具软件生成 和处理会话描述。为了减少描述所用的开销,便于差错检测,s d p 采用了紧 凑型编码,并且严格规定了各字段的顺序和格式。s d p 会话描述由许多文本 行组成,每个文本行的格式均为: = ,其中, 恒为单个 字符,需区分大小写, 为结构化文本串,其格式取决于 ,也 需区分大小写。一般由多个字符组成,各字段由一个空格符分隔,也可以是 一个自由格式的文本串。“= 符号两侧不允许有空格。会话描述包括两个 部分: 1 会话级描述部分给出适用于整个会话和所有媒体流的描述信息,它 以“v = 文本行开始; 2 媒体级描述部分给出只适用于该媒体流的信息,它以“m = 文本行 开始。一个会话描述可包含零个或多个媒体级描述。 如果在媒体级描述中没有重新定义,会话级描述给定的值就是所有媒体 的缺省值。s d p 定义的类型( t y p e ) 字母很少,如果s d p 语法分析器不能识别 描述符中的某一类型字母,则应将整个描述丢弃。属性机制( “a = ”行) 供 s d p 扩展其应用或媒体范围,可根据应用,媒体或会话的需要增加属性值。 哈尔滨理工大学工学硕士学位论文 如果接收方不理解某属性值,则予以丢弃【1 8 】。 2 2 3s d p 会话级描述格式 下面依次说明s d p 会话级描述中几个重要的文本行的格式和意义: 1 协议版本格式:v = 0 ;意义:给出s d p 的版本号,目前为0 版本, 无子版本号。 2 会话源格式:o = ;意义:给出会话的发起者( 其用户名和用户主机地址) 以及会 话标识和会话版本号。其中,用户名是用户在发起主机上的登录名,如果主 机不支持用户标识的概念,则该字段标记“ 。会话标识为一数字串,使得 多元组( 用户名、会话标识、网络类型、地址类型、地址) 构成会话的全球唯 一的标识符。会话标识的分配由创建工具决定,建议采用网络时间协议 ( n t p ) 时戳,以确保唯一性。版本号指的是该会话公告的版本。网络类型为 文本串,目前规定“i n 表示i n t e r a c t 。地址类型也是文本串,目前己定义 的有“i p 4 ”和“i p 6 两种。地址为创建会话的主机的全球唯一地址。 3 连接数据格式:c = ;意义: 给出连接数据。每个媒体描述必须包含一个“c = ”字段,或者在会话级描述中 包含一个公共的“c = ”字段。网络类型和地址类型目前的定义值仅限于 i p v 4 。连接地址可为多播组地址或单播地址。 4 属性格式:a - 或a _ : :意义:属性是s d p 扩展的 基本手段。可以定义为会话级属性或媒体级属性。 有两种形式的属性: a = ,为特性属性。它们为二进制属性,表示会话具有该性质。 如:a = r e c v o n l y 表示是“只收”特性。a - : ,为数值属性【1 9 l 。 2 2 4s d p 媒体级描述格式 媒体级描述需要说明的主要是“m = ”描述行,其格式为: m = 各子字段的格式和含义如下: 1 媒体类型:目前定义了5 种媒体类型,包括音频、视频、应用、数据 和控制。 2 端口:指明媒体流发往的传送层端口,其含义取决于“c = 行规定 哈尔滨理工大学工学硕士学位论文 的网络类型和“m = 行第3 子字段定义的传送层协议。 3 传送层协议:其值和“c = ”行中的地址类型有关。对于i p 4 来说,大 多数媒体业务流都在i 盯p u d p 上传送。 4 媒体格式:对于音频和视频来说,就是r t p 音频视频应用文档中定 义的媒体净荷类型。例如,对于a 律p c m 编码单信道音频信号,其 在r t p 音频视频应用文档中的静态净荷类型号为8 ,该信号发往 u d p 端口4 9 2 3 2 的描述格式为:m - - a u d i o4 9 2 3 2r t p a v p 8 ,一般来 说,一个会话描述可包含多个媒体描述,每个媒体描述均以“m = 描述行开始【2 0 1 。 s d p 用于构成请求消息和2 x x 响应消息的消息体,供主被叫用户交换关 于呼叫媒体的信息。通过对s d p 会话描述中媒体行和属性行的配置,可以实 现媒体流单播、多播等操作。在某些情况下,例如主叫实际上是一个和其他 协议互通的网关,该协议要求在呼叫建立之后进行媒体格式协商。这样,主 叫在发送i n v i t e 时还不知道它能支持哪些媒体格式。此时,主叫发出的 i n v i t e 请求中的会话描述可以不含媒体描述行。被叫应解释为:主叫想参 加会话描述说明的多媒体会话,但是媒体流还未知,被叫应回送会话描述, 指明它愿意支持的媒体流和格式。一旦网关协商完成后,主叫可通过a c k 请求或重新发送一个i n v i t e 请求修改被叫的会话描述。 2 3 实时传输协议( r t p ) 实时传输协议( r t p ) 是最典型、最广泛的服务于流媒体的传输层协议, v o i p 系统普遍采用r t p 协议。 r t p 是用于i n t e m e t 上针对多媒体数据流的一种传输协议。一对一或一对 多的传输情况下工作,其目的是提供时间信息和实现流同步。r t p 通常使用 u d p 来传送数据,但r t p 也可以在t c p 或a t m ( a s y n c h r o n o u st r a n s f e rm o d e ) 等其他协议之上工作。当r t p - v 作于一对多的传输情况下时,依靠底层网络 实现组播,利用r t po v e ru d p 模式实现组播的传输就是其典型应用。r t p 协 议有以下特点: 1 协议灵活性r t p 协议不具备传输层协议的完整功能,其本身也不 提供任何机制来保证实时地传输数据,不支持资源预留,也不保证服务质 量。r t p 报文甚至不包括长度和报文边界的描述,而是依靠下层协议提供长 度标识和长度限制。另外,r t p 协议将部分传输层协议功能( 比如流量控制) 哈尔滨理工大学工学硕士学位论文 上移到应用层完成,简化了传输层处理,提高了该层效率。 2 数据流和控制流分离r t p 协议的数据报文和控制报文使用相邻的 不同端口,这样大大提高了协议的灵活性和处理的简单性。 3 协议的可扩展性和适用性r t p 协议通常为一个具体的应用来提供 服务,通过一个具体的应用进程实现,而不作为o s i ( o p e ns y s t e m i n t e r c o n n e c t i o n ) 体系结构中单独的一层来实现,r t p 只提供协议框架,开发 者可以根据应用的具体要求对协议进行充分的扩展。 虽然r t p 协议是为多媒体数据流传输而设计的,但是其用途不仅限于 此,r t p 协议还可以用于连续数据的存储,交互式分布仿真和一些控制、测 量的应用中。 r t p 实时传输协议主要用于负载多媒体数据,并通过包头时间参数的配 置使其具有实时的特征r t c p 传输控制协议主要用于周期的传送r t c p 包,监 视r t p 传输的服务质量。在r t c p 包中,含有已发送的数据包的数量、丢失 的数据包的数量等统计资料。因此,服务器可以利用这些信息动态地改变传 输速率,甚至改变有效载荷类型,实现流量控制和拥塞控制服务。下文将对 r t p 传输协议和r t c p 传输控制协议分别进行描述。 r t p 提供端对端网络传输功能,适合通过组播和点播传送实时数据,如 视频、音频和仿真数据。r t p 没有涉及资源预订和质量保证等实时服务。 i 盯p 报文格式中包括固定的i 盯p 报文头,可选用的作用标识( c s r c ) 和负载数 据。如果r t p 所依赖的底层协议对r t p 报文的格式有所要求,r t p 报文的格 式必须进行修改或重新定义。通常,单一的底层数据报
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 在2025年示范区住房和城乡建设局以案促改警示教育大会上的讲话
- 2025年下半年商务部国际贸易经济合作研究院招聘工作人员15人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年哈尔滨市松北区招考中小学教师易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林省长春市市直事业单位招聘笔试易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林直事业单位招考拟聘用人员(第三十八批)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林四平市基层治理专干招聘380人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉安安福县招考事业单位工作人员(71名)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年台州市属事业单位招考考试(179名)易考易错模拟试题(共500题)试卷后附参考答案
- 2025精简版员工续签劳动合同
- 2025年下半年内蒙古鄂尔多斯市鄂托克前旗招聘乌兰牧骑演职人员19人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年汽车驾照考试科目一题库及答案(包过版)
- 供水管道工岗位职业健康及安全技术规程
- 自动化生产线运行维护方案及记录表
- 高三试卷:辽宁省沈阳市郊联体2024-2025学年高三上学期11月期中化学+答案
- 2025年中国聚氨酯分散体行业市场分析及投资价值评估前景预测报告
- 2025年等保测评初级测评师考试题库及答案
- 电焊烟尘安全培训课件
- 乌鲁木齐冬季施工方案
- 消防工程消防水灭火系统施工方案
- 2025湖南张家界桑植县交通旅游建设投资集团有限公司招聘考试参考题库及答案解析
- 2025-2026学年人教版(2024)七年级地理第一学期第一章 地球 单元测试(含答案)
评论
0/150
提交评论