NS3仿真框架介绍.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文档。上传文档
查看更多
1. 离散事件仿真器原理 在NS3中,Event是以智能指针(函数指针)的形式存储在Scheduler的列表中的,执行Event的过程就是调用该函数的过程,在执行过程中又将产生新的Event 2. NS3文件与模块 NS3是由3部分组成的: .运行支撑框架,如event,scheduler等; .仿真对象(网络元素),如路由对象、物理层MAC层对象以及各类协议; .仿真辅助工具,如跟踪trace,日志log,统计statistical,图形化 等; 3. NS3 基础架构图 4. 关键元素 4.1 Node ns-3中基本计算设备被抽象为节点。节点由C++中的Node类来描述。Node类提供了用于管理仿真器中网络组件表示的各种方法,包括应用程序,协议栈,外设卡及驱动程序等。 4.2 Application 在ns-3中,需要被仿真的用户程序被抽象为应用。应用在C++中用Application类来描述。这个类提供了管理仿真时用户层应用的各种方法。开发者应当用面向对象的方法自定义和创建新的应用。UdpEchoClientApplication 和UdpEchoServerApplication:一个client/server应用来发送和回应仿真网络中的数据包。 4.3 Channel 通常我们把网络中数据流流过的媒介称为信道。包括:CsmaChannel, PointToPointChannel和WifiChannel。在ns-3的模拟环境中,你可以把节点连接到代表数据交换信道的对象上。在这里,基本的通信子网这一抽象概念被称为信道,在C++中用Channel类来描述。 4.4 Net Devices NetDevices由C++中的NetDevice类来描述。NetDevice类提供了管理连接其他节点和信道对象的各种方法,并且允许开发者以面向对象的方法来自定义。例如CsmaNetDevice, PointToPointNetDevice, 和 WifiNetDevice。 4.5 Topology Helpers ?在现实的网络中,你会发现主机已装有(或者内置)的网卡。在ns-3中你会发现Nodes附加了NetDevices。在大型仿真网络中,你需要在Nodes、NetDevices和Channels之间部署许多连接。 既然把NetDevices连接到Nodes、Channels,配置IP地址等等事情在ns-3是很普遍是任务,那么我们干脆提供了Topology Helpers来使这个工作变得尽可能的容易。举例来说:创建一个NetDevices,配置一个MAC地址,把此NetDevices装载到Nodes上,设置Nodes的协议栈,以及连接NetDevices到一个Channels,这些事情都需要许多分立的ns-3核心操作。而当需要把许多设备连接到多点Channels,在网际间将单个网络进行连接,则需要对ns-3核心进行更多更多的分立操作。我们提供了Topology Helpers来整合这些大量分立的步骤,使其成为一个简单易用的操作。很明显,这样做可以极大地方便用户。 5. 通信流程(消息传递机制) 6. NS3的移动模型 ns-3支持的移动模型类包含: (1) 一个用于跟踪和维护object当前笛卡尔坐标和速度的移动模型 (2)可以用来注册移动模型的轨迹变换监听器的轨迹变换通知器的跟踪源 (3)一些用来放置节点和移动模型的helper类 类名 模型名 ConstantPosition 定点模型 ConstantVelocity 固定速度模型 ConstantAcceleration 固定加速度模型 GaussMarkov 随机模型 Hierarchical 分层模型 RandomDirection2D 二维随机方向模型 RandomWaypoint 随机路径模型 SteadyStateRandomWaypoint 稳态随机路径模型 7. 节点装载流程 创建节点; 创建链路类型; 为节点创建具有链路类型的设备; 为节点创建协议栈; 设置节点和网络IP; 配置业务应用; 8. NS3的优缺点 . 优点: 框架灵活,可以方便修改自己所要仿真的部分; 内容丰富,有最新的网络仿真元素,如openflow,LTE; 持续维护中; . 缺点: 移动模型粗糙简陋; 仿真无线通信时无法考虑建筑等障碍物对通信质量的影响; 仿真结果的可视化 9. iTETRIS-ICS 架构图 10. iTETRIS-ICS 时序图 Time Scheduler Action: Trigger Action: Insert Action: Insert Action: Insert Begin Event i App

文档评论(0)

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

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

1亿VIP精品文档

相关文档