一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种流量调度方法、装置、设备以及存储介质与流程

2022-06-29 21:38:58 来源:中国专利 TAG:


1.本技术涉及云技术领域,尤其涉及一种流量调度方法、装置、设备以及存储介质。


背景技术:

2.随着计算机的快速发展,视频、图片等数据流也在不断激增。当数据流从内部网络进入外部网络时,通常需要通过某一调度方法将数据流从内部网络调度到外部网络。目前,数据流一般是根据数据流的目的ip地址来实现流量调度,即将数据流调度到目的ip地址对应的外部网络。但是,若目的ip地址对应的外部网络出现故障或拥塞等情况,可能会影响数据流对应的数据处理。因此,如何为数据流选择一个合适的外部网络成为亟需解决的问题。


技术实现要素:

3.本技术实施例提供了一种流量调度方法、装置、设备以及存储介质,可以实现流量调度的自动化,并为数据流提供较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
4.本技术实施例第一方面公开了一种流量调度方法,所述方法包括:
5.获取多个目标数据流中每个目标数据流的数据流信息,所述数据流信息包括用于指示初始流量出口的出口信息;
6.获取多个流量出口中每个流量出口的网络资源参数,根据所述网络资源参数和所述每个目标数据流的出口信息确定所述每个目标数据流对应的出口标识;
7.利用所述每个目标数据流对应的出口标识,对所述每个目标数据流进行打标,得到多个打标数据流,每个打标数据流中携带了出口标识;
8.根据所述每个打标数据流中所携带的出口标识,将所述多个打标数据流调度给目标流量出口。
9.本技术实施例第二方面公开了一种数据流量装置,所述装置包括:
10.获取单元,用于获取多个目标数据流中每个目标数据流的数据流信息,所述数据流信息包括用于指示初始流量出口的出口信息;
11.确定单元,用于获取多个流量出口中每个流量出口的网络资源参数,根据所述网络资源参数和所述每个目标数据流的出口信息确定所述每个目标数据流对应的出口标识;
12.打标单元,用于利用所述每个目标数据流对应的出口标识,对所述每个目标数据流进行打标,得到多个打标数据流,每个打标数据流中携带了出口标识;
13.调度单元,用于根据所述每个打标数据流中所携带的出口标识,将所述多个打标数据流调度给目标流量出口。
14.本技术实施例第三方面公开了一种数据流量,包括处理器、存储器和网络接口,所述处理器、存储器和网络接口相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。
15.本技术实施例第四方面公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
16.本技术实施例第五方面公开了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述服务器执行上述第一方面的方法。
17.本技术实施例中,可以获取多个目标数据流中每个目标数据流的数据流信息,该数据流信息可以包括用于指示初始流量出口的出口信息。还可以获取多个流量出口中每个流量出口的网络资源参数,以根据网络资源参数和每个目标数据流的出口信息确定每个目标数据流对应的出口标识,并利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,从而得到多个打标数据流,每个打标数据流中携带了出口标识。进一步的,可以根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。通过实施上述方法,可以实现流量调度的自动化,并为数据流提供较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
附图说明
18.为了更清楚地说明本技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本技术实施例提供的一种流量调度系统的架构示意图;
20.图2是本技术实施例提供的一种流量调度方法的流程示意图;
21.图3是本技术实施例提供的另一种流量调度方法的流程示意图;
22.图4是本技术实施例提供的一种基于用路由调度方式的流量调度方法的流程示意图;
23.图5是本技术实施例提供的又一种流量调度方法的流程示意图;
24.图6是本技术实施例提供的一种流量调度装置的结构示意图;
25.图7是本技术实施例提供的一种流量调度设备的结构示意图。
具体实施方式
26.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
27.本技术的技术方案可运用在流量调度设备(或流量调度设备系统)中,该流量调度设备可以是服务器或者其他设备。例如,该流量调度设备可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
28.云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
29.云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
30.本技术将流量调度所需的数据存储到“云”中,根据需求对云中的数据随时获取,随时扩展。
31.流量调度是指将特定流量调度到指定链路上进行传输,实现质量优化或费用节省等用途。流量区分为出入方向,入方向是从外部网络进入到内部网络内的流量,出流量是指内部网络到外部网络的流量。通常,流量调度方案可以区分为出方向与入方向两类。其中,针对入方向的流量调度,可以通过发布不同路由优先级的方式来引导外部网络进入内部网络的流量。本方案主要是针对出方向的流量调度。
32.本技术实施例提出的一种流量调度方法,可以通过获取多个目标数据流中每个目标数据流的数据流信息,还获取多个流量出口中每个流量出口的网络资源参数,以根据网络资源参数和每个目标数据流的数据流信息中所包括的用于指示初始流量出口的出口信息,确定每个目标数据流的出口标识,并利用每个目标数据流的出口标识,对每个目标数据流进行打标,从而根据每个目标数据流中携带的出口标识,将每个目标数据流调度给目标流量出口。通过实施上述方法,可以实现流量调度的自动化,并为数据流提供较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
33.可选的,在一些场景中,该流量调度设备(或系统)可以包括多个组件,比如控制组件、打标组件和转发组件。可选的,上述组件还可称为其余名称,比如控制设备、打标设备和转发设备,本技术不做限定。
34.例如,请参见图1,图1是本技术实施例提供的一种流量调度系统的架构示意图。如图1所示,该流量调度系统包括控制组件、打标组件和转发组件。
35.控制组件,用于获取多个目标数据流中每个目标数据流的数据流信息,所述数据流信息包括用于指示初始流量出口的出口信息。其中,目标数据流可以是控制组件根据所接收到的多个初始数据流中每个初始数据流的数据流信息进行筛选确定的。如图1所示,初始数据流是指需要从第一网络进入到第二网络(第二网络1、第二网络2、

第二网络n)的数据流,其中,第一网络可以是内部网络,第一网络可以是外部内部。可选的,控制组件还可以获取网络资源参数,以根据网络资源参数确定目标流量出口,该目标流量出口可以是相比于初始流量出口更优的流量出口。而在获取到多个目标数据流中每个目标数据流的出口信息之后,可以根据每个目标数据流的出口信息确定每个目标数据流对应的出口标识。控制组件还可以用于将用户需要的流量调度规则转换为流量打标规则以及流量转发规则,并将流量打标规则下发给打标组件,将流量转发规则下发给转发组件,以使得打标组件可以根据该流量打标规则对传输到打标组件的多个目标数据流进行打标,也使得转发组件将各个打标数据流调度到对应的目标流量出口。
36.打标组件,用于利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,以得到多个打标数据流,其中,每个打标数据流中可以携带出口标识。可选的,可以利用控制组件下发的流量打标规则对多个目标数据流进行打标。其中,可以采用数据流中的dscp值来标识不同的数据流,即可以利用dscp值来表示出口标识。
37.转发组件,用于根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。可选地,可以利用控制组件下发的流量转发规则将所述多个打标数据流调度给对应的目标流量出口,而通过目标流量出口,打标数据流也可以进入到目标流量出口对应的外部网络。
38.从上述可知,本技术提供了一个精细化出口流量调度方式,可以通过控制组件所获取到相关信息(例如数据流信息、网络资源参数、用户属性)确定数据流对应的一个更优、更合适的流量出口,并利用出口标识来指示数据流对应的流量出口,从而可以根据出口标识对大量的数据流进行流量调度,并将数据量调度到一个较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
39.以下对本技术实施例的技术方案的实现细节进行详细阐述:
40.请参见图2,图2是本技术实施例提供的一种流量调度方法的流程示意图,如图2所示,该流量调度方法可包括:
41.s201:获取多个目标数据流中每个目标数据流的数据流信息,数据流信息包括用于指示初始流量出口的出口信息。
42.在一种实现方式中,控制组件可以获取到多个目标数据流中每个目标数据流的数据流信息,该目标数据流也就是后续需要进行调度的数据流。数据流信息可以包括用于指示初始流量出口的出口信息,该初始流量出口可以理解为目标数据流对应的用户所期望的流量出口。该数据流信息还可以包括其他信息,例如,该数据流信息还可以包括目标数据流的源ip地址、目的ip地址等等。例如,控制组件所获取到多个目标数据流的数据流信息可以如表1中所示,从表1中可以看出,某一目标数据流在源ip地址为10.1.1.1、目的ip地址为1.1.1.1的情况下,其对应的初始流量出口为电信出口。又如,某一目标数据流在源ip地址为10.1.1.3、目的ip地址为1.1.1.1的情况下,其对应的初始流量出口为移动出口。本技术中,流量出口可以理解为从第一网络进入到一个第二网络的出口。例如,数据流可以通过电信出口访问电信内的网段,或数据流可以通过联通出口访问联通内的网段。
43.表1:
44.源ip地址目的ip地址初始流量出口10.1.1.11.1.1.1电信出口10.1.1.21.1.1.1联通出口10.1.1.31.1.1.1移动出口
45.在一种实现方式中,上述的目标数据流可以是经过筛选后的数据流,即本技术可以针对性的对部分数据流进行调度。具体的,控制组件可以获取多个初始数据流中每个初始数据流的数据流信息,而在获取到该数据流信息之后,考虑到后续对部分初始数据流进行打标,以确定该部分初始数据流的流量出口。那么,可以对多个初始数据流进行筛选,以得到目标数据流。可选的,可以根据数据流筛选规则和每个初始数据流的数据流信息,从多个初始数据流中筛选出多个目标数据流。该数据流信息还可以包括数据流的时间,地区、数
据流标识等等。可选的,该数据流筛选规则可以是针对地区的筛选规则,或者是针对某一时间段的筛选规则,或者针对数据流标识的筛选规则,或者针对ip地址的筛选规则等等。还可以根据需求设置其他数据流筛选规则,在本请不做限定。例如,如果该数据流筛选规则是针对地区的筛选规则,则可以将处于同一地区的初始数据流确定为目标数据流,假设数据流筛选规则是要筛选出上海的初始数据流,也就是说可以将处于上海的初始数据流作为目标数据流。又如,如果该数据流筛选规则是针对ip地址的筛选规则,则可以是针对数据流携带的源ip地址或目的ip地址进行筛选,以源ip地址为例,数据流筛选规则中可以包括源ip地址的ip地址范围,即将处于ip地址范围的源ip地址对应的初始数据流作为目标数据流。
46.s202:获取多个流量出口中每个流量出口的网络资源参数,根据网络资源参数和每个目标数据流的出口信息确定每个目标数据流对应的出口标识。
47.在一种实现方式中,可以获取流量出口与出口标识之间的映射关系,该映射关系存储在目标区域,例如,可以在控制组件中,也可以在其他区域,本技术不做限定。那么,针对多个目标数据流中的任一目标数据流而言,可以根据该映射关系和该目标数据流的出口信息所携带的初始流量出口,确定该目标数据流对应的出口标识。其中,该出口标识可以是初始流量出口对应的标识。
48.在一种实现方式中,为了使目标数据流匹配到一个更优、更合适的流量出口,进而可以使得目标数据流到一个较优的网络中进行后续的数据处理。那么,可以对初始流量出口进行调整,以将初始流量出口调整为目标流量出口,该目标流量出口可以是比初始流量出口更优、更合适的流量出口。那么,目标数据流对应的出口标识也可以是目标流量出口对应的标识。可选的,可以获取多个流量出口中每个流量出口的网络资源参数,以根据网络资源参数从该多个流量出口中确定目标数据流的目标流量出口。而在确定目标流量出口之后,即可以根据目标数据流的目标流量出口确定该目标数据流对应的出口标识。例如,可以目标数据流的出口信息中的初始流量出口替换为目标流量出口,那么,可以根据目标数据流的目标流量出口确定该目标数据流对应的出口标识。
49.举例来说,网络资源参数可以包括当前网络质量、流量出口成本等等,还可以包括其他参数,在本技术不做限定。例如,假设网络资源参数包括当前网络质量,可以获取每个流量出口对应的当前网络质量,那么,可以考虑将当前网络质量较优的流量出口确定为目标数据流的目标流量出口。又如,假设网络资源参数包括当前网络质量和流量出口成本,可以获取每个流量出口对应的当前网络质量和流量出口成本,那么,可以考虑在当前网络质量相同的情况下,选择流量出口成本较低的流量出口确定为目标数据流的目标流量出口。
50.可选的,出口标识可以利用差分服务代码点(differentiated services code point,dscp)来表示,dscp在每个数据包ip头部的服务类别tos标识字节中,可以利用ip数据包头部的6个比特值进行编码得到dscp值。可以理解的是,利用6个比特值进行编码,可以得到64个dscp值,也就是说可以有64个出口标识,而一个出口标识是对应一个流量出口的。那么,可以利用dscp值标记64个流量出口,可以看出,利用dscp值来作出口标识也是较为便利的。在某种情况下,用户可能需要在对应的数据流中对dscp值置位,即对数据包的ip数据包头部的6个比特值进行置位,并希望在数据流的接收端根据dscp值做某些处理。但是这种情况一般在内部网络之间使用,而从内部网络到外部网络,用户通常不会在数据流中对dscp值置位,可以理解的是,上述情况与本技术中利用dscp值来做出口标识是不会产生冲
突的。其中,出口标识也可以利用其他方式来实现,在本技术不做限定。
51.在一些场景中,为了防止用户对dscp值置位,可在对目标数据流进行流量调度时,禁止用户对dscp值置位。或者,在利用dscp值对目标数据流打标之前,检测该dscp值是否为置位后的dscp值(如原始dscp值通常为0),如果该dscp值置位后的dscp值,可以先对置位后的dscp值进行备份,在流量调度完之后再利用备份恢复成置位后的dscp值。
52.举例来说,以出口标识为dscp值为例,流量出口与出口标识之间的映射关系可以如表2所示,可以看出,不同的流量出口对应不同的出口标识,例如,当目标数据流的初始流量出口为电信,那么,该目标数据流对应的出口标识为10。
53.表2:
54.源ip地址目的ip地址流量出口出口标识(dscp值)10.1.1.11.1.1.1电信1010.1.1.21.1.1.1联通2010.1.1.31.1.1.1移动30
55.s203:利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,得到多个打标数据流。
56.在一种实现方式中,可以根据流量打标规则来对每个目标数据流进行打标,其中,该流量打标规则可以用于指示根据出口标识对目标数据流进行标记。具体地,以多个目标数据流中的任一目标数据流为例进行说明,可以获取该目标数据流对应的初始标识。例如,出口标识是利用dscp值来表示的,数据流中的原始dscp值通常为0,那么,目标数据流的初始标识为0。而在获取到初始标识之后,可以根据该目标数据流对应的出口标识对目标数据流的初始标识进行替换,以得到目标数据流对应的打标数据流,该打标数据流中也就携带了出口标识。例如,某一目标数据流对应的出口标识为10,则可以将目标数据流的初始标识0替换为10。
57.在一种实现方式中,步骤s203可以由打标组件来实现,具体地,多个目标数据流可以传输至打标组件,而当多个目标数据流到达打标组件之后,打标组件可以根据流量打标规则修改各个目标数据流中的dscp值,即可以得到各个目标数据流对应的打标数据流。
58.s204:根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。
59.在一种实现方式中,可以根据流量转发规则来对各个打标数据流进行调度,以使得每个打标数据流调度到对应的目标流量出口。该流量转发规则可以用于指示根据出口标识进行调度,该流量转发规则还可以携带流量出口与出口标识之间的映射关系,以便于根据该映射关系确定目标数据流对应的流量出口,其中,流量出口与出口标识之间的映射关系可以如表2所示。具体地,可以识别多个打标数据流中各个打标数据流中的出口标识,也就是获取各个打标数据流中的dscp值。那么,在确定各个打标数据流中的出口标识之后,即可以根据流量出口与出口标识口之间的映射关系和各个打标数据流中的出口标识,确定每个打标数据流对应的目标流量出口,再根据各个打标数据流对应的目标流量出口将各个打标数据流转发到对应的目标流量出口。例如,如表2所示,如果某个打标数据流中的出口标识为10,可以确定该打标数据流对应的目标流量出口为电信出口,则可以将该打标数据流转发到电信出口。
60.从上述可知,本技术是根据出口标识来选择对应的流量出口,利用该方法,可以很好的解决外部网络的网段信息出现错误而导致的调度问题,例如,某一外部网络的网段信息发布错误,比如,外部网络的网段信息应为1.1.1.0/24,但是向公众发布的信息是2.2.2.0/24。又比如,外部网络1发布网段信息时,实际上发布的是外部网络2的网段信息。又比如,多个外部网络发布相同网段信息。那么,从上述可知,如果是根据目的ip地址来确定对应的流量出口,可能会导致流量调度出现问题,从而影响调度效率。而本技术利用出口标识来选择对应的流量出口,而不是目的ip地址来选择流量出口,可以有效避免因外部网络的网段信息的错误而导致的调度问题。
61.在一种实现方式中,步骤s204可以由转发组件来实现,具体地,多个打标数据流可以由上述的打标组件传输至转发组件,而当多个打标数据流到达转发组件之后,转发组件可以根据流量转发规则来对各个打标数据流进行调度,以将每个打标数据流调度到对应的目标流量出口。
62.本技术实施例中,可以获取多个目标数据流中每个目标数据流的数据流信息,该数据流信息可以包括用于指示初始流量出口的出口信息。还可以获取多个流量出口中每个流量出口的网络资源参数,以根据网络资源参数和每个目标数据流的出口信息确定每个目标数据流对应的出口标识,并利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,从而得到多个打标数据流,每个打标数据流中携带了出口标识。进一步的,可以根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。通过实施上述方法,可以实现流量调度的自动化,并为数据流提供较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
63.请参见图3,图3是本技术实施例提供的另一种流量调度方法的流程示意图,如图3所示,该流量调度方法可包括:
64.s301:获取多个目标数据流中每个目标数据流的数据流信息。
65.s302:获取多个流量出口中每个流量出口的网络资源参数,根据网络资源参数从多个流量出口中确定每个目标数据流的目标流量出口。
66.在一种实现方式中,可以理解的是,路由调度方式可以是根据目的ip地址进行路由查找。例如,如图4所示为一种利用路由调度方式实现流量调度的流程示意图。如图4所示,转发组件对接了电信、联通、移动3个外部网络,每个外部网络内分别有3个网段,其中,电信的网段为1.1.1.0/24,联通的网段为2.2.2.0/24,移动的网段为3.3.3.0/24。三个外部网络之间也是有互通的,即通过电信出口也可以访问联通、移动内的网段,转发组件可以通过边界网关协议(border gateway protocol,bgp)可以收到3个外部网络的全量路由表,那么,在进行流量调度时可以根据数据流的目的ip地址在查找全量路由表中查找目的ip地址所在的网段,从而进行流量的调度。例如,某一数据流的目的ip地址为1.1.1.1,则该数据流调度到电信出口;某一数据流的目的ip地址为2.2.2.2,则该数据流调度到联通出口;某一数据流的目的ip地址为3.3.3.3,则该数据流调度到移动出口。可以看出,路由调度方式是根据目的ip地址对应的网段下发路由方式从而实现调度。
67.在一些场景中,如果当前电信网络出现故障或拥塞,且调度到联通出口并访问1.1.1.1的网络质量比直接调度到电信出口好。那么,在这种情况下,是希望访问1.1.1.1的数据流也可以调度到联通出口。如果给转发组件下发一条路由,该路由指示将1.1.1.0/24
的网段指向联通出口,而考虑到联通出口可能存在带宽不足等问题,那么,也就无法叠加电信出口中访问1.1.1.0/24的所有数据流。在这种情况下,可以只将访问1.1.1.0/24数据流中的部分数据流转发到联通出口。那么,可能需要根据源ip地址和目的ip地址同时做调度,则可以利用策略路由(policy based routing,pbr)方式来实现流量调度,策略路由方式一种通过流量策略来执行路由选择,策略路由可以匹配流量的某个特征做特殊处理,相比于路由调度方式只能通过流量的目的ip地址做决策提供路由,策略路由可以根据源ip地址、目的ip地址、源端口、目标端口、协议、tos等流量特征来做决策提供路由。
68.在一些场景中,如果源ip地址的数量有几万个,目的ip地址的数量也有几万个,则源ip地址与目ip地址可能有上千万种组合,可以理解的是,流量调度的计算复杂度是非常大的,计算速度也可能较慢,从而降低了流量调度效率。
69.从上述可知,路由调度方式和策略路由方式比较适用于数据流少或用户需求不高等情况,当数据流较多的时候,上述两种流量调度方法可能会存在以下问题:一是规模受限,pbr方式会占用转发设备硬件,一般转发设备可以设置几千条规则,但是针对互联网而言,可以存在几十万条路由,利用pbr也就无法实现互联网的几十万条路由;二是精细度不足,路由调度方式下发的均是路由网段,可能无法做到全量的ip,因为目前路由网段大概有80多万条,如果拆分为32位掩码路由将达到数亿条路由,转发设备也无法处理。
70.那么,为了实现对大量的数据流进行流量调度,且将数据量调度到一个较优的流量出口,可以考虑给目标数据流添加出口标识,以根据该出口标识确定流量出口,出口标识可以利用数据流所携带的dscp来实现,dscp是一个成熟的数据流(数据包)标记字段,所有的设备都能够正常处理,也不需要额外开发。可选的,对利用出口标识对数据流进行打标可以通过添加一个打标组件来实现。而要确定出口标识,需要先确定数据流对应的流量出口,以使得后续根据流量出口与出口标识之间的映射关系确定数据流的出口标识。其中,确定数据流对应的流量出口可以通过添加一个控制组件来实现。控制组件可以获取数据流的数据流信息,该数据流信息可以包括指示初始流量出口的出口信息,该初始流量出口可以是用户的原始需求。那么,根据该出口信息,可以给数据流分配一个出口标识,而该出口标识也可以下发至打标组件,以使得打标组件对数据流进行打标。而为了使数据流被调度到较优的流量出口,控制组件还可以获取相关的网络资源参数,以根据网络资源参数将用户的原始需求(初始流量出口)替换为更优的流量出口。
71.在一种实现方式中,为了使目标数据流被调度到较优的流量出口,可以利用较优的流量出口替换初始流量出口,该较优的流量出口即是目标流量出口。具体地,控制组件可以获取多个流量出口中每个流量出口网络资源参数,以根据该网络资源参数从多个流量出口中确定每个目标数据流的目标流量出口。该网络资源参数可以包括当前网络质量、流量出口成本等等。除了获取每个流量出口对应的网络资源参数,还可以获取目标数据流对应的用户属性,以便于根据目标数据流对应的用户属性以及每个流量出口对应的网络资源参数来确定目标数据流的目标流量出口。可选的,可以设置一个出口调整规则,可以利用该出口调整规则所涉及的网络资源参数和用户属性自动计算出一个最优的流量出口,该最优的流量出口也就是目标流量出口。例如,针对多个目标数据流中的任一目标数据流,可以根据该目标数据流对应的用户属性确定目标数据流对应的用户优先级,并根据网络资源参数确定多个流量出口中每个流量出口对应的出口优先级。而在确定用户优先级和出口优先级之
后,即可以根据出口调整规则、目标数据流对应的用户优先级以及每个流量出口对应的出口优先级从多个流量出口中确定目标数据流的目标流量出口。
72.可选的,该出口调整规则可以是根据目标数据流的用户属性以及每个流量出口对应的流量出口成本,确定目标数据流的目标流量出口。其中,可以根据用户属性可以确定目标数据流的用户优先级,可以根据流量出口成本确定流量出口的出口优先级。该出口调整规则具体可以是用户优先级高的目标数据流可以调度到出口优先级较高的流量出口,而用户优先级较低的目标数据流调度到出口优先级较低的流量出口,从而实现差异化服务。例如,可以获取多个流量出口中每个流量出口对应的流量出口成本,以及每个目标数据流对应的用户属性,并根据每个流量出口对应的流量出口成本确定每个流量出口对应的出口优先级,根据每个目标数据流对应的用户属性确定每个目标数据流对应的用户优先级,以根据出口优先级和用户优先级确定每个目标数据流对应的目标流量出口。
73.举例来说,假设流量出口有3个,目标数据流有2个,其中,3个流量出口的流量出口成本分别为1000元(流量出口1)、700元(流量出口2)、500元(流量出口3),可以利用各个流量出口的流量出口成本的高低来进行出口优先级的设置,某一流量出口的流量出口成本越高,该流量出口的出口优先级越低。例如,上述3个流量出口的出口优先级可以分别为1(流量出口1)、2(流量出口2)、3(流量出口3)。2个目标数据流分别对应的用户属性可以是重要用户(目标数据流1)和普通用户(目标数据流2),则2个目标数据流的用户优先级可以分比为分别为2(目标数据流1)、1(目标数据流2)。那么,根据出口调整规则可知,目标数据流1对应的目标流量出口可以是流量出口3,目标数据流2对应的目标流量出口可以是流量出口2或流量出口3。其中,本技术中的优先级(例如上述描述出口优先级、用户优先级,或下述描述的成本优先级、质量优先级)的高低可以理解为数值越大,优先级越高,上述的优先级也可以是其他数值,可以体现优先级和优先级的高低即可。
74.可选的,该出口调整规则可以是根据目标数据流的用户属性、每个流量出口对应的流量出口成本以及每个流量出口对应的当前网络质量,确定目标数据流的目标流量出口。其中,当前网络质量是否出现故障、拥塞程度等来体现。该出口调整规则具体可以是用户优先级高的目标数据流可以调度到流量出口成本较低,且网络质量较好的流量出口,而用户优先级较低的目标数据流调度到流量出口成本较高且网络质量较差的流量出口,从而实现差异化服务。例如,可以获取多个流量出口中每个流量出口对应的流量出口成本、每个流量出口对应的当前网络质量,以及每个目标数据流对应的用户属性,并根据每个流量出口对应的流量出口成本和当前网络质量确定每个流量出口对应的出口优先级,根据每个目标数据流对应的用户属性确定每个目标数据流对应的用户优先级,以根据出口优先级和用户优先级确定每个目标数据流对应的目标流量出口。
75.举例来说,假设流量出口有3个,目标数据流有2个,其中,3个流量出口的流量出口成本分别为1000元(流量出口1)、700元(流量出口2)、500元(流量出口3),3个流量出口的当前网络质量分别为低(流量出口1)、低(流量出口2)、高(流量出口3)。可以利用流量出口成本对应的成本优先级和当前网络质量对应的质量优先级共同确定每个流量出口对应的出口优先级。例如,某一流量出口的流量出口成本越高,该流量出口的成本优先级越低,某一流量出口的当前网络质量越高,该流量出口的质量优先级越高。那么,上述3个流量出口的成本优先级可以分别为1(流量出口1)、2(流量出口2)、3(流量出口3),质量优先级可以分别
为1(流量出口1)、1(流量出口2)、2(流量出口3)。出口优先级可以是成本优先级与质量优先级之间的和值,也可以是加权后的成本优先级与加权后质量优先级之间的和值,也可以以其他方式确定出口优先级,在本技术不做限定。假设以出口优先级是成本优先级与质量优先级之间的和值为例进行说明,上述3个流量出口的出口优先级可以分别为2(流量出口1)、3(流量出口2)、5(流量出口3)。2个目标数据流分别对应的用户属性可以是重要用户(目标数据流1)和普通用户(目标数据流2),则2个目标数据流的用户优先级可以分比为分别为2(目标数据流1)、1(目标数据流2)。那么,根据出口调整规则可知,目标数据流1对应的目标流量出口可以是流量出口3,目标数据流1对应的目标流量出口可以是流量出口1或流量出口2。可以理解得是,在同等网络质量的情况下,优先选择流量出口成本低的流量出口,那么,目标数据流2对应的目标流量出口可以是流量出口2。
76.s303:将出口信息中的初始流量出口替换为目标流量出口。
77.s304:根据每个目标数据流的出口信息中的目标流量出口确定每个目标数据流对应的出口标识。
78.在一种实现方式中,可以获取流量出口与出口标识之间的映射关系。例如,该映射关系可以如表2所示。那么,针对多个目标数据流中的任一目标数据流而言,可以根据该映射关系和该目标数据流的出口信息所携带的目标流量出口,确定该目标数据流对应的出口标识。例如,当目标数据流的目标流量出口为电信,那么,该目标数据流对应的出口标识为10。
79.s305:利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,得到多个打标数据流,每个打标数据流中携带了出口标识;
80.s306:根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。
81.其中,步骤s301和s305-s306的具体实施方式可以参见上述实施例步骤s201和s203-s204的具体描述,此处不再赘述。
82.在本技术实施例中,可以确定多个目标数据流,每个目标数据流中可以携带用于指示初始流量出口的出口信息。还可以获取多个流量出口中每个流量出口的网络资源参数,以根据网络资源参数从多个流量出口中确定每个目标数据流的目标流量出口,并将出口信息中的初始流量出口替换为目标流量出口,根据每个目标数据流的目标流量出口确定每个目标数据流对应的出口标识,进一步的,可以利用每个目标数据流对应的出口标识,对每个目标数据流进行打标,以得到多个打标数据流,每个打标数据流中可以携带出口标识,从而可以根据每个打标数据流中所携带的出口标识,将多个打标数据流调度给目标流量出口。通过实施上述方法,可以实现流量调度的自动化,可以更加灵活的选择流量出口,提高流量调度效率,并为数据流提供较优的流量出口,进而使得数据流可以到一个较优的网络中进行后续的数据处理。
83.为更好的理解本技术实施例所提供的流量调度方法,下面结合图5所示的流程进行进一步说明。如图5所示,控制组件可以获取到如表1所示的各个目标数据流对应的源ip地址和目ip地址对以及出口信息,控制组件还可以将流量调度规则转换为流量打标规则以及流量转发规则,并将流量打标规则下发给打标组件,以使得打标组件可以根据该流量打标规则对传输到打标组件的多个目标数据流进行打标,以及,将流量转发规则下发给转发
组件,以使得转发组件将各个打标数据流调度到对应的目标流量出口。其中,打标组件可以为打标集群,该打标集群可以由x86集群组成,x86集群可以做公网流量处理,可以处理千万级别的数据流,也可以进行复用。打标组件也可以为其他集群,在本技术不做限定。如果原有流量调度系统上没有可以对公网流量处理的集群,可以新增一个集群,但是单独新增一个集群可能会提高流量调度成本。而现有的云服务商可以提供弹性ip(elastic ip,eip),弹性ip就是用x86集群实现的,那么,可以理解的是,本技术可以适用云服务商场景。
84.在一种实现方式中,控制组件还可以对目标数据流的初始流量出口下进一步优化,得到一个较优的流量出口,该流量出口即是上述的目标流量出口,例如,可以在控制组件上添加一个出口调整规则,该出口调整规则具体可以是某一种算法,那么,控制组件可以获取关于该算法的相关参数(可以理解为上述的网络资源参数、用户属性),例如,该算法的参数可以包括当前网络质量、流量出口成本、用户属性等信息。那么,在获取到相关参数之后,可以利用该算法以及相关参数自动计算出一个最优的流量出口,该最优的流量出口也就是目标流量出口。其中,可以利用该算法进行周期性计算最优的流量出口,例如,周期可以是1秒,或3秒,或其他数值。可知,本技术提供了流量调度方法可以应用到云服务商,云服务商通常需要根据用户的服务级别以最低的成本提供最优质的网络质量,并且应用到云服务商不需要增加额外的硬件资源,可以复用当前的eip集群最为打标组件。
85.在一种实现方式中,在根据网络资源参数计算得到目标流量出口之后,可以根据预先设置的流量出口与出口标识之间的映射关系为每个目标数据流的分配对应的出口标识,例如,该出口标识可以用dscp值来表示。当目标数据流到达打标集群后,打标集群可以按照流量打标规则修改每个目标数据流对应的dscp值,以得到多个打标数据流,再将该多个打标数据流传输给转发组件。而在转发组件收到多个打标数据流之后,可以识别每个打标数据流对应的dscp值,以根据出口标识与流量出口之间的映射关系确定每个打标数据流对应的目标流量出口,并将每个打标数据流调度到对应的目标流量出口,例如,如表2所示,如果打标数据流对应的dscp值为10,则转发组件可以将该打标数据流转发到电信出口,如果打标数据流对应的dscp值为20,则转发组件可以将该打标数据流转发到联通出口。如果打标数据流对应的dscp值为30,则转发组件可以将该打标数据流转发到移动出口。
86.请参阅图6,图6是本技术实施例提供的一种流量调度装置的结构示意图。本实施例中所描述的流量调度装置,包括:
87.获取单元601,用于获取多个目标数据流中每个目标数据流的数据流信息,所述数据流信息包括用于指示初始流量出口的出口信息;
88.确定单元602,用于获取多个流量出口中每个流量出口的网络资源参数,根据所述网络资源参数和所述每个目标数据流的出口信息确定所述每个目标数据流对应的出口标识;
89.打标单元603,用于利用所述每个目标数据流对应的出口标识,对所述每个目标数据流进行打标,得到多个打标数据流,每个打标数据流中携带了出口标识;
90.调度单元604,用于根据所述每个打标数据流中所携带的出口标识,将所述多个打标数据流调度给目标流量出口。
91.在一种实现方式中,所述打标单元603,具体用于:
92.针对所述多个目标数据流中的任一目标数据流,获取所述目标数据流对应的初始
标识;
93.根据所述目标数据流对应的出口标识对所述目标数据流中包括的初始标识进行替换,得到所述目标数据流对应的打标数据流。
94.在一种实现方式中,所述确定单元602,具体用于:
95.根据所述网络资源参数从所述多个流量出口中确定每个目标数据流的目标流量出口;
96.将所述每个目标数据流的出口信息中的初始流量出口替换为目标流量出口;
97.根据所述每个目标数据流的目标流量出口确定所述每个目标数据流对应的出口标识。
98.在一种实现方式中,所述确定单元602,具体用于:
99.针对所述多个目标数据流中的任一目标数据流,获取所述目标数据流对应的用户属性,根据所述用户属性确定所述目标数据流对应的用户优先级;
100.根据所述网络资源参数确定所述多个流量出口中每个流量出口对应的出口优先级;
101.根据出口调整规则、所述目标数据流对应的用户优先级以及每个流量出口对应的出口优先级从所述多个流量出口中确定所述目标数据流的目标流量出口。
102.在一种实现方式中,应用于流量调度设备,所述流量调度设备包括控制组件和转发组件;所述确定单元602,具体用于:
103.针对所述多个目标数据流中的任一目标数据流,通过所述控制组件根据流量出口与出口标识之间的映射关系和所述目标数据流的出口信息,确定所述目标数据流对应的出口标识;并将所述映射关系发送给所述转发组件;
104.所述调度单元604,具体用于:
105.通过所述转发组件识别所述多个打标数据流中各个打标数据流中的出口标识;根据所述映射关系和所述各个打标数据流中的出口标识,确定每个打标数据流对应的目标流量出口;根据所述各个打标数据流对应的目标流量出口将所述各个打标数据流调度到对应的目标流量出口。
106.在一种实现方式中,所述流量调度设备还包括打标组件;所述打标单元603,具体用于:
107.通过所述打标组件对所述每个目标数据流进行打标,得到多个打标数据流。
108.在一种实现方式中,所述获取单元601,还可用于:
109.获取多个初始数据流中每个初始数据流的数据流信息;
110.根据数据流筛选规则和所述每个初始数据流的数据流信息,从所述多个初始数据流中筛选出多个目标数据流。
111.可以理解,本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。本技术实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
112.请参阅图7,图7是本技术实施例提供的一种流量转发设备的结构示意图。本实施例中所描述的流量转发设备,包括:处理器701、存储器702以及网络接口703。上述处理器
701、存储器702以及网络接口703之间可以交互数据。
113.上述处理器701可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
114.上述存储器702可以包括只读存储器和随机存取存储器,并向处理器701提供程序指令和数据。存储器702的一部分还可以包括非易失性随机存取存储器。其中,所述处理器701调用所述程序指令时用于执行:
115.获取多个目标数据流中每个目标数据流的数据流信息,所述数据流信息包括用于指示初始流量出口的出口信息;
116.获取多个流量出口中每个流量出口的网络资源参数,根据所述网络资源参数和所述每个目标数据流的出口信息确定所述每个目标数据流对应的出口标识;
117.利用所述每个目标数据流对应的出口标识,对所述每个目标数据流进行打标,得到多个打标数据流,每个打标数据流中携带了出口标识;
118.根据所述每个打标数据流中所携带的出口标识,将所述多个打标数据流调度给目标流量出口。
119.在一种实现方式中,所述处理器701,具体用于:
120.针对所述多个目标数据流中的任一目标数据流,获取所述目标数据流对应的初始标识;
121.根据所述目标数据流对应的出口标识对所述目标数据流中包括的初始标识进行替换,得到所述目标数据流对应的打标数据流。
122.在一种实现方式中,所述处理器701,具体用于:
123.根据所述网络资源参数从所述多个流量出口中确定每个目标数据流的目标流量出口;
124.将所述每个目标数据流的出口信息中的初始流量出口替换为目标流量出口;
125.根据所述每个目标数据流的目标流量出口确定所述每个目标数据流对应的出口标识。
126.在一种实现方式中,所述处理器701,具体用于:
127.针对所述多个目标数据流中的任一目标数据流,获取所述目标数据流对应的用户属性,根据所述用户属性确定所述目标数据流对应的用户优先级;
128.根据所述网络资源参数确定所述多个流量出口中每个流量出口对应的出口优先级;
129.根据出口调整规则、所述目标数据流对应的用户优先级以及每个流量出口对应的出口优先级从所述多个流量出口中确定所述目标数据流的目标流量出口。
130.在一种实现方式中,应用于流量调度设备,所述流量调度设备包括控制组件和转发组件;所述处理器701,具体用于:
131.针对所述多个目标数据流中的任一目标数据流,通过所述控制组件根据流量出口
与出口标识之间的映射关系和所述目标数据流的出口信息,确定所述目标数据流对应的出口标识;并将所述映射关系发送给所述转发组件;
132.通过所述转发组件识别所述多个打标数据流中各个打标数据流中的出口标识;根据所述映射关系和所述各个打标数据流中的出口标识,确定每个打标数据流对应的目标流量出口;根据所述各个打标数据流对应的目标流量出口将所述各个打标数据流调度到对应的目标流量出口。
133.在一种实现方式中,所述流量调度设备还包括打标组件;所述处理器701,具体用于:
134.通过所述打标组件对所述每个目标数据流进行打标,得到多个打标数据流。
135.在一种实现方式中,所述处理器701,还用于:
136.获取多个初始数据流中每个初始数据流的数据流信息;
137.根据数据流筛选规则和所述每个初始数据流的数据流信息,从所述多个初始数据流中筛选出多个目标数据流。
138.本技术实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,所述程序执行时可包括如图2或者图3对应实施例中的流量调度方法的部分或全部步骤。
139.需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
140.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
141.本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该服务器执行上述各方法的实施例中所执行的步骤。
142.以上对本技术实施例所提供的一种流量调度方法、装置、设备以及存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献