NS-2网络模拟基础与应用

当前位置:首页 > 网络编程 > 网络与通信 > NS-2网络模拟基础与应用

出版社:国防工业出版社
出版日期:2008-4
ISBN:9787118056389
作者:方路平,刘世华,等
页数:254页

作者简介

《NS-2网络模拟基础与应用》根据作者学习和利用NS-2进行研究工作所积累的经验,向读者详细介绍了NS-2网络模拟软件的安装配置、网络组件结构、Tcl语法等基础知识,对可能会造成初学困难的相关网络基础知识进行了讲解,通过众多实例重点讲解了NS一2网络模拟软件在网络教学中的应用。对于需要进一步深入研究的读者,《NS-2网络模拟基础与应用》后半部分剖析了NS-2的源代码结构,介绍如何通过修改源代码来扩展NS-2的功能和使用范围。

章节摘录

  第1章 初识NS-2  1.1 NS-2概述  NS是Network Simulator的英文缩写,字面翻译即为网络模拟器,又称网络仿真器。NS-2则是网络模拟器的第2版。  NS-2(Network Simulator,version 2)是一款开放源代码的网络模拟软件,最初由加州大学伯克利分校(UC Berkeley)开发。它最初的开发目的是为了研究大规模网络以及当前和未来网络协议的交互行为。它为模拟研究有线和无线网络上的TCP、路由和多播等协议提供了强有力的支持。Ns-2是一个开放源代码软件,任何人可以获得、使用和修改其源代码。正因为如此,世界各地的研究人员每天都在扩展和更新它的功能,为其添加新的协议和功能。它也是目前网络研究领域应用最广泛的网络模拟软件之一。  NS-2是一种面向对象的网络模拟器,它本质上是一个离散事件模拟器,其本身有一个虚拟时钟,所有的模拟都由离散事件驱动。目前NS-2可以用于模拟各种不同的通信网络。它功能强大,模块丰富,已经实现的主要模块有:网络传输协议,如TCP和UDP;业务源流量产生器,如FTP、Telnet、Web、CBR和VBR;路由队列管理机制,如Droptail、RED和CBQ;路由算法,如Dijkstra;以及无线网络WLAN、移动IP和卫星通信网络等模块。NS-2也为进行局域网的模拟而实现了多播协议以及一些MAC子层协议。  NS-2使用了被称为分裂对象模型的开发机制,采用c++和OTcl两种开发语言进行开发。它们之间采用TclCL进行自动连接和映射。考虑效率和操作便利等因素,NS将数据通道和控制通道的实现相分离。为了减少分组和事件的处理时间,事件调度器和数据通道上的基本网络组件对象都使用c++编写,这些对象通过TclCL映射对0Tcl解释器可见。这样,用户只需要通过简单易用的TcI/OTcl脚本编写出模拟代码,对网络拓扑、节点、链路等各种部件和参数进行方便快速的配置。NS-2可以说是0Tcl的脚本解释器,它包含模拟事件调度器、网络组件对象库等。事件调度器控制模拟的进程,在适当时间激活事件队列中的当前事件,并执行该事件。网络组件模拟网络设备或节点的通信,它们通过制定模拟场景和模拟进程,交换特定的分组来模拟真实网络情况,并将执行情况记录到日志文件(称为Trace文件)中,以提供给模拟用户进行分析解读,获取模拟结果。NS-2采用这种分裂模型既提高了模拟效率,加快了模拟速度,又增强了模拟配置的灵活  性和操作的简便性。

书籍目录

