实现vrrp流量传输的方法和路由设备的制作方法

文档序号:7745797阅读:264来源:国知局
专利名称:实现vrrp流量传输的方法和路由设备的制作方法
技术领域
本发明涉及网络通信技术,特别涉及一种实现虚拟路由器冗余协议(VRRP: Virtual Router Redundancy Protocol)、流量传输的方法禾口路由设备。
背景技术
在实现客户端与外部网络通信时,通常为同一网段内的所有客户端设置同一缺省网关,即配置以同一网关为下一跳的缺省路由,客户端发往其他网段的报文将通过该缺省路由发往网关,再由该网关进行转发,从而实现客户端与外部网络的通信。然而当网关出现故障时,本网段内所有以该网关为缺省路由的客户端将无法与外部网络进行通信。可以看出,缺省路由虽然为用户的配置操作提供了方便,但是对网关提出了很高的稳定性要求,增加出口网关是提高系统可靠性的常见方法,此时,如何在多个出口之间进行选路就成为需要解决的问题。逐渐发展起来的VRRP是用于解决多个出口之间如何进行选路的容错协议,其在提高可靠性的同时,简化了客户端配置。标准的VRRP是将多个具有网关功能的VRRP路由设备组成一台虚拟路由器(也称VRRP备份组),该虚拟路由器中的多个VRRP路由设备按照VRRP的选举机制选举出一个作为主用(master)路由设备负责流量转发,其他作为备用 (backup)路由设备负责对master路由设备进行监听,在监听到master路由设备出现故障时,重新选举master路由设备。可以看出,这种方式虽然提高了系统可靠性,但是,由于虚拟路由器中的多个VRRP路由设备只有master路由设备负责上行流量转发,显然在路由设备资源和网络带宽上都存在浪费。为了解决上述资源和带宽浪费的问题,现有技术提供了一种实现VRRP负载均衡的方法,即利用多个VRRP路由设备创建多个虚拟路由器,每个虚拟路由器中具有一个 master路由设备和至少一个backup路由设备。其中,一个VRRP路由设备可能在一个虚拟路由器中做master路由设备,也可能在另一个虚拟路由器中做lockup路由设备。可以预先为各客户端按照负载均衡策略配置不同的虚拟路由器的虚IP地址作为缺省网关IP地址, 各客户端按照配置的虚拟IP地址发送地址解析协议(ARP)请求,与该客户端对应的虚拟路由器中的master路由设备将自身的MAC地址携带在ARP应答中回复给该客户端,该客户端利用ARP应答中携带的MAC地址创建ARP表项,并利用该ARP表项发送上行流量,即来自各客户端的上行流量通过配置给该客户端的虚拟路由器中的master路由设备进行转发,这实现了上行流量在多个VRRP路由设备之间的负载均衡。而针对下行流量,现有技术中,不管是标准的VRRP,还是实现负载均衡的VRRP,都要求同一虚拟路由器的多个VRRP路由设备向连接了该虚拟路由器的上行设备发布相同的接口地址网段路由,也就是说,同一虚拟路由器的多个VRRP路由设备发布的路由对于上行设备来说为等价路由,基于此,上行设备在发送下行流量给虚拟路由器对应的客户端时,其随机从等价路由中选择出一个路由来转发下行流量。也就是说,不管是标准的VRRP,还是实现负载均衡的VRRP,上行设备转发下行流量到客户端的路由是随机选择的,并不能唯一确定,并且,针对目的地址为同一客户端的下行流量,转发下行流量到该客户端的路由也可能是不一样的。而现有技术中,为了保证流量传输的可靠性,需要开启一些基于流的业务功能,比如防火墙、流量控制等,这些业务功能必须在上下行流量的路由被唯一确定的情况下才能执行,而现有技术中上行设备随机从等价路由中选择出一个路由进行转发下行流量的方法显然不能满足业务功能实现的条件。

