孙 岩,王海龙
(1.燕山大学 里仁学院,河北 秦皇岛 066004; 2.燕山大学信息科学与工程学院 计算机系,河北 秦皇岛 066004)
BT网络中基于邻居下载节点的搭便车行为检测研究
孙 岩1,王海龙2
(1.燕山大学 里仁学院,河北 秦皇岛 066004; 2.燕山大学信息科学与工程学院 计算机系,河北 秦皇岛 066004)
由于节点搭便车行为的存在严重地影响了BT网络的QoS,为此,本文提出了一种基于邻居下载节点的搭便车行为检测策略。首先,定义了影响BT网络QoS的属性约束集,即节点在网络中的属性约束集和节点自身的硬件属性约束集; 其次,为了保护BT网络中的种子节点,以QoS约束集中的种子比例的属性为基础,采用优先向非种子邻居节点请求下载的方式,提出了基于邻居下载节点的检测算法DANDN(Detection Algorithm based on Neighbor Downloading Nodes)算法,并通过定义效用值给出了邻居节点的选择依据。最后,利用PeerSim仿真平台,验证了QoS约束集中每个属性对整个BT网络QoS的影响程度以及DANDN算法的有效性。
BT网络;QoS约束集;搭便车;邻居下载节点;效用函数;PeerSim
由于P2P系统具有匿名性和资源贡献自愿的特点,导致了P2P中的诸多节点存在只享受系统提供的资源和服务而不愿为系统作贡献的问题[1]。当P2P系统中只有少数热心节点为网络提供服务时,搭便车现象由此产生了[2]。
BT(BitTorrent)作为最成功的P2P应用之一,也面临着搭便车的问题。与P2P系统相比,BT网络中不仅搭便车的种类较多,而且攻击的方式也有所增加[3]。搭便车问题的出现,给BT网络带来了很多的隐患。如果网络中出现大量的搭便车节点,贡献资源的节点和网络中资源贡献的数量就会减少,其结果是加重了资源贡献者的负担、少数资源贡献者可能会面临着被迫退出网络以及降低网络性能和服务质量等问题。久而久之,这样的网络会濒临崩溃的边缘。因此,研究如何检测和抑制搭便车节点,对提升网络的规模、网络服务质量(QoS)具有重要的意义。
BT网络的创始人Bram Cohen针对网络中搭便车问题采用了TFT(Tit-For-Tat)和Optimistic Unchoking(乐观疏通)策略[4]。依据数学建模和分析工具的差异,国内外学者们将已有这些抑制搭便车行为机制分为:激励机制、博弈论方法、社会网络与经济模型三类。
激励机制主要是设计出一个或多个效用函数,然后运用效用函数来对节点在系统中的有用性进行评估。Ramaswamy最先提出了效用函数,并分析了不同效用函数对BT网络QoS的影响[5]。
满金贵[6]提出了一种基于节点全局贡献值的区分服务机制,Tracker服务器根据网络中各个节点的反馈信息,分别计算每个节点对整个BT网络的全局贡献值。Jun Han[7]根据每个网络中节点的信誉分值,分配了相应的网络带宽或者限制其相应的TTL值,以便有效地控制搭便车节点。Bhakuni[8]等人提出了基于BT网络的搭便车检测与惩罚机制,论文首先验证了搭便车节点对BT网络性能和下载时间的影响,并对所提出的搭便车机制在NS-2仿真平台上验证了有效性。Chen Kang[9]等人引入了信任管理系统Sociallink,依赖朋友之间的信任关系,并利用加权交易网络、鼓励节点提供文件资源等策略来避免搭便车行为。通过大量的仿真结果表明,Sociallink可以有效的保证可信和公正的P2P文件共享和抵御上述攻击。
Mahini等人提出了基于博弈理论的P2P视频直播框架GaMe-Plive,该框架以研究视频数据传输中的搭便车行为和丢失率最小化为目标,通过对游戏信息的描述以及对游戏之间的行为互动决策信息的处理,已获得纳什均衡[10]。Zhang等人研究了P2P网络中的公共产品分配的博弈过程,论文中应用博弈论的方法来分析公共物品(PGS)的P2P网络配置。为了减少搭便车现象,提升物品之间的合作效率,提出了一种基于合作博弈论的激励机制,并实现了纳什均衡[11]。Kang等人以目前对等流媒体系统正遭受着“搭便车”问题为出发点,提出了一个以信用为基础的激励机制以鼓励节点间的合作。基于Stackelberg博弈思想,制定了最优的资源分配策略,以实现节点间资源效益的最大化[12]。乐光学[13]在全面分析了节点的搭便车行为机理和搭便车行为对网络性能影响的基础上,对节点在BT网络中的行为进行建模,并运用博弈论构建了一个具有纳什均衡的搭便车行为抑制和激励节点为系统做贡献的策略模型。
此外,还有一些其它的抑制节点搭便车的方法。周燕等人通过对搭便车行为的研究现状进行分析,应用行为与实验经济学的方法对搭便车问题进行了分析,设计并改进了收益率和信息公开等因素对搭便车的影响[14]。刘建辉[15]提出了基于平衡机制的抑制搭便车节点算法,该算法是在判断BT网络中的节点是否存在搭便车行为时,从节点自身的行为和自身的机器属性两方面平衡考虑。Zhang Yu等[16]基于用户行为提出了IMBUB模型,该模型结合用户的习惯性行为,并通过理论分析和在真实系统中进行测试,验证了IMBUB模型能够激励用户分享自身的资源,减少搭便车节点的存在数量。
因此,本文在分析了影响BT网络QoS相关属性的基础上,提出了采用基于邻居下载节点的抑制搭便车检测方式来提高BT网络的QoS。该方法以激励机制的意志搭便车策略为基础,首先给出了影响BT网络QoS的属性约束集的定义、检测节点的选择过程以及基于效用函数的邻居节点的选取依据;其次,提出了邻居节点的选择策略和基于邻居节点下载的搭便车检测算法;最后,利用仿真平台PeerSim对提出的算法进行了验证和分析。
2.1 BT网络QoS属性约束描述
为了抑制BT网络中的搭便车行为,提高资源共享的质量,本文将影响BT网络的QoS属性约束集定义如下:
定义1:QoS约束集= {{节点属性集},{机器属性集}}
定义2:节点在网络中的属性集={网络中共享文件的大小Size,网络中种子节点的比例Proportion,节点在网络中的优先级Priority}
定义3:节点自身的机器属性值={CPU性能Performance,内存大小RAM,I/O速度Speed,节点自身的带宽Bandwidth}
其中,共享文件的大小Size属性依据阈值信息做如下处理:当共享文件的大小大于阈值时,按照发出请求信息节点在网络中的优先级Priority属性进行排序处理; 种子节点的比例Proportion是以保持网络中种子节点的比例为根本出发点,为了使种子节点尽量不受或少受搭便车节点的攻击,本文采取了相应的措施保护种子节点,并对搭便车节点予以惩罚;在节点自身的机器属性方面,由于不同终端设备的配置差别很大,而节点本身的机器属性同样关系着节点在网络中的优先级,因此,节点本身的机器属性也是影响BT网络QoS的因素。
2.2 检测节点的选取
在QoS约束属性集中,有一个比较重要的属性种子节点。由于BT网络的资源绝大部分来自于种子节点,因此,种子节点是整个BT网络的基础。为了保护BT网络中的种子节点不被搭便车节点攻击,保持整个网络的正常运转,对网络中检测节点的选取是非常重要的。
在BT网络的节点中,可以考虑选取作为检测节点的有Tracker服务器节点、种子节点以及普通下载节点(即非种子热心节点)。由于节点的搭便车行为是通过两个节点之间的互相通信行为表现出来的,使用Tracker服务器节点来检测网络中所有搭便车节点,Tracker服务器就需要掌握网络中节点之间通信的所有具体情况,这样才能做出最准确的检测。由于不直接涉及搭便车行为,Tracker服务器无法直接获取有效信息时,需要通过网络中的节点向Tracker服务器主动如实汇报自身节点与网络中其它节点交互的信息。由于网络中的节点种类繁多、数目庞大、动态性强,因此Tracker服务器不适合来检测网络中的搭便车节点。使用种子节点作为检测节点时,由于种子节点面临着服务压力和本身数量比较少的特点,因此,采用种子节点作为检测节点时可能会造成种子节点中途退出网络而导致BT网络QoS急剧下降的问题。而处于正在下载的普通节点(即非种子热心节点)是网络数量最多的节点,因此,本文选择这类数目比较庞大的节点,来完成检测网络中搭便车节点的任务。其原因是:(1) 它们之中有些属于热心节点,是搭便车节点的直接攻击对象,适合检测与举报网络中存在这种搭便车行为的节点;(2) 由于这类普通节点庞大的数量,可以将检测节点搭便车行为的任务分布实施在各个普通热心节点上,避免了由于检测节点的数量过小而造成的单个节点承受的压力过大的弊端。
由于网络中的每个节点不可能任意地去检测其它节点,因此,在检测节点的选取之后,需要解决的问题是确定检测范围。在BT网络中尽管任意两个节点的相关性不能确定,但是网络中的每个节点都有一些与自身节点联系比较紧密的节点。这些联系密切的节点可以直接与该节点通信,而该节点也会为这些节点提供所需的服务。这些节点就是邻居节点,一个节点的邻居节点是该节点的最重要的资源提供者,也是BT网络区别于其它非P2P网络最大的特点之一。依靠邻居节点进行下载,是BT下载相比于其它HTTP或FTP等传统的依靠服务器下载方式最大的优势。
因此,本文借助于邻居节点的优势,来检测网络中的搭便车节点。因此,网络中的每个节点只需检测邻居节点是否为搭便车节点即可。
3.1 基于效用函数的邻居节点选择方案
由于邻居节点的选择过程会影响BT网络的性能和服务质量,本文在确定邻居节点选择方案时通过函数的综合效用值确定了邻居节点的选取顺序。将影响邻居节点选择的参数归结为:邻居节点所在的位置信息、依据BT网络QoS影响因素中邻居节点的硬件属性信息和邻居节点在一段时间周期内的有效贡献值。
定义4:邻居节点效用函数={邻居节点的位置信息Location,邻居节点的带宽属性信息Bandwidth,节点的有效贡献值C(Pi,T)}
其中,节点的有效贡献值定义如公式(1)所示:
(1)
其中,UList(Pi,T)表示节点Pi在T时刻之前上传的文件列表,k为上传文件的初始贡献值,即“免费赠品”,DCount(Fj,T)表示节点Pi上传的文件Fj被网络中的其它节点下载的次数,Size(Fj)表示节点Pi上传的文件Fj的大小。而公式中的α是一个调整因子,主要用于根据不同的需求,调整最终贡献值的大小,一般取α∈(0,1)。当BT网络中的资源比较少时,可以将α设置的较大些,用以激励节点上传资源;如果BT网络中的资源处于一个饱和状态或较饱和状态,可以将α设置的较小些,使节点尽可能少上传资源,也避免了网络宽带的浪费。
依据上述描述,邻居节点的效用函数值的计算如公式(2)所示:
效用函数值Utility function value=β * Location+C(Pi,T)+γ*Bandwidth
(2)
其中,β和γ属于调节参数,取值范围为β ,γ∈(0,1),且α+β+γ = 1。
因此,可以通过效用函数值的计算结果给出选择邻居节点的依据。
3.2 稀有下载检测算法DANDN
在BT网络中当一个新加入的节点想要获取网络中的共享资源时,首先会从Web服务器下载种子文件,然后根据种子文件被解析后的announce地址,连接到对应的Tracker服务器;接着Tracker服务器就会返回给该节点一个节点列表,这个列表中的节点都是处于正在下载该共享资源或者是已经下载完成该共享资源(成为种子节点)的状态,该请求节点就可以根据自己的需要,选择性地与这些节点进行连接,从而将它们作为自己的邻居节点。由于邻居节点的数目很多,如何选择邻居节点会影响网络的效率,为此,本文给出了节点搭便车稀有下载检测算法DANDN。算法4-1描述的过程是从节点与每个邻居节点建立连接开始。
算法4-1:稀有下载检测算法
BEGIN
//建立邻居节点,并统计相比与邻居节点的文件块种类,自身节点所缺少的文件块种类信息
FOR(Tracker服务器返回的列表中的所有节点)
检测节点有选择性地与列表中的每个节点建立连接;
IF(该节点成为检测节点的邻居节点) THEN
检测节点与该新的邻居节点对比文件块种类信息,并统计检测节点缺少的文件块种类的数量;
ENDIF
ENDFOR
//按照最稀有算法进行下载,并判断邻居节点是否为搭便车节点
FOR(检测节点缺少的所有文件块,循环顺序依照每个文件块数量从小到大)
IF(拥有该文件块的邻居节点中既有种子节点又有正在下载节点
或者只有下载节点) THEN
检测节点向这些下载节点发送下载请求;
IF(检测节点在一定的时间阈值内,没有下载到相应的文件块) THEN
判断这些邻居节点为搭便车节点;
ENDIF
ELSE
检测节点向种子节点发送下载请求进行下载;
ENDIF
ENDFOR
END
4.1 验证影响BT网络的QoS属性约束集参数
为了验证各种因素对BT网络QoS的影响程度,本文采用PeerSim仿真平台验证搭便车行为对整个网络性能的影响。整个BT网络的性能用所有处于正常情况下载节点(不包含搭便车节点)的平均完成下载时间来衡量,在实验结果图中体现为所有正常节点平均完成下载时间随网络中搭便车比例的影响程度,搭便车节点从0%到65%每隔5%选取一次。为了使实验结果更加明显,实验过程采用多次测量取平均值的方式,本文设定实验1作为对比实验,实验2、实验3和实验4的初始化参数均是在实验1的基础上修改的。
(1) 初始对比实验
实验1设定的初始化参数:网络中节点数101个(包括一个Tracker服务器,而且在本文所有的仿真过程中,暂不支持其它节点中途加入或本网络中的节点退出),共享文件的大小为10MB,共享文件分割后的每个文件块大小为256KB,每个节点的带宽为640Kbps、1Mbps、2Mbps、4Mbps其中随机任意一个,每个节点的邻居数量最大值为25,网络中种子节点占40%,新节点(指暂未拥有任何文件块的节点)占40%,实验1的仿真结果如图1所示。从图1可以看出,随着整个BT网络中搭便车节点数增多,所有正常下载节点的平均完成下载时间呈现缓慢增长的趋势。
(2) 验证QoS约束属性集的影响因素
在实验1的基础上,实验2验证共享文件大小对BT网络的影响。在实验2中将共享文件的大小由实验1中的10M增大为50M,其余的初始化参数不变,得出的仿真结果如2所示。实验3从网络中种子节点的比例入手,分析资源共享程度与搭便车行为的影响的关系,在实验3中,将实验1初始化参数中的种子节点比例由40%减小为10%,其余初始化参数不变,仿真结果如图3所示。
图1 实验1初始实验结果 图2 共享文件大小对BT网络QoS的影响 图3 种子节点的比例对BT网络QoS的影响
相比于实验1,实验2和实验3的仿真结果都不同程度的反映出了本文所采用的QoS属性参数对BT网络的影响。即改变不同参数时,网络中的搭便车节点对其余正常下载节点所带来的负面影响。实验2与实验1的区别在于初始参数中的共享文件大小发生了变化,从实验结果可知,网络中共享的文件越大,影响的程度越大;实验3的仿真结果反应出网络中种子节点比例越小,搭便车行为带来的负作用就越明显。
4.2 检测方式对网络QoS影响
为了验证基于效用函数的邻居节点的选择过程,利用仿真软件生成节点的仿真数据集如表1所示,为了体现节点在物理上是否临近,本文将物理上临近的节点归为一个节点集合中。
表1 仿真实验数据列表
图4 两种方式对网络QoS影响仿真结果图
实验过程中α,β和γ的权重值随机生产,本组仿真实验中选择每个节点邻居数量的最大值为25,网络中种子节点比例占20%,新节点占非种子节点的40%,搭便车节点占非种子节点的20%,其余的参数与实验1中的相同。实验选取网络中所有正常下载节点的平均完成下载时间受共享资源大小的影响情况来表示网络的QoS,在图中坐标轴上表示为纵轴;图中的横轴表示为共享资源大小的变化,仿真实验取10M、20M、30M、40M和50M,每个被分割的文件块大小为256KB,实验通过多次测量取平均值,得出的网络QoS影响仿真结果如图4所示。
从图4中可以看出,本文提出的检测算法中由于采用了优先向非种子邻居节点请求下载的方式,不但没有延缓节点完成下载的时间,反而使下载时间有所减少。其原因:是由于请求下载时优先请求的是非种子邻居节点,而邻居节点的选择又以邻居节点对BT网络的效用值为基础。因此,非种子邻居节点中的高效用值热心节点分担了网络中部分种子节点的压力,使得种子节点自身的服务能力提高,缩短了网络中的请求时间延迟。
本文以QoS属性约束集为基础,提出了基于邻居下载节点的稀有下载检测算法DANDN,并通过仿真实验验证了QoS属性约束集对BT网络的影响以及下载检测算法的有效性。首先,本文以提高BT网络的QoS为目标,提出了影响整个BT网络QoS的要素,并把这些要素分为两类约束集,即节点在网络中的属性集以及节点自身的机器硬件属性集;为了保护网络中的种子节点,本文给出了节点搭便车行为的实现过程,即如何选择检测节点、确定检查范围,并提出了基于邻居下载节点的检测算法DANDN。该算法选取了网络中的非种子热心节点作为检测节点,并优先向非种子邻居节点请求下载的方法作为检测方式来实现。最后,通过仿真实验验证了DANDN算法的可行性以及QoS属性约束集对BT网络的影响。
[1] Liangmin Guo,Shoubao Yang,Shuling Wang.Replica Deletion Strategy Based on Gray Prediction Theory and Cost in P2P Networks[C].International Conference on Computer Science and Service System,2012:2243-2246.
[2] Michal Feldman,John Chuang.Overcoming Free-Riding Behavior in Peer-to-Peer Systems[J].ACM SIGecom Exchanges,2005,5(4):41-50
[3] 李晓义,李治军,姜守旭.BitTorrent网络的搭便车及恶意攻击研究[J].计算机工程,2011,37(7):163-165.
[4] Bram Cohen.Incentives Build Robustness in BitTorrent[EB/OL].In 1st Workshop on Economics of Peer-to-Peer Systems,2003.
[5] Ramaswamy L,Liu L.Free riding:A New Challenge to Peer-to-Peer File Sharing System[C].Proceeding of the 36th Hawaii International Conference on System Science,Hawaii,2003:1-10.
[6] 满金贵,王淼,张翰文,张玉军.一种基于节点全局信任值的BitTorrent系统区分服务机制[J].计算机研究与发展,2012,49(6):1204-1210.
[7] Jun Han,Shufang Zhang.Using the Reputation Score Management for Constructing Fair P2P File Sharing System[J].TELKOMNIKA,2013,11(6):3200-3205.
[8] Bhakuni,Anuja,Sharma,Parul,Kaushal,Rishabh.Free-rider detection and punishment in BitTorrent based P2P networks.2014 IEEE International Advance Computing Conference,2014:155-159.
[9] Chen Kang,Liu Guoxin,Shen Haiying.SocialLink:Utilizing social network and transaction links for effective trust management in P2P file sharing systems.2015 IEEE International Conference on Peer-to-Peer Computing,2015:1-10.
[10] Mahini,Hamidreza,Dehghan,Mehdi,Navidi,Hamidreza.GaMe-PLive:A new game theoretic mechanism for P2P live video streaming[J].International Journal of Communication Systems,2016,29(6):1187-1203.
[11] Zhang Qingfeng,Wang Sheng,Liao Dan.A game theoretic analysis of public goods allocation in P2P networks[J].KSII Transactions on Internet and Information Systems,2015,9(8):2854-2874.
[12] Kang Xin,Wu Yongdong.A game-theoretic approach for cooperation stimulation in peer-to-peer streaming networks.2013 IEEE International Conference on Communications,2013:2283-2287.
[13] 乐光学,李仁发,陈志,周旭.P2P网络中搭便车行为分析与抑制机制建模[J].计算机研究与发展,2011,48(3):382-397.
[14] 周燕,张麒麟.基于经济学实验的搭便车问题研究[J].哈尔滨工业大学学报(社会科学版),2011,13(5):27-31.
[15] 刘建辉,王君,冀常鹏,汪洋.P2P中应用平衡机制抑制搭便车行为的研究[J].计算机科学,2013,40(7):36-39.
[16] Zhang Yu,Bai Yanping,Hao Ying.Free Riding Inhibition Mechanism Based on User Behavior in P2P File-Sharing System[J].China Communication,2012,12:36-4.
Research on behavior detection of free-riding based on neighbor downloading nodes in the BT network
SUN Yan1,WANG Hai-long2
(1.LirenCollegeofYanshanUniversity,QinhuangdaoHebei066004,China;2.DepartmentofComputer,CollegeofInformationScienceandEngineering,YanshanUniversity,QinhuangdaoHebei066004,China)
The free-riding behavior seriously affects the QoS of the BT network,therefore,a kind of behavior detection strategy of free-riding based on neighbor downloading nodes is proposed in this paper.Firstly,the QoS dual properties of constrained sets of the BT network is defined,which includes attribute constraint set of the node in the network and hardware attribute constraint set of the node itself.Secondly,in order to protect seed nodes,the algorithm uses the method that a priority to the non-seeded neighbor nodes request to download based on the seed node ratio property of the dual QoS constraint sets,and the detection algorithm DANDN(Detection Algorithm Based on Neighbor Downloading Nodes) is proposed,and the selection of neighbor nodes is given by defining the utility value.Finally,the influence degree of the dual QoS constraint sets and DANDN algorithm are verified in PeerSim simulation platform,and the results show detection strategy based on the neighbor downloading nodes is feasible.
BT network; QoS constraint sets; Free-riding; Neighbor downloading nodes; Utility function; PeerSim
2016-08-26
河北省自然科学基金资助项目(F2011203092)
孙 岩(1980-),男,河北省秦皇岛市人,硕士研究生,研究方向:对等网路、社会计算、Web服务.
1001-9383(2016)03-0001-08
TP393
A