一种协同流的识别方法、系统以及使用该方法的服务器技术方案

技术编号:16236203 阅读:167 留言:0更新日期:2017-09-19 16:15
一种协同流的识别方法包括:服务器获取网络数据传输中的数据流报头信息;根据所述数据流的报头信息获取流层面数据特征、应用层面数据流特征以及终端层面数据特征;根据网络中的历史数据学习获得权重矩阵,所述权重矩阵用于使得从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大;根据所述数据流层面数据特征的度量、所述应用层面数据流特征距离,所述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离;根据网络中任意两个数据流的特征距离,通过聚类算法将所述网络中的数据流分为若干个聚类集合,所述若干聚类集合中每一聚类集合为一协同流。

Synergetic flow identification method, system and server using the same

A recognition method of collaborative flow: server access to network data transmission in the data stream header information; according to the header information of the data stream to obtain flow level data characteristics, application level data flow characteristics and terminal level data according to the network characteristics; in the historical data study for the weight matrix, the weight matrix is used to make from belong to the same collaborative flow data flow between the minimum distance from the characteristics, belong to different characteristics between the collaborative flow data flow distance; according to the characteristics of the data flow level data measurement, the application level data flow distance, the terminal level data feature distance and the weight matrix. The characteristic distance computing network two arbitrary data stream; according to the characteristics of the network of two arbitrary data flow distance, clustering algorithm through the network The data stream is divided into several clustering sets, and each cluster in each cluster is a cooperative stream.

