(计算机系统结构专业论文)开放体系下可扩展流媒体服务器系统研究.pdf_第1页
(计算机系统结构专业论文)开放体系下可扩展流媒体服务器系统研究.pdf_第2页
(计算机系统结构专业论文)开放体系下可扩展流媒体服务器系统研究.pdf_第3页
(计算机系统结构专业论文)开放体系下可扩展流媒体服务器系统研究.pdf_第4页
(计算机系统结构专业论文)开放体系下可扩展流媒体服务器系统研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

重庆大学硕士学位论文中文摘要 摘要 随着互联网的飞速发展,m t v 、视频点播流媒体应用发展迅速,迫切需要有 较好的服务能力的媒体服务系统来支撑业务的开展。当前r e a l 、m i c r o s o f t 和a p p l e 公司都有发布各自宽带流媒体的解决方案,但这些方案往往需要高成本来支持。 针对这种情况,本文通过对现有流媒体技术和产品的了解和分析,设计了开放体 系下的可扩展媒体服务系统方案,采用现有的一些开源项目,来提高流媒体服务 器的性能和可扩展能力。 本论文的主要研究内容有: 在详细分析l v s 系统和d a r w i n 流媒体服务器这两个开源项目的基础上, 设计可扩展的流媒体服务器系统体系结构。 在可扩展的流媒体服务器体系结构基础上,对分布式调度机制进行研究, 并对负载均衡模块、接入许可控制机制、服务器调度算法进行了优化,给出了基 于用户级别的接入许可控制机制和基于容量规划的接入控制优化策略,并实现了 动态调度反馈机制。 针对节点流媒体服务器在系统中的具体功能作用,对服务器的数据存储机 制和流媒体服务策略等方面进行了研究,提出采用基于节目流行度的数据存储策 略和基于门限的流服务策略,来提高系统对媒体服务用户的支持能力。 对系统的并发用户数和系统流量输出两个方面进行了测试,以验证本文提 出的可扩展流媒体服务器系统体系结构扩展了单台流媒体服务器的服务能力,而 且具有较好的负载均衡性能。 本文设计的开放体系下可扩展流媒体服务器系统可以更好地发挥流媒体服务 器系统中软件和硬件的综合服务能力,是一种解决小规模媒体服务应用的较好方 案。该结构搭建比较简单,也不需要较高费用来支持,有较好的性价比,同时具 有良好的节点透明性和可扩展性。 关键词:流媒体服务器,l v s ,d a r w i n 流媒体服务器,可扩展体系结构 重庆大学硕士学位论文英文摘要 a b s t r a c t a l o n gw i t l lt h er a p i de v o l u t i o no ft h ei n t e r n e t , s t r e a m i n gm e d i as e r v i c es u c ha s 口t va n dv i d e o - o n - d e m a n db e c o m e sm o r ea n dm o r ep o p u l a r , s ow en e e da1 1 i g h p e r f o r m a n c ea n df l e x i b l es t r e a m i n gs y s t e mt os u p p o r tt h e s es e r v i c e s t h er e a l , m i c r o s o f ta n da p p l ec o m p a n i e sp r o g r a m sr e q u i r eh i g h - c o s ts u p p o r t a c c o r d i n gt ot h e u n d e r s t a n d i n ga n da n a l y s i so fs t r e a m i n gm e d i at e c h n o l o g ya n dp r o d u c t s ,w cp r e s e n ta s c a l a b l es t r e a m i n gs e l - v e rs y s t e mt oe x p a n dm e d i as e r v i c eb a s e do no p e n - f l a m e b y u s i n gs o m eo ft h ee x i s t i n go p e ns o u r c ep r o j e c t s ,w ec a ni m p r o v et h es t r e a m i n gm e d i a s e r v e rp e r f o r m a n c ea n ds c a l a b i l i t y t h em a i nc o n t e n ti sa sf o l l o w s : t h es c a l a b l es t r e a m i n gm e d i as e r v e ra r c h i t e c t u r ew a sd e s i g n e db a s e do nt w o o p e ns o u r c ep r o j e c t sa f t e rd e t a i l e da n a l y s i so f l v sa n dd a r w i ns e r v e rs y s t e m s b a s e do nt h ee x p a n s i o no ft h es t r e a m i n gm e d i as e l v e ra r c h i t e c t u r e , t h e d i s s e r t a t i o np r o p o s e dt h eu s e rp r i o r i t yp e r m i s s i o nc o n t r o ls t r a t e g y , t h ec a p a c i t yc o n t r o l p e r m i s s i o na l g o r i t h ma n dd y n a m i cf e e d b a c ks c h e d u l i n gm e c h a n i s m a c c o r d i n gt ot h ef u n c t i o no fs t r e a m i n gm e d i as e v e r , t h ed i s s e r t a t i o ni m p r o v e d t h ed a t as t o r a g em e c h a n i s ma n ds t r e a m i n gm e d i as e r v i c e ss t r a t e g y i tp r o p o s e dt h e p r o g r a mp o p u l a r i t ys t o r a g em e c h a n i s ma n ds t r e a m i n gm e d i as e r v i c e ss t r a t e g yo n t h r e s h o l d a f t e rt e s t i n gt h es y s t e mc o n c u r r e n tn u m b e ra n dt h es e r v e re x p o r t , t h er e s u l t i n d i c a t e dt h es y s t e ms c a l a b i l i t ya n dl o a db a l a n c i n g t h es c a l a b l es t r e a m i n gs e r v e rs y s t e mi m p r o v e dt h es e i v i c e $ s u p p o r tt ou s e r sa n d m a d et h eh a r d w a r ea n ds o f t w a r eo fs t r e a m i n gm e d i as e l n e rs y s t e mc o o p e r a t e sm u c h b e t t e r i ts h o u l db eag o o ds o l u t i o nt os m a l l - s c a l em e d i as e r v i c e sp r o g r a m k e y w o r d s :s t r e a m i n gs e r v e r , l v s ,d a r w i ns t r e a m i n g , s c a l a b l es t r e a m i n gm e d i a s e r v e rs y s t e m 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取 得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文 中不包含其他人已经发表或撰写过的研究成果,也不包含为获得重迭太堂 或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本 研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 徐彖炒 签字日期: 渺7 年月占日 学位论文版权使用授权书 本学位论文作者完全了解重庞太堂有关保留、使用学位论文的 规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许 论文被查阅和借阅。本人授权重庞太堂可以将学位论文的全部或部 分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段 保存、汇编学位论文。 保密() ,在年解密后适用本授权书。 本学位论文属于 不保密( ) 。 ( 请只在上述一个括号内打“4 ”) 学位论文作者签名:徐象扩 签字日期:泗7 年_ 6 月6 日 导师签名: 签字日期:沙叼年6 月6 日 f 重庆大学硕士学位论文1 绪论 1 绪论 1 1 研究的意义和内容 随着通信、计算技术的发展,人类社会正在迅速进入以宽带网络为中心的信 息时代。而互联网的普及和多媒体技术在互联网上的应用,迫切要求能解决实时 传送视频、音频、计算机动画等媒体文件的技术。在这种背景下,流媒体技术作 为一种新型的满足用户对网络高质量媒体文件需求的解决方案应运而生,并被广 泛地应用到视频点播、远程教育、网络电台等众多领域。随着计算机系统性能的 不断进步,计算、存储和网络带宽的价格逐年下降,服务规模的扩展对数字视频 服务系统的核心部件流媒体服务器也提出了更高的要求【1 1 。无论是流媒体服 务器的体系结构、存储布局,还是服务策略及软件结构,都存在一系列的技术难 点和问题。使用可扩展的流媒体服务器软硬件体系结构是扩展流媒体应用系统服 务规模的主要手段之- - ”。本文研究的开放体系下的流媒体服务器系统就是围绕 体系结构和服务策略这两个热点问题展开的。 流媒体技术使用流式传输技术来传送连续实时媒体,其在实际的应用中运用 非常广泛,比如视频点播( v i d e oo nd e m a n d ) 、交互式电视( i n t e r a c t i v et v ) 、交互 式游戏( i n t e r a c t i v eg a m e ) 等。而视频点播( v i d e oo nd e m a n d ) 卿j 是多媒体研究领域 的一大热点,是流媒体技术的典型应用。而且在现在的意义中,v o d 的外延逐渐 扩大,v o d 服务中不仅仅包括视频的点播服务,通常还包括其他多媒体如音频、 动画甚至文本信息的点播,因此本文把视频点播作为流媒体应用系统的典型。 在流媒体服务系统中,流媒体服务器是其重要的组成部分。流媒体服务器的 稳定性、性能、并发能力,以及可伸缩性、可扩展性等因素,是影响整个流媒体 服务能够大规模推广应用的关键【3 】。 流媒体服务器在整个流媒体服务系统中处于中心位置,其他的组件都与流媒 体服务器部件进行交互。流媒体服务器发送的媒体数据从编码压缩部件压缩出来 的媒体文件中获取,流媒体服务器虽然不用关系具体的编码算法,但不同的编码 方式下,媒体文件的文件格式、元数据格式,以及对外发送的数据包合适都有差 异。流媒体服务器一边都同时服务很多的客户端,因此多用户并发处理能力直接 影响客户端的播放效果,也是直接影响系统的性价比,决定其能否达到大规模应 用的需求。但是单个流媒体服务器的服务能力毕竟是有限的,无法支持越来越多 的用户的点播请求。单纯提高单个流媒体服务器的能力不仅需要较高的资金,而 且提高的服务能力也有限,而且这个单个的服务器也可能成为整个系统的瓶颈【4 】。 当前r e a l 、m i c r o s o f ( 和a p p l e 公司都有发布各自宽带流媒体的解决方案,但这些 重庆大学硕士学位论文l 绪论 方案往往需要高成本来支持。针对这种情况,本文通过对现有流媒体技术和产品 的了解和分析,提出了开放体系下的可扩展媒体服务系统方案,采用现有的一些 开源项目,来提高流媒体服务器的性能和可扩展能力。 1 2 研究的主要工作 本文的主要工作体现在以下几个方面: 设计了针对小规模用户媒体服务的可扩展流媒体服务器系统体系结构。考 虑到系统的性价比和功能要求,该结构是选择了开源项目l v s 和d a w i n 流媒体服 务器软件搭建而成。 为了提高系统的健壮性,避免在系统运行高峰期管理服务器成为整个系统 的瓶颈,本文提出使用在系统入口处的管理服务器上增添接入控制模块的方法, 运用基于用户优先级的接入控制算法来避免系统崩溃的发生,同时保证节点服务 器的良好运作。 在l v s 的一系列调度策略基础上,本文针对流媒体系统运行的真实情况, 给出了一种动态反馈调度机制,这种方式可以根据获取的流媒体服务器的负载信 息,灵活地选择服务器来提供服务,使系统具有更好的负载均衡性。 针对流媒体节目点播的特点,本文给出了一种基于节目流行度的数据存储 机制,针对整个系统的体系结构和调度方法,不同流行度的节目使用不同的存储 方式,以更好地适应用户视频点播请求的规律。 提出采用优化的p a t c h i n g 服务策略一基于门限的分组周期补丁策略,以更 好的提高系统的服务能力。 1 3 本文的组织结构 本文第一章是绪论,介绍了研究的意义内容、主要工作和组织结构; 第二章介绍了流媒体和集群技术,对这两方面的一些相关内容进行了概述; 第三章主要是对可扩展流媒体服务器系统的设计,通过流媒体服务的需求分 析,深入分析了l v s 和d a r w i n 的工作原理,以便设计整个系统的体系结构; 第四章主要是对可扩展流媒体服务器系统在接入许可控制、调度策略、数据 存储机制和流服务策略等方面的优化与实现; 第五章是对系统进行了实验测试,并对数据进行了分析总结: 第六章是对文章进行了总结,并对将来的研究进行了展望。 2 重庆大学硕士学位论文2 流媒体和集群技术概述 2 流媒体和集群技术概述 2 1 流媒体技术概论 2 1 1 流媒体与流媒体服务器概述 随着网络数据通讯技术、多媒体数据压缩技术与宽带接入技术等多种技术的 日渐成熟和成功运用,通过网络访问音视频等多媒体信息的各种应用得到了迅速 的发展。交互式电视( i n t e r a c t i v et v ) 、远程教学( d i s t a n c et e a m i n g ) 、在线购物 ( s h o p p i n go nl i n e ) 、交互式游戏( i n t e r a c t i v eo a m o 等的应用己经越来越普及。 流媒体( s t r e a m i n gm e d i a ) 指在i n t e r n e t i n t r a n e t 中使用流式传输技术的连续实 时媒体【5 1 ,如:音频、视频或多媒体文件。流媒体在播放前并不下载整个文件, 只将开始部分内容存入内存,流媒体的数据流随时传送随时播放,只是在开始时 有一些延迟,这就是“流”的含义。流媒体实现的关键技术就是流式传输。 流媒体具有以下两方面的特点【6 】:一是流媒体具有带宽特性,要求保持一定 的传输速率,以确保客户端的实时、连续的播放效果;二是由于要保存较长时间 的音频或视频剪辑,流媒体的数据量一般较大。 流媒体技术所提供的对多媒体数据访问的实时性和连续性使其在商业、教育、 娱乐、军事等众多领域得到广泛的应用,而用于存储和传输流媒体数据的流媒体 服务器则是各种流媒体应用的核心设备。 在网络上传输音,视频等多媒体信息目前主要有下载和流式传输两种方式【7 1 。 其中下载是用户访问多媒体信息的传统方式,整个多媒体文件先通过网络下载到 本地,再在客户端播放。但音,视频等多媒体文件一般都较大,所以需要的存储容 量也较大;同时由于网络带宽的限制,下载常常要花数分钟甚至数小时,所以这 种处理方法延迟也很大。而在流式传输时,声音、影像或动画等实时媒体由服务 器向用户计算机连续、实时地传送,用户不必等到整个文件全部下载完毕,而只 需经过几秒或十几秒的启动延时即可进行观看;当多媒体在客户机上播放时,文 件的剩余部分将在后台从服务器内继续下载。流式传输不仅使启动延时成十倍、 百倍地缩短,而且不需要太大的缓冲容量。流式传输避免了用户必须等待整个文 件全部从i n t e r n e t 上下载才能观看的缺点。 针对流媒体自身的特点,流媒体服务器的主要功能包括【s 】:一是对大数据量 的流媒体数据提供可靠的存储和高效的数据检索;二是向客户端用户提供实时、 连续的流媒体数据传输服务。由于流媒体的应用与网络密切相关,流媒体必须遵 守特定的网络协议。通常所采用的流媒体文件是能够在基于p 的网络( 主要是 i n t e m e t 和i n t r a n e t ) 上播放的媒体格式,如音频、视频等多媒体文件,而且这些流 3 重庆大学硕士学位论文2 流媒体和集群技术概述 媒体文件是以网络传输宽带为基础的,只有这样才能做到流媒体文件的边下载边 播放。因此流媒体文件一般都与一定的网络传输带宽相联系,比如一个流媒体文 件适用于5 1 2 k b p s 的宽带网络,而另一个文件适用于6 4 k b p s 的单通道i s d n 网 络,显然前者无法在后者的网络环境下实现保证质量的传输,而后者可以在宽带 网络中有效的使用。 流媒体传输的实现需要采用合适的网络传输协议。w w w 技术是以h t t p 协 议为基础的,而h r r p 又建立在t c p 协议基础之上。由于t c p 需要较多的开销, 故不太适合传输实时数据。在流式传输的实现方案中,一般采用h t t p t c p 来传 输控制信息,而用r t p u d p 来传输实时多媒体数据。支持流媒体传输的网络协 议包括p j : 实时传输协议r t p ( r e a l - t n n et r a n s p o r tp r o t o c 0 1 ) ,这是一种用于i n t e m e t 上针对多媒体数据流的一种传输协议。 实时传输控制协议r t c p ( r e a l t i m et r a n s p o r tc o n t r o lp r o t o c 0 1 ) ,它和r t p 一起提供流量控制和拥塞控制服务。 实时流协议r t s p ( r e a l t i m es t r e a m i n gp r o t o c 0 1 ) ,定义了一对多的应用进 程如何有效地通过口网络传送多媒体数据。 r s v p 协议( r e s o u r c er e s e r v ep r o t o c 0 1 ) ,它是正在开发的i n t e m e t 上的资源 预订协议。 由于流媒体的流式传输的特性不要求流媒体服务器一次性地将流媒体文件的 数据全部传输到客户端,而是在客户端播放流媒体的同时顺序的使流媒体数据 “流”向客户端,流媒体数据流“流动”的速率只要能够保证客户端播放流媒体的速 率即可。因此流媒体服务器对流媒体数据的处理不用突发性地一次从存储设备中 全部读出并连续不断的传输到网络上,而只需周期性地将流媒体数据一部分一部 分的从存储设备中顺序读出并发送到网络上。 2 1 2 流媒体主要产品介绍 1 9 9 5 年,第一个互联网流媒体播放器推出,流媒体技术开始得到发展 1 0 1 。早 期的互联网速度不高,带宽也不稳定,音视频编码的效果也较差,为了提高播放 效果,各大厂商都各出奇谋,不断涌现出各种新的技术。早期的流媒体由于网络 带宽所限,主要以音频为主,如p e a lr a d i o 所提供的网上电台业务。直到1 9 9 9 年,才出现很小的窗口的视频流媒体。到了2 0 0 0 年,随着宽带网络的普及,多媒 体压缩技术领域的进展,个人电脑的运算能力的提高,流媒体技术在短短一年内 得到飞跃发展,r e a ln e t w o r k , m i c r o s o i t , a p p l e 等公司几乎同时推出他们的宽带流 媒体的解决方案【l ”,分别提供从采集到编码,发布和终端播放的整套工具。 r e a l 公司的流媒体产品 4 重庆大学硕士学位论文2 流媒体和集群技术概述 r e a ln e t w o r k 公司是老牌的流媒体技术提供商,最早提供r e a la u d i o 格式的 音频流媒体,开创了互联网流媒体广播的先河。后来又并购了x i n e 公司,整合提 供音视频流媒体服务。发展到今天,r e a l 公司提供了从制作端、服务器端到客户 端的全套产品,在很广的范围内以很快的连接速度提供较好的多媒体效果,并具 有较好的系统管理和可伸缩能力。r e a l 公司r e a lm e d i a 格式包括r e a l a u d i o ,r e a l d e 和r e a lf l a s h 格式。r e a l 公司的媒体采用r e a l 的专用算法,具有较高的压缩 比,在网络传输上面,能够根据用户的网络连接速率选择最佳压缩比率的r e a l 文件,即所谓的s u r es t r e a m 技术。 r e a l 公司产品最大的特点是压缩比高,以较小带宽提供较高的质量,因此在 早期网络带宽较低时占有很有利的优势,形成一个稳定的用户群。 微软公司的流媒体产品 微软公司的流媒体产品是其w i n d o w sm e d i a 产品,同样提供从媒体编码制作 到媒体服务器和媒体播放器,以及d r m 版权保护等完整的流媒体解决方案。 w i n d o w sm e d i a 使用的音视频压缩方式在m p e g - 4 的早期草案上【1 2 】,进行了大量 的修改和优化,发展到最新的w m v 9 时,压缩效率有了很大的提高,其编码的 c o d e 被标准化为v c l ,并被确定为s m p t e ( s o c i e t yo fm o t i o np i c t u r ea n d t e l e v i s i o ne n g i n e e r s ) 的标准。流传输协议早期使用m m s 协议,后来增加了i i t l e r t s p 协议的支持,但微软对这些协议进行了大量不公开的修改,不能够与其他 客户端兼容和互连互通。 微软公司的流媒体产品的凭借其操作系统的垄断优势得到很大的发展,并且 其产品和操作系统结合度高,操作简易保持移植。另外,除了与标准的不兼容外, w i n d o wm e d i a 产品只能用于微软视窗平台,不能用于其他平台。 苹果公司的流媒体产品 a p p l e 公司在多媒体领域有着业界领先的地位。a p p l e 公司在1 9 9 1 年开始发 布q u i c k l i m e ”堤数字媒体领域事实上的工业标准,q u i c k l i m e 不仅仅是一个媒体 播放器,它还制定了文件格式的定义,既提供媒体制作的完美平台,同时又是一 个多合一的应用程序套装。这些应用程序协同工作,为业界提供了第一个完整的、 基于标准的数字媒体发布系统。当前很多电影公司的预告片,以及f o x , b b c 等 实况转播,都是通过q u i c k l i m e 技术来完成的。a p p l e 公司还将其流服务器产品 q u i c k l i m es t r e a m i n gs e r v e r 产品开放源代码成为d a r w i ns t r e a m i n gs e r v e r 项目并移 植到多个平台上,d a r w i ns t r e a m i n gs e r v e r 的很多特性都成为了流媒体界的工业事 实标准,其中的媒体存储格式1 1 4 】,h i n tt r a c k 格式己经被i s o ,i s m a 等标准组织采 纳成为正式标准。 苹果公司是一家充满创造力的公司,在公开其所使用的技术的同时,凭借其 5 重庆大学硕士学位论文2 流媒体和集群技术概述 优秀的设计和创意领导多媒体领域,其i p o d ,i t u n c 等产品都是其中杰出的典范。 2 1 3 流媒体典型应用视频点播系统概述 v o d 即v i d e oo nd e m a n d 的英文简称,就是我们所说的视频点播,在本文 中,我们对v o d 作如下的定义:v o d 是一种多媒体网络服务,它使用户能够在 任何时间通过网络从服务器中访问到任何多媒体数据内容,并能对使用过程施加 控制。 由此可见v o d 应用有三个特点【1 5 】: v o d 提供的内容是用多媒体数据表示 的,并以多媒体信息的点播服务为主,这一特点使v o d 应用区别于现有的以提 供文本或其他非连续信息为主的网站服务。v o d 采用c l i e n t s e r v e r 结构,多媒 体数据来自于网络上的服务器,这一点使v o d 区别于本地多媒体应用。v o d 是一种交互式应用,用户在使用过程中可以施加控制,这一点使v o d 应用区别 于下载后播放。 v o d 系统由三部分组成:服务器、客户端和将它们连接起来的通信网络。在 v o d 系统中,用户通过客户端设备进行点播。用户在服务器上选择感兴趣的多媒 体节目,服务器将节目文件数据通过网络实时地传送到客户端设备上。数据一般 是压缩过的,客户端设备解压数据并将它播放出来。数据播放过程中,用户可以 对数据进行交互控制如快进、慢放、倒放、定位和暂缓恢复等。 v o d 是一种综合性应用,涉及许多相关技术,我们按v o d 结构将这些技术 归为一下四类【l6 】: 数据压缩与解压缩技术:现在已经有了种类繁多的各类数据压缩技术,能 够适应不同应用环境的需求,其中应用最为广泛的是m p e g 系列标准,如 【p e ( - 1 、m p e g - 2 、m p e g - 4 等。 流媒体服务器:流媒体服务器是整个v o d 应用系统的中心,它负责存储 多媒体数据和发送连续的数据流,流媒体服务器中涉及以下主要技术: 1 ) 允许控制:对于任何服务器而言,能服务的并发用户数目总是有限的,因 而对用户的访问必须进行允许控制。允许控制策略一方面要能保证资源的利用率, 另一方面又必须保证每个用户的服务质量,尤其是已有用户的服务质量不能受到 新加入用户的影响。 2 ) 实时任务调度:多媒体信息通常具有严格的时序性,因而要求对多媒体任 务进行实时调度。调度有三种:c p u 调度、磁盘调度和网络调度。保证实时任务 的调度时限是实时任务调度的主要目标。 3 ) 服务策略:对于一个特定的v o d 系统,其资源总是有限的。通过节目流数 据复用,使多个用户能共享点播流的部分或全部数据,能降低每个用户请求的资 源需求,从而扩展系统服务规模。服务策略研究的主要问题就是实现简单而高效 6 重庆大学硕士学位论文 2 流媒体和集群技术概述 的带宽复用策略,以有限的资源支持更多甚至无限的用户。 4 ) 数据布局:因为媒体文件的数据量通常非常大,数据布局方案要求能降低 数据的冗余度;另一方面,在多节点服务器构成的v o d 环境中,数据布局方案 应能防止访问偏斜的发生,实现节点间的负载平衡。 通信网络:通信网络技术包括三个方面:骨干网带宽技术、接入网带宽技 术和新型网络协议的研究。 客户端技术:相对流媒体服务器,客户端功能较为简单,主要完成数据的 接收、解码和回放。在特定的服务策略和相关应用下,还有多流接收和数据缓存 功能。客户端设备可以多种多样,既可以是多媒体计算机或工作站,也可以是机 顶盒加电视等电器设备,甚至可以是手机等移动终端设备。 2 2 集群技术概论 2 2 1 集群的概念 集群技术是一种计算机系统之间连接的方式,运用它可以将分散的计算系统 连接起来完成原来单独节点的计算系统无法完成的任务,最早的集群系统就是出 于这样的并行处理的目的出现的f 1 7 1 。但是随着计算机性能的发展和网络不安全因 素的出现,系统的稳定性和可靠性是人们主要面临解决的问题。人们开始使用集 群方式将两台以上的设备连接起来,当整个集群系统中发生单点或者局部多点故 障时,集群中其他的计算机将自动来接替出故障设备。对于集群系统来说,计算 机的架构是一个非常重要的问题。同种架构的计算机之间,可以比较容易实现集 群连接,一般来讲都是由厂商提供的集群软件。对于异构的计算机系统,一般没 有特别多的选择,目前类似j a v a 的虚拟机技术可以解决部分跨平台的问题。集 群技术可以有效地解决开放系统的稳定、抗压和负载平衡问题。 由于应用范围的不同,所以在集群系统的设计上也有不同的重点,最常见的 集群应用包括高性能科学集群和商业应用集群 1 5 】。科学集群是一种专门为解决复 杂的科学计算设计的集群系统,它不使用专门的并行超级计算机,却使用常用的 操作系统,通过高速连接来互联一组相对简单的单机服务器,并且在公共消息传 递层上进行通信以运行并行应用程序。目前很多超级计算机也是通过集群技术得 到的,特别是近年,名列世界t o p 5 0 0 的超级计算机多数指集群系统,说明在构 建超大规模计算系统时,集群是主要的系统构成方式【1 9 1 。在科学计算中,集群应 用又包括如下几个方面:大规模模拟应用;生物信息学,基因拼接等;素数运算 等。商业应用集群则主要应用在海量数据处理和网络应用等方面,根据其应用中 的侧重点,又可以分为负载均衡集群( l o a db a l a n c , ec l u s t e r ) _ 乖g 高可用性集群( h i g h a v a i l a b i l i t yc l u s t e r ) 。 7 重庆大学硕士学位论文 2 流媒体和集群技术概述 负载均衡集群为企业需求提供了更实用的系统。如名称所暗示的,该系统使 负载可以在计算机集群中尽可能平均地分摊处理。该负载可能是需要均衡的应用 程序处理负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大 量用户 2 0 j 。每个节点都可以处理一部分负载,并且可以在节点之间动态分配负载, 以实现平衡。对于网络流量也是如此。通常,网络服务器应用程序接受了太多入 网流量,以致无法迅速处理,这就需要将流量发送给在其它节点上运行的网络服 务器应用。还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。 高可用性群集的出现是为了使群集的整体服务尽可能可用,以便考虑计算硬 件和软件的易错性。如果高可用性群集中的主节点发生了故障,那么这段时间内 由次节点代替它。次节点通常是主节点的镜像,所以当它代替主节点时,它可以 完全接管其身份,并且因此使系统环境对于用户是一致的。 2 2 3 常见的集群系统 t u r b o c l u s t e r t u r b o c l u s t e r 是t u r b ol i n u x 公司开发的高可用性集群系统【2 1 】,它是一个企 业级的集群方案,它允许在多个计算机上构建高可用的、可扩展的网络。它支持 i n t e l 和a l p h a 芯片,支持l i n u x 、w i n d o w sn t 和s o l a r i s 操作系统平台。使 用t u r b o c l u s t e r 系统可以显著地提高基于t c p i p 协议的多种网络服务的服务 质量,这些服务包括w e b 、m a i l 、n e w s 和f t p 等。t u r b o c l u s t e r 具有良好的可 用性、可扩展性和可管理性,集群内部的实际服务器的数量可以扩充到无限台。 t u r b o c l u s t e r 是一种基于软件的集群系统解决方案,它还能够支持异构的网 络环境。它的结构如图2 1 所示: 图2 1t u r b o c l u s t e r 的结构 f i g 2 1 t u r b o c l u s t e r a r c h i t e c t u m 重庆大学硕士学位论文2 流媒体和集群技术概述 当用户向集群系统发送一个请求时,该请求首先到达高级流量管理器,高级 流量管理器通过一定的调度策略将此请求转发到集群中的某一台实际服务器上对 此请求进行处理,最终的回应请求将直接发送给客户。由于最终的回应请求没有 通过高级浏览管理器而是直接发送给客户,这样大大减轻了高级浏览管理器上的 负载,从而降低了瓶颈产生的可能。t u r b o c l u s t c r 中采用的调度策略有:轮回 ( r o u n dr o b i n ) 、加权轮回( w e i g h t e dr o u n dr o b i n ) 、最少连接( l e a s tc o n n e c t i o n ) 。 为了减少高级流量管理器产生失效的可能,t u r b o c l u s t e r 为高级流量管理器准备 了一个备份机。该备份机不断询问管理器来确认它正在正常工作,一旦发现主管 理器已经失效,备份机将接替它继续工作。 t u r b o c l u s t e r 具有如下一些增强的性能。 1 ) 通过h e a r t b e a t 在备份机上监测流量管理器的运行状态来提供更高的可 用性。 2 ) 对不可预测的系统或应用程序的失效进行自动管理。 3 ) 提供动态的负载平衡,它能够消除瓶颈并且处理峰值负载。 4 ) 高级流量管理器只转发已经授权的请求,通过在实际的应用程序服务器的 前端增加虚拟防火墙来提高网络的安全性。 5 ) t u r b o o l u s t c r 对外只显现出流量管理器的m ,而集群系统中的实际服务器 的口地址对外界而言是不可见的。 6 ) 当实际服务器正在对外界提供服务时就可以对它进行维护工作。 m o s i x m o s i x 2 2 为l i n u x 核心增添了集群计算的功能。它支持的操作系统平台有 b s d o s 和l i n u x ,它允许任意多个基于x 8 6 p e n t i u m 的服务器和工作站协同工 作。在m o s i x 集群环境中。用户无需对应用程序进行修改,或将应用程序与库 连接起来,或将应用程序分配到不同的节点上运行。m o s i x 会自动将这些工作 透明地交给别的节点来执行。 m o s i x 的核心是适应性的资源管理算法,它对各节点的负载进行监测并做 出相应的回应,从而提高所有进程的整体性能。它使用抢先的进程迁移方法来在 各节点中分配和再分配进程,从而充分利用所有的资源。适应性的资源管理算法 具体上又包括适应性的负载平衡算法、内存引导算法和文件i o 的优化算法。这 些算法都对集群中的资源使用情况的变化做出响应。如:节点上的不平衡的负载 分布或由于内存不足而导致的过多的磁盘换入换出。在这种情况下,m o s i x 将 进程从一个节点迁移到另外一个节点上,从而来均衡负载或将进程迁移到有足够 的内存空间的节点上。 由于m o s i x 是在l i n u x 的核心中实现的,因此它的操作对应用程序而言 9 重庆大学硕士学位论文2 流媒体和集群技术概述 是完全透明的。可以用它来定义不同的集群类型,这些集群中的机器可以相同也 可以不同。m o s i x 集群中的每个节点既是主节点又是服务节点,不存在主控节点。 对于那些在本地节点创建的进程而言,该节点就是一个主节点;对于那些从远方 节点迁移过来的进程而言,该节点就是服务节点。这意味着可以在任意时刻向集 群中增加节点或从集群中删除节点,而不会对正在运行的进程产生不良的影响。 m o s i x 的另外一个特性就是它的监测算法能够监测每个节点的速度、负载、可用 内存、i p c 以及i or a t e 。系统使用这些信息来决定将进程发送到哪个具体的节 点上。当在某个节点上创建了一个进程以后,该进程就在这个节点上执行。当该 节点的负载超过了一定的阈值以后,就将该进程透明地迁移到别的节点上继续执 行。 m o s i x 文件系统采用直接文件系统访问的方法,它可以允许迁移到别的节 点的进程在本地进行i o 操作。这样就减少了需要进行i o 操作的进程与创建 该进程的节点之间的通讯,从而允许这些进程更加自由地在集群中的节点中进行 迁移。m o s i x 文件系统使所有节点都可以像访问本地文件系统一样透明地访问 其它节点上的所有目录和文件。一个低端的m o s i x 配置可以包含通过以太网连 接起来的多台p c 机。一个较大的配置可以包含通过快速以太网连接起来的多台 工作站和服务器。高端的m o s i x 配置可以包含通过c d g a b i t - e t h e m e t 连接起来 的多台s n i p 或非s n i p 工作站和服务器。 l i n u xv m u a ls e r v e r l i n u x 虚拟服务器( l i n u x v l r t u a ls e r v e r , l v s ) 是目前常见的集群系统之一。它 建筑于实际的服务器集群之上,用户看不到提供服务的多台实际服务器,而只能 看见一台作为负载平衡器的服务器 2 3 1 。实际的服务器通过高速局域网或地理上分 散的广域网连接。实际服务器的前端是一台负载平衡器,他将用户的请求调度到 实际服务器上完成,这样看起来好像所有服务都是通过虚拟服务器来完成的。 l i n u x 虚拟服务器能够提供良好的可升级性、可靠性和可用性。用户可以透明地 增加或减少一个节点,可以对实际服务器进行监测,如果发现有节点失败就重新 配置系统。 l v s 提供了八种调度算法:轮f n ( r o u n dr o b i n ) ,加权轮d q ( w e i g h t e dr o u n d r o b i n ) ,最少链接( l e a s tc o n n e c t i o n s ) ,加权最少链接( w e i g h t e dl e a s tc o n n e c t i o n s ) , 基于局部性的最少链接( l o c a l i t y - b a s e dl e a s tc o n n e c t i o n s ) 带复制的基于局 部性最少链接( l o c a l i t y - b a s e dl e a s tc o n n e c t i o n sw i t hr e p l i c a t i o n ) ,目标地 址散列( d e s t i n a t i o nh a s h i n g ) ,源地址散列( s o u r c eh a s h i n g ) 。 l v s 提供了三种口级的负载平衡方法:v m u a ls e r v e rv i an a t 、v i r t u a l s e r v e r v i a i p t u n n e l i n g 、v m u a l s e r v e r v i a d i r e c t r o u t i n g 。具体的介绍见后面章节。 1 0 重庆大学硕士学位论文2 流媒体和集群技术概述 l v s 项目从成立到现在为止,受到不少关注,l v s 集群系统已被应用于很 多重负载的站点,该系统已在美、英、德、澳等国的几十个站点上正式使用。 一些著名的应用实例如下:l i n u x 的门户站点( w w w 1 i n u x c o r n ) 用l v s 将很多 台v al i n u xs m p 服务器组成高性能的w e b 服务。s o u r c 宅f o r g e ( s o u r c e f o r g e n e t ) 是在全球范围内为开发源码项目提供w e b 、f t p 、m a i l i n g l i s t 和c v s 等服务, 他们也使用l v s 将负载调度到十几台机器上。红旗l i n u x 和中软都提供基于 l v s 的集群解决方案。 2 3 本章小结 本章首先主要介绍了流媒体技术,流媒体( s t r e a m i n gm e d i a ) 指i n t e m e t i n t r a n e t 中使用流式传输技术的连续实时媒体,流媒体实现的关键技术就是流式传输。然 后对r e a ln e 帆v o r k , m i e r o s o r , a p p l e 这三个公司的主要流媒体产品进行了介绍。接 下来是对常见的集群系统- t 1 】m c l u s t e r 、m o s i x 和l v s 的发展情况、工作原 理作了一定的介绍。 重庆大学硕士学位论文 3 可扩展流媒体服务器系统设计 3 可扩展流媒体服务器系统设计 3 1 流媒体服务器系统 3 1 1 流媒体服务器扩展方法 单机服务器系统的性能和服务规模有限,只能支持少量的用户同时点播。为 提供更多用户的服务,必须提高服务器服务器系统的性能。 从硬件和体系结构的角度而言,提高服务器系统性能和服务规模有以下三种 途径【刎: 采用更高性能的部件:如用1 0 0 0 m 网卡取代1 0 0 m 网卡,用6 4 位总线取 代3 2 位总线,或使用更高频率的总线,用高性能的s c s i 硬盘盘阵取代i d e 硬 盘等。但这种方法能获得的性能提升终究有限,且高性能的部件往往意味着更高 的价格,对提高系统的性能价格比不利。 部件子系统冗余配置:通过增加部件子系统的数量来提高系统性能。单 机服务器中有两类部件子系统是可以扩展的,网卡网络子系统和硬盘存储子系 统。对网络子系统的扩展主要是扩展其带宽,如多加几块网卡可以提高服务器的 网络吞吐率;而对存储子系统的扩展则涉及到两个方面的扩展:1 ) 存储容量的扩 展:2 ) 存储带宽的扩展。需要特别指出的是,单纯地增加硬盘或存储子系统的数 量并不必然导致存储容量的扩展。如将服务器中的盘阵由1 个增加为2 个,但在 两个盘阵中存储相同的内容。这样,虽然存储容量的绝对值扩展了1 倍,但系统 实际存储的视频内容量没有扩展,因而认为存储容量

温馨提示

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

评论

0/150

提交评论