发明内容
本发明提供了一种实现VRRP流量传输的方法和路由设备,以避免上行设备随机从等价路由中选择出其中一个路由来转发下行流量所带来的问题。本发明提供的技术方案是这样的一种实现虚拟路由器冗余协议流量传输的方法,所述虚拟路由器包含多个路由设备,所述虚拟路由器中多个路由设备选择出一个作为主用路由设备,其他作为备用路由设备;同一网段各客户端的缺省网关IP地址配置为所述虚拟路由器的虚IP地址;该方法包括A,所述主用路由设备划分所述网段为两个以上子网段,并为每一子网段分配虚 MAC地址,将子网段和虚MAC地址分配给所述虚拟路由器包含的路由设备;B,分配了子网段和虚MAC地址的路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由,以使所述上行设备根据下行报文携带的目的IP 地址以及所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端。一种实现虚拟路由器冗余协议流量传输的方法,所述虚拟路由器包含多个路由设备,所述虚拟路由器中多个路由设备选择出一个作为主用路由设备;预先在所述虚拟路由器的每一路由设备上配置所述虚拟路由器中具有转发报文功能的路由设备、该路由设备被分配的子网段和虚MAC地址三者之间的对应关系;所述主用路由设备确定本机具有转发报文的功能,则根据配置在本机上的所述对应关系为本机分配子网段和虚MAC地址;以及在其他具有转发报文功能的所述路由设备加入所述虚拟路由器时,所述主用路由设备根据配置在本机上的所述对应关系为加入的所述路由设备分配对应的子网段和虚MAC地址;分配了所述子网段和所述虚MAC地址的所述路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由,以使所述上行设备根据下行报文携带的目的IP地址以及发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端;以及分配了所述子网段和所述虚MAC地址的所述路由设备在接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。一种路由设备,所述路由设备应用于上述第一种方法,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址,该路由设备包括
角色选举单元,用于选举所述虚拟路由器中的主用路由设备;网段分配单元,用于在所述角色选举单元选举出的所述主用路由设备为本机时, 将所述网段划分为两个以上子网段,并为每一子网段分配虚MAC地址,所述子网段和所述虚MAC地址分配给所述虚拟路由器包含的路由设备;获取单元,用于在所述角色选举单元选举出的所述主用路由设备为本机时,获取所述网段分配单元分配给本机的所述子网段和所述虚MAC地址;以及用于在所述角色选举单元选举的所述主用路由设备不是本机时,接收所述主用路由设备分配的所述子网段和所述虚MAC地址;发布单元,用于根据所述获取单元获取的被分配的所述子网段和所述虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备根据所述下行报文携带的目的IP地址以及发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端。一种路由设备,所述路由设备应用于上述第二种方法,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址,该路由设备包括存储单元,用于存储所述虚拟路由器中具有转发报文功能的路由设备、子网段和虚MAC地址三者之间的对应关系;角色选举单元,用于选举所述虚拟路由器中的主用路由设备;网段分配单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,确定本机具有转发报文功能,则根据所述存储单元存储的对应关系为本机分配子网段和虚 MAC地址;以及其他具有转发报文功能的路由设备加入所述虚拟路由器时,根据所述存储单元存储的所述对应关系为其他路由设备分配子网段和虚MAC地址;获取单元,用于在所述角色选举单元选举的所述主用路由设备是本机时,获取所述网段分配单元为本机分配的子网段和虚MAC地址;以及用于在所述角色选举单元选举的所述主用路由设备不是本机时,获取所述主用设备分配的子网段和虚MAC地址;发布单元,用于根据获取的被分配的子网段和虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备在下行报文携带的目的IP地址和发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的路由设备将所述下行报文发送至所述客户端,以及在接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。基于以上技术方案,本发明中,上行设备在向所述虚拟路由器对应的客户端发送下行报文时,根据自身接收的由路由设备发布的子网段路由和所述下行报文携带的目的地址进行路由选择即确定用于发送下行报文的路由,其中,同一虚拟路由器中不同的路由设备发布的子网段路由不同,这样,能够使上行设备精确并且唯一确定出用于发送下行报文的路由,并非现有技术中上行设备随机从等价路由中选择出一个路由进行转发下行报文, 基于此,可以在上行设备发送下行报文给客户端所经过的路由设备上开启各种基于流的业务,比如防火墙、流量控制等,避免了上行设备随机从等价路由中选择出一个转发下行流量所导致的缺陷。进一步地,本发明中,客户端根据虚MAC地址上发送行报文,而针对下行报文,上行设备在转发下行报文时,根据该下行报文携带的目的地址即客户端地址所属的子网段确定对应的路由,之后,根据确定的路由发送下行报文;本发明中,由于虚MAC地址与客户端地址所属的子网段对应,这样,能够保证上下行报文在传输时都能通过虚拟路由器中的同一台设备转发,这进一步保证了在设备上开启各种基于流的业务功能。


