关于IGMP以及PIM-DM的一些思考
近日在学习《高级网络技术》课程时在多播这章节中的有不少迷惑的地方,但是在一些地方搞清楚过后感觉有点豁然开朗,把我思考的一些问题记录一下,大部分是基于我的理解而撰写的,如有错误请,欢迎赐教,轻喷(可能有写部分是我推断出的)。
前提
以下内容全部基于一个前提:只有主机会是一个组播组的成员,路由器不会是组播组的成员。
1. IGMP的使用场景
IGMP用在有组播需求的网络中,并不是有组播需求的网络中的每一个路由器都需要开启IGMP的。 理论证明:该观点从华为的帮助手册中也可以证实(https://support.huawei.com/enterprise/zh/doc/EDOC1100270085?section=j02r)。 实验证明:如果一个路由器仅和其他路由器链接的话,就算开启IGMP,该路由器也收不到关于该路由器所连接的其他路由器中的组播信息,这样子自己关于组播信息了解的内容也是空的,和没开的效果一样。 如上图的实验拓扑中,为路由器R1的GE0/0/0端口开启IGMP之后,使用Wirshark进行抓包(结果如下图),会发现R1会一直发送IGMP查询报文,但是路由器R2始终没有回复IGMP报告报文报告自己或者报告自己知道的组播组信息,因此R1中关于组播组信息也就是为空的。