P2P网络病毒传播的仿真设计研究.doc
文本预览下载声明
P2P网络病毒传播的仿真设计研究
摘要:P2P已经彻底统治了当今的Internet,然而,P2P病毒防御技术的研究却相对滞后,如果P2P网络病毒大规模爆发,其影响和破坏将是巨大的。针对病毒文件的传播,充分考虑网络的诸多因素,如:用户到达率,在线(共享)时间,网络节点免疫力等对病毒文件传播的影响,并通过P2P网络仿真工具-PeerSim进行仿真分析。
关键词:P2P网络;PeerSim;仿真设计;Napster
中图分类号:TP393.08文献标识码:A文章编号:1009-3044(2011)12-2783-02
P2P网络作为一种分布式网络应用,它的用户共享着各自所拥有的资源,以达到资源的扩大化及信息交流的自由化。P2P网络中的用户通过向P2P网络发布自己的资源信息,并通过网络所提供的服务,能让其他对等节点(Peer)直接访问而无需经过中间实体(也说是传统c/s模式中的服务器)。在P2P网络中,用户既是资源的提供者(server),电是资源的获得者(client)。P2P技术打破传统c/s模式,充分发挥网络当中每个节点的能力,让每个节点的地位是对等的,不仅能提供隐私保护与匿名通信,还能提高网络的健壮性和抗毁性[1-3]。本文主要且综合考虑各种因素(如:下载时间,到达率,在线时间以及网络免疫力等)对病毒传播的影响,通过仿真实验,系统地得出相应的数据图,并对得到的数据图进行分析研究。
1 P2P网络仿真协议及仿真工具的介绍
由于本论文的课题是基于在线时间(共享时间)异常的P2P网络病毒发现与传播抑制研究。因此,我们如何实时地收集用户节点的在线时间(共享时间)将会是关健所在,这将涉及到我们P2P网络仿真协议的选择。
P2P网络仿真工具PeerSim相关内容分析如下。在PeerSim的框架中,先通过调用Simulator类读取配置文件中的初始化信息(如:节点数、仿真运行的循环数等),控制类(如:init类,contr01类等)。具体的步骤如下:
1)选择一个网络规模(通过配置文件中的network.size语句设定网络节点数)
2)选择一个或多个协议(通过在配置文件中的protoc01前缀引入相应的协议类)进行实验,并对它们进行初始化
3)选择一个或多个的控制类(通过在配置文件中的control前缀引入相应的协议类)来对仿真实验过程实施控制与数据的纪录工作。
4)调用Simulator类,进行仿真实验。实验过程中所创建的对象都是通过实现一个或多个接口来完成相应的功能的
2 P2P网络病毒传播仿真分析
2.1 下载时间对病毒传播的影响
用户的下载时间取决于自己以及所连接种子的带宽,因此有必要了解一下在真实网络当中用户各自的带宽情况,并根据该数据设定相应的仿真实验参数值,仿真得到的数据才真实可靠。
我们就可以设定实验条件:网络节点数为5000,PeerSim执行仿真的循环数为400,进行仿真实验,得到的数据它是在不同下载时间情况下,在下载文件时间比较长的情况下,会对病毒传播前期产生影响,但随着时间的推移,这种影响会慢慢减弱;当下载时间比较短的情况下,基本上对病毒传播没什么影响。
2.2 到达率对感染率的影响
对一个真实的P2P网络来说,它可提供的文件信息是海量的,有些文件刚发布不久,是很热门的,很多用户想下载;有些文件发布已经很久了,用户的需求比较少,因此相应也就比较少人下载;针对这一点,仿真实验当中要涉及文件流行度的问题,这里可以用针对每个文件,在每一个单位时间内,到达率多少来衡量。
假设1:网络节点数为5000,PeerSim执行仿真的循环数为400;一开始的源文件是病毒文件。
从仿真结果可知,当到达率比较大的情况下(如:到达率大于150后),到达率的对感染率的影响已经不太重要,网络将会在60个单位时间(120分钟)内,达到9096多的感染率;同时,当到达率大于50后,网络的最终感染率在800分钟(400 cycle)内,将会达到100%。
假设2:网络节点数为5000,PeerSim执行仿真的循环数为400;病毒是从下载过程中,从其它节点是感染的,而不是一开始的源文件是有病毒的。图3中纵坐标表示感染的节点数,横坐标表示PeerSim执行的循环数:并且假设网络当中具有一定比例的节点对病毒没有免疫能力(易染节点),即只要该节点为初始化节点集的一员,那么只要该节点下载文件,则认为该节点已经被染毒了。从仿真结果可知,当初始化的易染节点的比例大于40%以后,易染节点所占网络节点数的比例,对病毒传播的影响已经不那么显著,对网络感染率的影响已经没有当易染节点比例小于40%那么显著,只在小范围内影响网络的感染率。
2.3 在
显示全部