基于数据传输行为识别P2P流量
1. 相关工作
在网络流量分类领域,已有多种方法被提出:
- 基于负载签名的方法 :负载签名在网络流量分类中很有用。应用签名是P2P协议中的常见字符串,用于识别P2P流量。除了基于签名的方法,还有其他基于负载的方法。例如,ACAS使用前N字节的负载作为输入来训练机器学习模型,并用于分类流量;Levchenko等人在负载上构建了多个概率模型,包括将每个n字节流分布视为N个独立字节分布的乘积的统计模型,以及依赖于引入字节之间独立性的马尔可夫过程模型。
- 基于机器学习算法的方法 :机器学习算法通过使用流量特征(如数据包的平均长度、数据包的到达间隔等)对网络流量进行分类,可分为监督和无监督方法。Zander等人比较了几种监督算法,包括朴素贝叶斯、C4.5决策树、贝叶斯网络和朴素贝叶斯树,发现这些算法的分类精度相似,但计算性能可能有显著差异。McGregor等人使用无监督期望最大算法对流量进行聚类,实验发现分类的平均精度很高,但某些应用很难区分。
- 基于应用通信模式的方法 :应用的特殊通信模式也用于流量分类。Karagiannis等人研究了传输层中P2P流量的通信模式以识别P2P流量;BLINC试图在三个层面(社会层面、功能层面和应用层面)捕获主机的通信模式,使用图元来描述每个应用的通信模式并对网络流量进行分类。然而,很难找到一个通用的通信模式适用于所有P2P应用。Y Hu等人提出了一种构建目标应用行为轮廓的方法,通过数据挖掘算法在训练阶段构建每个应用的轮廓。
使用数据传输行为识别P2P流量最早由Xing Lu等人提出,但他们仅使用