一种基于dhcp中继实现dhcp服务器负载分担的方法

文档序号:7611157阅读:216来源:国知局
专利名称:一种基于dhcp中继实现dhcp服务器负载分担的方法
技术领域
本发明涉及DHCP技术领域,具体涉及一种基于DHCP中继实现DHCP服务器负载分担的方法。
背景技术
随着网络规模的扩大、网络复杂度的提高,网络配置也越来越复杂。
在实际的网络环境中,由于便携机或无线网络等原因,经常会出现计算机位置变化和计算机数量超过可分配的IP地址的情况。DHCP(Dynamic HostConfiguration Protocol动态主机配置协议)就是为了满足这些需求而逐渐发展起来的。
目前,DHCP技术已普遍应用于各大型企业内部的网络中。
当网络中DHCP Client(客户端)的数目非常庞大时,通常会设置多个DHCPserver(服务器),以实现DHCP server的负载分担。
各DHCP Client通过DHCP relay(中继)与多个DHCP server连接的逻辑框图如附图1所示。
图1中,DHCP Client通过发起探询报文来查询网络上DHCP Server的存在情况,该探询报文通过DHCP relay传输至各DHCP Server,然后,DHCP Client根据接收的DHCP Server对其探询报文的应答报文随机选择DHCP Server,并将其选择某个DHCP Server为其分配IP地址等参数的请求报文以广播或组播方式通过DHCP relay传输至DHCP Server。
DHCP Client在根据其接收的DHCP Server的应答报文选择DHCP Seryer时,一般会选择其接收的第一个应答报文对应的DHCP Server。
这样,如果DHCP Server n的应答报文由于中间隔着某个网络等原因而后到,则DHCP Server n就失去了被选择的机会。在非常极端的情况下可能会导致一个DHCP server承载了多数DHCP Client,处理非常忙,而另外的DHCPserver却相对轻闲,使多个DHCP Server的负载不均衡,使设置多个DHCPServer实现负载分担的目的没有真正实现,使部分网络资源没有得到充分利用。

发明内容
本发明的目的在于,提供一种基于DHCP中继实现DHCP服务器负载分担的方法,以均衡多个DHCP服务器的负载,充分利用网络资源。
为达到上述目的,本发明提供的技术方案包括一种基于DHCP中继实现DHCP服务器负载分担的方法,包括DHCP中继根据各DHCP服务器的负载将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。
所述请求报文包括基于IPv4的DHCP请求报文、基于IPv6的DHCP请求报文。
所述方法进一步包括a、DHCP中继确定与其连接的各DHCP服务器;b、当所述DHCP中继接收DHCP客户端的请求报文时,获取各DHCP服务器承载的DHCP客户端的数量;c、所述DHCP中继根据各DHCP服务器承载的DHCP客户端的数量将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。
所述步骤a具体为在所述DHCP中继的接口中配置与其直接连接的各DHCP服务器的地址信息。
所述步骤a还包括a1、所述DHCP中继确定与其直接连接的其他DHCP中继。
所述步骤a1具体为在所述DHCP中继的接口中配置与其直接连接其他DHCP中继的地址信息。
所述步骤b具体包括所述DHCP中继根据请求报文承载的内容确定并存储DHCP服务器/其他DHCP中继与DHCP客户端的对应关系;所述DHCP中继根据其存储的DHCP服务器/其他DHCP中继与DHCP客户端的对应关系确定各DHCP服务器/其他DHCP中继承载的DHCP客户端的数量。
所述DHCP服务器/其他DHCP中继与DHCP客户端的对应关系包括所述DHCP服务器/其他DHCP中继与DHCP客户端的介质访问控制地址的对应关系。
所述步骤c还包括所述DHCP中继在将DHCP客户端的请求报文传输至对应的DHCP服务器/其他DHCP中继时,存储所述DHCP服务器/其他DHCP中继与所述DHCP客户端的对应关系。
所述DHCP服务器/其他DHCP中继与DHCP客户端的对应关系包括所述DHCP服务器/其他DHCP中继与所述DHCP客户端的介质访问控制地址的对应关系。
通过上述技术方案的描述可知,本发明中的DHCP中继能够根据DHCP服务器的负载将DHCP client的请求报文分配传输至不同的DHCP服务器,如将请求报文传输至负载小的DHCP服务器,以保证各DHCP服务器承载的DHCP客户端的数量基本相同,避免了各DHCP服务器承载的DHCP客户端的数量不均衡的现象,使设置多个DHCP服务器进行负载分担的目的得到真正实现;从而通过本发明提供的技术方案实现了DHCP服务器负载均衡,充分利用网络资源的目的。


