分享
 
 
 

组播的相关概念

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

D类地址是用于组播,也就是以1110开头,剩下28位用于鉴别组播地址(剩下的这28是个无结构的地址), 以01005e开头的MAC地址用于表示MAC的组播地址,剩下的23位用于标识组播,IP组播地址对于MAC地址有一个映射关系,也就是IP组播的后23对应Mac组播的后23位,这样就有可能出现多个IP对应一个MAC的现象,它们之间用Arp来解析。

假如一个局域网使用组播,那么所有的主机必须加入一个all-host组(组播地址为224.0.0.1),但是Host可以决定是否去接受组播。当一个组播交通决定传输之前,router需要知道那个Host想接收组播,IGMPv1, IGMPv2用于发现是否有这个组播组的成员在它直连的子网里,IGMP用一个querying device去请求和报告Host加入和离开组播组,它有两种message, 一个是query messages 用于组播路由器去发现Member, 还有一个是report message,它是由主机发送,报告那个主机想加入组播组,IGMP间断的发送query message到224.0.0.1(用于标识所有主机), 直连网段中的其中一台Host发送report message来报告谁想接收组播,但是假如Host 想加入组播组,它可不必等待query message, Host 可以主动的发送一个report message到224.0.0.2(标识组播组中的所有组播路由器)

IGMPv2 提供了leave meassage,主机主动发送这个离开信息到224.0.0.2,表明这台主机想离开这个组播组,query router发送一个query message ( specific-group)的信息从那个接收离开组的端口,如有其它的主机还想加入这个组播组,则向这个query device发送一个specific-group 的report message, 假如在一定时间内没有主机反应这个group-specific query message, 则表明没有本地成员在这个组里面

在交换机转发组播中,由于IP组播映射到一个Layer 2 multicast address, 所以组播必须发送到所有的交换机端口,当一台主机向组播路由器报告成员信息,组播由路由器发送到交换机,由于组播使用组播地址传送流量,所以它不知道实际的目的mac地址,因而它将它发送到所有的交换机端口,可以使用划分VLAN来解决这个问题,但是使用VLAN不能动态的添加和删除成员,这样,交换机必须处理每一个组播包,加大了处理延时,降低了交换机的性能,这样就出现了一个router to switch的解决方法---CGMP, CGM答应交换机向组播路由器学习有关组成员的信息,在这个环境里,rotuer是一个CGMP服务器,switch是一个Client, 当router 接收一个组播包,它立即创建一个CGMP包,这个包发送到一个well-know地址,所交换机都能收到这个包,然后交换机解释这个包,创建一个forwarding table。

在每个物理段中,一个指明路由器被选择,指明路由器构造一个分布树,连接一个组播组有所有的成员,以保证高效的传输。这个router可copy所有进入的包,然后把它发送到它的分支树,因为组播组是动态的所以分布树也必须是动态的升级,一个分支加入一个分布树就像一个新的成员加入组播组,相反的说,假如这个分支没有接收者,刚这个分支被删除。

有两种分布树可以在组播路由中使用:1.源指定(source specific) 2.共享(shared), 指定源的方式针对于每个组播组的源 处理Spanning tree,例如,假如10个成员在10个分离的子网,创建基于10个组播组的10个不同的路由树被, 源指定使用从源到目的的最短路径最小化了延时,source-based 的分布树使用一个叫相反路径转发的机制(Reverse Path Forwarding RPF), 当一个router接收一个带源的组播包,它在它所有的端口转发这个包,除了接收这个包的端口,然而,转发只发生在提供最短路径返回发送者的链路,假如这个包到达了一个不是最短的路径上,则这个包被discard。

提供一个到组播指明路由器和源之间的链路叫作父链路,router的处出端口叫子链路。

在共享树(shared-tree)的方式, 所有的包沿着分布树发送到组播组,不考虑发送的源,这种方式削减了处理时间,但是导致了较大的端到端的延时

然而,不同于spanning-tree机制,不同的组播组定义了不同的分布树,假如一个设备想接收数据,它必须加入这个组的共享树,组播路由协议通过检测一个点播的路由可达来建交分布树。

组播包使用IP Header的TTL域来限制它的可达范围,每经过一个路由器,TTL的值减1,假如TTL过期,则这个包被抛弃,Packet的TTL大于接口的TTL门限,则被转发,假如等于小于接口的门限则抛弃。

0 限制在同一个主机,从来不被发送到任何接口

1 限制在相同的子网,从来不被router转发

15限制在相同的site, 组织,或部门

63限制在相同的区域

127worldwide

191workwide, limited bandwidth

