IT人员研发了IGMP(Internet Group Management Protocol, Internet组管理协议)Snooping协议,并将其广泛应用于网络组播模式,以减少网络带宽浪费,防止恶意攻击。那么,什么是IGMP Snooping?它是如何工作的?本文将针对这些问题,展开详细讨论。

IGMP Snooping简介

IGMP是一种网络组播协议,用来在主机和组播路由器之间建立和维护组播成员关系。IGMP Snooping通过侦听和分析三层组播设备与主机之间发送的组播报文来控制这些组播组,有利于抑制二层网络中不必要的组播数据转发,节省网络带宽。

IGMP Snooping工作原理

在局域网中,组播报文不可避免的要经过一些二层网络设备,如路由器和组播用户之间的二层网络交换机。由于二层交换机无法学习组播MAC地址,因此组播报文会在二层被广播,即同一广播域内的组播成员和非组播成员都能收到组播报文。这样不但浪费了网络带宽,而且影响了网络信息的安全性。

IGMP Snooping是解决此类问题的理想方案。 如上图所示,当交换机未启用IGMP Snooping时,组播报文将通过广播分别发送至主机A、B、C;当交换机启用IGMP Snooping后,该交换机可以侦听和分析IGMP报文,指定相应的二层组播的接收者(主机A和C),从而有效地控制组播报文转发。这样,只有组播成员主机A和主机C能接收组播报文,主机B无法接收组播报文。

IGMP Snooping的功能与应用

如前文所述,IGMP Snooping能有效防止带宽浪费和网络信息泄漏。

组播侦听帮助IGMP Snooping网络交换机和路由器将组播报文有效地发送到指定的接收者。当网络无法进行多点传输时,IGMP Snooping将变得尤为重要,否则,传入的组播报文将被发送至广播域中的所有主机。IGMP Snooping的优势在较大的网络中体现的尤为明显,支持IGMP Snooping的交换机减少了不必要的报文传输,避免网络阻塞。同时,当不法分子利用网络组播的安全漏洞(如组播DoS/DDoS攻击)时,即用组播报文攻击单个主机或整个广播域内的主机,IGMP Snooping能有效地避免这种情况的出现。

启用IGMP snooping命令,能有效地节省带宽浪费。所有下游主机仅接收指定的报文,这些报文已通过组播请求。因此,支持IGMP Snooping的交换机适用于带宽需求较大的网络,如IPTV或其他流媒体服务,及Web会议网络等。但是,如果网络中的成员设备极少,或网络中几乎没有任何组播流量时,则无需开启IGMP Snooping。此时,即使交换机或路由器支持组播IGMP Snooping协议,该协议也需保持关闭状态,以避免启用不必要的网络监听分析程序,减少设备的CPU资源消耗。

IGMP Snooping配置注意事项

IGMP Snooping协议使设备能够建立和维护二层组播转发表,从而指导组播报文在数据链路层按需转发。 在配置IGMP Snooping协议前,需要注意以下三个因素。

IGMP Snooping查询器

为启用IGMP Snooping,用户必须在网络中配置组播路由器,以生成IGMP查询器。如果没有查询器,用户无法定期检索、更新IGMP成员资格报告及组播成员资格表,这将导致IGMP Snooping无法正常工作。配置IGMP Snooping查询器后,它将定期发送IGMP查询报文,以查询该网段有哪些组播组的成员,并生成IGMP报告。然后,IGMP Snooping会侦听这些IGMP报告以建立适当的报文转发机制。

IGMP Snooping Proxy功能

IGMP Snooping Proxy即IGMP Snooping代理功能,当IGMP Snooping交换机启用该功能后,它将实现IGMP Snooping的功能,即在其上游设备看来,它就相当于一台主机;在其下游设备看来,它相当于一台查询器。例如,当IGMP Snooping交换机检索到来自路由器的IGMP查询报文时,它将拦截此查询报文,而自己以组播路由器的身份向主机发送查询报文并进行相关处理。当交换机禁用IGMP代理功能后,交换机只侦听VLAN中IGMP查询报文及来自主机的组播报告,而不做拦截处理。因此,IGMP Snooping Proxy不仅能抑制因响应查询报文而导致的IGMP报告泛滥,还能减轻上端IGMP查询器的符合。但是,基于VLAN的IGMP状态存在一定的延迟。

IGMP Snooping版本

IGMP目前有三个版本,即IGMP V1,IGMP V2和IGMP V3。通常,IGMP V1基于组播路由协议,定义了基本的组成员查询和报告过程;IGMP V2在V1的基础上添加了查询器选举和组成员离开的机制,允许查询器将数据发送至组播域中的主机;IGMP V3支持特定的源过滤,其主要功能是成员可以指定接收或指定不接收某些组播源的报文。

结语

