CN106850460A - 一种业务流聚合方法及装置 - Google Patents
一种业务流聚合方法及装置 Download PDFInfo
- Publication number
- CN106850460A CN106850460A CN201710072972.5A CN201710072972A CN106850460A CN 106850460 A CN106850460 A CN 106850460A CN 201710072972 A CN201710072972 A CN 201710072972A CN 106850460 A CN106850460 A CN 106850460A
- Authority
- CN
- China
- Prior art keywords
- preset attribute
- attribute value
- business stream
- business
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/827—Aggregation of resource allocation or reservation requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供了一种业务流聚合方法及装置,方法包括:针对预设时间段内到达的同源同目标的业务流,计算每个业务流的预设属性值和业务量;将预设属性值相似的业务流分为一组,得到预分业务流组,其中,预设属性值相似是指预设属性值符合预定相似条件;分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组。在本发明实施例所提供的业务流聚合过程中,由于每个预分业务流组内业务流的预设属性值相似,所以目标业务流组中的业务流的预设属性值也相似。同时目标业务流组内业务流的业务量总和不大于预设阈值。因此,便于后续有效地为目标业务流组分配合适的路径,相比于现有技术提高了聚合的有效性。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种业务流聚合方法及装置。
背景技术
SDN网络(Software Defined Network,软件定义网络)是一种新型网络创新架构,可以实现网络流量的灵活控制。在基于SDN的无线mesh(网状)网络中转发到达交换机的业务流时,交换机会向控制器去请求转发路径,交换机根据控制器返回的转发路径来转发业务流。但是,当业务流的请求较多时,会导致两个问题,一是会导致控制器的控制开销增大甚至停止工作;二是针对每个业务流分配转发路径,并根据分配的路径转发业务流,会增加网络的转发负担。为了解决上述问题,现有技术中,通常是将到达的同源同目的业务流通过聚合方法进行聚合分类,得到业务流组,然后,向控制器请求业务流组的转发路径,再通过控制器所分配的转发路径转发业务流组,从而实现业务流的转发。其中,业务流聚合方法如分层聚合方法、模糊聚合方法、贪婪聚合方法、k-means聚合方法。
具体的,分层聚合方法主要针对预设时间段内到达的同源同目的业务流,计算每个业务流的时延和丢包率等属性值;将属性值相似的业务流分成一组,并将每组内的所有业务流聚合成一个业务流组。模糊聚合方法同样是根据时延和丢包率等属性值的相似性进行聚合的。通过这两种方法获得业务流组,组内业务流的时延和丢包率等属性值相似,后续容易为业务流组找到符合组内每个业务流的时延和丢包率等属性值要求的路径。但是,业务流组内所有业务流的业务量总和可能会很大,容易造成无法为业务流组找到符合带宽要求的路径。
参照图1,图1为现有技术中k-means聚合方法的流程示意图,k-means聚合方法包括以下步骤:
S101、针对预设时间段内到达的同源同目的业务流,计算每个业务流的业务量;
S102、将任意预设数量个业务流的业务量,一一对应地确定为预设数量个簇心对应的业务量;
S103、根据每个业务流的业务量,以及每个簇心对应的业务量,计算每个业务流到达每个簇心的距离;
S104、确定每个业务流对应的最小距离,将最小距离对应同一簇心的业务流聚合成一个过渡业务流组;
S105、计算每个过渡业务流组中所有业务流的业务量的平均值,将每个簇心对应的业务量对应更新为业务量的平均值,返回S103,直至每个簇心对应的业务量收敛;
S106、在确定每个簇心对应的业务量收敛后,针对每个过渡业务流组,将该过渡业务流组内所有业务流聚合成一个业务流组。
通过k-means聚合方法聚合得到的业务流组,组内的业务流业务量相似,但是,组内的所有业务流的业务量总和可能很大,造成无法为业务流组找到符合带宽要求的路径。
贪婪聚合方法:首先计算业务流的业务量,并按照业务量从大到小排序,再依次将业务量总和接近且小于预设阈值的业务流聚合成一个业务流组。通过贪婪聚合方法聚合得到的业务流组,组内的所有业务流的业务量总和都小于预设阈值,使得后续容易为业务流组找到符合带宽要求的路径。但是,组内的业务流的时延或丢包率可能不相似,后续难以为业务流组找到满足组内每个业务流的时延或丢包率等属性值要求的路径。
可见,现有技术中将预设时间段内的同源同目的的业务流聚合的方法无法同时保证带宽要求和属性相似性要求,会导致部分聚合无效。
发明内容
本发明实施例的目的在于提供一种业务流聚合方法及装置,以同时保证带宽要求和属性相似性要求,从而提高聚合的有效性。具体技术方案如下:
第一方面,本发明实施例提供的一种业务流聚合方法,包括:
针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,所述预设属性值相似是指预设属性值符合预定相似条件;
分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
可选的,所述预设属性值为由多个子预设属性值组成的多维属性值;
所述将预设属性值相似的业务流分为一组,得到至少一个预分业务流组的步骤,包括:
初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,直至每个目标簇心对应的预设属性值收敛;
在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
可选的,所述初始化多个目标簇心,得到每个目标簇心对应预设属性值的步骤,包括:
根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,所述预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量。
可选的,所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,包括:
根据以下公式计算每个业务流到每个目标簇心的距离:
其中,h表示业务流的序号,i表示目标簇心的序号,表示第h个业务流到第i个目标簇心的距离;j表示维度序号,表示第h个业务流的预设属性值的第j维度的子预设属性值,表示第i个目标簇心对应的预设属性值的第j维度的子预设属性值,m表示所述预设属性值的维度的数量。
可选的,所述分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组的步骤,包括:
针对每个预分业务流组,计算该预分业务流组中所有业务流的业务量总和;
根据每个预分业务流组的业务量总和以及所述预设阈值,确定每个预分业务流组待聚合出的目标业务流组的数量;
从每个的预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组。
可选的,所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤,包括:
针对每个预分业务流组,执行以下步骤:
按照本组中业务流的业务量大小,将本组中的业务流排序;
按照排序得到的顺序,确定出业务量总和最接近且不大于所述预设阈值的未聚合的业务流;
判断其余未聚合的业务流中,是否存在至少一个业务流,使得所确定的业务流与存在的至少一个业务流的业务量总和等于所述预设阈值;
如果存在,将所确定的业务流与存在的至少一个业务流聚合成目标业务流组,否则,将所确定的业务流聚合成目标业务流组;
返回按照排序得到的顺序,确定出业务量总和最接近且不大于所述预设阈值的未聚合的业务流的步骤,直到聚合出该预分业务流组对应数量的待向控制器请求转发路径的目标业务流组。
可选的,所述方法还包括:
计算每个预分业务流组对应的目标簇心到预设原点簇心的距离;
按照所计算的距离的大小,将每个预设业务流组排序;
在所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,优先按照预分业务流组的排序顺序,再按照每个预分业务流组中业务流的排序顺序,依次将业务量总和最接近且不大于所述预设阈值的未聚合的业务流,聚合成一个待向控制器请求转发路径的目标业务流组。
第二方面,本发明实施例提供的一种业务流聚合装置,包括:
第一计算模块,用于针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
预分组模块,用于将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,所述预设属性值相似是指预设属性值符合预定相似条件;
第一聚合模块,用于分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
可选的,所述预设属性值为由多个子预设属性值组成的多维属性值;
所述预分组模块,包括:
初始化子模块,用于初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
第一计算子模块,用于根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
预分组子模块,用于确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
组合子模块,用于针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
更新子模块,用于以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,直至每个目标簇心对应的预设属性值收敛;
第一确定子模块,用于在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
可选的,所述初始化子模块,包括:
获得单元,用于根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
第一确定单元,用于将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,所述预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量。
本发明实施例提供了一种业务流聚合方法及装置,针对预设时间段内到达的同源同目标的业务流,计算每个业务流的预设属性值和业务量;将预设属性值相似的业务流分为一组,得到预分业务流组,其中,预设属性值相似是指预设属性值符合预定相似条件;分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组。本方案所给出的业务流聚合过程中,由于每个预分业务流组中业务流的预设属性值相似,所以目标业务流组中的业务流的预设属性值也相似,同时目标业务流组内业务流的业务量总和不大于预设阈值,达到了同时保证带宽要求和属性相似性要求的目的,从而提高聚合的有效性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中k-means聚合方法的流程示意图;
图2为本发明实施例提供的一种业务流聚合方法的流程示意图;
图3为图2所示实施例中实现S202的流程示意图;
图4为图3所示具体实现方式中实现S203的流程示意图;
图5为本发明实施例提供的一种业务流聚合装置的结构示意图;
图6为图5所示实施例中预分组模块的结构示意图;
图7为图6所示具体实现方式中预分组模块的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高业务流聚合的有效性,本发明实施例提供了一种业务流聚合方法及装置。
参照图2,图2为本发明实施例提供的一种业务流聚合方法的流程示意图,该方法包括以下几个步骤:
S201、针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
针对同源同目的业务流,通过聚合方法聚合出业务流组后,任一个业务流组通过一条路径来转发,都可以满足组中所有业务流的路径转发要求。
需要说明的是,业务流的预设属性值可以是业务流的一维属性值,也可以为多维属性值,一个维度的属性值对应业务流的一个类别的属性值,例如,可以将时延、丢包率、业务量三者中的任一个作为业务流的预设属性值,也可以将它们中的任意至少两个组合成多维属性值,作为预设属性值。可以理解的是,如果预设属性值中包括业务量,针对每个业务流的业务量只需要计算一次即可。
可以理解的是,预设时间段可以根据实际情况设定,本发明实施例并不对此进行限定。
S202、将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,预设属性值相似是指预设属性值符合预定相似条件;
本步骤针对所有业务流进行预分组,得到预分业务流组,任一预分业务流组中的所有业务流的预设属性值都相似。其中,预定相似条件可以根据业务流的预设属性值与用于分组的簇心所对应的预设属性值的接近程度来设定,也可以根据任两个预设属性值的接近程度来设定。
S203、分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
针对每个预分业务流组,可以将该预分业务流组中的部分业务流或全部业务流聚合成一个目标业务流组,需要说明的是,本步骤中,并不需要针对每个预分业务流组都至少聚合出一个目标业务流组。
预分业务流组中的所有业务流的预设属性值相似,但是,预分业务流组中的所有业务流的业务量总和可能会较大,通过本步骤,可以聚合出预设属性值相似,且业务量总和不大于预设阈值的目标业务流组,其中,预设阈值可以根据当前网络的剩余带宽来设置。
应用图2所示实施例,目标业务流组后续被作为一个整体,向控制器请求转发目标业务流组的路径,不仅可以降低控制器的控制开销,还可以减少网络的转发负担。由于每个预分业务流组中业务流的预设属性值相似,所以目标业务流组中的业务流的预设属性值也相似。同时目标业务流组内业务流的业务量总和不大于预设阈值。因此,达到了同时保证带宽要求和属性相似性要求的目的,从而提高聚合的有效性。
可选的,参照图3,图3为图2所示实施例中实现S202的流程示意图,预设属性值为由多个子预设属性值组成的多维属性值,例如,预设属性值是由时延和丢包率所组成的二维的属性值,时延可以作为一个维度的子预设属性值,丢包率可以作为另一维度的子预设属性值。S202具体可以通过以下几个步骤实现:
S2021、初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
本步骤中,可以随机的初始化得到目标簇心对应的预设属性值,例如,随机挑选多个业务流的预设属性值,将挑选的预设属性值分别作为每个目标簇心对应的预设属性值。
当然,还可以通过以下方式进行初始化,获得目标簇心对应的预设属性值:
(1)、根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
(2)、将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量,另外,这里的i可以属于[1,k]。
采用上述公式计算目标预设属性值,一个目标预设属性值,能够确定为一个目标簇心对应的预设属性值,这样可以减少初始化的随机性,使后续分组过程中的迭代简化,即对业务流进行预分组变得简单。
S2022、根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
本步骤可以根据以下公式计算每个业务流到每个目标簇心的距离:
其中,h表示业务流的序号,i表示目标簇心的序号,表示第h个业务流到第i个目标簇心的距离;j表示维度序号,表示第h个业务流的预设属性值的第j维度的子预设属性值,表示第i个目标簇心对应的预设属性值的第j维度的子预设属性值,m表示所述预设属性值的维度的数量。
具体应用时,针对每个业务流和每个目标簇心,并针对每个维度的子预设属性值,将该业务流的该维度的子预设属性值与该目标簇心对应的该维度的子预设属性值做差,并取得到的差值的绝对值,将该绝对值除以该目标簇心对应的该维度的子预设属性值,得到一个目标值。在该业务流与该目标簇心计算得到的所有目标值中取最大值,即得到该业务流到该目标簇心的距离。
需要说明的是,每个业务流到每个目标簇心的距离不仅可以采用通过上述公式计算得到的距离,也可以采用其他定义的距离,例如,欧式距离。
S2023、确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
目标簇心有多个,针对每个业务流会计算多个距离,其中,每个业务流都会有一个最小距离,最小距离能够说明在这些目标簇心中,针对每个业务流对应的最小距离所对应的目标簇心,其所对应的预设属性值与该业务流的预设属性值最相似,因此,通过本步骤所得到的过渡业务流组中的业务流的预设属性值相似。
S2024、针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
例如,S2024中获得了两个过渡业务流组,预设属性值为由时延和丢包率所组成的二维属性值,第一维度的是时延,第二维度的是丢包率。其中一个过渡业务流组包括:业务流A1和业务流A2,业务流A1对应的预设属性值为(6.25,2);业务流A2对应的预设属性值为(6,2.1),则这个过渡业务流组所对应的过渡预设属性值(6,2);另一个过渡业务流组包括:业务流B1和业务流B2,业务流B1对应的预设属性值为(6.15,2.2);业务流B2对应的预设属性值为(6.08,2.15),则这个过渡业务流组所对应的过渡预设属性值(6.08,2.15)。
S2025、以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回S2022,直至每个目标簇心对应的预设属性值收敛;
由S2023和S2024可以确定,一个目标簇心可能对应一个过渡业务流组,也可能没有对应过渡业务流组,而一个过渡业务流组对应一个过渡预设属性值,因此,目标簇心的数量有可能等于当前的过渡预设属性值的数量,也可能多于当前的过渡预设属性值的数量。
S2026、在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
S2022-S2025的循环步骤,在每个目标簇心对应的预设属性值收敛后结束,通过S2021-S2025获得的过渡业流组,可以保证过渡业务流组中所有业务流的相似性。S2024的设置,使得后续更容易找到满足预分业务流组中每个业务流的各项属性要求的路径,从而有利于提高聚合的有效性。
通过利用图3所述的具体实现方式,能够较为准确的将需要聚合的业务流进行预分组,提高预分业务流组中的业务流的相似性,从而可以提高业务流聚合的有效性。需要强调的是,上述图3所示的具体实现方式仅仅作为S202的一种具体实现方式,并不应该构成对本发明实施例的限定。
可选的,在S202采用图3所示具体实现方式的基础上,如图4所示,图4为图3所示具体实现方式中实现S203的流程示意图,S203具体可以通过以下几个步骤实现:
S2031、针对每个预分业务流组,计算该预分业务流组中所有业务流的业务量总和;
S2032、根据每个预分业务流组的业务量总和以及预设阈值,确定每个预分业务流组待聚合出的目标业务流组的数量;
本步骤中所确定的数量,可以根据预分业务流组的业务量总和除以预设阈值所得到的数值来确定。所得到的数值为小数时,可以将小数点后面的部分直接去掉即下取整,或采用四舍五入的方式,对所得到的数值进行取整处理,取整处理后的数值就是该预分业务流组待聚合出的目标业务流组的数量。例如,采用去掉小数点后面的部分来进行取整处理,一个预分业务流组的业务量总和除以预设阈值所得到的数值为0.4,则这个预分业务流组待聚合出的目标业务流组的数量为0,另一个预分业务流组的业务量总和除以预设阈值所得到的数值为2.8,则这个预分业务流组待聚合出的目标业务流组的数量为2。
S2033、从每个的预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组。
本步骤按照S2032中所确定的数量进行聚合。本领域技术人员可以理解的是,如果所确定的数量为0,则本步骤中针对相应的预分业务流组不聚合;如果所确定的数量为大于0的数,则针对相应的预分业务流组聚合,能够聚合出对应数量的目标业务流组。
具体的,在一种具体实现方式中,所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤,具体可以包括:针对每个预分业务流组,执行以下步骤:
(1)、按照本组中业务流的业务量大小,将本组中的业务流排序;
(2)、按照排序得到的顺序,确定出业务量总和最接近且不大于预设阈值的未聚合的业务流;
(3)、判断其余未聚合的业务流中,是否存在至少一个业务流,使得所确定的业务流与存在的至少一个业务流的业务量总和等于预设阈值;
(4)、如果存在,将所确定的业务流与存在的至少一个业务流聚合成目标业务流组,否则,将所确定的业务流聚合成目标业务流组;
(5)、返回按照排序得到的顺序,确定出业务量总和最接近且不大于预设阈值的未聚合的业务流的步骤,直到聚合出该预分业务流组对应数量的待向控制器请求转发路径的目标业务流组。
下面将对上述针对每个预分业务流组,所执行的步骤(1)-(5)进行详细说明。步骤(1)中的排序,可以按照业务量从大到小的顺序,将本组中的业务流排序,也可以按照业务量从小到大的顺序,将本组中的业务流排序。通过步骤(2)能够确定出一些业务量总和接近且不大于预设阈值的业务流,通过步骤(3)能够进一步且尽可能地使业务量总和等于预设阈值。通过步骤(1)-(5)聚合出的目标业务流组,能够尽可能地使目标业务流组中的所有业务流的业务量总和接近预设阈值,也尽可能的等于预设阈值。后续转发这样的目标业务流组,能够提高转发效率,这样也就提高了业务流聚合的有效性。
另外,步骤(1)中的排序,在按照业务量从大到小的顺序,将本组中的业务流排序的情况下,步骤(2)中优先确定出业务量较大的业务流,步骤(3)中再从一些较小业务量的业务流中找出使业务量总和等于预设阈值的业务流。采用这种方式,可以尽可能地使聚合的目标业务流组中所有业务流的业务量总和等于预设阈值,进一步提高业务流聚合的合理性。
需要说明的是,通过利用上述图3或图4所示的具体实现方式,在从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,还可能存在至少一个预分业务流组,这些组中的业务流没有全部被聚合。因此,可选的,在利用上述图3或图4所示的具体实现方式的基础上,该业务流聚合方法还可以增加以下几个步骤:
(1)、计算每个预分业务流组对应的目标簇心到预设原点簇心的距离;
本步骤中的距离,可以根据目标簇心对应的预设属性值,以及预设原点簇心对应的预设属性值所计算的欧式距离,预设原点对应的预设属性值,可以是任一预分业务流组对应的目标簇心所对应的预设属性值,也可以是其它预设的值作为原点簇心所对应的预设属性值。
(2)、按照所计算的距离的大小,将每个预设业务流组排序;
本步骤将预分业务流组排序,排序后的预分业务流组,相邻的两个预分业务流组的业务流的相似性,要比不相邻的两个预分业务流组的相似性要高。
(3)、在从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,优先按照预分业务流组的排序顺序,再按照每个预分业务流组中业务流的排序顺序,依次将业务量总和最接近且不大于预设阈值的未聚合的业务流,聚合成一个待向控制器请求转发路径的目标业务流组。
在从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,有的预分业务流组中可能还剩余未被聚合的业务流,有的预分业务流组中的业务流可能已经全部被聚合。针对未被聚合的业务流,继续对这些未被聚合的业务流进行聚合,有利于进一步降低控制器的控制开销,和网络的转发负担。考虑到从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组之后,每组剩余的未被聚合的业务流的业务量总和均可能小于预设阈值,如果直接将一个预分业务流组中的剩余未被聚合的业务流聚合为一个目标业务流组,聚合出的目标业务流组中的业务流的业务量总和可能较小,聚合的有效性较低。
考虑到排序后的预分业务流组,相邻的两个预分业务流组的业务流的相似性,要比不相邻的两个预分业务流组的相似性要高。在限制业务量总和的最大值的情况下,尽可能的将相邻预分业务流组中的业务流聚合在一起,使得聚合出的目标业务流组中的业务流的业务量总和接近或等于预设阈值,这样就能够提高聚合的有效性。
需要说明的是,本发明实施例中聚合出的任一目标业务流组,本组内的业务流的预设属性值相似,且业务量总和接近且不大于预设阈值,因此,说明每个目标业务组本身的质量是符合后续路径分配要求的。同样,通过本发明实施例,还可以聚合出较为合理的数量的目标业务流组。根据到达的所有同源同目的业务流的业务量总和除以预设阈值,可以通过四舍五入或上取整的方式,确定一个用于评判的整数,最终目标业务流组的数量越接近这个用于评判的整数,说明聚合的数量越合理。实际应用时,可以证明最终聚合的目标业务流组的数量是接近这个用于评判的整数的。
下面结合具体的应用实例,对本发明实施例所提供的一种业务流聚合方法进行介绍。
假设,业务流的预设属性值由时延和丢包率组成,针对到达的业务流f1、业务流f2…业务流f40等40条业务流进行聚合,这些业务流要求的时延的最小值为6ms,最大值为10ms;要求的丢包率的最小值为2%,最大值为4%,目标簇心的数量预设为4,则根据上述公式可以计算出4个目标预设属性值,分别为(6.5,2.25)、(7.5,2.75)、(8.5,3.25)、(9.5,3.75),这四个目标预设属性值分别确定为四个目标簇心C1、C2、C3、C4对应的预设属性值。
在进行预分组的每轮迭代过程中,采用S2022中提到的公式,分别计算这40个业务流分别到C1、C2、C3、C4这个四个目标簇心的距离,确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组。四个目标簇心C1、C2、C3、C4所对应的过渡业务流组分别用F1、F2、F3、F4表示。例如,业务流f1的预设属性值为(6.2,2.35),离(6.5,2.25)的距离最近,则可以将业务流f1加入到C1对应的过渡业务流组F1中。将业务流f1、业务流f2…业务流f40等40条业务流加入到本轮计算所对应的过渡业务流组中。针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值。例如,目标簇心C1当前对应的预设属性值为(6.5,2.25),经过一轮预迭代后,过渡业务流组F1包含业务流f1和业务流f2,业务流f1的属性值为(6.2,2.35),业务流f2的属性值为(6.0,2.45),则根据过渡业务流组F1所确定的过渡预设属性值为(6.0,2.35)。以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值。例如,以过渡预设属性值(6.0,2.35)更新目标簇心C1对应的预设属性值。根据上述步骤,经过不断的迭代,直到四个目标簇心C1、C2、C3、C4所对应的预设属性值都收敛。通过上述迭代的方式将业务流f1、业务流f2…业务流f40等40条业务流预分组,得到四个预分业务流组,如表一所示,最后一轮迭代的过渡业务流组F1、F2、F3、F4就是预分业务流组。表一中,预分业务流组F1包括业务流f1、业务流f2…业务流f10等10个业务流,对应的业务量分别是5、5、5、5、5、5、5、4、4、2;预分业务流组F2包括业务流f11、业务流f12…业务流f20等10个业务流,对应的业务量分别是5、5、5、4、4、3、3、3、2、1;预分业务流组F3包括业务流f21、业务流f22…业务流f30等10个业务流,对应的业务量分别是5、5、4、3、3、2、2、1、1、1;预分业务流组F4包括业务流f31、业务流f32…业务流f40等10个业务流,对应的业务量分别是1、1、1、1、1、1、1、1、1、1。其中,业务量的单位均为M。另外,表一中,预分业务流组F1、预分业务流组F2、预分业务流组F3、预分业务流组F4是以预分业务流组F1对应的目标簇心为原点簇心,通过计算每个目标簇心到原点簇心的欧式距离,按照距离从小到大的顺序排列的,且每个组中的业务流是按照业务量从大到小的顺序排列的。
表一
从表一中可以看出,预分业务流组F1、预分业务流组F2、预分业务流组F3、预分业务流组F4各自对应的业务流的业务量总和分别为45M、35M、27M、10M,预设阈值是根据当前网络剩余带宽得到的,确定为20M。初步计算45M除以20M等于2.25,通过舍去小数点后面部分进行取整,得到数量2,同理,其他几个业务量总和所确定的数量分别为1、1、0。这40个业务流的业务量总和为117M,处于20M等于5.85,向上取整,得到数量6。可以将最终实际聚合出的目标业务流组的数量,与根据这40个业务流的业务量总和为117M确定的数量进行比较,可以用于判断业务流聚合是否合理,并具有一定的可信度。
预分业务流组F1对应的数量是2,当前需要聚合出2个目标业务流组。按照预分业务流组F1中业务流的排序顺序,依次确定业务量总和最接近且不大于预设阈值的业务流f1-f4,业务量总和为20M,这四个业务流聚合成一个目标业务流组;再依次确定业务量总和最接近且不大于预设阈值的业务流f5-f8,业务量总和为19M,再从本组中其余未被聚合的业务流f9和业务流f10中确定是否存在在至少一个业务流,使得所确定的业务流f5-f8与存在的至少一个业务流的业务量总和等于20M,业务流f9和业务流f10的业务量分别为4M和2M,这两个业务量加上19M都大于20M,因此,不存在至少一个业务流,使得所确定的业务流f5-f8与之业务量之和等于20M。所以将业务流f5-f8聚合成一个目标业务流组。
针对预分业务流组F2,预分业务流组F2对应的数量是1,当前需要聚合出一个目标业务流组。按照预分业务流组F2中业务流的排序顺序,依次确定业务量总和最接近且不大于预设阈值的业务流f11-f14,业务量总和等于19M,再从本组中其余未被聚合的业务流f15-f20中确定是否存在至少一个业务流,使得所确定的业务流f5-f8与存在的至少一个业务流的业务量总和等于20M,可以确定出存的至少一个业务流是业务流f20,因此,将业务流f11-f14、业务流f20等五个业务流聚合成一个目标业务流组。
同理,将预分业务流组F3中的业务流f21-f25聚合成一个目标业务流组,当前对预分业务流组F3不进行聚合。
针对每个预分业务流组,聚合出该预分业务流组对应数量的待向控制器请求转发路径的目标业务流组之后,预分业务流组F1-F4均剩余未被聚合的业务流。优先按照预分业务流组的排序顺序,再按照每个预分业务流组中业务流的排序顺序,即按照业务流f9、f10、f15、f16、f17、f18、f19、f26、f27、f28、f29、f30、f31、f32、f33、f34、f35、f36、f37、f38、f39、f40的顺序排序,业务流f9、f10、f15、f16、f17、f18的业务量总和等于19M,再加上业务流f19之后,业务量总和等于21M,因此,将业务流f9、f10、f15、f16、f17、f18聚合成一个目标业务流组。同理,将f19、f26、f27、f28、f29、f30、f31、f32、f33、f34、f35、f36、f37、f38、f39、f40的业务量总和等于19M,因此,将这26个业务流聚合成一个目标业务流组。
最终,将到达的业务流f1、业务流f2…业务流f40等40条业务流聚合成6个目标业务流组,任一个目标业务流组中的业务流的预设属性值相似,且组内的业务量总和接近且不大于预设阈值。同时,最终聚合的数量与根据这40条业务流的业务量总和所确定数量6一致。因此,不管是从聚合后目标业务流组的质量上还是聚合后目标业务流的数量上,聚合结果都较为合理,因此,能够提高聚合的有效性。
需要说明的是,上述方法实施例的流程,可以是基于以下目标公式和约束条件所转化的:
所提出的目标函数如下:
min[(1-β)Tmax+βV]
基于带宽要求、时延差限制、丢包率差限制,以及目标业务流组的业务量总和的最高限制,所提出的约束条件如下:
xf,m∈{0,1}
其中,Tmax代表了聚合后的目标业务流组的业务量总和的最大值,β代表了聚合后目标业务流组的最大业务量总和Tmax以及目标业务流组之间的业务总量差值V之间的均衡参数,是通过多次实验调整获得的,以期望达到最好的效果,β的取值范围为[0,1]。
针对上述约束条件所涉及的公式中的参数,在这里统一说明,其中,Rf,t表示业务流的业务量,xf,m表示二进制变量,当业务流f聚合目标业务流组中时,xf,m的值为1,否则为0;delayf,t表示业务流f的时延,GC、GV表示相邻的预分业务流组;D表示是时延差限制;lossf,t表示业务流f的丢包率,L表示是丢包率差限制;V表示目标业务流组之间的业务总量差值,用于尽可能的保证聚合后的大流业务总量均衡,αm,c为从预分业务流组中提取用于组成目标业务流组的业务流的比例,Zm,t为预分业务流组中的业务流的业务量总和。另外,Smax和Smin表示所有业务流的时延的最大值和最小值,dmax和dmin表示所有业务流的丢包率的最大值和最小值,k表示预分组时的目标簇心的数量。
目标函数中采用Tmax,代表了对聚合后的目标业务流组的业务量总和的最大值进行了限制。因为当业务流无限制的聚合后,目标业务流组的业务量总和可能较大,由于网络中的带宽剩余的限制,会导致难以为无限制条件下聚合的目标业务流组找到合适的转发路径。因此,通过目标业务流组的业务量总和的最大值进行限制,实现对业务流聚合的有效性的提升。同时,根据簇心进行预分类时,考虑从相邻预分业务流组中提取的业务流的相似性,需要对相邻预分业务流组之间的预设属性值进行限制,否则会出现聚合后的目标业务流组中业务流的预设属性值不相似,无法搜索预设属性值限制范围更窄的转发路径。上述约束条件中的两个不等式方程:
是基于对时延和丢包率的限制提出的。前者表示对时延差的限制,用于保证聚合后的目标业务流组中业务流之间时延的相似性,后者表示对丢包率差的限制,用于保证聚合后的目标业务流组中业务流之间的丢包率的相似性。通过二进制变量xf,m进行约束,因为每条业务流只能聚合到一个目标业务流组中,因此,无论来自哪个预分业务流组,所有业务流对应对应的二进制变量xf,m之和必为1。
在上述方法实施例的基础上,本发明实施例提供了一种业务流聚合装置,参照图5,图5为本发明实施例提供的一种业务流聚合装置的结构示意图,该装置包括:
第一计算模块51,用于针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
预分组模块52,用于将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,所述预设属性值相似是指预设属性值符合预定相似条件;
第一聚合模块53,用于分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
应用图5所示实施例,针对预设时间段内到达的同源同目标的业务流,计算每个业务流的预设属性值和业务量;将预设属性值相似的业务流分为一组,得到预分业务流组,其中,预设属性值相似是指预设属性值符合预定相似条件;分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,在这个业务流聚合过程中,由于每个预分业务流组中业务流的预设属性值相似,所以目标业务流组中的业务流的预设属性值也相似。同时目标业务流组内业务流的业务量总和不大于预设阈值。因此,达到了同时保证带宽要求和属性相似性要求的目的,从而提高聚合的有效性。
参照图6,图6为图5所示实施例中预分组模块的结构示意图,预设属性值为由多个子预设属性值组成的多维属性值;
预分组模块52,可以包括:
初始化子模块521,用于初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
第一计算子模块522,用于根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
预分组子模块523,用于确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
组合子模块524,用于针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
更新子模块525,用于以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,直至每个目标簇心对应的预设属性值收敛;
第一确定子模块526,用于在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
初始化子模块521,包括:获得单元和第一确定单元(图中未示出);
获得单元,用于根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
第一确定单元,用于将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量。
第一计算子模块522,具体根据以下公式计算每个业务流到每个目标簇心的距离:
其中,h表示业务流的序号,i表示目标簇心的序号,表示第h个业务流到第i个目标簇心的距离;j表示维度序号,表示第h个业务流的预设属性值的第j维度的子预设属性值,表示第i个目标簇心对应的预设属性值的第j维度的子预设属性值,m表示预设属性值的维度的数量。
参照图7,图7为图6所示具体实现方式中预分组模块的结构示意图,第一聚合模块53,包括:
第二计算子模块531,用于针对每个预分业务流组,计算该预分业务流组中所有业务流的业务量总和;
第二确定子模块532,用于根据每个预分业务流组的业务量总和以及预设阈值,确定每个预分业务流组待聚合出的目标业务流组的数量;
聚合子模块533,用于从每个的预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组。
图7所示实施例的一种实施方式中,聚合子模块533,包括:排序单元、第二确定单元、判断单元、聚合单元、返回单元(图中未示出);
针对每个预分业务流组,执行以下步骤:
排序单元,用于按照本组中业务流的业务量大小,将本组中的业务流排序;
第二确定单元,用于按照排序得到的顺序,确定出业务量总和最接近且不大于预设阈值的未聚合的业务流;
判断单元,用于判断其余未聚合的业务流中,是否存在至少一个业务流,使得所确定的业务流与存在的至少一个业务流的业务量总和等于预设阈值;
聚合单元,用于判断单元的判断结果为存在时,将所确定的业务流与存在的至少一个业务流聚合成目标业务流组,否则,将所确定的业务流聚合成目标业务流组;
返回单元,用于返回按照排序得到的顺序,确定出业务量总和最接近且不大于预设阈值的未聚合的业务流的步骤,直到聚合出该预分业务流组对应数量的待向控制器请求转发路径的目标业务流组。
在图6或图7所示实施例的基础上,业务流聚合装置还可以包括:第二计算模块、排序模块和第二聚合模块(图中未示出)。
第二计算模块,用于计算每个预分业务流组对应的目标簇心到预设原点簇心的距离;
排序模块,用于按照所计算的距离的大小,将每个预设业务流组排序;
第二聚合模块,用于在所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,优先按照预分业务流组的排序顺序,再按照每个预分业务流组中业务流的排序顺序,依次将业务量总和最接近且不大于所述预设阈值的未聚合的业务流,聚合成一个待向控制器请求转发路径的目标业务流组。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的每个实施例均采用相关的方式描述,每个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种业务流聚合方法,其特征在于,包括:
针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,所述预设属性值相似是指预设属性值符合预定相似条件;
分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
2.根据权利要求1所述的聚合方法,其特征在于,所述预设属性值为由多个子预设属性值组成的多维属性值;
所述将预设属性值相似的业务流分为一组,得到至少一个预分业务流组的步骤,包括:
初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,直至每个目标簇心对应的预设属性值收敛;
在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
3.根据权利要求2所述的聚合方法,其特征在于,所述初始化多个目标簇心,得到每个目标簇心对应预设属性值的步骤,包括:
根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,所述预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量。
4.根据权利要求2或3所述的聚合方法,其特征在于,所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,包括:
根据以下公式计算每个业务流到每个目标簇心的距离:
其中,h表示业务流的序号,i表示目标簇心的序号,表示第h个业务流到第i个目标簇心的距离;j表示维度序号,表示第h个业务流的预设属性值的第j维度的子预设属性值,表示第i个目标簇心对应的预设属性值的第j维度的子预设属性值,m表示所述预设属性值的维度的数量。
5.根据权利要求2所述的聚合方法,其特征在于,所述分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组的步骤,包括:
针对每个预分业务流组,计算该预分业务流组中所有业务流的业务量总和;
根据每个预分业务流组的业务量总和以及所述预设阈值,确定每个预分业务流组待聚合出的目标业务流组的数量;
从每个的预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组。
6.根据权利要求5所述的聚合方法,其特征在于,所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤,包括:
针对每个预分业务流组,执行以下步骤:
按照本组中业务流的业务量大小,将本组中的业务流排序;
按照排序得到的顺序,确定出业务量总和最接近且不大于所述预设阈值的未聚合的业务流;
判断其余未聚合的业务流中,是否存在至少一个业务流,使得所确定的业务流与存在的至少一个业务流的业务量总和等于所述预设阈值;
如果存在,将所确定的业务流与存在的至少一个业务流聚合成目标业务流组,否则,将所确定的业务流聚合成目标业务流组;
返回按照排序得到的顺序,确定出业务量总和最接近且不大于所述预设阈值的未聚合的业务流的步骤,直到聚合出该预分业务流组对应数量的待向控制器请求转发路径的目标业务流组。
7.根据权利要求5或6所述的聚合方法,其特征在于,还包括:
计算每个预分业务流组对应的目标簇心到预设原点簇心的距离;
按照所计算的距离的大小,将每个预设业务流组排序;
在所述从每个预分业务流组中,聚合出对应数量的待向控制器请求转发路径的目标业务流组的步骤之后,优先按照预分业务流组的排序顺序,再按照每个预分业务流组中业务流的排序顺序,依次将业务量总和最接近且不大于所述预设阈值的未聚合的业务流,聚合成一个待向控制器请求转发路径的目标业务流组。
8.一种业务流聚合装置,其特征在于,包括:
第一计算模块,用于针对预设时间段内到达的同源同目的的业务流,计算每个业务流的预设属性值和业务量;
预分组模块,用于将预设属性值相似的业务流分为一组,得到至少一个预分业务流组,其中,所述预设属性值相似是指预设属性值符合预定相似条件;
第一聚合模块,用于分别对得到的每个预分业务流组进行业务流聚合,得到待向控制器请求转发路径的目标业务流组,其中,任一目标业务流组中所有业务流的业务量总和不大于预设阈值。
9.根据权利要求8所述的聚合装置,其特征在于,所述预设属性值为由多个子预设属性值组成的多维属性值;
所述预分组模块,包括:
初始化子模块,用于初始化多个目标簇心,得到每个目标簇心对应的预设属性值;
第一计算子模块,用于根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离;
预分组子模块,用于确定每个业务流对应的最小距离,将最小距离对应同一目标簇心的业务流分成一组,得到至少一个过渡业务流组;
组合子模块,用于针对每个过渡业务流组,将该过渡业务流组中所有业务流的每个维度的最小子预设属性值,按照对应维度组合成过渡预设属性值;
更新子模块,用于以每个过渡业务流组的过渡预设属性值更新相应目标簇心对应的预设属性值,返回所述根据每个业务流的预设属性值,以及每个目标簇心对应的预设属性值,计算每个业务流到每个目标簇心的距离的步骤,直至每个目标簇心对应的预设属性值收敛;
第一确定子模块,用于在确定每个目标簇心对应的预设属性值收敛后,将过渡业务流组确定为预分业务流组。
10.根据权利要求9所述的聚合装置,其特征在于,所述初始化子模块,包括:
获得单元,用于根据预设公式计算多个目标预设属性值的每一维度的目标子预设属性值,获得对应数量个目标预设属性值:
第一确定单元,用于将每个目标预设属性值,确定为一个目标簇心对应的预设属性值;
其中,所述预设公式为:
其中,i表示目标预设属性值的序号,j表示维度序号,表示i个目标预设属性值的第j维度的子预设属性值,表示所有业务流的第j维度的子预设属性值的最小值,表示所有业务流的第j维度的子预设属性值的最大值,k表示预设的目标预设属性值的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710072972.5A CN106850460B (zh) | 2017-02-10 | 2017-02-10 | 一种业务流聚合方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710072972.5A CN106850460B (zh) | 2017-02-10 | 2017-02-10 | 一种业务流聚合方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106850460A true CN106850460A (zh) | 2017-06-13 |
CN106850460B CN106850460B (zh) | 2020-05-19 |
Family
ID=59122291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710072972.5A Active CN106850460B (zh) | 2017-02-10 | 2017-02-10 | 一种业务流聚合方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106850460B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023065893A1 (zh) * | 2021-10-20 | 2023-04-27 | 华为云计算技术有限公司 | 一种网络调度方法、系统及设备 |
CN117675363A (zh) * | 2023-12-07 | 2024-03-08 | 广州融服信息技术有限公司 | 一种基于机器学习的动态网络攻击识别方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009637A (zh) * | 2006-01-26 | 2007-08-01 | 华为技术有限公司 | 服务质量控制方法及系统 |
CN101047949A (zh) * | 2006-03-27 | 2007-10-03 | 华为技术有限公司 | 业务数据流的承载控制方法 |
CN101282194A (zh) * | 2007-04-06 | 2008-10-08 | 华为技术有限公司 | 实现块重复传输的发送、接收方法和发射机、接收机 |
CN101969665A (zh) * | 2010-10-11 | 2011-02-09 | 东南大学 | 一种超高速无线局域网帧聚合装置及其控制方法 |
WO2012108383A1 (ja) * | 2011-02-07 | 2012-08-16 | 日本電気株式会社 | 経路選択方法および制御サーバ |
CN103425524A (zh) * | 2013-07-17 | 2013-12-04 | 北京邮电大学 | 一种均衡多业务终端聚合的方法和系统 |
-
2017
- 2017-02-10 CN CN201710072972.5A patent/CN106850460B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009637A (zh) * | 2006-01-26 | 2007-08-01 | 华为技术有限公司 | 服务质量控制方法及系统 |
CN101047949A (zh) * | 2006-03-27 | 2007-10-03 | 华为技术有限公司 | 业务数据流的承载控制方法 |
CN101282194A (zh) * | 2007-04-06 | 2008-10-08 | 华为技术有限公司 | 实现块重复传输的发送、接收方法和发射机、接收机 |
CN101969665A (zh) * | 2010-10-11 | 2011-02-09 | 东南大学 | 一种超高速无线局域网帧聚合装置及其控制方法 |
WO2012108383A1 (ja) * | 2011-02-07 | 2012-08-16 | 日本電気株式会社 | 経路選択方法および制御サーバ |
CN103425524A (zh) * | 2013-07-17 | 2013-12-04 | 北京邮电大学 | 一种均衡多业务终端聚合的方法和系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023065893A1 (zh) * | 2021-10-20 | 2023-04-27 | 华为云计算技术有限公司 | 一种网络调度方法、系统及设备 |
CN117675363A (zh) * | 2023-12-07 | 2024-03-08 | 广州融服信息技术有限公司 | 一种基于机器学习的动态网络攻击识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106850460B (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108717570A (zh) | 一种脉冲神经网络参数量化方法 | |
Heung et al. | Coordinated road-junction traffic control by dynamic programming | |
CN107247989A (zh) | 一种神经网络训练方法及装置 | |
CN108090508A (zh) | 一种分类训练方法、装置及存储介质 | |
CN105225503B (zh) | 交通控制子区优化与自适应调整方法 | |
CN108090197A (zh) | 一种多维社交网络的社区发现方法 | |
CN104036324B (zh) | 一种基于遗传算法的通信网络容量可靠性最优设计方法 | |
CN107861916A (zh) | 一种用于针对神经网络执行非线性运算的方法和装置 | |
CN108335497A (zh) | 一种交通信号自适应控制系统及方法 | |
CN107093050A (zh) | 一种车辆调度方法及系统 | |
CN107705556A (zh) | 一种基于支持向量机和bp神经网络结合的交通流预测方法 | |
CN108803332A (zh) | 基于改进生物地理学的路径规划方法 | |
CN106777449A (zh) | 基于二进制粒子群算法的配电网络重构方法 | |
CN108346293A (zh) | 一种实时交通流短时预测方法 | |
CN107306207A (zh) | 结合Skyline计算与多目标强化学习服务组合方法 | |
CN107808194A (zh) | 一种基于Rete推理网络的复合推理方法 | |
CN106850460A (zh) | 一种业务流聚合方法及装置 | |
CN108009925A (zh) | 一种基于网络聚类的基金资产配置系统及方法 | |
CN110444022A (zh) | 交通流数据分析模型的构建方法和装置 | |
CN106910350A (zh) | 一种寻找信号控制交叉口群关键路径的方法 | |
CN111709535A (zh) | 基于演化计算的联邦学习方法、装置、中心服务器及介质 | |
Johns et al. | Knowledge-based multi-objective genetic algorithms for the design of water distribution networks | |
CN107451617A (zh) | 一种图转导半监督分类方法 | |
CN107155215A (zh) | 一种应用归属服务集群的分配方法和装置 | |
CN106897292A (zh) | 一种互联网数据聚类方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |