信息处理方法、扩容方法、管理器、控制器及DNS与流程

文档序号:12789755阅读:202来源:国知局
信息处理方法、扩容方法、管理器、控制器及DNS与流程

本发明涉及互联网领域的域名解析技术,尤其涉及一种信息处理方法、扩容方法、管理器、控制器及DNS。



背景技术:

现有的域名查询方式有两种:递归查询和迭代查询。查询时,用户向本地递归域名系统(Domain Name System,DNS)服务器发起查询请求,先在本地缓存里查找记录,如果找不到该域名的解析记录,再依次向上级DNS服务器执行迭代查询,直到找到负责解析该域名的DNS服务器,查询到域名对应的IP地址。然后递归DNS将查询结果返回给用户,完成域名解析。但当目标服务不可用时,将无法探测该目标服务不可用,被路由到该目标主机的客户端请求无法获得服务,且不能被自动路由到其他目标主机。且DNS服务器扩容只能采用手动添加服务器的方式,负载均衡实现方式也很单一。



技术实现要素:

为本发明实施例提供了一种信息处理方法、扩容方法、管理器、控制器及DNS,至少部分解决上述问题。

本发明实施例第一方面提供一种信息处理方法,所述方法包括:

获取至少两台域名系统DNS服务器的状态信息;

根据所述状态信息制定负载均衡策略;

其中,所述负载均衡策略用于使响应DNS请求的至少两台DNS服务器的负载均衡。

基于上述方案,所述方法还包括:

将所述负载均衡策略下发给转发器;

其中,所述负载均衡策略,具体用于所述转发器确定响应DNS请求的DNS服务器。

基于上述方案,所述方法还包括:

将流表下发给所述转发器;其中,所述流表至少包括DNS服务器连接在所述转发器上的端口号;

所述负载均衡策略,具体用于所述转发器确定转发所述DNS请求的端口。

基于上述方案,所述根据所述状态信息制定负载均衡策略,包括:

选取所述状态信息中用于进行负载均衡的指定状态参数;

获取所述指定状态参数的权值;

依据所述指定状态参数及所述权值,确定各台所述DNS服务器之间的当前负载比;

基于所述负载比,确定均衡比。

基于上述方法,所述方法还包括:

根据所述状态信息,确定所述DNS服务器的当前负载是否超过扩容阈值;

当所述当前负载超过所述扩容阈值时,新增DNS服务器。

本发明实施例第二方面提供一种域名系统DNS服务器扩容方法,所述方法包括:

获取DNS服务器的状态信息;

根据所述状态信息,确定DNS服务器的当前负载是否超过扩容阈值;

当所述当前负载超过所述扩容阈值时,新增DNS服务器。

基于上述方案,所述方法还包括:

为所述新增DNS服务器进行信息配置,形成配置信息;

将所述配置信息下发给控制器;

所述配置信息,用于所述控制器形成用于转发的流表和/或制定负载均衡策略;其中,所述负载均衡策略,用于使响应DNS请求的至少两台DNS服务器的负载均衡。

基于上述方案,所述方法还包括:

根据所述状态信息,确实所述DNS服务器是否异常;

若有所述DNS服务器异常,则发出异常警报。

基于上述方案,所述状态信息包括服务器状态信息和业务状态信息;

其中,所述服务器状态信息用于指示所述DNS服务器的当前运行状态;

所述业务状态信息用于指示所述DNS请求的响应状态。

本发明实施例第三方面提供一种控制器,所述控制器包括:

第一获取单元,用于获取至少两台域名系统DNS服务器的状态信息;

制定单元,用于根据所述状态信息制定负载均衡策略;

其中,所述负载均衡策略用于使响应DNS请求的至少两台DNS服务器的负载均衡。

基于上述方案,所述控制器还包括:

转发单元,用于将所述负载均衡策略下发给转发器;

其中,所述负载均衡策略,具体用于所述转发器确定响应DNS请求的DNS服务器。

基于上述方案,所述转发单元,还用于将流表下发给所述转发器;其中,所述流表至少包括DNS服务器连接在所述转发器上的端口号;

