转至:

华为交换机VRRP理论知识详解(一)

华为交换机VRRP理论知识详解(二)

华为交换机VRRP理论知识详解(三)

华为交换机VRRP理论知识详解(四)

一、VRRP简介 

虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol)通过把几台路由设备联合组成一台虚拟的路由设备,将虚拟路由设备的IP地址作为用户的默认网关实现与外部网络通信。当网关设备发生故障时,VRRP机制能够选举新的网关设备承担数据流量,从而保障网络的可靠通信。 

随着网络的快速普及和相关应用的日益深入,各种增值业务(如IPTV、视频会议等)已经开始广泛部署,基础网络的可靠性日益成为用户关注的焦点,能够保证网络传输不中断对于终端用户非常重要。 

通常,同一网段内的所有主机上都设置一条相同的、以网关为下一跳的缺省路由。主机发往其他网段的报文将通过缺省路由发往网关,再由网关进行转发,从而实现主机与外部网络的通信。 

当网关发生故障时,本网段内所有以网关为缺省路由的主机将无法与外部网络通信。增加出口网关是提高系统可靠性的常见方法,此时如何在多个出口之间进行选路就成为需要解决的问题。 

VRRP的出现很好的解决了这个问题。VRRP能够在不改变组网的情况下,采用将多台路由设备组成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现默认网关的备份。当网关设备发生故障时,VRRP机制能够选举新的网关设备承担数据流量,从而保障网络的可靠通信。 

在具有多播或广播能力的局域网(如以太网)中,借助VRRP能在网关设备出现故障时仍然提供高可靠的缺省链路,无需修改主机及网关设备的配置信息便可有效避免单一链路发生故障后的网络中断问题。 

二、VRRP原理 

1VRRP概述 

       

 

 

        图1 VRRP备份组示意图 

如上图1所示,HostA通过Switch双归属到SwitchA和SwitchB。在SwitchA和SwitchB上配置VRRP备份组,对外体现为一台虚拟路由器,实现链路冗余备份。 

我们可以在如上图1所示的网络中部署VRRP协议,下面结合该图介绍VRRP协议的基本概念: 

1、VRRP路由器(VRRP Router): 

运行VRRP协议的设备,它可能属于一个或多个虚拟路由器,如SwitchA和SwitchB。 

2、虚拟路由器(Virtual Router): 

又称VRRP备份组,由一个Master设备和多个Backup设备组成,被当作一个共享局域网内主机的缺省网关。如SwitchA和SwitchB共同组成了一个虚拟路由器。 

3、Master路由器(Virtual Router Master): 

承担转发报文任务的VRRP设备,如SwitchA。 

4、Backup路由器(Virtual Router Backup): 

一组没有承担转发任务的VRRP设备,当Master设备出现故障时,它们将通过竞选成为新的Master设备,如SwitchB。 

5、VRID: 

虚拟路由器的标识。如SwitchA和SwitchB组成的虚拟路由器的VRID为1。 

6、虚拟IP地址(Virtual IP Address): 

虚拟路由器的IP地址,一个虚拟路由器可以有一个或多个IP地址,由用户配置。如SwitchA和SwitchB组成的虚拟路由器的虚拟IP地址为10.1.1.10/24。 

7、IP地址拥有者(IP Address Owner): 

如果一个VRRP设备将虚拟路由器IP地址作为真实的接口地址,则该设备被称为IP地址拥有者。如果IP地址拥有者是可用的,通常它将成为Master。 

如SwitchA,其接口的IP地址与虚拟路由器的IP地址相同,均为10.1.1.10/24,因此它是这个VRRP备份组的IP地址拥有者。 

8、虚拟MAC地址(Virtual MAC Address): 

虚拟路由器根据虚拟路由器ID生成的MAC地址。一个虚拟路由器拥有一个虚拟MAC地址,格式为:00-00-5E-00-01-{VRID}(VRRP for IPv4);00-00-5E-00-02-{VRID}(VRRP for IPv6)。 

