组网基础之深入解析二层组播
址就是245.2.2.1。当网络上接收该组播组数据的成员接收到这个查询消息后,就发出一个响应,该响应还是一个组播组成员加入消息。这样只要路由器接收到一个这样的响应,它就知道网络上必然还有终端在接收数据,于是不能停止转发。但路由器发出查询消息后,一段时间内没有接收到任何响应,它就判断网络上没有了数据接收端,于是停止转发组播数据。
到此为止,IGMP协议的一些细节已经介绍完毕,接下来介绍IGMP窥探。需要注意的是,IGMP协议是三层协议,而IGMP窥探则是二层组播协议,但它利用了IGMP的三层特性。注意,IGMP协议是运行在交换机上的一种协议,它使用该协议来形成转发组播数据的组播转发表。 下面是启动了IGMP窥探的交换机工作过程: (1) 交换机从每个端口上监听接收到的数据帧,如果是单播数据帧就按照通常的转发方式进行转发,是组播数据帧则进行下一步处理; (2) 如果接收到的数据帧是组播数据帧,则分析该组播数据帧的协议类型字段,看是否是IP协议,如果不是,则按照通常的方式转发(这时候可能查询组播转发表转发,如果没有查到结果,则向所有端口上转发);(3) 如果是IP协议数据,则进一步判断该数据是不是一个IGMP加入消息或IGMP查询消息。如果不是,则进行通常的组播数据发送,否则转下一步; (4) 如果是一个IGMP加入或查询消息,则该交换机就可以判断,在接收到该数据帧的端口上一定连接一个组播数据接收端,该接收端想接收IGMP加入消息中目的地址所在的组播组数据。于是,交换机就检查组播转发项,看对应的组播MAC地址有没有在组播转发项中出现。如果出现了,则把接收到该数据帧的接口加入组播转发项对应的接口集合,如果没有出现,说明该组播转发项还没有创建,于是创建一个组播转发项,该转发项的组播地址是IGMP消息的目的IP地址的影射MAC地址,接口列表初始化为接收到该数据帧的接口,接下来继续按照通常的过程转发该数据帧。 到此为止,IGMP窥探的具体工作过程已经明了,可以看出,这种协议最大的一个缺点就是效率较低,交换机需要分析每个组播数据帧,看该数据帧是否是组播数据帧,如果是,继续看是否是IP数据帧,如果是,继续看是否是IGMP加入消息等等。 GMRP协议 当主机不支持IGMP协议的时候就无法实现窥探。我们考虑能不能开发一种专门的针对组播的协议,该协议可以高效的完成其他组播协议完成的任务。 这就是GMRP协议。该协议需要计算机网卡和交换机一起工作,因此需要计算机网卡的支持。由于该协议是一个较新的协议,故大多数网卡都没有支持,但作为一种标准的协议,将来的网络设备都会支持。 该协议的运行过程很简单,想接收组播数据的计算机只要告诉连接的交换机,它想接收哪个组的组播数据即可。交换机接收到通知后,就创建相应的组播转发项,把接收到组播请求的端口加入组播转发项中。当计算机不再想接收组播数据了,只简单的告诉交换机就可以了,交换机接收到通知后,就从组播转发项中把相应的端口删除掉。 总结 二层组播的一些基础概念就讲解完了,在这些内容中,组播MAC地址,组播和单播数据的接收过程以及三种组播协议是重点。这些内容也是学习后续内容(比如三层组播路由协议)的基础,在实际中,这些组播概念也是应用得最多的。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |