[发明专利]一种基于NS2的P2P流媒体仿真系统有效
申请号: | 201210352401.4 | 申请日: | 2012-09-19 |
公开(公告)号: | CN102970176A | 公开(公告)日: | 2013-03-13 |
发明(设计)人: | 张桂莲;罗笑南;孟思明;薛凯军;肖剑 | 申请(专利权)人: | 东莞中山大学研究院;中山大学 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L29/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 523808 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ns2 p2p 流媒体 仿真 系统 | ||
技术领域
本发明涉及流媒体技术领域,尤其涉及一种基于NS2的P2P流媒体仿真系统。
背景技术
随着网络规模的不断扩大和上网用户的大量增加,流媒体技术因能为上网用户提供文字、视频和音频的三位一体化信息和娱乐服务成为当前因特网上最为重要的应用之一。但是传统的C/S模式的流媒体服务系统过分的依赖媒体服务器的性能和带宽资源,在很大程度上阻碍了流媒体业务质量的提高和容量的扩大。为了解决以上问题,P2P(peer-to-peer,对等网络)技术被引入到了流媒体应用中,P2P系统可以聚集处于Internet边缘、数量庞大的闲散资源完成那些通常需要昂贵的设备才能完成的工作,同时P2P流媒体又具有扩展性、利用率、容错性等方面的良好特性,为流媒体技术提供了未来的发展方向。然而P2P作为倍受关注的大型分布式系统之一,在对其进行研究过程中,大量新系统结构与相关算法不断涌现,其可行性、正确性均需实验加以测试与验证,而且P2P流媒体网络具有规模大、结构复杂、动态性强等特点,这使得在真实的网络环境中对P2P流媒体进行相关研究难以控制且实现成本较高。因此,必须借助于具有良好仿真能力的P2P流媒体仿真系统来开展各项研究工作。
多数P2P协议在仿真验证的时候,模拟器多基于不考虑底层网络的简单模型,虽然模拟能高效进行但却与真实系统存在较大的失真,大多仅支持特定协议的较小规模模拟,导致模拟过程中实用性和真实性无法得到保证,同时存在对高层协议支持不足的缺陷,导致添加应用程序较为困难。对拓扑感知的P2P网络仿真研究中还要考虑到底层网络在丢包、队列延迟、自治域和拓扑结构方面的细节,因此,为了降低将应用程序加入到NS2中进行模拟的复杂度,同时也为了使得应用程序与底层的协议的高度的独立性,本文在通用网络仿真软件NS2的基础上设计了一个网络仿真器——PPStream,网络仿真器的具体设计过程将在以下内容中详细介绍。
发明内容
本发明的目的是为了克服现有技术的缺陷,提供一种基于NS2的P2P流媒体仿真系。
一种基于NS2的P2P流媒体仿真系统,底层网络采用NS2原有的经典模型组件,为了支持对应用层的模拟,其特征在于,增加了支持P2P应用的模块,分别是:P2P应用层,Socket模块和统计模块,其中P2P应用层模块包括P2P用户行为层,P2P代理层,P2P接口层;
Socket模块为底层NS2和P2P应用层提供通讯接口,使P2P系统具有可移植性,其作用类似于真正的TCP Socket和UDP Socket套接字功能,对已有的底层TCP/UDP网络接口进行修改和封装,使底层网络模型对用户透明,为上层应用程序方便的使用底层NS2进行网络通信提供统一的编程接口;
P2P应用层模块是实现用户基本应用程序模拟的重要模块,应用程序不能直接加入到NS2平台中,而是要继承应用程序基类来加入到NS2中,并利用Socket层模块提供的接口,实现具体的应用程序的仿真,它将用户行为和算法分离开来,提供各自模拟的接口,利用仿真的加载和实现;
统计模块主要功能是负责收集各个模块的数据并对模拟结果进行分析和输出,以便评价一个数字模型的真实特性,独立出的该统计模块方便对应用层和底层网络进行数据采集。
P2P应用层模块调用相对应的socket来建立链接和传递消息,负责对消息封装和解析,具有bind(),listen(),connect()、send()、recv()和poll()等操作,用户为上述这些函数加上upcall前缀,将socket状态变化情况告知上层应用层,反过来上层应用层通过对应的API改变socket状态。
P2P用户行为层对P2P用户行为进行仿真,节点基本行为API的实现包括节点的动态join()和leave()、文件初始分布、节点发出文件请求的分布规律,VCR模块处理P2P流媒体用户对播放的快进快退等请求;
P2P接口层模块提供P2P系统的基本应用,用于和socket通讯的接口,该模块可封装多个Socket模块,应用层利用P2P接口层模块调用相应socket实现链接建立与消息传递,故该模块为应用层与底层网络间的通讯途径,此外,该层还负责执行消息的解析和封装,以及对树状协议直播模型和Gossip网状协议直播模型的实现。
在该系统上添加新协议步骤为:
Step1:准备两个头文件xxx.h和xxx.cc,放到固定目录下,比如放到A目录下;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东莞中山大学研究院;中山大学,未经东莞中山大学研究院;中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210352401.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电池盒拨入分离机构
- 下一篇:一种适合自动上下线的隧道式烤炉泊位机构