
【大学课件】信息通信专业 应用层组播概述.ppt
37页应 用 层 组 播 概 述应 用 层 组 播 概 述•应用层组网首先是要基于组播和重叠网技术•组播传输组播传输是一对多通信且发送的数据是一致的时候发送方只要发送一份数据,而在路由器上进行复制转发因此适用于那些在时间上具有集中性、而在空间上具有分布性的应用可达到减少带宽浪费(相对与单播而言)和降低服务器处理负担的目的 单播与组播的区别IP 组播是对Internet 基本的单播、尽力发送模型扩充,它把组播的主要功能都放在路由器上实现 IP 组播存在的弊端 •路由器必须为每个组播组单独保存状态,扩展性很差•要求所有参加组播的终端之间的路由器都必须支持组播功能,加大了对路由器的要求•试图用一种统一的组播模型来适应所有的应用,而现实中不同的应用对组播的要求差别很大,这给组播算法的设计造成很大的困难•组播组的管理方法存在缺陷,在组播组的加入、退出和管理等方面开销大,组播组的加入和出的延迟也很大•对那些不是时间上具有集中性、而在空间上具有分布性的应用,效果比较差IP 组播的地址空间不够,在分配上存在困难应用层组播 •保持Internet原有的单播、尽力发送模型,尽量不改变原来网络的体系结构,而主要通过增加端系统的功能来实现组播的功能。
应用层组播的主要优势•应用层组播便于实现、推广它只需要改变端系统,而不需要对路由器进行任何修改•应用层组播便于针对特定应用进行优化,可以针对不同的应用使用不同的实现方案,而不必象IP 组播那样必须统一到一个模型中应用层组播的主要缺点•一般会比IP 组播使用更多的网络资源•由于参与转发的端系统可能不稳定,导致组播转发的可靠性受到影响•由于参与转发的端系统的性能无法保证,可能导致延迟、转发速率等性能的下降组播节点的组织方法 •目前主要方式是树、网和特定的逻辑结构•Tree 的优点是实现简单,维护的开销小,扩展性好它的缺点是可靠性比较差,这主要由于Tree 一般节点接收数据通路是唯一的,是单一故障点•Mesh 和Tree 的优缺点恰好相反,节点一般有多个接收数据通路,可靠性比较高;但维护开销比较大,扩展性比较差 组播节点的维护方法 •节点的加入、退出和“失效”节点的检测节点的加入指新的组播节点如何发现组播组的存在、并加入到组播组中目前大部分算法都假设存在一个或者多个“集中点”RP,通过RP 完成加入的管理 •最主要缺陷是RP很容易成为整个系统的一个瓶颈 PALS原理•由于单对单的媒体流通信时会产生很多的弊端。
如发送者带宽的变化,会对传输数据速率有很大的影响,特别是对实时业务而言这样接收方收到的数据仅没有很好的保证从相对的意义上讲这样也是对重叠网络资源的浪费为了很好的保证接收方的利益,引入了PALS(P2P Adaptive layered streaming)模型它是一种采用多个发送者和单个接收者之间的媒体流通信尤其是针对实时媒体流传输,性能有更大的改善PALS原理设计目标 •在不同发送者带宽随机变化时,达到有效的使用带宽资源,并保持在稳定传输的情况下媒体流性能最优 多对单通信的不足•多个发送者和单个接收者之间的通信,特别是分布式的不同种类对等实体之间媒体流的传输,有很多的问题的存在亟须解决•首先在一次数据发送中,终端的带宽并不是已知不变的,相反可能还会有很大的变化所以发送者必需要提供友好的拥塞控制(发送者和接收者之间是采用UDP进行连接的,用以更好的保证它的实时性)•其次,由于多个发送者之间网络特性的不同,而且发送者可能随时退出通信过程,这样就要求发送者在发送媒体流的同时携带网络参数的集总信息,且多个发送者之间要协同工作 PALS原理PALS原理•有三个发送方和一个接收方进行媒体流通信。
接收方将收到的流按照带宽的不同要求进行分成处理接收到的不同带宽的数据流就进入不同的buffer再对buffer中同一个流,但是它有更佳的性能特性的流进行解码送出播放,以在接收方能达到一个最佳的效果同时在由解码出来的数据得到控制信息,用以控制滑动窗口的大小而窗口的大小选择可以使传输质量的稳定性与自适应质量机制对总体的带宽变化所做出的响应达到均衡自适应质量机制又将产生的一些信息传递给发送者,从而达到最佳利用发送者带宽资源的效果 PALS原理 本质上就是采用接收较多相同的数据流,在从其中选出最符合要求的让接收方播放即以数据传输的冗余性来达到更好的视觉效果 基于PALS的想法•基于上述的原理,如果针对多个发送者和多个接收者的情况,也可以采用类似的方法假设有两个接收者同步或几乎同步需要同一个数据块,而p2p网络中又4个源则接收者可以选用物理距离上最接近它的两个源相其传送数据在两个接收者之间也可以传送数据假定两个接收者是选用不同的源的,则可以将接收到的数据原封不动的在传给对方这之间将会有很多问题的存在,如接收者之间的地址的传送,对有多与2个接收者之间的选取问题,以及对不是同步的,但相差不多的接收者之间的关系等等。
相信有一个研究的空间! ZIGZAG ZIGZAG 简述•实现一个源多个接收者的媒体流传输,利用应用层组播地方式,通过终端进行转发来完成流的传输 ZIGZAG的优点 •树的连续性由一组规则来约束,以保证树的高度和节点数不会太大•网络的动态影响可以很容易解决而无需改变规则•差错恢复只是局部性的,只是影响一部分存在的接收者,不会增加源的负担 ZIGZAG的两个主要部分 •管理组织代表对等体之间的逻辑关系•组播树表示他们之间的物理关系 管理组织•对等体是按多层的层次化结构组织的 0层包含所有的对等体j(j 混合式组播技术混合式组播技术 混合式组播拓扑结构图 混合式组播技术混合式组播技术•核心任务是 :为AM完成拓扑(包括数据拓扑和控制拓扑)的构建由于网络状况的动态性,以及客户端数量与客户端加入系统时间的不确定性,当前的应用层组播方案一般需要每个结点定期与其他全部或一定比例的结点交换控制信息,以了解其他结点的状态,形成控制拓扑,保障数据拓扑的健壮性在结点个数逐渐增加时,网络上的控制信息数量会占用大量的带宽资源 ALMI ALMI简介介•ALMI是美国华盛顿大学St.Louis分校计算机系2001年发布的研究成果,是最早开发的应用层组播中间件之一ALMI实现了应用层组播的基础服务功能,包括组播树构造、成员管理、组播数据分发和自组织组网,支持在小规模的只有少量成员(几十个)的组之间进行可靠通信 ALMIALMI简介介•ALMI使用集中式控制方法来维护组播树的一致性和有效性,由一个网关控制服务器根据终端问的延迟为每一个组生成一颗数据路由树ALMI的一个会话包括一个会话控制器和多个会话成员,会话控制器和会话成员间的通信依靠ALMI的控制协议进行会话控制器集中处理成员注册,周期性地计算和维护组播树,并将结果以(parent, children)列表的形式通知所有成员。 ALMI的组播树是带度约束的双向共享树,树中的成员之间具有父子关系一旦构造好组播树,会话成员就可以发送或接收组播数据,同时也负责向邻居结点转发组播数据VoidVoid简介介•数据传输拓扑 •所有基于数据拓扑优先方法的组播协议都会创建一个共享的数据传输拓扑树,每个成员的任务就是找到合适于自己的父结点 VoidVoid简介介•控制拓扑•为了防止由于某个非叶结点的意外断开而使得整个数据传输树被分割,Void中的每个成员会在数据传输拓扑上随机选取一些非父结点填加到其的连接,这样便组成了控制拓扑 终端系统组播 •终端系统组播提出Narada 协议,运行完全分发协议,终端系统以自组织方式形成覆盖网络终端系统通过适应网络中的动态性和考虑应用层的性能指标优化覆盖网的效率 NARADA 目标 •自组织(Self2organize) 终端覆盖网的构造要以完全分发的方式,动态适应组成员变化时,需具有较强的鲁棒性•有效的覆盖网覆盖网的构造必须使物理传输链路的冗余性最小化•自身优化的能力终端系统要能广泛收集网络中的信息,并借此对Mesh 网的结构进一步的优化构造Mesh 网•Mesh网允许我们对每个发送源构造最优树,可以将成员的管理抽象到Mesh 层。 构造Mesh 网不存在集合点(rendezvous point)节点,也就是说可以通过联系任何已知的活跃组成员执行加入操作;通过交换控制消息来获取组中其它成员的位置随机选择一些组成员作为自己的邻居,邻居节点之间交换更新消息维护Mesh•我们在构造分发树时还可以使用已有的路由算法 Mesh 网性能的优化 •新节点的加入并没有考虑网络拓扑•分离和修复可能产生多余的链路•组成员之间因加入、离开是不断变化•底层的网络环境、路由、负载情况不尽相同所以Narada 利用一定的策略算法对链路进行评估,添加和去除链路优化性能分发树的构造 •在Mesh 网上运行距离向量协议和构造最短路径剪枝树分发树的质量取决于所构造的Mesh 网的性能因为分发树是在Mesh 网的基础上进行剪枝构造的,所以Mesh 网的构造是极为关键的NICE 模型•NICE 是一种可扩展的应用层组播,主要针对大量接收者的低带宽、数据流应用,它基于分层的结构,同时具有较小的控制负荷,有利于它的扩展性采用Implicit方法和基于层次化(Hierarchical)的节点集群(Cluster)思想,可以支持大量接收者的组播应用NICE 的数据拓扑隐含在它的控制拓扑中,因而还可以支持不同源的数据分发树;并且由于它的分层,进行错误检测较为迅速 NICE 的控制拓扑与数据拓扑 •图2 NICE 成员的分层NICE 的控制拓扑与数据拓扑•从L0 到L1 层在每个层中,成员被分为多个群集,每个群集的数量k~3k-1。 控制拓扑的图形,将每层群集中的领导节点连接起来,每个节点只包含一定常数量的成员信息,这样有更好的扩展性数据拓扑、图形,可以在控制拓扑上,单源进行方便的构造,分发树隐含在控制拓扑中,可以方便地构造多个分发树控制拓扑:每个层中群集的成员可以很快地清楚其对等成员的变化信息如图3中B0 可以知道L0 层上A0 ,A1 ,A2 ,还有L1 层上B1 ,B2 ,C0 的信息,邻居之间信息的交换在控制拓扑上交换数据拓扑:组播数据的分发路径需要防止循环数据的分发是一个具有固定源的树如图4 所示,从源A0 发送数据的情况我们可以看出数据拓扑隐含于控制拓扑中 谢谢大家!。