【技术实现步骤摘要】
一种协同流的识别方法、系统以及使用该方法的服务器
本专利技术涉及通信网络中的数据处理领域,尤其涉及一种协同流的识别方法、系统以及使用该方法的服务器。
技术介绍
新兴的网络并行技术的广泛应用,导致一种新的计算机网络概念的出现,即是协同流(coflow)。协同流的定义是一组具有语义关系(semanticrelationship)或者关联关系(correlationrelationship)的数据流的集合。协同流中的数据流往往属于同一个任务,因此协同流在对网络服务的性能要求上是一致的,即是最小化最迟数据流的完成时间,或者是协同流中的数据流需要在相同期限内完成传输。协同流概念的出现,为网络服务带来巨大的机遇和挑战。机遇在于现有的网络调度算法往往以数据流为单位,这种以数据流为单位的调度算法没有充分利用数据流之间的语义关系,因此以流为单位的调度只能优化流层面的性能指标,但在集群计算(clusteringcomputing)的场景下无法发挥有效作用。这是由于在集群计算的应用场景中,只有从属同一个计算任务的数据流均到达目的终端的情况下,计算任务才能进入下一个步骤。因此,以流为单位而不考虑数据流之间的语义关系的调度算法,可能带来的结果是从属同一个任务的前面几个数据流都很快完成传输,然而最后一个数据流在传输过程中出现很长的延迟,这种情况从终端应用的角度来说,网络的服务质量是很差的。如果调度算法考虑了数据流之间的协同关系,将协同流中的所有数据流当做一个整体进行调度,就可以保证从属于同一个任务的数据流能够在合理的时间间隔内完成传输,从而保证终端应用的计算可以及时地进入下一个阶段。然而,协同流的出现,带来了挑战在于协同流信息往往无法直接地显式地从数据流的报头获取。这是由于产生数据流的终端应用,在通常的情况下并不会在数据流的报头中提供任何显式的信息,作协同流识别之用。目前,现有技术方案提出通过聚类的方式识别网络中活跃数据流的协同关系。此方案无需对产生数据流的终端应用进行任何内核修改,也无需要求终端应用显式地向网络运营商提供任何有关协同流或者任务层面的信息。相反地,该技术方案基于的原理是:对于从属同一个协同流的数据流,往往在发送时间上很接近。该技术方案提出通过提取数据流的发送时间作为特征,利用k-means算法对数据流进行聚类,再用调度算法根据聚类得到的协同流信息,对网络中的数据流进行调度,提高网络的服务性能。然而,网络产生数据流的频率非常高,即使在一个非常短暂的单位时间内,比如一秒,小型的数据中心可以产生成千上万的数据流,然而这些数据流可能并不属于同一个协同流。因此采用数据里发送时间作为唯一的特征,可能导致聚类的准确率很低,因为该方案很有可能将没有任何语义关系的数据流归为同一个协同流,仅仅由于这些数据流的发送时间很接近。
技术实现思路
本专利技术实施例提供了一种协同流的识别方法、系统以及使用该方法的服务器,用于有效地提高了协同流的识别准确度,同时无需对应用进行内核修改,从而提高了协同流识别的时效性,满足网络调度的实时性需求。第一方面,提供了一种协同流的识别方法,用于在网络数据传输过程中识别协同流,其特征在于,所述方法包括:服务器获取网络数据传输中的数据流报头信息;根据所述数据流的报头信息获取流层面数据特征、应用层面数据流特征以及终端层面数据特征,其中所述数据流层面数据特征包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量以及传输协议的距离度量中的至少一种,所述应用层面数据流特征包括应用层面数据流特征距离,所述应用层面数据流特征距离用于指示数据传输的目的地地址和目的地端口的聚合程度或数据发送端IP地址集合的重叠程度,所述终端层面数据特征包括终端层面数据特征距离,所述终端层面数据特征距离用于指示数据流是否属于同一终端群落;根据网络中的历史数据学习获得权重矩阵,所述权重矩阵用于使得从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大,所述特征距离为所述数据流层面数据特征中的各度量、所述应用层面数据流特征距离以及述终端层面数据特征距离中的至少两种的加权距离;根据所述数据流层面数据特征的度量、所述应用层面数据流特征距离,所述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离;根据网络中任意两个数据流的特征距离,通过聚类算法将所述网络中的数据流分为若干个聚类集合,其中每一聚合流中的任意一个数据流与相同聚合流中任意另一个数据流的特征距离小于与不相同聚合流中任意一个数据流的特征距离,所述若干聚类集合中每一聚类集合为一协同流。结合第一方面,在第一方面的第一种实现方式中,所述数据流报头信息包括:数据流的源IP地址、数据流的源端口、数据流的目的地IP地址、数据流的目的地端口、数据流发送时间以及数据流的使用的传输协议。本申请实施例中涉及的数据特征来源,可根据数据流的报头信息提取,从而使用与现有的大多数网络系统。结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述发送时间的距离度量为两数据流发送时间的差值绝对值;所述数据包长度平均值度量为两数据流在数据包长度上平均值差值的绝对值;所述数据包长度方差度量为两数据流在数据包长度上方差差值的绝对值;所述数据包到达时间间隔的平均值度量为两数据流在数据包传输时间间隔上平均值差值的绝对值;所述数据包到达时间间隔方差度量为两数据流在数据包传输时间间隔上方差差值的绝对值;所述传输协议的距离度量指示数据包传输协议是否相同,如果相同为一非零常数,不同则为零。本申请实施例中通过量化各个特征来计算并识别协同流,从而提高数据处理的自动化以及智能化。结合第一方面或第一方面的第一种实现方式或第一方面的第二种实现方式,在第一方面的第三种实现方式中,所述根据网络中的历史数据学习获得权重矩阵包括:根据网络中的历史数据获取多维特征距离向量,所述多维特征距离向量包括至少两个维度,所述至少两个维度对应包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量、传输协议的距离度量、应用层面数据流特征距离以及终端层面数据特征距离中的至少两种,每一度量或特征距离构成所述多维特征距离向量的一个维度;根据网络中的历史数据学习获得所述多维特征距离向量的权重矩阵,以通过学习机制根据不同维度的特征距离对协同流识别有不同的作用来分配不同的权重,以使从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大。结合第一方面或第一方面的上述三种实现方式中任一种实现方式,在第一方面的第四种实现方式中,所述根据所述数据流层面数据特征的度量,所述应用层面数据流特征距离,述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离,包括:根据所述多维特征距离向量以及权重矩阵计算网络中任意两个数据流的特征距离。结合第一方面或第一方面的上述四种实现方式中任一种实现方式,在第一方面的第五种实现方式中,所述根据网络中的历史数据学习获得所述多维特征距离向量的权重矩阵,包括:将网络中历史数据流按照是否属于同一个协本文档来自技高网
...
一种协同流的识别方法、系统以及使用该方法的服务器