所述负载均衡策略,具体用于所述转发器确定转发所述DNS请求的端口。

基于上述方案,所述制定单元,具体用于选取所述状态信息中用于进行负载均衡的指定状态参数;获取所述指定状态参数的权值;依据所述指定状态参数及所述权值,确定各台所述DNS服务器之间的当前负载比;及基于所述负载比,确定均衡比。

基于上述方案,所述控制器还包括:

确定单元,用于根据所述状态信息,确定所述DNS服务器的当前负载是否超过扩容阈值;

第一扩容单元,用于当所述当前负载超过所述扩容阈值时,新增DNS服务器。

本发明实施例第四方面提供一种管理器,所述管理器包括:

第二获取单元,用于获取DNS服务器的状态信息;

判断单元,用于根据所述状态信息,确定DNS服务器的当前负载是否超过扩容阈值;

第二扩容单元,用于当所述当前负载超过所述扩容阈值时,新增DNS服务器。

基于上述方案,所述管理器还包括:

形成单元,用于为所述新增DNS服务器进行信息配置,形成配置信息;

下发单元,用于将所述配置信息下发给控制器;

所述配置信息,用于所述控制器形成用于转发的流表和/或制定负载均衡策略;其中,所述负载均衡策略,用于使响应DNS请求的至少两台DNS服务器的负载均衡。

基于上述方案,所述管理器还包括:

确定单元,用于根据所述状态信息,确实所述DNS服务器是否异常;

输出单元,用于若有所述DNS服务器异常,则发出异常警报。

本发明实施例第五方面提供一种域名系统DNS,所述DNS包括:

至少两台DNS服务器;

管理器,与所述DNS服务器相连,用于接收DNS服务器上报的状态信息;根据所述状态信息进行DNS服务器扩容;

控制器,与所述管理器相连,从所述管理器接收所述状信息,根据所述状态信息指定负载均衡策略;

转发器,分别于所述控制器和所述DNS服务器相连,从所述控制器接收所述负载均衡策略,根据所述负载均衡策略确定响应DNS请求的所述DNS服务服务器。

基于上述方案,所述管理器还用于根据状态信息,确定是否有DNS服务器异常,若有DNS服务器异常则输出异常警报。

在本发明实施例提供信息处理方法、扩容方法、管理器、控制器及DNS,会获取DNS服务器的状态信息,根据状态信息制定出负载均衡策略,利用负载 均衡策略进行DNS请求的响应调度,能够实现DNS内各个DNS服务器的负载均衡;同时还能够根据状态信息确定当前负载是否大于扩容阈值,若当前负载大于扩容阈值,将自动新增DNS服务器,从而实现DNS服务器的自动扩容。

附图说明

图1为本发明实施例提供的一种信息处理方法的流程示意图;

图2为本发明实施例的负载均衡策略制定方法的流程示意图;

图3为本发明实施例提供的DNS服务器扩容方法的流程示意图;

图4为本发明实施例提供的控制器的结构示意图;

图5为本发明实施例提供的管理器的结构示意图;

图6为本发明实施例提供的DNS系统结构示意图;

图7为本发明实施例提供DNS的信息处理示意图之一;

图8为本发明实施例提供DNS的信息处理示意图之二;

图9为本发明实施例提供DNS的信息处理示意图之三。

具体实施方式

为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。

实施例一:

如图1所示,本实施例提供一种信息处理方法,所述方法包括:

步骤S110:获取至少两台域名系统DNS服务器的状态信息;

步骤S120:根据所述状态信息制定负载均衡策略;

其中,所述负载均衡策略用于使响应DNS请求的至少两台DNS服务器的负载均衡。

本实施例所述的动态均衡负载方法可应用于控制器,该控制器可为控制连接多台DNS服务器的转发器的设备。

例如,所述DNS服务器都连接在一个转发器上,该控制器通过控制转发器的转发,可以实现DNS请求在DNS服务器之间的负载均衡。

