GnutellaSim入手指南.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GnutellaSim入手指南

建立网络模拟器 要运行GnutellaSim包,你首先需要建立网络模拟器。这包括建立网络拓扑结构,例如,使用的GT - ITM。请注意,得到了Gnutella的系统最逼真的画面,您可能需要一些变化的GT - ITM,这是不包括家庭接入网络链接。用户接入带宽的分配上的统计,可以发现在最近的一些同行对同行的测量研究(例如,[1])。一种方法是重视叶的GT - ITM生成存根路由器节点的物理节点,只有那些叶子节点上运行Gnutella的同行。存根路由器和叶节点之间的链路带宽,按照一定的接入带宽statitics。可以在这里找到了一个示例的拓扑结构设置。 初始化Gnutella系统参数 创建一个PeerSys并初始化文件和peer的类的参数 命令a:set sys [new PeerSys nFlles nClasses alpha] #nFiles是Gnutella系统中建模的文件总个数 #nClasses是peers的类的总数 #alpha是Pareto分布的通用性的参数 命令b:$sys init-class file #sys是PeerSys目标哪个peer classes将被定义 #Filename 是用来描述peer classes的文件 例如: Set sys [new PeerSys 100 2 2.5] $sys init-class “classinfo.txt” #两个peers的类的描述在classinfo.txt中。 Classinfo.txt: 4320 300 0.2 0 #class0:avg offline(sec),avg idle(sec),prob. Going online after a successful query, is NOT a freeloader) 4320 30 0.1 1 #class1:前3个参数的意义同上,is a freeloader 3建立一个引导服务器 目前在模拟时有两个引导方案供选择: Option(1)使用简单的模拟的引导过程的效果,而不是一个引导协议: set srvname [new SocketApp/SmpBootServer] #srvname 是引导服务器的对象名称 例如:set bootserver [new SocketApp/SmpBootServer ] option(2)使用一个简化的GWebCache引导协议,每个GWebCache服务器如下创建: set srvname [new PeerApp/GnutellaApp address isBootserver] #option1存储了引导过程的模拟时间,但是option2更加接近真实行为 例如:set bsrv_($i) [new PeerApp/GnutellaApp $srvid_($i) 1 ] 4创建和启动peers (a) 创建一个peer set peername [new PeerApp/GnutellaApp address] #peername 是ns中即将被创建的peer的对象名称;address是peer绑定的物理节点地址 (b) 为peer设定引导 Option1:当SmpBootServer用来引导,Gnutella peers初始化引导服务器的设置如下所示: $peername use-smpbootserver $bsrvname #bsrvname是作为一个引导服务器的SmpBootServer对象名称 Option2:当简化的GWebCache引导协议被使用。每个peer会配上用一系列的(相关)引导服务器;地址用 use-bootserver命令 $peername use-bootserver filename #filename是简单的GWebCache引导服务器的物理节点地址的列表文件的名称 (c)绑定peers 像peers里确定的那些类一样把peers捆绑到PeerSys上(若干的类确定某个peer,某个peer确定到PeerSys上) $peername attach-sys $sysname class #sysname是ns中PeerSys被捆绑到的对象的名称; #class是class的ID(就像在class的初始化文件里的一样) (d)启动peer $ns at stime $peername start # ns是模拟器事例(事件) #stime是启动时间 例: set peer(1) [new PeerApp/GnutellaApp $nodeid1] # legacy_peer attached to physical node $nodeid1 set peer(2) [new PeerApp/Gnutell

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档