分布式VOD系统中集群视频服务器的设计与实现_第1页
分布式VOD系统中集群视频服务器的设计与实现_第2页
分布式VOD系统中集群视频服务器的设计与实现_第3页
分布式VOD系统中集群视频服务器的设计与实现_第4页
分布式VOD系统中集群视频服务器的设计与实现_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

1、华中科技大学硕士学位论文分布式VOD系统中集群视频服务器的设计与实现 姓名:昌玉芳申请学位级别:硕士专业:通信与信息系统指导教师:黄本雄20060425摘要近年来,为了满足日益增大的网络视频流量, VOD 系统在网络和视频服务器端都 面临着极大的挑战。由于网络带宽的增长远远快于服务器性能的提高,所以瓶颈问题 主要集中在视频服务器上。服务器集群由于具备负载均衡、高可用性和可扩展性,成 为提高服务器性能问题的一种较为理想的解决方法。本文从建设大规模视频点播系统 出发, 针对提升服务器系统的性能这一目标, 对 VOD 视频服务器集群系统的设计与实 现方法作了一些系统性的探讨和研究, 力图使廉价的 P

2、C 机通过低耦合的分布式体系构 成一种可扩展、负载均衡、高可用、高性能的 VOD 视频服务器。通过对 VOD 系统的概念和基本结构、集群系统的理论及其负载均衡技术的分析, 提出了基于集群的 VOD 系统视频服务器模型, 分为广域网框架和局域网框架两层。 基 于集群的广域网分布式 VOD 系统由一个中心和多个分中心的二级架构组成; 每个分中 心相当于一个局域网,其中包含一个视频服务器集群。每个视频服务器集群又由一个 集群管理节点和若干个视频服务节点组成。首先给出了局域网视频服务器集群负载均衡、 高可用性和动态扩展的设计方案。 负 载均衡是由视频服务器集群中集群管理节点上的负载均衡调度器,根据某种

3、负载均衡 算法来实现的。针对视频服务中不同的点播方式、视频文件存储调度的特点和视频文 件的播放信息等问题,在一般负载均衡算法的基础上,给出了适用于视频点播服务的 负载均衡算法。高可用性的实现包括集群管理节点和视频服务节点两方面,集群管理 节点可采用联机热备份来避免单点故障,视频服务节点的高可用性基于它和集群管理 节点之间汇报包的检测,其故障由集群管理节点检测和接管。动态扩展在不改变原来 系统正常运行的情况下,通过添加视频服务节点来提升系统的性能。随后,将设计方 案扩展到广域网中,讨论了广域网下系统的负载均衡和扩展性。整个系统须构建在 Linux 之上,视频服务器采用 Linux Virtual

