应用层组播协议研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[ 1] M ojt ab a H osseini N icol as D. G eorganas. End s yst em mult icast rout ing f or mu lt i part y video conf er encin g applicat ions [ J ] . Comput er Comm unicat ions, 2006, 29: 2 046 2 065 [ 2] Ban erjee S, Bhatt acharjee B, K ommareddy C. Scalable applicat ion layer mult icast [ A ] . In Proceeding s of 2002 A CM Conf erence on A pplicat ions, T echnologies, A rch itect ures, and Prot ocols f or Comput er C om municat ions [ C] . Pit t sburgh PA : U niversit y of Calif ornia, 2002: 205 217 [ 3] H ei X, Liang C, Liang J . A measu rement st udy of a large scale P2P IPT V syst em [ J] . IEEE Transact ion on M ult imedia, 2007, 9( 8) : 1 672 1 687 [ 4] [ 5] Pendarakis D, S hi S, V erma D , et al. A n appl icat ion l evel mult icast in frast ructu re[ A ] . A LM I: In Proceeding s of 3 rd U senix Sympos ium on Int ernet Techn ol ogies and S yst em s[ C] . Cal ifornia: U s enix A s sociati on, 2001: 49 60 Fran cis P. Ext endin g t he m ult icast in t ernet archit ect ure [ EB/ O L] . ht t p: / / w ww . aciri. org/ yoid, 1999 03 16
1
应用层组播概述
应用层组播的基本思想是屏蔽底层物理网络的拓扑细节、 将所有 P2P 客户端组成员自组织成一个叠加在
IP 网络之上的, 实现组播业务逻辑的覆盖网( Overlay Netw ork) . 应用层组播并不像 IP 组播那样数据在路由器 处进行复制转发, 其数据的复制、 路由和转发功能均在 P2P 客户端完成. 图 1 给出了简单单播、IP 组播和应用 层组播的一个对比图. 图中 A 节点是发送节点, B, C, D 为接收节点, R1, R2 为路由器. 图 1 为单播数据传输方 式, 该方式下发送节点为每个接收节点分别建立从发送源到目的地的传输路径, 因而在靠近发送源的路径上会 产生许多重复报文 , 易造成链路拥塞、 形成服务瓶颈 . 图 2 为 IP 组播数据传输的方式, 数据在路由器上进行复 制, 这样就使得任何物理链路上只有一个数据传输, 可有效避免冗余传输 , 节省网络带宽. 图 3 为应用层组播的 传输方式, 数据在终端节点处进行复制, 这种组播方式会减少靠近发送源的路径上的重复发送报文的次数 , 节 省网络带宽, 对带宽的利用率虽然不及 IP 组播, 但不需要任何的网络底层改变.
图1
单播
图2
IP 组播 F ig . 3
图3
应用层组播
Fig. 1 U nicast
F ig. 2 IP multicast
Application lev el multicast
2. 1 网状拓扑优先方法 在此类方案中 , 组播组的成员首先自组织成一个网状控制拓扑 , 然后在该网状控制拓扑上由具体的路由 算法生成组播树. 网状拓扑优先方法构建的协议可靠性较高 , 但维护开销较大 , 扩展性较差. 一般情况下, 网 状拓扑优先方法适用于中小型组播组 . 目前此类比较有代表的协议有 Narada. Narada 协议首先在组成员之间构建一个丰富的连接图 ( mesh) , 当有新成员加入时 , 此成员会从 RP 处 获得该组播组的成员列表, 随机选择部分成员作为自己加入的邻接点 , 当任意一个组成员响应了加入消息 时 , 此新成员就成功加入了这个组播组. 成功加入后 , 此新成员开始和它的邻接点交换刷新组成员信息 . 在已 有的连接图上 , Narada 采用类似于 DVM RP 的反向路径转发算法来构造最短路径组播树以传输数据. 组播 树的质量取决于所构造的 Mesh 网的性能 . 图 4 为 ABCDE5 个节点构成了 M esh 网, 而带箭头的虚线表示以 A 节点为根节点的一棵最短路径生成树, 也即是图 5 的树结构 .
0
引言
随着 Int ernet 的普及和信息传输技术的发展, Internet 中有很多 新的应用, 如音频 / 视频会议、 网络电
视、 在线视频、 文件分发等, 特别是音频/ 视频的直播、 点播等流媒体数据传输业务流量成为 Internet 上的主 要流量 . 现有的流媒体系统主要是基于 Client/ Serv er 模式 , 服务器以单播的方式和每个客户端建立连接. 但 由于流媒体服务具有高带宽、 持续时间长等特点 , 随着客户端的数目逐步增加 , 服务器的资源很快就被消耗 完 , 成为系统的瓶颈所在, 导致系统的可扩展性极差 . IP 组播是解决 C/ S 模式瓶颈的有效方案. 然而由于 IP 组播方案的技术性问题及需要 ISP 的支持, IP 组播自提出到现在已经有十多年了, 却还没有被广泛地应用 到 Internet 中. 应用层组播是最近几年提出的概念 , 应用层组播基于 P2P 思想 , 克服了 IP 组播的缺陷 : 无须 更改网络底层的配置. 目前 , 应用层组播研究已有相当的进展, 如 Narada [ 1] , NICE [ 2] , PP LIVE [ 3] 及 AL MI [ 4] 等 . 其中一些已应用在 Int ernet 上.
图6 F ig . 6
控制拓扑
图7 F ig . 7
数据拓扑 . Data topolog y
Co nt rol topolog y
3
结束语
目前, 对应用层组播的研究才刚刚起步 , 每个应用层组播协议都是针对某种应用的解决方案 , 协议面向 的应用不同, 其组网协议的性能侧重点也就不同 . 研究多集中在系统的框架设计和组播节点的组织上, 而诸 如安全、 网络性能测量技术、 流量控制和拥塞控制研究较少, 特别是随着 P2P 技术的发展 , 网络电视、 远程教 学、 文件分发等 P2P 流媒体应用已成为目前 Int ernet 上的主要流量 . 流媒体的特点是数据量大、 传输持续时 间长, 并且对延迟、 抖动、 丢包率、 带宽等 QoS 要求较高, 因此, 深入研究应用层组播及其相应的 Q oS 机制 , 是下一阶段应重点研究的问题. 参考文献 :
62
太 原 师 范 学 院 学 报 ( 自然科学Baidu Nhomakorabea )
第9卷
NICE 协议将参与组播的所有节点分成若干层, 最底层为 Layer0 表示, 以此类推. 每层的节点又都被分在 若干个簇中, 簇的大小为[ k, 3k- 1] , k 为常量 . 所有节点都是最低层次 Layer0 的成员 , 然后从 Layer0 层的每个 簇中选出各自的簇首节点, 这些簇首节点便组成 Layer1 的节点, 从 Layer1 层的每个簇中选出各自的簇首节点, 便组成了 Layer2 层的节点, 以此类推, 最上层只有一个节点. 图 6 为 NICE 协议的控制拓扑, 在这个控制拓扑中 每个簇中的成员都保留着其所属簇中的其他成员的状态信息. 数据拓扑组播树隐含在控制拓扑中, 数据源会把 数据发向它在控制拓扑上的所有邻接点. 只有当某个邻接点是簇首节点时, 才把收到的数据转发给其所属簇 ( 其父节点所属的簇除外) 的其他成员. 如图 7 是节点 A 作为数据源时的数据传输树.
*
应用层组播协议研究
随冬梅 王秋艳
( 商丘师范学院 软件学院 , 河南 商丘 476000)
摘要 lP 组播方案由于其自身存在一些很难解决的问题未能获得广泛应用 . 随着 P 2P 技术 的快速发展, 基于 P 2P 的应用层组播成为近几年的研究热点. 文章对 P2P 应用层组播做了简要概 述 , 详细介绍了目前主要应用层组播协议的实现 , 并指出应用层组播以后的研究方向. 关键词 P 2P; lP 组播 ; 应用层组播 文章编号 1672 2027( 2010) 02 0060 03 中图分类号 T P393 文献标识码 A
2
应用层组播协议的实现
应用层组播协议通常都按照两个拓扑结构组织组播成员, 一个是控制拓扑结构 , 一个是数据拓扑结构 .
控制拓扑结构一般是由组播成员构成的连通图 ( M esh) , 组播成员之间周期性地交换控制信息 , 负责监视连 接节点的变化、 以维护网络的连通性 . 数据拓扑结构通常是控制拓扑结构的子集, 是组播数据在覆盖网中的 数据传输路径 . 数据拓扑结构是一个树状结构( T r ee) , 数据从树根节点发送 , 沿着该开环树中间节点转发 , 一
* 收稿日期 : 2010 02 10
作者简介 : 随冬梅 ( 1978 ) , 女 , 河南商丘人 , 硕士 , 商丘师范学院助教 , 主要从事计算机网络与通信研究 .
第2期
随冬 梅等 : 应用层组播协议研究
61
直到各叶节点 . 根据构造控制拓扑结构和数据拓扑结构的顺序不同 , 现有的应用层组播协议可以分成三大 类 : 网状拓扑优先方法 ( M esh f irst ) 、 树状拓扑优先方法 ( T ree first ) 以及隐式方法 ( implicit ) .
第9卷 第2期 2010 年 6 月
太 原 师 范 学 院 学 报 ( 自然科学版 ) JO U RN A L O F T AIY U A N NO RM A L U N IV ER SIT Y ( N atural Science Edit ion)
V ol. 9 N o. 2 Jun. 2010
图4
M esh 网
图 5 树结构 F ig. 5 T ree structure
F ig . 4 M esh netwo rk
2. 2 树状拓扑优先方法 树状拓扑优先方法的特点是先建立一个树状数据拓扑结构. 然后, 在这个树结构上的没有连接关系的树 节点之间增加一些连接便组成了控制网状拓扑 , 以防止由于某个非叶节点的离开而使得组播树断开. 树状拓 扑优先方法实现起来简单 , 维护开销小, 扩展性 好, 但可靠性较差 . 树状拓扑优先协议 最具有代表性 的是 Yoid[ 5] 协议 . 在 Yoid 协议中 , 存放组播数据的服务器是树的根, 一个新节点想要加入到组播树时 , 通过咨询 RP 节点 以获取组播树上的节点信息 , 新节点依次向这一系列节点发送探测信息, 若某个节点满足下面两个条件 : 1) 如果其成为该新节点的父节点, 数据拓扑树上不会出现循环 . 2) 如果选该新节点为其子节点后, 其子节点个 数不会超过它的节点度 . 如果新成员找到了多个合适的父结点 , 那么它将根据具体实际量度的要求来找出最 合适的一个父结点 . 为了防止树中某个中间结点的离开而使得整个组播树断开 , Yoid 中的每个成员会在数据传输拓扑上随 机选取一些非父结点添加到其的连接 , 这样便组成了控制拓扑 . 2. 3 隐式组播方法 隐式的应用层组播路 由协议通常可以支持规模相当大的组 播组, 具有 良好的可扩展 性. 代表性 的有 NICE 协议 . NICE 协议是一种可扩展的应用层组播协议, 采用了! 分层∀ 、 ! 分簇∀ 的思想. 它的分层思想 , 使错 误检测变得较为迅速, 分簇的思想也使节点的失效和离开只影响局部节点 , 对服务器没有影响 . 并且由于 NICE 的数据拓扑隐含在它的控制拓扑中, NICE 协议可以支持不同数据源的数据分发树 .
1
应用层组播概述
应用层组播的基本思想是屏蔽底层物理网络的拓扑细节、 将所有 P2P 客户端组成员自组织成一个叠加在
IP 网络之上的, 实现组播业务逻辑的覆盖网( Overlay Netw ork) . 应用层组播并不像 IP 组播那样数据在路由器 处进行复制转发, 其数据的复制、 路由和转发功能均在 P2P 客户端完成. 图 1 给出了简单单播、IP 组播和应用 层组播的一个对比图. 图中 A 节点是发送节点, B, C, D 为接收节点, R1, R2 为路由器. 图 1 为单播数据传输方 式, 该方式下发送节点为每个接收节点分别建立从发送源到目的地的传输路径, 因而在靠近发送源的路径上会 产生许多重复报文 , 易造成链路拥塞、 形成服务瓶颈 . 图 2 为 IP 组播数据传输的方式, 数据在路由器上进行复 制, 这样就使得任何物理链路上只有一个数据传输, 可有效避免冗余传输 , 节省网络带宽. 图 3 为应用层组播的 传输方式, 数据在终端节点处进行复制, 这种组播方式会减少靠近发送源的路径上的重复发送报文的次数 , 节 省网络带宽, 对带宽的利用率虽然不及 IP 组播, 但不需要任何的网络底层改变.
图1
单播
图2
IP 组播 F ig . 3
图3
应用层组播
Fig. 1 U nicast
F ig. 2 IP multicast
Application lev el multicast
2. 1 网状拓扑优先方法 在此类方案中 , 组播组的成员首先自组织成一个网状控制拓扑 , 然后在该网状控制拓扑上由具体的路由 算法生成组播树. 网状拓扑优先方法构建的协议可靠性较高 , 但维护开销较大 , 扩展性较差. 一般情况下, 网 状拓扑优先方法适用于中小型组播组 . 目前此类比较有代表的协议有 Narada. Narada 协议首先在组成员之间构建一个丰富的连接图 ( mesh) , 当有新成员加入时 , 此成员会从 RP 处 获得该组播组的成员列表, 随机选择部分成员作为自己加入的邻接点 , 当任意一个组成员响应了加入消息 时 , 此新成员就成功加入了这个组播组. 成功加入后 , 此新成员开始和它的邻接点交换刷新组成员信息 . 在已 有的连接图上 , Narada 采用类似于 DVM RP 的反向路径转发算法来构造最短路径组播树以传输数据. 组播 树的质量取决于所构造的 Mesh 网的性能 . 图 4 为 ABCDE5 个节点构成了 M esh 网, 而带箭头的虚线表示以 A 节点为根节点的一棵最短路径生成树, 也即是图 5 的树结构 .
0
引言
随着 Int ernet 的普及和信息传输技术的发展, Internet 中有很多 新的应用, 如音频 / 视频会议、 网络电
视、 在线视频、 文件分发等, 特别是音频/ 视频的直播、 点播等流媒体数据传输业务流量成为 Internet 上的主 要流量 . 现有的流媒体系统主要是基于 Client/ Serv er 模式 , 服务器以单播的方式和每个客户端建立连接. 但 由于流媒体服务具有高带宽、 持续时间长等特点 , 随着客户端的数目逐步增加 , 服务器的资源很快就被消耗 完 , 成为系统的瓶颈所在, 导致系统的可扩展性极差 . IP 组播是解决 C/ S 模式瓶颈的有效方案. 然而由于 IP 组播方案的技术性问题及需要 ISP 的支持, IP 组播自提出到现在已经有十多年了, 却还没有被广泛地应用 到 Internet 中. 应用层组播是最近几年提出的概念 , 应用层组播基于 P2P 思想 , 克服了 IP 组播的缺陷 : 无须 更改网络底层的配置. 目前 , 应用层组播研究已有相当的进展, 如 Narada [ 1] , NICE [ 2] , PP LIVE [ 3] 及 AL MI [ 4] 等 . 其中一些已应用在 Int ernet 上.
图6 F ig . 6
控制拓扑
图7 F ig . 7
数据拓扑 . Data topolog y
Co nt rol topolog y
3
结束语
目前, 对应用层组播的研究才刚刚起步 , 每个应用层组播协议都是针对某种应用的解决方案 , 协议面向 的应用不同, 其组网协议的性能侧重点也就不同 . 研究多集中在系统的框架设计和组播节点的组织上, 而诸 如安全、 网络性能测量技术、 流量控制和拥塞控制研究较少, 特别是随着 P2P 技术的发展 , 网络电视、 远程教 学、 文件分发等 P2P 流媒体应用已成为目前 Int ernet 上的主要流量 . 流媒体的特点是数据量大、 传输持续时 间长, 并且对延迟、 抖动、 丢包率、 带宽等 QoS 要求较高, 因此, 深入研究应用层组播及其相应的 Q oS 机制 , 是下一阶段应重点研究的问题. 参考文献 :
62
太 原 师 范 学 院 学 报 ( 自然科学Baidu Nhomakorabea )
第9卷
NICE 协议将参与组播的所有节点分成若干层, 最底层为 Layer0 表示, 以此类推. 每层的节点又都被分在 若干个簇中, 簇的大小为[ k, 3k- 1] , k 为常量 . 所有节点都是最低层次 Layer0 的成员 , 然后从 Layer0 层的每个 簇中选出各自的簇首节点, 这些簇首节点便组成 Layer1 的节点, 从 Layer1 层的每个簇中选出各自的簇首节点, 便组成了 Layer2 层的节点, 以此类推, 最上层只有一个节点. 图 6 为 NICE 协议的控制拓扑, 在这个控制拓扑中 每个簇中的成员都保留着其所属簇中的其他成员的状态信息. 数据拓扑组播树隐含在控制拓扑中, 数据源会把 数据发向它在控制拓扑上的所有邻接点. 只有当某个邻接点是簇首节点时, 才把收到的数据转发给其所属簇 ( 其父节点所属的簇除外) 的其他成员. 如图 7 是节点 A 作为数据源时的数据传输树.
*
应用层组播协议研究
随冬梅 王秋艳
( 商丘师范学院 软件学院 , 河南 商丘 476000)
摘要 lP 组播方案由于其自身存在一些很难解决的问题未能获得广泛应用 . 随着 P 2P 技术 的快速发展, 基于 P 2P 的应用层组播成为近几年的研究热点. 文章对 P2P 应用层组播做了简要概 述 , 详细介绍了目前主要应用层组播协议的实现 , 并指出应用层组播以后的研究方向. 关键词 P 2P; lP 组播 ; 应用层组播 文章编号 1672 2027( 2010) 02 0060 03 中图分类号 T P393 文献标识码 A
2
应用层组播协议的实现
应用层组播协议通常都按照两个拓扑结构组织组播成员, 一个是控制拓扑结构 , 一个是数据拓扑结构 .
控制拓扑结构一般是由组播成员构成的连通图 ( M esh) , 组播成员之间周期性地交换控制信息 , 负责监视连 接节点的变化、 以维护网络的连通性 . 数据拓扑结构通常是控制拓扑结构的子集, 是组播数据在覆盖网中的 数据传输路径 . 数据拓扑结构是一个树状结构( T r ee) , 数据从树根节点发送 , 沿着该开环树中间节点转发 , 一
* 收稿日期 : 2010 02 10
作者简介 : 随冬梅 ( 1978 ) , 女 , 河南商丘人 , 硕士 , 商丘师范学院助教 , 主要从事计算机网络与通信研究 .
第2期
随冬 梅等 : 应用层组播协议研究
61
直到各叶节点 . 根据构造控制拓扑结构和数据拓扑结构的顺序不同 , 现有的应用层组播协议可以分成三大 类 : 网状拓扑优先方法 ( M esh f irst ) 、 树状拓扑优先方法 ( T ree first ) 以及隐式方法 ( implicit ) .
第9卷 第2期 2010 年 6 月
太 原 师 范 学 院 学 报 ( 自然科学版 ) JO U RN A L O F T AIY U A N NO RM A L U N IV ER SIT Y ( N atural Science Edit ion)
V ol. 9 N o. 2 Jun. 2010
图4
M esh 网
图 5 树结构 F ig. 5 T ree structure
F ig . 4 M esh netwo rk
2. 2 树状拓扑优先方法 树状拓扑优先方法的特点是先建立一个树状数据拓扑结构. 然后, 在这个树结构上的没有连接关系的树 节点之间增加一些连接便组成了控制网状拓扑 , 以防止由于某个非叶节点的离开而使得组播树断开. 树状拓 扑优先方法实现起来简单 , 维护开销小, 扩展性 好, 但可靠性较差 . 树状拓扑优先协议 最具有代表性 的是 Yoid[ 5] 协议 . 在 Yoid 协议中 , 存放组播数据的服务器是树的根, 一个新节点想要加入到组播树时 , 通过咨询 RP 节点 以获取组播树上的节点信息 , 新节点依次向这一系列节点发送探测信息, 若某个节点满足下面两个条件 : 1) 如果其成为该新节点的父节点, 数据拓扑树上不会出现循环 . 2) 如果选该新节点为其子节点后, 其子节点个 数不会超过它的节点度 . 如果新成员找到了多个合适的父结点 , 那么它将根据具体实际量度的要求来找出最 合适的一个父结点 . 为了防止树中某个中间结点的离开而使得整个组播树断开 , Yoid 中的每个成员会在数据传输拓扑上随 机选取一些非父结点添加到其的连接 , 这样便组成了控制拓扑 . 2. 3 隐式组播方法 隐式的应用层组播路 由协议通常可以支持规模相当大的组 播组, 具有 良好的可扩展 性. 代表性 的有 NICE 协议 . NICE 协议是一种可扩展的应用层组播协议, 采用了! 分层∀ 、 ! 分簇∀ 的思想. 它的分层思想 , 使错 误检测变得较为迅速, 分簇的思想也使节点的失效和离开只影响局部节点 , 对服务器没有影响 . 并且由于 NICE 的数据拓扑隐含在它的控制拓扑中, NICE 协议可以支持不同数据源的数据分发树 .