CN107888492A - 一种vrrp负载均衡的方法和装置 - Google Patents
一种vrrp负载均衡的方法和装置 Download PDFInfo
- Publication number
- CN107888492A CN107888492A CN201710958764.5A CN201710958764A CN107888492A CN 107888492 A CN107888492 A CN 107888492A CN 201710958764 A CN201710958764 A CN 201710958764A CN 107888492 A CN107888492 A CN 107888492A
- Authority
- CN
- China
- Prior art keywords
- user
- vrrp
- router
- mac
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
- H04L45/586—Association of routers of virtual routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
Abstract
本发明公开了一种VRRP负载均衡的方法和装置,包括一组VRRP路由器通过主路由器选举算法得出各个VRRP路由器的优先权,比较各个VRRP路由器的优先权,值大的为主路由器,如果优先权相同,则根据IP地址大小,值大的为主路由器;主路由器通过收到的用户ARP请求报文根据负载均衡算法选择转发用户数据的VRRP路由器,实现VRRP负载均衡;VRRP路由器更新在线用户信息和更新本路由器剩余出口带宽,定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽;具有部署效率高灵活性强实现动态负载调整;用户网关互不干扰信息同步方式提高用户体验等优点。
Description
技术领域
本发明涉及一种VRRP负载均衡的方法和装置。
背景技术
VRRP设计采用主备模式,以保证当主路由设备发生故障时,备份路由设备可以在不影响内外数据通信的前提下进行功能切换,不需要再修改内部网络的参数,VRRP组内多个路由设备都映射为一个虚拟的路由设备;VRRP保证同时只有一个路由设备在代表虚拟路由设备进行数据包的发送,而主机则是把数据包发向该虚拟路由设备,转发数据包的路由设备被选择成为主路由设备称为主路由器,其他设备则成为主路由设备的备份设备,称为备份路由器;如果主路由器在某个时候由于某种原因而无法工作,处备份路由器将被选择来代替原来的主路由设备;VRRP使得局域网主机的网关有了备份,且网关间的切换对用户而言是透明不感知的。
当主路由器正常工作时,会每隔一段时间发送一个VRRP通告报文维持VRRP组的状态,如果备份路由器在一定时间内没有收到来自主路由器的通告报文,则备份路由器会变成主路由器,发出VRRP通告报文,根据报文中的优先权进行新主路由器的选举;由新的主路由器提供实际的网关服务;在现有的VRRP协议中,VRRP路由器有三种状态:初始化状态、主路由器状态和备份路由器状态,当VRRP路由器的接口Down时,VRRP路由器处于初始化状态,当接口UP,路由器处于主路由器状态,发出VRRP通告报文,竞选主路由器和备份路由器;优先权高的为主路由器,定期发出VRRP通告报文维持VRRP组的状态,转发用户数据,响应主机发出的对虚拟路由器网关IP地址的ARP请求;备份路由器不转发数据,不响应对VRRP路由器虚拟网关IP地址的ARP请求。
现有的VRRP协议工作方式存在如下缺陷:一个VRRP备份组中只有一个路由器处于主路由器状态且转发数据,备份路由器只处于备份状态,这样备份路由器都处于空闲状态,不参与转发,存在负载均衡问题。
为解决上负载均衡的问题,目前采用的技术方案为:在连接局域网的路由设备上配置多个备份组,局域网中的主机分别以各备份组的虚拟IP作为网关,路由设备互相作为主路由设备和备份路由设备,不同主机发往其它网络的数据包将由该主机网关对应的备份组的主路由设备进行路由转发,通过这种设计实现不同路由设备的路由冗余,并同时分担了来自局域网的流量即实现了负载平衡,该技术方案存在的一个显著问题是无法动态实现负载均衡的问题,在某个网段中存在不同IP地址的网关,需要用户手动填写网关的IP地址信息,同时不同主机之间的流量差距较大,不同VRRP路由器在性能上也存在差异也会导致负载均衡的效果不理想。
发明内容
本发明的目的在于克服现有技术之不足,提供一种VRRP负载均衡的方法和装置。
本发明解决其技术问题所采用的第一种技术方案是:
一种VRRP负载均衡的方法,包括一组VRRP路由器;其特征在于:其包括如下步骤:
a.通过主路由器选举算法得出各个VRRP路由器的优先权,所述主路由器选举算法应用的公式为:
,其中,n为路由器CPU的核数,CPUi表示第i个CPU的频率,单位为MHz,m为路由器内存条个数,memoryj表示第j个内存的大小,单位为GByte,bandwidth为出口带宽,单位为Gbps,α、β和γ分别为CPU、内存和出口带宽的权重比例,通过比较各个VRRP路由器的优先权,值大的为主路由器,如果优先权相同,则根据IP地址大小,值大的为主路由器;
b.选出的主路由器初始化并且定时更新VRRP负载均衡表和用户分配表,所述VRRP负载均衡表包括VRRP路由器虚拟组的组号、接口MAC地址、优先权、是否为主路由器、用户数和剩余出口带宽;所述用户分配表包括用户MAC地址、转发用户MAC的VRRP路由器接口的MAC地址、用户存在时间和用户是否删除;
c.VRRP路由器初始化并且定时更新在线用户信息和更新本路由器剩余出口带宽,通过信息同步报文定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽,如果VRRP路由器是主路由器,则直接更新VRRP负载均衡表和用户分配表;主路由器收到用户ARP广播请求报文后根据负载均衡算法选择转发该用户数据的VRRP路由器,同时向该用户发送包含转发用户数据的VRRP路由器接口实MAC地址的特殊ARP应答,并更新VRRP负载均衡表和用户分配表;
d.主路由器定期发送VRRP通告报文,非主路由器的VRRP路由器检测是否收到VRRP通告报文,如果是则定期检测本路由器在线的用户数和剩余出口带宽,通过信息同步报文,将在线用户数和剩余出口带宽发送给主路由器,否则变更自己的状态为主路由器,往外发送VRRP通告报文,进入主路由器选举。
在另一较佳实施例中,所述负载均衡算法包括:用户发出ARP广播请求报文,请求网关的MAC地址,VRRP路由器收到同时更新用户ARP表,用户ARP表包括用户MAC和用户IP,主路由器根据ARP请求报文中的用户MAC,先检查用户分配表中的用户MAC,如果存在,则更新用户分配表中的用户存在时间,重置值为0,如果不存在,则检查VRRP负载均衡表;通过如下规则选择转发该用户的VRRP路由器:检查剩余出口带宽,选择剩余出口带宽最大值的,如果剩余出口带宽相同,选择用户数最少的,如果用户数相同,选择优先权最大的,如果优先权相同,选择VRRP路由器接口MAC地址最小的。
在另一较佳实施例中,所述VRRP路由器更新在线用户信息的方法包括:转发用户数据的VRRP路由器检查用户的ARP表,如果发现用户ARP老化时间小于1分钟,检查用户的流量计数:统计报文特征符合源IP地址为用户IP地址,源MAC地址为用户MAC地址的IP报文计数是否增加,如果有增加,则说明用户在线,直接更新用户ARP表、用户更新表,所述用户更新表包括:用户MAC、用户IP和是否删除用户,设置用户更新表中对应该用户的IP和MAC的是否删除用户为0,说明用户在线;如果没有,则对这些用户IP发送免费单播ARP报文,如果VRRP路由器有收到用户IP的ARP应答,则设置用户更新表中对应该用户的IP和MAC的是否删除用户为0,说明用户在线,如果VRRP路由器没有收到用户IP的ARP应答,则设置用户更新表中对应该用户的IP和MAC的是否删除用户为1,说明用户不在线,同时在主路由器的用户分配表中删除。
在另一较佳实施例中,所述VRRP路由器更新本路由器剩余出口带宽的方法包括:每隔一个固定周期,VRRP路由器统计在线的用户ARP数和剩余出口带宽,更新带宽更新表,所述带宽更新表包括在线用户数和剩余出口带宽。
在另一较佳实施例中,所述信息同步报文包括:标准IP报文格式中IP协议号[134,254]为未分配,取[134,254]其中任意整数作为VRRP路由器间同步信息的协议号标志,源地址为VRRP路由器所在VRRP组的接口地址,目的地址为VRRP组主路由器的接口地址,数据字段的类型取值为0表示发送用户在线信息同步报文,此时长度取值表示后面有几个IP和MAC组合,一个IP和MAC组合共10个字节,包括一个IP 4个字节,一个MAC 6个字节,类型取值为1表示发送剩余出口带宽,此时长度取值用2个字节的数据来表示带宽的大小,范围在[0,65535]表示最大带宽是65535M。
在另一较佳实施例中,所述所述特殊ARP应答包括:封装ARP报文的数据帧中,目的MAC为用户MAC,源MAC地址为VRRP路由器接口地址,ARP报文的协议字段中,发送端MAC地址为VRRP路由器接口地址,发送端IP为VRRP组的虚拟IP,目的MAC地址为用户MAC地址,目的IP为用户IP。
在另一较佳实施例中,所述免费单播ARP报文包括:封装ARP报文的数据帧中,目的MAC为用户MAC,源MAC地址为VRRP路由器接口地址,ARP报文的协议字段中,发送端MAC地址为VRRP路由器接口地址,发送端IP为VRRP组的虚拟IP,目的MAC地址全为0,目的IP为用户IP。
本发明解决其技术问题所采用的第二种技术方案是:
一种实现VRRP负载均衡的装置,包括一组VRRP路由器;该组路由器应用上述任一项的一种VRRP负载均衡的方法。
与现有技术相比,本发明的有益效果是:综合VRRP路由器的CPU、内存和出口带宽的性能,提出VRRP优先权的产生算法,根据优先权、转发的用户数、剩余出口带宽等综合指标以动态调整负责转发用户数据的路由器;让用户和流量均衡的分布在VRRP路由器上,提高了部署效率和灵活性;解决了现有技术中处于备份路由器状态的VRRP路由器不参与负载均衡的问题,或者参与负载均衡,但是无法实现动态负载调整问题;主路由器在向用户同步负责转发的VRRP路由器网关信息时,采用含特殊用户和VRRP路由器特征的特殊ARP报文,能使用户独立更新网关信息的同时不影响其他用户的网关信息,互不干扰;VRRP路由器采用新设计的信息同步报文向主路由器定期同步在线用户信息和剩余出口带宽信息,对用户无感知,提高了整体方案的可用性和用户体验。
以下结合附图及实施例对本发明作进一步详细说明;但本发明的一种VRRP负载均衡的方法和装置不局限于实施例。
附图说明
图1是本发明的技术方案流程图;
图2是本发明的VRRP路由器更新在线用户信息的流程图;
图3是本发明一具体实施例示意图。
具体实施方式
以下参见图3的具体实施例结合图1和图2的流程来说明本发明的一种VRRP负载均衡的方法,其包括R1,R2,R3三台路由器。
R1,R2,R3三台路由器分别在端口1开启改进后的VRRP协议,R4路由器是R1,R2,R3的出口路由器,与R1,R2,R3互联端口的带宽分别为1G,1G和100M,R1,R2,R3的配置参数分别如下:
R1:IP=192.168.1.1/24,MAC=0000.0000.0001,加入VRRP组1,VRRP组1的虚拟IP地址=192.168.1.254/24。
R1的CPU参数:主频3.3GHz,内核数:10,内存参数:单根容量16GB,条数:4。
R2:IP=192.168.1.2/24,MAC=0000.0000.0002,加入VRRP组1,VRRP组1的虚拟IP地址=192.168.1.254/24。
R2的CPU参数:主频3.0GHz,内核数:8,内存参数:单根容量16GB,条数:2。
R3:IP=192.168.1.3/24,MAC=0000.0000.0003,加入VRRP组1,VRRP组1的虚拟IP地址=192.168.1.254/24。
R3的CPU参数:主频3.4GHz,内核数:4,内存参数:单根容量16GB,条数:1。
PC1:IP=192.168.1.10/24,MAC=0000.0000.0010,网关IP地址=192.168.1.254/24。
PC2:IP=192.168.1.11/24,MAC=0000.0000.000011,网关IP地址=192.168.1.254/24。
通过主路由器选举算法得出各个VRRP路由器的优先权,所述主路由器选举算法应用的公式为:
,其中,n为路由器CPU的核数,CPUi表示第i个CPU的频率,单位为MHz,m为路由器内存条个数,memoryj表示第j个内存的大小,单位为GByte,bandwidth为出口带宽,单位为Gbps,α、β和γ分别为CPU、内存和出口带宽的权重比例,通过比较各个VRRP路由器的优先权,值大的为主路由器,如果优先权相同,则根据IP地址大小,值大的为主路由器。
选出的主路由器R1初始化并且定时更新VRRP负载均衡表和用户分配表,VRRP负载均衡表包括VRRP路由器虚拟组的组号、接口MAC地址VRRP_Router_MAC、优先权、是否为主路由器、用户数和剩余出口带宽;所述用户分配表包括用户MAC地址、转发用户MAC的VRRP路由器接口的MAC地址VRRP_Router_MAC、用户存在时间Timer和用户是否删除Delete,1表示删除用户,0表示不删除用户,由于还没有用户,所以用户分配表为空。
表1 VRRP负载均衡表
表2用户分配表
用户MAC | VRRP_Router_MAC | Timer | Delete |
0 | 0 | 0 | 0 |
VRRP路由器初始化并且定时更新在线用户信息和更新本路由器剩余出口带窝,如果VRRP路由器是主路由器,则直接更新VRRP负载均衡表和用户分配表;用户更新表包括:用户MAC、用户IP和是否删除用户,1表示删除用户,0表示不删除用户,VRRP路由器每隔一个固定周期T,VRRP路由器统计在线的用户ARP数和剩余出口带宽,更新带宽更新表,带宽更新表包括在线用户数和剩余出口带宽,VRRP路由器R1、R2和R3初始化用户更新表和带宽更新表,由于还未有用户,因此用户更新表为空。
表3用户更新表
VRRP路由器 | 用户MAC | 用户IP | 是否删除 |
R1 | 0 | 0 | 0 |
R2 | 0 | 0 | 0 |
R3 | 0 | 0 | 0 |
表4带宽更新表
VRRP路由器 | 在线用户数 | 剩余出口带宽 |
R1 | 0 | 1000M |
R2 | 0 | 1000M |
R3 | 0 | 100M |
VRRP路由器通过信息同步报文定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽,信息同步报文包括:标准IP报文格式中IP协议号[134,254]为未分配,取[134,254]其中任意整数作为VRRP路由器间同步信息的协议号标志,源地址为VRRP路由器所在VRRP组的接口地址,目的地址为VRRP组主路由器的接口地址,数据字段的类型取值为0表示发送用户在线信息同步报文,此时长度取值表示后面有几个IP和MAC组合,一个IP和MAC组合共10个字节,包括一个IP 4个字节,一个MAC 6个字节,类型取值为1表示发送剩余出口带宽,此时长度取值用2个字节的数据来表示带宽的大小,范围在[0,65535]表示最大带宽是65535M。
主路由器R1定期发送VRRP通告报文,非主路由器的VRRP路由器R2和R3检测是否收到VRRP通告报文,如果是则定期检测本路由器在线的用户数和剩余出口带宽,通过信息同步报文,将在线用户数和剩余出口带宽发送给主路由器R1,如果否则变更自己的状态为主路由器,往外发送VRRP通告报文,进入主路由器选举。
R2和R3通过信息同步报文定期向主路由器R1同步在线用户信息和同步本路由器剩余出口带宽,主路由器R3收到报文后进行更新。
由于还未有用户,用户信息更新报文中用户数据字段为空,VRRP路由器R2和R3发给主路由器R1的信息同步报文中:
R2发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0002)
(目的IP,源IP)=(192.168.1.1,192.168.1.2)
(类型,长度,IP,MAC)=(0,0,NULL)
(类型,长度,大小)=(1,2,1000),表示剩余出口带宽是1000M。
R3发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0003)
(目的IP,源IP)=(192.168.1.1,192.168.1.3)
(类型,长度,IP,MAC)=(0,0,NULL)。
(类型,长度,大小)=(1,2,100),表示剩余出口带宽是100M
PC1上线,发出ARP广播请求报文,请求网关的MAC地址,VRRP路由器都会收到,同时更新用户ARP表。
表5用户ARP表
用户MAC | 用户IP |
0000.0000.0010 | 192.168.1.10 |
主路由器R1收到用户ARP广播请求报文后根据负载均衡算法,选择负责转发该用户的VRRP路由器。
(1)选择剩余出口带宽最大值的,R1,R2的带宽都是1000M,结果为R1和R2。
(2)选择用户数最少的,因为R1,R2的在线用户都为0,结果为R1和R2。
(3)选择优先权最大的,因为R1的优先权大于R2的优先权,结果为R1。
选择R1为转发PC1的VRRP路由器,主路由器向PC1发送包含转发用户数据的VRRP路由器接口实MAC地址的特殊ARP应答,特殊ARP应答报文特征:
(目的MAC,源MAC)=(0000.0000.0010,0000.0000.0001)
(Send_MAC,Send_IP,Target_MAC,Target_IP)=(0000.0000.0001,192.168.1.254,0000.0000.0010,192.168.1.10)
PC1收到上述特征的特殊ARP应答报文后,更新自己ARP表中网关的信息为:
(网关MAC,网关IP)=(0000.0000.0001,192.168.1.254),将数据发给R1,由R1进行转发。
主路由器更新用户分配表和VRRP负载均衡表。
表6 VRRP负载均衡表
表7用户分配表
用户MAC | VRRP_Router_MAC | Timer | Delete |
0000.0000.0010 | 0000.0000.0001 | 0 | 0 |
经过5分钟,转发用户数据的VRRP路由器R1检查用户的ARP表,发现用户ARP老化时间小于1分钟,检查用户的流量计数:统计报文特征符合源IP地址为用户IP地址,源MAC地址为用户MAC地址的IP报文计数增加了,说明用户在线,直接更新用户ARP表、用户更新表,每隔一个固定周期T,VRRP路由器统计在线的用户ARP数和剩余出口带宽,假设PC1当前发送数据量为10Mbps,R1更新用户更新表和带宽更新表,由于用户在主路由器上,不用发送报文,R1直接更新本机对应的表项即可。
表8 VRRP负载均衡表
PC2上线,发出ARP广播请求报文,请求网关的MAC地址。VRRP路由器都会收到,同时更新用户ARP表。
表9 ARP表
用户MAC | 用户IP |
0000.0000.0010 | 192.168.1.10 |
0000.0000.0011 | 192.168.1.11 |
主路由器R1收到用户ARP广播请求报文后根据负载均衡算法,选择负责转发该用户的VRRP路由器。
选择剩余出口带宽最大值的,R1、R2和R3的带宽分别是990M、1000M和100M,结果为R2。
选择R2为转发PC2的VRRP路由器,主路由器R1向PC2发送包含转发用户数据的VRRP路由器接口实MAC地址的特殊ARP应答,特殊ARP应答报文特征:
(目的MAC,源MAC)=(0000.0000.0011,0000.0000.0001)
(Send_MAC,Send_IP,Target_MAC,Target_IP)=(0000.0000.0002,192.168.1.254,0000.0000.0011,192.168.1.11)
PC2收到上述特征的特殊ARP应答报文后,更新自己ARP表中网关的信息为:
(网关MAC,网关IP)=(0000.0000.0002,192.168.1.254)
主路由器R1更新用户分配表和VRRP负载均衡表。
表10 VRRP负载均衡表
表11用户分配表
用户MAC | VRRP_Router_MAC | Timer | Delete |
0000.0000.0010 | 0000.0000.0001 | 5min | 0 |
0000.0000.0011 | 0000.0000.0002 | 0 | 0 |
VRRP路由器更新用户更新表和带宽更新表
表12用户更新表
VRRP路由器 | 用户MAC | 用户IP | 是否删除 |
R1 | 0000.0000.0010 | 192.168.1.10 | 0 |
R2 | 0000.0000.0011 | 192.168.1.11 | 0 |
R3 | 0 | 0 | 0 |
表13带宽更新表
VRRP路由器 | 在线用户数 | 剩余出口带宽 |
R1 | 1 | 990M |
R2 | 1 | 1000M |
R3 | 0 | 100M |
VRRP路由器通过信息同步报文定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽,R2和R3通过信息同步报文定期向主路由器R1同步在线用户信息和同步本路由器剩余出口带宽,主路由器R1收到报文后进行更新。
有用户PC1和PC2,VRRP路由器R2和R3发给主路由器R1的信息同步报文中,假设用户PC1和PC2此时统计的报文发送速率为8Mbps和12Mbps。
R2发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0002)
(目的IP,源IP)=(192.168.1.1,192.168.1.2)
(类型,长度,IP,MAC)=(0,1,192.168.1.10,0000.0000.0010)
(类型,长度,大小)=(1,2,988),表示剩余出口带宽是988M。
R3发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0003)
(目的IP,源IP)=(192.168.1.1,192.168.1.3)
(类型,长度,IP,MAC)=(0,0,NULL)
(类型,长度,大小)=(1,2,100),表示剩余出口带宽是100M。
主路由器R1更新用户分配表和VRRP负载均衡表。
表14 VRRP负债均衡表
表15用户分配表
用户MAC | VRRP_Router_MAC | Timer | Delete |
0000.0000.0010 | 0000.0000.0001 | 10min | 0 |
0000.0000.0011 | 0000.0000.0002 | 5min | 0 |
用户PC2下线过4分钟,R2路由器检查在线用户表中ARP存活时间小于1分钟且无流量的用户,检测结果为PC2,R2发送免费单播ARP报文探测PC2是否在线,免费单播ARP报文特征如下:
封装ARP报文的数据帧中,(Dest_mac,Source_mac)=(0000.0000.0011,0000.0000.0002);
ARP报文的协议字段中,(Sender_mac,Sender_ip,Target_mac,Target_IP)=(0000.0000.0002,192.168.1.254,全0,192.168.1.11)
由于PC2已经下线,没有设备对此ARP报文进行应答,R2检测3次后,确定PC2已经下线。
R2路由器更新自己的用户更新表和带宽更新表。
表16用户更新表
VRRP路由器 | 用户MAC | 用户IP | 是否删除 |
R1 | 0000.0000.0010 | 192.168.1.10 | 0 |
R2 | 0000.0000.0011 | 192.168.1.11 | 1 |
R3 | 0 | 0 | 0 |
表17带宽更新表
VRRP路由器 | 在线用户数 | 剩余出口带宽 |
R1 | 1 | 990M |
R2 | 0 | 1000M |
R3 | 0 | 100M |
VRRP路由器R2和R3通过信息同步报文定期向主路由器R1同步在线用户信息和同步本路由器剩余出口带宽,主路由器R1收到报文后进行更新。
用户PC1在线和PC2下线,VRRP路由器R2和R3发给主路由器的信息同步报文中,假设用户PC1此时统计的报文发送速率为15Mbps。
R2发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0002)
(目的IP,源IP)=(192.168.1.1,192.168.1.2)
(类型,长度,IP,MAC)=(0,0,NULL)
(类型,长度,大小)=(1,2,1000),表示剩余出口带宽是1000M。
R3发送报文的字段值如下:
(目的MAC,源MAC)=(0000.0000.0001,0000.0000.0003)
(目的IP,源IP)=(192.168.1.1,192.168.1.3)
(类型,长度,IP,MAC)=(0,0,NULL)
(类型,长度,大小)=(1,2,100),表示剩余出口带宽是100M。
主路由器R1更新用户分配表和VRRP负载均衡表。
表18 VRRP负债均衡表
表19用户分配表
上述实施例仅用来进一步说明本发明的一种VRRP负载均衡的方法和装置,但本发明并不局限于实施例,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均落入本发明技术方案的保护范围内。
Claims (8)
1.一种VRRP负载均衡的方法,包括一组VRRP路由器;其特征在于:其包括如下步骤:
a.通过主路由器选举算法得出各个VRRP路由器的优先权,所述主路由器选举算法应用的公式为:
,其中,n为路由器CPU的核数,CPUi表示第i个CPU的频率,单位为MHz,m为路由器内存条个数,memoryj表示第j个内存的大小,单位为GByte,bandwidth为出口带宽,单位为Gbps,α、β和γ分别为CPU、内存和出口带宽的权重比例,通过比较各个VRRP路由器的优先权,值大的为主路由器,如果优先权相同,则根据IP地址大小,值大的为主路由器;
b.选出的主路由器初始化并且定时更新VRRP负载均衡表和用户分配表,所述VRRP负载均衡表包括VRRP路由器虚拟组的组号、接口MAC地址、优先权、是否为主路由器、用户数和剩余出口带宽;所述用户分配表包括用户MAC地址、转发用户MAC的VRRP路由器接口的MAC地址、用户存在时间和用户是否删除;
c.VRRP路由器初始化并且定时更新在线用户信息和更新本路由器剩余出口带宽,通过信息同步报文定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽,如果VRRP路由器是主路由器,则直接更新VRRP负载均衡表和用户分配表;主路由器收到用户ARP广播请求报文后根据负载均衡算法选择转发该用户数据的VRRP路由器,同时向该用户发送包含转发用户数据的VRRP路由器接口实MAC地址的特殊ARP应答,并更新VRRP负载均衡表和用户分配表;
d.主路由器定期发送VRRP通告报文,非主路由器的VRRP路由器检测是否收到VRRP通告报文,如果是则定期检测本路由器在线的用户数和剩余出口带宽,通过信息同步报文,将在线用户数和剩余出口带宽发送给主路由器,否则变更自己的状态为主路由器,往外发送VRRP通告报文,进入主路由器选举。
2.根据权利要求1所述的一种VRRP负载均衡的方法,其特征在于:在步骤c中,所述负载均衡算法包括:用户发出ARP广播请求报文,请求网关的MAC地址,VRRP路由器收到同时更新用户ARP表,用户ARP表包括用户MAC和用户IP,主路由器根据ARP请求报文中的用户MAC,先检查用户分配表中的用户MAC,如果存在,则更新用户分配表中的用户存在时间,重置值为0,如果不存在,则检查VRRP负载均衡表;通过如下规则选择转发该用户的VRRP路由器:检查剩余出口带宽,选择剩余出口带宽最大值的,如果剩余出口带宽相同,选择用户数最少的,如果用户数相同,选择优先权最大的,如果优先权相同,选择VRRP路由器接口MAC地址最小的。
3.根据权利要求1所述的一种VRRP负载均衡的方法,其特征在于:在步骤c中,所述VRRP路由器更新在线用户信息的方法包括:转发用户数据的VRRP路由器检查用户的ARP表,如果发现用户ARP老化时间小于1分钟,检查用户的流量计数:统计报文特征符合源IP地址为用户IP地址,源MAC地址为用户MAC地址的IP报文计数是否增加,如果有增加,则说明用户在线,直接更新用户ARP表、用户更新表,所述用户更新表包括:用户MAC、用户IP和是否删除用户,设置用户更新表中对应该用户的IP和MAC的是否删除用户为0,说明用户在线;如果没有,则对这些用户IP发送免费单播ARP报文,如果VRRP路由器有收到用户IP的ARP应答,则设置用户更新表中对应该用户的IP和MAC的是否删除用户为0,说明用户在线,如果VRRP路由器没有收到用户IP的ARP应答,则设置用户更新表中对应该用户的IP和MAC的是否删除用户为1,说明用户不在线,同时在主路由器的用户分配表中删除。
4.根据权利要求1所述的一种VRRP负载均衡的方法,其特征在于:在步骤c中,所述VRRP路由器更新本路由器剩余出口带宽的方法包括:每隔一个固定周期,VRRP路由器统计在线的用户ARP数和剩余出口带宽,更新带宽更新表,所述带宽更新表包括在线用户数和剩余出口带宽。
5.根据权利要求1所述的一种VRRP负载均衡的方法,其特征在于:在步骤c中,所述信息同步报文包括:标准IP报文格式中IP协议号[134,254]为未分配,取[134,254]其中任意整数作为VRRP路由器间同步信息的协议号标志,源地址为VRRP路由器所在VRRP组的接口地址,目的地址为VRRP组主路由器的接口地址,数据字段的类型取值为0表示发送用户在线信息同步报文,此时长度取值表示后面有几个IP和MAC组合,一个IP和MAC组合共10个字节,包括一个IP 4个字节,一个MAC 6个字节,类型取值为1表示发送剩余出口带宽,此时长度取值用2个字节的数据来表示带宽的大小,范围在[0,65535]表示最大带宽是65535M。
6.根据权利要求1所述的一种VRRP负载均衡的方法,其特征在于:在步骤c中,所述特殊ARP应答包括:封装ARP报文的数据帧中,目的MAC为用户MAC,源MAC地址为VRRP路由器接口地址,ARP报文的协议字段中,发送端MAC地址为VRRP路由器接口地址,发送端IP为VRRP组的虚拟IP,目的MAC地址为用户MAC地址,目的IP为用户IP。
7.根据权利要求3所述的一种VRRP负载均衡的方法,其特征在于:所述免费单播ARP报文包括:封装ARP报文的数据帧中,目的MAC为用户MAC,源MAC地址为VRRP路由器接口地址,ARP报文的协议字段中,发送端MAC地址为VRRP路由器接口地址,发送端IP为VRRP组的虚拟IP,目的MAC地址全为0,目的IP为用户IP。
8.一种VRRP负载均衡的装置,包括一组VRRP路由器;其特征在于:该组路由器应用权利要求1-6中任一项的一种VRRP负载均衡的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710958764.5A CN107888492B (zh) | 2017-10-16 | 2017-10-16 | 一种vrrp负载均衡的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710958764.5A CN107888492B (zh) | 2017-10-16 | 2017-10-16 | 一种vrrp负载均衡的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107888492A true CN107888492A (zh) | 2018-04-06 |
CN107888492B CN107888492B (zh) | 2020-07-24 |
Family
ID=61781517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710958764.5A Expired - Fee Related CN107888492B (zh) | 2017-10-16 | 2017-10-16 | 一种vrrp负载均衡的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107888492B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958326A (zh) * | 2019-12-13 | 2020-04-03 | 锐捷网络股份有限公司 | 一种负载均衡方法、装置、系统、设备及介质 |
CN111698158A (zh) * | 2020-04-17 | 2020-09-22 | 新华三技术有限公司成都分公司 | 主设备选举方法、装置及机器可读存储介质 |
CN114095442A (zh) * | 2021-11-17 | 2022-02-25 | 迈普通信技术股份有限公司 | 负载均衡方法、装置、电子设备和计算机可读存储介质 |
CN114143253A (zh) * | 2021-11-24 | 2022-03-04 | 锐捷网络股份有限公司 | Vrrp回切方法及装置 |
CN114258112A (zh) * | 2020-09-22 | 2022-03-29 | 华为技术有限公司 | 一种ap选举方法、装置及计算机可读存储介质 |
CN114422427A (zh) * | 2021-12-27 | 2022-04-29 | 天翼云科技有限公司 | 一种流量均衡方法、装置、电子设备和存储介质 |
CN115426221A (zh) * | 2022-10-14 | 2022-12-02 | 湖南省邮电规划设计院有限公司 | 一种物联网网关装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954436B1 (en) * | 2001-02-28 | 2005-10-11 | Extreme Networks, Inc. | Method and apparatus for selecting redundant routers using tracking |
CN101316236A (zh) * | 2008-07-23 | 2008-12-03 | 杭州华三通信技术有限公司 | Vrrp备份组负载分担方法及路由器 |
CN101702681A (zh) * | 2009-11-26 | 2010-05-05 | 福建星网锐捷网络有限公司 | 虚拟路由冗余协议中主备路由设备的切换方法及设备 |
CN102143051A (zh) * | 2010-10-27 | 2011-08-03 | 华为数字技术有限公司 | 虚拟路由冗余协议负载分担的方法和系统 |
CN103095573A (zh) * | 2013-02-07 | 2013-05-08 | 杭州华三通信技术有限公司 | 一种虚拟路由器冗余协议备份组切换的方法和交换机 |
WO2016065804A1 (zh) * | 2014-10-29 | 2016-05-06 | 中兴通讯股份有限公司 | 一种流量负载均衡方法及路由设备 |
CN105721328A (zh) * | 2014-12-02 | 2016-06-29 | 中兴通讯股份有限公司 | 一种vrrp负载均衡的方法、装置和路由器 |
CN106161272A (zh) * | 2016-08-31 | 2016-11-23 | 迈普通信技术股份有限公司 | 实现vrrp负载均衡的方法和路由设备 |
CN106375210A (zh) * | 2016-08-31 | 2017-02-01 | 迈普通信技术股份有限公司 | 实现vrrp下行负载均衡的方法和路由设备 |
-
2017
- 2017-10-16 CN CN201710958764.5A patent/CN107888492B/zh not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954436B1 (en) * | 2001-02-28 | 2005-10-11 | Extreme Networks, Inc. | Method and apparatus for selecting redundant routers using tracking |
CN101316236A (zh) * | 2008-07-23 | 2008-12-03 | 杭州华三通信技术有限公司 | Vrrp备份组负载分担方法及路由器 |
CN101702681A (zh) * | 2009-11-26 | 2010-05-05 | 福建星网锐捷网络有限公司 | 虚拟路由冗余协议中主备路由设备的切换方法及设备 |
CN102143051A (zh) * | 2010-10-27 | 2011-08-03 | 华为数字技术有限公司 | 虚拟路由冗余协议负载分担的方法和系统 |
CN103095573A (zh) * | 2013-02-07 | 2013-05-08 | 杭州华三通信技术有限公司 | 一种虚拟路由器冗余协议备份组切换的方法和交换机 |
WO2016065804A1 (zh) * | 2014-10-29 | 2016-05-06 | 中兴通讯股份有限公司 | 一种流量负载均衡方法及路由设备 |
CN105721328A (zh) * | 2014-12-02 | 2016-06-29 | 中兴通讯股份有限公司 | 一种vrrp负载均衡的方法、装置和路由器 |
CN106161272A (zh) * | 2016-08-31 | 2016-11-23 | 迈普通信技术股份有限公司 | 实现vrrp负载均衡的方法和路由设备 |
CN106375210A (zh) * | 2016-08-31 | 2017-02-01 | 迈普通信技术股份有限公司 | 实现vrrp下行负载均衡的方法和路由设备 |
Non-Patent Citations (1)
Title |
---|
莫永华: "《基于VRRP的统一安全网关冗余和负载均衡设计与实现》", 《现代计算机(专业版)》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958326A (zh) * | 2019-12-13 | 2020-04-03 | 锐捷网络股份有限公司 | 一种负载均衡方法、装置、系统、设备及介质 |
CN110958326B (zh) * | 2019-12-13 | 2022-11-11 | 锐捷网络股份有限公司 | 一种负载均衡方法、装置、系统、设备及介质 |
CN111698158A (zh) * | 2020-04-17 | 2020-09-22 | 新华三技术有限公司成都分公司 | 主设备选举方法、装置及机器可读存储介质 |
CN111698158B (zh) * | 2020-04-17 | 2023-03-31 | 新华三技术有限公司成都分公司 | 主设备选举方法、装置及机器可读存储介质 |
CN114258112A (zh) * | 2020-09-22 | 2022-03-29 | 华为技术有限公司 | 一种ap选举方法、装置及计算机可读存储介质 |
CN114258112B (zh) * | 2020-09-22 | 2023-12-08 | 华为技术有限公司 | 一种ap选举方法、装置及计算机可读存储介质 |
CN114095442A (zh) * | 2021-11-17 | 2022-02-25 | 迈普通信技术股份有限公司 | 负载均衡方法、装置、电子设备和计算机可读存储介质 |
CN114095442B (zh) * | 2021-11-17 | 2024-03-15 | 迈普通信技术股份有限公司 | 负载均衡方法、装置、电子设备和计算机可读存储介质 |
CN114143253A (zh) * | 2021-11-24 | 2022-03-04 | 锐捷网络股份有限公司 | Vrrp回切方法及装置 |
CN114422427A (zh) * | 2021-12-27 | 2022-04-29 | 天翼云科技有限公司 | 一种流量均衡方法、装置、电子设备和存储介质 |
CN114422427B (zh) * | 2021-12-27 | 2024-03-08 | 天翼云科技有限公司 | 一种流量均衡方法、装置、电子设备和存储介质 |
CN115426221A (zh) * | 2022-10-14 | 2022-12-02 | 湖南省邮电规划设计院有限公司 | 一种物联网网关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107888492B (zh) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107888492A (zh) | 一种vrrp负载均衡的方法和装置 | |
US11588733B2 (en) | Slice-based routing | |
US9154330B2 (en) | Method and device of link aggregation and method and system for transceiving MAC frames | |
WO2017128945A1 (zh) | 一种业务流量的分配方法及装置 | |
CN102726021B (zh) | 灵活的数据中心网络体系结构 | |
CN104272708B (zh) | 带有到服务器群组的无状态第一级分组分布和到群组内某个服务器的有状态第二级分组分布的二级分组分布 | |
US9008088B2 (en) | Multicast implementation in a link state protocol controlled ethernet network | |
US8867366B2 (en) | Multicast implementation in a link state protocol controlled Ethernet network | |
CN103098424B (zh) | 用于多机架链路聚集的系统和方法 | |
US20130003549A1 (en) | Resilient Hashing for Load Balancing of Traffic Flows | |
CN102215158B (zh) | 实现vrrp流量传输的方法和路由设备 | |
CN107579923A (zh) | 一种sdn网络的链路负载均衡方法和sdn控制器 | |
US20130301640A9 (en) | Method & apparatus for the distribution of network traffic | |
CN103152284B (zh) | 一种路由器多径输出智能负载均衡的方法及路由器 | |
CN103825834B (zh) | 一种evi中调整流量负载分担的方法及网络交换装置 | |
CN103227843A (zh) | 一种物理链路地址管理方法及装置 | |
CN102986176A (zh) | 用于bgp mac-vpn的mpls标签分配的方法和装置 | |
JP2014511091A (ja) | Wanipバックボーンのための凝縮されたコアエネルギー効率の高いアーキテクチャ | |
CN101350773A (zh) | 一种移动分组网络架构及其多个防火墙负载均衡接入方法 | |
CN108337179B (zh) | 链路流量控制方法及装置 | |
CN101789949B (zh) | 一种实现负荷分担的方法和路由设备 | |
CN100563215C (zh) | 一种报文路由交换装置及其方法 | |
CN107846445A (zh) | 一种基于sdn的服务器负载均衡方法 | |
CN104301417A (zh) | 一种负载均衡方法及装置 | |
CN106453120A (zh) | 一种动态集群方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200724 Termination date: 20211016 |
|
CF01 | Termination of patent right due to non-payment of annual fee |