当虚拟路由器回应ARP请求时,使用虚拟MAC地址,而不是接口的真实MAC地址。如SwitchA和SwitchB组成的虚拟路由器的VRID为1,因此这个VRRP备份组的MAC地址为00-00-5E-00-01-01。 

2VRRP协议报文 

VRRP协议报文用来将Master设备的优先级和状态通告给同一备份组的所有Backup设备。 

VRRP协议报文封装在IP报文中,发送到分配给VRRP的IP组播地址。在IP报文头中,源地址为发送报文接口的主IP地址(不是虚拟IP地址),目的地址是224.0.0.18,TTL是255,协议号是112。 

主IP地址(Primary IP Address):从接口的真实IP地址中选出来的一个主用IP地址,通常选择配置的第一个IP地址。 

目前,VRRP协议包括两个版本: 

VRRPv2和VRRPv3。VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。 

基于不同的网络类型,VRRP可以分为VRRP for IPv4和VRRP for IPv6(简称VRRP6)。VRRP for IPv4支持VRRPv2和VRRPv3,而VRRP for IPv6仅支持VRRPv3。 

3VRRP报文结构 

VRRPv2和VRRPv3的报文结构分别如下图1和下图2所示: 

 

 

图1 VRRPv2报文结构 

       

 

图2 VRRPv3报文结构 

各字段的含义如下表1所示: 

    表1 VRRP报文字段含义 

报文字段 

含义 

VRRPv2

VRRPv3

Version

VRRP协议版本号,取值为2。 

VRRP协议版本号,取值为3。 

Type

VRRP通告报文的类型,取值为1,表示Advertisement。 

VRRP通告报文的类型,取值为1,表示Advertisement。 

Virtual Rtr ID(VRID) 

虚拟路由器ID,取值范围是1~255。 

虚拟路由器ID,取值范围是1~255。 

Priority

Master设备在备份组中的优先级,取值范围是0~255。0表示设备停止参与VRRP备份组,用来使备份设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。 

Master设备在备份组中的优先级,取值范围是0~255。0表示设备停止参与VRRP备份组,用来使备份设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。 

Count IP Addrs/Count IPvX Addr

备份组中虚拟IPv4地址的个数。 

备份组中虚拟IPv4或虚拟IPv6地址的个数。 

Auth Type

VRRP报文的认证类型。协议中指定了3种类型: 

  • 0:Non Authentication,表示无认证。 
  • 1:Simple Text Password,表示明文认证方式。 
  • 2:IP Authentication Header,表示MD5认证方式。 

-

Adver Int/Max Adver Int

VRRP通告报文的发送时间间隔,单位是秒,缺省值为1秒。 

VRRP通告报文的发送时间间隔,单位是厘秒,缺省值为100厘秒(1秒)。 

Checksum

16位校验和,用于检测VRRP报文中的数据破坏情况。 

16位校验和,用于检测VRRP报文中的数据破坏情况。 

IP Address/IPvX Address(es)

VRRP备份组的虚拟IPv4地址,所包含的地址数定义在Count IP Addrs字段。 

VRRP备份组的虚拟IPv4地址或者虚拟IPv6地址,所包含的地址数定义在Count IPvX Addrs字段。 

Authentication Data

VRRP报文的认证字。目前只有明文认证和MD5认证才用到该部分,对于其它认证方式,一律填0。 

rsvd

VRRP报文的保留字段,必须设置为0。 

由报文结构可以看出,VRRPv2和VRRPv3的主要区别为: 

1、支持的网络类型不同:

VRRPv3适用于IPv4和IPv6两种网络,而VRRPv2仅适用于IPv4网络。 

2、认证功能不同:

VRRPv3不支持认证功能,而VRRPv2支持认证功能。 

VRRPv2版本保留报文的认证字段,是为了兼容早期版本(RFC2338),VRRP认证并不能提高安全性。 

