论文部分内容阅读
流量分类是网络管理中的一项基本任务,它将应用程序与其生成的数据包或流相关联。它有助于在网络中对资源的使用进行分配、控制和监视,并在支持服务质量(Qo S)的网络和网络安全领域中发挥重要作用。但随着互联网的快速发展,新的网络应用程序层出不穷,针对上述情况,研究者们提出了多种不同的流量分类研究方法。网络流量分类的方法概括起来有以下三种方式:基于端口、基于载荷以及基于机器学习。目前基于机器学习的网络流量分类技术正在被广泛地使用,但是往往遇到以下问题:网络流量类不平衡问题以及难以适应动态的实时网络流量。为此,本文提出了以下解决方法:首先,大量的机器学习方案没有考虑网络流量类不均衡问题,这通常会导致分类器只能正确分类出多数流量类,少数流量类被错误分类而造成性能下降,本文经过大量研究,使用流量的相关性以及使用距离参数来优化KNN算法决策边界,提出了一种基于网络流相关性和优化KNN算法的网络流量分类方法(KNN-C)。该方法能够在解决网络流量类不均衡问题同时实现高精度分类;其次,本文提出了自学习网络流量分类方法(SNTC)。由于网络的动态性,基于机器学习的分类很快就会过时。这意味着每当网络上出现新的应用程序或行为时,必须不断地对模型进行重新训练。本文中,在使用机器学习算法进行流量分类的基础上,仅仅使用少量的训练实例,采用自学习动态策略不断更新分类模型。实验结果表明,在真实的流量数据集下,自学习网络流量分类方法可以实现对非静态网络流量进行高精度分类。本文将流量关系和自学习机器学习策略相结合并应用到网络流量分类的研究中,通过使用距离参数和流量关系,优化了原KNN算法的决策边界,之后进一步将其应用到自学习网络流量分类策略中。经过实验表明,本文方法在对少数流量类实现高精度的同时,能动态适应网络变化。