【技术保护点】
一种协同流的识别方法,用于在网络数据传输过程中识别协同流,其特征在于,所述方法包括:服务器获取网络数据传输中的数据流报头信息;根据所述数据流的报头信息获取流层面数据特征、应用层面数据流特征以及终端层面数据特征,其中所述数据流层面数据特征包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量以及传输协议的距离度量中的至少一种,所述应用层面数据流特征包括应用层面数据流特征距离,所述应用层面数据流特征距离用于指示数据传输的目的地地址和目的地端口的聚合程度或数据发送端IP地址集合的重叠程度,所述终端层面数据特征包括终端层面数据特征距离,所述终端层面数据特征距离用于指示数据流是否属于同一终端群落;根据网络中的历史数据学习获得权重矩阵,所述权重矩阵用于使得从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大,所述特征距离为所述数据流层面数据特征中的各度量、所述应用层面数据流特征距离以及述终端层面数据特征距离中的至少两种的加权距离;根据所述数据流层面数据特征的度量、所述应用层面数据流特征距离,所述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离;根据网络中任意两个数据流的特征距离,通过聚类算法将所述网络中的数据流分为若干个聚类集合,其中每一聚合流中的任意一个数据流与相同聚合流中任意另一个数据流的特征距离小于与不相同聚合流中任意一个数据流的特征距离,所述若干聚类集合中每一聚类集合为一协同流。...