4、 Server(LVS集群系 统,给出了局域网视频服务器集群系统的实现方案:详细描述了基于 LVS 的视频服务 器集群的构建过程,并对视频服务器集群系统中集群管理节点和视频服务节点两者间 及其对外的交互功能的实现进行了探讨。 最后给出了这个 VOD 视频服务器集群的测试 方案和测试结果。测试实验表明,此方案能够实现负载均衡、高可用性和可扩展性, 达到了提高视频服务器性能的要求。关键词:视频点播;视频服务器;分布式;集群; Linux 虚拟服务器;负载均衡IAbstractFor recent years, to satisfy the increasing access loading req

5、uirements of Internet video services, VOD system is likely to face a number of challenges at both the network and server side. With the network bandwidth increasing much faster than the server capacity, more and more bottlenecks will be observed on the server side. Cluster becomes a comparative idea

6、l method for enhancing the performance of video server because of its load balancing, high-availability and scalability. This paper made a systematic research of the VOD video server cluster system design and implementation, and tried to use a distributed architecture to make common PCs a video serv

7、er with load balancing, high-availability, scalability and high-performance for the purpose of building a large-scale video server system.After analyzing the basic structure of VOD system and cluster technology, we proposed a VOD video server cluster model which is consisting of Wide Area Network (W

8、AN framework and Local Area Network (LAN framework. The distributed VOD system under WAN framework includes a center and several sub-centers, and every sub-center works in a LAN which has a video server cluster system in it. A video server cluster also includes two parts: a cluster management node a

9、nd several video service nodesFirstly, the design for load balancing, high-availability and scalability of LAN video sever cluster system is described. Load balancing is implemented by the load balancing scheduling component, which is on the cluster management node of video sever cluster system, by

10、using certain load balancing algorithm. The paper presents a load balancing algorithm in applying to VOD server based on a study of common load balancing algorithms while considering the characteristics of video files, like storage, playing mode and stream rate. High-availability scheme of cluster m

11、anagement node and video service node are discussed. To avoid single point of failure, cluster management node uses a backup. And video service node uses heartbeat message to connect with cluster management node which can detect and take over its failure. Dynamic extension can add video service node

12、s without changing the current running status. In addition, schemes for load balancing and scalability of a video server applied to WAN are discussed.The operating system of VOD server is Linux, so Linux virtual server (LVS is used for building the video server cluster. The approach of implementing

13、a LVS video server cluster is described detailedly. It also gave a full implementation of interactive functions for cluster management node, video service node and client side. Through testing, it shows the load balancing, high-availability and scalability of this video server, and proves that using

14、 the cluster scheme can achieve the requirement for improving performance.Keywords :VOD; video server; distributed; cluster; LVS; load balanceII独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。学位论文作者签名:日

15、期:年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。保密 ,在 _年解密后适用本授权书。不保密。(请在以上方框内打“” 学位论文作者签名:指导教师签名:日期:年 月 日 日期:年 月 日本论文属于I1 绪论1.1 引言随着互联网和 Web 技术的发展,人们可以主动、及时地从互联网上获得所需要的 信息, 包括多媒体信息, 互联网逐渐发

16、展成为继电视之后覆盖面最大的一个新兴媒体 1。 但受网络结构、网络带宽等因素的制约,人们获取的多媒体信息目前也主要是文字、 图片等静态信息。人们迫切需要能够像获取文字图片信息一样,从网络上随时、主动 获得自己所需的动态图像信息,观看视频节目 2,视频点播 (VOD技术应运而生。 所谓 VOD , 就是 Video On Demand3的缩写, 其中文意思就是根据用户的要求播放 节目的视频系统。单个用户具有对大范围的影片、视频节目、游戏、信息以及其他服 务实时访问的能力,从而改传统的、被动的、广播式的信息灌输为新型的、主动的、 根据自己所需而进行的信息获取。由于用户和被访问的资料之间的这种高度交

17、互性带 来的巨大方便,该技术已经迅速进入市场,成为人们生活、学习和娱乐的一个重要手 段。近年来,随着 Internet 技术的发展,主干网和接入网速率不断提高,为宽带应用提 供了必需的硬件基础设施; 同时, 越来越多的人希望交互式 4地观看各类视频节目, 对 来源于网络的高品质的视频、音频等多媒体信息的需求也日益增大。在这种情况下, Internet 流量也在与日俱增。 为了满足日益增大的网络视频流量, VOD 系统在网络和视 频服务器端都面临着极大的挑战。由于网络带宽的增长远远快于服务器性能的提高,网络带宽的瓶颈问题日趋减弱, 服务器的性能问题逐渐显现出来:随着访问人数和访问频率的增加,越来

18、越多的客户 将请求发送到服务器,服务器的负荷不断增加,客观存在的物理内存、 CPU 的处理速 度以及操作系统等各方面的制约使服务器处理能力很快会成为瓶颈 5。 于是, 响应时间 必然是越来越长;对于无法及时处理的请求,还会造成数据丢失等情况,更严重的是 这将导致一些请求由于超时而重发,这样不仅加重了传输线路的负载,也更加重了网 络设备和服务器的处理负担,严重的可能直接导致整个系统的崩溃。在视频点播业务 中,对于海量的视频节目数据,其存储、传输、大量并发性访问等问题使其与在目前 互联网上流动的文本、图像信息有很大的差别,如何有效的实现一个可同时服务大量 用户、覆盖面积广、存储巨量节目的视频点播系

19、统己成为人们日益关心的问题。同时, 视频服务器作为视频点播系统中最关键的部份,不仅要完成多媒体内容的存储,还要 完成视频内容的传送,另外还包括影片的管理、检索、计费以及其他服务。如何提高1视频服务器的性能,使其能够承受大负载量也成为问题的关键。1.2 研究背景提高视频服务器性能的根本目的是增加并发用户数量 6。从技术发展上看,增加点 播用户量的途径有三个,即在满足视频质量要求的前提下降低视频流的传输率、用广 播技术实现点播以及采用大规模的体系结构。研究大规模视频点播系统的体系结构是目前的热门课题, 因为计算机系统性能的提 高除了器件这个最根本的因素外,改进计算机体系结构也是非常重要的因素。计算

20、机 系统性能的飞速提高是与高度并行化、分布化、层次化、流水化等体系结构技术的发 展紧密相关的。然而在视频服务器的发展中并未表现出这种趋势,视频服务器性能现 有提高速度甚至低于计算机部件和网络带宽的增长速度,这显示出体系结构技术的发 展滞后于基础部件的发展。在任何系统中总是存在某种瓶颈,解决问题的关键在于能 否用某种有效的策略来缓解瓶颈部件对系统总体性能的限制。下面对比了视频服务器 体系架构目前的一些应用情况,通过分析给出本文的研究目标。PC 级视频服务器是由一些级别较高的 PC “改装”而成的,处理能力有限,一般适 用于卡拉 OK 歌厅系统、酒店系统等小型应用系统,提供的并发视频流数目一般在

21、50上下, 这些视频服务器和普通的 PC 在结构上没有本质区别, 只是配置了专门的视频输 出卡,运行相应的点播软件,这种视频服务器具有相对较低的价格。高性能专用服务器由厂商提供全面的流媒体服务解决方案, 其产品为流媒体服务量 身定做,因此很具吸引力。这种服务器的存储、网络 I/O等完全针对视频应用而设计, 根据不同的接入网络和系统需求, 提供以太网服务模块、 ATM 接口服务模块、 DVB-AS1接口服务模块和 QAM 接口服务模块等,并提供操作系统和流媒体应用软件。国内外 一些公司和科研机构已经推出的一系列的具有强大功能的流媒体视频服务器 7中, 比较 著名的有 Microsoft 公司的

22、Media Player Server系列, Real Networks公司的 Real Server系列和 Apple 公司的 QuickTime Streaming Server系列, 开放源代码的 Darwin Streaming Server 。但是商业公司提供的产品价格昂贵;开放源代码的软件难以配置和管理,维护 成本高;而且专用服务器也存在最大并发流限制,在网络的扩容和升级方面存在一定 的缺陷 8。 SYNLEAD 的 ixJet Streaming VOD System,最多只能支持 300个并发用户, 但价格便宜; nCube 公司的 MediaCube4最多可支持数万个并发客户

23、,但其一个流的许可证就高达数百美元,不是一般用户所能接受的。当前,大多数 VOD 系统采用的是集中式结构,所有的视频服务都由一个中心服务 器提供。这一结构最突出的优点是实现和管理简单,在用户数量不多的小规模应用上 有一定的优势。但是集中式的结构也限制了其扩展性,受到服务器 I/O能力或网络带 宽的限制等影响,所能提供的并发流有一定的上限,无法适应大规模的应用 910。 图 1-1是一个集中式 VOD 系统的结构图。影片库存放所有的影片文件,视频服务 器处理所有的影片点播请求。作者之前在这方面的研究工作表明在局域网环境中(如 小区、 学校、 酒店等 , 这种结构能很好地工作。 按照 1.5Mbp

24、s 的 MPEG4影片流, 300个并发流计算,最大带宽需要 1.5Mbps ×300=450Mbps,千兆网已经足以满足要求。 图 1-1 集中式 VOD 系统结构图然而在广域网的应用上, 由于用户在数量级上的增加, 对网络带宽的要求也越来越 高。就 1000个并发流计算,需要的带宽就达到 1.5Mbps ×1000=1.5Gbps ,而在广域网 应用上并发流远不止 1000个, 这对主干网是个不小的压力。 因此, 提出了分布式 VOD 系统 1112的概念,它可以看成是分布在不同区域的视频服务器的联合。即在广域网的 应用中划分出子区域来,分别在各子区域中配置服务节点,为

25、该区域提供视频点播服 务,从而降低主干网络负载以及各个节点的负载 1314。这样,对于在集中式系统结构 中可能出现的瓶颈,就可以分布到整个网络中进行解决,即使视频服务器使用较为普 通的微机,也能达到较高的服务水平,可以为中型甚至大型网络提供服务,而且价格 上有很强竞争力 15。该系统的关键思想还在于它是一个双重可扩展的系统,可以根据 用户的数量和区域来调整节点数目和服务区域,以解决带宽问题。单机架构的视频点播系统的服务器普遍存在如下一些问题:视频服务器容量有限, 缺乏负载均衡的能力,容错性差。为了满足日益增长的客户访问量带来的沉重负载, 必须提高服务器的性能。但是, 简单地提高单台服务器性能的

26、方法不能从根本上解决问题, 因为提高单台服 务器的性能是一种昂贵的、难以扩展的方案:服务器的性能将随着需求的增加而需要 不断地提高扩充内存、升级 CPU 、增加硬盘、使用磁盘阵列等,从图 1-2可以得 知,在单机系统中,随着硬件从低端到高端,其成本和性能之比呈指数上升,单纯地 增加服务器性能,不仅投入巨大,而且效果有限。而且这种方案在系统维护和升级的 期间,系统提供的服务将被迫中断;再者这种方案存在着单点脆弱性,单台服务器的 任何部件稍有闪失,都会给系统所提供的服务带来问题 16。于是人们开始研究采用多 台 Internet 服务器分担负载的方法来扩展单服务器的性能。 Internet 多服务

27、器技术可分 为两类:多个服务器镜像方法和服务器集群方法 17。图 1-2 单机性能与成本比多个服务器镜像方法是使用多个内容一致的服务器镜像结构, 将多个内容完全一致 的服务器放置在不同的地点,由用户自己来选择离自己最近的服务器提供服务。这种 方法的缺陷是它不能做到对用户透明,系统也不能控制请求的分配 18。服务器集群是一组通过网络连接起来的服务器, 每一台服务器都存储有用于客户访 问的信息, 所有集群中的服务器对外界的客户则采用单一的 IP 地址, 即虚拟地址 (VIP, 在用户看来它们像是一个计算机,这样也就做到了对用户的透明。这种做法的优点 19主要是:提高系统利用率:将客户请求均匀地分布

28、在多台服务器上, 在多台服务器间实现负 载均衡,降低了对单台服务器的性能要求,使系统利用率大大提高。 提高系统可用性:当集群中的某一台服务器出现故障的时候, 集群中的其他服务器 不受影响,仍可正常提供服务,并及时处理指向故障服务器的请求。系统具有可扩展性:当集群性能不能满足需求时, 可以通过简单地增加服务器的办 法扩展系统,从而系统能够非常方便地升级,并且在升级期间不影响其他服务器的正 常工作。总之,集群是一群以网络技术连接起来的工作站或 PC 机的组合,整个系统象一个 单独集成的计算资源一样协同工作 20。随着集群技术的发展和 PC 机处理能力的不断 提高, 基于集群的 PC 机和工作站成为

29、设计大规模高性能 VOD 系统的一种理想选择 21。 很多国内外公司和研究机构纷纷开发了自己的视频服务器集群系统,例如,微软的 Tiger 22,挪威科技大学的 Elvira 23, IBM 公司的 Tiger Shark24,华中科技大学的 WanLan 2526等。集群视频服务器 27越来越成为多媒体服务研究的热点。因此,本文从建设大规模视频点播系统 28出发,针对优化和提升服务器系统的性 能这一目标, 对 VOD 视频服务器集群系统的设计与实现方法作一些研究和探讨, 力图 使廉价的 PC 机通过低耦合的分布式体系构成一种可扩展、 负载均衡、 高可用、 高性能 29的 VOD 视频服务器,

30、 使之能提供大规模的、 高质量的、 适合广域范围内用户的视频 服务。本文研究的基于集群的 VOD 视频服务器既能在局域网内应用,又可在扩展后应用 于电信级的大规模范围,具有广泛而良好的应用前景。1.3 课题来源本文以福建实达华中研发中心的 VOD 系统的开发项目为课题来源。课题组已经在 Windows 平台下开发了一套单机系统,并已投入到酒店及 KTV 等小规模商业用途中, 取得了阶段性的成功。但是,随着客户机数量和密集点播任务的增加,采取单一的服 务器不能满足日益增加的用户负载需求。为了满足国内日益高涨的对视频点播等多媒 体娱乐方式的需求,需要设计并实现具有高并发能力、高存储能力、高可靠性和

31、可扩 展的电信级 VOD 系统。针对这些特点,提出一种分布式 VOD 视频服务器集群系统的 设计与实现方法, 将原系统移植到 Linux 下, 并根据 Linux 的和集群技术特点对该系统 性能进行优化,使该系统成为一个具有高性价比、高可用、便于扩展的通用网络视频 应用平台。如果该系统能成功实现,将会给投资公司带来巨大效益,同时也将促进视 频应用服务的发展。1.4 本文研究内容及章节安排VOD 系统视频服务器的性能问题是影响视频服务的瓶颈所在,简单的提高单台服 务器的性能不能从根本上解决问题。本文以建立大规模视频点播系统为出发点,通过 改善服务器的体系结构,达到提高视频服务器性能的目的。主要研

32、究内容如下:通过对 VOD 和集群系统的理论分析,提出了基于集群的 VOD 系统视频服务器模 型,分为广域网框架和局域网框架两层进行设计。探讨了集群系统中负载均衡的算法和实现技术, 并结合视频服务中播放方式、 调度 存储和视频文件播放信息等问题,在一般的负载均衡算法基础上进行了改进,提出了 适用于视频点播服务的负载均衡算法。研究了视频服务器中集群管理节点和视频服务 节点高可用性的实现。集群管理节点通过采用联机热备份来避免单点故障,视频服务 节点的高可用性基于它和集群管理节点之间汇报包的检测,其故障由集群管理节点检 测并接管。讨论了系统的可扩展性,阐述了在不改变原来系统的正常运行的情况下添 加服

33、务节点的动态扩展方法。在上述研究的基础上,给出了广域网下系统的负载均衡 和扩展性设计方案。将集群技术和 Linux 结合起来,分析和比较了 LVS 负载均衡技术的实现方案,在 Linux 虚拟服务器上构建了视频服务器集群系统。详细阐述了基于 LVS 的集群系统的 构建过程,并对视频服务器集群系统中的集群管理节点和视频服务节点两者间及其对 外的交互功能的实现进行了探讨。 最后, 给出了该 VOD 视频服务器集群的测试方案和 测试结果。本论文的章节安排如下:第一章为绪论, 介绍了文章的研究背景、 课题来源以及本文的研究内容和组织结构。 第二章综述了视频点播系统的相关概念、 基本结构和传输协议。 介

34、绍了集群系统的 相关理论,包括集群的概念、结构。对负载均衡实现技术和算法等集群系统的关键技 术做了深入分析,研究了基于 Linux 虚拟服务器的集群系统技术。第三章提出了基于集群的分布式 VOD 系统视频服务器模型,分为广域网框架和局 域网框架两层。随后,给出局域网视频服务器集群负载均衡、高可用性和动态扩展的 设计方案。再将设计方案扩展到广域网中,讨论了广域网下系统的负载均衡和扩展性。 第四章说明了系统需求、 实现 LVS 的核心技术和系统的实现环境。 给出了基于 LVS 的视频服务器集群的模型,并详细说明了基于 LVS 集群系统的构建过程。对视频服务 器集群管理节点及视频服务节点两者间及其对

35、外的交互功能的实现进行了探讨。 第五章给出了局域网 VOD 视频服务器集群的测试方案和测试结果。第六章对全文进行了总结,并对课题的进一步研究提出了一些看法。2 VOD与集群技术综述本章是全文的理论基础, 介绍了视频点播系统和集群系统的相关理论, 分析了集群 负载均衡的算法和实现技术,并就基于 Linux 虚拟服务器的集群系统技术进行了探讨。2.1 视频点播系统VOD 的全称是 Video On Demand意即按需要的视频流播放,它是随着计算机技术 和网络通讯技术的发展,综合了计算机技术、通讯技术、电视技术而迅速兴起的一种 综合性技术。它利用了网络和视频技术的优势,彻底改变了过去收看节目的被动

36、方式, 实现了节目的按需收看和任意播放,集动态影视图像、静态图片、声音、文字等信息 为一体,是为用户提供实时、交互、按需点播服务的系统 30。VOD 系统主要由三部分构成 31:服务器系统、网络系统和客户端系统。服务器系 统主要完成视频数据的存储、 检索以及数据传输的功能, 对于交互式的 VOD 系统来说, 还需要提供对用户实时信息的处理、许可访问控制、录像机功能 (如暂停 /恢复、任意定 位、快进 /快退、慢放等 。 VOD 的网络系统部分负责视频信息流的实时传输,也包括 交互系统中上行点播控制信息的传送。客户端系统完成客户需求数据的显示和用户需 求提交的功能。图 2-1是一个典型的 VOD

37、 系统结构图。 图 2-1 VOD 系统结构图1.服务器端系统主要由视频服务器、系统管理服务器、内部通讯子系统和网络接 口组成。系统管理服务器主要承担用户信息管理、计费、影片信息管理、点播信息记 录以及信息安全等任务。内部通讯子系统主要完成服务器间信息的传递、后台影视材 料和数据的交换。网络接口主要实现与外部网络的数据交换和提供用户访问的接口。 视频服务器主要由存储设备、高速缓存和控制管理软件组成,其目的是实现对媒体数 据的压缩和存储,以及按请求进行媒体信息的检索和传输。视频服务器与传统的数据 服务器有许多显著的不同,需要增加专用的软件功能和硬件设备,以支持视频服务的 特殊要求。例如:媒体数据

38、检索、数据流的实时传输以及信息的加密和解密等。对于 交互式 VOD 系统来说, 服务器端系统还需要实现对用户实时请求的处理、 接入服务控 制、 VCR 操作等。视频服务器可以放在不同的地方,既可放在客户集中的局域网中, 也可放在交换中心由几个局域网共享;还可放在主干网中全局共享;另外,也可根据 需求不同,在几个地方都放置视频服务器,但内容和任务有所不同。究竟应放在何处, 应由存储器成本、传输成本和同时观看每个节目的客户数决定 32。服务器主要有下列 几项评价指标:(1节目流成本。包括网络带宽成本、缓冲区成本等。(2并发用户数目。所能达到的最大支持的并发用户数目,通常指在不降低用户的 服务质量,

39、即用户接收画面无抖动 (fitter的条件下。(3用户响应时间。从用户发出请求到接收到服务器响应的时间。(4VCR支持。即暂停、快进、快退、慢放、随机定位等类似录像机的操作。(5可靠性。指在实际运作环境中的连续、可靠的工作能力。2.网络系统是 VOD 系统的信息通道,包括主干网和接入网两部分。因为它负责 视频信息流的实时传输,所以是影响连续媒体网络服务系统性能极为关键的部分。现 有网络可分为计算机网络 (IP/ATM等 、 有线电视网络 (CATV和公用电话网 (PTSN。 其 中电话网带宽较小,而 IP 网络和有线电视网是目前视频服务的主要依托。核心网络可 以是采用 ATM 技术的光纤传输网

40、或者目前提出的全 IP 的宽带网络,接入网络常用的 有以太网、 ADSL 、 HFC 等。视频服务对网络功能提出了以下几方面的要求:(1带宽要求。 视频数据量大, 不同的压缩格式对带宽有不同的要求。 MPEG-1文件 速率是 1.5Mbps 左右, MPEG-2数据的传输速率在 3-100Mbps 之间,而 MPEG-4要求 的带宽范围在 5kbps 到 l0Mbps 之间。(2对延迟的要求。视频数据有实时性的要求,网络的延迟将影响用户的等待时间 和服务质量 QoS 。(3多播支持。多播用于多用户共享节目。 IP 网络中 UDP 协议支持多播, Cable 是广播型网络,支持多播。(4上行支持

41、。上行数据是指数据的传输方向为由客户端到服务器。对于 IP 系统, 上行通道也是 IP 网络, 对于 Cable 系统, 上行通道可以是 IP 网络、 公用电话网或 Cable 系统。3. 用户端设备由电视机、 机顶盒 (Set-top-Box与遥控器组成, 如图 2-2所示。 其中, 机顶盒又称点播器,它是用户与 VOD 系统进行交互通信的室内设备,具有提供通信、 解压缩、支持用户的控制等功能。它包括强劲的 CPU 构成的控制器、接收发送器、高 速图形芯片、显示卡、 MPEG-2解码器、声音数模转换器、图像转换器等。不管是在 ADSL(非对称数字用户线路技术 、 ATM(异步传输模式 或 H

42、FC(混合光纤同轴电缆网 的情况下,机顶盒都必须完成多路复用的解复用,同时也要支持电话及其他窄带服务。 同时,与用户之间需要有灵活方便的交互能力。另外,客户机也可以是带有显示设备 的计算机系统终端或多媒体信息亭。 TV 图 2-2 客户终端设备客户端系统中, 除了涉及相应的硬件设备, 还需要配备相关的软件, 在进行连续媒 体播放时,媒体流的缓冲管理、音频和视频数据的同步、网络中断与演播中断的协调 等方面都需要进行充分的考虑。请求和接收视频服务的客户端要求:(1有一定的缓冲区容量。 IP 网络用客户端 PC 的主存作为缓冲区,有较大的容量, Cable 网络中只在机顶盒中有很小的 (通常几 KB

43、 缓冲区,所以对数据传输的实时性要 求较高。(2上行处理。用于发送用户的服务请求,如点播请求和 VCR 控制请求。(3解码器。客户端必须有相应数据编码的解码器。VOD 系统网络技术支持 RTP/RTCP/RSVP34多媒体流控制、 支持 802.1p 国际标准, 可保证服务器持续、稳定的将内存视音频文件发送到客户端,网络可优先处理视频、 音频数据,保证用户端得到稳定的视频流。下面对实时传输协议 RTP 、实时传输控制 协议 RTCP 、实时流协议 RTSP 和资源预留协议 RSVP 进行分析:RTP 是用于 Internet 针对多媒体数据流的一种传输协议,它被定义在一对一或一对 多的传输情况

44、下工作, 其目的是供时间信息和实现流同步。 RTP 通常使用 UDP 来传送 数据。当应用程序开始一个 RTP 会话时将使用两个端口:一个给 RTP ,一个给 RTCP 。 RTCP 为按顺序传送数据包提供可靠的传送机制,提供流量控制或拥塞控制。 RTCP 包 中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,服务器可以利用这 些信息动态地改变传输速率,甚至改变有效载荷类型。 RTP 和 RTCP 配合使用,它们 能以有效的反馈和最小的开销使传输效率最佳化, 因而特别适合传送网上的实时数据。 实时流协议 RTSP 用于多媒体数据流的控制,主要完成两项功能:一是呼叫建立连接, 在用户和网

45、点服务之间建立数据流连接;二是数据激活,它与 HTTP 的主要区别是:使用 HTTP 是客户机发出请求,服务器响应;而 RTSP 是两方都可发出请求。 RSVP 是 一个实现资源预留的协议,在多媒体传输过程中,按不同应用分配带宽,减少了网络 的延迟和抖动,从而保证了流化视频的服务质量 (Quality of Service。客户通过访问提供视频服务的网页可方便地找到点播的节目, 每个节目实际上对应 了一个 RTSP 请求,服务器向客户发送该节目的描述,客户确认后播放该节目,服务 器开始将 RTP 数据流发送给客户。 在客户端收到 RTP 包的同时, 将周期性地向服务器 报告状态,即 RTCP

46、报文。服务器对这些报文做参数统计,进行流量控制,并将某些 响应发送到客户机。客户也可以发出其他 RTSP 请求,如暂停、快进、快退等,服务 器有专门的程序对这些请求进行处理 33。2.2 集群及负载均衡技术分析集群系统是利用高速互连网将一组高性能工作站或 PC 机连接起来, 在并行程序设 计和集成开发环境支持下,统一调度、协调处理,实现高效并行处理的系统。一个集 群包含多台 (至少二台 拥有共享数据存储空间的服务器。 任何一台服务器运行一个应用 时,应用数据被存储在共享的数据空间内。每台服务器的操作系统和应用程序文件存储在其各自的本地储存空间上。一个客户与集群相互作用时,服务器集群系统整个表

47、现得象一台服务器,协同工作提供一个相同的工作,看上去就像一个虚拟服务器。集 群内任一系统上运行的服务可被所有的网络客户所使用。和传统的高性能计算机技术 相比,集群技术 35可以利用各档次的服务器作为节点,系统造价低,可以实现很高的 运算速度,完成大运算量的计算。使用集群技术可以用最少的投资获得接近于大型主 机的性能。集群系统 (Cluster System主要解决下面几个问题:1.高可靠性关键性的业务需要可靠的容错机制, 利用集群管理软件可以协调管理各分离的组件 的错误和失败。当主服务器出现故障时,备份服务器能够自动接管主服务器的工作, 并及时切换过去,以实现对用户的不间断服务;在一个集群当中

48、如果任何节点发生故 障,其资源都可以通过“故障修复”移到集群中一个或更多其他节点上,从而提高所 有节点的可用性。并且一个节点计算机出现故障不影响其他的节点计算机工作,因此 可以有充裕的时间排除故障。2.可扩充性集群允许节点在不中断服务的情况下增加处理能力或磁盘容量, 从而提高了系统的 可扩充性。同时,由于采用了一种松耦合的模式,集群中的各个节点机使用 TCP/IP或 其他网络协议通过标准的网络设备连接在一起,可以非常方便地添加或更换集群中的 单个节点机,因此松耦合的集群系统有较好的可扩展性,很强的伸缩能力,节点计算 机可多可少。3.高性能集群系统的并行性降低了处理的瓶颈, 即充分利用节点计算机

49、的处理能力, 实现复 杂运算的并行处理,提高系统的性能。同时,它用廉价的硬件构造超级计算机环境, 充分保留原有的硬件投资,体现了优异的性能价格比。集群系统可以增量扩展,并能 方便地修改或扩展系统以适应变化的环境,而无需中断其运行。系统的总体计算能力 随资源的增加而按比例提高。4.负载均衡应用规模的发展使单个服务器难以承担负载。 负载均衡即把负载压力根据某种算法 合理分配到集群中的每一台计算机上 36,以减轻主服务器的压力,降低对主服务器的 硬件和软件要求。在用户访问率较低时,这种负载均衡表现的不会很明显,而一旦用 户的请求量增大后,这种优势就会显现出来。集群技术是计算机系统结构的前沿领域。 而

50、目前对集群技术需求最迫切, 发展也最快的领域主要有 Web 应用、科学计算、数据库应用。在大量并发访问中, 由于用户请求的分布不统一, 如果不能对用户的请求合理地进 行分配,那就会造成系统负载分布不均衡,有的服务器处于超负荷状态,有的处于超 轻载状态,从而整个系统的资源利用率低下、用户的拒绝率就会增加。在现有网络结构之上, 负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加 吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性 37。负载均衡通过某种 负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接 收到请求的服务器独立地回应客户的请求。负载均衡在结构上分为本地负

51、载均衡和全局负载均衡 38,前一种是指对本地的服 务器集群做负载均衡,后一种是指对分别放置在不同的地理位置、在不同的网络及服 务器群集之间作负载均衡。服务器群集中每个服务节点运行一个所需服务器程序的独 立拷贝。服务器负载均衡一般用于提高服务器的整体处理能力, 并提高可靠性, 可用性, 可 维护性,最终目的是加快服务器的响应速度,从而提高用户的体验度。负载均衡的关键技术 39包括请求分派机制以及负载均衡算法。如何让服务器均衡的工作, 是负载均衡算法解决的首要问题。 负载均衡器将根据由 负载均衡算法选择的服务器做出重定向请求的决定。负载均衡算法可以分为静态、动 态两种 40。静态负载均衡适用于同构

52、并可预知负载量的集群系统,算法简单,易于实 现;动态负载均衡适用的范围则广而灵活,但需要动态收集服务器的使用情况以及每 个任务的执行特征,开销较静态负载均衡大,但可以实时反映集群系统的负载情况。 一般均衡算法包括随机算法、轮循法、加权轮循法、最少连接法、加权最少连接法、 最快响应法 4142。1.随机算法即每次产生一个随机数, 代表某一台服务器, 将请求指向该服务器, 这种算法在大 量请求下才能表现出其统计平均特性,同样,它也不考虑服务器负载状况、服务器出 现故障等。2.轮循法使用轮循法 (Round Robin 时,每一次来自客户的请求轮流分配给内部中的服务器,从 1至 N 然后重新开始。此

53、种均衡算法适合于服务器组中的所有服务器都有相同 的软硬件配置并且平均服务请求相对均衡的情况。该算法简单方便、易于实现,适用 于集群中所有节点的处理能力和性能均相同的情况。但是这种方法没有将不同服务器 提供服务能力的不同、服务器的负载情况等因素考虑进去,有时负载均衡的效果不理 想。按随机算法和轮循法选择方案来分配请求不能保证服务器的可用性和各个服务器 之间的负载均衡。3.加权轮循法加权轮循调度 (Weighted Round-Robin算法是在轮循法的基础上的改进,可以解决 服务器间性能不一的情况,它是按权值的高低和轮循方式分配请求到各服务器。权值 高的服务器先收到连接,权值高的服务器比权值低的

54、服务器处理更多的连接,相同权 值的服务器处理相同数目的连接数。当服务器的权值为零时,该服务器不被调度。当 请求的服务时间变化很大,单独的加权轮循调度算法依然会导致服务器间的负载不均 衡。加权轮循调度无需记录当前所有连接的状态, 所以它也是一种无状态调度。 调度器 可以自动询问服务器的负载情况,并动态地调整服务器的权值。这种算法的效果比轮 循法要好。4.最少连接法最少连接调度 (Least-Connection算法是对集群系统中的每一台服务器都要记录它 当前正在处理的连接数量,并把新的连接请求分配到当前连接数最小的服务器。最少 连接调度是一种动态调度算法 43,它通过服务器所活跃的连接数来估计服

55、务器的负载 情况。调度器需要记录各个服务器己建立连接的数目,当一个请求被调度到某台服务 器,其连接数加 1;当连接中止或超时,其连接数减 1。当各服务器有相同的处理性能时, 最少连接调度算法能把负载变化大的请求平均分 布到各个服务器上,所有处理时间比较长的请求不可能被发送到同一台服务器上。但 是,当各服务器的处理能力不同相差较大时,该算法并不理想,因为 TCP 连接处理请 求后会进入 TIME_WAIT状态, TCP 的 TIME_WAIT一般为 2分钟,此时连接还占用 服务器的资源,所以会出现这样情形,性能高的服务器己处理所收到的连接,连接处 于 TIME_WAIT状态,而性能低的服务器己经

56、忙于处理所收到的连接,还不断地收到 新的连接请求。5.加权最少连接法在集群系统中的服务器性能差异较大的情况下,采用加权的最少连接法 (WeightedLeast-Connection 分配算法可以优化负载均衡性能。系统根据服务器的处理能力大小, 给它一个相应的权值。加权最少连接调度在调度新连接时尽可能使服务器的已建立连 接数和其权值成比例。系统可以自动询问服务器的负载情况,并动态地调整服务器的 权值,达到更好的负载均衡效果。6.最快响应法使用最快响应法时,负载均衡调度器设备对集群的每个服务器发出一个探测请求, 并将下一个到达的连接请求分配给响应时间最短的节点。这种方法是高级均衡基于拓 扑结构重

57、定向用到的主要方法。因为本视频服务器中的用户请求要求反馈的是视频流, 以上算法均不能真正做到该 系统的负载均衡分配,无法更好地发挥系统的并行处理能力。因此,可以考虑把几种 方法结合在一起使用,或者结合系统结构、负载特征等因素,在以上一般算法的基础 上加以改进,使之更好的适应本系统的要求。目前,对负载均衡的实现,按照 OSI 分层模型可分为:客户端负载均衡、应用服 务器、动态域名、高层协议交换和网络接入协议交换等 44。下面介绍三种主要的实现 方案 45:2.基于 OSI/RM第七层的负载均衡。此时根据数据包内数据的内容不同,再考虑 各支撑服务器的处理能力和等待执行的任务队列中的任务量,将任务分

58、配到不同的服 务器处理。这个方案中,由于均衡服务器要解出数据包内的内容,故对其性能要求比 较高,且极易在此形成瓶颈。如 Apache 的 ProxyPass ,可以将不同的路径,映射到不同的服务器上。又如 ASP 的 redirection 等,需要特定的应用程序支持。采用反向代理 服务器进行请求转发的方法,虽然能够应用优化的负载均衡策略,使每次服务均由最 空闲的内部服务器来提供,以达到负载均衡的目的,但随着并发连接数量的增加,代 理服务器本身的负载也变得非常大,反向代理服务器本身反而会成为服务的瓶颈。 3.基于 IP 层的负载均衡。此时,根据一定的调度算法,将数据包直接转发到物理 上不同的服务器。如网络地址转换的方法,可以将一个外部地址映射为多个内部地址, 对每次请求动态使用其中一个内部地址, 达到负载均衡的目的。 由于均衡在 IP 层进行, 调度成本比上述两者都要低,能调度更多的支撑服务器。这样的产品有 IBM 的 Interactive Network Dispatcher、 Cisco 的 LocalDirector 、 Alteon 的 ACEDirector 和 F5的 Big

温馨提示

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

评论

0/150

提交评论