在步骤S110中获取所述状态信息,可包括接收DNS服务器上报的状态信息,例如所述DNS服务器定时的上报所述状态信息,这的定时上报,任意两个上报时间之间的间隔可以相等也可以不等。当任意两个上报时间相等时,则步骤S110可包括周期接收DNS服务器上报的状态信息。当然各个上报时间间隔不等时,所述DNS服务器可以根据DNS请求的量,自行确定上报时间间隔。或者根据DNS服务器当前状态信息的变化率,若变化率大于某一阈值,则采用第一时间间隔,若变化率小于该阈值,则采用第二时间间隔,这里的第二时间间隔大于所述第一时间间隔。当然这所述DNS服务器还可以在变化率大于该阈值时就上报,若未大于该阈值则不上报。总之所述控制器接收DNS服务器上报的状态信息的方式有很多,不局限于上述方式。

当然,在具体实现是,所述控制器还可以从其他设备获取所述状态信息,例如,DNS服务器定期或不定期的向与其连接的管理器发送所述状态信息,管理器再将所述状态信息转发给所述控制器。当然,所述管理器也可以对所述状态信息进行梳理之后,根据处理策略,将影响负载均衡的状态信息转发给控制器。

总之本实施例中步骤S110中获取状态信息的方式有很多种,不局限于上述任意一种。

所述状态信息可包括服务器状态信息和业务状态信息。所述服务器状态信息可包括DNS服务器中央处理器CPU使用状态、内存使用状态、磁盘使用状态、当前流量、响应时延、连接数等信息。所述CPU使用状态可包括CPU使用比,剩余CPU资源。所述内存使用状态包括已占用内存,剩余使用内容,所述磁盘使用状态可包括剩余磁盘容量等信息。所述业务状态信息可包括DNS查询状态信息、应答状态信息、发送状态信息及接收状态信息。总之所述业务状态信息表征的是DNS请求是否被响应,响应的程度等信息。

步骤S120中,将根据所述状态信息指定负载均衡策略。这里的状态信息能 够至少反映出各台DNS服务器当前的负载状况,为了实现负载均衡,避免某些DNS服务器过载导致的DNS请求响应速度慢,或有些DNS服务器轻载导致的DNS服务器的资源浪费的现象,在本实施例中将会指定所述负载均衡策略。

在本实施例中所述负载均衡策略可包括该负载均衡策略应用时间内各台DNS服务器接收DNS请求数占接收到总DNS请求数的比值等。该应用时间可为指定的一个时间段,也可以为动态确定的。例如,在未根据状态信息指定出新的负载均衡策略之前的所有时间都可认为为当前应用的负载均衡策略的应用时间。

本实施例所述方法可以应用在各种电子设备中,该电子设备通过获取所述状态信息及指定负载均衡策略,能够实现DNS服务器的负载自动均衡。

所述方法还包括:

将所述负载均衡策略下发给转发器;

其中,所述负载均衡策略,具体用于所述转发器确定响应DNS请求的DNS服务器。

在本实施例中所述DNS服务器统一连接到转发器上。在本实施例中所述控制器将所述负载均衡策略发送给转发器,这样转发器将根据负载均衡策略,将DNS请求转发到各个DNS服务器,以实现负载均衡。

例如,所述负载均衡策略包括均衡比。该均衡比为1:2:3,表明的是DNS服务器1、DNS服务器2及DNS服务器3响应DNS请求的比。例如,在某一个瞬间,转发器接收来自客户端6个DNS请求,则将依据所述均衡比,将1个DNS请求转发给DNS服务器1来响应,将其中2个DNS请求转发给DNS服务器2来响应;将剩余的3个DNS请求转发DNS服务器3来响应。

总之本实施例中所述方法,会将负载均衡策略给到转发器,由所述转发器来执行所述负载均衡策略。

进一步地,所述方法还包括:

将流表下发给所述转发器;其中,所述流表至少包括DNS服务器连接在所述转发器上的端口号;所述负载均衡策略,具体用于所述转发器确定转发所述 DNS请求的端口。

所述端口号为转发器的端口号。在具体实现时,所述流表还可包括各台DNS服务器的网络协议(Internet Protocol,IP)地址。

以下为本发明实施例提供的一个流表的示例:

