一种二层网络内vrrpe报文处理方法和设备的制作方法

文档序号:7865065阅读:224来源:国知局
专利名称:一种二层网络内vrrpe报文处理方法和设备的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种二层网络内VRRPE报文处理方法和设备。
背景技术
VRRP (Virtual Router Redundancy Protocol,虚拟路由器冗余协议)将局域网内的可以承担网关功能的一组路由器划分在一起,组成一个备份组。备份组由一台Master(主)路由器和多台Backup (备份)路由器组成,对外相当于一台虚拟路由器。虚拟路由器具有IP (Internet Protocol,互联网协议)地址,称为虚IP地址。局域网内的主机仅需要 知道这台虚拟路由器的虚IP地址,并将其设置为网关的IP地址即可。局域网内的主机通过这台虚拟路由器与外部网络进行通信。参见图I, Router (路由器)A、Router B和Router C组成一台虚拟路由器。此虚拟路由器有自己的IP地址,其可由用户手工指定。局域网内的主机将虚拟路由器设置为默认网关。Router A、Router B和Router C中优先级最高的路由器作为Master路由器,承担网关功能,其余两台路由器作为Backup路由器,当Master路由器发生故障时,优先级较高的Backup路由器取代Master路由器继续履行网关职责,从而保证局域网内的主机可不间断地与外部网络进行通信。VRRP的现有实现一般有两种方式,一种是VRRP标准模式,只有Master设备会发送通告报文,转发主机的报文以及响应主机的ARP (Address Resolution Protocol,地址解析协议)请求;另一种是VRRPE (Extended VRRPjVRRP扩展)负载均衡模式,由Master设备来响应ARP请求,各个备份组里的设备都能转发报文,实现了负载分担。由于VRRPE模式有负载均衡的优点,因此用户在实际组网应用中一般会选择VRRPE。VRRPE模式中,主机、VRRP备份组设备通过一台二层交换机相连,由于是二层网络,VRRPE通告报文的目的MAC (MediaAccess Control,媒体访问控制)是组播224. 0. 0. 12,因此,VRRPE报文是组播发送的,且每台VRRPE备份组路由器都会发送通告报文,为了实现VRRPE备份组在发生异常的情况下快速切换,一般会将VRRPE通告报文的通告时间配置得很短,这样会导致VRRPE通告报文在整个二层网络里泛洪。参见图2,VRRPE模式中,Master路由器负责为备份组中的路由器分配虚拟MAC地址,并为来自不同主机的ARP请求,应答以不同的虚拟MAC地址,从而实现主机流量在多台路由器之间负载均衡。其中,备份组中的Backup路由器不会应答主机的ARP请求。虚拟MAC地址的分配,实现了不同主机将流量发送给备份组中不同的路由器。为了使备份组中的路由器能够转发主机发送的流量,需要在路由器上创建虚拟转发器。每个虚拟转发器都对应备份组的一个虚拟MAC地址,负责转发目的MAC地址为该虚拟MAC地址的流量。虚拟转发器的优先级用来决定虚拟转发器的状态不同路由器上同一个虚拟MAC地址对应的虚拟转发器中,优先级最高的虚拟转发器处于Active状态,称为AVF (ActiveVirtual Forwarder,动态虚拟转发器),负责转发流量;其它虚拟转发器处于Listening(监听)状态,称为LVF (Listening Virtual Forwarder,监听虚拟转发器),监听AVF的状态,
不转发流量。在实现本发明的过程中,发明人发现现有技术中至少存在以下问题
现有的VRRPE模式中,VRRPE通告报文组播发送的特点会导致报文在二层网络内泛滥,主机以及VLAN内的其他设备将收到不必要的VRRPE通告报文,影响正常通信。