发送通告报文的时间间隔的单位不同。VRRPv3支持的是厘秒级,而VRRPv2支持的是秒级。 

4、VRRP认证 

VRRPv2支持在通告报文中设定不同的认证方式和认证字。

1、无认证方式:

设备对要发送的VRRP通告报文不进行任何认证处理,收到通告报文的设备也不进行任何认证,认为收到的都是真实的、合法的VRRP报文。

2、简单字符(Simple)认证方式:

发送VRRP通告报文的设备将认证方式和认证字填充到通告报文中,而收到通告报文的设备则会将报文中的认证方式和认证字与本端配置的认证方式和认证字进行匹配。如果相同,则认为接收到的报文是合法的VRRP通告报文;否则认为接收到的报文是一个非法报文,并丢弃这个报文。

3、MD5认证方式:

发送VRRP通告报文的设备利用MD5算法对认证字进行加密,加密后保存在Authentication Data字段中。收到通告报文的设备会对报文中的认证方式和解密后的认证字进行匹配,检查该报文的合法性。

5、VRRP状态机 

VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于Master状态的设备才可以转发那些发送到虚拟IP地址的报文。

表1 VRRP协议状态 

状态 

说明 

Initialize

该状态为VRRP不可用状态,在此状态时设备不会对VRRP报文做任何处理。 

通常刚配置VRRP时或设备检测到故障时会进入Initialize状态。 

收到接口Up的消息后,如果设备的优先级为255,则直接成为Master设备;如果设备的优先级小于255,则会先切换至Backup状态。 

Master

当VRRP设备处于Master状态时,它将会做下列工作: 

  • 定时(Advertisement Interval)发送VRRP通告报文。 
  • 以虚拟MAC地址响应对虚拟IP地址的ARP请求。 
  • 转发目的MAC地址为虚拟MAC地址的IP报文。 
  • 如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。 
  • 如果收到比自己优先级大的报文,立即成为Backup。 
  • 如果收到与自己优先级相等的VRRP报文且本地接口IP地址小于对端接口IP,立即成为Backup。 

Backup

当VRRP设备处于Backup状态时,它将会做下列工作: 

  • 接收Master设备发送的VRRP通告报文,判断Master设备的状态是否正常。 
  • 对虚拟IP地址的ARP请求,不做响应。 
  • 丢弃目的IP地址为虚拟IP地址的IP报文。 
  • 如果收到优先级和自己相同或者比自己大的报文,则重置Master_Down_Interval定时器,不进一步比较IP地址。 

Master_Down_Interval定时器: 

Backup设备在该定时器超时后仍未收到通告报文,则会转换为Master状态。计算公式如下:Master_Down_Interval=(3* Advertisement_Interval) + Skew_time。其中,Skew_Time=(256–Priority)/256。 

如果收到比自己优先级小的报文且该报文优先级是0时,定时器时间设置为Skew_time(偏移时间),如果该报文优先级不是0,丢弃报文,立刻成为Master。 

  

  

6、VRRP工作过程 

VRRP的工作过程如下:

VRRP备份组中的设备根据优先级选举出Master。Master设备通过发送免费ARP报文,将虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务。

Master设备周期性向备份组内所有Backup设备发送VRRP通告报文,以公布其配置信息(优先级等)和工作状况。

如果Master设备出现故障,VRRP备份组中的Backup设备将根据优先级重新选举新的Master。

VRRP备份组状态切换时,Master设备由一台设备切换为另外一台设备,新的Master设备会立即发送携带虚拟路由器的虚拟MAC地址和虚拟IP地址信息的免费ARP报文,刷新与它连接的主机或设备中的MAC表项,从而把用户流量引到新的Master设备上来,整个过程对用户完全透明。

原Master设备故障恢复时,若该设备为IP地址拥有者(优先级为255),将直接切换至Master状态。若该设备优先级小于255,将首先切换至Backup状态,且其优先级恢复为故障前配置的优先级。