图1是单DHCP中继的网络拓扑示意图;图2是多DHCP中继的网络拓扑示意图。
具体实施例方式
当网络中设置了多个DHCP server时,如果DHCP relay不仅仅作为一个透明传输通道将其接收的请求报文直接转发,而是采用一定的策略、有目的性的将其接收的请求报文进行分配传输,就能够有效避免DHCP server负载不均衡的现象。
因此,本发明的核心是DHCP中继根据各DHCP服务器的负载将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。
下面基于本发明的核心思想对本发明提供的技术方案做进一步的描述。
本发明中DHCP client的请求报文包括基于IPv4的DHCP client的请求报文、基于IPv6的DHCP client的请求报文。
本发明首先需要确定与DHCP relay直接连接的各DHCP server,当网络中设置了多个DHCP relay时,DHCP relay可以将与其直接连接的其他DHCP relay当作一个DHCP server来对待。
DHCP relay可以通过存储DHCP server和其他DHCP relay的地址信息来确定与其直接连接的各DHCP server和其他DHCP relay。
DHCP relay可将上述存储的DHCP server和其他DHCP relay的地址信息配置在其接口上,如以下述形式表示Next Server-Address Server-1Next Server-Address Server-2
Next Server-Address DHCP relay2DHCP relay在接收到DHCP client的请求报文时,需要确定与其连接的各DHCP server/其他DHCP relay的负载。各DHCP server/其他DHCP relay的负载可通过各DHCP server/其他DHCP relay承载的DHCP client的数量来体现。
由于DHCP client的请求报文是以广播或组播的方式发送的,所以DHCPrelay在接收到该报文时,可以根据请求报文中承载的内容确定DHCP client选择的DHCP server,DHCP relay可以通过记录各DHCP client选择的DHCP server的情况,来确定各DHCP server/其他DHCP relay的负载,如通过记录DHCPclient的Mac(介质访问控制地址)和DHCP Server/其他DHCP relay的对应关系,从而确定各DHCP Server/其他DHCP relay承载的DHCP client的数量,通过该数量来确定各DHCP Server/其他DHCP relay的负载。
在确定了各DHCP Server/其他DHCP relay的负载后,DHCP relay应将其接收的DHCP client的请求报文传输至负载小的DHCP Server/其他DHCP relay。从而,避免了一个DHCP server承载过多的DHCP client而引起的各别DHCPserver负载过重的现象。
DHCP relay在根据各DHCP server/其他DHCP relay的负载将DHCP client的请求报文传输至对应的DHCP server或DHCP relay时,同时应记录DHCPclient与该DHCP server或DHCP relay的对应关系,此时记录的对应关系同样需要应用在确定各DHCP server/其他DHCP relay的负载过程中,以准确确定各DHCP server/其他DHCP relay承载的DHCP client的数量。
下面结合附图1对网络中设置单DHCP relay时,本发明实现DHCP Server负载分担的方法进行详细说明。
网络中设置单DHCP relay时的网络拓扑如附图1所示。
DHCP relay首先需要确定与其直接连接的各DHCP server。设定与DHCPrelay直接连接的各DHCP server包括DHCP server1至DHCP serverN的N个DHCP server。
DHCP relay在其接口中设置与其直接连接的各DHCP server的地址信息,如设置为以下述形式Next Server-Address Server-1Next Server-Address Server-2......
Next Server-Address Server-N为保证N个DHCP server接入的客户端的个数基本相同,本发明中的DHCPrelay可以在开始接收到第一个请求报文时,就开始根据各DHCP server的负载将请求报文均衡的传输至各DHCP server,也可以在之后某个时间如已接入了预定个数的DHCP client后,再根据各DHCP server的负载将请求报文均衡的传输至各DHCP server。
DHCP relay在将DHCP client请求报文传输至DHCP server时,应记录存储DHCP client与DHCP server的对应关系。
当DHCP relay在不根据各DHCP server的负载传输请求报文时,DHCPrelay可以根据请求报文中承载的内容确定DHCP client与DHCP server的对应关系,并存储。
当DHCP relay在根据各DHCP server的负载传输请求报文时,应在将该请求报文传输至对应的DHCP server的同时,确定DHCP client与该对应的DHCPserver的对应关系,并存储。以准确记载各DHCP server承载的DHCP client的数量,即准确记载各DHCP server的负载。
下面结合附图2对网络中设置多DHCP relay时,本发明实现DHCP Server负载分担的方法进行详细说明。
网络中设置多DHCP relay时的网络拓扑如附图2所示。
当网络中设置了多个DHCP relay时,可以将与DHCP relay连接的其他DHCP relay当作DHCP server来处理。
图2中,与DHCP relay1直接连接的DHCP server和其他DHCP relay包括DHCP server 1至DHCP serverN的N个DHCP server和DHCP relay2。
DHCP relay1在其接口intf1中设置与其直接连接的各DHCP server和DHCPrelay2的地址信息,如设置为以下述形式Next Server-Address Server-1Next Server-Address Server-2......
Next Server-Address Server-NNext Server-Address DHCP relay2同样,为保证N+1个DHCP server接入的客户端的个数基本相同,本发明中的DHCP relay1可以在开始接收到第一个请求报文时,就开始根据各DHCPserver的负载将请求报文均衡的传输至各DHCP server,也可以在之后某个时间如已接入了预定个数的DHCP client后,再根据各DHCP server的负载将请求报文均衡的传输至各DHCP server。
DHCP relay在将DHCP client请求报文传输至DHCP server或其他DHCPrelay时,应记录存储DHCP client与DHCP server或其他DHCP relay的对应关系。
当DHCP relay在不根据各DHCP server和其他DHCP relay的负载传输请求报文时,DHCP relay应可以根据请求报文中承载的内容确定DHCP client与DHCP server或其他DHCP relay的对应关系,并存储。
当DHCP relay在根据各DHCP server和其他DHCP relay的负载传输请求报文时,应在将该请求报文传输至对应的DHCP server或其他DHCP relay的同时,确定DHCP client与该对应的DHCP server或其他DHCP relay的对应关系,并存储。以准确记载各DHCP server和其他DHCP relay承载的DHCP client的数量,即准确记载各DHCP server和其他DHCP relay的负载。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,本发明的申请文件的权利要求包括这些变形和变化。
权利要求
1.一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,包括DHCP中继根据各DHCP服务器的负载将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。
2.如权利要求1所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述请求报文包括基于IPv4的DHCP请求报文、基于IPv6的DHCP请求报文。
3.如权利要求1所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述方法进一步包括a、DHCP中继确定与其连接的各DHCP服务器;b、当所述DHCP中继接收DHCP客户端的请求报文时,获取各DHCP服务器承载的DHCP客户端的数量;c、所述DHCP中继根据各DHCP服务器承载的DHCP客户端的数量将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。
4.如权利要求3所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述步骤a具体为在所述DHCP中继的接口中配置与其直接连接的各DHCP服务器的地址信息。
5.如权利要求3所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述步骤a还包括a1、所述DHCP中继确定与其直接连接的其他DHCP中继。
6.如权利要求5所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述步骤a1具体为在所述DHCP中继的接口中配置与其直接连接其他DHCP中继的地址信息。
7.如权利要求3、4、5或6所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述步骤b具体包括所述DHCP中继根据请求报文承载的内容确定并存储DHCP服务器/其他DHCP中继与DHCP客户端的对应关系;所述DHCP中继根据其存储的DHCP服务器/其他DHCP中继与DHCP客户端的对应关系确定各DHCP服务器/其他DHCP中继承载的DHCP客户端的数量。
8.如权利要求7所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述DHCP服务器/其他DHCP中继与DHCP客户端的对应关系包括所述DHCP服务器/其他DHCP中继与DHCP客户端的介质访问控制地址的对应关系。
9.如权利要求3、4、5或6所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述步骤c还包括所述DHCP中继在将DHCP客户端的请求报文传输至对应的DHCP服务器/其他DHCP中继时,存储所述DHCP服务器/其他DHCP中继与所述DHCP客户端的对应关系。
10.如权利要求9所述的一种基于DHCP中继实现DHCP服务器负载分担的方法,其特征在于,所述DHCP服务器/其他DHCP中继与DHCP客户端的对应关系包括所述DHCP服务器/其他DHCP中继与所述DHCP客户端的介质访问控制地址的对应关系。
全文摘要
本发明提供一种基于DHCP中继实现DHCP服务器负载分担的方法,其核心为DHCP中继根据各DHCP服务器的负载将其接收的DHCP客户端的请求报文传输至对应的DHCP服务器。本发明避免了各DHCP服务器承载的DHCP客户端不均衡的现象,使设置多个DHCP服务器负载分担的目的得到真正实现;从而实现了DHCP服务器负载均衡,充分利用网络资源的目的。
文档编号H04L12/24GK1812398SQ20051000290
公开日2006年8月2日 申请日期2005年1月26日 优先权日2005年1月26日
发明者陈双龙 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1