其中,所述Mac为Media Access Control的缩写,对应的媒体访问控制;所述TCP为Transmission Control Protocol的缩写,对应的中文为传输控制协议。所述VLAN为Virtual Local Area Network的缩写,对应的中文为虚拟局域网。

通过流表下发给转发表,转发器在确定出将某一个DNS请求发送给一个DNS服务器时,可以知道确定出通过自身的哪个端口号发送给对应的服务器。例如,确定出IP地址为192.168.10.14的DNS服务器来响应DNS请求A时,转发器通过查询上述流表,可确定出通过自身的端口8转发该DNS请求A,就能够将DNS请求A发送到IP地址为192.168.10.14的DNS服务器,完成DNS请求的响应调度,由于是基于负载均衡策略进行的响应调度,从而实现的均衡调度。

如图2所示,所述步骤S120可包括:

步骤S121:选取所述状态信息中用于进行负载均衡的指定状态参数;

步骤S122:获取所述指定状态参数的权值;

步骤S123:依据所述指定状态参数及所述权值,确定各台所述DNS服务器之间的当前负载比;

步骤S124:基于所述负载比,确定均衡比。

在步骤S121中选择的指定状态参数通常包括至少一个或多个服务器参数,能够表征DNS服务器的当前负载状况。在步骤S124中计算出的均衡比通常与 负载比呈现负相关性。这样的话,就能够实现根据均衡比进行DNS请求的响应调度时,使当前负载较轻的DNS服务器响应更多的DNS请求,而使当前负载较重的DNS服务器接收较少DNS请求。

例如,选取CPU、内存和连接数三个状态参数作为所述指定状态参数,分别设置或通过查询预设配置确定CPU的权重为40%,内存的权重为30%,连接数的权重为30%,根据加权计算后,DNS服务器A加权得到的当前负载:DNS服务器B加权得到的当前负载:DNS服务器C加权得到的当前=1:2:3,则对于三个DNS服务器承担业务负载均衡后应该为3:2:1。在本实施例中所述均衡比为所述当前负载比的反比。

总之,本实施例在前述负载均衡方法的基础上,提供了一种具体的负载均衡策略制定方法,具有实现简便的特点。

在本实施例中为了更好提高响应速率,将在DNS出现高负载的情况下,进行自动扩容,一方面实现提高响应速率,另一方面提高DNS的智能性,不用维护人员手动扩容,具体地如,所述方法还包括:

根据所述状态信息,确定所述DNS服务器的当前负载是否超过扩容阈值;

当所述当前负载超过所述扩容阈值时,新增DNS服务器。

在本实施例中所述扩容阈值可为预先设定的负载阈值,这里的扩容阈值可为负载比值,例如,若根据所述状态信息确定出DNS的当前负载超过最大负载的70%,则控制器等信息处理设备,认为当前DNS内的负载较高,若持续运行可能会导致响应速率过慢的问题,此时自动新增DNS服务器。这里的新增DNS服务器可为启动DNS物理机,也可以在云平台等能够配置虚拟DNS服务器的物理机上,新增DNS虚拟服务器。新增的DNS服务器的台数,新增的DNS服务器的内存、CPU或存储空间等各种参数可以根据当前负载来确定。通常当前负载超过扩容阈值越多或当前负载越大,则新增的DNS服务器的台数就越多或新增的DNS服务器的处理能力就越强。

总之,本实施例所述的信息处理方法,不仅能够自动根据DNS服务器的状态信息进行负载均衡,同时还将根据DNS服务器的状态信息进行自动扩容,一 方面提高DNS请求的响应速率,另一方面提高DNS服务器的智能性,进行自动扩容,减少维护人员的操作负荷,提高扩容效率。

实施例二:

如图3所示,本实施例提供一种域名系统DNS服务器扩容方法,所述方法包括:

步骤S210:获取DNS服务器的状态信息;

步骤S220:根据所述状态信息,确定DNS服务器的当前负载是否超过扩容阈值;

步骤S230:当所述当前负载超过所述扩容阈值时,新增DNS服务器。

