(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf_第1页
(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf_第2页
(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf_第3页
(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf_第4页
(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机应用技术专业论文)p2p流媒体系统的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

i b 立交道太堂殛堂焦j 坌塞 揸垩 摘要 流媒体简单地说,就是一边下载一边播放的视频、音频媒体信息。流媒体技术 包括适应网络传输的编码格式,q o s 控制机制和控制协议。目前的流媒体软件大 多是基于客户端服务器模式的,其服务器端瓶颈极大地限制了系统的可扩展性, 不能适应大规模视频播放的要求。些技术如i p 组播,c d n 等试图解决这一问题, 但都有其自身的缺点。今年来新兴的p 2 p 网络为解决这一问题,提出了新的思路。 p 2 p ,即端对端网络,又称为对等计算,就是通信的主机互相互为服务器,每 台t 机都享受其他机器提供的服务,也为别的机器提供服务。这一模式将服务 由中心推向了边缘,充分利用了网络边缘的主机的资源。p 2 p 网络的应用很广泛, 模型也很多,有各自的优缺点。 本文介绍了一个p 2 p 流媒体系统p p v i d e o ,实现了用p 2 p 网络进行大规模流媒 体亢播本文针对p 2 p 流媒体系统需要解决的一些关键问题:单源传输与多源传 输、媒体源定位机制、源节点选择机制、数据传送调度机制、激励机制、数字媒 体版权保护这几个方面进行了讨论,介绍了p p v i d e o 的解决方法。p p v i d e o 采用有 一个中心目录服务器的结构,数据传输通过p 2 p 的方式进行。p p v i d e o 采用了多源 传输的模式,基于a s 值的源节点选择机制,播放顺序优先的数据调度的机制,基 r “报答”的激励机制,保证了流媒体数据的传输和播放质量。最后本文介绍了 p p v i d e o 系统的模型、通信协议和实现技术。 关键词:流媒体;p 2 p 网络;p p v i d e o 分类号:t p 3 9 3 e 瘟銮煎厶堂亟堂焦监塞旦s ! b ! a b s t r a c t s 【r e a m i n gm e d i ar e f e r st ov i d e o a u d i om e d i at h a tp l a y sw h i l ed o w n l o a d i n g s t r e a m i n gm e d i at e c h n o l o g yi n c l u d e se n c o d i n gm e t h o ds u i t a b l ef o rn e t w o r kt r a n s f e r , q o sc o n t r o lm e t h o da n dp r o t o c o l s s t r e a m i n gm e d i as o f t w a r ep l a t f o r m sg e n e r a l l ya r e b a s e do nc l i e n t s e r v e rm o d e l ,w h i c hh a st h es e r v e r - s i d er e s o u r c eb o t t l e n e c k o t h e r m o d e l ss u c ha si pb r o a d c a s ta n dc d na r ea l s op r o p o s e dt oo v e r c o m et h es h o r t c o m i n g b u tt h e ya l lh a v eo t h e rd r a w b a c k s ,an e wp r o p o s e dm o d e l - - p 2 pn e t w o r kp r o v i d e sa n e ws o l u t i o nf o rt h ep r o b l e m p 2 p , o rp e e rt op e e rm e a n sh o s t sp r o v i d es e r v i c ef o re a c ho t h e r i tp u s h e st h e s e r v i c ef r o mc e n t e rt ot h ee d g eo fn e t w o r k ,a n dt a k e sa d v a n t a g eo ft h er e s o u r c eo nt h e e d g e p 2 pn e t w o r kh a saw i d er a n g eo fu s e ,a n dh a sm a n ym o d e l s ,e a c hw i t hi t s c h a r a c t e r t h i sp a p e rd i s c u s s e sap 2 ps t r e a m i n gm e d i as y s t e m - - p p v i d e o ,w h i c hb r o a d c a s t s t r e a m i n gm e d i ao np 2 pn e t w o r k t h i sp a p e rd i s c u s s e dt h ek e yp r o b l e m so fp 2 p s t r e a m i n gm e d i as y s t e m :s i n g l e s o u r c e m u l t i s o u r c et r a n s f e r , m e d i as o u r c el o c a t i o n , s o u r c en o d es e l e c t i o n ,d a t at r a n s f e ra l l o c a t i o n ,i n c e n t i v em e c h a n i s m ,d i g i t a lp r o p e r t y p r c s e r x 7 a t i o n ,a n dp r e s e n t e dt h es o l u t i o no fp p v i d e os y s t e m p p v i d e ou s e sac e n t r a l d i r e c t o r ys e r v e r d a t ai s t r a n s f e r r e da m o n gp e e r si nap 2 pw a y p p v i d e ob s g s m u l t i - s o u r c em o d e l ,s o u r c ep e e rs e l e c t i o no na sn u m b e r , d a t at r a n s f c ra l l o c a t i o n p r i o r i t i e sp l a yb a c ks e q u e n c e ,p a yb a c k i n c e n t i v em e c h a n i s m ,t oi m p r o v ed a t a t r a n s m i s i o n l a s t l y , t h i sp a p e rp r e s e n t e dt h em o d e l ,c o m m u n i c a t i o np r o t o c o l ,a n d i m p l e m e n t a t i o nt e c h n o l o g yo f p p v i d c o k e y w o r d s :s t r e a m i n gm e d i a ;p e e rt op e e r ;p p v i d e o c l a s s n 0 :t p 3 9 3 4 学位论文版权使用授权书 本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特 授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索, 并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国 家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:痞健犯导师签名:方邑万 签字日期:。,年r 妒r 日 签字日期:w 彩年,2 ,月日 二世峦窒煎厶堂亟堂位迨奎 蕉剑焦岜哩 独创性声明 术人声咧所挈交的学位论文是本人在导师指导下进行的研究工作和取得的研 究成粜除r 文中特别加以杯注和致谢之处外,论文中不包含其他人已经发表或 撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示了谢意。 靴做储戳:概沿婵嗍:6 年 月矿 2 致谢 本论文的工作是在我的导师施寅教授的悉心指导下完成的,施寅教授严谨的 治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢三年来施寅 老帅x f 我的关心和指导。 同银神州公司的赵晓京绎砰对于我的科研t 作和论文都提 n 了许多的宝贵意 见,在此表示衷心的感谢。 在科研工作及撰写论文期间,叶随林、韩峰等同学对我论文中的研究工作给 予了热情帮助,在此向他们表达我的感激之情。 另外也感谢家人,他们的理解和支持使我能够在学校专心完成我的学业。 1 绪论 1 1 流媒体简介 计算机技术特别是网络技术的飞速发展,深刻地改变着人们的工作、生活和 思维。随着单机处理能力的增强和宽带网络的普及,人们不再满足于i n t e r n e t 上只 有文字和图片,而希望看到内容更加丰富的音频、视频信息。在网络上传输视频 信息,最简单直接的方式,就是把视频内容按某一格式采集、编码,存放在文件 中:然后把文件通过一般的网络传输协议传输到对端,再在对端的机器上解码并 播放。目前这种方式仍然被广泛地采用着。但是这种方式有它的缺点:l 、必须等 整个媒体文件全部传输完毕,才能开始播放文件。用户往往要经过漫长的等待;2 、 不适合现场直播的形式;3 、占用很大的硬盘空间;4 、媒体文件存放在硬盘上, 客户可以任意处鼍,不利于媒体文件的版权保护。针对这些缺点,人们提出了流 媒体技术。 流媒体是指在i n t e m e t 中使用流式传输技术的连续时基媒体。简单地讲,就是 一边下载,一边播放。媒体数据象河流一样源源不断地传输到客户主机上,然后 源源不断地在客户主机上播放。播放过的内容则不在硬盘上保留。 由于采用了流媒体这种形式,数据的传输和播放必须保持一定的同步。在理 想的网络环境下,数据匀速地稳定地到达客户端,客户端只需要很小的缓存,把 刚到达的数据播放就可以了。但在实际的网络环境下,网络中有很多的不稳定因 素,包括:网络延迟;带宽:抖动等。因此需要客户端保留一个足够大的缓存, 以消除或减轻网络因素对播放的影响。然而缓存只能在定范围内解决问题,如 果传输和播放的速度差别较大,仍然会导致播放停顿或缓存溢出。过大的缓存还 增加了系统的负担。 流媒体系统要解决的另一个问题是不同的客户端的网络异构性,即不同的客 户端往往带宽等网络状况差别较大,需要区别对待。 为了让播放速度和传输速度相适应,人们提出了一系列的技术。在数据编码 方面,提出了适应不同带宽的可扩展编码。在传输控制方面,提出了拥塞控制的 方案。在网络协议方面,提出了控制流媒体传输和播放的一系列协议。本文第二 章将对这些问题做详细的探讨。 1 2p 2 p 网络的发展背景 j e立窑 塑 丕堂亟堂建i 金塞 绪 i 金 音频、视频信息在i n t e m e t 上的应用,得到了很大的发展。然而,大规模的视 频播放还没有被广泛地使用。视频数据对网络资源的高消耗是其中最重要的原因。 如何在网络上广泛地传播高质量的视频音频数据,是计算机网络界不断探索的一 大难题。 传统的分靠式多媒体系统主要使用客户端一服务器( c s ) 模式。服务器以单 播的方式和每个客户建立连接,负责为每个客户提供所请求的媒体文件,如图l 所示。系统能够支持的并发的客户总数( 称为系统总容量) 受限于服务器的资源。 这种限制主要来自于网络输出带宽,也来自于服务器处理能力、i o 速度等。这种 结构简单清晰,但在可扩展性方面有明显的缺点。出于流媒体服务具有高带宽、 持续时问长等特点,随着客户数目的快速增加,服务器的资源如带宽很快就被消 耗完,成为系统瓶颈所在。一台服务器只能支持有限的并发流( 千级的并发流) 。 要解决十万、百万用户同时收看的问题,不仅需要大量服务器,还需要极宽的网 络带宽1 。 图i 客户端服务器结构的流媒体系统,服务器资源成为系统瓶颈 要解决上述问题,i p 组播是一种方案,它用单一的流提供给所有客户口组 播技术以其多路复用的方式能够减轻服务器和网络的负载,但现有网络要支持组 播,需要进行改造,这不仅导致成本增加还将损失互联网无所不在的通达能力。 其在实现方面的复杂性使其在未来几年内仍难以广泛实旌。 近年兴起的c d n ( c o n t e n td e l i v e r yn e t w o r k ) 服务通过在i n t e m e t 上广泛部署 2 j 塞銮道盘堂亟堂位诠塞绪途 服务节点( 如a k a m a i 公司己在全球部署了1 0 ,0 0 0 + 个节点) ,把服务内容“推”向网 络的“边缘”,并把客户请求路由到距客户最近的服务节点,从而减轻了服务器的 爪力和对骨干网络的带宽消耗。然而,为了增加系统总容量而使用代理和缓存, 这增加了系统总成本( 如,c d n 按字节收费的方式使般流媒体内容提供商无法承 担其租赁费用) ,并且也带来了许多诸如缓存一致性和负载平衡等管理难题。系统 总容量仍然受限于缓存和代理总的资源。这只是将瓶颈从一个中心点转移到少数 分散点上,而不是消除了瓶颈。 上世纪9 0 年代术开始,p 2 p ( p e e r - t o p e e r ) 这项新技术被应用到了i n t e m e t 上以 来,i n t e m e t 应用又得到了巨大的推动。p e e r 即对等实体,是指网的端点,即位于 网络边缘的主机,也就是在客户机服务器模式下大量的客户机。在p 2 p 方式下, 每个p e e r 既是服务的提供者,又是服务的享用者。p e e r 为系统提供有限的计算或 存储资源,p e e r 之白j 协作为其他p e e r 提供服务,将服务器的负载分散到p e e r 中, 从而有效地减轻了服务器的负载和网络带宽占用,极大地提高了系统的可扩展性, 具有潜在的应用前景。 p 2 p 网络的应用范围很广,包括对等计算,文件共享,协同工作等。由于p 2 p 模式可以在大规模的网络应用中有效地提高系统的可扩展性,基于p 2 p 方式的流 媒体传输的研究也逐步引起了人们的重视,相关技术或原型系统不断出现。 1 3 用p 2 p 网络实现流媒体传输 近年来p 2 p 网络应用于文件下载已经广泛地开展起来了。有关p 2 p 应用于流 媒体传输的研究也丌始展丌。相对于文件下载,流媒体传输对于p 2 p 网络提出了 更高的要求。因为文件传输是先下载再打开,而流媒体传输是边下载边打开,因 此对传输的实时性、延迟、抖动都比较敏感。对于一个播放速率为r 0 的流媒体数 掘,要求接收数据的速率不低于r 0 ,才能保证媒体数据能连续不中断地播放。而 且,流媒体播放要求数据以一定的顺序到达。如果数据晚于播放时刻到达,则没 有意义了。如何用一个相对较小缓存,保证媒体文件顺畅、稳定地播放,是p 2 p 网络流媒体系统要解决的一个挑战性的问题。 在p 2 p 流媒体系统中,节点的一个子集拥有某个媒体数据或媒体数据的一部 分,它们将媒体数据流传送到请求节点。请求节点在接收到一定的流媒体数据后, 开始回放数据。与此同时,它也成媒体文件的供应节点。发送数据、接收数据和 回放数据三者同步地进行。p 2 p 流媒体服务体系下的p e e r 节点一般具有以下几个 特性: e丛塞迪厶:差亟堂位迨塞绪迨 ( 1 ) p 2 p 流媒体系统是自增长的。随着请求节点后来成为供应节点,系统的总 容量将扩大:系统服务的节点越多,它的容量将越大。 f 2 ) 与传统的服务器节点相比,p e e r 节点作为普通的主机节点,其所能够或愿 意挺供的带宽资源有限,而流媒体数据率较高,因此通常需要多个节点彳。能为单 个节点提供数据服务;节点加入和退出网络的频率也较高,节点可能随时离开网 络。 ( 3 ) 不同p e e r 节点具有异构性。节点的带宽资源具有异构性,原因可能是接 入的网络不同,也可能是节点的意愿不同,因而能接收和处理不同q o s 等级的流 数据;不同p e e r 节点所缓存数据也具有异构性,导致其对外所能提供的数据内容 也不同;同一p e e r 节点的上行、下行带宽也可能具有异构性。 由于p 2 p 服务体系需要让某些节点暂时发挥服务器功效,而这些节点与传统 的服务器相比存在一定差异,如提供服务的节点位置不固定,服务能力有强有弱、 节点频繁加入和离开等。而流媒体本身又有其独特性质,如数据存储量大、带宽 占用高、持续服务时间长、高q o s 要求等。因此,在p 2 p 流媒体服务体系中,如 何在允分而又合理地利用众多节点资源的同时并能确保服务质量,而面临着许多 挑战。 近年来,基于p 2 p 网络的流媒体服务体系己经引起了许多大学( 如s t a n f o r d u n i v e r s i t y 、p u r d u eu n i v e r s i t y 、m a r y l a n du n i v e r s i t y 、c e n t r a lf l o r i d au n i v e r s i t y 、 c h i n e s eu n i v e r s i t yo f h o n gk o n g 等) ,研究机构( 如m i c r o s o f tr e s e a r c h 等) 以及公 司( 如v t r a i l s ,a l l c a s t 等) 的重视并纷纷开展研究。虽然p 2 p 流媒体有一些技术上 的题有待解决,但由于其在大规模视频播放上强大的功能,广阔的应用前景, 满足了i n t e r a c t 视频播放广泛的需求,在近年来也得到了很大的发展。 1 4 课题来源及本文的工作 本文的课题来源于网银神州公司的一个项目。该项目致力于开发一套基于p 2 p 技术的流媒体播放系统p p v i d e o 。该系统和公司网站相结合。用户登录公司网站后, 可以浏览一些节目信息。如果用户想观看流媒体视频节目,只要下载一个很小的 客户端,并进行简单的身份认证,就可以观看了。该系统采用p 2 p 技术,因此具 有较高的可扩展行,只要占用较少的服务器资源,就可以支持较大的并发用户数。 本文系统地介绍了流媒体技术和p 2 p 网络技术。在此基础上,探讨了开发p 2 p 流媒体系统的一些关键问题,在研究现有的解决方案的基础之上,根据公司项目 的需要,提出了p p v i d e o 系统的解决方法,并设计和开发了p 2 p 流媒体系统 4 p p v i d e o 。 本文各章节的内容如下:第一章绪论,第二章介绍了流媒体的相关技术,第 三章介绍了p 2 p 网络的概念、特点、体系结构和典型系统,第四章介绍了p 2 p 流 媒体系统p p v i d e o 的一些关键问题与解决方法,第五章介绍了该系统的设计和实 现。 j 立奎遭友堂亟堂位i 金塞速握住蕴垄受荭 2 流媒体技术研究 2 1 概述 在网络上传输音视频等多媒体信息,目前主要有下载和流式传输两种方案。 下载是将媒体文件全部下载到本地后才开始播放,而流式传输是边下载边播放。 显然,流式传输具有用户等待时间短,占用本地存储空i 日j 小等优点。 流媒体是指在i n t e m e t 中使用流式传输技术的连续时基媒体,如:音频、视频 或多媒体文件。流式媒体在播放前并不下载整个文件,只将开始部分内容存入内 存,然后边播放边传输,只是在开始时有一些延时。 实现流式传输有两种方法:实时流式传输( r e a l - t i m es t r e a m i n g ) 和顺序流式传输 ( p r o g r e s s i v es t r e a m i n g ) 。 l 、实时流式传输 实时流式传输技术保证媒体信号带宽与网络连接匹配,使媒体可被实时观看 到 被传输媒体数据根据网络带宽的不同相应地作调整。这意味着在带宽较低的 时候,图像质量将较差,而媒体的实时性能够得到保证。这种传输方式适合现场 直播。这种方式也支持随机访问,用户可快进或后退以观看前面或后面的内容。 实时流式传输需要特定服务器,如q u i c k t i m es t r e a m i n gs e r v e r , r e a ls e r v e r 与 w i n d o w sm e d i as e r v e r 。实时流式传输还需要特殊网络协议,如:r t s p ( r e a i - t i m e s t r e a m i n gp r o t o c 0 1 ) 或m m s ( m i c r o s o f tm e d i as e r v e r ) 。 2 、顺序流式传输 顺序流式传输不像实时流式传输在传输期间根据用户连接的速度做调整。这 种播放方式保证媒体的播放质量,但是在连接速度较慢的情况下,不能保证连续 流畅地播放。顺序流式传输比较适合高质量的短片段,如片头、片尾和广告。这 种方式可以采用标准的h r r p 或f t p 服务器,用h r r p 或f t p 服务器协议发送文 件,不需要其他特殊协议。严格说来,它是一种点播技术。 一个典型的流媒体应用结构如图2 所示。媒体经过压缩技术存在硬盘上,流 媒体服务器接收客户端的请求,应用层q o s 控制层通过q o s 的要求以及网络状况 调整压缩的媒体流的参数( 如比特率) ,然后流媒体传输层对其进行打包,通过传输 层协议进行连续媒体分发,客户端接收到媒体流后,通过媒体同步技术进行播放。 以上的过程涉及到的技术有:媒体压缩技术,应用层的q o s 控制,视频服务器技 6 e 塞窑迪厶堂亟堂位途塞速魅佳基苤硒荭 术媒体同步技术和流媒体传输协议。 2 2 媒体压缩技术 图2 流媒体系统组成结构 原始的视频数据存在着很大的冗余,包括时间冗余,空i 日j 冗余和主观视觉冗 余。为了亚有效的存贮和传输,需要对原始数据进行压缩。压缩技术可以分为两 种:普通( n o n s c a l a b l e ) 编码技术和可扩展性( s c a l a b l e ) 编码技术。 2 2 1 普通编码技术 目前工业应用的主流标准,如m p e g 系列及h 2 6 x 系列标准,大都采用基于 分块运动补偿及离散余弦变换( d c n 的压缩算法。图3 显示了一个帧内模式编解码 的椎图。 异构性是网络的一个很重要的特点,不同的终端的网络状况可能有很大的区 别。普通的编码技术只能生成一种质量的码流。对于高带宽的用户,希望获得高 皿5 皋幽质量的码流;对于低带宽的用户,希望获得较低码率的码流,以牺牲质量 来换取流畅地播放。如果针对不同用户的需要,服务器同时播放不同码率的多个 码流则降低了带宽利用率,因为不同码率的码流存在着很大的冗余数据。为解 决这个问题,提出了分层可扩展的编码技术。 j e 宝銮道去堂亟堂位盗塞远握住蕉盔硒殛 餐鼗舞一 二二三三二 _ + 二三二 _ ( 二乎舞缩码 d c t :离散余弦变换 q :景化 v l c :可变k 编码 ( a ) 巍维妈 二三三三二卜+ 二二至二 + i 二乎冀嚣餐 v l d :可变长解码 i q :反量化 i d c t :反余弦垒换 ( b ) 幽3 博通帧内模式编解码框幽 2 2 2 分层可扩展性编码技术( l a y e r e ds c a l a b l ec o d i n g ) 传统的不可扩展性编码产生单一的压缩流,丽可扩展性编码将把原始的视频 流吓缩成多个视频流,如图4 ( a ) 所示,原始流被压缩成了一个基本流和多个增强流, 基本流可以被单独解码,提供最基本的视频质量,增强层解码后叠加在基本流上, 可以提供更好的视频质量,如图4 ( b ) 。 分层可扩展性编码主要有三种:时域可扩展性、空域可扩展性和质量可扩展 性。 时域可扩展性( t e m p o r a ls e a l a b i l i t y ) 编码通常是通过添加b 帧来实现。b 帧是用 与它在时间上最邻近的前后两个i 帧或者p 帧来预测的,而自己不能作为其它帧的 参考帧,因此,在传输中丢弃b 帧不影响其它帧的质量,而仅仅降低帧率。因此 可以在基本层传输i 帧和p 帧以及部分b 帧,在增强层传输更多的b 帧来提高帧 率。 空域可扩展性( s p a t i a ls c a l a b i l i t y ) 编码是通过为视频中的每一帧都创建多分辨 率的表示来实现的。原始视频首先通过过采样得到低分辨率的视频,编码得到基 本层:然后编码原始视频和基本层的差,生成增强层。 质量可扩展性( p s n rs e a l a b i l i t y ) 编码思想和空域可扩展性编码很类似,只是基 本层不是下采样,而是进行一次很粗的量化形成基本层,然后对原始流和基本层 隙始图 像数据 基本层 压缩码流 增强层 压缩码流 ( a ) ( b ) 图4 分层可扩展编解码框图 基本层 压缩码流 增强层 压缩码流 基本层 解码后数据 增强层 解码后数据 的荨再进行编码生成增强层。 生成多个增强层只需重复上面的过程。 分层可扩展编码技术将视频压缩成一个或几个固定比率的码流,是面向存储 的。在网络环境下,当带宽达到一定的程度时用户可以接收到一定质量的视频, 但随着带宽的继续增加,视频质量得不到任何改善,直到带宽达到阶梯的下一条 线。为了适应网络带宽的变化,理想的视频编码方式应该具有可以在任何地点截 断的特性,视频的质量随着码率的增加而增加。由于网络的异构性及缺乏q o s 保 证,网络带宽会在一个很大的范围内发生变化,面向网络传输编码的目标就是将 视频压缩成适合在一个码率范围变化的码流。精细的可扩展性编码则解决了这一 问题。 2 2 3 精细的可扩展性编码( f i n eg r a n u l a rs c a l a b l ec o d i n g ) 如图5 所示,f g s 与普通的可扩展编码的最大的不同就是增强层采用位平面 ( b i t p l a n e ) 编码技术,使的每一帧的增强层码流可以在任何地点截断,解码器重建 的视频质量与收到的解码的比特数成j 下比23 。f g s 己被m p e g 4 采纳4 。 e 丞銮迪盔望:亟堂位监塞逋丝住越苤班宜 原始图 像数据 丛奉 压缩码流 增证 j f “自妈插l 。 ( b ) 图5 精细的可扩展性编解码框图 基本层 压缩码流 增强 压缩码流 基本层 解码数据 增强解码 数据 f g s 的基本层编码与普通的非扩展性编码一样,而在增强层编码时,从原始 的d c t 系数减去基本层逆量化后的重建的d c t 系数值获得d c t 残差,对残差 z i g z a g 扫描采用位平面编码。对于一个8 8 的块,扫描之后就是对“个有符号的 整数编码。位平面编码就是将“个数的绝对值写成二进制形式。位数由其中最大 的系数决定,然后按位的高低顺序进行编码,即先编码最高位,再编码次高位, 最后编码最低位。使用位平面编码的好处就是使得每个系数的重要部分( 较高的位) 优先编码,这样在码流被截断时就保证了解码器仍可以获得视频的重要信息,从 而提供了精细的可扩展性。 2 2 4 多重描述编码( m d c ) 多重描删q ( m u l t i p l ed e s c r i p t i o nc o d i n g ) 的基本思想就是把一个码流编码成 m 个流,称为描述,并且不同的描述之间应该存在着相关性,其中任何一个描述 都可以被用户接收并且可以在一定的失真的情况下单独的解码。不同的描述也可 以叠加成失真更低的流。所以用户接收到的描述越多,重构的视频质量就越好56 。 m d c 编码与分层可扩展性编码的最大区别在于m d c 的每个描述都可以单独解码, l o j l 牝一玺堕厶主亟堂位缝塞 远牲住篮垄硒蕉 而分层编码中只有基本层可以被独立的解码,增强层需要依赖基本层。 在p 2 p 系统中,由于用户的行为无法预期,任何节点都有可能在任何时候退 出系统。在基于组播树的p 2 p 流媒体系统中,一旦父节点离丌系统。则它的子节 点的需要被重新插入到组播树中,系统对树的恢复速度将严重影响对受影响的子 节点的服务,在一个不稳定的环境下,用户频繁的退出会导致系统的不稳定,解 决这个问题的一个比较简单而有效的模型是同时构造两棵或多棵组播树,通过在 系统中部署多重描述编码( m d c ) ,每个组播树组播一个描述。因为只要收到一个 描述就可以单独解码,一个节点在所有组播树中的父节点同时离开的可能性非常 小,所以可以有效地解决系统不稳定的问题。 2 3 应用层的q o s 控制 在网络系统中影响流媒体o o s 的因素很多,如带宽,i n t e m e t 分组丢失率,无 线网络的误码差错,网络异构性,网络延迟等。应用层q o s 控制的目的是在 b e s t e f f o r t 的网络坏境下避免捌塞控制,保证视频服务质量78 。为了保证视频在网 络r 传输时能够达到一定的q o s ,提出了两种解决方案。一种是以网络为中心, 要求h 络中的路由器、交换机为媒体流传输提供带宽、延时、抖动、丢失率的服 务质量保证。另一种思路就只涉及到端系统,不对网络实现提出要求,通过端对 端的协议实现媒体流传输的q o s 保障功能。第二种思路不依赖于现有的和未来的 州络实现而日也比较容易实现,但是其缺点是比较被动。 j 丑川层o o s 控制技术主要包括捌塞控制和错误控制。 2 3 1 拥塞控带l j ( c o n g e s t i o nc o m r 0 1 ) 过高的包丢失率和时延都将导致视频质量的急剧降低,而这些正是由于网络 拥衷引起的,搠塞控制机制就是试图减少包丢失率及时延。在视频传输中,拥塞 控制的主要手段就是服务器端的发送的比特率的控制,通过使发送的比特率接近 空闲的网络带宽来避免拥塞。下面简要介绍码率控制的方法及相关的速率整形技 术。 码率拧相j f r a t ec o n t r 0 1 ) 通过估计当前的网络带宽来调整发送的比特率,码率控 叮以分为种:基于发送端( s e n db a s e d ) ,基于接收端( r e c e i v eb a s e d ) $ 口混合的码 率控$ 1 j ( h y b r i dr a t ec o n t r 0 1 ) 。 l 、基于发送端的码率控制 基于发送端的码率控制由发送端通过搜集网络的反馈信息,负责调整传输速 率,有以下两种模型: 基r 网络监测的( p r o b e - b a s e d ) :在基于网络监测的方法中,发送端通过监测网 络带宽,并保证包丢失率小于某个预设的阈值,如果丢失率小于阈值就增大发送 数率,如果丢失率大于阈值就减小发送速率。 基于模型的( m o d e l b a s e d ) :基于模型的方法主要是基于t c p 的吞吐量的。即 通过如卜的公式: 1 2 2 彳兀, 九2 f “万p 计算码流的发送速度,其中峻玎为往返时间,m t u 为最大传输单元,p 为丢包率。 发送端的调节发送的码流的码率主要通过速率整形技术,速率整形就是把一 个压缩好的码流重新压缩成一个指定码率的码流,主要有以下几种方式: 转码过滤器( c o d e sf i l t e r ) :通过解码压缩,重新设定参数,然后重新编码:或 者小需要对原始的压缩数据进行完全的解码,只需要部分解码,通过重用原始码 流的一些信息比如运动向量等加速转码的速度。 三帧过滤器( f r a m e d r o p p i n gf i l t e r ) :发送端有选择的丢弃一些帧来调整速率, 按帧的重要性,一般先丢弃b 帧,然后是p 帧,然后才是i 帧。 丢层过滤蒜:( l a y e r - d r o p p i n gf i l t e r ) :有选择的丢弃视频中的一些层,层的丢弃 顺序从最高的增强层到基本层。 频率过滤器( f r e q u e n c yf i l t e r ) :通过在频域( 比如d c t 域) 丢弃高频部分。或这 降低色差,或者完全去弃彩色信息来降低比特率。 重新量化过滤器( r e q u a n t i z a t i o r tf i t t e r ) :首先把d c t 系统反量化,然后用一 个更大的步长重新量化来降低比特率9 。 2 、基于接收端的码率控制 基于接收端的码率控制由接收端负责加入、退出某个通道来保证q o s ,而发 送端不负责码率控制。一般情况下,发送端采用分层可扩展性编码技术,用不同 的通道组播视频的各个层,如果在传输过程中,接收端没有监测到拥塞,接收端 会加入一个组播更高的层的通道,如果加入之后仍然没有拥塞,则保留新加入的 层,否则退出。如果接收端监测到拥塞,则退出一个层的接收来减少接收的码率。 3 、混合的码率控制 混和的码率控制综合了基于发送断和基于接收端的技术,接收端通过加入,退 出组播通道来调整码率,发送端也根据反馈信息调整各个通道的码率。 总的来说,自h 塞控制的目的就是较少包丢失率来改善接收端的视频质量,然 i m :州络小三也灶不可避免的,如何在有丢包的情况下最大程度的改善视频的质 i e 塞童煎盔堂亟堂垃论塞短缢签攮丕班嚣 量,这就需要引入错误控制机制。 2 3 2 差错控韦l l ( e r r o rc o n t r o l l 差错控制包括酚向纠错编码( f e c ) 、重传机制( r e t r a n s m i s s i o n ) 、容错编码 ( e r r o r - r e s i l i e n te n c o d i n g ) 和错误隐藏技术1 0 ( e r r o rc o n c e a l m e n t ) 。 1 、前向纠错编码 发送端发送能纠币错误的编码,在接收端根据接收到的码和编码规则,能自 动纠币传输中的错误。其特点是不需要反馈信道,实时性好,但是随着纠错能力 的提高,编译码设备相对复杂。 2 、重传机制 在接收端监测到误码或丢包的情况下,要求发送端重传数据。重传的数据必 须存搔放之i j i f 到达,否则就没有任何意义了。所以请求重传需要判断重传是否可 以满足播放时问的最后期限。 3 、容错编码技术 容错编码的目的是增强压缩流对包丢失的健壮性。然而这些技术主要是针对 易错的无线环境,在基于分组交换的i n t e m e t 网络中,误码( t c p u d p 的检验和不 一致) 将导致整个分组的重传。 4 、错误隐藏技术 容错编码是一种预防性的措施,即在分组丢失发生之前增强压缩码流的对分 组丢失的健壮性,而错误隐藏技术是在分组丢失发生后,接收端用错误隐藏恢复 错误的码流,尽可能的提高视频播放的质量。错误隐藏技术主要包括空域插值和 时域插值。空域插值中,丢失部分的象素通过相邻部分的象素插值,用于帧内编 码的重构。时域插值中,丢失的数据通过前面解码的数据进行恢复,用于帧间编 码的重构。 2 4 媒体同步技术 媒体数据的一个重要特征就是时间属性,比如在一个远程教育系统中,s l i d e s 必须要和声音同步,不然就会让人感到迷惑。在流媒体播放的时候也必须保证视 频和声音的同步。 媒体的同步指的就是维护多媒体数据之间的时序关系。媒体的同步有三层: 流内同步、流间同步和对象间同步。 流内同步:连续媒体或时间相关的数据( 比如视频、音频) 的最低层是媒体 e 壅銮适盔鲎亟翌位丝塞逋丝住拄苤班窒 层( m e d i al a y e r ) 。媒体层的基本单元是一个逻辑单元( 比如视频的帧) ,逻辑 单元之间需要遵循严格的时序关系,流内同步就是维护逻辑单元之间的连 续件和时序性。比如视频中,帧与帧之间的顺序不能被打乱。 流问同步:时i 日j 相关数据的第二层是流层( s t r e a ml a y e 0 。流层的基本单元 就是整个流,这一层的同步就是维护各个不同流之间的时间关系,比如维 护音频视频之日j 的同步。 对象恻i 列步:多媒体数据最高层就是对象层( o b j e c tl a y e o ,这一层整合了 流和时间无关的数据,比如文本和图像,这一层的同步就是对象间的同步。 对象| 日j 同步的目的就是当时问无关的数握到达预先设定需要显示的点时, 在一个可以忍受的时间间隔内,开始和停止显示这些时间无关的数据。 媒体数掘从发送端传输到接收端会使数据失去同步,尤其是在b e s t - e f f o r t 的网 路巾传输,传输的时延不可预期,同步机制的目的就是保证接收端以正确的方式 显示接收到的媒体数据。媒体同步机制最基本的就是指定媒体流内或媒体流之间 的时事关系,时廖关系可以自动或手动指定,在音频、视频流中,时序关系通常 有录制设备自动生成,而在一些幻灯片的演示中经常需要手动指定对象| 日j 的时序 欠系, 指定时序关系的方法包括基于时间间隔的( i n t e r v a l b a s e d ) 、基于轴的 ( a x e s b a s e d ) 、基于流量控制的( c o n t r o lf l o w - b a s e d ) 和基于事件的( e v e n t - b a s e d ) 。在连 。续媒体中广泛使用的方法是基于轴的或者称为基于时间戳( t i m e - s t a m p i n g ) 。数据源 的每个流都有自己的时间戳,在接收端,应用程序通过时间戳来显示媒体流。 2 5 网络通信协议 根掘功能,传输协议可以分为三类: 1 1 ) 列络层协议i p ,提供最基本的网络服务。 ( 2 ) 传输层协议,提供端到端的传输服务,包括t c p , u d p 和r t p r t c p ,其中 t c p 与u d p 更加底层一些,r 1 1 p r t c p 实现在t c p 或u d p 之上,有时候也被划 为应用层协议。 ( 3 ) 应用层协议,定义多媒体会话过程中的消息控制及处理,包括r t s p 等。 协议栈如图6 所示。 2 5 1r t p 协议 1 4 拙塞窑道盔堂亟堂僮迨塞远堪住拉垄班嚣 图6 传输协议 r t p r t c p 是由i e t f 组织作为r f c 3 5 5 c 发布的”。融r p 协议提供了实时端 到端传送视频,音频数据流的方法。r t c p 协议是r t p 协议的伴生协议,用于网 络捌摩控制和流控制。 一般来讲,采用r t p 协议的应用程序一般使用u d p 传输协议。u d p 协议虽 然较t c p 协议可靠性较低,并且无法保证实时业务的服务质量,但u d p 协议的传 输时延远低于t c p 协议,并且能很好的保证数据传输的实时性。 在r t p 工作时般分为两个层次:会话和流。一个l m 会话( s e s s i o n ) 包括传 给某个指定目的地对( d e s t i n a t i o np a i r ) 的所有通信量,而发送者可能有多个( i p 地址, 协议端口号1 。如果i p 地址是一个单播地址,r t p 会话的接收方就只有一个;如果 l p 地址是一个组播地址,其接收方就可能有多个。从同一个同步源发出的r t p 数 掘包序列称为流( s t r e a m ) 。一个r t p 会话可能包含一个或多个独立的r t p 流,这些 流部破于匕定送到同一个目的地址和协议端口。例如,在一个多路音频会议中,每 个! j 会哲郁j 能发出独立的音频流。一般应用中一个媒体源一次只发送一个流, 但在必要时也可能发送多个流。例如,一个源需要同时传输多种类型的数据( 如音 频和视频) ,或者需要用多种编码发送同一组数据( 例如,使用高、低两种质量传输 同一视频流1 。 r t p 卧议不包含确保及时交付的机制,因此协议本身并不提供资源预留服务 或保讦网络的q o s 保证,其功能必须由底层系统来保证。r t p 提供如下的特性: ( 1 ) 时间戳( t i m e s t a m p ) :r t p 提供时间戳用于同步不同的媒体流,注意r 1 1 p 本身并不负责同步,同步的任何有上层的应用程序完成。 ( 2 ) 序列号( s e q u e n c en u m b e r ) 保证包的有序性,同时,序列号也被用于丢包 的检测。 ( 3 ) 数据包类型标识( p t ) :用于指定r t p 包的负载类型,应用程序根据负载类 型解释包的内容,负载内容的类型可以为m p e g i 、m p e g 2 、h 2 3 1 等。 ( 4 ) s s r c ( s y n e h r o n i z a t i o ns o u r c ei d e n t i f i e 0 流标识。 2 5 2r t c p 协议 r t c p 协议提供了一种有效的保证数据流质量的方法,并且可以在会话期间监 视底层网络以及提供端点之外的带外通信。k i c p 协议允许发送方和接收方传输一 系列报告,这些报告包含有关正在传输的数据的辅助信息以及网络性能的额外信 息。一般地,r t c p 报文封装在u d p 报文中,以便进行传输。发送r t c p 报文时 使用端口号一般比它对应的r t p 报文端口号大1 。 r t c p 主要有4 个功能: ( 1 ) q o s 监测和拥塞控制:r t c p 向应用程序提供数据传送的质量的反馈,反 馈形式包括发送者报告( s e n d e rr e p o r t s x 由数据源发送) 和接收者报告( r e c e i v e r r e p o r t s ) ( 由接收者发送) 。这些信息对发送端、接收端以及第三方监视都是有用的。 根据这些反馈信息,发送端可以调整发送的比特率:接收端可以判断拥塞是本地 的、局部的或者是全局的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论