255unrestricted in scope ; global

IP组播路由协议用于发现组播组和建立每个组播组的分布树

client to router : IGMP

Router to Switch: CGMP

Router to Router : DVMRP, PIM, MOSPF, CBT

组播路由协议有以下两种方式:密集方式路由(dense-mode routing)和稀疏方式路由(sparse-mode routing)

怎样选用这两种方式,取决于组播组的成员在整个网络中的分布,假如网络中几乎所有的路由器都为每个组播组分发组播信息则使用Dense-mode, 为了维护分布树,Dense-mode组播路由协议间歇的flood网络组播信息,Dense-mode适用于组成员密集的分布在整个网络,而且有足够的带宽来容忍flood。

sparse-mode路由协议用于每个组播只有很少的几个路由器(并不意味着每个组播组只有很少的成员),它意味着组播组成员被广泛的分散,例如Internet Muticast, sparse-mode也假设网络带宽很有限,sparse-mode不使用flood,开始时它先建立一个空的分布树,只有当成员请求加入组播组时,它才向分布树添加一个分支。

dense-mode路由协议包括:Distance Vector Multicast Routing Protocol (DVMRP), Multicast Open Shortest Path First (MOSPF), Protocol Independent Multicast Dense Mode(PIMDM)

DVMRP大多数用于组播主干(MBONE)路由器,它使用反路径flood(reverse path flooding), 当DVMRP接收一个包时,它在它连接的所有路径上flood这个包,除了接收路径,这样,这个包可以到达所有的LAN,假如某个网段没有任何组播组的成员,则路由器发送一个削减信息返回分布树,这人削减信息防止后来的包发送到这个没有成员的区域,DVMRP使用它自己集成的路由协议去决定包返回源的路径,这个点播路由协议很像RIP,它基于hop counts, 为了可以让新的主机加入组播组,DVMRP间断的flood, DVMRP很少在大的网络中使用。DVMRP的扩展性不好,因为它依靠Flood.

MOSPF(Cisco不支持)依靠于它集成的OSPF,MOSPF适用于单独的路由域,例如一个网络被一个单独的组织控制,OSPF是一个链路状态路由协议,MOSPF把组播信息加入OSPF链路状态广告,在一个OSPF/MOSPF网络中,每个路由器基于链路状态信息维护一个具体的网络拓补,一个MOSPF路由器使用链路状态广告去学习在连接LAN中有那个组播组被激活,它通过这个信息构造分布树,MOSPF基于包的源和目的地址来转发包,一个基于每source-group 的分离最短路径分布树被建立,分布树当网络拓补发生变化以及cache过期时被重新计算,MOSPF适用于在同一时间只有少量的soure-group被激活,不推荐MOSPF使用于不稳定的环境中。

PIM DM和DVMRP相似,都使用相反路径flooding(reverse path flooding), 当PIM DM接收一个包时,它在它连接的所有路径上flood这个包,除了接收路径,假如某个网段没有任何组播组的成员,则路由器发送一个削减信息返回分布树, 协议独立意味着它不依靠任何一个指定的点播路由协议,这个原则适用于dense-mode和sparse-mode,PIM可以使用所有的点播路由协议,PIM适用于发送者和接收者的距离很近,也适用于很少的发送者和很多的接收者,以及流量很高的情况.

Sparse-mode的两种组播路由协议:

Protocol Independent Multicast Sparse Mode (PIM SM) 和Core-Based Trees (CBT)

PIM SM适用于只有较少的接收者,以及流量不频繁,这个协议可以同时处理几个组播数据流,非常适合应用于WAN 或者是Internet, 它定义一个集合点(rendezvous point), 一个发送者必须发送数据到这个集合点,接收者在接收数据之前要先在集合点登记,路由器自动的优化路径,PIM可以在某些组播组中使用dense-mode的同时,在另外一些组中使用sparse-mode.

在CBT环境中,所有的组成员共享一个单独的树,组播流在相同的分布树上传输,不考虑源,CBT和Spanning-tree相似,除了为每个组播组创建一个分离的树,一个基于Core的树可以使用一个单独的路由器,或是一组路由器做为核心,路由器通过发送一个加入信息加入核心,核心发送一个确认返回路由器,一个加入信息不需要必须被核心确认,这台路由器成为分布树的一个分支

例子:

一个client发送一个IGMP 加入信息,下一跳的router接收这个信息,记录IGMP的源MAC地址, 然后产生一个CGMP包发送到switch, 交换机使用这个CGMP信息动态的在switch talbe中建立一个表项,这个表项是实际组播Host地址到交换机端口映射

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有