本实施例所述的方法,可为应用于上述DNS服务器连接的管理器中。所述管理器在步骤S210可以定期或不定期的接收DNS服务器上报的状态信息。这里的状态信息同样可包括服务器状态信息或业务状态信息,这里服务器状态信息和业务状态信息的具体信息构成可以参见上述实施例。总之,所述服务器状态信息能够用于指示所述DNS服务器的当前运行状态;所述业务状态信息能够用于指示所述DNS请求的响应状态。

在步骤220中将根据状态信息,确定DNS服务器的当前负载是否超过扩容阈值。例如,在该DNS系统中包括N台DNS服务器,若根据所述状态信息确定出当前DNS系统中的负载量超过了DNS系统可承受的80%,若不增加DNS服务器就可能导致DNS请求响应速度慢及各个DNS服务器都工作在重负载区间等问题。在步骤S230则将新增DNS服务器。这里的新增DNS服务器可包括启动已经配置好的DNS待用的服务器,还可包括:在云系统中增加新的虚拟DNS服务器。

总之,在本实施例中当所述当前负载大于扩容阈值时,将新增DNS服务器,实现自动扩容,避免DNS系统的超负现象;且该扩容方法可为应用于各种电子设备(如前述管理器)中的自动扩容方法,在没有工作人员的参与情况下,所述管理器可以自动完成DNS服务器的增加,实现自动扩容;具有智能性高,有利于DNS系统工作在正常负载区间,且能够缓解DNS系统因过载导致的响应 速度慢的现象。

进一步地,所述方法还包括:为所述新增DNS服务器进行信息配置,形成配置信息;

将所述配置信息下发给控制器;所述配置信息,用于所述控制器形成用于转发的流表和/或制定负载均衡策略;其中,所述负载均衡策略,用于使响应DNS请求的至少两台DNS服务器的负载均衡。

在本实施例中所述DNS服务器的配置信息可包括新增DNS服务器的IP地址、在转发器上的连接端口号等信息。

本实施例的流表和所述负载均衡策略可以参见前述实施例,在此就不重复了。

当然本实施例所述方法还包括:根据所述状态信息,确实所述DNS服务器是否异常;若有所述DNS服务器异常,则发出异常警报。

在本实施例所述DNS服务器异常可包括DNS服务器不可达、DNS服务器不可用等异常状态。例如,在步骤S210在指定时间未接收到DNS服务器上报的状态信息,可确定为所述DNS服务器可能出现线路故障等不可达或不可用现象。再比如,所述管理器根据DNS服务器上报的状态信息,分析出DNS服务器出现死机现象,这个时候,显然出现了DNS服务器不可用等异常。

当检测到异常时,本实施例所述方法还包括输出异常警报,该异常警报可发送给工作人员的工作设备上,提示需要对DNS服务器进行检修。所述警告信息可包括异常DNS服务器的标识、位置、异常分析信息等;方便工作人员及时定位DNS服务器,并定位DNS服务器的异常原因。

实施例三:

如图4所示,本实施例提供一种控制器,所述控制器包括:

第一获取单元110,用于获取至少两台域名系统DNS服务器的状态信息;

制定单元120,用于根据所述状态信息制定负载均衡策略;

其中,所述负载均衡策略用于使响应DNS请求的至少两台DNS服务器的负载均衡。

本实施例所述的控制器可对应于各种类型的电子设备,例如笔记本电脑、台式电脑或服务器等。所述第一获取单元110可包括通信接口,这里的通信接口可为有线接口或无线接口,能够从DNS服务器或其他设备上接收所述状态信息。所述状态信息的详细描述可以参见实施例一,在此就不重复了。

所述制定单元120对应的硬件结构可包括处理器或处理电路、该处理器可包括中央处理器、数字信号处理器、微处理器或可编程阵列等结构。所述处理电路可包括专用集成电路。

所述处理器或处理电路将根据所述状态信息指定出负载均衡策略,方便DNS中进行响应调度的设备,根据所述负载均衡策略进行DNS请求的均衡调度,减少DNS中负载不均衡的现象及不均衡导致的响应速率慢及资源利用率低的现象。

