校园网P2P流量综合检测及实时控制设计

2010-11-27 02:32谭红春张仁斌
关键词:校园网数据包端口

谭红春,张仁斌

( 1. 合肥工业大学 计算机与信息学院,安徽 合肥230009;2. 安徽中医学院 医药信息工程学院,安徽 合肥230038;)

随着互联网络技术的迅速发展和时间的推移,从最早出现的USENET和FidoNET[1]这两个非常著名的分布式对等网络,到目前我们广泛使用的P2P(Peer-to-Peer)技术,对等网络打破了以服务器为中心的C/S(Client/Server) 传统模式[2],充分地利用了网络带宽和分布广泛的网络资源,改变了信息的传输方式,减轻了服务器的负担,比传统的C/S模型有更强的健壮性、稳定性、可扩展性,并有较高的性价比,从而使得P2P的应用日益广泛,流量迅速增长.据统计,中国的P2P流量占整个网络流量的比例大约为40%~70%[3].

但是,P2P的大量应用也给校园网络带来了不少负面作用,比如带宽占用比例不合理、网络出口堵塞、网络服务质量下降、蠕虫病毒侵蚀校园网络、大量无用的上行流量,这些都严重地影响了校园网络中正常业务流量的使用和远程教学中关键技术的普及;再加上目前不少院校尚未实施相关的流量管理办法,所以网络管理部门难以有效地控制用户的网络行为和优化整个校园网的流量.

以往的常规检测手段仅采用一种方法,比如早期的基于端口号[4]的识别方法和目前广泛使用的深层数据包探测技术(DPI)[5],还有基于流特征[6]的流量识别技术.本文主要针对校园网的P2P流量进行了研究,提出了一种综合的、跨层的、分阶段的检测控制方法,具有良好的扩展性和灵活性.实验证明,这种方法有一定的可行性.

1 P2P流量检测与控制技术

1.1 流量检测方法

1.1.1 端口识别

通过取出数据包中源端口或目的端口,对照常见端口识别表,识别出常规业务,然后快速地进行数据包的转发,这样做可以减少网络延迟、提高转发速度、降低检测带来的负面影响.对识别不出的数据包,则进行下面的操作.

1.1.2 DPI技术

如通过静态的端口表无法识别,则说明这些流量有可能是P2P流量,不同的P2P协议有着各自的特征字符串,而且这些值都在TCP/UDP载荷开头的某个固定位置上,这就需要使用特征字符串来匹配.表1就列出来几种常见的特征字符串.

表1 常见特征字符串Tab.1 The common feature string

1.1.3 行为检测即网络直径分析技术

通过以上两种步骤的检测,基本上可以检测到95%以上的P2P流量,但是对于采用动态的端口、未知的或加密的P2P报文[7],上述两种方法就无能为力了.那我们就利用P2P节点既是客户端又是服务端的特性,记录网络中的节点和另外节点建立连接的情况来计算其网络直径的大小,与某一预设的阈值进行数值判断,从而来判断这个流量是否属于P2P流量.

1.2 流量控制策略

本文提出的流量控制策略是在网络负载达到预设的上限时,对新的P2P请求加以拒绝,而对于已经建立的P2P连接,采用随机断开的策略.对于所有的P2P应用来讲,一个连接请求在一段时间内没有反应则说明连接超时,P2P软件就不再跟该目的节点建立传输通道.

设网关所最大能承载的P2P传输速率为V,这个速率的取值范围R∈[0,A],即我们所允许的P2P流量控制在R内,其中A为我们下文配置模块中的流量上限值.设网关对P2P连接请求的拒绝概率为:

上式中,a为经验常量,根据网络状况可以让管理员进行修改.

当前每个传输P2P节点在之前的Δt时间内累计流量为Bi(i=1,…,n),由此计算出所有节点累计流量占总累计流量的比值Yi:

当前每个节点P2P速度占总P2P传输速度的比值Xi(i=1,…,n),由此计算出每个已经建立连接的节点的断开概率为Mi:

根据每个Mi的值,我们取得网络整形后的随机断开概率pi为:

此数学模型描述了两种情况:首先,对于新发起的P2P连接请求,根据目前的网络状况加以随机拒绝,这样做可以合理地分配各子网的网络资源,保障了网络的公平性原则.如果单纯地加以拒绝,可能会影响后启用的P2P应用.其次,当我们检测出的P2P流量达到预设值A时,不仅对新的P2P请求加以拒绝,而且对占用传输资源多的P2P通道进行强制断开,从而保证网络通畅.

2 算法及现网试验

2.1 流程图的提出

根据以上分析,得出流量检测及控制流程如图1所示.

图1 流量检测及控制流程Fig.1 Flow chart of traffic monitoring and controlling

