精华内容
下载资源
问答
  • 1、解决二层组播解析 2、实验拓扑 3、基础配置 IOU1配置 ip multicast-routing interface Ethernet0/0 ip address 192.168.1.1 255.255.255.0 ip pim sparse-mode IOU3配置 interface Ethernet0/0 ip add...

    1、解决二层组播解析

    wKiom1Zvd0_TDha1AAGwLzczRgM158.png

    wKioL1Zvd1mx4b_1AAE7bglukrA745.png

    wKioL1Zvd17A9fxdAAJ4vkHbVzc226.png

    wKioL1Zvd2OiqcL_AAJQ_sSgvCI485.png

    wKioL1Zvd2Wii9rHAAE8ocusG9o443.png


    2、实验拓扑

    wKioL1ZvhkKQmncKAABTRj17ECk090.png

    3、基础配置

    IOU1配置

    ip multicast-routing 

    interface Ethernet0/0

     ip address 192.168.1.1 255.255.255.0

     ip pim sparse-mode


    IOU3配置

    interface Ethernet0/0

     ip address 192.168.1.3 255.255.255.0

     ip igmp join-group 224.1.1.1


    IOU4配置

    interface Ethernet0/0

     ip address 192.168.1.4 255.255.255.0


    IOU5配置

    interface Ethernet0/0

     ip address 192.168.1.5 255.255.255.0


    4、IGMP Snooping配置

    wKioL1Zvh9_DZiyEAABdEEe_apY079.png


    5、CGMP配置

    交换机全局配置模式开启CGMP:cgmp

    路由器直连交换机接口开启CGMP:ip cgmp







          本文转自开源殿堂 51CTO博客,原文链接:http://blog.51cto.com/kaiyuandiantang/1723142,如需转载请自行联系原作者

    展开全文
  • 交换机组播协议-二层组播/三层组播总结

    万次阅读 多人点赞 2019-05-20 18:03:19
    当ip网络中某Rx主机需要接收信息时,若采用组播方式,组播源tx仅需要发送一份信息,借助组播路由协议建立组播分发树,被传递的信息在距离组播源尽可能远的网络节点才开始复制和分发。复制分发节点如下图所示: ...

    一、组播介绍:

           组播技术解决的是以最小的网络开销实现单点发送,多点接收的问题。就实现点对多点数据传输问题,比广播/单播传输更高效,更能节省网络带宽,降低网络负载。

           ip网络中某Rx主机需要接收信息时,若采用组播方式,组播源tx仅需要发送一份信息,借助组播路由协议建立组播分发树,被传递的信息在距离组播源尽可能远的网络节点才开始复制和分发。复制分发节点如下图所示:

    图一

    组播的优势简单归纳:(单点到多点数据传输问题)

           相比单播来说,组播的优势在于:由于被传递的信息在距信息源尽可能远的网络节点才开始被复制和分发,所以用户的增加不会导致信息源负载的加重以及网络资源消耗的显著增加。

           相比广播来说,组播的优势在于:由于被传递的信息只会发送给需要该信息的接收者,所以不会造成网络资源的浪费,并能提高信息传输的安全性;另外,广播只能在同一广播域中进行,而组播可以实现跨域的传输。

    二、组播协议:

           通常,我们把工作在网络层的IP组播成为“三层组播”,相应的组播协议称为“三层组播协议”,包括IGMP, PIM/ IPv6PIM ,MSDP等;

           我们把工作在数据链路层的IP组播成为“二层组播”,相应的组播协议称为“二层组播协议”,包括IGMP Snooping /MLD Snooping ,PIM Snooping等。

    1、三层组播协议:

     三层组播协议包括组播组管理协议和组播路由协议

    1)、组播组管理协议

    在主机和与其直接相连的三层组播设备之间通常采用组播组的管理协议 IGMPInternet GroupManagement Protocol,互联网组管理协议)或 MLDMulticast Listener Discovery Protocol,组播侦听者发现协议),该协议规定了主机与三层组播设备之间建立和维护组播组成员关系的机制。(加组离组报文监听,并管理组播组)

    IGMP自带有查询器功能,工作机制是同网段内组播路由器之间竞争选举,选举出的查询器会发送普通组查询报文。

    2)、组播路由协议

    组播路由协议运行在三层组播设备之间,用于建立和维护组播路由,并正确、高效的转发组播数据包。组播路由建立了从单点源端到多点接收端的数据传输路径,这个路径我们也称之为“组播分发树”---参考图一

    对应的协议,也是我们实验并应用的,即:PIM SM  (这里还有其他协议如PIM DMmsdp)

     

    2、二层组播协议:

    1)、常用协议

    常用如IGMP Snooping/MLD Snooping, PIM Snooping

    我们验证并在项目中使用的是IGMP Snooping,它是运行在二层设备上,通过侦听三层设备和主机之间的IGMP报文来生成二层组播转发表,从而管理和控制组播数据报文的转发,实现组播数据报文在二层的按需分发。

    IGMP通过监听加组/退组报文,来管理维护组播组与交换机端口/(或者说)设备mac地址间的映射关系,即二层的转发表项。该表项的维护有一个自动老化机制,在交换机主动查询主机是否在组,主机无应答的情景下,超过一定时间交换机会将该主机从转发表中移除。加组动作会导致老化定时器重新计数,即保证在老化时间内应答交换机的查询或主动加组,都可以保证组播转发表项的正常存在,进而组播正常转发。

    1)关键配置汇总:

    全局模式下的igmp snooping使能

    Vlan视图下:

                   使能igmp snooping

                   未知组播丢弃(有的型号只能在全局模式下配置该项)

    端口视图下:

                   端口快速离组

                   未知单播丢弃

    如果是两台及以上交换机级联,其中核心交换机上除了以上配置外,还需要配置使能查询器功能。

    另外,考虑到管理和业务分离,需要划分vlan,一个管理vlan,一个业务vlan

     

    三、交换机支持三层组播路由功能的配置总结

    1.原理及关键配置说明:

           基于我们自有的产品线net-bnet-h系列,要想通过交换机实现三层组播路由转发,与交换机而言需要两点:a.vlan的单播路由功能;b.vlan的组播路由功能,且ab的前提条件。

           基于上述条件,在配置交换机时的思路也应该是首先确保跨vlan的单播路由得通,进而在配置时,一般也是先配置三层的单播路由相关配置,在通的基础上再进行配置三层的组播相关配置。

    1.1单播路由功能:

           接口vlanif配置:

           不同的vlan,都要对相应的接口vlanif配置,需要在对应的vlanif下配置对应vlan接口的ip信息,此ip即为接入到该vlan下所有设备的网关信息。

           ospf配置:

           ospf是一种内部网关协议,会根据配置的子网信息,生成并维护一套路由表信息,进而实现跨子网的单播传输。

           这里的配置需要将每个接口vlanifip,作为一个子网信息配置到ospf下,并根据子网的掩码信息设定此网络域的大小。

           如:vlanif 1  ip192.168.1.1 255.255.255.0

                  vlanif 2  ip10.208.1.1 255.255.255.252

           要实现vlan 1(192.168.1.111)vlan 2(10.208.1.2)两个设备互通,除了需要对应vlan下的设备需要和对应vlanifip同一网段外,还需要配置交换机的ospf协议,如下:

           #

           ospf 100

     area 0.0.0.0

     network 192.168.1.0  0.0.0.255   (广播域的大小描述,此处的值为掩码的反码)

     network 10.208.1.0   0.0.0.3

    这样在vlan 1下的设备ip 192.168.1.x 就能够pingvlan 2下的设备ip10.208.1.y (y:[0:3])

    1.2组播路由功能:

           在单播路由能通的条件下,必须要使能交换机的组播路由功能(这里需要注意并不是所有交换机都支持组播路由功能,交换机选型时需要注意);

           必须在vlanif下是能pim sm(管理组播路由表)和是能igmp(管理组播组)功能;

           在不启用动态rp的条件下,必须要在所有使能了组播路由功能的交换机上,设定相同的静态rp

    1.3组播路由功能配置中必须继承的原来二层的配置

           仅有1.11.2的配置虽然能够建立组播组成功,但是在接收者所在的子网内会有广播现象。所有原来走二层的配置部分必须要保留,保留如下:

    1. 全局igmp-snooping使能
    2. 业务vlan下的igmp-snooping使能
    3. 业务vlan下的未知组播丢弃功能
    4. 华三交换机按照端口的快速离组功能,华为的业务vlanhost-based快速离组功能。

    1.4组播路由功能配置其他注意事项

           原来二层配置中有关于端口的未知单播抑制功能的配置,如果在路由功能的配置中如果增加了此配置,路由功能是不通的,原因在于ping一个其他子网的ip时,源所在的子网认为是一个目的未知的单播数据,此时抑制功能生效。

           原来二层配置中关于在核心上需要开启查询器相关的配置,在这里要去掉。

    1.5思考问题:

             在三层级联的情景中,在接入层交换机有多台,且是属于同一个vlan域,在不需要走路由器的条件下,我们是否需要在汇聚交换机上配置查询器的问题。

             因为pim本身是维护的路由器间的组播关系,涉及到多台接入交换机到汇聚层属于同一vlan域时,这时候是不需要pim的,且这种场景的在原来二层配置中是需要加查询器的,目前在生产的实验和net-b环境都没有测试到。

    答案:实验证明此处不需要配置查询器。

    2、配置实例:

    2.1实例网络拓扑

             NET-B的测试环境,三台华为s5720,其中一台华为s5720交换机做网络核心交换机;剩余两台华为s5720做汇聚交换机;最后h3c s5700做接入交换机;网络拓扑如下图,

    需要实现,如图所示,vlan101/vlan102/vlan103内部视频流走组播;vlan101/102/103可以实现跨vlan建组

    介绍三层组播路由功能配置:网络拓扑图如下

    核心1_1:

             VLAN划分:

                       vlan103:普通GE口1-28

                       vlan300:BAGG1

                       vlan301:BAGG2

             聚合划分:

                       BAGG1:XGE1-2

                       BAGG2:XGE3-4

    汇聚1_2:

             Vlan划分:

                       Vlan101:1-28口;BAGG2

                       Vlan300:BAGG1

             聚合划分:

                       BAGG1:XGE1-2

                       BAGG2:XGE3-4

    汇聚2_3:

             Vlan划分:

                       Vlan102:1-28口;BAGG2

                       Vlan301:BAGG1

             聚合划分:

                       BAGG1:XGE1-2

                       BAGG2:XGE3-4       

    接入1_4:

             Vlan101:1-28口;BAGG1

    接入2_5:

             Vlan102:1-28口;BAGG1

     

    2.2配置思路:

             拓扑中属于业务应用的vlan有vlan101,vlan102,vlan103,核心1_1和汇聚1-2通过vlan300互通,核心1-1和汇聚2-3通过vlan301互通,其中核心中包含三个不同vlan:vlan103/vlan300/vlan301,配置ospf使能,其通过对于主干域内配置的子网信息计算最短路径,实现单播路由转发功能。汇聚1_2中Vlan101/Vlan300同理配置ospf使能。汇聚2_3中的Vlan102/ vlan301同理配置ospf使能。

             核心1-1/汇聚1-2/汇聚2-3需要使能组播路由功能,并且在对应的vlan接口下配置vlanif的ip和掩码信息,使能pim sm,使能igmp。(可以对用到的所有的vlan接口统一配置。这里的网关需要网络规划人员提前规划,在配置子网信息的时候要注意,这里的值是掩码的反码)。

             使能pim,并在pim下  指定静态rp,这三台交换机上必须要指定相同的静态rp,其rp地址是核心交换机中的某个vlan接口的ip。(c-rp c-bsr的指定后会被优先使用,即会自举)

             核心1-1/汇聚1-2/汇聚2-3在配置完相关组播路由相关内容后,还需要在所有业务vlan下使能igmp-snooping,未知组播丢弃功能,快速退组功能

             接入1-4和接入2-5,按照二层组播配置,使能全局igmp-snooping,对应vlan下使能igmp-snooping,未知组播丢弃功能,快速退组功能。

             之前对交换机的配置中涉及到端口的未知单播抑制功能的配置,在走三层路由的环境配置中,需要去掉,否则在验证路由链路的时候ping不通。

    2.3配置过程说明:

    以核心1_1和汇聚1_2的配置为例说明配置和验证过程:

    单播路由配置过程

    1、配置单播路由

    核心1-1:

           设定交换机名称:

               登录并进入系统模式,配置系统名:

               Sysname hexin1_1

           划分vlan:

               系统视图下配置

               #

                        vlan batch 103 300 to 301 

               #

               分别给vlan 103 300 301 分配交换机端口 //三个vlan,vlan103给本地千兆,vlan300给万兆1-2用于和汇聚1_2级联使用;vlan301用于和汇聚2-3级联使用,便于我们制造三个独立的vlan 101/102/103参考网络拓扑图

           配置聚合:

               先创建两个聚合组

    interface Eth-Trunk1

    interface Eth-Trunk2

    将聚合组分配给端口

    #                                        

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/2

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/3

     eth-trunk 2

    #

    interface XGigabitEthernet0/0/4

     eth-trunk 2

        #

               配置聚合聚合组属性

    #

    interface Eth-Trunk1

     port link-type access

     port default vlan 300

     mode lacp

    #

    interface Eth-Trunk2

     port link-type access

     port default vlan 301

     mode lacp

               #

           分别配置vlan接口信息

    #

            interface Vlanif103

            ip address 10.208.3.1 255.255.255.0

             #

             interface Vlanif300

             ip address 10.20.1.2 255.255.255.0

             #

             interface Vlanif301

             ip address 10.20.2.1 255.255.255.0      

            #

    配置ospf:

    #

    ospf 100

     area 0.0.0.0

      network 10.20.1.0 0.0.0.255

      network 10.208.1.0 0.0.0.255

      network 10.208.3.0 0.0.0.255

               #

    汇聚1_2:

           设定交换机名称:

               登录并进入系统模式,配置系统名:

               Sysname huiju1_2

           划分vlan:

             #

             vlan batch 101 300 

             #

             把端口分配到对应vlan,其中vlan101包含本交换机的多有千兆口;vlan300用于上联通讯

             #

             interface range GigabitEthernet 0/0/1 to 0/0/28

            port default vlan 101

             #

           配置聚合:

    #

             interface Eth-Trunk1

             interface Eth-Trunk2   //分别创建这两个聚合组

    #

    聚合组分配

    #

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #                                        

    interface XGigabitEthernet0/0/2

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/3

     eth-trunk 2

    #

    interface XGigabitEthernet0/0/4

     eth-trunk 2

    #

    聚合组属性配置

    #

    interface Eth-Trunk1

     port link-type access

     port default vlan 300                   

     mode lacp

    #

    interface Eth-Trunk2

     port link-type trunk

     port trunk allow-pass vlan 101 to 103

     mode lacp

    #

    配置vlan接口信息

    #

    interface Vlanif101

     ip address 10.208.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif300

     ip address 10.20.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    配置ospf

    #

    ospf 100

     area 0.0.0.0

      network 10.20.1.0 0.0.0.255

      network 10.208.1.0 0.0.0.255

      network 10.208.3.0 0.0.0.255

    #

    2、验证单播路由

    登录到hexin1-1,然后任意模式下,去ping vlan 102的接口ip这时应该是能通的就表示没问题。

    组播路由配置

    配置

    <hexin1_1>

    组播路由功能:

    #

    multicast routing-enable

    #

    使能pim并添加静态rp:

    #//一定是所有使能组播路由功能的交换机上配置相同的静态rp

    pim

     static-rp 10.20.2.1 preferred

    #

    接口vlan下配置pim sm和igmp

    #

    interface Vlanif103

     ip address 10.208.3.1 255.255.255.0  //配置单播路由时已配置,不动它,下同

     pim sm

     igmp enable

    #

    interface Vlanif300

     ip address 10.20.1.2 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif301

     ip address 10.20.2.1 255.255.255.0      

     pim sm

     igmp enable

    #

    二层组播igmp-snooping相关配置

    #

    igmp-snooping enable

    #

    #

    vlan 103

     multicast drop-unknown

     igmp-snooping enable    

     igmp-snooping host-based prompt-leave

    vlan 300

     multicast drop-unknown

     igmp-snooping enable   

     igmp-snooping host-based prompt-leave

    vlan 301

     multicast drop-unknown

     igmp-snooping enable    

     igmp-snooping host-based prompt-leave

    #

    <huiju1_2>

    组播路由功能:

    #

    multicast routing-enable

    #

    使能pim并添加静态rp:

    #//一定是所有使能组播路由功能的交换机上配置相同的静态rp

    pim

     static-rp 10.20.2.1 preferred

    #

    接口vlan下配置pim sm和igmp

    #

    interface Vlanif101

     ip address 10.208.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif300

     ip address 10.20.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    二层组播igmp-snooping相关配置

    #

    igmp-snooping enable

    #

    #

    vlan 101

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    vlan 300

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    #

    验证

    1、将我们的发送设备接入vlan101 修改ip 10.208.1.10

    2、将接收设备接入vlan103修改ip 10.208.3.10

    3、通过-b控制端去切换建组

    验证是否出图。如果不出图参考“异常问题以及定位手段”

     

    4、注意验证是一定要双向验证,即将发送设备接入到vlan103,改ip;接收设备接入到vlan101,改ip,建组验证。

    5、一定要注意,我们设备接入到对应vlan下交换机端口后(如vlan101),一定要确认设备的ip和vlan属于同一个子网,否则跨子网的组播/单播都不通

    2.4最终配置:

    <hexin1_1>关键配置如下

    #

    sysname hexin1_1

    #

    vlan batch 103 300 to 301

    #

    multicast routing-enable

    #

    igmp-snooping enable

    #

    vlan 103

     multicast drop-unknown

     igmp-snooping enable     /*先配置对应接口vlan信息下pim和igmp使能再配置此处*/

     igmp-snooping host-based prompt-leave

    vlan 300

     multicast drop-unknown

     igmp-snooping enable     /*先配置对应接口vlan信息下pim和igmp使能再配置此处*/

     igmp-snooping host-based prompt-leave

    vlan 301

     multicast drop-unknown

     igmp-snooping enable     /*先配置对应接口vlan信息下pim和igmp使能再配置此处*/

     igmp-snooping host-based prompt-leave

    #

    interface Vlanif1

     ip address 191.1.1.1 255.255.255.0

    #

    interface Vlanif103

     ip address 10.208.3.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif300

     ip address 10.20.1.2 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif301

     ip address 10.20.2.1 255.255.255.0      

     pim sm

     igmp enable

    #

    interface Eth-Trunk1

     port link-type access

     port default vlan 300

     mode lacp

    #

    interface Eth-Trunk2

     port link-type access

     port default vlan 301

     mode lacp

    #

    interface range GigabitEthernet 0/0/1 to 0/0/28

     port default vlan 103

    #                                        

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/2

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/3

     eth-trunk 2

    #

    interface XGigabitEthernet0/0/4

     eth-trunk 2

    #

    ospf 100

     area 0.0.0.0

      network 10.20.1.0 0.0.0.255

      network 10.20.2.0 0.0.0.255

      network 10.208.1.0 0.0.0.255

      network 10.208.2.0 0.0.0.255

      network 10.208.3.0 0.0.0.255

      network 191.1.1.0 0.0.0.255

    #

    pim

     static-rp 10.20.2.1 preferred

    #

    --------------------------------------------------------------------

    <huiju1_2>关键配置如下:

    #

    sysname huiju1_2

    #

    vlan batch 101 300

    #

    multicast routing-enable

    #

    igmp-snooping enable

    #

    vlan 101

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    vlan 300

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    #

    interface Vlanif1

     ip address 191.1.1.2 255.255.255.0

    #

    interface Vlanif101

     ip address 10.208.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif300

     ip address 10.20.1.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Eth-Trunk1

     port link-type access

     port default vlan 300                   

     mode lacp

    #

    interface Eth-Trunk2

     port link-type trunk

     port trunk allow-pass vlan 101 to 103

     mode lacp

    #

    interface range GigabitEthernet 0/0/1 to 0/0/28

     port default vlan 101

    #

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #                                         

    interface XGigabitEthernet0/0/2

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/3

     eth-trunk 2

    #

    interface XGigabitEthernet0/0/4

     eth-trunk 2

    #

    ospf 100

     area 0.0.0.0

      network 10.20.1.0 0.0.0.255

      network 10.20.2.0 0.0.0.255

      network 10.208.1.0 0.0.0.255

      network 10.208.2.0 0.0.0.255

      network 10.208.3.0 0.0.0.255

      network 191.1.1.0 0.0.0.255

    #

    pim

     static-rp 10.20.2.1 preferred

    #

    --------------------------------------------------------------------

    <huiju2_3>关键配置如下:

    #

    sysname huiju2_3

    #

    vlan batch 102 301

    #

    multicast routing-enable

    #

    igmp-snooping enable

    #

    vlan 102

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    vlan 301

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    #

    interface Vlanif1

     ip address 191.1.1.3 255.255.255.0

    #

    interface Vlanif102

     ip address 10.208.2.1 255.255.255.0

     pim sm

     igmp enable

    #

    interface Vlanif301

     ip address 10.20.2.2 255.255.255.0

     pim sm

     igmp enable

    #

    interface Eth-Trunk1

     port link-type access

     port default vlan 301

     mode lacp

    #                                        

    interface Eth-Trunk2

     port link-type trunk

     port trunk allow-pass vlan 101 to 103

     mode lacp

    #

    interface range GigabitEthernet 0/0/1 to 0/0/28

     port default vlan 102

    #

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/2

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/3          

     eth-trunk 2

    #

    interface XGigabitEthernet0/0/4

     eth-trunk 2

    #

    ospf 100

     area 0.0.0.0

      network 10.20.1.0 0.0.0.255

      network 10.20.2.0 0.0.0.255

      network 10.208.1.0 0.0.0.255

      network 10.208.2.0 0.0.0.255

      network 10.208.3.0 0.0.0.255

      network 191.1.1.0 0.0.0.255

    #

    pim

     static-rp 10.20.2.1 preferred

    #

    --------------------------------------------------------------------

    <jieru1_4>关键配置如下:

    #

    vlan batch 101

    #

    igmp-snooping enable

    #

    vlan 101

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    #

    interface Vlanif1

     ip address 191.1.1.4 255.255.255.0

    #

    interface Eth-Trunk1

     port link-type trunk

     port trunk allow-pass vlan 101 to 103

     mode lacp

    #

    interface range GigabitEthernet 0/0/1 to 0/0/28

     port default vlan 101

    #

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/2

     eth-trunk 1

     

    --------------------------------------------------------------------

    <jieru2_5>关键配置如下:

    #

    vlan batch 102

    #

    igmp-snooping enable

    #

    vlan 102

     multicast drop-unknown

     igmp-snooping enable

     igmp-snooping host-based prompt-leave

    #

    interface Vlanif1

     ip address 191.1.1.5 255.255.255.0

    #

    interface Eth-Trunk1

     port link-type trunk

     port trunk allow-pass vlan 101 to 103

     mode lacp

    #

    interface range GigabitEthernet 0/0/1 to 0/0/28

     port default vlan 102

    #

    interface XGigabitEthernet0/0/1

     eth-trunk 1

    #

    interface XGigabitEthernet0/0/2

     eth-trunk 1

     

     

    3.常见异常问题以及定位手段总结(三层问题定位)

             2.1PIM-SM网络中RPT无法正常转发数据

             现象:接收者无法接受组播数据(-H显示绿屏,-B显示no vedio)

    本类故障的常见原因主要包括:

    • 组播设备到RP的单播路由不通
    • 各组播设备的RP地址不一致
    • 组播设备的下游接口没有收到(*,G)加入
    • 接口没有使能PIM-SM
    • RPRPF路由不正确(举例:单播路由环路)
    • 配置问题(举例:MTU或组播边界配置不当等)

    操作步骤

    a.检查PIM路由表中是否存在正确的(*,G)表项

    在设备上执行display pim routing-table group-address命令,查看PIM路由表中是否存在到所需组播组G的(*,G)表项。

      • 如果PIM路由表中的(*,G)表项存在且信息完全正确,则每隔15秒执行display multicast forwarding-table group-address命令,查看转发表中是否存在与(*,G)对应的(S,G)表项,并查看显示信息中的“Matched”计数是否保持增长。
        • 如果转发表中存在(S,G)表项且“Matched”计数保持增长,则表明上游设备到此设备的组播数据转发正常,但是由于某种原因导致无法向下游转发,可能是由于数据报文的TTL过小或转发问题。
        • 如果转发表中不存在(S,G)表项或“Matched”计数停止:
          • 如果当前设备不是RP,则表明当前设备没有收到组播数据,故障可能出在上游设备,请检查上游设备的PIM路由表中是否存在正确的(S,G)表项。
          • 如果当前设备已经是RP,则表明RPT已成功建立,但由于某种原因导致RP未收到组播源发出的组播数据。故障可能是由于源DR没有注册成功。
      • 如果PIM路由表中不存在正确的(*,G)表项,请执行步骤2

    b. 检查上游设备的下游接口是否收到Join信息

    在设备上执行display pim control-message counters interface interface-type interface-number message-type join-prune命令,查看下游接口收到的Join/Prune报文计数是否增加。

      • 如果设备的下游接口收到的Join/Prune报文计数没有增加,在其下游邻居上执行display pim control-message counters interface interface-type interface-number message-type join-prune命令,查看下游是否向上游发出了Join/Prune报文。
        • 如果计数增加,则表明下游已经发出了Join/Prune报文,则PIM邻居间通信有问题。
        • 如果计数没有增加,则下游设备有问题,请排查下游设备的故障。
      • 如果下游接口收到的Join/Prune报文计数增加,请执行步骤3

    c.检查接口是否使能PIM-SM

    以下接口未使能PIM-SM是常见的故障原因:

      • 到达RPRPF邻居接口
      • 到达RPRPF接口
      • 直连用户主机网段的接口(组成员端DR的下游接口)

    在设备上执行display pim interface verbose命令,查看接口的PIM信息。请重点检查上述接口是否使能PIM-SM

      • 如果在接口上使能PIM-SM时出现提示信息:“Error: Please enable multicast in the system view first.”,则首先在系统视图下使用multicast routing-enable命令使能组播功能。然后在接口上使能PIM-SM
      • 如果设备的所有接口均已使能PIM-SM,请执行步骤4

    d.检查RP信息是否正确

    在设备上执行display pim rp-info命令,查看设备是否已经学习到了为某组播组服务的RP信息,并且与其它所有设备为此组播组服务的RP信息一致。

      • 如果设备上没有RP信息或RP信息与其他设备不同:
        • 如果网络中使用静态RP,请执行static-rp命令在所有设备上将为某组播组服务的RP地址配置为一致。
      • 如果所有设备为某组播组服务的RP信息已保持一致,请执行步骤5

    e.检查是否存在到达RP的RPF路由

    在设备上执行display multicast rpf-info source-address命令,查看是否存在到达RPRPF路由。

      • 如果显示信息中不存在到RPRPF路由,检查单播路由配置。请在设备与RP上分别执行ping命令,检查是否能够ping通对方。
      • 如果显示信息中存在到RPRPF路由:
        • 如果显示信息表明RPF路由为组播静态路由,执行display current-configuration命令查看组播静态路由配置是否合理。
        • 如果显示信息表明RPF路由为单播路由,执行display ip routing-table命令查看单播路由是否与RPF路由一致。
      • 如果显示信息中存在到RPRPF路由,且路由配置合理,请执行步骤6

    f.检查转发组播数据的接口是否为组成员端DR

    在设备上执行display pim interface interface-type interface-number命令,查看转发组播数据的接口是否为组成员端DR

      • 如果显示信息中没有local标记,请根据显示信息中的DR地址在DR设备上执行步骤7
      • 如果显示信息中有local标记,请执行步骤7

    g.检查接口是否配置组播边界

    在设备上执行display current-configuration interface interface-type interface-number命令,查看接口是否配置了组播边界。

      • 如果某接口的配置信息中出现“multicast boundary”,表明该接口配置了组播边界。建议执行undo multicast boundary { group-address { mask | mask-length } | all }命令删除该配置或重新进行网络规划,确保RPF接口和RPF邻居接口没有配置组播边界。
      • 如果接口没有配置组播边界,请执行步骤8

    h.检查是否配置了source-policy

    在设备上执行display current-configuration configuration pim命令,查看PIM视图下的当前配置信息。

      • 如果配置信息中出现“source-policy acl-number”,则表明配置了源过滤规则。如果接收到的组播数据不在ACL允许的范围之内,则将被丢弃。建议执行undo source-policy命令删除该配置或重新配置ACL规则,确保用户需要的组播数据正常转发。

    四、交换机支持二层组播配置总结

    1.单台交换机场景

    使能全局igmp-snooping

    业务vlan下:

                        使能igmp-snooping

                        未知组播丢弃

                        如果是华为交换机,这里需要配置快速离组功能;(注意,华为是vlan下host-based 快速离组;华三在端口上配置快速离组)

    端口上配置:

                        未知单播抑制

                        (如果是华三设备,这里需要在端口配置快速离组)

                        交换机在启用stp的情况下,必须配置边缘端口,缩短交换机端口由down到up的主动阻塞时间。

    2.两台交换机场景

    聚合:(可以根据实际交互带宽决定是否配置)

               动态聚合

               Link-type设置为trunk模式

               聚合链路运行控制vlan/业务vlan数据通过

     

    使能全局igmp-snooping

    业务vlan下:

                        使能igmp-snooping

                        未知组播丢弃

                        如果是华为交换机,这里需要配置快速离组功能;(注意,华为是vlan下host-based 快速离组;华三在端口上配置快速离组)

    端口上配置:

                        未知单播抑制

                        (华三设备,在端口配置快速离组)

                        交换机在启用stp的情况下,必须配置边缘端口,缩短交换机端口由down到up的主动阻塞时间。

     

    以上是两台通用配置,

    差异性配置: 指定其中一台为主设备,在上面配置查询器,并指定通用ip,ip地址一定是局域网络中不冲突的ip地址,一般选用其接口vlanif的ip地址

     

    3.三台做两级级联

    级联方式:  A-B-C 链式连接,一般我们定中间交换机B为核心交换机,A/C为接入;

    关键配置如下:

    核心B交换机配置:

               使能全局igmp-snooping

               增加业务vlan:

                        使能igmp-snooping

                        未知组播丢弃

                        //快速离组功能(在h3c S650万兆交换机中存在此功能bug,所以在盒式交换机中做核心应用场景中,目前都是默认不配置此功能的)                        

               使能配置查询器,并指定通用查询器ip,ip地址一定是局域网络中不冲突的ip地址,一般选用其vlan接口的ip地址

               聚合:(需根据实际交互带宽决定是否配置)

                        动态聚合

                        Link-type设置为trunk模式

                        聚合链路运行控制vlan/业务vlan数据通过

    A/C交换机配置:     

               使能全局igmp-snooping

    业务vlan下:

                        使能igmp-snooping

                        未知组播丢弃

                        如果是华为交换机,这里需要配置快速离组功能;(注意,华为是vlan下host-based 快速离组;华三在端口上配置快速离组)

    端口上配置:

                        未知单播抑制

                        (华三设备,在端口配置快速离组)

                        交换机在启用stp的情况下,必须配置边缘端口,缩短交换机端口由down到up的主动阻塞时间。

     

    4.三级级联

    核心交换配置说明

    #

    igmp-snooping  //使能全局igmp

    #

    #//使能对应vlan下配置

    vlan 1010

     igmp-snooping enable

     igmp-snooping drop-unknown

     igmp-snooping querier

     igmp-snooping general-query source-ip 10.168.1.1     

     igmp-snooping special-query source-ip 10.168.1.1

    #

    汇聚层交换配置说明:

    #

    igmp-snooping                                //使能全局igmp

    #

    #//使能对应vlan下配置

    vlan 1010

     igmp-snooping enable

     igmp-snooping drop-unknown

     #

    接入层交换配置说明:

    #

    igmp-snooping //使能全局igmp

    #

    #//使能对应业务vlan下配置

    vlan 1010

     igmp-snooping enable

     igmp-snooping drop-unknown

    #

    interface GigabitEthernet1/0/1   to  1/0/24

    普通端口需要配置

    igmp-snooping fast-leave vlan 1010

     

    5.交换机相关问题的定位手段:(二层问题定位)

    5.1.查看光模块transceiver收发方向的光损耗:

    <H3C>display transceiver diagnosis interface Ten-GigabitEthernet 1/0/1
    Ten-GigabitEthernet1/0/1 transceiver diagnostic information:
      Current diagnostic parameters:
        Temp.(°C) Voltage(V)  Bias(mA)  RX power(dBm)  TX power(dBm) 
        31         3.31        5.25      -10.89         -1.97     
      Alarm thresholds:
        Temp.(°C) Voltage(V)  Bias(mA)  RX power(dBm)  TX power(dBm)
        High  73         3.80        9.90      1.00           0.00
        Low   -3         2.81        1.00      -13.10         -10.30
    说明:其中RX/TX power(dBm)为光损耗,其中理论门限值是:1.00到-13.10,现场我们看到正常的值大概在-2到-4之间。上述的中-10.89此值已经接近于告警值,有可能会存在误码。

    5.2、查看对应通道有无误码

    这里的通道可以是具体的网口,光口或者某个聚合口
    <H3C>display interface Bridge-Aggregation 1
    这是会显示输入输出方向的errors统计,这里也可以看到各类数据包统计,包转发速率。

    5.3、igmp-snooping监听到的IGMP报文统计

    主要有加组退组等信息统计
    display igmp-snooping statistics

    5.4、显示动态组播组的igmp snooping的转发表项:

    display igmp-snooping group vlan 1

    5.5、查看聚合组状态

    包括所有的聚合组,聚合模式,均衡模式,提示中的各个标志等
    <H3C>display link-aggregation verbose
    以上是现场定位常用指令

    5.6、其他:

    如图所示

    5.7 附件:

    h3c ip组播配置指导手册

    (双击可打开)

    附件是H3C的组播配置指导,包括2/3层配置;文中三层的问题定位写的是华为设备,华三设备可以参考此手册。

    五、基本术语介绍:

    DR Designated Router,指定路由器)作用是判断网络地址,选择ip路径

    BSR Bootstrap Router,自举路由器)是pim-sm域的自动管理核心,一个pim-sm域内只能有一个BSR,但是可以配置多个候选BSR,一旦一个故障,候选可以通过候选成员中自动选举一个产生新的BSR,保证业务不中断。BSR负责收集网络中由C-RP发来的

    C-BSR Candidate-BSR,候选BSR

    RP Rendezvous Point,汇集点)//我们使用的是static-rp 作用是处理加退组/维护组播路由转发表

    C-RP Candidate-RP,候选 RP

    PIM-DM:其建立组播转发过程效率较低,并不适合大中型网络。//我们不用,用的pim-sm

    PIM-SM: 属于稀疏模式的组播路由协议,通常适用于组播组成员分布相对分散、范围较广的大中型网络。(邻居发现机制)

    DR原理以及建组过程:

    无论是与组播源相连的网络,还是与接收者相连的网络,都需要选举DR(指定路由器)。接收者侧的DR负责向RP发送加入报文;组播源侧的DR负责向RP发送注册报文-转发表项(S,G)(在充当接收者侧的DR的设备上必须使能IGMP,否则连接在该DR上的接收者将无法通过该DR加入组播组。)

     

    展开全文
  • 基于eNSP的组播配置实验基于eNSP的组播配置实验基于eNSP的组播配置实验基于eNSP的组播配置实验基于eNSP的组播配置实验基于eNSP的组播配置实验
  • 华为交换机组播配置

    2014-07-21 14:18:05
    华为交换机组播配置,华为交换机组播配置华为交换机组播配置
  • 3.vlan10和vlan20下挂两个二层交换机SwitchB和SwitchC,地址为10.10.10.1/24和10.10.20.1/24。 『组网需求』 1:在SwitchA、SwitchB和SwitchC上运行组播协议,要求L3上配置为IP PIM-SM模式 2 数据配置步骤『PIM-SM...
  • 组成员离开改进二:查询器选举IGMPv1与IGMPv2报文比较IGMPv3SSM模型中的新需求v3工作机制IGMP各版本差异IGMP Snooping二层组播数据转发的问题IGMP Snooping工作原理IGMP简单配置 前言 在上一篇文章中,我们讲解了I...

    前言

    在上一篇文章中,我们讲解了IP组播技术基础,然后就解决了组播技术中的三个疑问中的第一个问题。

    三个疑问:

    1. 组播源如何将组播数据发送到网关路由器(目的IP是多少?、目的MAC是多少?)
    2. 路由器收到组播数据如何发送给相应的接收者(如何判断谁想要接收数据,谁不想要接收数据)
    3. 路由器之间如何根据接受者的分布情况对组播数据进行数据的转发、复制。
    

    本篇文章我们来解决第二个问题。

    那么IGMP(Internet Group Management Protocol)因特网组管理协议,就 是TCP/IP协议族中负责IP组播成员管理的协议,它用来在接收者和与其直接相邻的组播路由器之间建立、维护组播组成员关系。

    组播接收端的需求

    在组播通信过程中,发送者将组播数据发送到特定的组播地址。但是在接收端,我们又有两个问题需要解决:

    1. 接受者如何告知直连相邻的路由器我想加入哪一个组
    2. 路由器需要了解哪些组播组存在接受者
    

    组播源不关注接收者的位置信息,但是对于连接组成员的路由器而言,其需要收集和维护组成员的信息。组播既不指定明确的接收者,也不是将数据发送给网络上的所有主机。如果主机想接收发往某一组播地址的数据,它需要加入这个组,成为该组播组的成员。

    当然我们可以用手工配置的方式来解决这些问题,但是手工配置有以下缺点:

    1. 实时性差(手工配置需要花费大量时间)
    2. 灵活性差(新加入组、退出组都需要手动配置)
    3. 工作量大、容易出错
    

    那么有没有一种协议,能够使主机和路由器之间快速交流,并解决以上问题呢?
    当然是有的,那就是:IGMP协议。IGMP协议作用于主机和组播路由器之间。

    在主机侧:通过ICMP协议向路由器通告组成员关系
    路由器侧:通过IGMP协议维护组成员关系
    

    接下来我们来了解IGMP三个版本的工作机制以及差异。

    IGMPv1

    工作机制

    组查询与响应以及响应抑制机制

    如下图所示,IGMPv1协议在工作时,路由器将会周期性的(60s)向子网内所有主机发送成员关系查询信息(普遍组查询报文),此时在该网段的所有主机都会接受到此报文,收到此报文之后,各个主机都都会启动定时器(定时器随机选择0~10s的定时时间)。
    假设Client A、Client C想要加入G1组,A和C定时器分别被随机到3s、9s,于是Client A首先结束计时。当定时器倒计时结束,A就会发送成员关系报告报文,表示希望加入到G1组播组。这个报文也会被网段上的其他设备接收到,当Client C接收到此报文并查看之后, 发现自身与Client A所在组相同,于是便不再发送成员关系报告报文(响应抑制机制);当Client B接收并查看了报文,发现A想要加入的组与自身不同,于是等到定时器计时结束,便发送自己的成员关系报告报文。
    RTA接收到成员报告报文后,了解到本网段内存在组播组G1和G2的成员,一旦RTA收到G1和G2的组播数据,将向该网段转发。
    在这里插入图片描述
    GMPv1支持两种类型的报文:

    普遍组查询报文(General Query):

    路由器周期性地向224.0.0.1地址(表示同一网段内所有主机和路由器)发送通用查询报文,默认查询周期为60秒,发送周期可以通过命令配置。

    成员关系报告报文(Membership Report):

    用于主机加入某个组播组。

    响应抑制机制:

    可以减少网段上的协议流量

    成员加入

    新成员假如,则主动申请加组。

    假如有新接入主机想要加入组播组,为了快速接收组播数据,不等待路由器发送普遍组查询报文,而是立即发送想要加入组的成员报告报文。RTA收到成员报告报文后,了解到本网段内出现了组播组G3的成员。一旦有G3的组播数据到达RTA,将向该网段转发。

    组成员离开

    静默离开,不大任何招呼就走了。

    如下图,当Client离开组播组时,将不会再对普遍组查询报文做出回应。假设所有Client退出组播组,Client将不再对普遍组查询报文进行响应。由于网段上不存在组播组的其他成员,RTA不会收到任何成员报告报文,则在一定时间(130秒=60*2+10,即组成员关系超时时间=IGMP普遍查询消息发送间隔 × 健壮系数 + 最大查询响应时间)(即两次发送普遍查询报文时间+10s最大定时器时间)后,删除对应的组播转发项。
    在这里插入图片描述

    查询器选举

    在这里插入图片描述
    多台路由器同时连接到同一接收端网络时,只需要有一台路由器进行IGMP的查询。

    但是IGMPv1无查询路由器选举机制,其依赖于组播路由协议在末端网络中选举一个查询器。

    由于不同的组播路由协议采用不同的选举机制,所以在IGMPv1中,同一末端网络中可能会存在多台查询器。

    IGMP存在问题

    1. IGMPv1组成员离开没有相应的离开报文,而是静默离开,这样花费的时间较久。
    2. IGMPv1中没有查询器选举机制,查询器的选举依赖于组播路由协议,若是协议不同,则可能出现多台查询器。

    IGMPv2

    IGMPv2于IGMPv1工作原理非常相似,但是针对了v1的两个问题进行了改进,现如今网络中用的比较多的就是ICMPv2协议。

    改进一:组成员离开

    如图,在IGMPv2中,Client B离开组播组G2的过程如下:

    Client B向本地网段内的所有组播路由器发送针对组G2的离开报文。
    查询器收到离开报文,会发送针对G2的特定组查询报文,**同时启动组成员关系定时器Timer-Membership=发送间隔x发送次数(2s)。缺省每隔1秒发送一次,一共发送两次,发送间隔和发送次数可以配置。**相比于v1的130S大大缩短。

    如果网段内不存在其他组G2的成员,则路由器不会收到组G2的成员报告报文。在Timer-Membership超时后,删除组播转发表项中对应的下游接口。路由器将不再向该网段转发G2的组播数据。如果网段内还有G2的其他成员,则这些成员在收到特定组查询报文后,会在最大响应时间内发送G2的成员报告报文。路由器继续向该网段转发G2的组播数据。
    在这里插入图片描述

    改进二:查询器选举

    相对于IGMPv1,IGMPv2使用独立的查询器选举机制。

    所有IGMPv2路由器在初始状态时都认为自己是查询器,向本地网段内的所有主机和路由器发送普遍组查询报文。其他路由器在收到该报文后,将报文的源IP地址与自己的接口地址作比较。IP地址最小的路由器将成为查询器,其他路由器成为非查询器。
    所有非查询器上都会启动一个定时器。如果在该定时器超时前收到了来自查询器的查询报文,则重置该定时器;否则就认为原查询器失效并发起新的查询器选举。

    注意:

    工作查询器非查询器
    发送查普遍查询报文
    处理成员关系报告报文
    发送特定查询报文
    处理离开报文

    IGMPv1与IGMPv2报文比较

    在这里插入图片描述
    IGMPv1报文:

    版本:包含IGMP版本标识,因此设置为1。
    
    类型:普遍组查询 (0x11),成员关系报告 (0x12)。(两种报文)
    
    组地址:普遍组查询报文中,组地址为0(0.0.0.0);成员关系报告报文中,组地址为成员想要加入的组播组的地址。
    

    IGMPv2报文:IGMPv2报文与IGMPv1报文略有不同,它取消了版本字段,增加了最大响应时间字段。

    类型:相比于IGMPv1,IGMPv2新增了两种报文:
    	特定组查询报文(0x11):查询器向共享网段内指定组播组发送的查询报文,用于查询该组播组是否存在成员。
    	成员离开报文(0x17):成员离开组播组时主动向路由器发送的报文,用于宣告自己离开了某个组播组。
    	
    最大响应时间:表示主机响应查询返回报告的最大时间。
    	对于普遍组查询,最大响应时间默认为10秒。
    	对于特定组查询,最大响应时间默认为1秒。
    

    组地址:

    普遍组查询报文中,组地址设置为0。
    
    特定组查询报文中,组地址为需要查询的组地址。
    
    在成员报告或离开组的消息中,组地址为需要报告或离开的组地址。
    

    IGMPv3

    SSM模型中的新需求

    SSM模型

    只接收特定源发送的组播数据(一部电视剧,爱奇艺有bilibili有,我只看bilibili不想看爱奇艺的。)
    在这里插入图片描述

    在使用IGMPv1、IGMPv2协议的客户端无法对组播源进行选择,无论其是否需要,都会同时收到组播源Source A和B的数据。
    为了满足SSM模型的新需求,IGMPv3出现了。

    v3工作机制

    在这里插入图片描述
    与IGMPv2相比,IGMPv3报文的变化如下:

    IGMPv3报文包含两大类:查询报文和成员报告报文。IGMPv3没有定义专门的成员离开报文,成员离开通过特定类型的报告报文来传达。

    查询报文中不仅包含普遍组查询报文和特定组查询报文,还新增了特定源组查询报文(Group-and-Source-Specific Query)。该报文由查询器向共享网段内特定组播组成员发送,用于查询该组成员是否愿意接收特定源发送的数据。特定源组查询通过在报文中携带一个或多个组播源地址来达到这一目的。

    成员报告报文不仅包含主机想要加入的组播组,而且包含主机想要接收来自哪些组播源的数据。
    IGMPv3增加了针对组播源的过滤模式(INCLUDE/EXCLUDE):

    将组播组与源列表之间的对应关系简单的表示为(G,INCLUDE,(S1、S2…)),表示只接收来自指定组播源S1、S2……发往组G的数据;
    或(G,EXCLUDE,(S1、S2…)),表示接收除了组播源S1、S2……之外的组播源发给组G的数据。当组播组与组播源列表的对应关系发生了变化,

    IGMPv3报告报文会将该关系变化存放于组记录(Group Record)字段,发送给IGMP查询器。

    p在IGMPv3中一个成员报告报文可以携带多个组播组信息,而之前的版本一个成员报告只能携带一个组播组。这样虽然现在每个主机都需要发送报文(抑制机制被取消,因为主机之间虽然可能是同一组,但是需求可能不同),但是在IGMPv3中报文数量还是大大减少。

    IGMP各版本差异

    机制IGMPv1IGMPv2IGMPv3
    查询器选举依靠其他协议自己选举自己选举
    成员离开方式静默离开主动发送离开报文主动发送离开报文
    特定组查询不支持支持支持
    指定源、组不支持不支持支持

    IGMP Snooping

    二层中组播数据转发的问题

    主机加入组播组需要向上游设备发送IGMP成员报告,这样上游设备才可以将组播报文发送给主机。由于IGMP报文是封装在IP报文内,属于三层协议报文,而二层设备不处理报文的三层信息,所以主机加组的过程二层设备并不知道,而且通过对数据链路层数据帧的源MAC地址的学习也学不到组播MAC地址(数据帧的源MAC地址不会是组播MAC地址)。
    这样当二层设备在接收到一个目的MAC地址为组播MAC地址的数据帧时,在MAC地址表中就不会找到对应的表项。那么这时候,它就会采用广播方式发送组播报文,这样不是该组播成员课也会接收到该组播数据。

    造成问题:

    1. 网络资源浪费
    2. 存在安全隐患
    

    IGMP Snooping工作原理

    IGMP Snooping配置在我们的交换机上。
    在这里插入图片描述
    IGMP Snooping可以实现组播数据帧在数据链路层的转发和控制。

    使能IGMP Snooping功能后,二层设备会侦听主机和路由器之间交互的IGMP报文。通过分析报文中携带的信息(报文类型、组播组地址、接收报文的接口等),建立和维护二层组播转发表,从而指导组播数据帧在数据链路层按需转发。

    IGMP Snooping建立和维护二层组播转发表的过程:

    1. RTA作为查询器,周期性的发送普遍组查询,该报文被扩散到交换机的所有端口,包括与交换机CPU相连的内部接口0。交换机CPU收到查询报文后,判断1号接口为连接路由器的接口。
    2. Client B希望加入组播组224.1.2.3,因此以组播方式发送一个IGMP成员报告报文,报告中具有目的MAC地址0x0100.5e01.0203。该报文将被发往路由器的接口以及交换机CPU相连的内部接口0;当CPU收到Client B的IGMP报告时,CPU利用IGMP报告中的信息将该接口加入二层组播转发表中,此时表项包括Client B的接口号,连接路由器的接口号和连接交换机内部CPU的接口号。
    3. 形成此转发表项的结果是使后面任何目的地址为0x0100.5e01.0203的组播帧都被控制在端口0、1和3,而且不向交换机其他端口扩散。
    4. Client C加入组224.1.2.3并主动发一个IGMP报告,交换机CPU收到此报告,它在转发表项上为MAC地址0x0100.5e01.0203增加一个端口(端口4)。

    IGMP简单配置

    在这里插入图片描述
    IGMP配置主要在路由器端,接收端主机只需下载相关组播软件即可。
    路由器配置:

    [AR1]multicast routing-enable                                     //开启组播
    [AR1]int g0/0/0                     
    [AR1-GigabitEthernet0/0/0]ip ad 192.168.1.254 24    //配置网关地址
    [AR1-GigabitEthernet0/0/0]igmp enable                     //开启IGMP协议
    [AR1-GigabitEthernet0/0/0]igmp version 2                 //选择版本2
    

    查询:

    AR1]dis igmp interface                                              //查询接口IGMP信息
    Interface information of VPN-Instance: public net 
     GigabitEthernet0/0/0(192.168.1.254):  
       IGMP is enabled                                                   //IMGP开启
       Current IGMP version is 2                                    //版本2
       IGMP state: up                                                     //状态开启
       IGMP group policy: none                                     //没有组(因为这里只是单纯配置IGMP,整体组播配置在IP组播系列最后一文)
       IGMP limit: -
       Value of query interval for IGMP (negotiated): -
       Value of query interval for IGMP (configured): 60 s     //查询间隔值(普遍组查询报文发送周期)
       Value of other querier timeout for IGMP: 0 s               //其他查询器超时值
       Value of maximum query response time for IGMP: 10 s       //最大相应时间10s
       Querier for IGMP: 192.168.1.254 (this router)                     //谁是查询器(本路由器)
    

    同样我们还可以通过命令[AR1]dis igmp group查询组信息。

    展开全文
  • H3C 中低端以太网交换机 二层技术-以太网交换典型配置指导-6W100-整本手册.pdf
  • 局域网组播环境,也就是一个最小的组播环境涉及到的要素有三个,分别是组播源、支持组播的交换机以及接收组播数据的终端。首先介绍组播协议,组播地址,然后对组播源,交换机和终端在组播环境中的功能进行介绍,最后...
    本文要介绍的是局域网组播,不考虑跨网段的组播实现,因此组播路由协议与本文要介绍的内容无关。局域网组播环境,也就是一个最小的组播环境涉及到的要素有三个,分别是组播源、支持组播的交换机以及接收组播数据的终端。首先介绍组播协议,组播地址,然后对组播源,交换机和终端在组播环境中的功能进行介绍,最后给出一个实际的局域网组播环境。
    

    组播协议 - IGMP

    下图所示是IGMPv2协议的数据包格式。其中Type的取值有三种可能,分别是组成员查询(0x11),组成员报告(0x16)和离开组(0x17)。其中查询又有两种子类型,分别是GeneralQuery和Group-Specific Query,二者的区别是,前者的GroupAddress是224.0.0.1,而后者的Group Address是特定的组播地址。

    采用二层交换机搭建局域网组播环境

    组播地址

    D类IP地址是组播IP地址,D类组播地址范围是224.0.0.0~239.255.255.255。其中224.0.0.0~224.0.0.255地址段中预留的组播地址,地址224.0.0.0保留不做分配,其它地址供路由协议使用。224.0.0.1指的是所有主机,224.0.0.2指的是所有路由器。

    224.0.1.0~231.255.255.255和233.0.0.0~238.255.255.255地址段是ASM(Any-SourceMulticast,任意源组播模型)组播地址。

    232.0.0.0~232.255.255.255地址段是SSM(Source-SpecificMulticast,指定源组播模型)组播组地址。

    239.0.0.0~239.255.255.255地址段是本地管理组播地址,仅在特定的本地范围内有效。

    IANA规定,组播MAC地址的高24bit为0x01005e,MAC地址的低23bit为组播IP地址的低23bit,映射关系如下图:

    采用二层交换机搭建局域网组播环境

    组播源

    顾名思义,就是组播数据的源头。与普通的UDP推送相比,区别在于组播IP地址和组播MAC地址的特殊性。

    组播交换机

    并非随便一个交换机就能用于组播环境的搭建,条件是交换机要支持IGMP Snooping。对于支持IGMPSnooping的交换机来说,配置组播环境通常需要做两件事,第一就是对IGMPSnooping的支持进行配置,第二就是启动查询器。

    IGMP snooping运行在二层交换设备上,管理组播组与端口的映射关系。IGMPsnooping根据收到的IGMP报文的内容维护组播组与端口的映射,比如从某个端口收到IGMP加入一个组播组的报文的时候,则添加向该端口发送目的为相应组播组的表项。

    查询器用来发送IGMP查询,并根据对于查询的响应来维护组播组与端口的映射表。下图是一个普遍组查询的抓包:

    采用二层交换机搭建局域网组播环境

    具体的内容应该参见交换机的文档。

    有的交换机不支持查询器,可以实现一个软件的查询器,下面就是一个python代码,功能是发送一个普遍组查询:

    importsocket
    import struct

    def IGMP_general_query_send ():
          igmp_general_query_packet = struct.pack("bbBBbbbb", 0x11, 0x64,0xee, 0x9b, 0, 0, 0, 0)
          sock =socket.socket(socket.AF_INET, socket.SOCK_RAW,socket.IPPROTO_IGMP)
          sock.sendto(igmp_general_query_packet, ("224.0.0.1", 0))

    IGMP_general_query_send()

    组播接收终端

    就是IGMP协议的支持。我们采用IGMP v2,因此先来介绍一下IGMPv2协议。有三种类型的IGMP查询消息,分别是成员查询,成员报告,离开组播组。

    局域网组播实践


    局域网组播是小型IPTV解决方案中直播的较好选择。经过一番研究发现,采用可管理的二层交换机实现局域网组播是可行的。下面就描述一下采用H3CS5100-24P-SI二层交换机如何搭建这样的环境。

    涉及到的设备有:
    1. 支持组播的实时编码器,就采用本人的Rainbow好了。
    2. 支持IGMP Snooping的可管理交换机,采用H3C S5100-24P-SI。
    3. 终端播放器,采用VLC播放器。
    实现步骤有三部,分别是配置交换机、配置实时编码器以及用VLC接收组播,并通过Wireshark抓包验证组播实现的正确性。

    配置交换机需要通过Console来完成,通过Web界面是实现不了的。怎么登陆终端这里就不再赘述了。登陆到终端以后运行如下命令使能IGMPSnooping:
    system-view
    igmp-snooping enable
    vlan vlan-id
    igmp-snooping enable
    然后使能查询器,命令如下:
    igmp-snooping querier

    配置Rainbow,推送组播流到239.1.1.1:12345

    配置WindowXP的IGMP版本为2,因为我的VLC是安装在WindowsXP下的,而且我采用IGMPV2,因为中兴的V600V4A盒子是IGMPV2。做法就是修改注册表,增加或者修改[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]下的表项"IGMPVersion"并设置值为dword:00000003,然后重新启动。

    用vlc打开udp://239.1.1.1:12345,然后点播放和停止按钮,并用wireshark抓包证实正确性。

    采用二层交换机搭建局域网组播环境

    参考资料

    1. H3C S5100-SI/EI 系列以太网交换机操作手册
    2. RFC 2236 - Internet Group Management Protocol, Version2

    展开全文
  • 二层组播和三层组播

    万次阅读 2015-09-21 18:58:50
    二层组播和三层组播
  • 本文主要介绍组播功能在具体组网中的应用配置,包括以下两种典型组网应用: 域内的、三层组播应用情况,以及域间的三层组播应用情况
  • 收发组播注意项一、问题的提出、问题分析三、原因分析四、解决方案五、配置命令六、结语 一、问题的提出 现象: 最近在实践中发现,在同一Vlan内部,该vlan已启用三vlanif时,如果用一台电脑发送组播数据,用另...
  • 网络组播配置案例

    2012-02-24 13:47:00
    主要讲述基于VLAN的静态二层组播示例,基于华为s9300核心交换机。
  • IGMP Snooping是一种IPv4二层组播协议,通过侦听三层组播设备和用户主机之间发送的组播协议报文来维护组播报文的出端口信息,从而管理和控制组播数据报文在数据链路层的转发。 一、IGMP Snooping特性的产品支持 ...
  • IP组播配置与管理——1

    千次阅读 2018-02-05 13:12:03
    IGMP(InternetGroup Management Protocol,因特网组管理协议)是TCP/IP协议族中负责IPv4组播成员管理的协议,需要在组播组成员主机和与之相连的组播路由器上运行,用来在组播组成员主机和与其直接相邻的组播路由器...
  • IP组播配置与管理——2

    千次阅读 2018-03-23 14:49:21
    PIM-DM(IPv4)配置与管理在PIM-DM模式中使用“推”(Push)模式转发组播报文,就是由PIM路由器向组播成员主动推送组播数据,因为PIM-DM网络仅适用于ASM模型,即它的组播源是任意的,组播成员和组播路由器都不关心...
  • 华为5300 IP组播配置指南,官方版。
  • 组播VLAN配置

    千次阅读 2013-06-04 18:01:01
    组播VLAN配置 目 录 1 组播VLAN配置............................................................................................................................... 1-1 1.1 组播VLAN简介..............
  • 浅析组播知识之二层设备转发组播

    千次阅读 2013-07-19 08:40:00
    组播协议分为主机-路由器之间的组成员关系协议和路由器-路由器之间的组播路由协议。组成员关系协议包括IGMP(互连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。 CGMP( cisco group ...
  • 组网需求 (1) 需求分析
  • HCL配置二层静态链路聚合实验

    千次阅读 2020-07-20 16:38:18
    掌握二层静态聚合配置方法 实验拓扑 实验过程 实验任务一 配置二层静态聚合 本实验任务主要是通过配置静态链路聚合,实现数据流量在各成员端口间的分担,并采用源MAC地址与目的MAC地址相结合的聚合负载分担模式。 ...
  • 华为 组播理论知识

    万次阅读 多人点赞 2020-11-05 13:31:40
    如果一个人走在正确的道路上,有目标并努力着,且思想...一、三层地址和二层地址之间有什么关系 二、组播的服务模型有哪几种? 三、IGMPv3的报文类型 四、PIMv2有3种工作模式 五、RPF 检查是什么 六、拓扑 七、基础配置
  • IGMP Snooping和组播VLAN技术原理

    千次阅读 2021-01-07 12:05:21
    由于IGMP报文是封装在IP报文内,属于三层协议报文,而二层设备不处理报文的三层信息,所以这个过程它并不知道,而且通过对数据链路层数据帧的源MAC地址的学习也学不到组播MAC地址(数据帧的源MAC地址不会是组播MAC...
  • Cisco组播配置

    千次阅读 2009-09-12 21:32:53
    配置环境参数」  1. 组播服务器地址为192.168.0.10/24,网关为192.168.0.1/24  2. 三层交换机SwitchA通过上行口G1/1连接组播服务器,交换机... vlan10和vlan20下挂两个二层交换机SwitchB和SwitchC,地址为10...
  • 交换机组播配置

    千次阅读 2010-10-31 21:06:31
    一:实验说明 1. 组播服务器地址为192.168.0.10/24,网关为192.168.0.1/24 2. 三层交换机SwitchA通过上行口G1/1连接组播服务器,交换机连接... vlan10和vlan20下挂两个二层交换机SwitchB和SwitchC,地址为10.10.10....
  • IP组播配置与管理——5

    千次阅读 2018-03-30 16:02:37
    组播VLAN配置与管理组播VLAN(MulticastVLAN)一般部署于设备的网络侧来实现组播流汇聚,然后将组播报文在用户VLAN内复制分发。华为S系列交换机支持基于用户VLAN和基于接口两种方式配置组播VLAN复制功能,可根据不同...
  • 跨VLAN组播

    2012-03-12 09:20:14
    二层三层交换vlan间组播流转发
  • 组播基础概念

    千次阅读 2021-01-05 18:17:04
    组播传输作为IP数据传输的三种方式之一 ,是指接收者的数量和位置在源端主机不知道的情况下,仅由源发出一份组播报文,向目标组播IP地址发送数据的过程。其特点有: 组播实现点到多点的高效数据传输。(全部基于UDP...
  • IP组播基础及工作原理实战——6

    千次阅读 2019-05-05 08:12:47
    二层组播的基本原理是使二层设备可以识别组播组IP地址,建立组播组IP地址与端口对应关系的组播转发表,指导组播数据在数据链路层的转发。 一、二层主播概述 在很多情况下,组播报文要不可避免地经过一些二层交换...
  • 二层交换机与三层交换机交换原理

    千次阅读 2018-11-23 15:35:09
    二层交换机原理 发展历程: 交换机之前为集线器,其做的是透明转发,即洪范式的转发,之后为网桥,软件式的网桥,其传输速度慢,然后出现交换机,即硬件网桥。 集线器物理原理: 接口先将数据传输到总线上,但其...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,628
精华内容 19,851
关键字:

二层组播配置