所述控制器还包括:

转发单元,用于将所述负载均衡策略下发给转发器;

其中,所述负载均衡策略,具体用于所述转发器确定响应DNS请求的DNS服务器。

本实施例所述的转发单元可对应于通信接口,能够将所述负载均衡策略,发送给负责响应调度的转发器,以实现DNS内DNS服务器的负载均衡。

此外,所述转发单元,还用于将流表下发给所述转发器;其中,所述流表至少包括DNS服务器连接在所述转发器上的端口号;所述负载均衡策略,具体用于所述转发器确定转发所述DNS请求的端口。这样方便所述转发器根据所述流表简便进行DNS请求的均衡调度。

具体地,所述制定单元120,具体用于选取所述状态信息中用于进行负载均衡的指定状态参数;获取所述指定状态参数的权值;依据所述指定状态参数及所述权值,确定各台所述DNS服务器之间的当前负载比;及基于所述负载比,确定均衡比。

本实施例所述制定单元120计算器或具有计算功能的处理器等,能够根据指定状态参数及权值计算出各个DNS服务器的当前负载的负载比,进而能够简 便的根据负载比,确定出均衡比。这样话,若根据均衡比进行DNS请求响应的调度,能够实现DNS内各个DNS服务器的负载均衡。

作为本实施例的进一步改进,所述控制器还可包括:

确定单元,用于根据所述状态信息,确定所述DNS服务器的当前负载是否超过扩容阈值;

第一扩容单元,用于当所述当前负载超过所述扩容阈值时,新增DNS服务器。

这里的确定单元和第一扩容单元的具体结构同样可对应于处理器或处理电路等结构,所述处理器或处理电路通过预定指令的执行,能够实现判断出DNS服务器的当前负载是否超过扩容阈值,若超过了进行自动扩容,一方面能够提高在域名系统中DNS服务器的负载较高时的响应速率,一方面自动实现扩容,减少了维护人员的操作,提升了系统的智能性。

显然本实施例所述的控制器,不仅能够进行负载均衡,还能够自动扩容,进一步提高了智能性。

实施例四:

如图5所示,本实施例提供一种管理器,所述管理器包括:

第二获取单元210,用于获取DNS服务器的状态信息;

判断单元220,用于根据所述状态信息,确定DNS服务器的当前负载是否超过扩容阈值;

第二扩容单元230,用于当所述当前负载超过所述扩容阈值时,新增DNS服务器。

本实施例所述的管理器可对应于各种能够进行信息处理的电子设备。本实施例所述的管理可为与DNS服务器连接的设备。

所述第二获取单元210的具体结构可对应于各种通信接口,能够从DNS服务器定期或不定期的从DNS服务器接收所述状态信息,该状态信息可包括前述的服务器状态信息或业务状态信息。

所述判断单元220和所述第二扩容单元230都可对应于处理器或处理电路。 这里的处理器和处理电路的具体结构与前述实施例中的处理器或处理电路类似。总之,本发明实施例中所述的处理器或处理电路能够通过对指定代码的执行,实现对应功能单元的功能。

在本实施例中所述判断单元220可包括比较器或比较电路,通过将当前负载与扩容阈值进行比较,确定出当前负载是否超过扩容阈值。

所述第二扩容单元230将在当前负载大于扩容阈值时,新增DNS服务器,从而提升DNS的响应DNS请求的负载容量。

本实施例所述管理器能够自动根据状态信息自动进行DNS服务器的增加,实现自动扩容,相对于现有技术中工作人员的手动扩容,具有智能性高的特点。

所述管理器还包括:

形成单元,用于为所述新增DNS服务器进行信息配置,形成配置信息;

下发单元,用于将所述配置信息下发给控制器;

所述配置信息,用于所述控制器形成用于转发的流表和/或制定负载均衡策略;其中,所述负载均衡策略,用于使响应DNS请求的至少两台DNS服务器的负载均衡。

所述形成单元同样的可对应于处理器或处理电路,能够根据新增的DNS服务器进行信息配置,形成配置信息。这里的配置信息可包括DNS服务器的IP地址,与转发器的连接的转发器端口等信息。