发明内容
本发明的目的在于提供一种二层网络内VRRPE报文处理方法和设备,以节省网络资源,并提高系统的稳定性。为此,本发明采用如下技术方案
一种二层网络内VRRPE报文处理方法,应用于包括二层交换设备和VRRPE备份组的VRRPE组网,所述VRRPE备份组通过二层交换设备实现互联,该方法包括
所述二层交换设备接收VRRPE报文,并根据该VRRPE报文维护VRRP Snooping表项;所述VRRP Snooping表项中记录有VRRP备份组标识、VRRPE报文的通告时间、源媒体访问控制MAC地址以及入接口 ;
所述二层交换设备根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRPSnooping表项,当所述VRRP Snooping表项中记录有VRRPE备份组标识与所述VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口不同的表项时,所述二层交换设备将所述VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,二层交换设备终止所述VRRPE报文的二层转发。其中,所述二层交换设备根据所述VRRPE报文维护VRRP Snooping表项,具体为 所述二层交换设备根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRP
Snooping 表项;
当所述VRRP Snooping表项中未记录所述VRRPE报文中携带的VRRPE备份组标识对应的表项时,所述二层交换设备建立该VRRPE备份组标识对应的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该表项中;
当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,但所述VRRPE报文中携带的VRRPE备份组标识对应的表项中不存在源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口均相同的表项时,所述二层交换设备增加一条对应所述VRRPE报文中携带的VRRPE备份组标识的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该新增的表项中;
当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在入接口与接收到所述VRRPE报文的入接口相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址不同的表项时,所述二层交换设备将表项中的VRRPE报文的通告时间、源MAC地址以及入接口分别替换为所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到所述VRRPE报文的入接口;
当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、以及入接口与接收到所述VRRPE报文的入接口均相同,但VRRPE报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间不相同的表项时,所述二层交换设备将该表项中的通告时间替换为所述VRRPE报文中携带的VRRPE报文的通告时间。其中,所述二层交换设备中设置有VRRP Snooping表项老化定时器;
当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中的入接口接收到VRRPE备份组标识、VRRPE报文的通告时间与该表项中的VRRPE备份组标识、VRRPE报文的通告时间分别相同的VRRPE报文时,所述二层交换设备更新该老化定时器;
当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中记录的入接 口接收到VRRPE备份组标识与该表项中记录的VRRPE备份组相同,但VRRPE报文的通告时间与该表项中记录的VRRPE报文的通告时间不同的VRRPE报文时,所述二层交换设备根据该VRRPE报文中携带的VRRPE报文的通告时间重置该老化定时器;
当所述二层交换设备在老化定时器超时前,未从该老化定时器对应的表项中记录的入接口接收到VRRP备份组相同的VRRPE报文时,所述二层交换设备删除该表项。其中,该方法还包括
当所述二层交换设备接收到虚拟转发器VF优先级为O的VRRPE通告报文时,所述二层交换设备根据该VRRPE通告报文中携带VRRPE备份组标识以及接收到该VRRPE通告报文的入接口查询并删除所述VRRP Snooping表项中的相应表项;
当所述VRRP Snooping表项中存在VRRPE备份组标识与该VF优先级为O的VRRPE通告报文的VRRPE备份组标识相同,源MAC地址与该VRRPE通告报文的源MAC地址、以及入接口与接收到该VRRPE通告报文的入接口不同的表项时,所述二层交换设备将该VRRPE通告报文的目的MAC地址替换为该表项中的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE通告报文进行二层单播转发。其中,所述二层交换设备中维护的VRRP Snooping表项中还记录有虚MAC地址和虚互联网协议IP地址;
该方法还包括
当所述二层交换设备接收到客户端发送的目的IP地址与VRRP Snooping表项中的虚IP地址匹配的地址解析协议ARP请求报文时,所述二层交换设备终止该ARP请求报文,并根据该目的IP地址对应的VRRP Snooping表项确定与该目的IP地址对应的虚MAC地址;当所述与该目的IP地址对应的虚MAC地址为一个时,所述二层交换设备将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端;
当所述与该目的IP地址对应的虚MAC地址为多个时,所述二层交换设备从所述多个虚MAC地址中选择一个,并将所述目的IP地址与所选择的虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。其中,所述二层交换设备根据所述VRRPE报文维护VRRP Snooping表项,还包括 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、VRRP报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间、以及入接口与接收到所述VRRPE报文的入接口均相同,但虚MAC地址与所述VRRPE报文中携带的虚MAC地址不相同的表项时,所述二层交换设备将所述VRRPE报文中携带的虚MAC地址记录到该表项中。一种二层交换设备,应用于包括VRRPE备份组VRRPE组网,所述VRRPE备份组通过二层交换设备实现互联,该二层交换设备包括
接收模块,用于接收VRRPE报文;
维护模块,用于根据该VRRPE报文维护VRRP Snooping表项;所述VRRP Snooping表项中记录有VRRP备份组标识、VRRPE报文的通告时间、源媒体访问控制MAC地址以及入接口 ;发送模块,用于当所述VRRP Snooping表项中记录有VRRPE备份组标识与所述VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口不同的表项时,将所述VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,终止所述VRRPE报文的二层转发。其中,所述维护模块具体用于通过以下方式实现根据所述VRRPE报文维护VRRPSnooping 表项
根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRP Snooping表项;当所述VRRP Snooping表项中未记录所述VRRPE报文中携带的VRRPE备份组标识对应的表项时,建立该VRRPE备份组标识对应的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该表项中;
当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,但所述VRRPE报文中携带的VRRPE备份组标识对应的表项中不存在源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口均相同的表项时,增加一条对应所述VRRPE报文中携带的VRRPE备份组标识的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该新增的表项中;
当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在入接口与接收到所述VRRPE报文的入接口相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址不同的表项时,将表项中的VRRPE报文的通告时间、源MAC地址以及入接口分别替换为所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到所述VRRPE报文的入接口 ;当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、以及入接口与接收到所述VRRPE报文的入接口均相同,但VRRPE报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间不相同的表项时,将该表项中的通告时间替换为所述VRRPE报文中携带的VRRPE报文的通告时间。其中,所述二层交换设备中设置有VRRP Snooping表项老化定时器;所述维护模块还用于,当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中的入接口接收到VRRPE备份组标识、VRRPE报文的通告时间与该表项中的VRRPE备份组标识、VRRPE报文的通告时间分别相同的VRRPE报文时,所述二层交换设备更新该老化定时器;当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中记录的入接口接收到VRRPE备份组标识与该表项中记录的VRRPE备份组相同,但VRRPE报文的通告时间与该表项中记录的VRRPE报文的通告时间不同的VRRPE报文时,所述二层交换设备根据该VRRPE报文中携带的VRRPE报文的通告时间重置该老化定时器;当所述二层交换设备在老化定时器超时前,未从该老化定时器对应的表项中记录的入接口接收到VRRP备份组相同的VRRPE报文时,所述二层交换设备删除该表项。其中,所述维护模块还用于,当所述接收模块接收到虚拟转发器VF优先级为O的VRRPE通告报文时,根据该VRRPE通告报文中携带VRRPE备份组标识以及接收到该VRRPE通告报文的入接口查询并删除所述VRRP Snooping表项中的相应表项; 所述发送模块还用于,当所述VRRP Snooping表项中存在VRRPE备份组标识与该VF优先级为O的VRRPE通告报文的VRRPE备份组标识相同,源MAC地址与该VRRPE通告报文的源MAC地址、以及入接口与接收到该VRRPE通告报文的入接口不同的表项时,将该VRRPE通告报文的目的MAC地址替换为该表项中的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE通告报文进行二层单播转发。其中,所述二层交换设备维护的VRRP Snooping表项中还记录有虚MAC地址和虚互联网协议IP地址;
所述二层交换设备还包括
地址解析协议ARP应答模块,用于当所述接收模块接收到客户端发送的目的IP地址与VRRP Snooping表项中的虚IP地址匹配的地址解析协议ARP请求报文时,终止该ARP请求报文,并根据该目的IP地址对应的VRRP Snooping表项确定与该目的IP地址对应的虚MAC地址;当所述与该目的IP地址对应的虚MAC地址为一个时,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端;当所述与该目的IP地址对应的虚MAC地址为多个时,从所述多个虚MAC地址中选择一个,并将所述目的IP地址与所选择的虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。其中,所述维护模块还用于,当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、VRRP报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间、以及入接口与接收到所述VRRPE报文的入接口均相同,但虚MAC地址与所述VRRPE报文中携带的虚MAC地址不相同的表项时,将所述VRRPE报文中携带的虚MAC地址记录到该表项中。在本发明上述实施例中,二层交换设备接收到VRRPE报文后,根据该报文中携带的VRRPE备份组标识、源MAC地址以及接收到该VRRPE报文的入接口判断发送该VRRPE报文的VRRPE备份组中是否还存在其它路由设备,并当判断为是时,将该VRRPE报文的目的MAC地址替换为对应的单播MAC地址,并进行二层单播转发,防止了报文的广播发送;当判断结果为否时,终止该VRRPE报文的转发,有效地减少了二层网络内VRRPE报文的泛洪,节省了网络资源,提高了系统稳定性。