2.2 系统设计与讨论

本系统涉及数据包的采集[8-10]和存储、流量检测、流量控制三个步骤.系统使用的开发软件是PHP+MYSQL,运行在Windows平台上.本软件包含两大模块内容,一是各模块的初始化数据,包括流量上限、常见端口、特征比特串、网络直径阈值和流量控制5个配置模块数据.其中,流量上限模块的设置,可根据校园网的实际情况进行合理设置其值的大小;常见端口的配置,输入一些公认端口,比如http服务的80端口,ftp服务的21端口等;特征比特串的配置,尽可能地输入所有目前发现的特征值,比如迅雷的特征值“POST/HTTP/1.1”,BT的特征值“0x13B itTorrent”等一些特征值;其他的设置可根据管理员的经验和现网试验的方法进行配置.二是流量实时查看模块,可以观察当前各用户的实时流量.图2显示的是本软件的实时流量监控表.

此算法实现的原理是首先根据内网状况判断是否采取控制策略,如果流量达到配置上限,即先用端口识别技术来检测出常规业务,进行快速转发.其次,对含有P2P的数据流再比对特征值来加以判别,然后对于加密的未知的P2P流,再通过节点的网络直径来判断.最后,对检测出来的P2P流量进行上文提到的流量控制策略.

图2 软件系统截图Fig.2 The system interface

3 实施策略前后网络状况

一般校园网网络的特点是:上网高峰期在早上8点到晚上6点,下午时间明显感觉网速缓慢.图3为校园网实时观测图,可看出在上网高峰期这个时段,其中P2P流量在80 Mbit/s上下波动,占总出口流量的50%以上,这严重影响了其他正常的业务流量.在上午10点至下午2点开启测试软件,实施控制策略,如图4所示,可以看出,经过控制后的P2P流量明显下降,在25 Mbit/s上下波动,占总出口的16%左右,其他业务流量明显增加,总流量在减少,网络状况良好.当撤销策略后,网络情况又恢复到以前的状态.

图3 未加控制的流量Fig.3 Flow chart without control

图4 经过控制后的流量Fig.4 Flow chart under control

4 结 语

目前,P2P流量在校园网网络流量中占很大比例,必须采取一定手段加以控制.本文通过P2P应用系统的3个典型特征提出了一种综合检测方法,并加以随机拒绝或强制断开来保障网络的服务质量,还可以对检测模块进行升级,增加新的检测引擎以识别新型业务.同时,本系统还存在待研究和扩展之处,即没有分时间段来控制流量,没有按用户级别来分配流量权限以及没有生成评价体系等.

参考文献:

[1] 周文莉,吴晓非. P2P技术综述[J].计算机工程与设计,2006(1):57-59.

[2] 余浩,徐明伟. P2P流检测技术研究综述[J].清华大学学报:自然科学版,2009,49(4):616-620.

[3] 刁文广,海洋,李蒙. P2P流量监控系统的设计与实现[J].洛阳理工学院学报:自然科学版, 2010,20(2): 40-43.

[4] 颜凯. 校园网P2P流量监控技术分析[J].电信快报, 2010(1):38-42.

[5] 戴强,张宏莉,叶麟. 基于行为特征的P2P流量快速识别[J].微计算机信息,2009,25(1):209-210.

[6] 陈亮,龚俭. 江苏省域网 P2P流量现状与测量方法[J].中国教育网络,2008(2):40-41.

[7] 蒋一波,王万良. 一种基于网络测量的P2P流量智能控制算法[C].中国人工智能学会第12届全国学术年会论文汇编,2007:325-330.

[8] 李峰. 校园网中P2P流量监管与控制[J].网络安全技术与应用,2008(3):75-76.

[9] 张昊. 计算机网络数据包捕获技术浅析[J].合肥学院学报:自然科学版, 2009,19(2):47-49.

[10] 程燕. 基于Windows系统的数据包捕获技术研究[J].计算机与数字工程,2009,37(11):99-102.

[11] 鲁文斌,杨家海,刘洪波. 基于节点连接模式的P2P节点识别算法[J].清华大学学报:自然科学版, 2009,49(7):1045-1049.

[12] 陆庆. 对等网络流量检测技术[J].电子科技大学学报, 2007,36(6):1333-1337.

猜你喜欢
校园网数据包端口
基于Jpcap的网络数据包的监听与分析
一种端口故障的解决方案
数字化校园网建设及运行的几点思考
试论最大匹配算法在校园网信息提取中的应用
SmartSniff
端口阻塞与优先级
NAT技术在校园网中的应用
VPN在校园网中的集成应用
8端口IO-Link参考设计套件加快开发速度
卫星三端口DC-DC变换器技术综述