所述下发单元可包括通信接口,能够将所述配置信息发送给控制器,这样控制器就知道了有新增DNS服务器,同时所述控制器还将用于利用所述配置信息形成流表和/或更新负载均衡策略。

进一步地,所述管理器还包括:

确定单元,用于根据所述状态信息,确实所述DNS服务器是否异常;

输出单元,用于若有所述DNS服务器异常,则发出异常警报。

所述确定单元同一可对应于所述处理器或处理电路。所述处理器或处理电路通过代码执行,能够通过状态信息的分析,确定出是否有DNS服务器的异常。

所述输出单元可包括显示屏或音频输出器或警报灯等结构,输出异常警报。 当然所述输出单元还可包括通信接口,将异常警报发送给指定设备,例如工作人员的工作设备,以提示工作人员DNS中有DNS服务器异常,尽快排出异常。

总之,本实施例所述管理器能够自动进行DSN服务器的扩容及异常警报的输出。

实施例五:

如图6所示,本实施例提供一种域名系统DNS,所述DNS包括:

至少两台DNS服务器310;

管理器320,与所述DNS服务器相连,用于接收DNS服务器上报的状态信息;根据所述状态信息进行DNS服务器扩容;

控制器330,与所述管理器相连,从所述管理器320接收所述状信息,根据所述状态信息指定负载均衡策略;

转发器340,分别于所述控制器330和所述DNS服务器相连,从所述控制器接收所述负载均衡策略,根据所述负载均衡策略确定响应DNS请求的所述DNS服务服务器。

在本实施例中所述管理器320与DNS服务器310,将会接收DNS服务器上报的状态信息,根据状态信息自动确定DNS服务器的扩容。

所述控制器330与管理器320相连,接收管理器320发送的状态信息,制定出负载均衡策略。将负载均衡策略发送给转发器340进行响应DNS请求的响应调度。

本实施例提供的DNS既能够实现自动扩容,还能够实现自动的负载均衡。进一步地,所述管理器320还用于根据状态信息,确定是否有DNS服务器异常,若有DNS服务器异常则输出异常警报。本实施例所述管理器320还能够自动的输出异常警报,减少有些故障的DNS服务器没有被检测出导致的DNS请求无法响应的现象。

例如,本实施例的DNS包括管理器、控制器、转发去i和多台DNS服务器几部分构成。该DNS使用统一的管理器与控制器,对多个DNS服务器进行集中管理与控制。DNS各部分的功能与作用如下:

DNS服务器:多个DNS服务器接受其统一管理,为客户端提供相同的DNS递归服务,可配置私网地址,对外呈现一个公网IP地址。DNS服务器可以是物理服务器,也可以是虚机服务器。各台DNS服务器除了处理用户的DNS请求外,还向管理器上报服务器的各种状态信息与业务信息,包括物理服务器或虚机上的CPU、内存、流量、会话数等信息。上述信息获取可通过http-get报文获取,也可用其他协议交互。

管理器:管理多台DNS服务器,主要功能有两个:一是负责收集DNS服务器的状态信息,发送给控制器,并动态更新。二是管理DNS服务器,当服务器过载时,管理器自动下发扩展命令,扩展出新的DNS服务器,并将配置信息上报给控制器。

控制器:根据管理器上报的服务器的状态信息,制定出负载均衡策略,并以流表形式下发给交换机。负载均衡策略会根据服务器状态的更新而实时调整变化。

转发器:负责报文的具体转发,与控制器之间运行openflow协议,接收控制器下发的流表,根据流表匹配进行转发操作。转发器的功能主要有:一是使用流表匹配,过滤掉UDP目的端口53之外的流量。二是做目的地址转换,将用户对DNS公网地址的访问,转换成具体DNS服务器的私网。

总之,本实施例所述的DNS可以运行前述实施例中所述信息处理方法及DN服务器扩容方法。

以下结合上述任意一个技术方案,提供几个具体示例:

示例一:

如图7所示,本示例提供基于上述域名系统DNS的信息处理方法,包括:

