本文作者:kaifamei

一种路由分发方法、装置和设备与流程

更新时间:2025-12-20 06:46:24 0条评论

一种路由分发方法、装置和设备与流程



1.本技术涉及网络技术领域,尤其涉及一种路由分发方法、装置和设备。


背景技术:



2.随着网络技术的发展,网关和节点的数量在不断增加,导致网络规模也越来越大。
3.在现有网络中,网关或总线通过路由分发将视频、音频、web网页等发送到最接近用户的网络边缘,使用户可以获取到所需内容。在进行路由分发时,大都基于响应时间、链接数hash等。现有的路由分发虽然可以取得一定的分发效果,但是未考虑服务端的实际服务情况,使得分发时的考虑因素不够全面且也未反应实际服务端的具体链路质量。


技术实现要素:



4.有鉴于此,本技术提供了一种路由分发方法、装置和设备,考虑服务端的实际服务情况,使得分发时的考虑因素全面且也能够反应实际服务端的具体链路质量。
5.本技术第一方面提供了一种路由分发方法,包括:
6.获取应用系统中的链路在上一周期时的响应状态码;
7.计算所述响应状态码为正常状态码时的码比率;
8.利用链路分发权重动态调整算法,计算所述码比率对应的链路权重;
9.当所述链路权重在标准链路权重范围内时,将所述链路权重作为所述链路在下一周期时的目标链路权重,以基于所述目标链路权重对所述链路进行路由分发。
10.可选地,计算所述响应状态码为正常状态码时的码比率,具体包括:
11.统计所述链路在上一周期时响应状态码的总数量;
12.统计所述链路在上一周期时响应状态码为正常状态码的码数量;
13.根据所述码数量和所述总数量,计算所述响应状态码为正常状态码时的码比率。
14.可选地,计算所述响应状态码为正常状态码时的码比率,之前还包括:
15.删除所述响应状态码中的异常数据。
16.可选地,所述异常数据包括:空值的响应状态码和响应时长超过预设时长的响应状态码。
17.可选地,利用链路分发权重动态调整算法,计算所述码比率对应的链路权重,具体包括:
18.获取链路分发权重动态调整算法对应的计算公式;
19.基于所述计算公式,计算所述码比率对应的链路权重,其中,所述计算公式为:
[0020][0021]
式中,rw为链路权重,nri为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,mw为各个链路的质量权重之和,a1、a2为常数,a1+a2=1。
[0022]
本技术第二方面提供了一种路由分发装置,包括:
[0023]
获取单元,用于获取应用系统中的链路在上一周期时的响应状态码;
[0024]
第一计算单元,用于计算所述响应状态码为正常状态码时的码比率;
[0025]
第二计算单元,用于利用链路分发权重动态调整算法,计算所述码比率对应的链路权重;
[0026]
赋值单元,用于当所述链路权重在标准链路权重范围内时,将所述链路权重作为所述链路在下一周期时的目标链路权重,以基于所述目标链路权重对所述链路进行路由分发。
[0027]
可选地,所述第一计算单元具体包括:
[0028]
第一统计子单元,用于统计所述链路在上一周期时响应状态码的总数量;
[0029]
第二统计子单元,用于统计所述链路在上一周期时响应状态码为正常状态码的码数量;
[0030]
第一计算子单元,用于根据所述码数量和所述总数量,计算所述响应状态码为正常状态码时的码比率。
[0031]
可选地,所述装置还包括:
[0032]
删除单元,用于删除所述响应状态码中的异常数据。
[0033]
可选地,所述第二计算单元具体包括:
[0034]
获取子单元,用于获取链路分发权重动态调整算法对应的计算公式;
[0035]
第二计算子单元,用于基于所述计算公式,计算所述码比率对应的链路权重,其中,所述计算公式为:
[0036][0037]
式中,rw为链路权重,nri为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,mw为各个链路的质量权重之和,a1、a2为常数,a1+a2=1。
[0038]
本技术第三方面提供了一种路由分发设备,包括处理器以及存储器;
[0039]
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0040]
所述处理器用于根据所述程序代码中的指令执行任一种第一方面所述的路由分发方法。
[0041]
从以上技术方案可以看出,本技术具有以下优点:
[0042]
本技术中路由分发方法包括:获取应用系统中的链路在上一周期时的响应状态码;计算响应状态码为正常状态码时的码比率;利用链路分发权重动态调整算法,计算码比率对应的链路权重;当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。
[0043]
为了在当前复杂的互联网环境下提供高质量稳定性的服务,本技术中在进行路由分发时,先获取应用系统中的链路在上一周期时的响应状态码,接着计算响应状态码为正常状态码时的码比率,然后利用链路分发权重动态调整算法,计算码比率对应的链路权重,最后当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发,即本技术提供了基于服务的响应状态码的链路分发权重动态调整方案,丰富了链路分发权重的确定手段,使得链路由分发方案更加贴合服务端的服务运行状态,提升了api服务的整体质量和水平,保护了服务端的持续稳
定的运行。
附图说明
[0044]
为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0045]
图1为本技术实施例中一种路由分发方法的实施例一的流程示意图;
[0046]
图2为本技术实施例中一种路由分发方法的实施例二的流程示意图;
[0047]
图3为本技术实施例中一种路由分发装置的结构示意图。
具体实施方式
[0048]
本技术实施例提供了一种路由分发方法、装置和设备,考虑服务端的实际服务情况,使得分发时的考虑因素全面且也能够反应实际服务端的具体链路质量。
[0049]
为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0050]
本技术实施例第一方面提供了一种路由分发方法的实施例。
[0051]
请参阅图1,本技术实施例中一种路由分发方法的实施例一的流程示意图。
[0052]
本实施例中路由分发方法包括:
[0053]
步骤101、获取应用系统中的链路在上一周期时的响应状态码。
[0054]
响应状态码用以表示服务端的各链路在响应请求时的状态,即服务端在响应请求后,不同的响应状态码代表不同的响应状态,正常响应请求时的响应状态码和未正常响应请求时的响应状态码不相同,例如正常响应时的响应状态码可以为200或者201等,异常响应时的响应状态码可以是404或304等。
[0055]
可以理解的是,步骤101中的应用系统指的是服务端所对应的应用系统,该系统中包括多条链路,在面对一个请求时,这多条链路可能会同时响应,且在一个周期内,可能会获取到多个请求,对应的链路也可能有多个响应状态码。
[0056]
本实施例中的上一周期指的是当前周期的上一个周期,下一周期指的是当前周期的下一个周期。可以理解的是,本实施例中在进行路由分发时,以上一周期、当前周期、下一周期三个周期为一组,在当前周期中对服务端的应用系统在上一周期时的响应状态码进行分析计算,以得到下一周期时应用系统中链路的链路权重,以进行路由分发。
[0057]
需要说明的是,上述的链路可以是应用系统中的某一链路,也可以是部分链路,还可以是全部的链路。当本实施例中的链路为单一的某一链路时,本实施例中的响应状态码即该单一的某一链路的响应状态码;当链路为多个链路(部分链路或全部的链路)时,本实施例中的响应状态码即针对多个链路中的各链路获取各链路对应的响应状态码。在获取到链路对应的响应状态码后,针对各链路执行本实施例中的后续计算方法。
[0058]
步骤102、计算响应状态码为正常状态码时的码比率。
[0059]
可以理解的是,响应状态码不仅包括正常响应时的正常状态码,还包括异常响应时的异常状态码等,而要想提高服务端中链路的服务质量,依据的是正常状态码,故本实施例中计算响应状态码为正常状态码时的码比率。
[0060]
步骤103、利用链路分发权重动态调整算法,计算码比率对应的链路权重。
[0061]
在得到正常状态码对应的码比率后,可以利用链路分发权重动态调整算法,计算该码比率对应的链路权重。
[0062]
步骤104、当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。
[0063]
计算得到链路权重后,为了避免极端情况导致的计算错误,将链路权重和标准链路权重范围进行比较,当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。
[0064]
可以理解的是,标准权重范围可以取值为[10,90],这样设置避免链路对应的目标链路权重过大或过小。
[0065]
本实施例中在进行路由分发时,首先获取应用系统中的链路在上一周期时的响应状态码,接着计算响应状态码为正常状态码时的码比率,然后利用链路分发权重动态调整算法,计算码比率对应的链路权重,最后当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发,即本技术提供了基于服务的响应状态码的链路分发权重动态调整方案,丰富了链路分发权重的确定手段,使得链路由分发方案更加贴合服务端的服务运行状态,提升了api服务的整体质量和水平,保护了服务端的持续稳定的运行。
[0066]
以上为本技术实施例提供的一种路由分发方法的实施例一,以下为本技术实施例提供的一种路由分发方法的实施例二。
[0067]
本技术实施例第一方面提供了一种路由分发方法的实施例。
[0068]
请参阅图2,本技术实施例中一种路由分发方法的实施例二的流程示意图。
[0069]
本实施例中路由分发方法包括:
[0070]
步骤201、获取应用系统中的链路在上一周期时的响应状态码。
[0071]
可以理解的是,步骤201和步骤101的描述相同,具体可以参见步骤101的描述,在此不在赘述。
[0072]
步骤202、删除响应状态码中的异常数据。
[0073]
为了避免响应状态码中的异常数据导致的链路权重计算错误,本实施例中在获取到链路在上一周期时的响应状态码后,将响应状态码中的异常数据进行清洗,即删除响应状态码中的异常数据。可以理解的是,本实施例中的异常数据可以包括:空值的响应状态码和响应时长超过预设时长的响应状态码。
[0074]
步骤203、统计链路在上一周期时响应状态码的总数量。
[0075]
本实施例中正常状态码的码比率是根据所有的响应状态码和正常状态码计算的,故本实施例中在删除响应状态码中的异常数据后,计算出链路在上一周期时的响应状态码的总数量。
[0076]
步骤204、统计链路在上一周期时响应状态码为正常状态码的码数量。
[0077]
在统计链路在上一周期时响应状态码的总数量的同时,统计链路在上一周期时响
应状态码为正常状态码的码数量。
[0078]
步骤205、根据码数量和总数量,计算响应状态码为正常状态码时的码比率。
[0079]
可以理解的是,正常状态码时的码比率为正常状态码的码数量/响应状态码的总数量。
[0080]
可以理解的是,多个链路中,如果出现码比率低于50%,说明该码比率对应的链路异常程度大,故触发算法,重新计算总体业务在各个链路上的分发权重。其中各个链路的码比率独立计算,取值范围是0~1,越是靠近1,说明业务越是正常。
[0081]
步骤206、获取链路分发权重动态调整算法对应的计算公式。
[0082]
具体地,本实施例中的计算公式为:
[0083][0084]
式中,rw为链路权重,nri为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,a1、a2为常数,a1+a2=1,mw为各个链路的质量权重之和。
[0085]
为了便于理解,本实施例中对mw进行举例说明,如以3个链路为例,mw=((nr1+(1-nri…
)/n)*40%+pw*60%)+((nr2+(1-nri…
)/n)*40%+pw*60%)+((nr3+(1-nri…
)/n)*40%+pw*60%)。
[0086]
可以理解的是,上述的a1、a2是常数,可以根据实际需要设置具体的取值。
[0087]
步骤207、基于计算公式,计算码比率对应的链路权重。
[0088]
步骤208、当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。
[0089]
在一个应用例中,a1取值40%,a2取值60%,以某应用系统的三条链路为例进行本实施例中的上述链路权重计算,在计算初始,三条链路各自对应的目标链路权重均为33%,即三者的目标链路权重比为:1:1:1,具体的计算结果如下表1所示:
[0090]
表1
[0091][0092][0093]
由表1可知,当当前周期为当a-2周期时,也就是计算初始,此时由于该周期不存在前两个周期,也就无法通过计算得到该a-2周期时应用系统中链路的目标链路权重,此时采用初始的目标链路权重,即33%,同理a-1周期也是。而利用a-2周期的应用系统的响应状态
码计算得到的链路权重,是a周期是各链路用于路由分发的目标链路权重。同理,利用a-1周期的响应状态码计算得到的链路权重,是a+1周期是各链路用于路由分发的目标链路权重。
[0094]
本实施例中在进行路由分发时,先获取应用系统中的链路在上一周期时的响应状态码,接着计算响应状态码为正常状态码时的码比率,然后利用链路分发权重动态调整算法,计算码比率对应的链路权重,最后当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发,即本技术提供了基于服务的响应状态码的链路分发权重动态调整方案,丰富了链路分发权重的确定手段,使得链路由分发方案更加贴合服务端的服务运行状态,提升了api服务的整体质量和水平,保护了服务端的持续稳定的运行。
[0095]
本技术实施例第二方面提供了一种路由分发装置的实施例。
[0096]
请参阅图3,本技术实施例中一种路由分发装置的结构示意图。
[0097]
本实施例中的一种路由分发装置包括:
[0098]
获取单元,用于获取应用系统中的链路在上一周期时的响应状态码;
[0099]
第一计算单元,用于计算响应状态码为正常状态码时的码比率;
[0100]
第二计算单元,用于利用链路分发权重动态调整算法,计算码比率对应的链路权重;
[0101]
赋值单元,用于当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。
[0102]
可选地,第一计算单元具体包括:
[0103]
第一统计子单元,用于统计链路在上一周期时响应状态码的总数量;
[0104]
第二统计子单元,用于统计链路在上一周期时响应状态码为正常状态码的码数量;
[0105]
第一计算子单元,用于根据码数量和总数量,计算响应状态码为正常状态码时的码比率。
[0106]
可选地,装置还包括:
[0107]
删除单元,用于删除响应状态码中的异常数据。
[0108]
可选地,第二计算单元具体包括:
[0109]
获取子单元,用于获取链路分发权重动态调整算法对应的计算公式;
[0110]
第二计算子单元,用于基于计算公式,计算码比率对应的链路权重,其中,计算公式为:
[0111][0112]
式中,rw为链路权重,nri为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,mw为各个链路的质量权重之和,a1、a2为常数,a1+a2=1。
[0113]
本实施例中在进行路由分发时,先获取应用系统中的链路在上一周期时的响应状态码,接着计算响应状态码为正常状态码时的码比率,然后利用链路分发权重动态调整算法,计算码比率对应的链路权重,最后当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发,即本技术提供了基于服务的响应状态码的链路分发权重动态调整方案,丰富了链路分发权重的确
定手段,使得链路由分发方案更加贴合服务端的服务运行状态,提升了api服务的整体质量和水平,保护了服务端的持续稳定的运行。
[0114]
本技术实施例第三方面提供了一种路由分发设备的实施例。
[0115]
一种路由分发设备,包括处理器以及存储器;存储器用于存储程序代码,并将程序代码传输给处理器;处理器用于根据程序代码中的指令执行第一方面的路由分发方法。
[0116]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0117]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个待安装电网网络,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0118]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0119]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0120]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0121]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。

