基于剩余带宽的多路dns动态分发方法

文档序号:10515403阅读:646来源:国知局
基于剩余带宽的多路dns动态分发方法
【专利摘要】基于剩余带宽的多路DNS动态分发方法。本发明涉及对DNS(域名解析服务)请求进行动态智能分发的原理和算法,其特征是将多条网络出口线路进行分组,通过实时检测每组线路端口的当前流量,根据预设的最大带宽和最小保证剩余带宽,计算每组线路的实时剩余带宽,然后将DNS请求分发至最空闲,即剩余带宽最多的线路组,这样既能在同组线路之间实现高效率的分发,又能使流量在不同组线路之间进行更合理分配。
【专利说明】
基于剩余带宽的多路DNS动态分发方法
技术领域
[0001]本发明涉及对DNS(域名解析服务)请求进行智能分发的原理和算法,尤其是根据多路网络出口带宽的动态流量自动调整DNS递归解析服务器目标地址的方法,属于信息技术领域。
【背景技术】
[0002]随着互联网和移动互联网的飞速发展,企业和机构内更多的客户端,包括电脑、PAD、手机以及其他有线或无线联网的终端设备,都需要大量地访问外部的网站或网络应用,从而占用越来越多的网络出口带宽,为了满足不断增长的网络访问需求,并且保证网络出口的稳定可靠,许多企业和机构都会开通多条的广域网出口线路,这些出口线路,往往都连接至不同的电信服务商或者网络运营商。
[0003]企业和机构在拥有多条广域网出口线路时,就必然面临如何在多条线路间分配和控制网络访问流量的问题。如果没有合理的流量分发,就极易造成部分线路过于繁忙拥挤甚至堵塞,而有的线路却很空闲的状况,此时不仅造成网络内用户上网慢、访问体验差的问题,还形成了资源的浪费。
[0004]用户在访问网站或者网络应用时,所发生的网络通信,可以分为两个阶段,第一阶段为域名解析阶段,该阶段用户客户端需要访问一个提供域名解析服务(DNS)的服务器,向该服务器发出域名解析请求,由该服务器给出用户所访问网站或应用的目标IP地址;第二阶段就是内容获取和交互阶段,由客户端根据DNS服务器给出的目标IP地址,向该目标服务器发起具体的内容访问请求。出口流量的分配和控制就是根据这两个阶段的不同通信方式和特点进行的。其中第二阶段的流量控制相对比较简单,一般都是根据目标IP地址,依据路由器上制定的路由策略来控制流量的走向。而第一阶段的流量分配则有更大的不确定性,因为一开始我们并不知道用户的目标网站或应用的IP地址,用户所要的域名解析服务,一般都由网络运营商来提供,因此不同线路都采用不同的DNS服务器,才能达到最快的响应。通常在这一阶段,大家都使用了多个DNS的方式来满足客户端的请求,多个DNS之间则按顺序轮流的分发,这种方式的结果是将网络流量平均地分配到多条出口线路上,但在大多数情况下,这种方式并不是最优的解决办法,因为多条出口线路的带宽容量往往差别甚大,实际的负载情况也千变万化。
[0005]本发明就是针对上述网络访问的第一阶段,将用户客户端的域名解析请求流量在多条出口线路间进行动态地智能分发,从而达到网络流量的合理分配,充分利用出口带宽资源,避免网络出口的不必要拥挤,从而提高用户网络访问速度,提升网络应用的用户体验。

【发明内容】

[0006]众多客户端,包括电脑、PAD、手机以及其他有线或无线联网的终端设备,访问网站或网络应用,需要请求域名解析服务(DNS),作为网关或者路由设备,对这些请求必须提供一个DNS递归解析服务器的IP地址,以便客户端向该服务器发送域名解析的请求信息,以往的网关或者路由器,会提供一个固定的DNS服务器地址,或者多个DNS服务器地址按顺序轮流地提供给客户端。我们的发明,改变了这种死板的DNS服务器地址提供方式,而是设计了一个算法,该算法可以根据整个网络的出口带宽使用现状,自动选择不同的DNS服务器地址给客户端,从而达到在多条出口线路间合理分发流量的目的。
[0007]该算法的原理如下:
1、将所有广域网出口线路根据实际情况(比如按不同运营商或者不同的用途)分为N组,每组包含一个或多个广域网出口,每组都可预置一个或多个DNS服务器分发地址。
[0008]2、这N组出口线路,其出口总带宽分别为BWl,BW2,…,BWn,其中上行带宽分别为Bff _U I, Bff_U2,..., BW_Un,下行带宽分别为 BW_D1,Bff_D2,..., BW_Dn,通过检测获得当前各出口的上行流量分别为FL_U1,FL_U2 ,…,FL_Un,下行流量分别为FL_D1,FL_D2,..., FL_Dn
3、流量计算方式可选择三种之一:I)按总流量,即流量Fn = FL_Un + FL_Dn,带宽参数Bn = Bffn 2)按上行流量,即流量Fn = FL_Un,带宽参数Bn = BW_Un 3)按下行流量,即流量Fn = FL_Dn,带宽参数Bn = Bff_Dn如果选择按总流量,则对应的带宽则选择总带宽;按上行流量,对应的带宽则选择上行带宽;按下行流量,对应的带宽则选择下行带宽。
[0009]4、根据选定的流量计算方式,就可得到N组线路的带宽参数BI,B2,…,Bn,通过检测各线路端口的流量得到N组线路的当前流量为Fl,F2,…,Fn。
[0010]5、为每组线路设定一个最小的保证剩余带宽Gl,G2,…,Gn,当一组线路上的剩余带宽小于该值时,不应该再分发至该线路,除非其它所有线路的剩余带宽均低于其最小保证剩余带宽。
[0011]6、剩余带宽优先策略:即每次都选择剩余带宽值最大的线路组进行分发。每组线路的剩余带宽=Bn - Fn - Gn。
[0012]7、如果同一线路组里定义了多个DNS服务器转发地址,则选择该组线路进行分发时,多个DNS地址间采用按顺序轮流选中进行分发。
[0013]
本发明具有如下显著特点:
1、对网络出口线路进行分组,每组都可设定自己的DNS分发地址,并对每组线路的上、下行流量进行实时检测,这样既能在相同运营商的线路之间实现高效率的分发,又能使流量在不同运营商之间进行更合理分配;
2、对客户端的DNS请求,根据每组线路的当前流量负载不同而进行动态的分发,即选择剩余带宽最多的线路组进行分发;
3、对每组线路可设定最小保证剩余带宽,从而保护某些关键性线路的通畅。
【主权项】
1.一种动态分发DNS请求的方法,其特征是实时检测多个网络出口带宽的当前流量,并实时计算每组线路的剩余带宽,将DNS请求分发至最空闲,即剩余带宽最多的线路组,从而使多条线路上的流量保持合理均衡。2.对多个网络出口线路实行分组管理,用户可自由分组,每组都可设定不同的DNS分发地址。3.根据权利要求1所述的剩余带宽计算,允许用户按总流量、上行流量和下行流量三种方式中任一种方式进行计算,并可为每组线路预留最小保证带宽。
【文档编号】H04L29/12GK105871748SQ201610325483
【公开日】2016年8月17日
【申请日】2016年5月17日
【发明人】周艾钧
【申请人】上海域鸣网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1