1 / 49

网络仿真工具介绍

网络仿真工具介绍. 彭金磷 @Infonet 2011.12. 为什么要使用网络仿真工具. 从上至下数据的获取相对来说 越来越 于容易, 但同时可信度和适用性也越来越低. 网络的实现比较灵活,重配置也比较容易 可以捕捉和重现特定的网络事件,可以用来学习大规模网络环境下的行为 主要可以分析的参数包括网络的行为和性能 性能方面的分析比较多。但是有点需要注意的是,在仿真得到的数据中可能是一个宏观的结果,中间的具体的算法细节并没有得到很好的体现 即使是在结果得到以后,也需要对仿真结果进行详细的分析,得出产生这些现象的原因. 现有计算机网络仿真平台主要包括:

elsie
Télécharger la présentation

网络仿真工具介绍

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 网络仿真工具介绍 彭金磷@Infonet 2011.12

  2. 为什么要使用网络仿真工具 从上至下数据的获取相对来说越来越于容易, 但同时可信度和适用性也越来越低

  3. 网络的实现比较灵活,重配置也比较容易 • 可以捕捉和重现特定的网络事件,可以用来学习大规模网络环境下的行为 • 主要可以分析的参数包括网络的行为和性能 • 性能方面的分析比较多。但是有点需要注意的是,在仿真得到的数据中可能是一个宏观的结果,中间的具体的算法细节并没有得到很好的体现 • 即使是在结果得到以后,也需要对仿真结果进行详细的分析,得出产生这些现象的原因

  4. 现有计算机网络仿真平台主要包括: • OPNET商业化的通信网络仿真平台 • OMNeT++ (Objective Modular Network Testbed in C++) 面向对象模拟的模拟器,主要面向OSI模型的网络仿真 • NS-2 (Network Simulator 2)

  5. Part 1: OPNET基础 ——网络域建模

  6. Agenda • OPNET简介 • OPNET的安装 • OPNET仿真环境简介 • OPNET项目编辑器 • OPNET的优点和缺点

  7. OPNET简介 • OPNET Technologies, Inc • 业界公认的强力GUI网络仿真软件 • 五个核心系列 • Modeler、IT Guru、SP Guru 、WDM Guru、ODK和NetBizODK

  8. OPNET的安装 • OPNET Modeler版本 • 8.110.0.511.514.5 • 商业软件:版权保护 • 无论哪个版本,安装之前请先安装MS Visual C++ 6.x或Visual Studio.net,并注册环境变量 • Opnet8.1已有破解。10.0.5使用8.1的License,但部分组件不可用(不影响一般使用) • 14.5有单独的破解,但仍有部分组件不可用

  9. Opnet10.0.5的安装 • 安装opnet8.1,获取License(过程较为复杂) • 拔掉网线(或关闭本地连接),关闭防火墙 • 执行modeler_81a_pl8_win32.exe(modeler核心),按提示安装。License类型选Standalone • 执行models_81_may02_17_win32.exe(opnet库文件),按提示安装 • 将8.1.A_PL3_8_Crack目录下的文件拷贝到XXX\OPNET\8.1.A\sys\pc_intel_win32\bin下 • 运行Opnet Modeler,打开License Management,此时显示“no license”

  10. Opnet10.0.5的安装 • 安装opnet8.1(续) • 关闭License Manager,但不要关闭OPNET Modeler • 打开OPNET Modeler的Edit-Preference菜单,license_server应设为localhost,licenser_server_standalone应该为TRUE。若修改了设置,则重启OPNET Modeler • 双击bin目录下的Mk_Lic.exe,回车继续,等到出现结束提示后,回车关闭该窗口。(等待的时间会比较长,如果中途退出,license会不完全。)

  11. Opnet10.0.5的安装 • 安装opnet8.1(续) • 从OPNET Modeler的License-License Management菜单启动License Management, 此时License文件中应该已经有100x35个License了,关闭License Management。 • 在OPNET Modeler的License-Product Modules菜单里选择所有的项目,确定后重新启动OPNET Modeler,此时就可以正常使用OPNET Modeler了。

  12. Opnet10.0.5的安装 • 安装opnet10.0.5 • 依次执行modeler_100A_PL1_win32.exe(opnet modeler核心)、models_100a_aug20_2003_win32.exe(opnet库)、modeler_docs_14-Aug-2003_win32.exe(opnet帮助和说明文档) • 运行opnet modeler,在OPNET Modeler的License-Product Modules菜单里选择所有的项目,即可正常使用

  13. Opnet14.5的安装 • 依次执行modeler_145A_PL1_7116_win.exe、models_145A_PL1_27Feb08_win.exe、modeler_docs_28-Jan-2008_win.exe,安装OPNET14.5 • 执行OPNET.Modeler.11.5.License.MakerFFS.exe,产生license

  14. OPNET仿真环境简介 • 图形用户界面 • 层次化、模块化建模机制 • 三层建模机制

  15. 网络域 • 网络域 • 无限分层(子网)

  16. 网络域(续) • 网络域 • 拓扑部署 • 设备选择:3Com, Cisco, Sun等 • 通信链路选择:PPP OCx/DSx, SONET OCx, 10BaseT等 • 手动或文件导入拓扑 • 流量和业务配置 • 客户端:业务特征(HTTP、FTP等) • 服务器:支持何种业务(HTTP、FTP、email等)

  17. 节点域 • 配置硬件设备的内部组成模块 • 一般不需要改动

  18. 进程域简介 • 状态转移图 • 程序一般很长(几千行)

  19. Opnet编辑器 • 项目编辑器 • 节点编辑器 • 进程编辑器 • 链路编辑器 • 包编辑器 • 天线模式编辑器 • 接口控制信息编辑器

  20. 项目编辑器-创建项目 • 用途:创建工程文件,包括场景、拓扑、硬件设备等 • “项目-场景”工作流程 • 创建项目 • 创建场景 • 复制场景 • 导入或创建拓扑结构 • 导入或创建流量 • 选择要输出的结果和报告 • 运行仿真 • 查看结果 • 作出变更 • 重新运行仿真 • 比较结果

  21. 项目编辑器-创建项目 • 步骤 • 创建Project与Scenario:Filenew…

  22. 项目编辑器-创建项目 • 步骤(续) • 初始化拓扑

  23. 项目编辑器-创建项目 • 步骤(续) • 选择网络尺度(Scale)

  24. 项目编辑器-创建项目 • 步骤(续) • World:选择地图(map) • Campus/ Enterprise:指定大小

  25. 项目编辑器-创建项目 • 步骤(续) • 选择技术(Technologies):指定需要的设备列表

  26. 项目编辑器-拓扑生成 • 拓扑的生成 • 生成方式:手动设置/从文件导入 • R&D多采用手动设置 • 设备选择:与具体场景有关,对硬件设备有一定了解(如链路PPP DS0/DS1、SONET OC3等) • 参数设置:对所要仿真的技术有足够深入的了解(如无线设备的发射功率)

  27. 项目编辑器-流量产生 • 常见的三种流量产生方式 • 链路背景流量:为一条联络设置背景流量 • Demand流量:创建一条端到端的流量 • 配置业务流量:可设置整个网络流量

  28. 项目编辑器-流量产生 • 链路背景流量 • 优点:简单

  29. 项目编辑器-流量产生 • Demand流量 • 优点:用来设置端到端单条流量

  30. 项目编辑器-流量产生 • 配置业务流量 • 比较复杂 • 两个配置器 • Application(应用配置器) • Profile(分布配置器)

  31. 项目编辑器-流量产生 • 配置业务流量(续) • Application:配置服务器所支持的应用,如FTP、Email、HTTP等 • Profile:配置终端用户产生的流量分布,如进行何种业务(FTP、HTTP等)、何时开始和结束等 • 配置Profile时需指定Application • 难点在于Application和Profile的参数设置

  32. 项目编辑器-统计量观测 • 设置统计量 • 右键选择Choose Individual DES Statistics • 对设备、链路均可设置统计量 • 在空白处右键Choose…可设置全局统计量 • 输出统计量 • 右键View Results • 很多情况下不能直接用OPNET的输出图,而需要将结果输出到文件,然后自己用工具画图。这需要在进程层进行相关操作

  33. OPNET的优点与缺点 • 优点 • GUI软件,直观,拓扑部署方便 • 支持的技术库完善,功能强大 • 缺点 • 技术库完善而强大程序十分复杂,修改十分困难 • 耗CPU和内存,不适合PC上的大规模网络仿真(Router>100,TE>1000)

  34. Part 2: NS 2 ——开源仿真工具

  35. 内容提纲 • NS2介绍 • NS2结构 • NS2安装和使用 • 小示例 • 一些资源

  36. NS2介绍 • NS-2是用于网络研究的离散事件仿真工具 • 可以进行对固定,无线,卫星以及混合等多种网络的仿真 • 集成了多种网络协议,业务类型,路由排队管理机制,路由算法 ,组播业务 • NS-2的主要优点 • 源代码公开,很多研究人员对NS-2进行了扩展 • 能有效支持无线多跳网络的仿真,包括协议栈、混合仿真的支持和场景工具等。 • 可扩展性强,速度和效率优势明显

  37. 分裂对象模型 NS2结构 编译运行 速度快 适合实现核心算法 解释执行 易于修改 适应于配置文件设置 实例化一个构件,将会生成两个对象(C++和OTCL对象)

  38. NS2包含Tcl/Tk,OTcl,NS,Tclcl。 • Tcl是一个开放脚本语言,用来对NS2进行编程; • Tk是Tcl的图形界面开发工具,可帮助用户在图形环境下开发图形界面 • OTcl是基于Tcl/Tk的面向对象扩展,有自己的类层次结构; • NS为本软件包的核心,是面向对象的仿真器,用C++编写,以OTcl解释器作为前端; • Tclcl则提供NS和OTcl的接口,使对象和变量出现在两种语言中

  39. 文件结构

  40. NS2安装和使用 • Windows下的安装(Cygwin) • 只提供了Cygwin的安装方式,所以首先要安装Cygwin,注意需要源码安装NS2成功的话,在安装Cygwin的时候,注意要安装这些模块:gcc,make,autotools,还有如x11相关的类库(NAM需要)。 • Linux下的安装 • 安装相应的软件包(每个类型的操作系统有自己的安装方式,比如debian可以使用aptitude来安装,Redhat可以使用yum等),然后使用源码安装。

  41. 推荐linux下安装 • 系统Ubuntu 10.10 NS2.33 • sudo apt-get install libx11-dev , libxmu-dev , libxmu-headers , libxt-dev , libtool • 安装完成测试 • ns

  42. OTCL解释器 _____________ NS2仿真库 事件调度器 网络组件 分析仿真结果 仿真结果 OTCL脚本文件 可视化仿真过程

  43. 写Tcl脚本

  44. 分析tr文件(结果)

  45. 最常用的网络参数: • 吞吐量(丢包率),延时,延时抖动 • Tr文件统计 • awk , python…

  46. 在NS2的包中已经包含有众多的例子程序,学习NS2最快的方法就是从这些例子开始。在NS2的包中已经包含有众多的例子程序,学习NS2最快的方法就是从这些例子开始。 • 具体位置:ns-allinone-2.33\ns-2.33\tcl\ex\

  47. 一些资源 • 百思论坛 http://www.baisi.net • NS入门:http://www.isi.edu/nsnam/ns/tutorial/ • 柯老师网站:http://140.116.72.80/~smallko/ns2/ns2.htm • 国内也出了两本中文书 • 无线NS2: http://www.crhc.uiuc.edu/wireless/assignments/simulations/

  48. The End Thanks!

More Related