技术特征:


1.一种路由分发方法,其特征在于,包括:获取应用系统中的链路在上一周期时的响应状态码;计算所述响应状态码为正常状态码时的码比率;利用链路分发权重动态调整算法,计算所述码比率对应的链路权重;当所述链路权重在标准链路权重范围内时,将所述链路权重作为所述链路在下一周期时的目标链路权重,以基于所述目标链路权重对所述链路进行路由分发。2.根据权利要求1所述的路由分发方法,其特征在于,计算所述响应状态码为正常状态码时的码比率,具体包括:统计所述链路在上一周期时响应状态码的总数量;统计所述链路在上一周期时响应状态码为正常状态码的码数量;根据所述码数量和所述总数量,计算所述响应状态码为正常状态码时的码比率。3.根据权利要求1所述的路由分发方法,其特征在于,计算所述响应状态码为正常状态码时的码比率,之前还包括:删除所述响应状态码中的异常数据。4.根据权利要求3所述的路由分发方法,其特征在于,所述异常数据包括:空值的响应状态码和响应时长超过预设时长的响应状态码。5.根据权利要求1所述的路由分发方法,其特征在于,利用链路分发权重动态调整算法,计算所述码比率对应的链路权重,具体包括:获取链路分发权重动态调整算法对应的计算公式;基于所述计算公式,计算所述码比率对应的链路权重,其中,所述计算公式为:式中,rw为链路权重,nr
i
为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,mw为各个链路的质量权重之和,a1、a2为常数,a1+a2=1。6.一种路由分发装置,其特征在于,包括:获取单元,用于获取应用系统中的链路在上一周期时的响应状态码;第一计算单元,用于计算所述响应状态码为正常状态码时的码比率;第二计算单元,用于利用链路分发权重动态调整算法,计算所述码比率对应的链路权重;赋值单元,用于当所述链路权重在标准链路权重范围内时,将所述链路权重作为所述链路在下一周期时的目标链路权重,以基于所述目标链路权重对所述链路进行路由分发。7.根据权利要求6所述的路由分发装置,其特征在于,所述第一计算单元具体包括:第一统计子单元,用于统计所述链路在上一周期时响应状态码的总数量;第二统计子单元,用于统计所述链路在上一周期时响应状态码为正常状态码的码数量;第一计算子单元,用于根据所述码数量和所述总数量,计算所述响应状态码为正常状态码时的码比率。8.根据权利要求6所述的路由分发装置,其特征在于,所述装置还包括:
删除单元,用于删除所述响应状态码中的异常数据。9.根据权利要求6所述的路由分发装置,其特征在于,所述第二计算单元具体包括:获取子单元,用于获取链路分发权重动态调整算法对应的计算公式;第二计算子单元,用于基于所述计算公式,计算所述码比率对应的链路权重,其中,所述计算公式为:式中,rw为链路权重,nr
i
为链路在上一周期时的码比率,n为应用系统中的链路数量,pw为预设链路权重,mw为各个链路的质量权重之和,a1、a2为常数,a1+a2=1。10.一种路由分发设备,其特征在于,包括处理器以及存储器;所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行权利要求1至5中任一项所述的路由分发方法。

技术总结


本申请公开了一种路由分发方法、装置和设备,方法包括:获取应用系统中的链路在上一周期时的响应状态码;计算响应状态码为正常状态码时的码比率;利用链路分发权重动态调整算法,计算码比率对应的链路权重;当链路权重在标准链路权重范围内时,将链路权重作为链路在下一周期时的目标链路权重,以基于目标链路权重对链路进行路由分发。本申请提供了基于服务的响应状态码的链路分发权重动态调整方案,丰富了链路分发权重的手段,使得链路分发方案更加贴合服务端的服务运行状态,提升了API服务的整体质量和水平,保护了服务端的持续稳定的运行。运行。运行。


技术研发人员:

翟镇

受保护的技术使用者:

天翼数字生活科技有限公司

技术研发日:

2022.09.07

技术公布日:

2023/1/16


文章投稿或转载声明

本文链接:http://www.wtabcd.cn/zhuanli/patent-1-80235-0.html

来源:专利查询检索下载-实用文体写作网版权所有,转载请保留出处。本站文章发布于 2023-01-26 18:33:04

发表评论

验证码:
用户名: 密码: 匿名发表
评论列表 (有 条评论
2人围观
参与讨论