CN102916897A - 一种实现vrrp负载分担的方法和设备 - Google Patents

一种实现vrrp负载分担的方法和设备 Download PDF

Info

Publication number
CN102916897A
CN102916897A CN2012103809112A CN201210380911A CN102916897A CN 102916897 A CN102916897 A CN 102916897A CN 2012103809112 A CN2012103809112 A CN 2012103809112A CN 201210380911 A CN201210380911 A CN 201210380911A CN 102916897 A CN102916897 A CN 102916897A
Authority
CN
China
Prior art keywords
port
virtual mac
vrrp
list item
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012103809112A
Other languages
English (en)
Other versions
CN102916897B (zh
Inventor
韩冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Information Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201210380911.2A priority Critical patent/CN102916897B/zh
Publication of CN102916897A publication Critical patent/CN102916897A/zh
Application granted granted Critical
Publication of CN102916897B publication Critical patent/CN102916897B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种实现VRRP负载分担的方法和设备。该方法包括:二层交换机接收路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项;当二层交换机接收到目的MAC地址与虚MAC表项中记录的MAC地址匹配的报文时,二层交换机将目的MAC地址对应的端口中的一个端口确定为报文的出端口,并将报文从该出端口转发给对应的路由器。在本发明中,在不对现有VRRP协议进行改动的前提下,实现了VRRP备份组的负载分担,提高了VRRP备份组的资源利用率,并保证了方案使用的兼容性。<b/>

Description

一种实现VRRP负载分担的方法和设备
技术领域
本发明涉及通信领域,尤其涉及实现VRRP负载分担的方法和设备。
背景技术
网关是网络世界至关重要的角色之一,流量必须经过网关的转发才能实现内部主机和外部网络的通信。当网关发生故障时,内部主机就与外部网络失去了联系。网关为用户的配置操作提供了方便,但是对设备的稳定性提出了很高的要求。在现有技术中,通常通过增加网关数量的方式来提高系统的可靠性,但是如何在多个出口之间选择转发路径成为急需解决的问题。
现有技术中通常采用VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)技术解决上述问题。VRRP可以将承担网关功能的一组路由器模拟成一台虚拟路由器,这些路由器可以互为备份,增强了系统可靠性。
具体的,VRRP将局域网内的可以承担网关功能的一组路由器划分在一起,组成一个备份组。备份组由一台Master(主)路由器和多台Backup(备份)路由器组成,对外相当于一台虚拟路由器。虚拟路由器具有IP(Internet Protocol,互联网协议)地址,称为虚IP地址。局域网内的主机仅需要知道这台虚拟路由器的虚IP地址,并将其设置为网关的IP地址即可。局域网内的主机通过这台虚拟路由器与外部网络进行通信。
VRRP备份组建立后,内部的流量由Master路由器转发至外部,当Master路由器出现故障时,满足预设条件的Backup路由器会自动升级为Master路由器承担转发任务,有效避免单一链路发生故障后网络中断的问题。其中,VRRP备份组中路由器的角色切换过程对内部主机是透明的,内部主机的流量可以自动切换至新的路径。
VRRP技术提高了网关可靠性的同时,简化了主机的配置。但是在VRRP备份组中,只有Master路由器可以转发报文,Backup路由器处于监听状态,不参与报文的转发,导致了资源浪费。对于该问题,现有技术中有如下两种解决方案:
(1)、VRRPE(VRRP Extended,VRRP扩展)技术是VRRP技术的扩展,它在虚拟网关冗余备份功能基础上增加了负载分担功能。VRRPE实现的原理为:将一个虚IP地址与多个虚拟MAC(Media Access Control,媒体访问控制)地址对应,VRRP备份组中每台路由器都对应一个虚拟MAC地址;Master路由器使用不同的虚拟MAC地址应答主机的ARP(Address Resolution Protocol,地址解析协议)/ND(Neighbor Discovery,邻居发现)请求,从而使得不同主机的流量发送到不同的路由器,备份组中的每台路由器都能转发流量。
(2)GLBP(Gateway Load Balancing Protocol,网关负载均衡协议)是思科的私有协议,它不仅提供冗余网关,还在各网关之间提供负载均衡。GLBP可以绑定多个MAC地址到虚拟IP。对于相同的虚拟IP,不同的客户端会解析到不同的MAC地址,从而通过不同的路由器转发数据。
但是,上述两种解决方案中,VRRPE属于私有协议,需要修改VRRP的报文结构,无法与其他厂商的设备互通,兼容性较差;GLBP同样属于私有协议,也存在兼容性问题。
发明内容
本发明的目的在于提供一种实现虚拟路由冗余协议VRRP负载分担的方法及其装置,以实现在不对现有VRRP协议进行改动的前提下,实现VRRP备份组负载分担,提高VRRP备份组的资源利用率。为此,本发明采用如下技术方案:
一种实现虚拟路由冗余协议VRRP负载分担的方法,应用于VRRP组网, VRRP备份组中各路由器互不相连,二层交换机分别与所述VRRP备份组中的各路由器连接,且所述二层交换机阻断所述VRRP备份组中各路由器之间的VRRP报文交互,该方法包括:
所述二层交换机接收所述路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项;所述虚MAC表项中记录有所述二层交换机接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;
当所述二层交换机接收到目的MAC地址与所述虚MAC表项中记录的MAC地址匹配的报文时,所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,所述二层交换机根据VRRP通告报文维护虚MAC表项,包括:
所述二层交换机根据该VRRP通告报文中携带的虚MAC地址查询所述虚MAC表项;
当所述虚MAC表项中未记录有所述虚MAC地址对应的表项时,所述二层交换机建立所述虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到所述虚MAC地址对应的表项中;或,当所述虚MAC表项中记录有所述虚MAC地址对应的表项,但该表项中记录的端口不包含接收到所述VRRP通告报文的端口时,所述二层交换机将接收到所述VRRP通告报文的端口记录到所述虚MAC地址对应的表项中。
其中,该方法还包括:
所述虚MAC表项中记录的对应关系中未接收到VRRP通告报文的端口持续时长超过阈值时,删除相应的虚MAC表项中的该端口。
其中,所述二层交换机将虚MAC表项中对应于同一个虚MAC地址的各端口加入到同一个二层聚合口;
所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器,具体为:
所述二层交换机通过所述目的MAC地址对应的二层聚合口将所述报文转发给对应的路由器。
其中,所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器,具体为:
所述二层交换机根据预先配置的访问控制列表ACL 规则对所述报文进行哈希运算,并根据哈希运算结果将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,该方法还包括:
当所述二层交换机接收到客户端发送的目的IP地址为虚IP地址的地址解析协议ARP请求报文时,所述二层交换机终止该ARP请求报文,并确定所述目的IP地址对应的虚MAC地址,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
其中,所述二层交换机接收所述路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项,具体为:
当所述二层交换机接收到所述VRRP通告报文的端口为预先配置的可靠端口时,所述二层交换机根据接收到的VRRP通告报文维护虚MAC表项。
一种网络设备,作为二层交换机应用于虚拟路由冗余协议VRRP组网, VRRP备份组中各路由器互不相连,该网络设备分别与所述VRRP备份组中的各路由器连接,且网络设备阻断所述VRRP备份组中各路由器之间的VRRP报文交互,该网络设备包括:
第一接收模块,用于接收所述路由器发送的VRRP通告报文;
维护模块,用于根据所述VRRP通告报文维护虚MAC表项,所述虚MAC表项中记录有所述第一接收模块接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;
第二接收模块,用于接收客户端设备发送的报文;
第一发送模块,用于当所述第二接收模块接收到目的MAC地址与所述虚MAC表项中记录的MAC地址匹配的报文时,将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,所述维护模块具体用于,根据所述VRRP通告报文中携带的虚MAC地址查询所述虚MAC表项;当所述虚MAC表项中未记录有所述虚MAC地址对应的表项时,建立所述虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到所述虚MAC地址对应的表项中;或,当所述虚MAC表项中记录有所述虚MAC地址对应的表项,但该表项中记录的端口不包含接收到所述VRRP通告报文的端口时,将接收到所述VRRP通告报文的端口记录到所述虚MAC地址对应的表项中。
其中,所述维护模块还用于,当所述虚MAC表项中记录的对应关系中未接收到VRRP通告报文的端口持续时长超过阈值时,删除相应的虚MAC表项中的该端口。
其中,所述网络设备将虚MAC表项中对应于同一个虚MAC地址的各端口加入到同一个二层聚合口;
所述第一发送模块具体用于,通过所述目的MAC地址对应的二层聚合口将所述报文转发给对应的路由器。
其中,所述第一发送模块具体用于,根据预先配置的访问控制列表ACL 规则对所述报文进行哈希运算,并根据哈希运算结果将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,该网络设备还包括:
第二发送模块,用于当所述第二接收模块接收到客户端发送的目的IP地址为虚IP地址的地址解析协议ARP请求报文时,终止该ARP请求报文,并确定所述目的IP地址对应的虚MAC地址,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
其中,所述维护模块具体用于,当所述第一接收模块接收到所述VRRP通告报文的端口为预先配置的可靠端口时,根据接收到的VRRP通告报文维护虚MAC表项。
本发明上述实施例中,二层交换机接收路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项,该虚MAC表项中记录有二层交换机接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;当VRRP接收到目的MAC地址与自身虚MAC表项中记录的虚MAC地址匹配的报文时,二层交换机将该目的MAC地址对应的端口中的一个端口确定为该报文的出端口,并将该报文从该出端口转发给对应的路由器,在不对现有VRRP协议进行改动的前提下,实现了VRRP备份组的负载分担,提高了VRRP备份组的资源利用率,并保证了方案使用的兼容性。
附图说明
图1为本发明实施例提供的一种VRRP组网的架构示意图;
图2位为本发明实施例提供的一种实现VRRP负载分担的方法的流程示意图;
图3为本发明实施例提供的一种VRRP配置示意图;
图4为本发明实施例提供的一种网络设备的结构示意图。 
具体实施方式
针对现有技术中存在的上述问题,本发明实施例提供了一种实现虚拟路由冗余协议VRRP负载分担的技术方案,应用于VRRP组网。在该技术方案中,二层交换机接收路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项,该虚MAC表项中记录有二层交换机接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;当VRRP接收到目的MAC地址与自身虚MAC表项中记录的虚MAC地址匹配的报文时,二层交换机将该目的MAC地址对应的端口中的一个端口确定为该报文的出端口,并将该报文从该出端口转发给对应的路由器。
其中,在本发明实施例中,VRRP备份组中各路由器互不相连,二层交换机阻断了同一VRRP备份组中各路由器之间的报文转发,使VRRP备份组中各路由器均作为Master路由器,并周期性的发送VRRP通告报文;二层交换机根据接收到的VRRP通告报文维护虚MAC表项,并当接收到需要通过VRRP备份组中的路由器转发的报文时,根据预设规则确定该报文的出端口,并将该报文发送给该出端口对应的路由器,由该路由器对报文进行转发,在不对现有VRRP协议进行改动的前提下,实现了VRRP备份组的负载分担,提高了VRRP备份组的资源利用率,并保证了方案使用的兼容性。
下面将结合本发明的实施例中的附图,对本发明的实施例中的技术方案进行清楚、完整的描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明的实施例保护的范围。
参见图1,为本发明实施例提供的一种VRRP组网的架构示意图。其中,VRRP备份组中的各路由器(在该实施例中以VRRP备份组中包含两个路由器为例)互不相连,二层交换机分别与VRRP备份组中各路由器连接。
在该VRRP组网中,由于二层交换机阻断了VRRP备份组中各路由器之间的报文转发,VRRP备份组中各路由器接收不到其他路由器发送的VRRP通告报文,无法感知其他路由器的存在,备份组中的各路由器均会升级为Master路由器,并周期性的发送VRPP通告报文。
基于上述VRRP组网,本发明实施例提供的实现VRRP负载分担的方法流程可以如图2所示。
参见图2,为本发明实施例提供的一种实现VRRP负载分担的方法的流程示意图,可以包括以下步骤:
步骤201、二层交换机接收路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项。
具体的,在本发明实施例中,二层交换机可以在MAC地址表(即二层转发表)中添加虚MAC表项,该虚MAC表项中记录有接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系。其中,在虚MAC表项中,一个MAC地址可以对应多个端口,这些端口分别连接同属于一个VRRP备份组的各路由器。
二层交换机接收到VRRP通告报文后,可以根据该VRRP通告报文中携带的虚MAC地址查询虚MAC表项,以查询虚MAC表项中是否记录有该虚MAC地址以及接收到该VRRP通告报文的端口的对应关系,并当虚MAC表项中未记录该虚MAC对应的表项时,二层交换机建立该虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到该虚MAC地址对应的表项中;或,当虚MAC表项中记录有该虚MAC地址对应的表项,但该表项中记录的端口不包含接收到该VRRP通告报文的端口时,二层交换机将接收到该VRRP通告报文的端口的对应关系记录到该虚MAC地址对应的表项中。
进一步地,当VRRP备份组中某个路由器出现故障时,它就无法继续发送VRRP通告报文。二层交换机如果在某个端口未接收到VRRP通告报文的持续时长超过阈值,则可以删除虚MAC表项中记录的该端口与相应的MAC地址的对应关系。优选地,该阈值可以设定为3倍的VRRP通告报文的发送周期(3倍的VRRP通告报文发送周期内未接收到VRRP通告报文为VRRP协议规定的Backup路由器升级为Master路由器的条件)。
当VRRP备份组中的路由器从故障中恢复时,它又可以继续发送VRRP通告报文。当交换机接收到该路由器发送的VRRP通告报文时,将VRRP通告报文的源MAC地址与接收到该VRRP通告报文的端口的对应关系记录到虚MAC表项中。
需要注意的是,在本发明实施例提供的技术方案中,虚MAC表项并不一定需要添加在MAC地址表中,也可以单独建立并存储,具体实现流程在此不再赘述。
步骤202、当二层交换机接收到目的MAC地址与虚MAC表项中记录的MAC地址匹配的报文时,二层交换机将该目的MAC地址对应的端口中的一个端口确定为该报文的出端口,并将该报文从该出端口转发给对应的路由器。
具体的,二层交换机接收到客户端发送的报文后,根据该报文的目的MAC地址查询虚MAC表项,以确定虚MAC表项中是否记录有该目的MAC地址对应的表项,并当虚MAC表项中记录有该目的MAC地址记录的表项时,确定该目的MAC地址与虚MAC表项中记录的MAC地址匹配。
当二层交换机确定接收到的报文的目的MAC地址与虚MAC地址匹配时,二层交换机可以根据该目的MAC地址以及虚MAC表项确定该目的MAC地址对应的端口,将该目的MAC地址对应的端口中的一个端口确定为报文的出端口,并报文从该出端口转发给对应的路由器。
其中,在本发明实施例中,将目的MAC地址对应的端口中的一个端口确定为报文的出端口,并将报文从该出端口转发给对应的路由器的实现方式,可以至少包括以下几种:
方式一、二层交换机将虚MAC表中对应同一虚MAC地址的各端口加入到同一个二层聚合口,利用二层聚合口天然的负载分担特性实现流量的分发。
具体的,当二层交换机维护虚MAC表项时,将对应同一虚MAC地址的各端口加入到同一个二层聚合口;二层交换机接收到目的MAC地址与虚MAC表项中记录的MAC地址匹配的报文后,将该报文通过该目的MAC地址对应的二层聚合口转发给对应的路由器。其中,通过二层聚合口转发报文时如何实现负载分担在此不再赘述。
进一步地,当有新端口被记录到虚MAC表项时,二层交换机把该端口加入到相应的二层聚合口;当端口从虚MAC表项中删除时,二层交换机从相应的二层聚合口中删除该端口;二层交换机对应虚MAC表项创建的二层聚合口中各成员(端口)均为选中状态,均可以参与流量的转发。
方式二、二层交换机根据预先配置的ACL(Access Control List,访问控制列表)规则对该报文进行哈希运算,并根据希运算结果将目的MAC地址对应的端口中的一个端口确定为报文的出端口,并将报文从该出端口转发给对应的路由器。其中,二层交换机对虚MAC表项中对应同一虚MAC地址的各端口进行编号。
具体的,二层交换机接收到目的MAC地址与虚MAC表项中记录的虚MAC地址匹配的报文后,可以读取该报文的源IP地址、目的IP地址、源端口、目的端口和协议号字段;二层交换机将读取到的各字段的值相加,将得到的结果对虚MAC表项中对应该目的MAC地址的端口的总数取余,并将虚MAC表项中对应该目的MAC地址的各端口中,端口编号与取余结果一致的端口确定为报文的出端口。
其中,当虚MAC表项中的对应同一虚MAC地址的端口数发生变化时,需要对变化后的端口重新编号,并对对应的ACL规则进行相应的调整,其具体实现在此不再赘述。
需要注意的是,上述通过对报文携带的5个特征字段进行哈希运算确定报文的出端口是为了在实现负载均衡的同时,保证同一客户端多次发送的上述5个特征字段相同的报文能被定位到同一出端口,保证客户端与路由器报文交换的准确性和连贯性。因此,在本发明实施例中,在能够达到上述目的的前提下,也可以仅对上述5个特征字段中的部分特征字段或其他特征字段进行哈希运算以确定报文的出端口,其具体实现在此不再赘述。
在现有VRRP组网中,二层交换机接收到客户端发送的目的IP地址为虚IP地址的ARP(Address Resolution Protocol,地址解析协议)请求报文后,会将该ARP请求报文向对应的VRRP备份组中各路由器进行广播,由VRRP备份组中的Master路由器返回ARP应答报文。而在本发明实施例提供的技术方案中,由于VRRP备份组中各路由器均为Master路由器,若仍采用现有技术中的ARP报文交互方式,则VRRP备份组中的各路由器均会返回ARP应答报文,从而造成资源浪费。因此,在本发明实施例中,当二层交换机接收到客户端发送的目的IP地址为虚IP地址的ARP请求报文时,二层交换机终止该ARP请求报文(即不再将该ARP请求报文进行转发),并根据该目的IP确定对应的虚MAC地址,将该目的IP地址与虚MAC地址的对应的关系携带在ARP应答报文中返回给该客户端。
进一步地,为了避免攻击者冒充VRRP备份组中的路由器加入虚MAC表项导致流量丢失,在本发明实施例中,可以将二层交换机与可靠路由器连接的端口设置为信任端口,二层交换机接收到VRRP通告报文时,只有当接收到该VRRP通告报文的端口为信任端口时,才将该端口与相应虚MAC地址的对应关系记录到虚MAC表项中,提高了VRRP组网的安全性。
进一步地,在本发明实施例中,二层交换机根据接收到的VRRP通告报文维护虚MAC表项时,还需要对VRRP备份组的一致性进行检测。具体的,二层交换机通过分析VRRP通告报文中的相应字段,可以确定不同路由器发送的VRRP通告报文对应的VRRP版本是否一致、VRRP通告报文发送周期是否相同、VRRP通告报文中的虚IP地址是否一致、是否认证通过等。若二层交换机通过分析某路由器发送的VRRP通告报文发现,该VRRP通告报文携带的虚MAC地址与虚MAC表项中记录的某虚MAC地址匹配,但与该虚MAC表项中记录的虚MAC地址对应的VRRP备份组相比,VRRP通告报文对应的VRRP版本不一致、VRRP通告报文发送周期不相同、VRRP通告报文中的虚IP地址不一致、或/和认证不通过时,二层交换机确定该路由器不属于虚MAC表项中记录的上述虚MAC地址对应的VRRP备份组,则不将接收到该VRRP通告报文的端口记录到虚MAC表项中。
下面结合具体的应用场景对本发明实施例提供的技术方案进行更加详细的描述。在该实施例中,以图1所示的VRRP组网架构图为具体应用场景的架构示意图。
参见图3,为该实施例提供的一种VRRP配置示意图,其中,路由器1和路由器2分别与二层交换机的Port 1和Port 2连接,路由器1和路由器2组成VRRP备份组1,虚IP地址为1.0.0.1,虚MAC地址为0000-5e00-0101。二层交换机中维护的对应VRRP备份组1的虚MAC表项可以如表1所示:
表1
Figure 226467DEST_PATH_IMAGE001
其中,MAC-Address表示VRPP备份组的虚MAC地址,Port-Number表示对应的端口数量,Port-List表示对应的端口列表。
在该实施例中,二层交换机将虚MAC地址0000-5e00-0101对应的端口(即Port 1和Port 2)加入到二层聚合口S。
当二层交换机接收到目的MAC地址为0000-5e00-0101的报文时,二层交换机根据目的MAC地址0000-5e00-0101查询虚MAC表项,确定与虚MAC地址0000-5e00-0101对应的端口包括Port 1和Port 2,且Port 1和Port 2属于二层聚合口S,则二层交换机将该报文通告二层聚合口S转发给对应的路由器。
通过以上描述可以看出,在本发明实施例提供的技术方案中,VRRP备份组中各路由器互不相连;二层交换机接收路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项,该虚MAC表项中记录有二层交换机接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;当VRRP接收到目的MAC地址与自身虚MAC表项中记录的虚MAC地址匹配的报文时,二层交换机将该目的MAC地址对应的端口中的一个端口确定为该报文的出端口,并将该报文从该出端口转发给对应的路由器,在不对现有VRRP协议进行改动的前提下,实现了VRRP备份组的负载分担,提高了VRRP备份组的资源利用率,并保证了方案使用的兼容性。
基于上述方法实施例系统的发明构思,本发明实施例还提供了一种网络设备,可以作为二层交换机应用于上述方法实施例。
如图4所示,为本发明实施例提供的一种网络设备的结构示意图,该网络设备可以作为二层交换机应用于VRRP组网,该VRRP组网中,VRRP备份组中各路由器互不相连,该网络设备分别与所述VRRP备份组中的各路由器连接,且网络设备阻断所述VRRP备份组中各路由器之间的VRRP报文交互,该网络设备可以包括:
第一接收模块41,用于接收所述路由器发送的VRRP通告报文;
维护模块42,用于根据所述VRRP通告报文维护虚MAC表项,所述虚MAC表项中记录有所述第一接收模块41接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;
第二接收模块43,用于接收客户端设备发送的报文;
第一发送模块44,用于当所述第二接收模块43接收到目的MAC地址与所述虚MAC表项中记录的MAC地址匹配的报文时,将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,所述维护模块42具体用于,根据所述VRRP通告报文中携带的虚MAC地址查询所述虚MAC表项;当所述虚MAC表项中未记录有所述虚MAC地址对应的表项时,建立所述虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到所述虚MAC地址对应的表项中;或,当所述虚MAC表项中记录有所述虚MAC地址对应的表项,但该表项中记录的端口不包含接收到所述VRRP通告报文的端口时,将接收到所述VRRP通告报文的端口记录到所述虚MAC地址对应的表项中。
其中,所述维护模块42还用于,当所述虚MAC表项中记录的对应关系中未接收到VRRP通告报文的端口持续时长超过阈值时,删除相应的虚MAC表项中的该端口。
其中,所述网络设备将虚MAC表项中对应于同一个虚MAC地址的各端口加入到同一个二层聚合口;
所述第一发送模块44具体用于,通过所述目的MAC地址对应的二层聚合口将所述报文转发给对应的路由器。
其中,所述第一发送模块44具体用于,根据预先配置的访问控制列表ACL 规则对所述报文进行哈希运算,并根据哈希运算结果将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
其中,该网络设备还包括:
第二发送模块45,用于当所述第二接收模块43接收到客户端发送的目的IP地址为虚IP地址的地址解析协议ARP请求报文时,终止该ARP请求报文,并确定所述目的IP地址对应的虚MAC地址,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
其中,所述维护模块42具体用于,当所述第一接收模块41接收到所述VRRP通告报文的端口为预先配置的可靠端口时,根据接收到的VRRP通告报文维护虚MAC表项。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (14)

