一种状态共享的分布式多出口路由选择方法与流程

文档序号:23901597发布日期:2021-02-09 13:44阅读:120来源:国知局
一种状态共享的分布式多出口路由选择方法与流程

[0001]
本发明涉及计算机网络技术领域,具体为一种状态共享的分布式多出口路由选择方法。


背景技术:

[0002]
随着互联网带宽的不断增长以及用户接入方式的不断变化,用户对于互联网的访问需求越来越大,同时用户也希望上网变得尽可能的简单与便捷,减少繁琐的配置,然而,现在的网络环境具有相当的不确定性,访问同一网站会存在多条可用的路由,且同一网页之上会包含多种超链接,这些超链接可用的路由出口也可能各不相同,然而实际使用时用户流量往往只会被引导到一个出口之上,并不能很好地适应多变的网络环境。
[0003]
在现有技术中,针对多出口路由的选路方法主要分为两类,静态选路和动态选路,采用静态选路时,由于各出口网段的地址分配并不连续,在大型和复杂的网络环境下整个路由表的规模较为庞大,如果将这些规则全部固化到内核中将过多的占用系统资源,采用动态选路时,在确定了rtt最小的出口之后再把后续请求从该出口转发出去,无论是哪种方式,都需要在请求到来时启动探测过程来确定最优的出口,从而给系统带来比较大的运行时开销,系统也需要较多的调度时间,可能对用户体验造成负面影响,因此,现有的选路方法也很难结合用户对链路质量、费用等指标的定制化需求,很难实现精细化的路由管理。


技术实现要素:

