(计算机应用技术专业论文)基于p2p的流媒体底层网络架构的研究与改进.pdf_第1页
(计算机应用技术专业论文)基于p2p的流媒体底层网络架构的研究与改进.pdf_第2页
(计算机应用技术专业论文)基于p2p的流媒体底层网络架构的研究与改进.pdf_第3页
(计算机应用技术专业论文)基于p2p的流媒体底层网络架构的研究与改进.pdf_第4页
(计算机应用技术专业论文)基于p2p的流媒体底层网络架构的研究与改进.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 随着互联网技术的发展和接入速度的提高,用户对网络的期望和要求不再满 足于单一的静态媒体,流媒体应用成为了用户新的需求。但流媒体对带宽资源要 求高且服务时间长,在传统的c s 模式下服务器很容易成为系统瓶颈,如何在 i n t e m e t 网络上提供大规模的流媒体内容分发一直是过去十多年里流媒体研究领 域的核心问题。 目前流媒体分发的研究方向主要是集中于应用层组播。在应用层组播的多种 方案中,都需要在参加的应用节点之间实现一个可扩展的,支持容错能力的重叠 网络。而同属于应用层覆盖网络研究领域的p 2 p 网络,由于其具有良好的可扩展 性,支持负载平衡以及节点动态加入和离去等优点,正好为应用层组播的实现提 供了良好的基础平台。因此将p 2 p 网络技术引入流媒体的应用层组播,即基于p 2 p 的流媒体分发方案成为流媒体分发技术研究的热点。然而p 2 p 网络技术本身仍处 于发展阶段。虽然采用分布式哈希表( d h t ) 技术的结构化纯p 2 p 网络,由于建立 在确定性拓扑结构的基础上,从而表现出较强的路由指导性和较强的节点与数据 的控制力。但是d h t 技术在抵御网络扰动、查询效率等方面仍存在一些不足。 本文在流媒体的数据分发体系方面展开研究,分析了流媒体分发技术中的各 种应用层组播方案,并将p 2 p 网络技术引入应用层组播,使用基于d h t 的结构 化p 2 p 网络作为流媒体在应用层组播的基础平台。本文在分析各种d h t 算法的 基础上,选择使用d h t 算法中的k a d e m l i a 算法控制节点加入、离开系统和资源 的发布、查询。本文的核心工作在于对影响k a d e m l i a 算法执行性能的各种因素进 行了详细分析,根据分析的结果提出了r t i - k a d e m l i a 改进方案,并设计实现了基 于此改进方案的r t t - k a d e m l i a 覆盖网络的底层结构。最后,本文使用软件模拟的 方式,对标准k a d e m l i a 与r t t - k a d e m l i a 方案在路由表空间占用、网络负载等方 面进行了比较测试,分析了r t t - k a d e m l i a 覆盖网络的性能。测试结果显示,采用 r i t - k a d e m l i a 方案缩短了节点查询时间,提高了查询效率。 关键词:流媒体,应用层组播,p 2 p 网络,k a d e m l i a a bs t r a c t w i t ht h ed e v e l o p m e n to fi n t e r n e tt e c h n o l o g ya n dt h es p e e do fa c c e s s ,u s e r sn o l o n g e rm e e tt h ee x p e c t a t i o n sa n dd e m a n d si nas i n g l es t a t i cm e d i a a p p l i c a t i o n so f s t r e a m i n gm e d i ab e c o m et h en e wd e m a n d o fu s e r i nt h et r a d i t i o n a lc l i e n t s e r v e rm o d e , t h es e r v e ro f t e nb e c o m e st h eb o t t l e n e c kd u et ot h er e q u i r e m e n t so fh i g hb a n d w i d t ha n d l o n gd u r a t i o no fs t r e a m i n gm e d i a h o wt od i s t r i b u t es t r e a m i n gm e d i ac o n t e n tt oal a r g e n u m b e ro fh o s t si nas c a l a b l ew a yh a sb e c o m et h ek e yi s s u eo fm u l t i m e d i ar e s e a r c h f i e l di nt h el a s td e c a d e a t p r e s e n t , s t r e a m i n g m e d i ad i s t r i b u t i o nm e t h o d so fr e s e a r c hi s m a i n l y c o n c e n t r a t e di nt h ea p p l i c a t i o nl a y e rm u l t i c a s t av a r i e t yo fa p p l i c a t i o n - l a y e rm u l t i c a s t p r o g r a m m e sn e e dt o b u i l das c a l a b l e , s u p p o r tf o rf a u l t t o l e r a n to v e r l a yn e t w o r k b e t w e e nt h en o d ei n v o l v e m e n t s a n dp 2 pn e t w o r k st h a tb e l o n gt or e s e a r c hi nt h ef i e l d o fa p p l i c a t i o nl a y e ro v e r l a y e rn e t w o r k s ,b e c a u s eo fi t sg o o ds c a l a b i l i t y , s u p p o r tf o r l o a db a l a n c i n ga n dn o d ed y n a m i cj o i na n dl e a v e ,a n do t h e rb e n e f i t s ,i sag o o d f o u n d a t i o n p l a t f o r mf o r t h er e a l i z a t i o no fa p p l i c a t i o n l a y e rm u l t i c a s t t h u sp 2 p n e t w o r kt e c h n o l o g yw i l lb ei n t r o d u c e di n t ot h ea p p l i c a t i o nl a y e rm u l t i c a s to fs t r e a m i n g m e d i a , a n dp 2 p - b a s e ds t r e a m i n gm e d i ad i s t r i b u t i o np r o g r a m m e db e c o m eh o ts p o t so f t h e s t r e a m i n g m e d i ad i s t r i b u t i o nt e c h n o l o g yr e s e a r c h h o w e v e r , p 2 pn e t w o r k t e c h n o l o g yi t s e l fi ss t i l li nt h ed e v e l o p m e n ts t a g e ,n o wm a i n l yr e s e a r c hc o n c e n t r a t e di n t h es t r u c t u r e dp u r ep 2 pn e t w o r k sw h a tu s i n gd i s t r i b u t e dh a s ht a b l e ( d h t ) t e c h n o l o g y s i n c et h ed h ti sb a s eo nt h ec e r t a i n t yo ft o p o l o g i c a ls t r u c t u r e ,i th a ss t r o n gr o u t i n g g u i d a n c e ,a n ds t r o n gc o n t r o lo ft h ed a t aa n dn o d e s b u td h tt e c h n o l o g ys t i l lh a ss o l l l e i n a d e q u a t et e c h n i c a l ,s u c ha s :r e s i s tt h e n e t w o r kd i s t u r b a n c e , e f f i c i e n c yo f l o o k u pe t c i nt h i sp a p e rr e s e a r c hs t a r ta tt h ed a t ad i s t r i b u t i o na r c h i t e c t u r eo fa p p l i c a t i o nl a y e r m u l t i c a s t , a n a l y s e dt h ei m p a c to fv a r i o u sa p p l i c a t i o nl a y e rm u l t i c a s tp r o g r a m m e s ,p 2 p n e t w o r kt e c h n o l o g yb ei n t r o d u c e di n t ot h e a p p l i c a t i o nl a y e rm u l t i c a s t ,a n d t h e d h t - b a s e ds t r u c t u r e dp 2 pn e t w o r k sh a sb ep l a t f o r m so ft h ea p p l i c a t i o n l a y e rm u l t i c a s t k a d e m l i aa l g o r i t h mh a sb eu s e dt oc o n t r o ln o d e sj o i na n dl e a v e ,a n dt h er e s o u r c e s p u b l i s ha n dl o o k u p t h i sp a p e ra n a l y s e s t h e i m p a c to fk a d e m l i aa l g o r i t h m i i h p l e r i l e n t a t i o n o fav a r i e t yo ff a c t o r s b a s e d o nt h ea n a l y s e s ,r t t - k a d e m l l a i n l p r o v 锄e n tp r o g r a m m ew a sp r o p o s e d t h i sp a p e rb a s e d o nt h i si m p r o v e m e n t p r o 野a m m e ,d e s i g n e da n di m p l e m e n t e d i n f r a s t r u c t u r eo far t t - k a d e m l i a - b a s e d o v e r l a vn e t w o r k b ys i m u l a t i o nt h ep e r f o r m a n c eo ft h e s t a n d a r dk a d e m l i aa n d r 订- k a d 锄l i ao v e r l a yn e t w o r kw a sc o m p a r e d ,i na r e a ss u c ha st h er o u t i n gt a b l es p a c e o 锨l p a n c y ,n e t w o r kl o a de t c t h et e s tr e s u l t si n d i c a t et h a t , a t t r i b u t e d t ot h eu s eo t 曲p r o v e dp r o g r a m m e ,t i m eo fl o o k u p i ss h o r t e ra n de f f i c i e n c yo fl o o k u pi si m p r o v e d k e y w o r d s :s t r e a m i n gm e d i a , a p p l i c a t i o nl a y e rm u l t i c a s t , p 2 p n e t w o r k ,k a d 锄1 i a i i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作 及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的 说明并表示谢意。 签名:鲻 日期:年月日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定), 躲薪新导师虢阜锄 日期:年月 e 1 第一章绪论 1 1 研究背景 第一章绪论 随着互联网在全世界的普及,越来越多的机器获得了网络连接,并且其连接 方式正迅速由拨号为主向宽带为主的方式发展。网络连接情况的改善使得网络应 用情况也发生了变化。在低速网络时代,网络应用以客户杌 服务器模式为主。大 型服务器处于网络应用的核心地位,它拥有相对充裕的计算资源和网络带宽资源, 可以同时为许多用户服务。个人用户只能作为访问网络的终端,不可能为他人提 供服务。随着i n t e r n e t 的发展,用户对网络的期望和要求也越来越高,不再满足 于单一的静态媒体,将声音、文字、图像、视频等有机结合形成的多媒体应用成 为i n t e m e t 发展的重点。但是在高速网络时代,随着网络带宽的迅速提高和宽带 用户的迅速增长,尽管服务器的部署方式也已从传统的单- n 务器发展到集群服 务器、并行服务器以及分布服务器等方式,但其面临的服务压力也日趋增大,并 在很多领域也难以满足不断增长的应用需求;另一方面,个人计算机的性能在迅 速提高的同时其价格也在不断下降,现在的一台普通个人计算机,其计算能力和 存储能力很可能超过二十年前的大型机,计算资源和网络带宽这两方面条件的改 进,使得很多网络终端也具备了一定的服务能力。而如果能够把网络上数量巨大 的个人计算机作为一个整体联系起来,就可以提供任何集中式服务器无法比拟的 资源。基于这样的思想使得许多基于p 2 p ( p e e r - t o p e e r ) 的网络应用迅速兴起。 如今,基于p 2 p 技术的应用已经成为互联网的主要应用之一,p 2 p 的模式也 成为许多新型业务的首选模式。p 2 p 技术被广泛应用于文件共享、网络视频、网 络电话等领域,以其分布式资源共享和并行传输等特点,为用户提供了更多的资 源、更高的可用带宽以及更好的服务质量。c a c h e l o g i c 公司的统计数据表明p 2 p 已经占据了5 0 以上的网络带宽。虽然p 2 p 文件分发软件占据了p 2 p 总流量的 5 0 以上,但是流媒体应用也以极其惊人的速度发展起来,用户数目急速增长。 可以预见,随着使用p 2 p 流媒体用户数目的迅速增加,在未来i n t e r n e t 业务提供 商( i s p ) 主干链路的流量中,p 2 p 流媒体应用将占有更大比例。 p 2 p 节点能不依赖中心节点而是依靠网络边缘节点来实现对等协作的资源发 现和共享,因此拥有自组织、可扩展性、鲁棒性、容错性以及负载均衡等优点。 电子科技大学硕士学位论文 p 2 p 流媒体应用利用p 2 p 节点的这些优点,将流媒体的复制与转发任务分散到不 同的节点上,充分利用了大量节点的带宽和计算资源。然而,目前i n t e m e t 中基 于p 2 p 的流媒体应用其服务质量( q o s ) 并不能让人满意,用户在实际使用中难 免会出现媒体资源不足、无法连接和播放不连续等问题。因此,提高基于p 2 p 的 流媒体应用的资源查找效率,提高系统的强壮性和稳定性是目前迫切需要研究的。 1 2 研究现状 如何在大规模的应用环境中对流媒体内容进行分发是过去十几年里多媒体领 域的研究热点。为了解决这个问题,人们提出了c d n 、i p 组播等各种解决方案。 然而由于成本以及需要硬件支撑等原因,这些方案在实际应用中都有很多的局限 性。因此国外的学者提出了一种可以在不改变i n t e m e t 现有配置的前提下实现多 路复用的方案,即应用层组播( a p p l i c a t i o n - l a y e rm u l t i c a s t ) 1 】【2 】。由于不需要路由 器的支持和便于部署推广,应用层组播迅速吸引了许多研究者对其进行试验和研 究,并提出了许多经典的应用层组播协议,如:n a r a d a 3 1 、n i c e 1 】等。然而这些 协议都存在一些问题: ( 1 ) 可扩展性差:虽然这些协议支持一定的扩展性,如:n i c e 协议。但是当 大量的用户加入网络时,其执行性能和系统的稳定性都会明显下降。而实际上, 参加应用层组播的节点数通常都很多,尤其是对于热门资源的组播,比如:实况 球赛,参加的节点数量将极其巨大。 ( 2 ) 存在系统瓶颈:由于这些协议通常采用分层的结构,因此在网络中不同 的节点所担负的任务不完全相同,负担较重的节点将成为系统的瓶颈。比如:在 n i c e 协议中的每个节点簇都有一个簇首节点( c l u s t e r sl e a d e r ) ,对于位于较高层的 簇首节点,由于需要处理大量的控制信息,其性能将直接影响系统的执行性能。 ( 3 ) 资源查询效率较低:n i c e 等协议都将较多的精力放在了节点加入和离开 网络的控制方面,而对于资源的查找通常使用泛洪( f l o o d ) 的方法。当网络中节点 较多时查询的效率和成功率都很低。 与应用层组播协议不同,p 2 p 网络协议从一开始就是针对于大规模节点参加 的情况而设计。目前处于p 2 p 网络技术研究焦点的结构化纯p 2 p 网络,在可扩展 性、节点负载平衡和资源查找效率方面都有不错的表现。因此,可以将p 2 p 网络 技术引入应用层组播,使用p 2 p 网络中的路由和控制算法来解决应用层组播中对 网络节点控制的问题。 2 第一章绪论 结构化纯p 2 p 网络是指在网络中不存在中央服务器,所有的节点之间完全平 等,每个节点确切的知道网络中节点分布的空间范围和分布结构,且每个节点只 存储特定的信息或特定信息的索引。结构化p 2 p 网络使用的技术有许多种类,如: s k i p g r a p h s i 4 1 ,小世界( s m a l l w o r l d ) 5 】理论等,目前最流行的是采用分布式哈希表 ( d h t ) 技术。d h t 使用分布式哈希算法来解决结构化的分布式存储问题。分布式 哈希算法的核心思想是通过将存储对象的特征( 如:关键字) 经过哈希运算,得到 键值( h a s hk e y ) ,存储对象的分布存储依据其键值来决定。具体来讲,大致有以 下两步: 第一步,对存储对象的关键字进行哈希运算,得到其相应的键值。通过哈希 运算就将所有的对象映射到了一个具体的键值空间内。 第二步,网络中的每个节点只负责记录键值空间内某一特定段落的信息。通 常段落的选择由其自身的键值决定。 目前比较成熟的d h t 算法有k a d e m l i a 6 1 、c h o r d 7 、p a s t r y t 8 1 、t a p e s t r y t 9 】等等。 由于c h o r d 算法易于分析理解的结构使得其近几年被广泛的研究。k a d e m l i a 使用 了一种新颖的基于异或运算的d h t 算法,因此具有一致性、最小时延路由和对 称单向拓扑等特点。本文将在下一章对这些算法进行介绍。 根据上述的研究现状,可以把基于p 2 p 流媒体内容分发中的关键技术划分为 两类【l o 】: 第一类是与数据分发体系相关,包括在源服务器端对目标媒体采用何种类型 的编码、在数据分发过程中把参与系统的p e e r 节点组织成何种类型的网络逻辑拓 扑、新节点如何加入系统、如何处理节点的离开或失效、系统是否具有良好的可 扩展性、是否适应大规模的应用需求等: 第二类是与数据调度相关,主要是指把流媒体数据如何从发送节点传输调度 到接收节点,特别是在多对单的数据传输模式中,如何以协同的方式把流媒体数 据从多个发送节点调度传输到单个接收节点,以最大化接收节点的服务质量,或 兼顾满足其它的系统目标。 根据上述的分类,将p 2 p 网络作为流媒体应用层组播的基础平台所进行的研 究就属于p 2 p 流媒体内容分发中数据分发体系的研究。其中包括:使用p 2 p 网络 中的路由和控制算法来解决应用层组播中对网络节点控制的问题、以及在使用 p 2 p 网络作为应用层组播基础平台时进行资源查找的方法等多个方面。 电子科技大学硕士学位论文 1 3 本文研究内容 本文所展开的研究主要属于p 2 p 流媒体内容分发中数据分发体系的研究。其 主要研究内容包括以下几点: 1 ) 分析流媒体分发技术中的各种应用层组播方案,并将p 2 p 网络技术引入 应用层组播,使用基于d h t 的结构化p 2 p 网络作为应用层组播的基础平台; 2 ) 在分析各种d h t 算法的基础上,选择使用k a d e m l i a 算法控制网络节点的 加入、离开和资源的发布、查询; 3 ) 构造基于标准k a d e m l i a 算法的底层覆盖网络,分析影响其性能的因素; 4 ) 根据对标准算法的分析结果,提出一种在路由表中记录“响应时间( r t t ) ” ( r o u n d t r i pt i m e ) 的优化方案,即r t t - k a d e m l i a 方案。 5 ) 设计并实现了基于i u t k a d e m l i a 改进方案的p 2 p 覆盖网络的底层结构: 6 ) 以软件模拟的方式测试比较了r t t - k a d e m l i a 方案与标准算法的性能。 1 4 本文组织结构 本文共分七章,每章的主要内容如下: 第一章:引言。本章首先介绍了p 2 p 流媒体分发技术研究的背景,然后对目 前p 2 p 流媒体分发技术研究的发展状况进行了简单介绍,并对其中的关键技术进 行了分类。最后介绍了本文的研究内容及主要工作,并对论文的章节进行了安排。 第二章:相关技术。本章从流媒体的传输技术基础开始,简单介绍了与p 2 p 流媒体分发相关的各种技术,并对各种技术的优点和不足之处进行了简单分析。 第三章:k a d e m l i a 算法性能分析。本章对本文所采用的k a d e m l i a 算法的执 行性能进行了较详细分析,并总结出了影响性能的主要因素。 第四章:r t t - k a d e m l i a 方案。本章针对第三章找出的影响k a d e m l i a 算法执 行性能的主要因素,提出了r t i - k a d e m l i a 改进方案;对方案的算法进行了详细阐 述:在最后总结了改进方案的优点和不足之处。 第五章:r t t - k a d e m l i a 覆盖网络的设计实现。本章从覆盖网络的模块结构、 消息结构、算法执行流程等方面详细介绍了基于r t f - k a d e r n l i a 改进方案的p 2 p 覆盖网络的设计与实现。 第六章:测试结果与分析。本章首先在第一节中介绍了模拟测试平台的构建, 在后面的小节中介绍了覆盖网络执行测试的结果,并对结果进行了分析。 4 第一章绪论 第七章:总结与展望。本章是论文的结束部分,对全文进行了总结,并对下 一步的工作进行了展望。 电子科技大学硕士学位论文 2 1 流媒体技术 第二章相关技术 所谓流媒体是指采用流式传输的方式在互联网播放的媒体格式,如音频、视 频或多媒体文件。一般说来,流媒体包括两种含义: 广义上:流媒体是指保证音频、视频等多媒体内容能稳定、连续的传输和回 放的一系列技术、方法、协议的总称,习惯上称之为流媒体系统; 狭义上:流媒体是相对于传统的下载回放模式而言的一种新的媒体播放 模式。在这种模式中,用户不用等待漫长的下载时间,就能快速的从网络上获取 音频、视频等连续的多媒体内容,即所谓的:边下载边播放。 2 1 1 流媒体的传输基础 流媒体实现的关键技术就是流式传输。流式传输的过程通常由客户端请求某 种流媒体服务开始,服务器响应客户端请求后,将需要传输的实时数据从原始信 息中检索出来,以流的形式发送到客户端。然后客户端启动自身的视频、音频播 放程序,播放媒体流。实现流式传输主要有两种方法:实时流式传输( r e a l t i m e s 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 ) 。 1 ) 顺序流式传输:顺序流式传输是指流媒体数据以顺序的方式下载,在下载 流媒体数据的同时用户可观看流媒体数据,但是在给定时刻,用户只能观看己下 载的那部分,而不能跳到还未下载的部分。顺序流式传输的优点在于标准的h t t p 服务器可发送这种形式的流媒体数据,而并不需要其他特殊的协议支持,因此顺 序流式传输经常被称作h t r p 流式传输。此外顺序流式文件放在标准的h t t p 或 f t p 服务器中,易于管理。顺序流式传输比较适合高质量的短片段,如片头、片 尾和广告。由于使用顺序流式传输,媒体在播放前的部分是无损下载的,这种方 法保证了电影播放的最终质量。然而这意味着用户在观看前必须等待较长的时间, 对连接速度较慢的用户尤其如此。顺序流式传输不适合长片段和有随机访问要求 的视频,如:讲座、演说与演示等。 2 ) 实时流式传输:实时流式传输是指能保证媒体信号带宽与网络连接相匹配, 使媒体可被实时地观看到。实时流与h t t p 流传输方式不同,它需要专用的流媒 6 第二章相关技术 体服务器与传输协议。实时流式传输一般是实时传送,特别适合现场事件,如现 场转播、实时授课等。理论上,实时流经播放就不会停止,但实际上,如果带 宽不够则可能发生暂停。实时流式传输必须匹配连接带宽,这意味着在网络连接 速度较慢时图像质量较差。而且,由于出错丢失的信息被忽略掉,当网络拥挤或 出现问题时,也会导致视频质量下降。 2 1 2 流媒体分发技术 流媒体的分发技术主要有:单播、点播、广播和组播。 1 ) 单播 单播是指在客户端与服务器之间建立一个单独的数据通道,从服务器送出的 数据包只能传送给一个目标客户机。每个用户必须分别对媒体服务器发送单独的 查询,而媒体服务器必须向每个用户发送所申请的数据包拷贝。这种巨大冗余造 成服务器沉重的负担,为了保证一定的服务质量只能通过提高服务器性能来实现。 2 ) 点播 点播是指客户端与服务器之间的主动连接。在点播连接中,用户通过选择内 容项目来初始化客户端连接。用户可以开始、停止、后退、快进或暂停流。点播 连接提供了对流的最大控制,但这种方式由于每个客户端各自连接服务器,会迅 速用完网络带宽。 3 ) 广播 广播是指用户被动接收媒体流。在广播过程中,客户端能接收媒体流,但不 能控制流。例如,用户不能进行暂停、快进或后退操作。广播方式中数据包的一 个单独拷贝将发送给网络上的所有用户。虽然采用广播方式服务器只需要发送一 次数据,效率很高,但会使整个网络中产生大量的冗余数据,极大的提高了整个 网络中的负载,最终会使网络通信瘫痪。 4 ) 组播 与单播和广播一对一,或一对多的方式不同,组播将数据包的一个单独拷贝 发送给需要的那些客户。组播不会复制数据包的多个拷贝传输到网络上,也不会 将数据包发送给不需要它的那些客户,这样就保证了网络上多媒体应用不会占用 大量的网络带宽。 7 电子科技大学硕士学位论文 2 2c d n 在传统的c s 架构中,服务器都是通过单播、点播或广播的方式向用户提供 服务。由于用户数量激增和用户访问服务器的网络路径过长,从而使用户的服务 质量受到严重影响。特别是当用户与服务器之间的网络被突发的大流量数据拥塞 时,对于与服务器异地的用户这个问题更加严重。c d n 的全称是:c o n t e n td e l i v e r y n e t w o r k ,即内容分发网络。其目的是通过在现有的i n t e r n e t 中增加一层新的网络 架构,将服务器的内容发布到最接近用户的网络“边缘 ,使用户可以就近取得所 需的内容,提高用户访问的响应速度。c d n 的核心技术包括:负载均衡、内容分 发、内容存储和内容管理。 1 ) 负载均衡 c d n 负载均衡系统的作用是将用户的操作请求分派给整个c d n 网络中的最 佳节点。通常系统会根据多种策略选定最佳节点,例如距离最近、节点负载最轻 等。负载均衡系统是整个c d n 的核心,负载均衡的准确性和效率直接决定了整 个c d n 的效率和性能。通常负载均衡分为两个层次:全局负载均衡和本地负载 均衡。全局负载均衡主要的目的是在整个网络范围内将用户的请求分派到最近的 节点( 或者区域) 。本地负载均衡一般作用于一定区域范围内,目的是在特定的区 域范围内寻找一个最适合的节点来提供服务。 2 ) 内容分发 c d n 的内容分发是指从中心服务器到c d n 边缘服务器分发的过程。从实现 上看,有两种主流的内容分发技术:主动分发和被动分发。 主动分发由内容管理系统发起,将内容从中心服务器分发到各边缘服务器。 主动分发的内容一般是热点内容,这些内容通过主动分发方式预先分发到边缘服 务器,可以实现有针对的内容提供。对于主动分发需要考虑的主要问题是分发策 略,即在什么时候分发什么内容。内容分发管理方面可以由管理员人工确定,也 可以通过智能的方式决定,即智能分发。它根据用户访问的统计信息,以及预定 义的内容分发的规则,确定内容分发的最佳时机。 被动分发通常由用户请求来决定。当用户请求的内容在本地的边缘服务器上 不存在时,系统启动被动分发从内容源或者其他c d n 节点实时获取内容。 3 ) 内容存储 对于c d n 系统而言,需要考虑两个方面的内容存储问题:内容源的存储和 内容在边缘服务器中的存储。 第二章相关技术 对于内容源的存储,由于内容的规模比较大,而且内容的吞吐量较大,因此, 通常采用海量存储架构。 边缘服务器中的存储包括功能和性能两个方面:在功能上要对各种内容格式 的支持、对部分缓存的支持等,在性能上包括支持的容量、多文件吞吐率、可靠 性、稳定性等。边缘服务器存储的另一个重要因素是存储的可靠性,目前,存储 系统一般采用了r a i d 技术进行可靠存储。 4 ) 内容管理 这里的内容管理是指内容进入边缘服务器后的本地内容管理。本地内容管理 主要针对单个c d n 节点进行。本地内容管理的主要目标是提高内容服务的效率, 提高本地节点的存储利用率。通过本地内容管理可以有效地实现c d n 节点内容 的存储共享,提高存储空间的利用率。 通过对c d n 核心技术的介绍可以看出c d n 对媒体资源的接收用户仍然采用 单播或广播的方式,仅仅通过部署新的服务器到网络的“边缘 附近来提高服务 质量,因此新服务器上内容的实时性,以及高昂的成本都是其有待解决的问题。 2 3i p 组播 i p 组播( m u l t i c a s t ) 技术,是一种允许一台或多台主机同时地发送单一数据 包到多台主机的t c p i p 网络技术。使用同一个i p 多播地址接收多播数据包的 所有主机构成了一个主机组,也称为多播组。一个多播组的成员是随时变动的, 一台主机可以随时加入或离开多播组。多播组成员的数目和所在的地理位置也不 受限制,一台主机也可以属于几个多播组。此外,不属于某一个多播组的主机也 可以向该多播组发送数据包。实现多播技术要解决的关键问题是多播路由问题。 在i p 层上实现多播需要网络设各( 路由器) 的支持,这样才能在主机上运行多播 应用程序,这大大限制了多播技术的发展。实现i p 多播路由一般方式是在多播 组成员之间构造一棵多播树,多播树是根为源节点,且覆盖所有多播成员的一棵 生成树。不同的i p 多播路由协议使用不同的技术来构造这些多播生成树,一旦 这个树构造完成,所有的多播流量都将通过它来传播。多播路由协议用来生成和 维护多播生成树,使用多播路由协议,路由器可建立起从多播源节点到所有目的 节点的多播路由表,从而实现在子网间转发多播数据包。 根据上面的介绍可以看出,p 数据包从一个发送者传送到一组接收者而不是 一个接收者,并且依靠网络将数据包只传送给需要接收它的网络。因此i p 组播提 9 电子科技大学硕士学位论文 高了数据传送效率,减少了主干网出现拥塞的可能性。然而实现m 组播的前提条 件是:组播源和接收者以及两者之间的下层网络都必须支持组播。由于i n t e m e t 是一个异构网络,底层硬件平台千差万别,主机的硬件处理能力和操作系统也各 不相同。虽然,目前i p 组播技术得到硬件、软件厂商的广泛支持,新生产的以太 网卡几乎都支持组播。但是,网络中仍有许多不支持组播的网络设备在使用。同 时,口组播还没有清晰的商业费用模型,网络运营商之间有不同的利益取向。目 前骨干网运营商以带宽使用获得收益,对承载的是口单播业务还是i p 组播业务 没有必要区分,也就没有动力在路由器中增加对口组播的支持,从而导致了p 组播在今后的若干年内还难以在互联网上得到广泛配置和部署。 2 4 应用层组播 由于p 组播在今后的若干年内还难以在i n t e r n e t 上得到广泛配置和部署,因 此国外一些研究者提出了可以在不改变i n t e m e t 现有配置的前提下实现多路复用 的应用层组播。与口组播数据包在路由器上进行复制转发不同,应用层组播的数 据在端系统上复制并转发,同时端系统也负责组播组成员的管理。端系统在逻辑 上组成了一个叠加网络拓扑,而应用层组播协议的主要目标就是构造并维护一个 有效的数据传输拓扑。应用层组播的优点在于能够很快就进入应用,不需要改变 现有网络路由器。同时由于单播技术在接入控制方面比较成熟,而应用层组播是 通过终端系统之间单播来实现的,所以差错控制、流控制、拥塞控制等比较容易 实现。 应用层组播协议通常把参加组播的节点组织成两个逻辑拓扑:控制拓扑和数 据传输拓扑。拓扑上的每条边都相当于一条单播连线。控制拓扑主要用来在组播 节点间周期性的交换控制信息来发现和恢复由于一些节点的非法离开造成的拓扑 破坏。数据拓扑通常是控制拓扑的一个子集,主要用来表明数据包的传输路径。 实际上,数据拓扑一般是一棵树形结构,而控制拓扑要求节点间有更多的连接, 则通常是一个网状拓扑结构。根据构建控制拓扑和数据拓扑的优先生成顺序,可 以将目前应用层组播协议的实现方法分为:网状拓扑优先方法、树状拓扑优先方 法以及混合方法三大类i 】。 2 4 1 网状拓扑优先方法 在此类方案中,参加组播的节点首先组织成一个网状的、每两个节点之间有 1 0 第二章相关技术 多条路径的控制拓扑结构。在这个网状拓扑中,每一个节点都会保存这个组中其 他的所有节点的状态信息,并且这个信息将会得到周期性的刷新。目前较成熟的 此类协议有n a r a d a 【3 1 ,是由c m u 组播通信组开发的最早的应用层组播协议之一。 1 ) n a r a d a 协议的控制拓扑 假定有一个众所周知的节点“r p ”( r e n d e z v o u sp o i n t ) ,其只参与到控制拓扑 中,而不参与数据的传输。当有新节点加入网络时,新节点首先会从r p 节点获 得所有已加入组播网络的节点的列表,然后随机选择部分节点作为自己的邻接节 点,当至少有一个节点成为这个新节点的邻接节点时,此新节点就成功加入了这 个组播组。成功加入后,此新节点开始和它的所有邻接节点交换状态信息。n a r a d a 中每个节点都会保留组播网络中所有其它节点的信息,当某个节点状态发生改变 时,改变信息将会通过控制拓扑传输到所有其他节点。同时每个节点会周期性地 产生一个状态刷新消息来及时刷新自己所保留的所有节点的状态信息。显然,为 了分发每个节点的状态信息给其它所有的其它节点,将会导致整个系统用于控制 信息传输的开销增大达到o ( 1 v 2 ) ( 为组播网络中节点数) 。 2 ) n a r a d a 协议的数据传输拓扑 n a r a d a 协议的数据传输拓扑实际上就是控制拓扑的生成树。它使用了距离向 量( d i s t a n c ev e c t o r ) 协议来使组播网络中的每个节点得到整个网络的路由信息。由 于数据传输路径直接是从网状拓扑得到,那么网状拓扑中连接的质量会直接影响 最后得到的数据传输路径。当节点加入和离开,或网络环境发生变化时都会影响 到拓扑的质量,因此n a r a d a 协议会周期地对控制拓扑进行优化:每个节点会定期 与随机选出的数个节点进行传输延迟量测,根据这些量测结果利用一个最佳化算 法来保持组播网络中节点问路径的最佳化。 2 4 2 树拓扑优先方法 与网状拓扑优先不同的是,基于树状拓扑优先的组播协议首先会建立起一个 共享的用于数据传输的树状拓扑。然后,根据这个树状拓扑增加一些节点间的连 接便可组成网状控制拓扑。y o i d t l 2 1 协议是比较有代表的基于树状拓扑优先的组播 协议。 1 ) y o i d 协议的数据传输拓扑 所有基于数据拓扑优先方法的组播协议都会创建一个共享的数据传输拓扑 树,每个节点的任务就是找到合适于自己的父节点。y o i d 协议为了使组播达到更 电子科技大学硕士学位论文 好的性能,对拓扑树的节点度、邻接节点的选择策略等给出直接的限制。当有新 节点加入时,其首先会查询r p 节点得到已加入节点的信息,然后新节点通过这 些信息和y o i d 协议对拓扑树给出的限制规定找到合适自己的父节点。通常某个节 点要成为新节点合适的父节点必须满足两个条件。即:不会导致数据传输拓扑树 上出现循环;节点的度不会超过规定的最大值。如果新节点找到了多个合适的父 节点,那么它将根据具体实际量度来找出最合适的一个父节点。在y o i d 协议中由 于每个节点都会自己选择合适的度,则很有可能导致拓扑树的深度加深,使得数 据传输出现比较长的传输路径。 2 ) y o i d 协议的控制拓扑 为了防止由于某个非叶节点的意外断开而使得整个数据传输树被分割,y o i d 协议中的每个成员会在数据传输拓扑树上随机选取一些非父节点,并与这些节点 建立连接,这样便组成了控制拓扑。 2 4 3 混合方法 使用混合方法实现的应用层组播协议是指,在协议实现时没有明显的优先顺 序,或者控制拓扑结构不采用网状拓扑,以及无法归于前两类的采用其他各种实 现方法的协议。其中较典型的是采用分层结构的n i c e 1 】协议。 1 ) n i c e 协议的分层结构 在n i c e 协议中,网络中所有节点都位于最底层l a y e r 0 。将网络中的所有节 点按每k 到3 k 1 个节点划分为一个簇( c l u s t e r s ) ,并在每一个簇中选择一个节点作 为这个簇的簇首节点( c l u s t e r sl e a d e r ) 。规定簇首节点是到达簇内其他成员的最大距 离最小的节点,使用节点到节点的反应时间( e n d t o e n dl a t e n c y ) 作为节点之间的距 离。在n i c e 协议中位于l a y e r l 层的节点是由l a y e r 0 层中所有簇的簇首节点组成, 并且将这些簇首节点仍然按每k 到3 k - 1 个节点划分为一个新的簇,使用同样的方 法选出其簇首节点,依此类推形成n i c e 协议的层次结构。可以看出某一层中簇 的簇首节点同时又是较高一层中某个簇的成员。对于一个众所周知的节点“r p ” ( r e n d e z v o u sp o i n t ) ,定义它始终是唯一的一个簇的簇首节点,并且位于整个层次 结构中的最顶层中。与n a r a d a 协议类似节点“r p 也只参与到控制拓扑中,而 不参与数据的传输。n i c e 协议的分层结构如图2 1 所示。 1 2 第二章相关技术 甜墓麟咖2 氲二二二二l 军蓉勰兰 0 图2 - in i c e 协议的分层结构 2 ) n i c e 协议的控制拓扑 在n i c e 协议中,控制信息只能在簇内交流,即:对于一个节点x ,只能与x 节点属于的每一个簇的其他成员交换控制信息。控制拓扑结构如图2 2 a 所示。 图2 - 2n i c e 协议的控制拓扑结构和数据拓扑结构 图中节点b 0 、b 1 、b 2 、c o 为其所在簇的簇首节点,由于在控制拓扑结构中 节点只能与其所在的簇的其他成员交换控制信息,因此对于节点b 0 ,只能与a 0 、 a 1 、a 2 、b 1 、b 2 、c o 交换控制信息,而无法与a 7 交换控制信息。当新节点在 加入网络时,新节点需要从i 冲开始搜索直到在最底层( 即l a y e r o ) 的某个簇中 找到合适位置;节点在离开或失效时,仅需要经过簇内协商即可为其子节点找到 新的父节点;当节点的加入离开行为使得簇的

温馨提示

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

评论

0/150

提交评论