1.一种实现虚拟路由冗余协议VRRP负载分担的方法,应用于VRRP组网,其特征在于,VRRP备份组中各路由器互不相连,二层交换机分别与所述VRRP备份组中的各路由器连接,且所述二层交换机阻断所述VRRP备份组中各路由器之间的VRRP报文交互,该方法包括:
所述二层交换机接收所述路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项;所述虚MAC表项中记录有所述二层交换机接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;
当所述二层交换机接收到目的MAC地址与所述虚MAC表项中记录的MAC地址匹配的报文时,所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
2.如权利要求1所述的方法,其特征在于,所述二层交换机根据VRRP通告报文维护虚MAC表项,包括:
所述二层交换机根据该VRRP通告报文中携带的虚MAC地址查询所述虚MAC表项;
当所述虚MAC表项中未记录有所述虚MAC地址对应的表项时,所述二层交换机建立所述虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到所述虚MAC地址对应的表项中;或,当所述虚MAC表项中记录有所述虚MAC地址对应的表项,但该表项中记录的端口不包含接收到所述VRRP通告报文的端口时,所述二层交换机将接收到所述VRRP通告报文的端口记录到所述虚MAC地址对应的表项中。
3.如权利要求2所述的方法,其特征在于,该方法还包括:
所述虚MAC表项中记录的对应关系中未接收到VRRP通告报文的端口持续时长超过阈值时,删除相应的虚MAC表项中的该端口。
4.如权利要求1所述的方法,其特征在于,所述二层交换机将虚MAC表项中对应于同一个虚MAC地址的各端口加入到同一个二层聚合口;
所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器,具体为:
所述二层交换机通过所述目的MAC地址对应的二层聚合口将所述报文转发给对应的路由器。
5.如权利要求1所述的方法,其特征在于,所述二层交换机将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器,具体为:
所述二层交换机根据预先配置的访问控制列表ACL 规则对所述报文进行哈希运算,并根据哈希运算结果将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
6.如权利要求1所述的方法,其特征在于,该方法还包括:
当所述二层交换机接收到客户端发送的目的IP地址为虚IP地址的地址解析协议ARP请求报文时,所述二层交换机终止该ARP请求报文,并确定所述目的IP地址对应的虚MAC地址,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
7.如权利要求1所述的方法,其特征在于,所述二层交换机接收所述路由器发送的VRRP通告报文,并根据该VRRP通告报文维护虚MAC表项,具体为:
当所述二层交换机接收到所述VRRP通告报文的端口为预先配置的可靠端口时,所述二层交换机根据接收到的VRRP通告报文维护虚MAC表项。
8.一种网络设备,作为二层交换机应用于虚拟路由冗余协议VRRP组网,其特征在于,VRRP备份组中各路由器互不相连,该网络设备分别与所述VRRP备份组中的各路由器连接,且网络设备阻断所述VRRP备份组中各路由器之间的VRRP报文交互,该网络设备包括:
第一接收模块,用于接收所述路由器发送的VRRP通告报文;
维护模块,用于根据所述VRRP通告报文维护虚MAC表项,所述虚MAC表项中记录有所述第一接收模块接收到的VRRP通告报文中携带的虚MAC地址与接收到该VRRP通告报文的端口的对应关系;
第二接收模块,用于接收客户端设备发送的报文;
第一发送模块,用于当所述第二接收模块接收到目的MAC地址与所述虚MAC表项中记录的MAC地址匹配的报文时,将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
9.如权利要求8所述的网络设备,其特征在于,
所述维护模块具体用于,根据所述VRRP通告报文中携带的虚MAC地址查询所述虚MAC表项;当所述虚MAC表项中未记录有所述虚MAC地址对应的表项时,建立所述虚MAC地址对应的表项,并将接收到该VRRP通告报文的端口记录到所述虚MAC地址对应的表项中;或,当所述虚MAC表项中记录有所述虚MAC地址对应的表项,但该表项中记录的端口不包含接收到所述VRRP通告报文的端口时,将接收到所述VRRP通告报文的端口记录到所述虚MAC地址对应的表项中。
10.如权利要求9所述的网络设备,其特征在于,
所述维护模块还用于,当所述虚MAC表项中记录的对应关系中未接收到VRRP通告报文的端口持续时长超过阈值时,删除相应的虚MAC表项中的该端口。
11.如权利要求8所述的网络设备,其特征在于,所述网络设备将虚MAC表项中对应于同一个虚MAC地址的各端口加入到同一个二层聚合口;
所述第一发送模块具体用于,通过所述目的MAC地址对应的二层聚合口将所述报文转发给对应的路由器。
12.如权利要求8所述的网络设备,其特征在于,
所述第一发送模块具体用于,根据预先配置的访问控制列表ACL 规则对所述报文进行哈希运算,并根据哈希运算结果将所述目的MAC地址对应的端口中的一个端口确定为所述报文的出端口,并将所述报文从该出端口转发给对应的路由器。
13.如权利要求8所述的网络设备,其特征在于,该网络设备还包括:
第二发送模块,用于当所述第二接收模块接收到客户端发送的目的IP地址为虚IP地址的地址解析协议ARP请求报文时,终止该ARP请求报文,并确定所述目的IP地址对应的虚MAC地址,将所述目的IP地址与该虚MAC地址的对应关系携带在ARP应答报文中返回给所述客户端。
14.如权利要求8所述的网络设备,其特征在于,
所述维护模块具体用于,当所述第一接收模块接收到所述VRRP通告报文的端口为预先配置的可靠端口时,根据接收到的VRRP通告报文维护虚MAC表项。
CN201210380911.2A 2012-10-10 2012-10-10 一种实现vrrp负载分担的方法和设备 Active CN102916897B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210380911.2A CN102916897B (zh) 2012-10-10 2012-10-10 一种实现vrrp负载分担的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210380911.2A CN102916897B (zh) 2012-10-10 2012-10-10 一种实现vrrp负载分担的方法和设备

