流量调度方法、装置及存储介质与流程

文档序号:31856869发布日期:2022-10-19 03:13阅读:73来源:国知局
流量调度方法、装置及存储介质与流程

1.本公开涉及计算机处理技术领域,尤其涉及一种流量调度方法、装置及存储介质。


背景技术:

2.随着互联网的发展,一些公司、学校等组织选择通过自治系统的方式实现与外网的互联。相关技术中,自治系统一般通过动态的边界网关协议实现外网访问,或者在自治系统的接入点配置七层代理服务将自治系统内的部分流量分流至其它系统以实现外网访问,或者采用dns截取的方式将流量分发到边缘七层代理服务,由七层代理服务进行流量的透明转发至其它系统以实现外网访问。
3.上述第一种方式的网络质量好,一般不存在跨运营商网络质量差的问题,但成本高;而基于七层代理的方式虽然带宽成本比第一种方式低,但需要客户端均配置七层代理,不易于流量的统一调度,并且不能实现非http/https流量的外网访问。


技术实现要素:

4.本公开提供一种流量调度方法、装置及存储介质。本公开的技术方案如下:
5.根据本公开实施例的第一方面,提供一种流量调度方法,包括:
6.接收到自治系统内的流量请求报文,确定所述流量请求报文对应的目标公网地址,所述目标公网地址为目标静态接入点的公网地址,所述目标静态接入点位于所述自治系统之外的边缘接入系统中;
7.将所述流量请求报文中的源网络地址转换为所述目标公网地址,得到目标流量请求报文;
8.基于所述目标公网地址,将所述目标网络请求报文转发至所述目标静态接入点。
9.在一种可能的实现方式中,所述接收到自治系统内的流量请求报文,确定所述流量请求报文对应的目标公网地址,包括:
10.接收到自治系统内的流量请求报文,获取所述流量请求报文对应的业务关联信息以及访问控制列表信息;
11.在所述业务关联信息与所述访问控制列表信息匹配的情况下,确定所述流量请求报文对应的目标公网地址。
12.在一种可能的实现方式中,所述确定所述流量请求报文对应的目标公网地址,包括:
13.获取所述流量请求报文中的目的网络地址对应的目标服务网络信息以及所述流量请求报文对应的多个公网地址;所述多个公网地址为多个静态接入点的公网地址,所述多个静态接入点位于所述边缘接入系统中;
14.基于所述目标服务网络信息,从所述多个公网地址中确定所述目标公网地址,所述目标公网地址对应的服务网络信息与所述目标服务网络信息匹配。
15.在一种可能的实现方式中,所述方法还包括:
16.获取所述多个静态接入点各自的流量负载信息;
17.根据所述流量负载信息,确定所述多个静态接入点各自对应的流量转发权重信息;
18.所述基于所述目标服务网络信息,从所述多个公网地址中确定所述目标公网地址,包括:
19.基于所述目标服务网络信息和所述流量转发权重信息,从所述多个公网地址中确定所述目标公网地址。
20.在一种可能的实现方式中,基于所述目标服务网络信息,从所述多个公网地址中确定所述目标公网地址,包括:
21.从所述多个公网地址中筛选出与所述目标服务网络信息匹配的至少一个公网地址;
22.确定所述至少一个公网地址各自与所述自治系统的距离;
23.从所述至少一个公网地址中选择所述距离满足预设条件的公网地址为所述目标公网地址。
24.在一种可能的实现方式中,所述从所述多个公网地址中筛选出与所述目标服务网络信息匹配的至少一个公网地址,包括:
25.获取所述多个公网地址各自对应的网络连通状态信息;
26.从所述多个公网地址中选择出所述网络连通状态信息满足预设连通状态的公网地址集;
27.从所述公网地址集中筛选出与所述目标服务网络信息匹配的所述至少一个公网地址。
28.在一种可能的实现方式中,所述方法还包括:
29.接收到流量响应报文,获取会话记录;
30.基于所述会话记录,确定所述流量响应报文对应的目标内网地址;
31.将所述流量响应报文中的目的网络地址转换为所述目标内网地址,得到目标流量响应报文;
32.基于所述目标内网地址,将所述目标流量响应报文下发至对应的设备。
33.在一种可能的实现方式中,所述获取所述流量请求报文对应的多个公网地址,包括:
34.获取目标地址转换设备中配置的公网地址信息,所述目标地址转换设备为所述自治系统中传输所述流量请求报文的地址转换设备;
35.从所述公网地址信息中获取所述多个公网地址。
36.根据本公开实施例的第二方面,提供一种流量调度装置,包括:
37.目标公网地址确定模块,被配置为执行接收到自治系统内的流量请求报文,确定所述流量请求报文对应的目标公网地址,所述目标公网地址为目标静态接入点的公网地址,所述目标静态接入点位于所述自治系统之外的边缘接入系统中;
38.源地址转换模块,被配置为执行将所述流量请求报文中的源网络地址转换为所述目标公网地址,得到目标流量请求报文;
39.导流模块,被配置为执行基于所述目标公网地址,将所述目标网络请求报文转发
至所述目标静态接入点。
40.在一种可能的实现方式中,所述目标公网地址确定模块包括:
41.访问控制单元,被配置为执行接收到所述自治系统内的流量请求报文,获取所述流量请求报文对应的业务关联信息以及访问控制列表信息;
42.目标公网地址确定单元,被配置为执行在所述业务关联信息与所述访问控制列表信息匹配的情况下,确定所述流量请求报文对应的目标公网地址。
43.在一种可能的实现方式中,所述目标公网地址确定模块包括:
44.服务网络和公网地址获取单元,被配置为执行获取所述流量请求报文中的目的网络地址对应的目标服务网络信息以及所述流量请求报文对应的多个公网地址;所述多个公网地址为多个静态接入点的公网地址,所述多个静态接入点位于所述边缘接入系统中;
45.所述目标公网地址确定单元,还被配置为执行基于所述目标服务网络信息,从所述多个公网地址中确定所述目标公网地址,所述目标公网地址对应的服务网络信息与所述目标服务网络信息匹配。
46.在一种可能的实现方式中,所述装置还包括:
47.负载获取模块,被配置为执行获取所述多个静态接入点各自的流量负载信息;
48.转发权重确定模块,被配置为执行根据所述流量负载信息,确定所述多个静态接入点各自对应的流量转发权重信息;
49.所述目标公网地址确定单元,还被配置为执行基于所述目标服务网络信息和所述流量转发权重信息,从所述多个公网地址中确定所述目标公网地址。
50.在一种可能的实现方式中,所述目标公网地址确定单元包括:
51.筛选子单元,被配置为执行从所述多个公网地址中筛选出与所述目标服务网络信息匹配的至少一个公网地址;
52.距离确定子单元,被配置为执行确定所述至少一个公网地址各自与所述自治系统的距离;
53.目标公网地址确定子单元,被配置为执行从所述至少一个公网地址中选择所述距离满足预设条件的公网地址为所述目标公网地址。
54.在一种可能的实现方式中,所述筛选子单元包括:
55.网络连通状态获取子单元,被配置为执行获取所述多个公网地址各自对应的网络连通状态信息;
56.公网地址集选择子单元,被配置为执行从所述多个公网地址中选择出所述网络连通状态信息满足预设连通状态的公网地址集;
57.筛选子单元,还被配置为执行从所述公网地址集中筛选出与所述目标服务网络信息匹配的所述至少一个公网地址。
58.在一种可能的实现方式中,所述装置还包括:
59.回话记录获取模块,被配置为执行接收到流量响应报文,获取会话记录;
60.目标内容地址确定模块,被配置为执行基于所述会话记录,确定所述流量响应报文对应的目标内网地址;
61.转发模块,被配置为执行将所述流量响应报文中的目的网络地址转换为所述目标内网地址,得到目标流量响应报文;
62.下发模块,被配置为执行基于所述目标内网地址,将所述目标流量响应报文下发至对应的设备。
63.在一种可能的实现方式中,所述服务网络和公网地址获取单元包括:
64.公网地址信息获取单元,被配置为执行获取目标地址转换设备中配置的公网地址信息,所述目标地址转换设备为所述自治系统中传输所述流量请求报文的地址转换设备;
65.公网地址获取单元,被配置为执行从所述公网地址信息中获取所述多个公网地址。
66.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述第一方面中任一项所述的方法。
67.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行本公开实施例的第一方面中任一所述的方法。
68.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时,使得计算机执行本公开实施例的第一方面中任一项所述的方法。
69.本公开的实施例提供的技术方案至少带来以下有益效果:
70.通过在自治系统对流量请求报文进行源网络地址转换,以及结合基于源网络地址的路由转发,使得自治系统中的网络请求报文可以被导流至自治系统之外的静态接入点,由静态接入点接入外网,从而可以降低自治系统使用bgp动态带宽的成本,通过流量分流减少自治系统的压力;并且可以适应各种协议报文的导流,应用场景兼容性好;以及在进行自治系统至静态接入系统的迁移的情况下,可以保证流量的平滑迁移。
71.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
72.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
73.图1是根据一示例性实施例示出的一种应用环境的示意图架构图。
74.图2是根据一示例性实施例示出的一种上下行流量报文的传输示意图。
75.图3是根据一示例性实施例示出的一种上行流量调度的方法流程图。
76.图4是根据一示例性实施例示出的一种下行流量调度的方法流程图。
77.图5是根据一示例性实施例示出的一种上行流量传输示意图。
78.图6是根据一示例性实施例示出的一种流量调度方法的流程图。
79.图7是根据一示例性实施例示出的一种确定流量请求报文对应的目标公网地址的方法流程图。
80.图8是根据一示例性实施例示出的一种snat设备处理流量请求报文的流程示意图。
81.图9是根据一示例性实施例示出的一种流量调度装置框图。
具体实施方式
82.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
83.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
84.在介绍本公开提供的方法实施例之前,先对本公开方法实施例中可能涉及的应用场景、相关术语或者名词进行简要介绍,以便于本技术领域技术人员理解。
85.sip:source ip(internet protocol),源ip地址,也称源网络地址,本公开中,在上行流量中,流量请求报文中的sip可以是内网ip;下行流量中,流量响应报文中的sip可以是公网ip。
86.dip:destination ip,目的ip地址,也称目的网络地址。
87.snat:source networkaddress translation,源地址转换。
88.snatip:sip被地址转换后的ip,例如流量经过snat设备之后源网络地址被转换后的ip,本公开中的snatip可以为公网ip。
89.snat设备:地址转换设备。
90.bgp:border gateway protocol,边界网关协议,一种自治系统(as,autonomous system)的动态路由协议,bgp的主要功能在于控制路由的传播和选择最好的路由。
91.bgp接入点:动态ap(access point),即动态接入点,接入点设备通过bgp动态发布ip方式接入互联网。
92.静态接入点:静态ap,或称边缘静态接入点,接入点设备通过配置静态ip方式接入互联网。
93.acl:access control list,访问控制列表,或称访问控制列表信息。可以用于访问控制。
94.pbr:policy-based routing,策略路由,一种决定路由的方式。本公开中,策略路由可以根据数据包的sip来转送数据包。
95.dns:domainname system,域名系统。
96.http/https:hyper text transfer protocol/超文本传输协议,hyper text transfer protocol over securesocket layer/超文本传输安全协议。
97.请参阅图1,图1是根据一示例性实施例示出的一种应用环境的示意图架构图,如图1所示,该应用环境可以包括自治系统(as)01和边缘接入系统02。
98.在一个可选的实施例中,自治系统01可以基于bgp与公网通信。作为一个示例,as可以包括至少一个动态接入点(例如外网交换机)、多个snat设备、与各snat设备连接的内网交换机、以及每个内网交换机下连接的多个内网服务器。图1以一个动态接入点、一个snat设备、一个内网交换机和3个内网服务器为示例,内网服务器可以简称服务器,如图1所示。这里的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群
或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。动态接入点可以通过bgp动态发布ip方式接入互联网。
99.其中,外网交换机可以通过服务网络(运营商)实现外网访问;snat设备可以用于对报文中的源网络地址或目的网络地址进行地址转换操作;内网交换机可以用于as中多个服务器的接入。外网交换机和内网交换机均可以是三层交换机。
100.可选地,服务器也可以直接连接至snat设备,或者snat设备可以配置在外网交换机中,本公开对as内部的具体架构设置不作限定。
101.作为一个示例,边缘接入系统02可以包括多个静态接入点(例如边缘交换机)、多个接入交换机以及每个接入交换机下的多个服务器,图1以一个静态接入点、一个接入交换机和多个服务器为示例。静态接入点可以通过至少一个服务网络(至少一个运营商)访问外网,并且可以与接入交换机连接,接入交换机可以用于边缘接入系统中服务器的接入。其中,静态接入点可以通过配置静态ip地址方式接入互联网。例如可以为每个静态接入点配置ip地址池,该ip地址池中可以包括一个或多个运营商的ip地址段,即ip地址段可以覆盖一个或多个运营商的ip地址段,各运营商的ip地址段可以包括多个ip地址,该多个ip地址可以是公网地址,即相对于内网ip地址用于网络内部(比如自治系统内部)通信而言,公网地址可以是指用于互联网访问的ip地址。
102.其中,静态接入点可以是三层的边缘交换机,接入交换机也可以是三层的交换机。这里的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdelivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
103.在一个示例中,动态接入点与静态接入点之间的通信可以基于专线传输,这样可以提升传输效率,保证传输质量。
104.本公开考虑bgp的高成本、bgp的流量压力以及bgp基于代理进行分流的适用场景具有限制性。选择将as中访问公网(外网)的流量导流至边缘接入系统的静态接入点,通过较低带宽成本的静态接入点实现对公网的访问,从而实现as基于低成本静态接入点的分流。并且该分流方式不需要配置代理,分流操作简单,且能够适用各种协议流量的分流。
105.此外,需要说明的是,图1所示的仅仅是本公开提供的流量调度方法的一种应用环境架构图,不对本公开进行限定。
106.需要说明的是,以下图中示出的是一种可能的步骤顺序,实际上并不限定必须严格按照此顺序。有些步骤可以在互不依赖的情况下并行执行。另外,本公开所涉及的信息,比如用户信息(包括但不限于用户设备信息、用户个人信息、用户行为信息等)和数据(包括但不限于用于展示的数据、训练的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
107.基于上述的应用环境架构图,可以实现自治系统中上行流量和下行流量的导流。具体地,可以参见图2,图2是根据一示例性实施例示出的一种上下行流量报文的传输示意图。如图2所示,在as的上行流量访问互联网的情况下,如图3所示,可以通过以下步骤进行
传输:
108.在步骤s301中,地址转换设备接收到内网服务器发送的流量请求报文,获取地址转换设备中配置的多个静态接入点的公网地址信息,该公网地址信息可以包括多个公网地址。
109.实际应用中,公网地址可以是指公网的ip地址。由于多个静态接入点的ip地址不相同,所以从某静态接入点出去的流量,需要使用运营商分配给该静态接入点的ip地址作为源ip地址进行外网访问,这样可以保证服务的响应流量回到正确的静态接入点。基于此,为了给as中的多个snat设备分配静态接入点的ip地址,需要为每个静态接入点配置不重叠的ip地址池,从而可以为snat设备分配多个静态接入点的ip地址池中的ip地址。例如,可以从每个静态接入点的ip地址池中选择至少一个ip地址,从而可以将各静态接入点的至少一个ip地址分配给snat设备,使得每个snat设备可以具有多个静态接入点分配的ip地址。即可以保证每个snat设备都能从每个静态接入点至少分配得到一个ip地址。本公开对具体的分配方式不作限定。
110.进一步地,可以得到每个snat设备与对应的多个ip地址的映射关系,该映射关系可以存储在snat设备、静态接入点以及动态接入点中。其中,snat设备中可以仅存储本设备的映射关系,静态接入点以及动态接入点中可以存储全部sant设备与多个ip地址的映射关系,以用于作为导流时的路由依据。
111.可选地,每个snat设备可以基于本设备的映射关系,配置snat设备的公网地址信息,该公网地址信息中可以包括映射关系中的多个公网地址。作为一个示例,一个snat设备中配置的多个公网地址可以为:snat设备:ip1、ip4、ip2、ip3、ip6。这里ip1~ip4、ip6可以是多个静态接入点的ip地址,即为snat设备分配的、静态接入点的ip地址。
112.本说明书实施例中,地址转换设备接收到内网服务器发送的流量请求报文,可以获取地址转换设备中配置的多个静态接入点的公网地址信息,该公网地址信息可以包括多个公网地址。
113.在步骤s303中,地址转换设备从多个公网地址中确定目标公网地址;并将流量请求报文中的源网络地址转换为目标公网地址,得到目标流量请求报文;以及将目标流量请求报文转发至动态接入点。
114.本说明书实施例中,可以从多个公网地址中随机确定一个公网地址为目标公网地址;或者可以基于各公网地址对应的静态接入点的负载信息,从多个公网地址中确定一个负载较轻的静态接入点对应的公网地址作为目标公网地址;或者还可以基于流量请求报文要访问的运营商,从多个公网地址中选择该运营商的一个公网地址,作为目标公网地址。本公开对此不作限定,也可以是上述两种方式的结合,比如基于负载信息和运营商,确定目标公网地址。只要能够将流量请求报文导流至目标静态接入点、且使得边缘接入系统的上行流量均衡和/或能够保证上行网络访问质量即可。
115.进一步地,可以将流量请求报文进行源地址转换snat,即可以将流量请求报文中的源网络地址转换为目标公网地址,得到目标流量请求报文,也就是说,将流量请求报文中源ip地址字段中的内网ip转换为目标公网地址。并可以将目标流量请求报文转发至外网交换机。
116.在步骤s305中,动态接入点根据目标公网地址,将目标网络请求报文转发至目标
静态接入点。
117.本说明书实施例中,外网交换机中可以配置pbr策略路由,策略路由可以根据数据包(报文)的源ip地址来转送数据包。基于此,可以基于pbr,按照目标网络请求报文中的源ip地址(即目标公网地址)对目标网络请求报文进行路由,从而将目标网络请求报文转发至目标静态接入点。该目标静态接入点为多个静态接入点中与目标公网地址对应的静态接入点,即该目标静态接入点可以是配置有目标公网地址的静态接入点。
118.在步骤s307中,目标静态接入点基于目标网络请求报文中的目的网络地址,进行目标网络请求报文的路由转发。
119.实际应用中,边缘交换机可以是基于报文中目的ip地址进行路由转发的,基于此,目标静态接入点可以基于目标网络请求报文中的目的网络地址,进行目标网络请求报文的路由转发,实现as中的流量请求报文基于静态接入点至公网的访问。
120.作为一个示例,如图2所示(图2省略了内网交换机),as中的上行流量可以是内网服务器1(ip:innerip1,内网ip)发送的网络请求报文(比如用m1表示),报文的目的ip地址为:serverip1。即网络请求报文m1:innerip1
‑‑‑
》serverip1,其中,innerip1为m1的源网络地址,即源ip地址,sip;serverip1为m1的目的网络地址,即目的ip地址,dip。
121.可选地,snat设备上可以配置允许外网访问的acl信息,acl信息可以表征acl匹配规则,只有匹配到acl规则的内网访问流量才允许导流到静态接入点,进行外网访问。该acl中可以配置允许导流的预设业务,即基于业务对as中的流量进行分流。该预设业务可以利用业务标识来表示或者可以利用内网服务器(内网服务器与业务具有对应关系)的服务器标识来表示,本公开对此不作限定。
122.基于上述的介绍,在上行流量方向,在m1到达snat设备,snat设备可以基于acl信息对m1进行匹配处理,若匹配通过,可以选择目标静态接入点,并可以进行源ip地址的地址转换操作,从而可以得到目标m1,目标m1可以利用m2表示。比如目标静态ap为边缘1交换机,这样,目标网络请求报文m2可以为:edgeip1
‑‑‑
》serverip1,其中,edgeip1为m2的源ip地址,serverip1为m2的目的ip地址。若匹配不通过,可以利用as中的动态bgp实现外网访问,如图5所示,即as中一部分请求报文通过外网交换机访问外网,另一部分请求报文通过外网交换机导流至边缘交换机,通过边缘交换机访问外网。例如,可以基于bgp动态发布公网ip地址,从而可以将流量请求报文中的源网络地址转换为该公网ip地址,得到转换后的流量请求报文。从而使用转换后的流量请求报文实现外网访问。在一个示例中,acl信息中可以包括预设业务,即预设业务的流量请求报文可以被允许导流至静态ap,而预设业务之外的业务的流量请求报文可以继续基于bgp动态发布ip访问公网。这里仅仅是示例,不对本公开进行限定。
123.进一步地,snat设备可以将m2传输至外网交换机,外网交换机可以基于源ip的pbr将m2导流到边缘1交换机。边缘1交换机可以基于m2中的目的ip地址,将m2转发至互联网。在一些可能的实施例中,边缘1交换机可以基于目的ip地址对应的运营商,比如运营商1,可以将m2转发至运营商1,由运营商1将m2转发至目的ip地址对应的外网服务,实现上行流量请求。
124.通过在自治系统的snat设备进行报文的源网络地址转换,以及结合基于源网络地址的pbr路由的配置,使得自治系统中的网络请求报文,可以被导流至自治系统之外的静态
接入点,由静态接入点接入外网,从而可以降低使用bgp动态带宽的成本,通过流量分流减少自治系统的压力;并且可以适应各种协议报文的导流,应用场景兼容性好;以及在进行自治系统至静态接入系统的迁移的情况下,可以保证流量的平滑迁移;另外,通过在snat上配置公网ip,且snat与外网交换机独立设置,可以保证外网交换机的安全,实现snat与静态接入点直接的快速寻址。
125.相应地,结合图2,如图4所示,互联网至as中服务器的下行流量的传输处理可以包括以下步骤:
126.在步骤s401中,目标静态接入点接收到公网发送的流量响应报文,获取流量响应报文中的目的网络地址;并根据流量响应报文中的目的网络地址,将流量响应报文转发至动态接入点;
127.在步骤s405中,动态接入点基于配置的地址转换设备与静态接入点的映射关系,将流量响应报文转发至匹配的目标地址转换设备;
128.在步骤s407中,目标地址转换设备获取会话记录;并基于会话记录,确定流量响应报文对应的目标内网地址;将流量响应报文中的目的网络地址转换为目标内网地址,得到目标流量响应报文;以及基于目标内网地址,将目标流量响应报文下发至对应的内网服务器。
129.实际应用中,如图2所示,对于外网的响应流量回源,即下行流量传输,首先可以通过路由寻址正确的回到各个静态ap。为了保证回源流量能够正确的从静态接入点寻址到指定的snat设备,进而回到对应的内网服务器,需要将snat设备使用的静态接入点的ip地址,路由到snat设备所在的as;并且需要在snat设备连接的外网交换机上配置路由,该路由中可以包括地址转换设备与静态接入点的映射关系。以m2的响应报文r2为例,r2:serverip1
‑‑‑
》edgeip1。边缘1交换机接收到r2时,可以基于r2中的目的ip导流到目标snat设备。例如边缘1交换机查找目的ip地址的路由,下一跳可以是外网交换机的ip地址(因为目标snat设备在外网交换机的下游),这样可以将r2转发至外网交换机。外网交换机可以基于存储的snat设备与静态接入点的ip地址的映射关系,将r2转发至对应的目标snat设备。
130.进一步地,目标snat设备可以查找内网服务器起始访问外网时建立的会话记录,进行目的网络地址转换后,转发响应流量到内网服务器。举例来说,可以基于会话记录中各网络报文请求的源地址转换记录,查找到流量响应报文对应的目标内网地址。比如r2的目标内网地址为innerip1,可以将r2中的目的网络地址转换为该innerip1,得到转换后的目标流量响应报文r1:serverip1
‑‑‑
》innerip1。从而可以将r1传输至内网交换机,由内网交换机基于innerip1将r1转发至对应的内网服务器1。
131.与上行流量对应,通过在snat设备上基于会话记录,实现外网响应报文中目的ip地址至内网ip地址的转化,从而实现下行流量的准确传输。
132.图6是根据一示例性实施例示出的一种流量调度方法的流程图。具体地,在snat设备与动态接入点独立设置的情况下,执行主体可以是自治系统中的snat设备;在snat设备设置在动态接入点中的情况下,执行主体可以是动态接入点。或者,执行主体可以是自治系统中的处理模块,与snat设备和动态接入点协同完成流量调度,本公开对此不作限定。如图6所示,该方法可以包括:
133.在步骤s601中,接收到自治系统内的流量请求报文,确定流量请求报文对应的目
标公网地址,目标公网地址为目标静态接入点的公网地址,目标静态接入点位于自治系统之外的边缘接入系统中。
134.本说明书实施例中,可以获取流量请求报文对应的多个公网地址,该多个公网地址可以为多个静态接入点的公网地址,该多个静态接入点位于自治系统之外的边缘接入系统中。在一种可能的实现方式中,可以获取自治系统对应的、用于分流的多个公网地址。在另一种可能的实现方式中,可以获取目标地址转换设备中配置的多个静态接入点的公网地址信息,从公网地址信息中提取多个公网地址。这里的目标地址转换设备可以为自治系统中传输流量请求报文的地址转换设备。通过在snat中配置静态接入点的ip地址,实现实snat与静态接入点之间的路由寻址,可以提升寻址精度以及提升外网交换机的安全性;相应地,外网交换机在下行路由时,可以基于snat进行路由,与基于内网服务器的ip地址路由相比,可以提升效率,降低处理压力。进一步地,可以将多个公网地址中的任一个作为目标公网地址,本公开对此不作限定。
135.在步骤s603中,将流量请求报文中的源网络地址转换为目标公网地址,得到目标流量请求报文;
136.在步骤s605中,基于目标公网地址,将目标网络请求报文转发至目标静态接入点。
137.本说明书实施例中,可以将目标网络请求报文发送至自治系统的动态接入点,由动态接入点使用配置的策略路由pbr根据目标公网地址,即根据源ip地址将目标网络请求报文转发至目标静态接入点。通过在动态接入点中配置pbr,可以实现目标网络请求报文的准确导流,实现由静态接入点对as内流量的分流。
138.可选地,该方法还可以包括:接收到流量响应报文,获取会话记录;基于该会话记录,确定流量响应报文对应的目标内网地址;并可以将流量响应报文中的目的网络地址转换为目标内网地址,得到目标流量响应报文;以及可以基于目标内网地址,将目标流量响应报文下发至对应的设备。通过在snat设备上基于会话记录,实现外网响应报文中目的ip地址至内网ip地址的转化,从而实现下行流量的准确传输。
139.以上步骤可以参见上述上行流量处理和下行流量处理的相关内容,在此不再赘述。
140.通过在自治系统对流量请求报文进行源网络地址转换,以及结合基于源网络地址的路由转发,使得自治系统中的网络请求报文可以被导流至自治系统之外的静态接入点,由静态接入点接入外网,从而可以降低自治系统使用bgp动态带宽的成本,通过流量分流减少自治系统的压力;并且可以适应各种协议报文的导流,应用场景兼容性好;以及在进行自治系统至静态接入系统的迁移的情况下,可以保证流量的平滑迁移。
141.在一种可能的实现方式中,上述步骤s601可以包括以下步骤:
142.接收到自治系统内的流量请求报文,获取流量请求报文对应的业务关联信息以及目标地址转换设备中配置的访问控制列表信息(acl);从而可以在业务关联信息与访问控制列表信息匹配的情况下,确定流量请求报文对应的目标公网地址信息。即在业务关联信息与访问控制列表信息匹配的情况下,才将目标相应报文导流至静态接入点。
143.作为一个示例,业务关联信息可以是预设业务的标识信息,或者可以是内网服务器的服务器标识信息,该内网服务器与预设业务对应,从而可以利用服务器标识信息来表示预设业务。本公开对业务关联信息不作限定。其中,预设业务可以是自治系统中的部分业
务。
144.实际应用中,为了实现自治系统至边缘接入系统的迁移,或者实现自治系统中流量至边缘接入系统的分流,实现自治系统中一部分流量通过自治系统的bgp动态ip地址方式访问外网、另一部分流量通过边缘接入系统的静态ip地址方式访问外网。可以选择在snat设备上配置acl,以实现这种分流。将业务关联信息与访问控制列表信息进行匹配,若匹配,可以导流至静态接入点;若不匹配,继续基于bgp访问外网。如图5所示,3个服务器中有1个服务器的网络请求报文通过边缘交换机1访问外网、1个服务器的网络请求报文通过边缘交换机2访问外网、1个服务器的网络请求报文通过外网交换机访问外网。
145.其中,匹配可以是指访问控制列表信息中包括业务关联信息;不匹配可以是指访问控制列表信息中不包括业务关联信息。比如,访问控制列表信息可以为innerip1、innerip3、innerip5~innerip7。如果业务关联信息为innerip2,则可以确定业务关联信息与访问控制列表信息不匹配,如果业务关联信息为innerip7,则可以确定业务关联信息与访问控制列表信息匹配。
146.通过在snat设备上配置acl,可以实现对网络请求报文的平滑分流,从而可以降低自治系统的压力,又可以节约外网访问的成本。
147.实际应用中,考虑服务网络可以为多个,即多个运营商,也就是说,静态接入点可以与多个服务网络连接,或者说静态接入点可以为不同服务网络的接入点。为了防止跨运营商访问外网服务导致时延高等网络质量问题。可以在snat设备中导入ip信息库,该ip信息库可以包含各个外网ip所属的运营商、地域等信息。这样在snat设备匹配到acl规则的情况下,可以从多个公网地址中确定目标公网地址(出口ip),例如可以查询ip信息库,得到要访问的目的ip地址所属的目标运营商(目标服务网络信息)以及该目标运营商下的公网地址对应的静态接入点的地域信息,合理选择目标运营商下的静态接入点的出口ip作为网络响应报文的源ip地址,保证不跨越运营商进行访问。基于此,图7是根据一示例性实施例示出的一种确定流量请求报文对应的目标公网地址的方法流程图。在一种可能的实现方式中,该步骤s601可以包括:
148.在步骤s701中,获取流量请求报文中的目的网络地址对应的目标服务网络信息以及流量请求报文对应的多个公网地址;多个公网地址可以为多个静态接入点的公网地址,多个静态接入点位于边缘接入系统中。该服务网络信息可以是指对应的目标运营商信息,可以用目标运营商的标识表示。例如,可以从ip信息库中查询得到目的网络地址对应的目标服务网络信息。
149.在步骤s703中,基于目标服务网络信息,从多个公网地址中确定目标公网地址,目标公网地址对应的服务网络信息与目标服务网络信息匹配。即将多个公网地址中与目的网络地址处于相同运营商下的一个公网地址,作为目标公网地址。如图8所示。
150.具地体,参见图8所示,该s703可以包括:从多个公网地址中筛选出与目标服务网络信息匹配的至少一个公网地址;这里的匹配可以是指至少一个公网地址的服务网络信息与目标服务网络信息相同。如图8所示,snat设备接收到流量请求报文,即snat设备收包(包可以是指数据包,这里可以是指流量请求报文),可以匹配acl规则,从而可以从ip信息库中基于目的ip查询所属的目标运营商,从而可以从从多个公网地址中筛选出该目标运营商下的至少一个公网地址。进而可以确定至少一个公网地址各自与自治系统的距离,例如,可以
从ip信息库中获取至少一个公网地址各自对应的地域信息,比如各自的第一地理位置信息,通过第一地理位置信息与自治系统的第二地理位置信息,确定至少一个公网地址各自与自治系统的距离。并可以从一个公网地址中选择距离满足预设条件的公网地址为目标公网地址,目标公网地址与自治系统的距离小于至少一个公网地址中除目标公网地址之外的公网地址与自治系统的距离。预设条件就是距离最小,也就是说,目标公网地址距离自治系统最近。
151.可选地,为了防止静态接入点故障,导致导入该静态接入点的流量黑洞。可以在公网部署一些探测节点(如云主机、cdn节点、第三方服务等)探测静态接入点的网络连通状态信息,保证导入到静态接入点的流量都可以正常的转发。这里的网络连通状态信息可以是指静态接入点至公网(比如服务网络)的连通状态信息。基于此,对于从多个公网地址中筛选出与目标服务网络信息匹配的至少一个公网地址,具体地,可以获取多个公网地址各自对应的网络连通状态信息;从多个公网地址中选择出网络连通状态信息满足预设连通状态的公网地址集;从公网地址集中筛选出与目标服务网络信息匹配的所述至少一个公网地址。预设连通状态可以是指传输丢包率小于丢包率阈值。本公开对于丢包率阈值不作限定,只要能保证准确检测静态接入点的连通性即可。这样,如果从一个静态接入点到所有探测节点都不通,则认为该静态接入点失效,则不会将流量导入到该静态接入点,从而可以防止流量黑洞,保证分流的有效性。
152.通过目标服务网络信息和距离,从多个公网地址中确定目标公网地址,可以避免跨运营商访问外网服务导致时延高等网络质量问题;并且在同一运营商下选择距离最近的静态接入点,可以进一步降低传输时延,提升流量传输效率。
153.可选地,考虑到动态bgp方式中的动态接入点使用相同的ip,导致无法对入向流量进行均衡的问题。本公开中面对各静态接入点的ip地址不同,可以进行静态接入点的流量均衡,基于此,该流量调度方法还可以包括以下步骤:获取多个静态接入点各自的流量负载信息,比如报文处理数量、剩余带宽占比信息等;从而可以根据流量负载信息,确定多个静态接入点各自对应的流量转发权重信息。本公开对流量转发权重信息的确定方式不作限定,只要负载压力越小的静态接入点对应的流量转发权重信息越高即可。也就是负载越轻,转发权重越高,承担流量转发的概率越高。比如,剩余带宽占比信息越高,说明负载越轻,可以设置较高的流量转发权重信息。其中,可以获取各个静态接入点的实时带宽信息以及最大带宽配额。基于各个静态接入点的实时带宽信息和带宽配额,确定各个静态接入点的剩余带宽占比信息。其中,流量转发权重信息可以实时确定;或者也可以是周期性确定的,比如10秒更新一次。
154.相应地,上述步骤s703可以包括:基于服务网络信息和流量转发权重信息,从多个公网地址中确定目标公网地址。例如,可以将基于服务网络信息筛选出的至少一个公网地址中、最大流量转发权重信息对应的公网地址,作为目标公网地址。如图8所示,可以基于运营商和权重现在最优静态接入点下的公网地址作为目标公网地址。具体地,可以基于加权多路径wcmp(weighted cost multipath)路由算法来选择静态接入点,从而使得导入到各个静态接入点的流量和其权重正相关,保证各个静态接入点流量的均衡。
155.可选地,这里可以结合上述步骤s703中的距离和流量转发权重信息,从至少一个公网地址中选择出目标公网地址。例如可以计算目标服务网络信息匹配的至少一个公网地
址各自对应的距离与流量转发权重信息的加权信息,根据加权信息从至少一个公网地址中选择目标公网地址。本公开对距离与流量转发权重信息各自的权重,不作限定,只要能够保证流量均衡和传输质量即可。
156.通过多个静态接入点各自的流量负载信息确定多个静态接入点各自对应的流量转发权重信息,并基于流量转发权重信息结合服务网络信息,可以均衡静态接入点的流量,实现静态接入点的流量均衡调度。
157.图9是根据一示例性实施例示出的一种流量调度装置框图。该装置中的901~903可以配置在snat设备中,905可以配置在外网交换机中,本公开对此不作限定。参照图9,该装置可以包括:
158.目标公网地址确定模块901,被配置为执行接收到自治系统内的流量请求报文,确定所述流量请求报文对应的目标公网地址,所述目标公网地址为目标静态接入点的公网地址,所述目标静态接入点位于所述自治系统之外的边缘接入系统中;
159.源地址转换模块903,被配置为执行将所述流量请求报文中的源网络地址转换为所述目标公网地址,得到目标流量请求报文;
160.导流模块905,被配置为执行基于所述目标公网地址,将所述目标网络请求报文转发至所述目标静态接入点。
161.在一种可能的实现方式中,所述目标公网地址确定模块901可以包括:
162.访问控制单元,被配置为执行接收到所述自治系统内的流量请求报文,获取所述流量请求报文对应的业务关联信息以及访问控制列表信息;
163.目标公网地址确定单元,被配置为执行在所述业务关联信息与所述访问控制列表信息匹配的情况下,确定所述流量请求报文对应的目标公网地址。
164.在一种可能的实现方式中,所述目标公网地址确定模块901可以包括:
165.服务网络和公网地址获取单元,被配置为执行获取所述流量请求报文中的目的网络地址对应的目标服务网络信息以及所述流量请求报文对应的多个公网地址;所述多个公网地址为多个静态接入点的公网地址,所述多个静态接入点位于所述边缘接入系统中;
166.所述目标公网地址确定单元,还被配置为执行基于所述目标服务网络信息,从所述多个公网地址中确定所述目标公网地址,所述目标公网地址对应的服务网络信息与所述目标服务网络信息匹配。
167.在一种可能的实现方式中,所述装置还可以包括:
168.负载获取模块,被配置为执行获取所述多个静态接入点各自的流量负载信息;
169.转发权重确定模块,被配置为执行根据所述流量负载信息,确定所述多个静态接入点各自对应的流量转发权重信息;
170.所述目标公网地址确定单元,还被配置为执行基于所述目标服务网络信息和所述流量转发权重信息,从所述多个公网地址中确定所述目标公网地址。
171.在一种可能的实现方式中,所述目标公网地址确定单元可以包括:
172.筛选子单元,被配置为执行从所述多个公网地址中筛选出与所述目标服务网络信息匹配的至少一个公网地址;
173.距离确定子单元,被配置为执行确定所述至少一个公网地址各自与所述自治系统的距离;
174.目标公网地址确定子单元,被配置为执行从所述至少一个公网地址中选择所述距离满足预设条件的公网地址为所述目标公网地址。
175.在一种可能的实现方式中,所述筛选子单元可以包括:
176.网络连通状态获取子单元,被配置为执行获取所述多个公网地址各自对应的网络连通状态信息;
177.公网地址集选择子单元,被配置为执行从所述多个公网地址中选择出所述网络连通状态信息满足预设连通状态的公网地址集;
178.筛选子单元,还被配置为执行从所述公网地址集中筛选出与所述目标服务网络信息匹配的所述至少一个公网地址。
179.在一种可能的实现方式中,所述装置还可以包括:
180.回话记录获取模块,被配置为执行接收到流量响应报文,获取会话记录;
181.目标内容地址确定模块,被配置为执行基于所述会话记录,确定所述流量响应报文对应的目标内网地址;
182.转发模块,被配置为执行将所述流量响应报文中的目的网络地址转换为所述目标内网地址,得到目标流量响应报文;
183.下发模块,被配置为执行基于所述目标内网地址,将所述目标流量响应报文下发至对应的设备。
184.在一种可能的实现方式中,所述服务网络和公网地址获取单元可以包括:
185.公网地址信息获取单元,被配置为执行获取目标地址转换设备中配置的公网地址信息,所述目标地址转换设备为所述自治系统中传输所述流量请求报文的地址转换设备;
186.公网地址获取单元,被配置为执行从所述公网地址信息中获取所述多个公网地址。
187.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
188.在示例性实施例中,还提供了一种电子设备,包括:处理器;用于存储该处理器可执行指令的存储器;其中,该处理器被配置为执行该指令,以实现如本公开实施例中的流量调度方法。
189.在示例性实施例中,还提供了一种计算机可读存储介质,当该计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本公开实施例中的流量调度方法。计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
190.在示例性实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例中的流量调度的方法。
191.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括
随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
192.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
193.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1