论文部分内容阅读
摘要: P2P业务不断增加,造成网络宽带的巨大消耗,降低整个网络的性能,同时还带来网络管理和设计等一系列问题。介绍一种监测P2P业务的系统,分析用Netflow采集器采集到的网络流量,用PTP方法识别出P2P流,并用聚集过程的方差分析法估计Hurst参数,分析P2P流的自相似性。
关键词: P2P;PTP;自相似性;Netflow
中图分类号:TP393.08文献标识码:A文章编号:1671-7597(2012)0320011-02
0 引言
随着计算机网络的广泛应用和多媒体资源的丰富,P2P业务在互联网中占有越来越多的比例,造成了网络带宽的巨大消耗,引起网络拥塞,降低其他业务的性能,对网络的管理和设计带来了挑战[1]。
多年以来,网络设计和系统分析人员通常利用排队分析理论来进行容量规划和性能预测,但在许多实际场合,人们发现排队分析所得到的预测结果与时间观察到的性能差异很大,然而,排队分析的有效性依赖于数据通信量的泊松性质。近几年来研究表明,在某些环境中,通信量分布是自相似的而不是泊松的。
本文设计并实现了一个高速局域网中的P2P业务流量监测系统,用Cisco的NetFlow技术采集局域网中的流量,再从采集到的数据中识别出P2P流,并对P2P业务的自相似特性进行分析。
1 P2P流量监测系统
1.1 P2P识别算法概述
系统使用P2P非负载识别算法(PTP)识别P2P流。PTP方法仅检查包头以探测P2P流,并且没有以任何形式的检查用户负载。它是一种不用检查用户负载而在任意端口上识别P2P流的方法。该方法采用两种主要的启发式识别P2P流,第一个为TCP/UDP启发式:检查源和目的地址IP都使用TCP和UDP来转发数据的IP对;第二个为{IP,Port}启发式:通过研究{IP,port}对的连接特点来得到基于P2P点如何互相连接[5]。
TCP/UDP启发式检查采集到数据库中的每个流记录,如果其源和目的同时使用TCP和UDP作为传输协议,并且源和目的端口都不在那些非P2P应用的端口范围内,那么它就是P2P流。非P2P应用端口集合为{135,137,139,445,53,123,500,554,7070,1755,6970,5000
5001,7000,7514,6667,6112,6868,6899,3531}。
{IP,Port}启发式检查数据库中的每个流的IP对,如果该IP对的源或目的地址与之前用TCP/UDP启发式识别出的P2P IP对中的某个源或目的地址相同,则该IP对是一个P2P应用。
PTP算法的简单流程图如图1所示。
1.2 系统的总体结构
系统有两部分组成,流量捕获模块和流量检测模块。捕获模块使用Netflow技术从路由器捕获数据包,然后把数据存储到数据库中,使用流量识别算法从数据库中的流记录中识别出P2P流,分析结果,通过Web输出到网页上。
图2系统总体结构图
1.3 系统的实施环境
系统实现环境由JSP开发语言和MySQL数据库组成,操作系统为Windows XP。
2 实验数据
2.1 数据来源
在小区连接湖南省电信的全双工10G网络链路上进行了流量的测量和采集。采集过程使用了Cisco路由器的NetFlow技术来收集数据。一个NetFlow流(Flow)定义在一个源IP地址和目的IP地址间转输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。
实验用到的数据是局域网中一天的流量,时间为从2012年1月7日17:25到1月8日15:40之间。
2.2 实验数据
图3为一天网络中出链路(从局域网到外网)流量的字节数流图。红色部分表示用PTP方法识别的P2P流的字节数,绿色部分表示为总的流量字节数。统计值包括了每种流量的最大值,最小值和平均值。
图3出链路流量字节的流量图
图4为入链路流量(从外网到局域网)的字数流量图。
图4入链路流量字节的流量图
图5为出链路流(Flow)的数量图。
图5出链路流的数量图
图6为入链路流的数量图。
图6入链路流的数量图
这一天中的流总数为7226541个,字节总数为1354.4G,识别出的P2P流数为4134549个,占总流量的57.2%,字节数为701.4G,占总字节数的51.8%。
3 P2P业务的自相似特性分析
3.1 自相似的定义
关键词: P2P;PTP;自相似性;Netflow
中图分类号:TP393.08文献标识码:A文章编号:1671-7597(2012)0320011-02
0 引言
随着计算机网络的广泛应用和多媒体资源的丰富,P2P业务在互联网中占有越来越多的比例,造成了网络带宽的巨大消耗,引起网络拥塞,降低其他业务的性能,对网络的管理和设计带来了挑战[1]。
多年以来,网络设计和系统分析人员通常利用排队分析理论来进行容量规划和性能预测,但在许多实际场合,人们发现排队分析所得到的预测结果与时间观察到的性能差异很大,然而,排队分析的有效性依赖于数据通信量的泊松性质。近几年来研究表明,在某些环境中,通信量分布是自相似的而不是泊松的。
本文设计并实现了一个高速局域网中的P2P业务流量监测系统,用Cisco的NetFlow技术采集局域网中的流量,再从采集到的数据中识别出P2P流,并对P2P业务的自相似特性进行分析。
1 P2P流量监测系统
1.1 P2P识别算法概述
系统使用P2P非负载识别算法(PTP)识别P2P流。PTP方法仅检查包头以探测P2P流,并且没有以任何形式的检查用户负载。它是一种不用检查用户负载而在任意端口上识别P2P流的方法。该方法采用两种主要的启发式识别P2P流,第一个为TCP/UDP启发式:检查源和目的地址IP都使用TCP和UDP来转发数据的IP对;第二个为{IP,Port}启发式:通过研究{IP,port}对的连接特点来得到基于P2P点如何互相连接[5]。
TCP/UDP启发式检查采集到数据库中的每个流记录,如果其源和目的同时使用TCP和UDP作为传输协议,并且源和目的端口都不在那些非P2P应用的端口范围内,那么它就是P2P流。非P2P应用端口集合为{135,137,139,445,53,123,500,554,7070,1755,6970,5000
5001,7000,7514,6667,6112,6868,6899,3531}。
{IP,Port}启发式检查数据库中的每个流的IP对,如果该IP对的源或目的地址与之前用TCP/UDP启发式识别出的P2P IP对中的某个源或目的地址相同,则该IP对是一个P2P应用。
PTP算法的简单流程图如图1所示。
1.2 系统的总体结构
系统有两部分组成,流量捕获模块和流量检测模块。捕获模块使用Netflow技术从路由器捕获数据包,然后把数据存储到数据库中,使用流量识别算法从数据库中的流记录中识别出P2P流,分析结果,通过Web输出到网页上。
图2系统总体结构图
1.3 系统的实施环境
系统实现环境由JSP开发语言和MySQL数据库组成,操作系统为Windows XP。
2 实验数据
2.1 数据来源
在小区连接湖南省电信的全双工10G网络链路上进行了流量的测量和采集。采集过程使用了Cisco路由器的NetFlow技术来收集数据。一个NetFlow流(Flow)定义在一个源IP地址和目的IP地址间转输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。
实验用到的数据是局域网中一天的流量,时间为从2012年1月7日17:25到1月8日15:40之间。
2.2 实验数据
图3为一天网络中出链路(从局域网到外网)流量的字节数流图。红色部分表示用PTP方法识别的P2P流的字节数,绿色部分表示为总的流量字节数。统计值包括了每种流量的最大值,最小值和平均值。
图3出链路流量字节的流量图
图4为入链路流量(从外网到局域网)的字数流量图。
图4入链路流量字节的流量图
图5为出链路流(Flow)的数量图。
图5出链路流的数量图
图6为入链路流的数量图。
图6入链路流的数量图
这一天中的流总数为7226541个,字节总数为1354.4G,识别出的P2P流数为4134549个,占总流量的57.2%,字节数为701.4G,占总字节数的51.8%。
3 P2P业务的自相似特性分析
3.1 自相似的定义