图1为本发明实施例提供的基本流程图;图2为本发明实施例提供的网络架构图;图3为本发明实施例提供的详细流程图;图4为本发明实施例提供的另一详细流程图;图5为本发明实施例提供的路由设备的结构图;图6为本发明实施例提供的路由设备的另一结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本发明提供的方法涉及的虚拟路由器包含多个VRRP路由设备,该多个VRRP路由设备按照现有方法选择出一个作为master路由设备,其他作为backup路由设备。之后,将该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址(即虚拟路由器中各VRRP路由设备的虚IP地址相同);如图1所示,本发明提供的方法可包括步骤101,master路由设备划分所述网段为两个以上子网段,并为每一子网段分配虚MAC地址,将子网段和虚MAC地址分配给所述虚拟路由器包含的VRRP路由设备。步骤102,分配了子网段和虚MAC地址的VRRP路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由。之所以执行步骤102,能够使上行设备在向所述虚拟路由器对应的客户端发送下行报文时,根据自身接收的步骤102中由VRRP路由设备发布的子网段路由和所述下行报文携带的目的地址进行路由选择即确定用于发送下行报文的路由,具体为从接收的由VRRP 路由设备发布的子网段路由中确定所述下行报文携带的目的IP地址所属的子网段对应的子网段路由,并通过发布了该确定的子网段路由的VRRP路由设备发送所述下行报文至所述客户端。这并非现有技术中随机选择虚拟路由器中VRRP路由设备发布的一个路由转发下行报文,这样,能够保证到达同一客户端的下行报文的路由是相同的,便于实现基于流的业务功能。至此,通过上述步骤实现了本发明实施例的基本流程。进一步地,本实施例中,所述虚拟路由器中的VRRP路由设备在接收到来自客户端广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将自身被分配的与该子网段对应的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。这里,在IPv4中地址解析请求可以为ARP请求,地址应答报文可为ARP应答,客户端利用接收到的虚MAC地址构建ARP表项,利用该ARP表项进行上行报文的发送;而在IPv6中地址解析请求可以为邻居发现(ND NeighborDiscovery)请求,地址应答报文为ND应答,客户端利用接收的虚MAC地址构建ND 表项,利用ND表项进行上行报文的发送。下面对本发明实施例提供的对应图1所述的方法进行详细描述。以图2所示的网络架构为例,客户端A至C为同一网段的三个客户端,VRRP路由设备A至C是三个路由器, 本发明实施例中,将VRRP路由设备A至C仅构成一个虚拟路由器(下称虚拟路由器1),为该虚拟路由器1配置一个虚IP地址,并且,同一网段的所有客户端可以采用相同的配置即将该虚IP地址配置为所有客户端的缺省网关IP地址,也就是说,客户端A至C都向同一个虚拟路由器即虚拟路由器1发送地址解析请求。这里,客户端A至C以广播形式发送地址解析请求。之后,在虚拟路由器1中需要选举出一个master路由设备,剩下的VRRP路由设备为lockup路由设备,具体的选举方式可以为选举性能最高的作为主用路由设备,或者按照 VRRP协议中已定义的VRRP路由设备的VRRP优先级进行选举等,该选举发生的状况主要有两种一种是虚拟路由器1刚创建时,另一种是master路由设备发生故障或者退出虚拟路由器1时,虚拟路由器1中backup路由设备重新选举出一个运行正常的作为master路由设备。以图2所示的VRRP路由设备B作为虚拟路由器1的master路由设备,其他作为 backup路由设备为例,则如图3所示,本发明实施例提供的方法主要包括步骤301,master路由设备获取backup路由设备的资源信息。这里,步骤301maSter路由设备可通过报文交互获取backup路由设备的资源信肩、ο步骤302,根据获取的资源信息所包含的报文转发能力确定出虚拟路由器1中具有转发报文功能的VRRP路由设备。这里,步骤302中进一步包括master路由设备判断自身是否具有转发报文能力, 如果是,则确定自身也为具有转发报文功能的VRRP路由设备。假如经过步骤302后,确定出图2所示的网络结构中虚拟路由器1包含的所有VRRP路由设备都具有转发报文功能,即 master路由设备和所有的backup路由设备都可负责转发报文。步骤303,根据确定的具有转发报文功能的VRRP路由设备的数目将虚拟路由器1 对应的所有客户端所处的网段划分为两个以上子网段。这里,步骤303具体实现时可包括多种实现形式,下面举两种实现方式第一种实现方式将所述网段划分为与具有转发报文功能的VRRP路由设备的数目相等的子网段,优选地,为了实现下行报文转发的负载均衡,尽量保证划分后得到的各个子网段包含的IP地址的数量相同,如此,即可保证每台VRRP路由设备被分配的子网段所包含的IP地址的数量相同。第二种实现方式根据具有转发报文功能的VRRP路由设备的报文转发能力,为各个VRRP路由设备分配一个或多个子网段,具体实现时可包括master路由设备根据预设的报文转发能力与子网段数目的对应关系确定所有具有转发报文功能的VRRP路由设备的报
11文转发能力之和对应的子网段数目,之后将所述网段划分为确定的子网段数目对应的子网段。假如图2所示的网络架构中虚拟路由器1对应的客户端A至C所处的网段为 10. 13. 1.0/24,则步骤303根据上面描述的任何一种方式划分网段10. 13. 1.0/24得到三个子网段,分别为子网段1至3,其中,子网段1为10. 13. 1.0/26,子网段2为10. 13. 1. 128/25, 子网段 3 为 10. 13. 1. 64/26。步骤304,按照不同的子网段对应不同的虚MAC地址的原则为每一子网段分配对应的虚MAC地址。在图2所示的网络架构中,执行到本步骤304时,子网段1对应的虚MAC地址为虚 MAC1,子网段2对应的虚MAC地址为虚MAC2,以及子网段3对应的虚MAC地址为虚MAC3,其中,MACl、MAC2和MAC3两两不同。步骤305,将已划分的子网段和对应的虚MAC地址分配给虚拟路由器1中对应的用于转发报文功能的VRRP路由设备。这里,如果采用步骤303所述的第一种实现方式,由于具有转发报文功能的VRRP 路由设备的数目与划分的子网段的数目相等,则步骤305具体为master路由设备可按照预设顺序依次将子网段和该子网段对应的虚MAC地址分配给确定的具有转发报文功能的VRRP路由设备。比如在图2所示的网络架构中,上述步骤303将网段10. 13. 1.0/24 划分了三个子网段,分别为子网段10. 13. 1.0/26,子网段10. 13. 1. 128/25和子网段 10. 13. 1. 64/26,而上述步骤302中确定的VRRP路由设备的个数也为3,分别为VRRP路由设备A至C,则执行到本步骤305时,可将子网段10. 13. 1. 0/26和对应的虚MACl分配给VRRP 路由设备A,将子网段10. 13. 1. 128/25和对应的虚MAC2分配给VRRP路由设备B,将子网段 310. 13. 1. 64/26和对应的虚MAC3分配给VRRP路由设备C。也就是说,VRRP路由设备A负责目的地址属于子网段10. 13. 1.0/26的下行报文的转发,VRRP路由设备B负责目的地址属于子网段10. 13. 1. 128/25的下行报文的转发,VRRP路由设备C负责目的地址属于子网段10. 13. 1. 64/26的下行报文的转发。注意,针对特殊情况即虚拟路由器1中当前仅存在master路由设备,则步骤301 至步骤305可替换为master路由设备为虚拟路由器1对应的客户端所处的网段分配对应的虚MAC地址,将该网段和对应的虚MAC地址分配给自身。而如果采用步骤303所述的第二种实现方式,则本步骤305具体实现时可包括针对每一具有转发报文功能的VRRP路由设备,根据预设的报文转发能力与子网段数目的对应关系确定该VRRP路由设备的报文转发能力对应的子网段数目,为该VRRP路由设备分配与其他VRRP路由设备不同的、且对应该确定的子网段数目的子网段和对应的虚MAC地址。 其中上述报文转发能力可根据VRRP路由设备的权重值表征,简单地,可以根据VRRP路由设备的实际情况给它配置一个权重值,这样,就可实现处于不同范围的权重值对应不同数量的子网段和虚MAC地址,从而实现报文转发能力强的VRRP路由设备分配比较多的子网段和虚MAC地址,而报文转发能力弱的VRRP路由设备分配比较少的子网段和虚MAC地址。步骤306,在获知有新VRRP路由设备加入虚拟路由器1时,如果新加入的VRRP路由设备具有转发报文功能,则为新加入的VRRP路由设备分配对应的子网段和虚MAC地址。这里,步骤306具体实现时可包括master路由设备将已分配给具有转发报文功能的VRRP路由设备的一个子网段再次划分为两个以上子网段;针对已分配了被再次划分的子网段的VRRP路由设备,在经过再次划分得到的子网段中确定用于分配给该VRRP路由设备的子网段,将确定的子网段中其中1个子网段的虚MAC地址确定为该被再次划分的子网段对应的虚MAC地址,并为确定的子网段中其他子网段分配虚MAC地址,之后将该确定的子网段和对应的虚MAC地址一起分配给该VRRP路由设备;针对新加入的VRRP路由设备,为经过再次划分得到的子网段中除所述确定的子网段之外的各个子网段分别分配对应的虚 MAC地址,将除所述确定的子网段之外的各个子网段和该各个子网段对应的虚MAC地址一起分配给该新加入的VRRP路由设备。例如,在图2所示的网络架构中,当前存在的虚拟路由器1中存在三个VRRP路由设备,分别为VRRP路由设备A至VRRP路由设备C,其中,VRRP 路由设备A被分配了子网段1和虚MAC1,VRRP路由设备B为master路由设备,并被分配了子网段2和虚MAC2,VRRP路由设备C被分配了子网段3和虚MAC3,如果此时一具有转发报文功能的新VRRP路由设备记为VRRP路由设备D加入虚拟路由器1,则master路由设备检测当前各个已分配了子网段和虚MAC地址的VRRP路由设备的负载情况,如果VRRP路由设备A当前的负载比较严重(其他VRRP路由设备比如VRRP路由设备B或者VRRP路由设备 C原理类似),则可将已分配给VRRP路由设备A的子网段1再次划分为子网段11和子网段 12,其他子网段即子网段2和子网段3的分配不变,之后,确定用于分配给VRRP路由设备A 的子网段,比如为子网段11,由于VRRP路由设备A原被分配的子网段1被再次划分,为保证客户端顺利发送上行报文,则本实施例将原被分配的子网段1对应的虚MACl分配给子网段 11,之后,按照不同的子网段对应不同的虚MAC地址的原则为再次划分得到的子网段12分配对应的虚MAC地址,具体为MAC4,其中,MAC4、上述的MAC1、MAC2和MAC3两两不同;之后, 将子网段11和MACl分配给VRRP路由设备A,而将子网段12和MAC4分配给新加入的VRRP 路由设备D。这样,明显减少了 VRRP路由设备A原承担的转发负载,并且,仅将其中少量的子网段再次划分,而非从整体上打乱已分配的所有子网段,大大节省了资源,并相应提高了为新加入的VRRP路由设备分配子网段和虚MAC地址操作的效率;但是这种方式下,会导致一段时间内(具体为地址解析请求老化时间到达之前的一段时间)由客户端发送的上行报文和发往该客户端的下行报文可能经由虚拟路由器中不同的VRRP路由设备转发,因此,用户可根据实际情况进行调整地址解析请求老化时间或者重新划分整个网段,本发明实施例不进行具体限定。步骤307,已分配了子网段和虚MAC地址的VRRP路由设备向连接了虚拟路由器1 的上行设备发布其被分配的子网段对应的子网段路由。步骤308,当虚拟路由器1对应的客户端向虚拟路由器1广播地址解析请求时,虚拟路由器1中的VRRP路由设备判断该地址解析请求携带的客户端的IP地址是否属于自身被分配的子网段,如果是,执行步骤309 ;否则,丢弃该地址解析请求。步骤309,将自身被分配的子网段对应的虚MAC地址携带在地址应答报文中发送给客户端。步骤310,虚拟路由器1对应的客户端利用接收到的虚MAC地址发送上行报文。步骤311,具有该虚MAC地址的VRRP路由设备接收到上行报文时,向目的地转发该上行报文。至此,通过步骤308至步骤311实现了上行报文的传输。需要说明的是,步骤307
13与步骤308至步骤311并没有固定的时间先后顺序,其也可先执行步骤308至步骤311,之后,执行步骤307。步骤312,上行设备在向虚拟路由器1对应的客户端发送下行报文时,从步骤307 中VRRP路由设备发布的子网段路由所对应的子网段中查找到包含该下行报文携带的目的地址的子网段。这里,步骤312中的查找可按照现有的最长匹配策略执行,这里不再详述。步骤313,通过步骤312中查找到的子网段对应的子网段路由发送下行报文。至此,通过上述步骤307、步骤312至步骤313实现了下行报文的传输。上述图2和图3所示的方法都是由master路由设备动态执行的,作为本发明实施例的一种扩展,本实施例还提供了图4所示的流程。该流程涉及的虚拟路由器包含多个 VRRP路由设备,该多个VRRP路由设备按照现有方法选择出一个作为master路由设备,其他作为backup路由设备。之后,将该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址;如图4所示,该流程可包括以下步骤步骤401,预先在所述虚拟路由器的每一 VRRP路由设备上配置所述虚拟路由器中具有转发报文功能的VRRP路由设备、该VRRP路由设备被分配的子网段和虚MAC地址三者之间的对应关系。通常,在配置虚拟路由器时,根据组网实际需求能够预先指定所述虚拟路由器中具有转发报文功能的VRRP路由设备,基于此,根据实际需求在配置虚拟路由器时配置上述对应关系。步骤402,master路由设备确定本机具有转发报文功能时,则根据配置在本机上的对应关系为本机分配子网段和虚MAC地址,以及在所述虚拟路由器中其他具有转发报文功能的VRRP路由设备加入所述虚拟路由器时,根据配置在本机上的所述对应关系为其他 VRRP路由设备分配对应的子网段和虚MAC地址。也就是说,在具有转发报文功能的VRRP路由设备加入所述虚拟路由器时,不像图 3那样再次划分子网段,而是直接根据对应关系分配子网段,这大大节省了 master路由设备的性能。步骤403,分配了子网段的VRRP路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由。执行该本步骤403能够使所述上行设备在向所述虚拟路由器对应的客户端发送下行报文时,从接收的由VRRP路由设备发布的路由中确定所述下行报文携带的目的IP地址所属的子网段对应的子网段路由,并通过发布了该确定的子网段路由的VRRP路由设备发送所述下行报文至所述客户端。步骤404,所述虚拟路由器中的VRRP路由设备在接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。至此,完成了图4所示的流程的描述。需要说明的是,在上述图2至图4所示的实施例中,为了保证上下行报文传输的可靠性,还提供了接管功能,其中,该接管功能具体实现时可包括
14
针对master路由设备,其在处于正常状态时,在所述虚拟路由器中周期性地发送包含自身被分配的子网段和对应的虚MAC地址的通告报文,以说明其转发性能正常;并且, 在超过设定时长后没有接收到某一个或者多个backup路由设备发送的用于证明该backup 路由设备转发性能正常的通告报文,或者接收到某一个或者多个backup路由设备发送的退出虚拟路由器1的报文,则按照负载均衡策略将该backup路由设备负责的子网段和对应的虚MAC地址分配给虚拟路由器1中其他具有所述报文转发功能的backup路由设备,并更新上述生成的对应关系;之后,使新分配了所述子网段和所述虚MAC地址的lockup路由设备向所述上行设备发布其新分配的子网段对应的子网段路由。而针对lockup路由设备,当虚拟路由器1中backup路由设备被分配了子网段和对应的虚MAC地址后,其在处于正常状态时,在所述虚拟路由器中周期性地发送包含该子网段和对应的虚MAC地址的通告报文,以说明其转发性能正常;并且,在超过设定时长后没有接收到master路由设备发送的用于证明该master路由设备转发性能正常的通告报文, 或者接收到master路由设备发送的退出虚拟路由器1的报文,则根据已接收的对应关系重新选举出master路由设备,由新选举出的master路由设备接管原master路由设备负责的子网段和对应的虚MAC地址。其中,所述对应关系为所述master路由设备在分配子网段和虚MAC地址给VRRP路由设备之后生成的,其包含该VRRP路由设备、该VRRP路由设备被分配的子网段和虚MAC地址三者之间的对应关系。需要说明的是,本发明实施例中,上述接管功能实现时需要一定的时间,为了保证接管期间下行报文的顺利传输,本发明实施例中还需要发布现有技术中的接口地址网段路由,其中,该接口地址网段路由在具体发布时可有多种实现方式,比如可仅由master路由设备发布接口地址网段路由,backup路由设备不发布;这种方式下,如果上述步骤312中查找到的路由不可达,则通过master路由设备发布的接口地址网段路由发送下行报文,这样,能够保证下行报文最终传输到客户端;当然,作为本发明的另一实施例,也可像现有技术那样,由虚拟路由器1中所有VRRP路由设备(包括master路由设备和lockup路由设备)都发布接口地址网段路由,其中,VRRP路由设备可将接口地址网段路由与其分配的子网段对应的路由同时发布;这样,如果上述步骤310中查找到的路由不可达,则按照现有技术的方法即从接收的虚拟路由器1中VRRP路由设备发布的接口地址网段路由中随机选择一个发送下行报文。以上对本发明实施例提供的方法进行了详细描述,下面对本发明提供的设备进行描述。参见图5,图5为本发明实施例提供的路由设备的一种结构图。其中,该路由设备对应图2或者图3,具体实现时为VRRP路由设备。本实施例中,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址, 如图5所示,该路由设备可包括角色选举单元501,用于选举所述虚拟路由器中的主用路由设备;网段分配单元502,用于在角色选举单元501选举出的所述主用路由设备为本机时,将所述网段划分为两个以上子网段,并为每一子网段分配虚MAC地址,所述子网段和所述虚MAC地址分配给所述虚拟路由器包含的路由设备;获取单元503,用于在角色选举单元502选举出的所述主用路由设备为本机时,获取网段分配单元502分配给本机的所述子网段和所述虚MAC地址;以及用于在角色选举单元502选举的所述主用路由设备不是本机时,接收所述主用路由设备分配的所述子网段和所述虚MAC地址;发布单元504,用于根据获取单元503获取的被分配的所述子网段和所述虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备根据所述下行报文携带的目的IP地址以及发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端。如图5所示,所述路由设备还包括响应单元505,用于在接收到客户端根据所述虚IP地址广播的地址解析请求时, 判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将获取单元503获取的被分配的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚 MAC地址进行上行报文的发送。本实施例中,网段分配单元502具体实现时可有多种结构,下面分别列举两种结构进行描述第一种结构网段分配单元502可包括第一划分子单元5021、第一地址子单元5022和第一分配子单元5023。其中,第一划分子单元5021,用于在角色选举单元501选举出所述主用路由设备为本机时,确定所述虚拟路由器当前存在的具有转发报文功能的路由设备,将所述网段划分为与该确定的路由设备的数目相等的子网段;第一地址子单元5022,用于为第一划分子单元5021划分的每一网段分配对应的虚MAC地址;第一分配子单元5023,用于按照预设顺序依次将子网段和该子网段对应的虚MAC 地址分配给确定的具有转发报文功能的路由设备。至此,完成了对网段分配单元502具体实现时第一种结构的描述。第二种结构网段分配单元502包括第二划分子单元5024、第二地址子单元5025和第二分配子单元5026。其中,第二划分子单元5024,用于在角色选举单元501选举出所述主用路由设备为本机时,确定所述虚拟路由器中当前存在的具有转发报文功能的路由设备,根据预设的报文转发能力与子网段数目的对应关系,确定具有转发报文功能的各所述路由设备的报文转发能力之和对应的子网段数目,将所述网段划分为与确定的子网段数目相等的子网段;第二地址子单元5025,用于为第二划分子单元5024划分的每一子网段分配对应的虚MAC地址;第二分配子单元5026,用于针对各具有所述转发报文功能的路由设备,根据预设的报文转发能力与子网段数目的对应关系,确定各所述路由设备的报文转发能力对应的子网段数目,将确定的各所述路由设备的子网段数目对应的子网段以及各该子网段对应的虚 MAC地址分配给各路由设备。
16
至此,完成了第二种结构的描述。需要说明的是,本实施例中,为了实现为新加入虚拟路由器的路由设备分配子网段和虚MAC地址,本实施例中,在上述第一种结构或者第二种结构中,网段分配单元502还可进一步包括第三划分子单元5027,用于在角色选举单元501选举的所述主用路由设备为本机时,确定新加入所述虚拟路由器的所述路由设备具有所述转发报文功能,并将已分配给具有转发报文功能的路由设备的一个子网段再次划分为两个以上子网段;第三地址子单元50 ,用于针对已分配了被再次划分的子网段的路由设备,在经过再次划分得到的子网段中确定用于分配给该路由设备的子网段,将确定的子网段中其中一个子网段的虚MAC地址确定为该被再次划分的子网段对应的虚MAC地址,并为确定的子网段中其他子网段分配虚MAC地址,将该确定的子网段和对应的虚MAC地址一起分配给该路由设备;第三分配子单元50 ,用于将经过再次划分得到的子网段中除所述确定的子网段之外的各个子网段分别分配对应的虚MAC地址,将除所述确定的子网段之外的各个子网段和该各个子网段对应的虚MAC地址一起分配给该新加入的路由设备。至此,通过上面描述实现了将子网段和该子网段对应的虚MAC地址分配给新加入的路由设备的操作。本实施例中,为了保证上下行报文传输的可靠性,如图5所示,所述路由设备还可进一步包括第一通告单元506,用于在角色选举单元501选举出所述主用路由设备为本机时, 周期性地在所述虚拟路由器中发送包含自身被分配的子网段和虚MAC地址的通告报文,以说明转发性能正常;第一接管处理单元507,用于在超过设定时长后未接收到所述虚拟路由器中备用路由设备发送的用于证明该备用路由设备转发性能正常的通告报文时,或者接收到备用路由设备发送的退出所述虚拟路由器的报文时,按照负载均衡策略将该备用路由设备负责的子网段和虚MAC地址分配给所述虚拟路由器中其他具有报文转发功能的路由设备,以使新分配了子网段和虚MAC地址的路由设备向所述上行设备发布其新分配的子网段对应的路第二通告单元508,用于在角色选举单元501选举出所述主用路由设备不是本机时,周期性地在所述虚拟路由器中发送包含自身被分配的子网段和虚MAC地址的通告报文,以说明转发性能正常;第二接管处理单元509,用于在超过设定时长后没有接收到所述角色选举单元选举的主用路由设备发送的用于证明该主用路由设备转发性能正常的通告报文,或者接收到所述主用路由设备发送的退出所述虚拟路由器的报文时,则发送选举通知给角色选举单元 501 ;角色选举单元501接收到所述选举通知后,根据已接收的对应关系重新选举出主用路由设备;第二接管处理单元509,还用于在角色选举单元501重新选举出所述主用路由设备是本机时,接管原主用路由设备负责的子网段和虚MAC地址;
其中,所述对应关系为所述主用路由设备在分配子网段和虚MAC地址给路由设备后生成的,其包含该路由设备、该路由设备被分配的子网段和虚MAC地址三者之间的对应关系。以上对本发明实施例提供的一种路由设备的结构进行描述。参见图6,图6为本发明实施例提供的路由设备的另一种结构图。其中,该路由设备对应图4,本实施例中,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚 IP地址配置为同一网段各客户端的缺省网关IP地址,如图6所示,该路由设备可包括存储单元601,用于存储所述虚拟路由器中具有转发报文功能的路由设备、子网段和虚MAC地址三者之间的对应关系;角色选举单元602,用于选举所述虚拟路由器中的主用路由设备;网段分配单元603,用于在角色选举单元602选举出所述主用路由设备为本机时, 确定本机具有转发报文功能,则根据存储单元601存储的对应关系为本机分配子网段和虚 MAC地址;以及其他具有转发报文功能的路由设备加入所述虚拟路由器时,根据存储单元 601存储的所述对应关系为其他路由设备分配子网段和虚MAC地址;获取单元604,用于在角色选举单元602选举的所述主用路由设备是本机时,获取网段分配单元603为本机分配的子网段和虚MAC地址;以及用于在角色选举单元601选举的所述主用路由设备不是本机时,获取所述主用设备分配的子网段和虚MAC地址;发布单元605,用于根据获取的被分配的子网段和虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备在下行报文携带的目的IP地址和发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的路由设备将所述下行报文发送至所述客户端,以及在接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端, 以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。由以上技术方案可以看出,本发明中,上行设备在向所述虚拟路由器对应的客户端发送下行报文时,根据自身接收的由VRRP路由设备发布的子网段路由和所述下行报文携带的目的地址确定用于发送下行报文的路由,其中,同一虚拟路由器中不同的VRRP路由设备发布的子网段路由不同,这样,能够使上行设备精确并且唯一确定出用于发送下行报文的路由,并非现有技术中上行设备随机从等价路由中选择出一个路由进行转发下行报文,基于此,可以在上行设备发送下行报文给客户端所经过的VRRP路由设备上开启各种基于流的业务,比如防火墙、流量控制等,避免了上行设备随机从等价路由中选择出一个转发下行流量所导致的缺陷。更进一步地,本发明中,客户端根据虚MAC地址上发送行报文,而针对下行报文, 上行设备在转发下行报文时,根据该下行报文携带的目的地址即客户端地址所属的子网段确定对应的路由,之后,根据确定的路由发送下行报文;本发明中,由于虚MAC地址与客户端地址所属的子网段对应,这样,能够保证上下行报文在传输时都能通过虚拟路由器中的同一台VRRP设备转发,这进一步保证了在VRRP设备上开启各种基于流的业务功能。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种实现虚拟路由器冗余协议VRRP流量传输的方法,所述虚拟路由器包含多个路由设备,所述虚拟路由器中多个路由设备选择出一个作为主用路由设备,其他作为备用路由设备;其特征在于,同一网段各客户端的缺省网关IP地址配置为所述虚拟路由器的虚IP 地址;该方法包括A,所述主用路由设备划分所述网段为两个以上子网段,并为每一子网段分配虚MAC地址,将子网段和虚MAC地址分配给所述虚拟路由器包含的路由设备;B,分配了子网段和虚MAC地址的路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由,以使所述上行设备根据下行报文携带的目的IP地址以及所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述方法包括还包括分配了所述子网段和所述虚MAC地址的所述路由设备接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于分配给自身的所述子网段,如果是,将被分配的所述子网段对应的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的所述虚MAC地址进行上行报文的发送。
3.根据权利要求1所述的方法,其特征在于,所述步骤A包括所述主用路由设备确定所述虚拟路由器当前存在的具有转发报文功能的路由设备,根据确定的所述数量,将所述网段划分为与确定的路由设备的数目相等个数的所述子网段, 并为每一所述子网段分配对应的所述虚MAC地址;所述主用路由设备按照预设顺序依次将子网段和该子网段对应的虚MAC地址分配给确定的具有转发报文功能的路由设备。
4.根据权利要求1所述的方法,其特征在于,所述步骤A包括所述主用路由设备确定所述虚拟路由器当前存在的具有转发报文功能的路由设备,根据预设的报文转发能力与子网段数目的对应关系,确定所述虚拟路由器中所有具有所述转发报文功能的路由设备的报文转发能力之和所对应的子网段数目,将所述网段划分为与确定的子网段数目相等的子网段;并为每一子网段分配对应的虚MAC地址;所述主用路由设备针对各具有所述转发报文功能的所述路由设备,根据预设的报文转发能力与子网段数目的对应关系确定各所述路由设备的报文转发能力对应的子网段数目, 将与确定所述子网段数目对应的子网段以及各子网段对应的虚MAC地址分配给各所述路由设备。
5.根据权利要求3或4所述的方法,其特征在于,所述主用路由设备确定新加入所述虚拟路由器的路由设备具有所述转发报文功能时,所述方法进一步包括所述主用路由设备将已分配给具有所述转发报文功能的路由设备的一个子网段再次划分为两个以上子网段;针对已分配了被再次划分的子网段的所述路由设备,在经过再次划分得到的子网段中确定用于分配给该路由设备的子网段,将确定的子网段中其中一个子网段的虚MAC地址确定为该被再次划分的子网段对应的虚MAC地址,并为确定的子网段中其他子网段分配虚 MAC地址,之后将该确定的子网段和对应的虚MAC地址一起分配给该路由设备;针对新加入的路由设备,为经过再次划分得到的子网段中除所述确定的子网段之外的各个子网段分别分配对应的虚MAC地址,将除所述确定的子网段之外的各个子网段和该各个子网段对应的虚MAC地址一起分配给该新加入的路由设备。
6.根据权利要求1所述的方法,其特征在于,该方法进一步包括所述主用路由设备周期性地在所述虚拟路由器中发送包含自身被分配的子网段和虚 MAC地址的通告报文,以说明转发性能正常;以及所述主用路由设备在超过设定时长后未接收到所述虚拟路由器中备用路由设备发送的用于证明该备用路由设备转发性能正常的通告报文时,或者接收到所述备用路由设备发送的退出所述虚拟路由器的报文时,按照负载均衡策略将该备用路由设备负责的子网段和虚MAC地址分配给所述虚拟路由器中其他具有所述报文转发功能的路由设备,并使新分配了所述子网段和所述虚MAC地址的路由设备向所述上行设备发布其新分配的子网段对应的子网段路由。
7.根据权利要求1所述的方法,其特征在于,该方法进一步包括所述备用路由设备周期性地在所述虚拟路由器中发送包含被分配的所述子网段和所述虚MAC地址的通告报文,以说明其转发性能正常;以及,所述备用路由设备在超过设定时长后没有接收到所述主用路由设备发送的用于证明该主用路由设备转发性能正常的通告报文,或者接收到所述主用路由设备发送的退出所述虚拟路由器的报文时,则根据已接收的对应关系重新选举出主用路由设备,由新选举出的主用路由设备接管原主用路由设备负责的子网段和虚MAC地址;其中,所述对应关系是所述主用路由设备将子网段和虚MAC地址分配给路由设备之后生成的,所述对应关系包含该路由设备、该路由设备被分配的子网段和虚MAC地址。
8.一种实现虚拟路由器冗余协议VRRP流量传输的方法,所述虚拟路由器包含多个路由设备,所述虚拟路由器中多个路由设备选择出一个作为主用路由设备;其特征在于,预先在所述虚拟路由器的每一路由设备上配置所述虚拟路由器中具有转发报文功能的路由设备、该路由设备被分配的子网段和虚MAC地址三者之间的对应关系;所述主用路由设备确定本机具有转发报文的功能,则根据配置在本机上的所述对应关系为本机分配子网段和虚MAC地址;以及在其他具有转发报文功能的所述路由设备加入所述虚拟路由器时,所述主用路由设备根据配置在本机上的所述对应关系为加入的所述路由设备分配对应的子网段和虚MAC地址;分配了所述子网段和所述虚MAC地址的所述路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由,以使所述上行设备根据下行报文携带的目的IP地址以及发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端;以及分配了所述子网段和所述虚MAC地址的所述路由设备在接收到客户端根据所述虚IP 地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。
9.一种路由设备,所述路由设备应用于如权利要求1所述的方法,其特征在于,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址,该路由设备包括角色选举单元,用于选举所述虚拟路由器中的主用路由设备;网段分配单元,用于在所述角色选举单元选举出的所述主用路由设备为本机时,将所述网段划分为两个以上子网段,并为每一子网段分配虚MAC地址,所述子网段和所述虚MAC 地址分配给所述虚拟路由器包含的路由设备;获取单元,用于在所述角色选举单元选举出的所述主用路由设备为本机时,获取所述网段分配单元分配给本机的所述子网段和所述虚MAC地址;以及用于在所述角色选举单元选举的所述主用路由设备不是本机时,接收所述主用路由设备分配的所述子网段和所述虚 MAC地址;发布单元,用于根据所述获取单元获取的被分配的所述子网段和所述虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备根据所述下行报文携带的目的IP地址以及发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的所述路由设备将所述下行报文发送至所述客户端。
10.根据权利要求9所述的设备,其特征在于,所述路由设备还包括响应单元,用于在接收到客户端根据所述虚IP地址广播的地址解析请求时,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将所述获取单元获取的被分配的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。
11.根据权利要求9所述的路由设备,其特征在于,所述网段分配单元包括第一划分子单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,确定所述虚拟路由器当前存在的具有转发报文功能的路由设备,将所述网段划分为与该确定的路由设备的数目相等的子网段;第一地址子单元,用于为所述第一划分子单元划分的每一网段分配对应的虚MAC地址;第一分配子单元,用于按照预设顺序依次将子网段和该子网段对应的虚MAC地址分配给确定的具有转发报文功能的路由设备。
12.根据权利要求9所述的路由设备,其特征在于,所述网段分配单元包括第二划分子单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,确定所述虚拟路由器中当前存在的具有转发报文功能的路由设备,根据预设的报文转发能力与子网段数目的对应关系,确定具有转发报文功能的各所述路由设备的报文转发能力之和对应的子网段数目,将所述网段划分为与确定的子网段数目相等的子网段;第二地址子单元,用于为所述第二划分子单元划分的每一子网段分配对应的虚MAC地址;第二分配子单元,用于针对各具有所述转发报文功能的路由设备,根据预设的报文转发能力与子网段数目的对应关系,确定各所述路由设备的报文转发能力对应的子网段数目,将确定的各所述路由设备的子网段数目对应的子网段以及各该子网段对应的虚MAC地址分配给各路由设备。
13.根据权利要求11或12所述的路由设备,其特征在于,所述网段分配单元还包括 第三划分子单元,用于在所述角色选举单元选举的所述主用路由设备为本机时,确定新加入所述虚拟路由器的所述路由设备具有所述转发报文功能,并将已分配给具有转发报文功能的路由设备的一个子网段再次划分为两个以上子网段;第三地址子单元,用于针对已分配了被再次划分的子网段的路由设备,在经过再次划分得到的子网段中确定用于分配给该路由设备的子网段,将确定的子网段中其中一个子网段的虚MAC地址确定为该被再次划分的子网段对应的虚MAC地址,并为确定的子网段中其他子网段分配虚MAC地址,将该确定的子网段和对应的虚MAC地址一起分配给该路由设备;第三分配子单元,用于将经过再次划分得到的子网段中除所述确定的子网段之外的各个子网段分别分配对应的虚MAC地址,将除所述确定的子网段之外的各个子网段和该各个子网段对应的虚MAC地址一起分配给该新加入的路由设备。
14.根据权利要求9所述的路由设备,其特征在于,所述路由设备还包括第一通告单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,周期性地在所述虚拟路由器中发送包含自身被分配的子网段和虚MAC地址的通告报文,以说明转发性能正常;第一接管处理单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,当超过设定时长后未接收到所述虚拟路由器中备用路由设备发送的用于证明该备用路由设备转发性能正常的通告报文时,或者接收到备用路由设备发送的退出所述虚拟路由器的报文时,按照负载均衡策略将该备用路由设备负责的子网段和虚MAC地址分配给所述虚拟路由器中其他具有报文转发功能的路由设备,以使新分配了子网段和虚MAC地址的路由设备向所述上行设备发布其新分配的子网段对应的路由。
15.根据权利要求9所述的路由设备,其特征在于,所述路由设备还包括第二通告单元,用于在所述角色选举单元选举出所述主用路由设备不是本机时,周期性地在所述虚拟路由器中发送包含自身被分配的子网段和虚MAC地址的通告报文,以说明转发性能正常;第二接管处理单元,用于在所述角色选举单元选举出所述主用路由设备不是本机时, 当超过设定时长后没有接收到所述主用路由设备发送的用于证明该主用路由设备转发性能正常的通告报文,或者接收到所述主用路由设备发送的退出所述虚拟路由器的报文时, 则发送选举通知给所述角色选举单元;所述角色选举单元接收到所述选举通知后,根据已接收的对应关系重新选举出主用路由设备;所述第二接管处理单元,还用于在所述角色选举单元重新选举出所述主用路由设备是本机时,接管原主用路由设备负责的子网段和虚MAC地址;其中,所述对应关系为所述主用路由设备在分配子网段和虚MAC地址给路由设备后生成的,其包含该路由设备、该路由设备被分配的子网段和虚MAC地址三者之间的对应关系。
16.一种路由设备,所述路由设备应用于如权利要求8所述的方法,其特征在于,多个该路由设备用于构成一个虚拟路由器,且该虚拟路由器的虚IP地址配置为同一网段各客户端的缺省网关IP地址,该路由设备包括存储单元,用于存储所述虚拟路由器中具有转发报文功能的路由设备、子网段和虚MAC 地址三者之间的对应关系;角色选举单元,用于选举所述虚拟路由器中的主用路由设备;网段分配单元,用于在所述角色选举单元选举出所述主用路由设备为本机时,确定本机具有转发报文功能,则根据所述存储单元存储的对应关系为本机分配子网段和虚MAC地址;以及其他具有转发报文功能的路由设备加入所述虚拟路由器时,根据所述存储单元存储的所述对应关系为其他路由设备分配子网段和虚MAC地址;获取单元,用于在所述角色选举单元选举的所述主用路由设备是本机时,获取所述网段分配单元为本机分配的子网段和虚MAC地址;以及用于在所述角色选举单元选举的所述主用路由设备不是本机时,获取所述主用设备分配的子网段和虚MAC地址;发布单元,用于根据获取的被分配的子网段和虚MAC地址,向连接了所述虚拟路由器的上行设备发布被分配的子网段对应的子网段路由,以使所述上行设备在下行报文携带的目的IP地址和发布的所述子网段路由进行路由选择,将所述下行报文转发到相应的所述路由设备,以由相应的路由设备将所述下行报文发送至所述客户端,以及在接收到客户端根据所述虚IP地址广播的地址解析请求后,判断所述地址解析请求携带的客户端地址是否属于自身被分配的子网段,如果是,将该子网段的虚MAC地址发送给所述客户端,以供所述客户端利用接收到的虚MAC地址进行上行报文的发送。
全文摘要
本发明提供了实现VRRP流量传输的方法和路由设备,其中,一种方法包括A,主用路由设备将所述网段划分为两个以上子网段,并为各个子网段分配对应的虚MAC地址,将各个子网段和对应的虚MAC地址分配给所述虚拟路由器包含的路由设备;B,分配了子网段和虚MAC地址的路由设备向连接了所述虚拟路由器的上行设备发布其被分配的子网段对应的子网段路由。采用本发明,以避免上行设备随机从等价路由中选择出一个路由转发下行流量所带来的问题。
文档编号H04L12/56GK102215158SQ20101014398
公开日2011年10月12日 申请日期2010年4月8日 优先权日2010年4月8日
发明者周文明 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1