Publications (2)

Publication Number Publication Date
CN102916897A true CN102916897A (zh) 2013-02-06
CN102916897B CN102916897B (zh) 2016-04-27

Family

ID=47615133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210380911.2A Active CN102916897B (zh) 2012-10-10 2012-10-10 一种实现vrrp负载分担的方法和设备

Country Status (1)

Country Link
CN (1) CN102916897B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135440A (zh) * 2014-08-11 2014-11-05 杭州华三通信技术有限公司 用于抑制主机迁移的方法和装置
WO2015095996A1 (en) * 2013-12-23 2015-07-02 Telefonaktiebolaget L M Ericsson(Publ) Technique for network service availability
EP2932670A4 (en) * 2012-12-11 2016-08-03 Hangzhou H3C Tech Co Ltd PACKET TRANSMISSION
CN106059929A (zh) * 2016-06-02 2016-10-26 杭州华三通信技术有限公司 一种报文应答方法及装置
CN106533946A (zh) * 2016-11-29 2017-03-22 杭州华三通信技术有限公司 报文转发方法和装置
CN108494675A (zh) * 2018-02-07 2018-09-04 华为技术有限公司 实现虚拟路由冗余协议备份组的方法、装置和路由设备
CN109450791A (zh) * 2018-11-30 2019-03-08 四川安迪科技实业有限公司 远端站侧的主机与主站侧的主机互通的方法及系统
CN112615778A (zh) * 2020-11-06 2021-04-06 北京东土军悦科技有限公司 报文转发方法、装置、路由器、存储介质及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080151882A1 (en) * 2006-12-21 2008-06-26 Khanna Sanjay Passive virtual router redundancy prototcol
CN101257447A (zh) * 2008-03-14 2008-09-03 华为技术有限公司 一种负载分担的方法、系统及路由装置
CN101355519A (zh) * 2008-09-12 2009-01-28 杭州华三通信技术有限公司 一种实现业务流负载分担的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080151882A1 (en) * 2006-12-21 2008-06-26 Khanna Sanjay Passive virtual router redundancy prototcol
CN101257447A (zh) * 2008-03-14 2008-09-03 华为技术有限公司 一种负载分担的方法、系统及路由装置
CN101355519A (zh) * 2008-09-12 2009-01-28 杭州华三通信技术有限公司 一种实现业务流负载分担的方法和装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2932670A4 (en) * 2012-12-11 2016-08-03 Hangzhou H3C Tech Co Ltd PACKET TRANSMISSION
US10110482B2 (en) 2013-12-23 2018-10-23 Telefonaktiebolaget Lm Ericsson (Publ) Technique for network service availability
WO2015095996A1 (en) * 2013-12-23 2015-07-02 Telefonaktiebolaget L M Ericsson(Publ) Technique for network service availability
CN105900406A (zh) * 2013-12-23 2016-08-24 瑞典爱立信有限公司 针对网络服务可用性的技术
CN105900406B (zh) * 2013-12-23 2019-07-09 瑞典爱立信有限公司 针对网络服务可用性的技术
CN104135440B (zh) * 2014-08-11 2018-07-20 新华三技术有限公司 用于抑制主机迁移的方法和装置
CN104135440A (zh) * 2014-08-11 2014-11-05 杭州华三通信技术有限公司 用于抑制主机迁移的方法和装置
CN106059929A (zh) * 2016-06-02 2016-10-26 杭州华三通信技术有限公司 一种报文应答方法及装置
CN106533946A (zh) * 2016-11-29 2017-03-22 杭州华三通信技术有限公司 报文转发方法和装置
CN106533946B (zh) * 2016-11-29 2020-07-07 新华三技术有限公司 报文转发方法和装置
CN108494675A (zh) * 2018-02-07 2018-09-04 华为技术有限公司 实现虚拟路由冗余协议备份组的方法、装置和路由设备
CN109450791A (zh) * 2018-11-30 2019-03-08 四川安迪科技实业有限公司 远端站侧的主机与主站侧的主机互通的方法及系统
CN109450791B (zh) * 2018-11-30 2021-06-11 四川安迪科技实业有限公司 远端站侧的主机与主站侧的主机互通的方法及系统
CN112615778A (zh) * 2020-11-06 2021-04-06 北京东土军悦科技有限公司 报文转发方法、装置、路由器、存储介质及系统