Backup设备的优先级高于Master设备时,由Backup设备的工作方式(抢占方式和非抢占方式)决定是否重新选举Master。 

抢占模式:

在抢占模式下,如果Backup设备的优先级比当前Master设备的优先级高,则主动将自己切换成Master。

非抢占模式:

在非抢占模式下,只要Master设备没有出现故障,Backup设备即使随后被配置了更高的优先级也不会成为Master设备。

由此可见,为了保证Master设备和Backup设备能够协调工作,VRRP需要实现以下功能:

Master设备的选举;

Master设备状态的通告。

下面将从上述两个方面详细介绍VRRP的工作过程。

7、Master设备的选举 

VRRP根据优先级来确定虚拟路由器中每台设备的角色(Master设备或Backup设备)。优先级越高,则越有可能成为Master设备。

初始创建的VRRP设备工作在Initialize状态,收到接口Up的消息后,如果设备的优先级为255,则直接成为Master设备;如果设备的优先级小于255,则会先切换至Backup状态,待Master_Down_Interval定时器超时后再切换至Master状态。首先切换至Master状态的VRRP设备通过VRRP通告报文的交互获知虚拟设备中其他成员的优先级,进行Master的选举:

如果VRRP报文中Master设备的优先级高于或等于自己的优先级,则Backup设备保持Backup状态;

如果VRRP报文中Master设备的优先级低于自己的优先级,采用抢占方式的Backup设备将切换至Master状态,采用非抢占方式的Backup设备仍保持Backup状态。

如果多个VRRP设备同时切换到Master状态,通过VRRP通告报文的交互进行协商后,优先级较低的VRRP设备将切换成Backup状态,优先级最高的VRRP设备成为最终的Master设备;优先级相同时,VRRP设备上VRRP备份组所在接口主IP地址较大的成为Master设备。

如果创建的VRRP设备为IP地址拥有者,收到接口Up的消息后,将会直接切换至Master状态。

  

8、Master设备状态的通告 

Master设备周期性地发送VRRP通告报文,在VRRP备份组中公布其配置信息(优先级等)和工作状况。Backup设备通过接收到VRRP报文的情况来判断Master设备是否工作正常。

当Master设备主动放弃Master地位(如Master设备退出备份组)时,会发送优先级为0的通告报文,用来使Backup设备快速切换成Master设备,而不用等到Master_Down_Interval定时器超时。这个切换的时间称为Skew time,计算方式为:(256-Backup设备的优先级)/256,单位为秒。

当Master设备发生网络故障而不能发送通告报文的时候,Backup设备并不能立即知道其工作状况。等到Master_Down_Interval定时器超时后,才会认为Master设备无法正常工作,从而将状态切换为Master。其中,Master_Down_Interval定时器取值为:3×Advertisement_Interval+Skew_time,单位为秒。

在性能不稳定的网络中,网络堵塞可能导致Backup设备在Master_Down_Interval期间没有收到Master设备的报文,Backup设备则会主动切换为Master。如果此时原Master设备的报文又到达了,新Master设备将再次切换回Backup。如此则会出现VRRP备份组成员状态频繁切换的现象。

为了缓解这种现象,可以配置抢占延时,使得Backup设备在等待了Master_Down_Interval后,再等待抢占延迟时间。如在此期间仍没有收到通告报文,Backup设备才会切换为Master设备。

三、VRRP功能

1、VRRP主备备份 

主备备份是VRRP提供备份功能的基本方式。

 

图1 VRRP主备备份示意图

如上图1所示。该方式需要建立一个虚拟路由器,该虚拟路由器包括一个Master设备和若干Backup设备。

正常情况下,SwitchA为Master设备并承担业务转发任务,SwitchB和SwitchC为Backup设备且不承担业务转发。

SwitchA定期发送VRRP通告报文通知SwitchB和SwitchC自己工作正常。如果SwitchA发生故障,SwitchB和SwitchC会根据优先级选举新的Master设备,继续为主机转发数据,实现网关备份的功能。

