第1章绪论
1.1课题研究背景和意义1.1.1P2P流量的危害近年来,P2P对等网络(PeertoPeer)流量均呈爆发式增长而几近于泛滥的地步。P2P应用类型也己经从传统的文件共享,扩展到音视频流等应用领域。一个传统且典型的例子是讯雷下载软件,该软件采用P2P下载和P2SP方式,成为当今互联网用户最多的下载工具;近5年来,以Skype为代表的P2P网络电话软件迅猛发展,在中国,其同时在线用户数高达900万;迅雷看看、PPLive,PPStream等基于P2P原理的互联网电视的注册用户数已超过1亿,在线收视人数达到数百万人。P2P流量的迅速发展,大大改变了传统网络的流量分布,有数据表明P2P类应用的流量己占整个互联网流量的60%,己经对企事业单位的网络状况造成严重的影响,严重者甚至导致网络拥塞,给关键业务带来了严重威胁,甚至不能正常进行。因此,P2P流量管理的无序性,使P2P应用之与网络,具有很大的危害性。归纳起来有如下几点:(1)网络带宽资源的滥用和关键业务的矛盾当前,运营商为了争夺客户资源,大多采用包月形式来提供用户使用网络,所以网络带宽洪水般充斥当前不断扩容的网络,却没有带来投资预期的业务收入的增长,造成运营商的投资增长与收入下降不成比例的窘境。
中国互联网实际流量模式分析报告表明,P2P流量己占整个互联网流量的.60%,P2P下载已经严重破坏了广域网的出口带宽资源分配,彻底改变了互联网网络流量分布。同时,为了更有效地进行文件交换,P2P应用的并发连接数相当巨大,该特征使P2P应用具有很大的侵略性和不可预知性。从传统的文件共享,到音视频流应用,P2P应用类型越来越多,用户使用P2P下载的文件,通常都是海量数据,例如:音视频光盘镜像、大型软件。这些文件动则数百M,甚至上G,全部数据均通过广域网入口流入企业网内部,造成很大的入站流量。而P2P机制决定了其身兼下载客户端和上载服务器的双重身份,因此,P2P客户端的出入站流量均非常可观。综上所述,对于企事业单位来说,存在着诸如ERP系统、财务管理系统、固定资产管理系统等关键业务和P2P应用共享网络带宽的现实,而P2P应用又占据了绝大多数网络带宽,因此关键业务会出现明显的延迟,甚至根本无法满足其实时性要求而举步维艰,甚至没有反应,致使关键业务无法正常进行;即便是实时性要求不高的应用,譬如:电子邮件、数据备份、数据库数据同步,同样会造成业务延迟。大量的P2P出入站流量,严重影响了正常业务的进行。(2)不良信息肆意传播由于互联网监管的缺乏,P2P相关业务缺少有效的管理手段,譬如身份标识等信息的管理具有很大的随意性和不规范性,从而造成大量不良信息,诸如黄色、反动、违法等在网络中肆意传播,从而引发互联网公众信用危机。
(3)用户终端安全问题P2P是一种点对点的具有先天优越性的作用机制,但是其优越性却给居心不良者利用P2P系统中终端的漏洞侵入用户电脑,获取重要信息甚至进行破坏带来了方便,从而给用户造成难以估量的损失。另外,许多病毒也通过P2P系统肆意传播,严重破坏用户终端的安全性而导致系统崩溃。P2P共享文件中的大量病毒,极大影响了P2P在用户心目中的形象,导致很多企业限制甚至禁止使用P2Po(4)知识产权保护问题由于法律的局限性,P2P应用加剧了盗版的泛滥,P2P应用成为目前盗版音乐、电影、软件的“天堂”,给著作权人造成了不可估量的损失。第一代P2P软件Napster的服务器即于2001年因法律纠纷而被迫关机。因此知识产权保护问题也是P2P迫须解决的问题。综上所述,针对快速变化的P2P应用,如何在保证关键业务的正常进行的同时,也能给P2P应用以一定的发展空间而不是简单的抛弃,是一个比较有现实意义和挑战性的问题,也是一个迫在眉睫且长期的需求。这需要我们不断更新P2P流量的识别和管理办法,从而将其流量控制在合理和可以接受的范围内。
参考文献
[1〕邢小良,p2p技术及其应用北京,人民邮电出版社,2008. 2
[2〕张文,赵子铭,p2p网络技术原理与C++开发案例,人民邮电出版社,2008. 8
[3] J. Croweroft and I. Pratt. Peer to Peer:Peering into the future. In E. Gregori,G. Anastasi,and S. Basagni,editors,Advanced Lectureon Networking, NETWORKING 2002 Tutorials,volume 2497 of
[4]The Napster Homepage,http://www. napster. com/
[5] Ripeanu M. Peer-to-Peer arehitecture case study: Gnutella network.Proceedings of Peer-to-Peer Computing, 2001 99101
[6]The Gnutella Homepage,http://gnutella. wego. com/
[7]Fasttrack Peer-to-Peer technology company, http:刀www. fasttrack. nu.
[8]Kazaa media desktop, http://www. kazaa. com
[9]BitTorrent HomePage-BitTorrent Protocol,http://www. bittorrent. com/Protocol.html
[10] http://~.cs.huji.ac.il/labs/danss/presentations/emule.pdf
[11]Peer-to-Peer guide for the Mac,http://~.mac-p2p. com /kazaa-fasttrack/
[12]http://~.pcstu. com八ools/xiazaijiaocheng八hunder/20070901/60210. html
[13]余青霓,周刚,Linux防火墙,人民邮电出版社,Nov. 2000.
[14] H.We1te,The journey of a packet through the linux 2.4 networkstack, laforgeCgnumonks, org, Oct. 2000.
[15]杨沙洲,Linux Netfilter实现机制和扩展技术,http://~一128. ibm. com /developerworks/cn/linux/1-ntflt/
[16]0. Andreasson, Iptables Tutorial 1. 1. 19, http://www. jollycom. ca八ptables-tutorial八ptables-tutorial.html
[17]毛德操,胡希明,Linux内核源代码情景分析,浙江大学出版社,May 2001.
摘要 6-7
Abstract 7-8
第1章 绪论 11-15
1.1 课题研究背景和意义 11-14
1.1.1 P2P流量的危害 11-13
1.1.2 传统防火墙和P2P流量的新特征 13
1.1.3 当前的研究状况 13-14
1.2 论文的组织结构 14-15
第2章 P2P网络的发展和常见的协议 15-22
2.1 P2P网络模型 15-19
2.1.1 第一代P2P网络模型:Napster 15-16
2.1.2 第二代P2P网络模型:Gnutella 16-18
2.1.3 第三代P2P网络模型:Fasttrack 18-19
2.2 常见P2P协议简介 19-22
2.2.1 BitTorrent 20
2.2.2 eDonkey 2000 20
2.2.3 Fasttrack 20-21
2.2.4 Gnutella 21
2.2.5 迅雷 21-22
第3章 LINUX内核扩展模块 22-39
3.1 netfilter框架 22-26
3.1.1 Netfilter编译 22-23
3.1.2 Netfilter结构 23-25
3.1.3 包选择系统IP Tables 25-26
3.2 Netfilter的编程接口 26-31
3.2.1 Netfilter内核及内核模块接口分析 26-29
3.2.2 用户空间参数传递分析 29-31
3.3 IPTables的实现及扩展 31-39
3.3.1 IPTables核心数据结构 31-34
3.3.2 IPTables的扩展 34-37
3.3.3 连接跟踪Connection Tracking 37-39
第4章 基于IPP2P和TC流量控制系统的设计和实现 39-62
4.1 总体设计思想 39
4.2 应用层协议的识别代码的实现 39-46
4.2.1 ipp2p-0.8.2简介 39-41
4.2.2 ipp2p对应用层协议识别的二次开发 41-46
4.3 P2P协议封堵和识别的测试 46-49
4.3.1 搭建测试环境 46-48
4.3.2 IPP2P封堵P2P协议的测试 48-49
4.4 Linux协议栈QoS模块(TC)技术 49-52
4.4.1 QoS技术概述 50-52
4.4.2 Linux内核对QoS的支持 52
4.5 流量管理系统的设计与实现 52-62
4.5.1 TC流量管理的基本概念 52-54
4.5.2 Linux内核包调度 54-55
4.5.3 流量管理的功能设计 55-58
4.5.4 流量管理功能的案例分析 58-62
第5章 结论与展望 62-63
5.1 本文的成果 62
5.2 进一步的工作 62-63