[0004]
针对现有技术的不足,本发明提供了一种状态共享的分布式多出口路由选择方法,解决了现有的选路方法也很难结合用户对链路质量、费用等指标的定制化需求,很难实现精细化的路由管理的问题。
[0005]
为实现以上目的,本发明通过以下技术方案予以实现:一种状态共享的分布式多出口路由选择方法包括以下步骤:
[0006]
s1、用户侧接入,用户侧接入模块采用分布式的部署架构,由部署在靠近用户侧的数据转发模块(服务器)和探测模块(服务器)组成;
[0007]
s2、理由管理,路由管理中心作为一个中心节点,为各个数据转发服务器和不同的路由出口分配特定的id,负责汇总各个节点上报的路由策略信息,并开放api接口供数据转发服务器获取其他节点的路由策略;
[0008]
s3、空闲时探测,空闲时探测模块作为路由策略选择的参考,动态运行在各个探测服务器之上,为了节约带宽成本,不过度占用转发用户数据所需的资源,只有当用户侧接入节点带宽上的流量负载百分比小于阈值k时,才会启动空闲时探测模块。
[0009]
进一步地,在所述步骤s1中,一个用户接入服务器节点由多个服务器构成,这些服务器根据功能可以划分为两类:数据转发服务器和路由探测服务器。
[0010]
进一步地,在所述步骤s1中,据转发服务器可以按照地理位置来区分各自负责的接入范围,同一个数据转发服务器节点可以连接到多个路由出口之上;这些转发服务器共
同构成一个数据转发服务器集群,路由探测服务器则用来执行空闲时探测程序,将探测结果反馈至转发服务器。
[0011]
进一步地,所述步骤s2中,路由管理中心的功能可以分为两类:)面向用户和面向用户侧转发节点。
[0012]
进一步地,面向用户,路由管理中心负责用户注册、权限分配以及用户与接入节点的绑定,为用户提供api供其定制符合其权限的链路需求。
[0013]
进一步地,面向用户侧转发节点,路由管理中心负责三个方面:(1)下发用户信息至用户侧转发节点;(2)接收用户侧转发节点上传的路由策略,对所有节点的路由策略进行汇总;(3)接收用户侧转发节点的同步请求。
[0014]
进一步地,在步骤s1中,用户侧接入服务器在接收到用户的数据后的执行流程可以分为以下5个步骤:
[0015]
s11、首先根据用户的标识判定其是否有自定义的路由策略,并根据其自定义策略转发数据至指定的路由出口;
[0016]
s12、若用户不存在自定义策略,则根据数据包的目的地址查找已有的路由策略;
[0017]
s13、在将用户数据转发出去后,若超过设定时间还未收到响应,也表明当前出口链路存在问题,转向步骤s14,否则结束整个转发流程;
[0018]
s14、响应超时后,启动出口探测功能,出口探测通过测量不同出口链路的ttl等性能指标,若有可用的其他出口,则将数据从该出口转发出去,转向步骤s13;同时进行步骤s15,调整已有的路由策略;
[0019]
s15、路由策略的更新可以分为两方面:若目的地址在已有的路由策略中,则更新对应的出口;若目的地址不在已有的路由策略中,则将该地址及其对应出口添加到路由策略中。
[0020]
进一步地,在所述步骤s14中,除了在转发用户数据之前主动探测链路质量外,还可以将用户请求数据复制后,同时向多个出口转发数据。
[0021]
进一步地,在所述步骤s3中,有如下5个步骤:
[0022]
s31、获取探测数据;
[0023]
s32、执行探测;
[0024]
s33、路由策略更新;
[0025]
s34、结果上报;
[0026]
s35、进入等待状态,等待下一次空闲时启动。
[0027]
进一步地,在所述步骤s31中,探测数据来自于两方面:一是数据转发服务器上自身的路由策略,二是从路由管理中心同步来的其他节点的路由策略中。
[0028]
该状态共享的分布式多出口路由选择方法,通过用户侧接入采用分布式的部署架构,每个数据转发服务器都对应有一个默认的路由出口,以及多个可选的其他出口,再通过路由管理和空闲探测共同作用,使得用户上网时可以合理地选择路由线路并正确为用户通过多个出口建立到所有超链接的连接,才能够提升整个网络的效率,改进用户体验,实现用户对链路质量、费用等指标的定制化需求和精细化的路由管理。
附图说明
[0029]
图1为本本发明中多出口网络环境的架构图;
[0030]
图2为本本发明内中用户侧接入服务器处理用户数据的流程图;
[0031]
图3为同时向多个出口转发用户数据过程的示意图;
[0032]
图4为空闲时探测模块的流程图。
具体实施方式
[0033]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034]
请参阅图1-4,本发明提供一种技术方案:一种状态共享的分布式多出口路由选择方法包括以下步骤:
[0035]
s1、用户侧接入,用户侧接入模块采用分布式的部署架构,由部署在靠近用户侧的数据转发模块(服务器)和探测模块(服务器)组成;
[0036]
s2、理由管理,路由管理中心作为一个中心节点,为各个数据转发服务器和不同的路由出口分配特定的id,负责汇总各个节点上报的路由策略信息,并开放api接口供数据转发服务器获取其他节点的路由策略;
[0037]
s3、空闲时探测,空闲时探测模块作为路由策略选择的参考,动态运行在各个探测服务器之上,为了节约带宽成本,不过度占用转发用户数据所需的资源,只有当用户侧接入节点带宽上的流量负载百分比小于阈值k时,才会启动空闲时探测模块。
[0038]
在所述步骤s1中,一个用户接入服务器节点由多个服务器构成,这些服务器根据功能可以划分为两类:数据转发服务器和路由探测服务器。
[0039]
探测分为两部分:(1)针对已存储的目的地址及其路由策略,重新探测各个出口链路状态及其链路质量,以确定现有策略是否失效,即是否可以改为通过默认出口转发;(2)针对从路由管理中心同步来的其他节点的路由表,选择其中的topn项进行探测,以确定是否存在优于原路由的出口选择,最终,根据探测结果调整已有路由策略,并将更新后的路由策略同步至管理中心。
[0040]
在所述步骤s1中,据转发服务器可以按照地理位置来区分各自负责的接入范围,同一个数据转发服务器节点可以连接到多个路由出口之上;这些转发服务器共同构成一个数据转发服务器集群,路由探测服务器则用来执行空闲时探测程序,将探测结果反馈至转发服务器。
[0041]
用户侧接入节点与路由管理中心通过隧道、vpn等技术建立专用连接,实现路由信息的上报和其他节点路由策略的同步,由于用户侧接入节点会定时与路由管理中心同步其他节点的路由策略,因此多个用户侧接入服务器节点之间可以看作是在一定时间内共享各自的路由状态信息,此外,路由策略的同步操作采取增量更新的方式,只需要更新那些发生改变的路由策略。
[0042]
所述步骤s2中,路由管理中心的功能可以分为两类:(1)面向用户和面向用户侧转发节点。
[0043]
面向用户,路由管理中心负责用户注册、权限分配以及用户与接入节点的绑定,为用户提供api供其定制符合其权限的链路需求。
[0044]
面向用户侧转发节点,路由管理中心负责三个方面:(1)下发用户信息至用户侧转发节点;(2)接收用户侧转发节点上传的路由策略,对所有节点的路由策略进行汇总;(3)接收用户侧转发节点的同步请求。
[0045]
在步骤s1中,用户侧接入服务器在接收到用户的数据后的执行流程可以分为以下5个步骤:
[0046]
s11、首先根据用户的标识判定其是否有自定义的路由策略,并根据其自定义策略转发数据至指定的路由出口;
[0047]
还可以根据用户的权限区分优先级,为高权限用户提供优先转发通道。
[0048]
s12、若用户不存在自定义策略,则根据数据包的目的地址查找已有的路由策略;
[0049]
若在已有策略中命中,则转发至对应的路由出口;若不在已有的路由策略中,则通过默认出口转发。
[0050]
s13、在将用户数据转发出去后,若超过设定时间还未收到响应,也表明当前出口链路存在问题,转向步骤s14,否则结束整个转发流程;
[0051]
s14、响应超时后,启动出口探测功能,出口探测通过测量不同出口链路的ttl等性能指标,若有可用的其他出口,则将数据从该出口转发出去,转向步骤s13;同时进行步骤s15,调整已有的路由策略;
[0052]
若在已有策略中命中,则转发至对应的路由出口;若不在已有的路由策略中,则通过默认出口转发;
[0053]
s15、路由策略的更新可以分为两方面:若目的地址在已有的路由策略中,则更新对应的出口;若目的地址不在已有的路由策略中,则将该地址及其对应出口添加到路由策略中。
[0054]
在所述步骤s14中,除了在转发用户数据之前主动探测链路质量外,还可以将用户请求数据复制后,同时向多个出口转发数据。
[0055]
如图3所示,数据转发服务器将用户请求复制并转发到出口1和出口2,之后将最早到达的响应转发给用户,摒弃其他响应;同时选择响应最先到达的那个出口作为转发用户后续数据的出口。
[0056]
在所述步骤s3中,有如下5个步骤:
[0057]
s31、获取探测数据;
[0058]
s32、执行探测;
[0059]
s33、路由策略更新;
[0060]
s34、结果上报;
[0061]
s35、进入等待状态,等待下一次空闲时启动。
[0062]
探测需要针对多个出口同时进行,探测的方式可以先通过icmp探测出口链路的连通情况以及链路延迟等性能指标;接着可以通过模拟用户行为,向目的地址上承载的站点发送http/https请求,测试通过不同出口访问同一目的地址的服务质量;
[0063]
对不同出口链路执行探测后,选择链路质量最优的出口作为对应目的地址的路由出口,若对于某一目的地址选择的出口不为数据转发服务器的默认出口,则将其更新到已
有的路由策略之中;
[0064]
向路由管理中心上报本节点更新后的路由策略,同时,若在针对其他节点的路由策略的探测中发现异常或更优的出口选择,也需向路由管理中心上报,交由路由管理中心通知其他节点。
[0065]
在所述步骤s31中,探测数据来自于两方面:一是数据转发服务器上自身的路由策略,二是从路由管理中心同步来的其他节点的路由策略中。
[0066]
工作时:
[0067]
s1:用户侧接入时,例如为不同地区的用户配置不同的转发服务器,每个数据转发服务器都对应有一个默认的路由出口,以及多个可选的其他出口。为了最小化转发服务器上的存储开销,转发服务器被设计为不必为所有目的地址存储对应的路由策略,而仅需要为那些通过其他出口(非默认出口)转发的性能优于通过默认出口转发的性能的目的地址存储对应的最优路由策略即可(这里所述的性能可以由rtt、跳数等多种指标构成),此部分将以空闲时探测模块给出的结果为基础,再结合到各个出口的链路的运行时状态进行适当的动态调整,部署在各地的数据转发服务器之间、数据转发服务器与路由管理中心服务器之间可以通过专用隧道、vpn专线等数据封装技术连接成为一个完整的分布式网络,作为分布式架构中的单个节点,每个数据转发服务器仅需负责各自区域的路由信息,并将各自的最优路由策略定期上报给路由管理中心,并从路由管理中心定期同步其他节点保存的最优路由策略。
[0068]
s2:路由管理中心作为一个中心节点,为各个数据转发服务器和不同的路由出口分配特定的id,负责汇总各个节点上报的路由策略信息,并开放api 接口供数据转发服务器获取其他节点的路由策略,此外,路由管理中心还会为用户提供api用来实现定制化的链路设置,向用户返回最能满足其需求的数据转发服务器地址,并将用户设定下发到对应的数据转发服务器。
[0069]
s3:空闲时探测模块作为路由策略选择的参考,动态运行在各个探测服务器之上,为了节约带宽成本,不过度占用转发用户数据所需的资源,只有当用户侧接入节点带宽上的流量负载百分比小于阈值k时,才会启动空闲时探测模块,探测分为两部分:(1)针对已存储的目的地址及其路由策略,重新探测各个出口链路状态及其链路质量,以确定现有策略是否失效,即是否可以改为通过默认出口转发;(2)针对从路由管理中心同步来的其他节点的路由表,选择其中的topn项进行探测,以确定是否存在优于原路由的出口选择,最终,根据探测结果调整已有路由策略,并将更新后的路由策略同步至管理中心。
[0070]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
[0071]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1