第1章 初识NS-21.1 NS-2概述1.2 NS-2溯源与展望1.3 网络模拟与网络模拟软件1.3.1 网络模拟概览1.3.2 主流网络模拟软件简介1.3.3 主流模拟软件的比较1.4 NS-2的下载与安装1.4.1 NS-2的下载1.4.2 在Linux下的安装1.4.3 在Windows+Cygwin下的安装1.5 NS-2学习之道1.6 NS-2模拟基础1.6.1 NS-2模拟的基本流程1.6.2 NS-2主要构件概览1.6.3 NS-2源码目录结构附录1 NS-2安装常见问题解答(Q&A)附录2 参考资料第2章 Tcl和OTcl2.1 Tcl命令格式2.2 变量2.3 组合和替代2.3.1 命令替代2.3.2 反斜杠替代2.3.3 组合2.3.4 组合和替代的执行顺序2.3.5 组合和替代总结2.4 数学运算2.5 过程2.6 流程控制命令2.7 注释2.8 数组2.9 OTcl附录1 常用公式、命令、方法附录2 参考资料第3章 NS-2基础3.1 NS-2的离散事件调度机制3.1.1 Simulator类3.1.2 NS-2的事件和事件调度器3.1.3 本节相关的NS命令3.2 节点(node)3.2.1 节点的创建和结构3.2.2 节点的配置3.2.3 与节点相关的命令3.3 链路(Link)3.3.1 链路的创建及结构3.3.2 双向链路的创建及结构3.3.3 与本节相关的NS命令3.3.4 网络拓扑结构的构建3.4 代理(Agent)3.4.1 Agent类3.4.2 UDP代理3.4.3 TCP代理3.4.4 其他协议Agent3.4.5 与Agent相关的命令3.5 应用层(Application)3.5.1 应用层概述3.5.2 流量产生器(Trafflc generators)3.5.3 应用模拟器(Simulated application)3.5.4 在examplel中添加代理和应用程序3.6 数据的记录与动画演示3.6.1 Trace的使用3.6.2 Trace文件格式3.6.3 Monitor的使用3.6.4 动画演示3.6.5 与本节相关的命令3.7 数据分析3.7.1 使用gawk分析Trace文件3.7.2 图形绘制工具3.8 无线网络的模拟3.8.1 无线网络概述3.8.2 移动节点3.8.3 无线网络的路由代理3.8.4 无线网络的能量模型和无线传播模型3.8.5 无线Trace3.8.6 与本节相关的NS命令附录1 简单有线网络实例example1.tcl完整代码附录2 简单无线网络实例example2.tcl完整代码附录3 常见问题解答(Q&A)附录4 参考资料第4章 NS-2网络教学应用案例4.1 TCP/IP基础与NS-2模拟4.1.1 TCP基础回顾4.1.2 TCP的NS-2建模与教学演示4.2 LAN基础与NS-2模拟4.2.1 LAN基础回顾4.2.2 LAN的NS-2模拟4.3 路由基础与NS-2模拟4.3.1 路由简介4.3.2 路由的NS-2模拟4.4 无线网络与NS-2模拟4.4.1 无线网络概述4.4.2 无线网络的NS-2模拟4.5 队列管理与NS-2模拟4.5.1 队列管理算法简介4.5.2 队列管理与NS-2模拟4.6 IP QoS基础与NS-2模拟4.6.1 IP QOS技术与方案4.6.2 IP QoS的NS-2模拟附录1 本章实例索引表附录2 NS-2网络教学参考大纲附录3 如何在PowerPoint中使用Nam附录4 资源列表与参考资料第5章 TclCL机制5.1 TclCL5.2 OTcl和C++的对象通信5.2.1 创建C++对象5.2.2 访问C++对象的属性5.2.3 调用C++对象的方法5.3 向NS-2中添加ping协议附录1 Ping.h头文件源码附录2 参考资料第6章 NS-2核心组件分析6.1 离散时间模拟机制6.2 分类器(classifier)6.3 定时器(Timer)6.4 分组格式6.4.1 特定分组头地址获取6.4.2 分组(Packet)及相关类6.5 代理(Agent)6.5.1 Connector类定义6.5.2 Agent类定义6.5.3 UDP协议Agent分析6.5.4 TCP协议Agent分析6.6 应用层(Application)6.6.1 流量发生器(TrafficGenerator类)6.6.2 应用模拟器(Telnet)附录1 参考资料第7章 NS-2在科研中的运用7.1 端到端拥塞控制研究7.1.1 问题描述7.1.2 公平性问题7.1.3 拥塞崩溃7.2 一种新的MANET单播协议在NS-2中的实现7.2.1 概述7.2.2 创建新的分组类型7.2.3 创建路由代理7.2.4 创建路由表7.2.5 代码集成附录1 参考资料

编辑推荐

  《NS-2网络模拟基础与应用》深入浅出,实例丰富,可作为从事网络通信技术模拟研究的开发人员的参考用书,以及高等院校网络相关专业本科生、研究生的教材。

图书封面


 NS-2网络模拟基础与应用下载



发布书评

 
 


精彩短评 (总计3条)

  •     貌似少了gawk,gnuplot的介绍,不过入门NS2已为不错。
  •     相对于国内其他NS2的书籍,最适合用来入门的一本,没有之一。
  •     一般吧。不是很清楚。
 

中考,文化人类学,图书馆学档案学,校园,中考,科幻,德语,研究生/本专科图书,。 图书零零三 

图书零零三 @ 2019