IGMP Snooping是网络交换机的重要功能,它不仅能降低带宽消耗,避免二层网络组播泛滥,同时,还能提高网络信息安全性,是搭建良好网络的理想解决方案。

什么是IGMP Snooping?相关推荐

  1. 组播、IGMP、IGMP Snooping

    通过组播,可以实现一个主机同时向组内的多台主机发送数据,节省网络带宽. 组播ip地址范围是224.0.0.0-----239.255.255.255,其中224.0.0.0-----224.0.0.2 ...

  2. 【学习笔记】IGMP snooping原理

    为什么要运行snooping? 作用1: 不运行就在本Vlan泛洪(导致有一些不想接收组播流量客户端来说,也会泛洪给它,浪费客户端的带宽资源,也会导致SW开销加大,性能下降). 运行了就会产生组播转发 ...

  3. Linux IGMP SNOOPING 学习笔记 之三 igmp snooping实现需求分析

    本文主要是总结分析,在前面两节中,我们根据linux2.6.32中实现的igmp snooping代码,分析了igmp snooping的流程. 本节在前两节的基础上分析实现igmp snooping ...

  4. IGMP Snooping协议技术总结

    参考:http://blog.csdn.net/shanzhizi/article/details/7616662 http://www.h3c.com.cn/Products___Technolog ...

  5. IGMP Snooping和IGMP Proxy区别

    1.了解组播地址范围分类 224.0.0.0–224.0.0.255 预留,路由器不会转发的地址 224.0.1.0–238.255.255.255 可以组播地址,用于INTERNET大网上传输 23 ...

  6. IGMP PROXY和IGMP SNOOPING 有什么区别?

    IPTV又称为网络电视.宽带电视,是利用宽带网络为用户提供交互式服务的一种业务.通过IPTV业务,用户可以得到高质量(接近DVD水平)的数字媒体服务,可以自由选择宽带IP网的视频节目,实现媒体提供者和 ...

  7. 组播——IGMP Snooping

    目录 二层中组播数据转发存在的问题 IGMP Snooping 基本概念 二层组播转发表 动态端口老化时间 工作过程 二层中组播数据转发存在的问题 IGMP Snooping 基本概念 IGMP Sn ...

  8. 华为设备IGMP Snooping配置命令

    [Huawei]igmp-snooping enable //使能全局IGMP Snooping功能 [Huawei-vlan10]l2-multicast forwarding-mode ip // ...

  9. IGMP Snooping和组播VLAN技术原理

    IGMP Snooping: 诞生原因: 由于IGMP报文是封装在IP报文内,属于三层协议报文,而二层设备不处理报文的三层信息,所以这个过程它并不知道,而且通过对数据链路层数据帧的源MAC地址的学习也 ...

  10. PIM SM + IGMP Snooping 适用性测试(二) ttl 问题

    PIM SM + IGMP Snooping 适用性测试(二) ttl 问题 简介 上节的两个问答是基于理论分析与实验验证得出的,这节描述一下实验与实验中遇到的问题. 测试拓扑 图1 实验描述 做实验 ...

最新文章

  1. “中台不就是微服务吗?有啥区别?”
  2. linq之InnerJoin和LeftJoin以及封装动态查询条件版本
  3. css元素捕捉,css元素选择器
  4. LA3942 Remember the Word(Trie+DP)
  5. Win64 驱动内核编程-22.SHADOW SSDT HOOK(宋孖健)
  6. Android构建流程——篇五
  7. java中的类与对象(浅谈)
  8. 图像的全局特征--LBP特征
  9. 卸载。net开发的服务
  10. access集团和abm_ACCESS集团宣布启动“ABM单创66会员狂欢节”
  11. C++ 面向对象(三)—— 类之间的关系
  12. Java线程同步(二)
  13. myeclipse jsp和java字体设置
  14. Nginx源码分析 - Event事件篇 - Epoll事件模块(19)
  15. Unity3d知识点
  16. Android webview调用本地文件选择失败解决
  17. 使用python 多进程进行基于websocket 的实时视频流处理
  18. 男人就应该对自己狠一点
  19. SQL面试练习题一(基础)
  20. python文件操作和绘制曲线

热门文章

  1. 远程服务器备份数据库
  2. JVM(Hotspot)
  3. STC-B学习板蜂鸣器播放音乐
  4. 2023年怎么移除微博粉丝 微博怎么批量移除粉丝方法
  5. 电机编码器调零步骤_一种伺服系统零点校对的绝对值编码器调零方法与流程
  6. 进门刷脸提示卡号过期人员权限下发
  7. 【Web安全】几款web安全查杀工具
  8. php简易在线投票系统,ThinkPHP 框架 简易投票系统
  9. 法语,新的学习动力所在!
  10. 牛客网笔试真题 2021 阿里巴巴编程题(4星)题解(1-5)