网站首页/网络技术列表/内容

组播的相关概念

网络技术2023-01-07阅读
网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。

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。

网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。

相关阅读