一 实验目的
1) 理解 Multicast 的一些基本概念。
2) 掌握 pim dense-mode 的基本配置。
3) 理解 pim dense-mode 的 flood 和prune过程。
4) 理解 pim dense-mode 的 assert 机制
5) 掌握 cgmp 的配置,及其优点。
6) 掌握 pim sparse-mode的基本配置。
二、实验拓扑和器材

拓扑如上所示,需要路由器四台、交换机一台,主机三台(一台能作组播的服务器,需要 Server级的 windows操作系统)。
三、实验原理
1.组播基本原理
Multicast 应用在一点对多点、多点对多点的网络传输中,可以大大的减少网络的负载。因此,Multicast 广泛地应用在流媒体的传输、远程教学、视频/音频会议等网络应用方面。
Multicast 采用 D 类 IP 地址,即 224.0.0.0~239.255.255.255。其中 224.0.0.0~224.0.0.255是保留地址,239.0.0.0~239.255.255.255 是私有地址,类似于 unicast 的私有地址。
Multicast的IP地址与MAC地址的映射:MAC地址有48位,前面24位规定为01-00-5E,接着一位为 0,后面 23 位是 IP地址的后 23 位。
路由器间要通过组播协议(如 DVMRP、MOSPF、PIM)来建立组播树和转发组播数据包。组播树有两类:源树和共享树。
多播时,路由器采用组管理协议 IGMP来管理和维护主机参与组播。IGMP 协议 v1中,主机发送 report 包来加入组;路由器发送 query 包来查询主机(地址是 224.0.0.1),同一个组的同一个子网的主机只有一台主机成员响应,其它主机成员抑制响应。一般路由器要发送3 次query 包,如果 3 次都没响应,才认为组超时(约 3 分钟)。IGMPv2 中,主机可以发送leave 信息给路由器(地址 224.0.0.2);路由器收到信息后,发送一个特别的 query 包,在 3秒内没收到组成员响应,就认为组超时。
由于组播的 MAC 不是具体某台主机的 MAC,根据交换机的工作原理,交换机会对组播数据包进行广播。因此,对某些不参加组播的主机而言,这些都是不必要的流。为了解决这个问题,cisco 公司开发了 CGMP协议。该协议用于管理参与组播的主机。每当有主机加入或离开某个组时,路由器就会把该主机的多播 IP地址(转换成组播 MAC 地址)、主机的C 地址以及消息类型(加入或离开)以 CGMP 消息告知交换机。交换机根据这些信息就可以建立起组播转发表。

