一种VRRP负载均衡的方法和装置制造方法及图纸

技术编号:17660096 阅读:39 留言:0更新日期:2018-04-08 11:43
本发明专利技术公开了一种VRRP负载均衡的方法和装置,包括一组VRRP路由器通过主路由器选举算法得出各个VRRP路由器的优先权,比较各个VRRP路由器的优先权,值大的为主路由器,如果优先权相同,则根据IP地址大小,值大的为主路由器;主路由器通过收到的用户ARP请求报文根据负载均衡算法选择转发用户数据的VRRP路由器,实现VRRP负载均衡;VRRP路由器更新在线用户信息和更新本路由器剩余出口带宽,定期向主路由器同步在线用户信息和同步本路由器剩余出口带宽;具有部署效率高灵活性强实现动态负载调整;用户网关互不干扰信息同步方式提高用户体验等优点。

【技术实现步骤摘要】
一种VRRP负载均衡的方法和装置
本专利技术涉及一种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个字节,包括一个IP4个字节,一个MAC6个字节,类型取值为1表示发送剩余出口带宽,此时长度取值用2个字节的数据来表示带宽的大小,范围在[0,65535]表示最大带宽是65535M。在另一较佳实施例中,所述所述特殊ARP应答包括:封装ARP报文的数据帧中,目的MAC为用本文档来自技高网
...
一种VRRP负载均衡的方法和装置

【技术保护点】
一种VRRP负载均衡的方法,包括一组VRRP路由器;其特征在于:其包括如下步骤:a.通过主路由器选举算法得出各个VRRP路由器的优先权,所述主路由器选举算法应用的公式为:

【技术特征摘要】
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表,如果发现用户AR...

【专利技术属性】
技术研发人员:杨敬民张文杰陈志翔
申请(专利权)人:闽南师范大学
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1