SwitchA故障恢复后,在抢占方式下,将重新选举成为Master;在非抢占方式下,将保持在Backup状态。

下面以上图1为例简要说明VRRP主备备份的基本原理。

SwitchA为Master设备,优先级设置为120,抢占方式为延迟抢占。

SwitchB为Backup设备,优先级为默认值100,抢占方式为立即抢占。

SwitchC为Backup设备,优先级设置为110,抢占方式为立即抢占。

正常情况下,用户侧的上行流量路径为:Switch->SwitchA->Router。此时,SwitchA定期发送VRRP报文通知SwitchB和SwitchC自己工作正常。

当SwitchA发生故障时,SwitchA上的VRRP会处于不可用状态。由于SwitchC优先级高于SwitchB,因此SwitchC变为Master设备,并开始发送VRRP报文和免费ARP报文,SwitchB继续保持为Backup设备。用户侧的上行流量路径为:Switch->SwitchC->Router。

当SwitchA故障恢复时,VRRP的优先级为120,状态变为Backup。此时SwitchC继续定期发送VRRP报文,当SwitchA收到VRRP报文后,会比较优先级,发现自己的优先级更高,等待抢占延迟后抢占为Master设备,并开始发送VRRP报文和免费ARP报文。用户侧的上行流量路径恢复为:Switch->SwitchA->Router。

2、VRRP负载分担 

负载分担方式是指多台设备同时承担业务,因此负载分担方式需要两个或者两个以上的虚拟路由器,每个虚拟路由器都包括一个Master路由器和若干个Backup路由器,各虚拟路由器的Master路由器可以各不相同。

VRRP负载分担与VRRP主备备份的基本原理和报文协商过程都是相同的。VRRP负载分担与VRRP主备备份方式不同点在于:

负载分担方式需要建立多个VRRP备份组,各备份组的Master设备可以不同;

同一台VRRP设备可以加入多个备份组,在不同的备份组中具有不同的优先级。

在网关设备上配置VRRP主备备份功能,可以很方便的实现网关的冗余备份。为减轻主用设备上数据流量的承载压力,用户可以通过配置VRRP负载分担实现上行流量的负载均衡。

通过创建多个带虚拟IP地址的VRRP备份组,为不同的用户指定不同的VRRP备份组作为网关,实现负载分担。

 

图1 多网关负载分担示意图

如上图1所示,配置两个VRRP备份组。

VRRP备份组1:SwitchA为Master设备,SwitchB为Backup设备。

VRRP备份组2:SwitchB为Master设备,SwitchA为Backup设备。

一部分用户将VRRP备份组1作为网关,另一部分用户将VRRP备份组2作为网关。这样即可实现对业务流量的负载分担,同时,也起到了相互备份的作用。

3、VRRP平滑倒换 

VRRP备份组中,Master设备进行主控板的主备倒换时,从发生主备倒换到新的主控板正常工作期间,Master设备可能无法正常发送VRRP协议报文。Backup设备在Master_Down_Interval定时器超时后,由于未收到VRRP通告报文而切换为Master。当原Master设备完成主备倒换后,由于原Master设备的优先级高于新Master设备,抢占模式下,会重新抢占成为Master,从而引起链路两次切换,导致系统业务流量的不稳定。

为了避免主备倒换对业务流量的影响,可以在Master设备上使能VRRP平滑倒换功能。在VRRP平滑倒换的过程中,Master和Backup分工不同,相互配合,共同保证业务的平滑传输。

平滑倒换前,必须在Backup设备上使能VRRP协议报文时间间隔学习功能。使能后,Backup设备收到通告报文时,会检查报文中的发送时间间隔值,如果和自己的不同,Backup设备就会学习到报文中的时间间隔,并调整自己的协议报文时间间隔值,与报文中的值保持一致。

Master设备主控板的主备倒换启动时,首先保存当前配置的VRRP通告报文发送间隔,然后调整VRRP通告报文发送间隔(一般远大于倒换前的发送间隔),并以新的时间间隔发送通告报文。