步骤1:DNS服务器310定期上报状态信息。

步骤2.1:管理器320将状态信息上报给控制器。

步骤3.1:管理器320针对DNS服务器的异常发出异常报警。

步骤4:控制器330向转发器340下发流表。

步骤5:控制器向转发器下发负载均衡策略。这里的负载均衡策略是根据 前述状态信息制定的。

示例二:

如图8所示,本示例提供基于上述域名系统DNS的信息处理方法,包括:

步骤1:DNS服务器310定期上报状态信息。

步骤2.1:管理器320将状态信息上报给控制器。

步骤3.1:管理器320针对DNS服务器的异常发出异常报警。

步骤2.2:管理器320判断当前负载是否大于扩容负载

步骤3.2:管理器320在当前负载大于扩容负载是,自动下发扩容指令,新增DNS服务器并加载配置信息。

步骤4:控制器330向转发器340下发流表。

步骤5:控制器向转发器下发负载均衡策略。这里的负载均衡策略是根据前述状态信息制定的。

示例三:

如图9所示,本示例提供的方法包括:

接收客户端发送的DNS请求;

转发器匹配端口。

判断端口是否为53,若否则丢弃该DNS请求,防止报文洪水攻击;若是进入下一步骤。

转发器根据负载均衡策略进行DNS请求转发。

DNS服务器通过缓存和递归查询,完成域名解析,响应DNS请求。

客户端使用DNS记录上网。

示例四:

本示例提供一种负载均衡方法包括:

DNS服务器,通过http报文,向管理器定期上报服务器的运行状态信息,包括但不限于如下:

服务器状态:CPU、内存、磁盘空间、流量、时延、连接数等;

业务状态:DNS查询状态信息、应答状态信息、发送状态信息、接收状态 信息的等。

管理器接收服务器上报的状态信息,并检测DNS服务器是否异常,异常状态包括:服务器不可达,DNS服务不可用等。然后将上述信息上报给控制器。对状态异常的服务器,管理器可发出告警信息。

控制器收到管理器上报的各种信息,排除掉状态异常的服务器,在状态正常的服务器间执行负载均衡的算法,制定负载均衡策略。由于控制器上收集了各台服务器的状态信息,可以结合业务需求和应用场景灵活选取参数,制定负载均衡策略。可选取多个参数,根据重要程度分别设置不同的权重,由加权结果确定负载均衡的比例。

例如:选取CPU、内存和连接数三个参数,分别设置权重CPU为40%,内存为30%,连接数为30%,根据加权计算后,服务器A加权得数:服务器B加权得数:服务器C加权得数=1:2:3,则对于三个服务器承担业务负载均衡后应该为3:2:1。

控制器将负载均衡策略发送给转发器,并通过openflow协议,下发流表引导流量去往某台DNS服务器。如:三台服务器地址分别为192.168.10.11/24,192.168.10.12/24,192.168.10.13/24,分别连接在转发器的端口port5,port6,port7,则下发三条流表分别指向3台DNS服务器。

转发器依据负载均衡策略,依据流表将用户请求转发到某一台服务器,根据流表进行转发。

示例五:

本示例提供一种DNS服务器自动扩容方法包括:

DNS服务器上报状态信息。

管理器预先设置了进行DNS服务器扩容的扩容阈值,例如:服务器流量大于80%视为过载。管理器根据服务器状态信息,判断出服务器发生过载。

管理器向DNS服务器发出扩展指令,增加一台新的DNS服务器(物理服务器和虚机服务器)并加载配置信息。如:服务器地址为192.168.10.14,连接转发器的端口port8。

管理器向控制器上报新增的DNS服务器配置信息等。

控制器为新增的DNS服务器配置一条流表下发给转发器,由转发器将流量引导到新增的DNS服务器上。这里的流量为包括DNS请求的数据流量,进而由DNS服务器来响应DNS请求。

随着管理器更新DNS服务器的状态信息,控制器更新负载均衡策略,使得DNS的解析请求在几台DNS服务器达到之间均衡。

本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。

在本发明所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为 单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个第二处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1