• 文章搜索:
  • 战神图录

        • 分享到...

        • 新浪微博
        • 腾讯微博
        • 推荐到豆瓣 豆瓣空间
        • 分享到搜狐微博 搜狐微博
        • 分享到QQ空间 QQ空间
        • 分享到腾讯朋友 腾讯朋友
        • 网易微博分享 网易微博
        • 添加到百度搜藏 百度搜藏
        • 转贴到开心网 开心网
        • 转发好友 告诉聊友
    • 推荐
    • 打印
    • 收藏

    一山不容二虎:IRF+MDC环境下防双活功能介绍

    作者:  |  上传时间:2014-05-20  |  关键字:一山不容二虎:IRF+MDC环境下防双活功能介绍

    前言

    S12500系列产品从Comvare V7版本开始实现了MDC技术,而MDC与IRF2的结合使用也为我们带来了更灵活的部署方案,下图所示的就是我们最常见的IRF+MDC的应用方式,即两框堆叠+跨框划分MDC的方式。

    图 1

    在IRF中不得不关注一个问题,即堆叠分裂导致网络中出现双活,为了防止这个问题出现,我们要部署相应的检测机制来避免该问题,那么该怎么部署呢?IRF+MDC环境下防双活需要同时部署两种检测机制:MAD检测机制和IRF link-status detect机制,二者的结合才是IRF+MDC环境下防双活的解决方案。首先来介绍下这两种机制。

    一、 IRF link-status detectIRF链路状态检测) 机制

    准确的讲,IRF link-status detect机制并不是真正意义上的双活检测机制,它只是一种类似于以太网OAM的链路故障检测机制,它的功能是当两台成员设备之间存在多于一条IRF物理连接时,系统会检测每条IRF物理连接是否连通,确保系统能及时发现故障链路,当某条IRF链路发生故障时,系统会将此IRF链路对应的IRF物理端口设置为禁止接收报文,并通过Log信息通知用户,而且该功能仅在两框未分裂状态下才有效,因为分裂后,尽管IRF堆叠口仍然会发送检测报文,但对端的框并不会处理该报文。其实在V5平台上IRF link-status detect功能就已经有了,正如上面的描述,在V5平台上该功能仅仅对IRF链路本身有效;而在V7平台上对此功能做了扩展,当在某MDC中检测到IRF链路故障后,它不仅会把该IRF端口本身down掉,还会down掉本MDC中除保留端口以外的其他所有端口(当然,当同一个MDC中有多条IRF链路时,当所有IRF链路都故障了才会down掉其他端口),做了这样的功能扩展后,IRF link-status detect机制便有了防双活的能力,而且它有以下特点:

    1、IRF链路状态检测功能配合IRF link-status auto-recover(IRF链路故障恢复功能),当故障的IRF链路重新恢复正常时,被设置为禁止接收报文的IRF物理端口会重新恢复正常,对应MDC内的其他端口也会恢复正常(相当于天然具有IRF自动恢复功能)

    2、该功能在整个系统未分裂时(任意一个MDC当中只要有一条堆叠链路工作正常系统就不会分裂)生效,当系统彻底分裂时,被设置为禁止接收报文的IRF物理端口,会恢复到之前的状态,被down掉的其他端口也会恢复到之前的状态;即IRF link-status detect(IRF链路状态检测)失效

    n 下面来看下具体现象

    1、 down掉IRF Link-2,此时两框IRF并未彻底分裂,但MDC-2的irf link-status detect 生效,会down掉IRF-member号大的框(框2)MDC-2中的所有端口,查看业务端口状态,显示为IRF-link-down

    2、重新恢复MDC-2的堆叠链路,irf link-status auto-recover功能生效,IRF自动恢复(不用重启),且框2上所有的业务端口重新UP(不用手工恢复)

    3、如果两框彻底分裂,业务端口不会被down掉,即使之前被IRF-link-down的业务端口也会重新UP

    n 由上可知irf link-status detect 机制依赖于两框间的IRF未分裂,当系统彻底分裂时该机制不生效,这个时候就需要MAD检测机制来保证网络不出现双活。

    二、 IRF+MDC环境下的MAD检测机制

    MAD检测机制的应用已经很成熟,这里不再详细说明其原理,仅关注在多个MDC的环境下部署MAD的特点,MAD检测是对整个系统起作用而不会单独对某个MDC起作用,这一特点涉及到以下两个具体问题:

    1、在每一个MDC中都部署MAD检测,当单独一个MDC分裂了,MAD检测是否会生效,是否会影响其他MDC

    2、仅在一个MDC中部署MAD,会有什么样的效果

    n 接下来我们通过具体的实验现象来解析这两个问题

    1、在每一个MDC中都部署BFD MAD检测,down掉IRF Link-2,此时两框堆叠未彻底分裂,BFD MAD-2不会生效,但MDC-2的irf link-status detect生效,会down掉框2上MDC-2中的所有端口(包括BFD MAD检测口),而MDC-1不会受到任何影响

    2、紧接着down掉IRF Link-1,此时两框堆叠彻底分裂,BFD MAD-1生效,框2上的所有端口MAD shutdown

    3、仅在一个MDC中部署BFD MAD检测,先down掉IRF Link-1,最后down掉IRF Link-2,此时BFD MAD检测生效,将断开的顺序颠倒过来,MAD检测仍能生效

    n 通过上面具体实验现象,可知MAD检测在IRF+MDC环境下的特点,即MAD检测仅在两框堆叠彻底分裂的情况下才会生效,且是全局生效,可以仅在一个MDC中(不论是默认MDC还是用户MDC)配置MAD来检测整个系统是否分裂

    以上就是IRF+MDC环境下解决双活问题两种技术,简单的说:

    l IRF link-status detect用于单个MDC分裂防双活(默认开启);

    l MAD用于两框彻底分裂防双活;

    了解完两种检测机制,接下来给出一个部署思路。

    三、 推荐的IRF+MDC部署思路

    1、 在每一个MDC中都部署MAD检测

    2、仅在一个MDC中部署MAD检测

    说明:

    l 首先推荐在每一个MDC中都部署MAD检测,可以增加可靠性

    l 当客户部署如实例中所示的BFD MAD检测时,如果没有足够的端口时,可仅在一个MDC中配置MAD

    l 务必注意关闭MAD检测端口STP功能

    l 如果仅在一个MDC中部署MAD,将MAD检测口加入保留端口(即MAD exclude,当一个端口是保留端口时,系统分裂MAD生效后,该端口不会被MAD shutdown),可以缩短MAD检测时间,增加检测及时率

    以上即是IRF+MDC组网的防双活机制以及简单的部署思路的介绍,希望本文能够为MDC部署工作带来一些提示,这里也列出一些防双活机制其他的特性供大家参考。

    小锦囊:

    1、如果MDC内的堆叠链路失效,该MDC在大框号机框的端口会被down,状态为IRF-LINK-DOWN

    2、如果失效的堆叠链路恢复,原来被IRF-LINK-DOWN的端口可以恢复

    3、优先级:手工shutdown > MAD DOWN > IRF-LINK-DOWN,优先级高的状态会覆盖优先级低的状态

    4、端口配置MAD exclude可以避免被MAD down和IRF-LINK-DOWN

    5、MAD restore命令对IRF-LINK-DOWN的端口无效

    6、MAD可以在每个MDC内配置,也可以在一个MDC内配置多种MAD检测。各种MAD检测之间互相不干扰。

    7、对于LACP MAD检测,同样可以在每个MDC中配置,但domain是系统唯一的。