【技术特征摘要】
1.一种协同流的识别方法,用于在网络数据传输过程中识别协同流,其特征在于,所述方法包括:服务器获取网络数据传输中的数据流报头信息;根据所述数据流的报头信息获取流层面数据特征、应用层面数据流特征以及终端层面数据特征,其中所述数据流层面数据特征包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量以及传输协议的距离度量中的至少一种,所述应用层面数据流特征包括应用层面数据流特征距离,所述应用层面数据流特征距离用于指示数据传输的目的地地址和目的地端口的聚合程度或数据发送端IP地址集合的重叠程度,所述终端层面数据特征包括终端层面数据特征距离,所述终端层面数据特征距离用于指示数据流是否属于同一终端群落;根据网络中的历史数据学习获得权重矩阵,所述权重矩阵用于使得从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大,所述特征距离为所述数据流层面数据特征中的各度量、所述应用层面数据流特征距离以及述终端层面数据特征距离中的至少两种的加权距离;根据所述数据流层面数据特征的度量、所述应用层面数据流特征距离,所述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离;根据网络中任意两个数据流的特征距离,通过聚类算法将所述网络中的数据流分为若干个聚类集合,其中每一聚合流中的任意一个数据流与相同聚合流中任意另一个数据流的特征距离小于与不相同聚合流中任意一个数据流的特征距离,所述若干聚类集合中每一聚类集合为一协同流。2.如权利要求1所述的协同流的识别方法,其特征在于,所述数据流报头信息包括:数据流的源IP地址、数据流的源端口、数据流的目的地IP地址、数据流的目的地端口、数据流发送时间以及数据流的使用的传输协议。3.如权利要求1或2所述的协同流的识别方法,其特征在于,所述发送时间的距离度量为两数据流发送时间的差值绝对值;所述数据包长度平均值度量为两数据流在数据包长度上平均值差值的绝对值;所述数据包长度方差度量为两数据流在数据包长度上方差差值的绝对值;所述数据包到达时间间隔的平均值度量为两数据流在数据包传输到达时间间隔上平均值差值的绝对值;所述数据包到达时间间隔方差度量为两数据流在数据包传输到达时间间隔上方差差值的绝对值;所述传输协议的距离度量指示数据包传输协议是否相同,如果相同为一非零常数,不同则为零。4.如权利要求1或2所述的协同流的识别方法,其特征在于,所述根据网络中的历史数据学习获得权重矩阵包括:根据网络中的历史数据获取多维特征距离向量,所述多维特征距离向量包括至少三个维度,所述至少三个维度包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量以及传输协议的距离度量中的至少一种度量以及应用层面数据流特征距离和终端层面数据特征距离,每一度量或特征距离构成所述多维特征距离向量的一个维度;根据网络中的历史数据学习获得所述多维特征距离向量的权重矩阵,以通过学习机制根据不同维度的特征距离对协同流识别有不同的作用来分配不同的权重,以使从属于同一个协同流的数据流之间特征距离最小,而从属于不同协同流的数据流之间的特征距离最大。5.如权利要求4所述的协同流的识别方法,其特征在于,所述根据网络中的历史数据学习获得所述多维特征距离向量的权重矩阵,包括:将网络中历史数据流按照是否属于同一个协同流,分为两个数据流对集合,所述两个数据流对集合分别对应协同流数据集以及非协同流数据集;找出一个半正定矩阵A,使得目标函数:的计算结果最小化,其中||fi-fj||A表示任意两个数据流的特征距离,D(i,j)为多维特征距离向量,D(i,j)T为多维特征距离向量的倒置矩阵,A为权重矩阵。6.如权利要求1至4任一项所述的协同流的识别方法,其特征在于,所述根据所述数据流层面数据特征的度量,所述应用层面数据流特征距离,所述终端层面数据特征距离以及所述权重矩阵,计算网络中任意两个数据流的特征距离,包括:获取网络数据传输中数据流的多维特征向量,所述多维特征距离向量包括至少三个维度,所述至少三个维度包括发送时间的距离度量、数据包长度平均值度量、数据包长度方差度量、数据包到达时间间隔的平均值度量、数据包到达时间间隔方差度量以及传输协议的距离度量中的至少一种度量以及应用层面数据流特征距离和终端层面数据特征距离,每一度量或特征距离构成所述多维特征距离向量的一个维度;根据所述多维特征距离向量以及权重矩阵计算网络中任意两个数据流的特征距离。7.如权利要求6所述的协同流的识别方法,其特征在于,所述根据所述多维特征距离向量以及权重矩阵计算网络中任意两个数据流的特征距离的计算公式为:其中d(i,j)以及||fi-fj||A均为表示网络中任意两个数据流的特征距离,D(i,j)为多维特征距离向量,D(i,j)T为多维特征距离向量的倒置矩阵,A为权重矩阵。8.如权利要求1至8任意一项所述的协同流的识别方法,其特征在于,所述根据所述数据流的报头信息获取应用层面数据流特征包括:将所述数据流根据源IP地址进行聚合,找出网络中的所有聚合流;找出聚合流的源IP地址集合;对属于同一个聚合流的数据流,直接赋值应用层面的特征距离;对不属于同一个聚合流的数据流,计算Jacard相似度并且计算应用层面的特征距离。9.如权利要求1至8任意一项所述的协同流的识别方法,其特征在于,所述根据所述数据流的报头信息获取终端层面数据特征包括:周期性地获取网络中的流量属性信息,所述流量属性信息包括终端流量模式、终端在一时间段内的数据流量以及终端在一时间段流的数据流个数中的至少两个;根据所获网络流量属性信息,构造加权流量矩阵,以区分所述终端流量模式、所述终端在一时间段内的数据流量以及所述终端在一时间段流的数据流个数在计算共同体中的作用以及权重不同,所述共同体为由至少两个终端组成的群落,每一所述群落中的终端具有所述终端流量模式、所述终端在一时间段内的数据流量以及所述终端在一时间段流的数据流个数中的至少一种流量属性相同;根据所述加权流量矩阵,利用谱聚类算法获取网络中共同体信息;根据数据流是否从属同一个共同体,确定当前网络中任意两个活跃数据流在共同体层面上的终端层面数据特征距离。10.如权利要求9所述的协同流的识别方法,其特征在于,所述构造加权流量矩阵,包括:周期性地从数据流信息采集筛选模块获取网络在T时间段内的数据流信息,并计算在这个时间段内的加...

【专利技术属性】
技术研发人员:陈志堂耿彦辉张弘陈凯
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1