Backup设备收到通告报文后,学习报文中的时间间隔值,并调整自己的定时器,与其保持一致。

倒换结束后,Master设备恢复倒换前的报文发送间隔,并以新的时间间隔发送通告报文。Backup设备收到报文后会再一次学习时间间隔。

在平滑倒换的过程中,VRRP的报文时间间隔学习功能优先于抢占功能,即如果Backup状态的VRRP收到的协议报文里面的时间间隔和自己当前配置的不一致,并且报文中携带的优先级低于自己当前的配置优先级,这种情况VRRP首先考虑的是学习这个时间间隔并重置超时定时器,而后才会考虑是否抢占。

VRRP平滑倒换功能还依赖于系统本身,如果设备自身从主备倒换一开始系统便非常繁忙,无法调度VRRP模块运行的情况,VRRP平滑倒换功能无效。

4、管理VRRP 

为了提高网络可靠性,通常部署主备双归属。为了满足不同的业务需要,设备之间可以运行多个VRRP备份组。此时每个VRRP备份组都需要维护自己的状态机,这样设备之间就会存在大量的VRRP协议报文。

 

图1 管理VRRP示意图

如上图1所示,为了减少协议报文对带宽的占用及CPU资源的消耗,可以将其中一个VRRP备份组配置为管理VRRP备份组(mVRRP),其余的业务VRRP备份组与管理VRRP备份组进行绑定。

此时,管理VRRP负责发送协议报文来协商设备的主备状态;业务VRRP不发送协议报文,其主备状态与管理VRRP的主备保持一致,以此减少协议报文对CPU与带宽资源的消耗。

  

1、管理VRRP备份组

管理VRRP备份组与普通VRRP备份组一样,会通过VRRP协议报文来协商VRRP设备的主备状态。管理VRRP可以部署在网络中的以下位置:

管理VRRP与业务VRRP部署在同一侧。此时管理VRRP备份组作为网关使用(如上图1中的mVRRP1),管理VRRP既负责协商设备的主备状态,也承担业务流量。此时在配置管理VRRP之前必须先创建普通VRRP备份组并配置虚拟IP地址,该虚拟IP地址即为用户设置的网关地址。

管理VRRP部署在SwitchA和SwitchB之间的直连链路上。此时管理VRRP备份组不作为网关使用时(如上图1中的mVRRP2),管理VRRP只负责协商设备的主备状态,不承担业务流量。因此管理VRRP不需要具有虚拟IP地址,用户可以直接在接口上创建管理VRRP备份组。该配置在一定程度上降低了用户维护的复杂度。

2、业务VRRP备份组

普通VRRP备份组与管理VRRP备份组绑定后成为业务VRRP备份组(也叫成员VRRP备份组)。业务VRRP备份组不再发送VRRP协议报文,它的状态由所在接口状态及与其绑定的管理VRRP备份组的状态共同决定。

5、VRRP监视上行链路 

VRRP主备备份功能有时需要额外的技术来完善其工作。

例如,Master设备到达某网络的链路突然断掉时,VRRP无法感知故障进行切换,此时主机无法通过Master设备远程访问该网络。

此时,可以通过VRRP监视指定接口或上行链路,解决这个问题。

当Master设备发现上行接口或链路发生故障时,Master设备降低自己的优先级(使得Master设备的优先级低于Backup设备的优先级),并立即发送VRRP报文。

Backup设备接收到优先级比自己低的VRRP报文后,等待Master_Down_Interval后切换至Master状态,充当VRRP备份组中新的Master设备,从而保证了流量的正常转发。

1、VRRP直接监视连接上行链路的接口状态

       当连接上行链路的接口Down时,Master设备通过降低自身的优先级,使得Backup设备抢占成为Master,承担转发任务。
       

 

图1 VRRP监视上行接口的典型组网图

如上图1所示,SwitchA和SwitchB之间配置VRRP备份组,其中SwitchA为Master设备,SwitchB为Backup设备,SwitchA和SwitchB皆工作在抢占方式下。

在SwitchA上配置VRRP监视上行接口Interface1,当Interface1故障时,SwitchA降低自身优先级,通过报文协商,SwitchB抢占成为Master,确保用户流量正常转发。

2、VRRP利用BFD/NQA/路由技术监视上行链路连接的远端主机或者网络状况

BFD/NQA/路由用于检测Master设备上行链路的连通状况,当Master设备的上行链路发生故障时,BFD/NQA/路由可以检测故障并通知Master设备调整自身优先级,触发主备切换,确保流量正常转发。

 

图2 VRRP与BFD/NQA/路由联动监视上行链路典型组网图

如上图2所示,SwitchA和SwitchB之间配置VRRP备份组,其中SwitchA为Master设备,SwitchB为Backup设备,SwitchA和SwitchB皆工作在抢占方式下。

配置BFD/NQA/路由监测SwitchA到SwitchE之间的链路,并在SwitchA上配置VRRP与BFD/NQA/路由联动。当BFD/NQA/路由检测到SwitchA到SwitchE之间的链路故障时,通知SwitchA降低自身优先级,通过VRRP报文协商,SwitchB抢占成为Master,确保用户流量正常转发。

6、VRRP与BFD联动 

VRRP备份组通过收发VRRP协议报文进行主备状态的协商,以实现设备的冗余备份功能。当VRRP备份组之间的链路出现故障时,由于此时VRRP报文无法正常协商,Backup设备需要等待3倍协商周期(通常为3秒左右)后才会切换为Master设备,在等待切换期间内,业务流量仍会发往Master设备,此时会造成业务流量丢失。

BFD能够快速检测、监控网络中链路或者IP路由的连通状况,通过部署VRRP与BFD联动,可以使主备切换的时间控制在1秒以内,有效解决上述问题。

通过在Master设备和Backup设备之间建立BFD会话并与VRRP备份组进行绑定,由BFD机制快速检测VRRP备份组之间的通信故障,并在出现故障时及时通知VRRP备份组进行主备切换,从而大大减少应用中断时间。

       VRRP支持与静态的BFD会话类型或静态标识符自协商的BFD会话类型的联动。

 

图1 VRRP与BFD联动的典型组网图

如上图1所示,SwitchA和SwitchB之间配置VRRP备份组,SwitchA为Master设备,SwitchB为Backup设备,用户侧的流量通过SwitchA转发。SwitchA和SwitchB皆工作在抢占方式下,其中SwitchB为立即抢占。

在SwitchA和SwitchB两端配置BFD会话,并在SwitchB上配置VRRP与BFD联动。

当VRRP备份组间出现故障时,BFD快速检测故障并通知SwitchB增加指定的优先级(此时SwitchB的优先级须高于SwitchA的优先级),SwitchB立即抢占为Master,用户侧流量通过SwitchB转发,实现了主备的快速切换。

7、VRRP心跳线 

       

 

图1 VRRP心跳线示意图

如上图1所示,在VRRP+STP场景中,SwitchA和SwitchB上配置VRRP备份组。若与用户相连的Switch不能转发VRRP协议报文(如配置了未知组播丢弃),或者为了防止VRRP协议报文(心跳报文)所经过的链路不通或不稳定,可以在SwitchA和SwitchB之间部署一条心跳线,用于传递VRRP协议报文。

由于配置了心跳线之后,需要将Interface1和Interface2加入与VRRP备份组相对应的VLAN(例如,VRRP备份组配置在VLANIF100接口下,则需要配置Interface1和Interface2加入VLAN100),SwitchA、SwitchB和Switch之间会存在环路,因此还需要配置破环协议来破除环路(例如,可以配置STP协议来破除环路)。

Logo

华为云1024程序员节送福利,参与活动赢单人4000元礼包,更有热门技术干货免费学习

更多推荐