博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
P2P系统仿真: oversim+INET+omnetPP
阅读量:6847 次
发布时间:2019-06-26

本文共 1218 字,大约阅读时间需要 4 分钟。

来香港半年多了,啥事情没折腾出来,就折腾了p2p的仿真了。 P2P的仿真软件很多, 测量软件也很多,但是挑选了半天,我还是选择了omnetPP + INet + OverSim来做为我的仿真平台。 这里我也只是做个简单的介绍而已, 有兴趣的朋友可以自己去找些资料看看了。 


OmnetPP是一个跨平台的离散时间事件仿真程序, 功能蛮强大的,而且还开源。但是我看了一下他的许可证,他并不是基于GPL的。 估计作者希望将来能把这个东西做大盈利,但是目前来看只要不是商业使用,就完全开源和免费,这是很不错的。 同类的仿真软件还有NS2,但是NS2对于p2p的仿真似乎一直没有专门的团队来支持,需要自己付出大量的工作,所以意义不大。其次,OmnetPP的一个吸引我的地方是图形界面和实时显示能力,这个是NS2所没有, NS2是基于仿真结果数据来显示仿真状况,属于电影回放playback类型,而omnetPP是属于现场直播Live, 很适合在早期发现设计中的错误。 OmnetPP只是一个通用的网络仿真软件, 在其上需要对计算机网络进行仿真,需要INET模块。


INET模块是一个独立的计算机通信网络协议集在OmnetPP上的实现, 包括从物理层到应用层的网络协议,真让人叹为观止。 而且这个模块有专门的团队负责维护, 文档方面非常完备。就这点我就没理由不用它了。 INET模块主要用于互联网的仿真, 由于我只是希望对P2P这类特定应用进行仿真,所以INET的细节方面并不是我所关注的,它只是我所需要的Oversim模块所必须的下层模块,所以在这里提一下。


Oversim模块根据他的名字就看出他主要是用于Overlay类型的应用层网络仿真所设计的。 但是在实际的开发中,他却主要用在目前主要的那些P2P应用协议的仿真上了。 Oversim的底层是建立在一套简化的UDP协议之上(依靠了INET里面的实现),在其上,他定义了一套层次框架,由下至上为 Overlay Applicatoin Tier1 Applicatoin Tier2 Applicatoin Tier3 . 根据其设计的说明, Overlay层用于包括通用的底层Overlay协议的实现。而上层具体的应用,可以一层一层的叠加上去,作为Tier1 Tier2 Tier3。拿P2P的仿真来举例,通用的Pastry协议的实现就是放在Overlay这层的,而可以利用Pastry的各种应用,比如p2p存储, 聊天,媒体播放功能可以作为Tier1层堆叠上去。 各个层次的对上层接口都由Oversim定义,也可以自己扩充(我就扩充了一套专门用于媒体数据传输的接口)。 可以说Oversim提供了一个很不错的P2P设计的程序框架的参考。

     本文转自nathanxu 51CTO博客,原文链接:http://blog.51cto.com/nathanxu/62378,如需转载请自行联系原作者

你可能感兴趣的文章
关于协同过滤技术
查看>>
简述 OAuth 2.0 的运作流程
查看>>
OpenJTAG与Jlink/J-link的区别
查看>>
聚焦能力开放 咪咕让中国移动全球合作伙伴大会智趣无限
查看>>
阿里NASA新知 量子通信保障信息更安全
查看>>
阿里推出国内首个锂电池服务器!
查看>>
让父母轻松享受智能生活 天猫精灵新品全测评
查看>>
当时刷大标语的智能养猪现在怎么样了!阿里云ET农业大脑告诉你……
查看>>
使用动态跟踪技术SystemTap监控MySQL、Oracle性能
查看>>
5600高流明更清晰 NEC CF6600U投影试用
查看>>
甘肃培育十大生态产业 文旅融合“爆发式”增长
查看>>
广铁今年春运预计发送旅客5930万人次
查看>>
欧洲时报:这三家法国大学拒绝上涨外国学生注册费
查看>>
区块链每日快讯(0125)-明星项目影视链MDC涉嫌造假
查看>>
全球皆可访问的 Google Codelabs 网站
查看>>
良好的 API 设计指南
查看>>
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(中)
查看>>
Rust 交叉编译与条件编译总结
查看>>
Netflix推荐算法,让每个人看到不一样的电影海报
查看>>
【漫画】AI小猪的一生
查看>>