Simulation of a P2P Application Using Oversim

1、Munoz-Gea 发表在2007年,本文的目的在于向P2P 领域的工作者介绍这个工具。

2、其它P2P 仿真工具的缺点:

1、P2PSim:不易扩展,统计存在局限;

2、PeerSim:底层的TCP/IP网络不是模块化的;

3、PlanetSim:在仿真底层TCP/IP网络时候存在局限性。

3、Oversim的层次结构:

image

1、构建在OMNET++上,开发的基本步骤是:1)用NED 语言描述系统结构;2)用C++实现简单模块;3)配置和仿真。

2、Application 被分为两层:1)一些简单的引用可以在Tier1实现;2)一些复杂的需要Tier层提供服务的应用则在Tier2实现。

3、Overlay层的程序需继承于BaseOverlay类,而应用层的则需继承于BaseApp类。

4、P2P的分类:

1、Centralized directory model: 存在单点故障;

2、Unstructured Model:采用flooding +TTL 进行查找,traffic非常大,不能够确定所需要数据是否存在;

3、Structured Model: 不支持模糊查询;

5、结构化P2P 的API设计:

1、void route(key k,msg m) 实现在Overlay层;

2、void forward(key k,msg m,nodehandle nexthopnode) 实现在Applicaiton层;

3、void delivery(key k,msg m)实现在Applicaiton层。

6、基于超级节点的P2P网络API:

Common Operations:

1.Super-peer joint 就是普通节点加入到Super-peer节点;

2.Publication 就是发布内容;

3.Lookup 就是查询内容;

4.Download 就是下载所请求的内容。

相互交互的操作:

1、Super-peer 通信:有 SuperPeerRequestMessage 和 SuperPeerResponseMessage,以应对 Super-peer joint、publicaiton of contents、lookup of contents。

2、Peer 之间的通信:有 PeerRequestMessage 和 PeerResponseMessage,用于下载所请求的内容。

3、为了使节点能够接受消息,需实现 bindToPort() 函数,为了使节点能够发送消息,需实现sendToUDP()函数,处理消息函数为handleMessage()。

7、P2P的建模:

1、有必要对queries, the node connection inter-arrival time, session length, the file-time, files arrival rate, the number of peers receiving them进行特征提取和建模.

2、the time until the first query 是通过 weibull (for body)  分布和  log-normal (for tail) 分布进行建模;

3、the query inter-arrival time (for body)  是通过log-normal 分布和 Pareto (for tail ) 分布来建模的;

4、the query popularity 服从zipf-like 分布;

5、inter-arrival time 服从 weibull 分布;

6、 the session length 服从weibull 分布。(注:同一种分布,其参数各不相同)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值