图I为现有技术中的一种VRRP组网的架构示意 图2为现有技术中的一种VRRPE组网的架构示意 图3为本发明实施例提供的一种二层网络内VRRPE报文处理方法的流程示意 图4为本发明实施例提供的一种二层交换设备的结构示意图。
具体实施例方式针对现有技术中存在的上述问题,本发明实施例提供了一种二层网络内VRRPE报
文处理的技术方案,应用于包括二层交换设备和VRRPE备份组的VRRPE组网。在该技术方案中,VRRPE备份组通过二层交换设备实现互联,当二层交换设备接收到VRRPE备份组中的路由器发送的VRRPE报文时,根据该VRRPE报文维护VRRPE表项;该二层交换设备根据接收到的VRRPE报文中携带的VRRPE备份组标识查询VRRP Snooping表项,并当VRRP Snooping表项中记录有VRRPE备份组标识与该VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与该VRRPE报文中携带的源MAC地址,以及入接口与接收到该VRRPE报文的入接口不同的表项时,二层交换设备将接收到的VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,二层交换设备终止该VRRPE报文的转发。其中,二层交换设备维护的VRRPE表项中记录有VRRP备份组标识、VRRPE报文的通告时间、源MAC地址、虚MAC地址以及入接口,其格式可以如表I所示
表I
VRRPVRID通告时1 (s: 涯MAC入接口
* * *· KI I IIli
其中,VRRP VRID、通告时间和源MAC分别为二层交换设备接收到的VRRPE报文中携带的VRRPE备份组标识、通告时间和源MAC地址,入接口为二层交换设备接收到该VRRPE报文的入接口。在本发明实施例中,二层交换设备接收到VRRPE报文后,根据该报文中携带的VRRPE备份组标识、源MAC地址以及接收到该VRRPE报文的入接口判断发送该VRRPE报文的VRRPE备份组中是否还存在其它路由设备,并当判断为是时,将该VRRPE报文的目的MAC地址替换为对应的单播MAC地址,并进行二层单播转发,防止了报文的广播发送;当判断结果为否时,终止该VRRPE报文的转发(即不对该VRRPE报文进行转发),有效地减少了二层网络内VRRPE报文的泛洪,节省了网络资源,提高了系统稳定性。下面将结合本发明的实施例中的附图,对本发明的实施例中的技术方案进行清楚、完整的描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明的实施例保护的范围。如图3所示,为本发明实施例提供的一种二层网络内VRRPE报文处理方法的流程示意图,可以包括以下步骤
步骤301、二层交换设备接收VRRPE报文,并根据该VRRPE报文维护VRRP Snooping表项。具体的,当二层交换设备接收到报文时,可以根据该报文的报文特征判断该报文是否为VRRPE报文。例如,若二层交换设备接收到的报文的协议号为112,版本号为8或9,则二层交换设备确定该报文为VRRPE报文。在本发明实施例中,二层交换设备接收到VRRPE报文时,可以根据该VRRPE报文维护 VRRP Snooping 表项。其中,在本发明实施例中,二层交换设备根据VRRPE报文维护VRRP Snooping表项可以具体通过以下方式实现
二层交换设备根据接收到的VRRPE报文中携带的VRRPE备份组标识查询VRRP Snooping 表项;
当VRRP Snooping表项中未记录该VRRPE报文中携带的VRRPE备份组标识对应的表项时,二层交换设备建立该VRRPE备份组标识对应的表项,并将该VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该表项中;
当VRRP Snooping表项中记录有该VRRPE报文中携带的VRRPE备份组标识对应的表项,但该VRRPE报文中携带的VRRPE备份组标识对应的表项中不存在源MAC地址与该VRRPE报文中携带的源MAC地址,以及入接口与接收到该VRRPE报文的入接口均相同的表项时,二层交换设备增加一条对应该VRRPE报文中携带的VRRPE备份组标识的表项,并将该VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该新增的表项中;
当VRRP Snooping表项中记录有该VRRPE报文中携带的VRRPE备份组标识对应的表项,且该VRRPE报文中携带的VRRPE备份组标识对应的表项中存在入接口与接收到该VRRPE报文的入接口相同,但源MAC地址与该VRRPE报文中携带的源MAC地址不同的表项时,二层交换设备将表项中的VRRPE报文的通告时间、源MAC地址以及入接口分别替换为该VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口 ;
当VRRP Snooping表项中记录有该VRRPE报文中携带的VRRPE备份组标识对应的表项,且该VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与该VRRPE报文中携带的源MAC地址、以及入接口与接收到该VRRPE报文的入接口均相同,但VRRPE报文的通告时间与该VRRPE报文中携带的VRRPE报文的通告时间不相同的表项时,二层交换设备将该表项中的通告时间替换为该VRRPE报文中携带的VRRPE报文的通告时间。步骤302、二层交换设备根据该VRRPE报文中携带的VRRPE备份组标识查询VRRPSnooping表项,当该VRRP Snooping表项中记录有VRRPE备份组标识与VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与该VRRPE报文中携带的源MAC地址,以及入接口与接收到该VRRPE报文的入接口不同的表项时,转至步骤303 ;否则,转至步骤304。具体的,在本发明实施例中,为了防止二层网络内VRRPE报文泛洪,二层交换设备接收到VRRPE报文后,仅将该VRRPE报文转发给与发送该VRRPE报文的路由器属于同一VRRPE备份组的其他路由器。其中,二层交换设备可以根据接收到的VRRPE报文中携带的VRRPE备份组标识查询VRRP Snooping表项,当VRRP Snooping表项中记录有VRRPE备份组标识与该VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与该VRRPE报文中携带的源MAC地址,以及入接口与接收到该VRRPE报文的入接口不同的表项时,确定发送该VRRPE报文的路由器所属的VRRPE备份组中还存在其他的路由器;否则,确定发送该VRRPE报文的路由器所属的VRRPE备份组中不存在其他的路由器。步骤303、二层交换设备将该VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报
文进行二层单播转发。具体的,当二层交换设备确定VRRP Snooping表项中记录有VRRPE备份组标识与接收到的VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与该VRRPE报文中携带的源MAC地址,以及入接口与接收到该VRRPE报文的入接口不同的表项,即发送VRRPE报文的路由器所属的VRRPE备份组中还存在其他路由器时,二层交换设备将该VRRPE报文的 目的MAC地址替换为相应表项中的源MAC地址,并根据该表项中记录的源MAC地址和入接口将目的MAC地址替换后的VRPPE报文进行二层单播转发
步骤304、二层交换设备终止该VRRPE报文的二层转发。具体的,当二层交换设备确定发送该VRRPE报文的路由器所属的VRRPE备份组中不存在其他的路由器,二层交换设备不将该VRRPE报文进行转发。其中,二层交换设备可以直接丢弃该VRRPE报文。进一步地,在本发明实施例中,可以设置VRRP Snooping表项老化定时器,并根据老化定时器对相应表项进行维护。具体的,对于VRRP Snooping表项中各个表项,二层交换设备均可以根据VRRPE报文的通告时间设置对应的老化定时器。当老化定时器超时前,二层交换设备从该老化定时器对应的表项中记录的入接口接收到VRRPE备份组标识、通告时间与该表项中记录的VRRPE备份组、通告时间分别相同的VRRPE报文时,二层交换设备更新该老化定时器;当老化定时器超时前,二层交换设备从该老化定时器对应的表项中记录的入接口接收到VRRPE备份组标识与该表项中记录的VRRPE备份组相同,但通告时间与该表项中记录的通告时间不同的VRRPE报文时,二层交换设备根据该VRRPE报文中携带的通告时间重置该老化定时器;当老化定时器超时,二层交换设备未从该老化定时器对应的表项中记录的入接口接收到VRRP备份组相同的VRRPE报文时,二层交换设备删除该表项。优选地,老化定时器的超时时限可以设置为3倍的通告时间。进一步地,VRRPE备份组中的路由器在退出备份组时,会向二层交换设备发送VF(Virtual Forwarder,虚拟转发器)优先级为O的VRRPE通告报文。在本发明实施例中,当二层交换设备接收到VF优先级为O的VRRPE通告报文时,二层交换设备根据该VRRPE通告报文在VRRP Snooping表项中查询并删除对应的表项,并将该VRRPE通告报文的目的MAC地址替换为VRRPE备份组标识与该VRRPE通告报文的VRRPE备份组标识相同,源MAC地址与该VRRPE通告报文的源MAC地址、以及入接口与接收到该VRRPE通告报文的入接口不同的表项中记录的源MAC地址,并将目的MAC地址替换后的VRRPE通告报文转发给对应的路由器。接收到该VRRPE通告报文的路由器根据协议规定的报文处理流程进行处理,接管该VRRPE通告报文中携带的虚MAC地址。接管该VRRPE通告报文中携带的虚MAC地址的路由器向二层交换设备发送两个VRRPE报文,其中一个携带自身的虚MAC,另一个携带所接管的虚MAC,其具体实现流程在此不再赘述。其中,二层交换设备接收到VRRPE报文后,根据接收到的VRRPE报文维护VRRP Snooping表项。进一步地,在本发明实施例中,VRRP Snooping表项中还可以记录二层交换设备接收到的VRRPE报文中携带的虚MAC地址和虚IP地址。相应地,当二层交换设备接收到客户端发送的ARP请求报文,且该ARP请求报文的目的IP地址与VRRP Snooping表项中的虚IP地址匹配时,二层交换设备终止该ARP请求报文,并根据VRRP Snooping表项中对应该目的IP地址的表项中确定该目的IP地址对应的虚MAC地址,当该目的IP地址对应的虚MAC地址为一个时,二层交换设备将该目的IP地址与虚MAC地址的对应关系携带在ARP应答报文中返回给客户端;当该目的IP地址对应的虚MAC地址为多个时,二层交换设备从该目的IP地址对应的多个虚MAC地址中选择一个虚MAC地址,并将目的IP地址与所选择的虚MAC地址的对应关系携带在ARP应答报文中返回给客户端,避免了 ARP请求报文在VLAN内的广播,减少了 ARP请求报文的泛洪,节省了网络资源。其中,二层交换设备从目的IP地址对应的多个虚MAC地址中选择一个虚MAC地址的方式可以为轮询选择、随机选择等方式,其具体
相应地,当二层交换设备接收到VRRPE报文时,且VRRP Snooping表项中记录有该VRRPE报文中携带的VRRPE备份组标识对应的表项,且VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与VRRPE报文中携带的源MAC地址、VRRP报文的通告时间与该VRRPE报文中携带的VRRPE报文的通告时间、以及入接口与接收到VRRPE报文的入接口均相同,但虚MAC地址与该VRRPE报文中携带的虚MAC地址不相同的表项时,该二层交换设备将该VRRPE报文中携带的虚MAC地址记录到该表项中。下面结合具体的应用场景对本发明实施例提供的技术方案进行更加详细的描述。在该实施例中,二层交换设备中维护的VRRP Snooping表项可以如表2所示
表2
VREP VRID s I MAC 入接口类 MAC IP
II0-0-1 E0*1 000f-e2ff-0011 20,0.0.10
II0-0-2 E0;2 000f-e2ff-0012 20.0.0.10
II0-0-3 E0..3 000f-e2ff-0013 20.0.0.10
其中,二层交换设备对应各VRRP Snooping表项设置有老化定时器,老化定时器的超时时限为3倍的通告时间。若二层交换设备从接口 E0/1接收到VRRP VRID为I、通告时间为Is、源MAC地址为 0-0-1、虚 MAC 地址为 000f-e2ff-0011、虚 IP 地址为 20. 10. 0. 10 的 VRRPE 报文,二层交换设备根据该VRRPE交换机根据该VRRPE报文中的相应字段查询VRRP Snooping表项,确定VRRP Snooping表项中存在匹配的表项,则二层交换设备更新该表项对应的老化定时器。进一步地,二层交换设备根据查询结果可知,VRRP Snooping表项中还存在两条VRRP VRID与接收到的VRRPE报文中携带的VRRP VRID相同,但源MAC地址与该VRRPE报文中携带的源MAC地址(0-0-1)、以及入接口与接接收到该VRRPE报文的入接口(E0/1)不同的表项,二层交换设备分别将该VRRPE报文的目的MAC地址替换为0-0-2和0_0_3,并分别根据相应表项中记录的源MAC地址与入接口的对应关系(0-0-2与E0/2、0-0-3与E0/3)查询二层MAC地址表,进而将目的MAC地址替换后的VRRPE报文通过相应的接口进行二层单
播转发。若二层交换设备从接口 E0/4接收到VRRP VRID为2、通告时间为Is、源MAC地址为 0-0-4、虚 MAC 地址为 000f-e2ff-0021、虚 IP 地址为 30. 10. O. 10 的 VRRPE 报文,二层交换设备根据该VRRPE报文的相应字段查询VRRP Snooping表项,确定VRRP Snooping表项中不存在VRRP VRID为2的表项,则二层交换设备建立对应该VRRP VRID (2)的表项,并将该VRRPE报文中携带的相应字段记录到该表项中,其中,该表项可以如表3所示
权利要求
1.一种二层网络内虚拟路由冗余协议扩展VRRPE报文处理方法,应用于包括二层交换设备和VRRPE备份组的VRRPE组网,其特征在于,所述VRRPE备份组通过二层交换设备实现互联,该方法包括 所述二层交换设备接收VRRPE报文,并根据该VRRPE报文维护VRRP Snooping表项;所述VRRP Snooping表项中记录有VRRP备份组标识、VRRPE报文的通告时间、源媒体访问控制MAC地址以及入接口 ; 所述二层交换设备根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRPSnooping表项,当所述VRRP Snooping表项中记录有VRRPE备份组标识与所述VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口不同的表项时,所述二层交换设备将所述VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,二层交换设备终止所述VRRPE报文的二层转发。
2.如权利要求I所述的方法,其特征在于,所述二层交换设备根据所述VRRPE报文维护VRRP Snooping表项,具体为 所述二层交换设备根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRPSnooping 表项; 当所述VRRP Snooping表项中未记录所述VRRPE报文中携带的VRRPE备份组标识对应的表项时,所述二层交换设备建立该VRRPE备份组标识对应的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该表项中; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,但所述VRRPE报文中携带的VRRPE备份组标识对应的表项中不存在源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口均相同的表项时,所述二层交换设备增加一条对应所述VRRPE报文中携带的VRRPE备份组标识的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该新增的表项中; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在入接口与接收到所述VRRPE报文的入接口相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址不同的表项时,所述二层交换设备将表项中的VRRPE报文的通告时间、源MAC地址以及入接口分别替换为所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址、以及接收到所述VRRPE报文的入接口 ; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、以及入接口与接收到所述VRRPE报文的入接口均相同,但VRRPE报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间不相同的表项时,所述二层交换设备将该表项中的通告时间替换为所述VRRPE报文中携带的VRRPE报文的通告时间。
3.如权利要求I所述的方法,其特征在于,所述二层交换设备中设置有VRRPSnooping表项老化定时器; 当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中的入接口接收到VRRPE备份组标识、VRRPE报文的通告时间与该表项中的VRRPE备份组标识、VRRPE报文的通告时间分别相同的VRRPE报文时,所述二层交换设备更新该老化定时器; 当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中记录的入接口接收到VRRPE备份组标识与该表项中记录的VRRPE备份组相同,但VRRPE报文的通告时间与该表项中记录的VRRPE报文的通告时间不同的VRRPE报文时,所述二层交换设备根据该VRRPE报文中携带的VRRPE报文的通告时间重置该老化定时器; 当所述二层交换设备在老化定时器超时前,未从该老化定时器对应的表项中记录的入接口接收到VRRP备份组相同的VRRPE报文时,所述二层交换设备删除该表项。
4.如权利要求I所述的方法,其特征在于,该方法还包括 当所述二层交换设备接收到虚拟转发器VF优先级为O的VRRPE通告报文时,所述二层交换设备根据该VRRPE通告报文中携带VRRPE备份组标识以及接收到该VRRPE通告报文的入接口查询并删除所述VRRP Snooping表项中的相应表项; 当所述VRRP Snooping表项中存在VRRPE备份组标识与该VF优先级为O的VRRPE通告报文的VRRPE备份组标识相同,源MAC地址与该VRRPE通告报文的源MAC地址、以及入接口与接收到该VRRPE通告报文的入接口不同的表项时,所述二层交换设备将该VRRPE通告报文的目的MAC地址替换为该表项中的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE通告报文进行二层单播转发。
5.如权利要求I所述的方法,其特征在于,所述二层交换设备中维护的VRRPSnooping表项中还记录有虚MAC地址和虚互联网协议IP地址; 该方法还包括 当所述二层交换设备接收到客户端发送的目的IP地址与VRRP Snooping表项中的虚IP地址匹配的地址解析协议ARP请求报文时,所述二层交换设备终止该ARP请求报文,并根据该目的IP地址对应的VRRP Snooping表项确定与该目的IP地址对应的虚MAC地址; 当所述与该目的IP地址对应的虚MAC地址为一个时,所述二层交换设备将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端; 当所述与该目的IP地址对应的虚MAC地址为多个时,所述二层交换设备从所述多个虚MAC地址中选择一个,并将所述目的IP地址与所选择的虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
6.如权利要求5所述的方法,其特征在于,所述二层交换设备根据所述VRRPE报文维护VRRP Snooping表项,还包括 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、VRRP报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间、以及入接口与接收到所述VRRPE报文的入接口均相同,但虚MAC地址与所述VRRPE报文中携带的虚MAC地址不相同的表项时,所述二层交换设备将所述VRRPE报文中携带的虚MAC地址记录到该表项中。
7.—种二层交换设备,应用于包括虚拟路由冗余扩展VRRPE备份组VRRPE组网,所述VRRPE备份组通过二层交换设备实现互联,其特征在于,该二层交换设备包括 接收模块,用于接收VRRPE报文; 维护模块,用于根据该VRRPE报文维护VRRP Snooping表项;所述VRRP Snooping表项中记录有VRRP备份组标识、VRRPE报文的通告时间、源媒体访问控制MAC地址以及入接口 ; 发送模块,用于当所述VRRP Snooping表项中记录有VRRPE备份组标识与所述VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口不同的表项时,将所述VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,终止所述VRRPE报文的二层转发。
8.如权利要求7所述的二层交换设备,其特征在于,所述维护模块具体用于通过以下方式实现根据所述VRRPE报文维护VRRP Snooping表项 根据所述VRRPE报文中携带的VRRPE备份组标识查询所述VRRP Snooping表项; 当所述VRRP Snooping表项中未记录所述VRRPE报文中携带的VRRPE备份组标识对应的表项时,建立该VRRPE备份组标识对应的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该表项中; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,但所述VRRPE报文中携带的VRRPE备份组标识对应的表项中不存在源MAC地址与所述VRRPE报文中携带的源MAC地址,以及入接口与接收到所述VRRPE报文的入接口均相同的表项时,增加一条对应所述VRRPE报文中携带的VRRPE备份组标识的表项,并将所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到该VRRPE报文的入接口记录到该新增的表项中; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在入接口与接收到所述VRRPE报文的入接口相同,但源MAC地址与所述VRRPE报文中携带的源MAC地址不同的表项时,将表项中的VRRPE报文的通告时间、源MAC地址以及入接口分别替换为所述VRRPE报文中携带的VRRPE报文的通告时间、源MAC地址以及接收到所述VRRPE报文的入接口 ; 当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、以及入接口与接收到所述VRRPE报文的入接口均相同,但VRRPE报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间不相同的表项时,将该表项中的通告时间替换为所述VRRPE报文中携带的VRRPE报文的通告时间。
9.如权利要求7所述的二层交换设备,其特征在于,所述二层交换设备中设置有VRRPSnooping表项老化定时器; 所述维护模块还用于,当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中的入接口接收到VRRPE备份组标识、VRRPE报文的通告时间与该表项中的VRRPE备份组标识、VRRPE报文的通告时间分别相同的VRRPE报文时,所述二层交换设备更新该老化定时器;当所述二层交换设备在老化定时器超时前,从该老化定时器对应的表项中记录的入接口接收到VRRPE备份组标识与该表项中记录的VRRPE备份组相同,但VRRPE报文的通告时间与该表项中记录的VRRPE报文的通告时间不同的VRRPE报文时,所述二层交换设备根据该VRRPE报文中携带的VRRPE报文的通告时间重置该老化定时器;当所述二层交换设备在老化定时器超时前,未从该老化定时器对应的表项中记录的入接口接收到VRRP备份组相同的VRRPE报文时,所述二层交换设备删除该表项。
10.如权利要求7所述的二层交换设备,其特征在于, 所述维护模块还用于,当所述接收模块接收到虚拟转发器VF优先级为O的VRRPE通告报文时,根据该VRRPE通告报文中携带VRRPE备份组标识以及接收到该VRRPE通告报文的入接口查询并删除所述VRRP Snooping表项中的相应表项; 所述发送模块还用于,当所述VRRP Snooping表项中存在VRRPE备份组标识与该VF优先级为O的VRRPE通告报文的VRRPE备份组标识相同,源MAC地址与该VRRPE通告报文的源MAC地址、以及入接口与接收到该VRRPE通告报文的入接口不同的表项时,将该VRRPE通告报文的目的MAC地址替换为该表项中的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE通告报文进行二层单播转发。
11.如权利要求7所述的二层交换设备,其特征在于,所述二层交换设备维护的VRRPSnooping表项中还记录有虚MAC地址和虚互联网协议IP地址; 所述二层交换设备还包括 地址解析协议ARP应答模块,用于当所述接收模块接收到客户端发送的目的IP地址与VRRP Snooping表项中的虚IP地址匹配的地址解析协议ARP请求报文时,终止该ARP请求报文,并根据该目的IP地址对应的VRRP Snooping表项确定与该目的IP地址对应的虚MAC地址;当所述与该目的IP地址对应的虚MAC地址为一个时,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端;当所述与该目的IP地址对应的虚MAC地址为多个时,从所述多个虚MAC地址中选择一个,并将所述目的IP地址与所选择的虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
12.如权利要求11所述的二层交换设备,其特征在于, 所述维护模块还用于,当所述VRRP Snooping表项中记录有所述VRRPE报文中携带的VRRPE备份组标识对应的表项,且所述VRRPE报文中携带的VRRPE备份组标识对应的表项中存在源MAC地址与所述VRRPE报文中携带的源MAC地址、VRRP报文的通告时间与所述VRRPE报文中携带的VRRPE报文的通告时间、以及入接口与接收到所述VRRPE报文的入接口均相同,但虚MAC地址与所述VRRPE报文中携带的虚MAC地址不相同的表项时,将所述VRRPE报文中携带的虚MAC地址记录到该表项中。
全文摘要
本发明公开了一种二层网络内VRRPE报文处理方法和设备,该方法包括二层交换设备接收VRRPE报文,并根据该VRRPE报文维护VRRPSnooping表项;二层交换设备根据VRRPE报文中携带的VRRPE备份组标识查询VRRPSnooping表项,当VRRPSnooping表项中记录有VRRPE备份组标识与VRRPE报文中携带的VRRPE备份组标识相同,但源MAC地址与VRRPE报文中携带的源MAC地址,以及入接口与接收到VRRPE报文的入接口不同的表项时,二层交换设备将VRRPE报文的目的MAC地址替换为该表项中记录的源MAC地址,并根据该表项中记录的源MAC地址和入接口对该目的MAC地址替换后的VRRPE报文进行二层单播转发;否则,二层交换设备终止VRRPE报文的二层转发。在本发明中,节省了网络资源,并提高了系统的稳定性。
文档编号H04L12/713GK102946348SQ20121044605
公开日2013年2月27日 申请日期2012年11月9日 优先权日2012年11月9日
发明者周天弋 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1