Also Published As

Publication number Publication date
CN102916897B (zh) 2016-04-27

Similar Documents

Publication Publication Date Title
CN102916897B (zh) 一种实现vrrp负载分担的方法和设备
US10547538B2 (en) Packet forwarding method and apparatus
CN106953788B (zh) 一种虚拟网络控制器及控制方法
US8730793B2 (en) Method and apparatus providing network redundancy and high availability to remote network nodes
US8549120B2 (en) System and method for location based address assignment in the distribution of traffic in a virtual gateway
CN102223365B (zh) 基于ssl vpn网关集群的用户接入方法及其装置
US7849127B2 (en) Method and apparatus for a distributed control plane
CN103118148B (zh) 一种arp缓存更新方法和设备
CN101022394A (zh) 一种实现虚拟局域网聚合的方法及汇聚交换机
CN101060533B (zh) 一种提高vgmp协议可靠性的方法、系统及装置
CN113839862B (zh) Mclag邻居之间同步arp信息的方法、系统、终端及存储介质
WO2022253087A1 (zh) 一种数据传输方法、节点、网络管理器及系统
CN101442429B (zh) 一种实现业务系统容灾的方法及系统
WO2021169291A1 (zh) 发布路由的方法、网元、系统及设备
US20110310903A1 (en) Method, apparatus, and system for migrating vpn routing and forwarding instances
CN103457854B (zh) 一种报文转发方法及设备
CN102447703B (zh) 一种热备份方法和系统、cgn设备
CN102946348B (zh) 一种二层网络内vrrpe报文处理方法和设备
CN104836734A (zh) 一种全新的即时通信路由方法和路由器
CN103227822A (zh) 一种p2p通信连接建立方法和设备
CN103227733A (zh) 一种拓扑发现方法及系统
CN112968879B (zh) 一种实现防火墙管理的方法及设备
US20130246652A1 (en) Discover IPv4 Directly Connected Host Conversations Using ARP in Distributed Routing Platforms
CN102891798A (zh) 心跳报文传输方法及装置
CN107438032B (zh) 一种vrrp负载均衡的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230609

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.