一种P2P流量监控系统的设计及实现.pdf
《一种P2P流量监控系统的设计及实现.pdf》由会员分享,可在线阅读,更多相关《一种P2P流量监控系统的设计及实现.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2 090卷9 1年 第1 0 期 年 月 计算机技术与发展 V o 1 1 9 N o 1 0 C O MP UT E R C HN OL OG YAN DD EV EL OP ME NT Oc t 2 0 0 9 一种 P 2 P流量监控 系统的设计及实现 徐鹤,王 汝传,2 (1 南京邮电大学 计算机学院,江苏 南京 2 1 0 0 0 3;2 南京大学 计算机软件新技术国家重点实验室,江苏 南京 2 1 0 0 9 3)摘要:当前 P 2 P流量已经成为互联网流量的重要组成部分,针对互联网中存在大量的 P 2 P业务流量影响了互联网关键 业务的应用,设计了一种 P 2 P流量监控系统
2、。该系统采用分布式检测技术,通过网络抓包工具 A n a l y z e r 分析的 P 2 P业务 流量特征,对 P 2 P流量进行检测,并在网卡驱动 N D I S 层实现 P 2 P流量控制。其监控策略由系统管理员制定,而策略的具 体实施是在各个终端的网卡驱动层,通过实验验证了该方案 的可行性。实验结果显示该系统检测精度高和扩展性强,易 于在现有网络中部署实现。关键词:P 2 P;流量检测;流量控制;控制策略 中图分类号:T P 3 9 3 文献标识码:A 文章编号:1 6 7 3 6 2 9 X(2 O o 9)l O 一 0 0 0 6 0 5 De s i g n a n d I
3、mpl e me nt a t i o n o f P2 P Tr a f f i c M o ni t o r i n g S y s t e m xu He WANG Ru c h u a n ,(1 C o l l e g e o f Comp u t e r,N i n g Un i v e r s i t y o f P o s t s a n d T e l e c o mm u n i c a t i o n s,N a n j i n g 2 1 0 0 0 3,C h i n a;2 S t a t e Ke y L a b o r a t o r y f o r N o v
4、 e l S o f t w a r e T e c h n o l o g y a t Na n j i n g Un i v e r s i t y,N a n j i n g 2 1 0 0 9 3,C h i n a)A b s t r a c t:I 1 l e e x t e n s i v e u s e o f P 2 P(P e e r t o P e e r)n e t wo r k t e c h n o l o g y h a s a s e r i o u s i mp a c t o n t h e e x i s t in g n e t wo r k I n t
5、 h i s pap e r,d e s i g n a P 2 P廿a f f ie mo n i t o ring s y s t e a-a,wh i c h u s e s d i s t r i b u t e d d e t ect io n t ech n o lo g y,t h r o u g h n e two r k p a c k e t c a p t u r e t o o l An a ly z e r a n a l y s i s t h e P2 P s e r v i c e s t r a f f i c c h a r a c t e r t o d
6、e t e c t P 2 P f lo wa nd r e a l i z e d P2 P t r a f f i c c o n t r o l i i i t h e n e t wo r k d r i v e r la y e r NDI STh e mn t r o l s t r a t e g y d e v e l o p e d b y t h e s y s t e m a d min i s t r a t o r a n d i mp lem e n t ed b y t h e v a r io us t e r min a l s i n t h e ne tw
7、 o r k d r i v e r la ye r Th r o u g h e x p e r i me nt a l e n s u r ing t h e s y s t emisf e a s i b i l i t y,andt h e e x p e r i me n t a l r e s u l t s h o wst h a t t h ed esi g n ed s y s t emh a v ing ag o o d s e a l a bil i t y a n dh hd e t ect i o n。a n d itis e a s y r e a l iz e d
8、i n t h e e x i s t ing n e t wo r k Ke y wo l d s P e e r t oP e e r;t r a f f i c d e t e c t i o n;t r a f f i c c on t r o l;c o n t r o l s t r a t e g y O 引 言 2 0世纪 9 0年代后期,P 2 P网络技术被广泛采 用,基于 P 2 P技术的应用层出不穷。P 2 P的传播和使 用使得 P 2 P流量占据了当前网络相当大部分的 I n t e r-n e t 流量,对现有网络业务的正常使用产生了严重 的影 响。目前 P 2 P技
9、术主要应用到以下几个领域:提供文 收稿 日期:2 o 0 9一O 20 1;修回 日期:2 0 0 90 51 0 基金项目:国家 自 然科学基金(6 0 5 7 3 1 4 1,6 0 7 7 3 0 4 1);江苏省 自然科 学基 金(B K 2 0 0 8 4 5 1);国 家 高 科 技 8 6 3项 目(2 0 0 7 A A0 1 Z 4 0 4。2 o o 7 A A O l z 4 7 8);南京市高科技项目(2 0 0 7软资 1 2 7);现代通信国 家重 点实 验 室基 金(9 1 4 0 C 1 1 0 5 0 4 0 8 0 5);江 苏省 博士 后 基金(O 8 o
10、 1 0 1 9 C);江苏高校科技创新计划项 目(C X 0 8 B一0 8 5 Z,C X 0 8 B 0 8 6 Z)作者简介:徐鹤(1 9 8 5 一),男,安徽巢湖人,博士研究生,研究方向 为网络测量与安全、多媒体技术和计算机软件在通信中的应用;王 汝传,教授,博士生导师,研究方向为计算机软件、计算机通信、信息 安全、无线传感器网络、移动 A g e n t 技术和虚拟现实技术等。件和其它内容共享的 P 2 P网络;挖掘 P 2 P对等计算能 力和存储共享能力;基于 P 2 P方式的协同处理与服务 共享平台,例如J X T A、Ma g i、G r o o v e、N E T My
11、S e r v i c e 等;即时通讯交 流和语 音通信 软件,包 括 I C Q、O I C Q、Y a h o o Me s s e n g e r、S k y p e 等;视频共享系统,如基于 P 2 P 的VO D和 I P 1、v等;安全的 P 2 P通讯与信息共享,例 如 C h q u e N e t、C r o w d s、O n i o n R o u t i ng 等。其 中 P 2 P内 容共享系统对网络带宽的占用度最大,尤其是 P 2 P文 件共享系统。互联网上 P 2 P用户的总数庞大到数以 百万计,其累计业务量已占互联网业务的总量,造成了 网络带宽 的巨大消耗,妨
12、碍 了正 常的网络业务 的开展 和关键应用的普及,同时通过并不安全的网络环境获 得的应用程序和 P 2 P协议给网络安全带来了极大的 隐患。由于 P 2 P技术在互联网上的突飞猛进普及和 发展,成为网络资源的最大消耗者,已经超过了 We b、Ema i l、F T P等的数据流量,成为网络的主要负担,甚 至引起网络拥塞,影响和降低其它业务的性能。据相 第 l O期 徐鹤等:一种 P 2 P流量监控系统的设计及实现 7 关统计,迄今为止,P 2 P业务共占所有宽带数据吞吐量 的 8 0 以上。因此,在许多情况下需要有特别的技术 来检测 P 2 P流量。在 P 2 P应用早期 阶段,由于 P 2
13、P协 议使用特定 的 T C P或 U D P端 口,P 2 P流量很容易识 别。然而,很快 P 2 P应用能够使用动态变化的端 口来 躲避识别。而现在,随着 P 2 P技术的发展,P 2 P应用使 用加密技术使得原有的检测方法很难再识别。目前 P 2 P流量识别与控制技术l-2 J 研究已经成为 当前 P 2 P技术研究的一个重要方向。由于 P 2 P应用 协议的多样性、自定义性,造成了对该部分流量难以统 计和控制。文 中设计 了一种 P 2 P流量监控 系统,该 系 统采用分布式检测技术,策略由系统管理员制定,而策 略的具体实施是在各个终端。该系统 与现有技术相 比,可以避免单点监控系统性
14、能瓶颈,且能够根据要求 制定策略,具有良好的可扩展性。1 P 2 P流量监控系统模型 1 1系统 的网络结构 图 本监 控 系统 可 以应 用 于校 园网 内 P 2 P流量 的监 控。其运行的网络结构如图 1 所示。其中,管理服务 器需要安装运行本系统监控中心管理程序;终端需要 安装运行终端应用程序和 N D I S驱动程序l-3 J。监控中 心管理程序主要负责控制策略的管理(见第 2 1节)、流量统计和 日志管理等功能。终端根据具体的控制策 略进行流量检测和控制。终端 终端 终端 终端 终端 图 1 P 2 P流量监控 系统 网络结构 图 1 2 系统 的体 系结构 整个系统分为应用层、服
15、务层、连接层和 N DI S 层,层次结构如 图 2所示。应用层:包括流量统计、控制策略和 日志管理模 块。流量统计模块收集终端监控系统汇报的关于 P 2 P 流量的统计数据(如识别的 P 2 P数据包大小、类型、连 接信息等)。控制策略模块主要提供控制策略的管理。日志管理模块提供监控系统的一切操作及数据记录。服务 层:包括 UI 界 面 层 和 we b S e r v i c e 服 务层。方便管理员查询网络使用状态信息。连接层:包括流量监视、流量匹配和流量控制模 块。可以根据策略要求进行流量监控,实现 Wi n s o c k 层 流量监 控,如在 此层进 行 T C P I P连接数
16、限制 和连 接带宽限制等。N D I S 层:包 括流 量 监视、流 量 匹配 和 流量 控 制。可以根据策略要求进行流量监控,实现内核层流量监 控,如可以根据要求进行流量限制和发包速率限制等。4 莲 用 户 态 流 量 分 析 与 控 制 I 流 量 监 流 量 旺 叫 流 量 控 韵 图 2 P 2 P流量监控 系统体 系结构图 2 P 2 P流量监控 系统 的实现 本 系统 主要分 为管理 服务端、终 端应 用程 序和终 端 ND I S驱动程序。系统各部分 的功 能在第 1 1节 已 经说 明。2 1 控 制策 略的管理 在 P 2 P流量监控系统中,控制策略是根据每个终 端分别制定的
17、。每个终端都有自己的默认的策略信息 库,当需要改变控制策略时,管理员改变策略信息并发 送改变的控制策略信息给终端。控制策略的管理分为 策略的生成、分发、执行和存储。策略生成:控制策略是由管理服务器端的管理员 根据一定格式要求制定。策略分发:当终端启动网络时登陆管理服务器,管 理服务器发给终端控制策略信息。策略执行:根据相应 的控制 策略对终 端 的数据包 进行 检测与控制。策略 的执行是 在每个 终端上,且每 个终端的策略可能不同。回 国囤 一 P P流量监控系统层次结构 一 8 计算机技术与发展 第 1 9卷 策略存储:控制策略在终端和管理服务器端各有 一份。终端的策略信息加密存储在文件中,
18、防止终端 用户非法篡改;服务器端的策略信息存放在专门的策 略信息库中,且与每个终端一一对应。2 2系统的实现 2 2 1 N D I S技术介 绍 NDI S(Ne t wo r k Dr i v e r I n t e rfa c e S p e c i f i c a t i o n)是 Mi c r o s o f t 和 3 C o m公司开发的网络驱动程序接口规范 的简称,它支持如下三种类型的网络驱动程序:微端口 驱动程序(Mi n i p o r t D r i v e r)、中间层 驱动程序(I n t e r me d i a t e D r i v e r)和协议驱动程序(P
19、 r o t o c o l D r i v e r)。其中 中间层驱动介 于协议层 驱动和微端 口驱动之 间,其 功 能非常强大,可以提供多种服务,能够截获所有的网络 数据包(以太帧),过滤微端口驱动程序,实现特定的协 议或其他诸如数据包加密、认证等功能。在 N D I S中 间层捕获网络数据包的方法结构规范,功能强大。文 中的系统实现核心部分就是采用中间层驱动捕获网络 数据包,对其进行分析判断是否是 P 2 P数据包。下面首先对微 软提供 的一个 中间层驱动范例 P a s s t h r u 进行分析,然后讨论如何实现文中提出的流 量监控 系统。2 2 2 微软 的中间层驱动 范例 P
20、a s s t h r u 分析 P a s s t h r u 是 Mi c r o s o f t 在其推出的免费驱动开发工 具 D r i v e r D e v e l o p me n t K i t s,D D K)中提供 的一个 中间 层驱动源代码范例。它提供了中间层驱动程序的总体 框架,可以帮助开发人员迅速掌握中间层驱动程序的 实现方法。P a s s t h r u 工作在网络层和媒体接人控制层 之间,实 现 了对 网 络 数 据 包 的底 层 截 获。只 要 在 P a s s t h r u 基础上进行适当的修改,就可以实现各种各 样的应用。下面具体介绍与本系统实现密切相
21、关的 P a s s t h r u 发送、接受数据流程,以及驱动程序与应用程序通信的 基本 内容。2 2 2 1 P a s s t h F U发 送 数 据 流程 图 3 为 P a s s t h r u 发送数据流程 图。(1)P r o t o c o l d r i v e r 调 用 N d i s S e n d向下层发送数据 报文。(2)P a s s t h r u的 P s e n d S e n d P a c k e t 例 程根 据 上层传下来的数据报文分配 My P a c k e t,调用 N d i s S e n d 发送到下层。如果返回 p e n d i
22、 n g,就在 P t S e n d C o mp l e t e 中释放 My P a c k e t;否则就在本函数中紧接着释放 My Pa c k e t o (3)当下层 mi n i p o r t d r i v e r 发送完成 My P a c k e t 以 后,会调用 N d i s MS e n d C o mp l e t e。(4)N D I S 接着调用 P a s s t h r u的 P t S e n d C o mp l e t e,在 这个函数里,应该释放 My P a c k e t,并且通知上层 P r o t o c o l d r i v e r
23、 去释放它们的 p a c k e t。P rot oc ol d ri ver i aye r N di s Se nd 1上 下 4 M P S e n d P t Se n d C O m pl e t e M PSe n d P a ch e t 2上 丁 。Nd i s MS e n d C O m p1 e t e M ini po rt dri ve r i ay er 图 3 P a t h m 发送数据流程 图 2 2 2 2 P a s s t h r u接 收 数据 流程 图4为 P a s s t h r u 接收数据流程图。(1)底层驱动使用 N d i s MI n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 P2P 流量 监控 系统 设计 实现
限制150内