组播基础-璇毅正的博客

组播基础

组播的优势:
1、提高效率,降低网络流量,减轻硬件负荷;
2、优化性能:减少冗余流量,节约网络带宽,降低网路负载;
3、分布式应用,使多点应用成为可能。

组播的劣势:
1、 基于UDP;
2、 尽力而为;
3、 没有拥塞避免机制;
4、 报文重复;
5、 报文失序。


组播服务模型:
1、 ASM(Any-Source Multicast)任意源组播:使用(*,G)表项,所以在网络中,一个组播地址只能用于同一个应用;一个组播组地址作为一个网络服务的集合,任何源发布到该组地址的数据得到同样的服务。
2、 SSM(Source-Specific Multicast)指定源组播:使用(S,G)表项,在网络中,不同的源之间可以使用相同的组播地址;针对特定源和组的绑定数据流提供服务,接收者主机在加入组播组时,可以指定只接收哪些源的数据。加入组播组以后,主机只会收到指定源发送到该组的数据。


组播地址
1、 IPV4组播地址:

1)、224.0.0.0~224.0.0.255,永久组地址,用于标识一组特定的网络设备,供路由协议、拓扑查找等使用,不用于组播转发。
2)、224.0.1.0~231.255.255.255 、 233.0.0.0~238.255.255.255:ASM公网组播地址,全网范围内有效。
3)、239.0.0.0~239.255.255.255:私有地址,本地管理组地址,仅在本地管理域内有效。
4)、232.0.0.0~232.255.255.255:SSM公网组播地址,全网范围内有效。

2、 IPV6组播地址:
组播基础
组播基础
常用的组播地址范围:
组播基础


IPV4组播MAC地址:
IANA 规定, IPv4 组播 MAC 地址的高 24 位为 0x01005e,第 25 位为 0,低 23 位为 IPv4 组播地址的低 23 位的映射,这样在IP地址还有9bit没有定义,又因为组播IP地址的高4个bit被定义为1110(就是224开头的网段),所以还有5个bit是没有被定义的,这样就导致了有32个IP地址是被映射到同一个MAC地址上。


IPV4组播协议:
1、 组播组管理协议IGMP(Internet Group Management Protocol):运行在组播网络中的最后一段,即三层网络设备与用户主机相连的网段内。IGMP协议在主机端实现组播组成员加入与离开,在上游的三层设备中实现组成员关系的维护与管理,同时支持与上层组播路由协议的信息交互。(目前版本:IGMPv1、IGMPv2和IGMPv3)
2、 协议无关组播PIM(Protocol Independent Multicast):用于将网络中的组播数据流发送到有组播数据请求的组成员所连接的组播设备上,从而实现组播数据的路由查找与转发。(PIM分类:PIM-DM(Protocol Independent Multicast Dense Mode)协议无关组播-密集模式、PIM-SM(Protocol Independent Multicast Sparse Mode)协议无关组播-稀疏模式和双向PIM(Bidirectional Protocol Independent Multicast))
3、 组播源发现协议MSDP(Multicast Source Discovery Protocol):解决多个PIM-SM域之间的互连的一种域间组播协议,用来发现其他PIM-SM域内的组播源信息,将远端域内的活动信源信息传递给本地域内的接收者,从而实现组播报文的跨域转发。(只有PIM-SM使用ASM模型时,才需要使用MSDP)
4、 组播边界网关协议MBGP(MultiProtocol Border Gateway Protocol):实现了跨AS域的组播转发。适用于组播源与组播接收者在不同AS域的场景。
5、 IGMP Snooping & IGMP Snooping Proxy:
1)、IGMP Snooping功能可以使交换机工作在二层时,通过侦听上游的三层设备和用户主机之间发送的IGMP报文来建立组播数据报文的二层转发表,管理和控制组播数据报文的转发,进而有效抑制组播数据在二层网络中扩散。
2)、IGMP Snooping Proxy功能在IGMP Snooping的基础上使交换机代替上游三层设备向下游主机发送IGMP Query报文和代替下游主机向上游设备发送IGMP Report和Leave报文,这样能够有效的节约上游设备和本设备之间的带宽。


RPF校验:
因为PIM协议是依赖于单播路由表的,所以组播的下一跳地址必须要和单播路由表的下一跳地址匹配,否则RPF校验不通过,不会转发组播流量,这也是组播防环的一个机制。
RPF(Reverse Path Forwarding,逆向路径检查):组播报文的源地址是单播地址,路由器接收到组播报文后,根据源地址的单播路由来判断报文的入接口到上游组播源路径是否最佳。
组播数据和单播数据的转发是相反的:
1、单播路由关心的是数据报文要去往那里;
2、组播路由关心的是数据报文从那里过来的;
所以在组播中引入了RPF检查用于防环。


组播树:
1、共享树:

以RP(公用根)为根,接受者为叶子,构建一条从接受者到RP之间的最短路径树,叫做共享树RPT,在组播路由表里显示为(*,G)。(注:从组播源到RP之间依旧是源树。)
2、源路径树:
以组播源为根,接受者为叶子,构建一条从接受者到组播源最短的一条转发树,这条树就叫做源树SPT。在组播路由表里显示为(S,G)。

组播树优势对比:
1、 源树:路径最优,延迟最小,耗用资源最多。
2、 共享树:路径不是最优,延迟较大,耗用资源少。