目录
5.1 任意源组播(Any Source Multicast)
5.2 指定源组播(Source-Specific Multicast)
7.1 IGMP(Internet Group Management Protocol)
7.2 PIM(Protocol Independent Multicast)
7.3 MSDP(Multicast Source Discovery Protocol)
7.4 MBGP(Multicast Border Gateway Protocol)
1.IP组播知识汇总
2.IP组播系统
图 1 IP组播系统
3.组播基础概念
- 组播组(Multicast Group)
是指具有相同组播地址的主机集合。组播组可以是静态的或者动态的,静态的组播组通常是由网络管理员手动配置的,而动态的组播组则是由某些协议(如IGMP协议)动态地加入或离开组播组。
- 组播成员(Multicast Member)
是指加入了某个组播组的主机。主机可以通过向组播路由器发送IGMP报文来加入或离开组播组。当一个主机加入到一个组播组时,它会接收到该组播组的所有流量。
- 组播源(Multicast Source)
是指向某个组播组发送数据的主机。组播源可以向一个组播地址发送数据,这样所有属于该组播组的成员都可以接收到该数据。组播源可以是单个主机或一组主机,它们可以同时向同一个组播组发送数据。
- 组播路由器(Multicast Router)
是指能够处理组播数据包的路由器。组播路由器可以转发组播数据包到指定组播组的所有成员。它可以通过组播协议(如PIM协议)学习组播组成员信息,并在转发数据包时只将数据包转发到需要接收该组播数据的主机上,从而减少网络流量,提高网络效率。
4.网络数据传输方式
4.1 单播(Unicast)
是一种点对点的通信方式,指一台计算机向另外一台计算机发送数据包的过程。在单播通信中,通信的两端(发送者和接收者)是直接联系的,数据包只能被一个接收者所接收。
图 2 单播原理
4.2 广播(Broadcast)
是一种一对多的通信方式,指将数据包从一个发送者发送到同一广播域内的所有接收者的过程。广播通信的特点是数据包只需发送一次,就能被广播域内的所有主机接收到。
图 3 广播原理
4.3 组播(Multicast)
是一种一对多的通信方式,指将数据包从一个发送者发送到一组特定的接收者的过程。组播通信的特点是数据包只需发送一次,就能被组播组内的所有主机接收到,组播通常用于实现多媒体流传输、路由协议等。
图 4 组播原理
5.组播服务类型
5.1 任意源组播(Any Source Multicast)
简称ASM,ASM允许组播组中的任意主机都可以作为组播源,向组播组中的所有成员发送数据。
5.2 指定源组播(Source-Specific Multicast)
简称SSM,SSM模式只有特定的主机可以作为组播源,并且组播组中的成员只能接收来自这个特定主机的数据。相对与ASM模式,SSM提供了组播源和组播组的绑定服务,因为只接收特定的组播源数据,所以SSM模式更加安全。另外SSM不需要组播组地址唯一,只需要保证组播源唯一即可。
6.组播地址
6.1 组播IP地址
D类IP地址为组播IP地址,组播IP地址范围为224.0.0.0-239.255.255.255,不同的组播地址有不同的用途,可以参考下表:
表 1 组播IP地址范围
常用永久组播地址
表 2 常用永久组播地址
6.2 组播MAC地址
组播数据包的目的IP地址为组播IP地址,组播IP地址为一个组播组地址,并不是一台主机的IP地址,所以组播IP地址对应的MAC地址也不能是一台主机的MAC地址,必须是特殊的MAC地址。
组播MAC地址的定义是:前24位为固定值“01-00-5E”,后23位为组播IP地址的最后23位。
组播MAC地址的作用是将组播数据帧传递给所有需要它们的接收者。
在发送组播数据时,源主机会将数据帧的目的MAC地址设置为组播MAC地址,并将组播IP地址设置为IPv4数据包的目的地址。网络设备会根据目的MAC地址来判断数据帧是否是组播数据帧,并将其传递给所有需要它们的接收者。在接收组播数据时,接收者会将接收到的数据帧与自己的组播IP地址进行比较,如果匹配则接收数据,否则丢弃数据。
图 5 组播IP地址和组播MAC地址关系
7.组播协议
7.1 IGMP(Internet Group Management Protocol)
组播管理协议,用于在局域网或广域网中的主机和组播路由器之间交换信息,以便组播路由器知道哪些主机成员想要接收某个组播流。
7.2 PIM(Protocol Independent Multicast)
协议无关的组播协议,可以在不同的组播路由协议间进行转换,用于在网络中建立一棵组播树,以便将组播流从源地址传输到接收地址。
7.3 MSDP(Multicast Source Discovery Protocol)
组播源发现协议,用于在不同的组播域之间发现源地址,并将源地址信息传递给其他组播域,以便其他组播域也可以接收该组播流。
7.4 MBGP(Multicast Border Gateway Protocol)
组播边界网关协议,用于在不同的自治系统之间传输组播流,以便将组播流从源地址传输到接收地址。
7.5 IGMP snooping
是一种网络交换机特性,它可以监听网络中的IGMP报文,了解组播组的成员和组播流量的流向,从而有效控制组播流量的洪泛和削减组播数据包的冗余传输,提高网络的性能和可靠性。