没有合适的资源?快使用搜索试试~ 我知道了~
首页NS2在windows和Linux下的安装及基础教程
资源详情
资源评论
资源推荐
浙江工业大学
软件学院
刘世华
2006年12月14日
第一章 初识 NS2
- 1 -
1. 初识 NS2 ..................................................................................................................................2
1.1. NS2 是什么?.................................................................................................................2
1.2. NS2 溯源与展望...........................................................................................................2
1.3. 网络仿真与网络仿真软件...........................................................................................3
1.3.1. 网络仿真概览...................................................................................................3
1.3.2. 主流网络仿真软件简介...................................................................................4
1.3.3. 主流仿真软件的比较.......................................................................................7
1.4. 从哪里入手?—下载与安装.........................................................................................8
1.4.1. NS2 的下载.......................................................................................................8
1.4.2. 在 Linux 下的安装 ...........................................................................................9
1.4.3. 在 Windows+Cygwin 下的安装 ...................................................................12
1.5. NS2 学习之道.............................................................................................................15
1.6. NS2 仿真基础.............................................................................................................16
1.6.1. NS2 仿真的基本流程.....................................................................................16
1.6.2. NS2 主要构件概览.........................................................................................17
1.6.3. NS2 源码目录结构.........................................................................................18
附录一、常见问题解答(Q&A)...........................................................................................19
1、 NS2 安装的前提条件或要求是什么?.............................................................19
2、 NS2 支持的平台有哪些?.................................................................................19
3、 我的 NS2 安装出错,怎么回事?....................................................................19
4、 我在 Cygwin 下面老是安装不成功,怎么回事? ..........................................20
5、 我在 Cygwin 下运行测试脚本,Nam 图形界面为什么没出来?..................20
6、 NS2 安装错误,这本书没有提到,我该从哪里获得帮助? .........................20
附录二、资源列表与参考文献.............................................................................................20
浙江工业大学
软件学院
刘世华
2006年12月14日
第一章 初识 NS2
- 2 -
1. 初识 NS2
1.1. NS2 是什么?
NS 是 Network Simulator 的英文缩写,字面翻译即为网络模拟器,又称网络仿真器。
NS2 则是网络仿真器的第 2 版。
NS2 是一款开放源代码的网络仿真软件,最初由 UC Berkeley 开发而成。他最初为了研
究大规模网络以及当前和未来的网络协议交互行为而开发。它为有线和无线网络上的 TCP、
路由和多播等协议的仿真提供了强有力的支持。NS2 是一个开源项目,所有源代码都开
放,任何人可以获得、使用和修改其源代码。正因为此,世界各地的研究人员每天都在扩
展和更新它的功能,为其添加新的协议支持和功能模块。它也是目前网络研究领域应用最
广泛的网络仿真软件之一。
NS2(Network Simulator, version 2)是一种面向对象的网络仿真器,它本质上是一个离
散事件模拟器,其本身有一个虚拟时钟,所有的仿真都由离散事件驱动的。目前 NS2 可以
用于仿真各种不同的通信网络。它功能强大,模块丰富,已经实现的一些仿真模块有:网络
传输协议,如 TCP 和 UDP;业务源流量产生器,如 FTP、Telnet、Web CBR 和 VBR;路由
队列管理机制,如 Droptai、RED 和 CBQ;路由算法,如 Dijkstra,以及无线网络的 WLAN,
Ad hoc 路由,移动 IP 和卫星通信网络等。NS2 也为进行局域网的仿真而实现了多播以及一
些 MAC 子层协议。
NS2 使用了被称为分裂对象模型的开发机制,采用 C++和 Otcl 两种开发语言进行开发。
他们之间采用 TclCL 进行自动连接和映射。考虑效率和操作便利的原因,NS 将数据通道和
控制通道的实现相分离。为了减少分组和事件的处理时间,事件调度器和数据通道上的基
本网络组件对象都使用 C++编写,这些对象通过 TclCL 映射对 Otcl 解释器可见。这样,仿
真用户只要通过简单易用的 Tcl/OTcl 脚本编写出仿真代码,对仿真拓扑、节点、链路等各种
部件和参数进行方便快速的配置。NS 可以说是 Otcl 的脚本解释器,它包含仿真事件调度
器、网络组件对象库等。事件调度器控制仿真的进程,在适当时间激活事件队列中的当前
事件,并执行该事件。网络组件模拟网络设备或节点的通信,他们通过制定仿真场景和仿真
进程,交换特定的分组来模拟真实网络情况,并将执行情况记录到日志文件(称为 Trace 文
件)中,以提供给仿真用户进行分析解读,获取仿真结果。NS 采用这种分裂模型即提高了
仿真效率,加快了仿真速度,又提供了仿真配置的灵活性和操作的简便性。
在此,我们不必深究其实现机理,
在以后的仿真工作中,我们自然而然会用到这些技术,
到时理解起来会非常简单自然。关于 NS2 的更多特性,我们将会在后续的章节中一步步展
开。
1.2. NS2 溯源与展望
NS 一般被认为起源于 1989 年由 UC Berkeley 开发的 REAL 网络仿真器(REAL network
simulator)。其 实 REAL 网络仿真器是在哥伦比亚大学(
Columbia University)开发的 NEST
网络实验床(Network Simulation Testbed)的基础上改进而来。REAL 网络仿真器主要用于
仿真各种 IP 网络。该软件的开发最初是针对基于 UNIX 系统下的网络设计和仿真而进行
的。其主要发行版本有 REAL4.0,4.5 和 5.0,(现在还可以在以下页面浏览其相关信息并下载
源码包: http://www.cs.cornell.edu/home/skeshav/real/overview.html
);1995 年,NS 的开发获
浙江工业大学
软件学院
刘世华
2006年12月14日
第一章 初识 NS2
- 3 -
得美国军方 DARPA VINT(Virtual InterNetwork Testbed)项目的资助,由 USC/ISI, Xerox
PARC, LBNL, 和 UC Berkeley 合作开发。目前,NS- 2 的开发还得到了 DARPA
SAMAN
(Simulation Augmented by Measurement and Analysis for Network) 项目和美国国家科
学基金 NSF CONSER
(Collaborative Simulation for Education and Research)项目的资助。1995
年 7 月 31 推出 v1.0a1 版本,此后一直不断有人改进和更新,1996 年 11 月 6 日即推出了 NS-2
的第一个版本:ns-2.0a1
版本。2003 年 2 月 26 日发布 ns-2.1b10 版本后,NS-2 改变了主要
版本标注方法,ns-2.1b10 作为 NS-2.26。目前最新正式发布版本为 2006 年 9 月 26 日发布的
NS-2.30。其具体版本更新历史和主要特性改进及其贡献者信息在官方网址详细列出:
http://www.isi.edu/nsnam/ns/CHANGES.html
。
由于 NS-2 作为一个开源项目开发,因此,世界上的其他组织和个人也对 NS 的发展做
出了贡献。NS-2 也从他们哪里吸收了很多实用的功能和模块。从 1999 到 2001,AT &T
公司
资助的 AT &T 互联网研究中心 ACIRI(隶属加州大学 Berkeley 分校的国际计算机科学系
ICSI)参与了 NS 的开发。此外,NS-2 还吸收了 UCB 的 Daedelus 工程和 CMU 的 Monarch
工程以及 Sun Microsystems 公司开发的无线代码。
今年 6 月(2006 年 6 月 1 日),NS 开发组织正式公布了下一代 NS 的开发计划,该开
发计划预计通过四年的时间开发出 NS 的下一代版本 NS-3,此计划也得到了美国国家科学
基金 NSF CISE CRI 项目的部分支持,相信新一代的 NS-3 会给我们带来全新的体验,让我
们共同期待吧。
1.3. 网络仿真与网络仿真软件
1.3.1. 网络仿真概览
近年来,网络通信技术日新月异,对网络技术的研究也同样炙手可热,这也促使人们不
断提高研究水平,更新研究技术,增加研究手段。目前网络通信的研究一般可分为一下三种
方式:
1、 理论研究:在理论和协议层面上对网络通信技术及系统进行分析研究,如采用数学建模、
协议分析、状态机、集合论以及概率统计等多种理论分析手段和方法对通信网络及其算
法、协议、网络性能等各个方面进行研究。
2、 网络仿真:即计算机模拟仿真方法,本书对模拟与仿真不做区分,二者通指通过计算机
软件模拟真实网络进行试验研究的方法。也称为虚拟网络实验床(Virtual Network
Testbed)。
3、 试验网方法:采用建立实验室测试网络、网络试验床(Network Testbed)和小规模商用
试验网络的方式对网络进行实战检验,如当前第三代移动通信网,各大网络设备提供商
和运营商就在不同城市建有不同规模的试验网络,并进行一定量的测试放号。使广大用
户参与到网络的测试中,也使得网络设备和系统收到实际应用环境的检验。
三种方法各有利弊,相辅相成并各有侧重点。理论研究适用于早期研究与设计阶段,对
新算法和新技术进行理论准备和验证,除了人力和知识,几乎不需要什么额外成本;试验网
方法是网络和系统在投入实际适用前的一次系统的演练,能够发现网络设计与用户需求之间
的相合度以及检验网络实际使用的效用和性能。该阶段建设成本很高,要求技术和设备开发
相对成熟,网络系统基本成型,一般主要是针对业务和系统稳定性和服务性能的检验;而网
络仿真阶段可以说是理论方法和试验网方法的中间阶段,它可以对新协议进行初步实现和验
证,并有利于及时调整和改进,这个阶段,由于采用计算机软件进行仿真,使得很多研究人
浙江工业大学
软件学院
刘世华
2006年12月14日
第一章 初识 NS2
- 4 -
员能够研究大规模网络和学习新协议新算法的设计和实现。并且能够在实用前对其进行检验
和改进,此外,他还可以在各种新老系统和算法之间进行比较而不必话费巨资去建立多个实
际系统。因此,网络仿真是网络通信研究中非常重要的一种方法。
网络仿真的优点主要体现在以下几个方面:
1、 成本低:与试验网方法比较而言,网络设备、构件和系统均通过计算机软件模拟实
现,实现成本低廉。
2、 灵活可靠、可重构:由于采用软件实现,他的实用、配置和改变更加灵活可靠,对
大规模网络也可以轻松进行重新构建。
3、 避重就轻:可以通过软件的方法,有选择性的选择在研究中感兴趣的方面,而把其
他一些不相干的方面忽略,这样更加有利于对感兴趣点的深入研究,提高研究效率。
4、 提供研究大规模网络的机会:大规模网络不一定每人都有机会参与建设和研究,而
网络仿真平台给了无这样条件的科研人员一个研究大规模网络的机会。
5、 易于比较:由于可以通过软件配置轻松建立、重构各种网络模型,实现各种不同的
协议和算法,这使得研究人员能够轻松的比较这些不同模型、协议和算法之间的性
能等各方面的优劣。
当然,由于是通过软件进行模拟仿真,它毕竟是虚拟网络,与真实的网络环境还是有一
定的差异性,因此,仿真方法也存在一些天生的不足之处:
1、 无法完全重现真实网络环境,使得仿真网络可能会忽略一些重要的网络细节;
2、 在对协议、算法和网络系统进行仿真之前,必须通过软件编程对其进行软件模块的
实现,这增加了额外的工作量;
3、 网络仿真所得的结果并不一定与真实网络环境下的结果一致,因此,在投入实际应
用之前,还需要多方面的验证和通过测试网和真实网络的检验。
总而言之,网络仿真是当前网络通信研究中的重要技术手段之一,在网络通信的建设开
发过程中起着不可替代的重要作用。大部分网络通信的技术研究也都必须经过网络仿真研究
这么一个重要环节。学术界对网络通信的研究更加离不开网络仿真。
1.3.2. 主流网络仿真软件简介
俗话说,“工欲善其事必先利其器”,为了方便网络研究人员的研究工作,一款好的网
络仿真软件是必不可少的。网络仿真软件必须提供简单易用的网络仿真环境的建立手段,必
须实现常用的已经存在的绝大部分网络协议、算法和应用模块,必须能够方便的进行配置和
扩展,利于添加新的协议和算法。
当前有许多优秀的网络仿真软件,其中应用比较广泛的主流仿真软件有 OPNET、
NS2、MATLAB、SPW、QualNet 等,这为网络研究人员提供了很好的网络仿真平台。
在此,我们对主流网络仿真软件进行简单介绍,并在下一节对他们进行一个简单的比较。
(1) OPNET
OPNET 是 Optimized Performance Network Engineering Tool 的简称,最早是由麻省理工
学院 LIDS 实验室受美国军方委拖开发,可模拟 LAN, WAN, ISDN及卫星通信网等各种网络。
可以模拟现有的绝大部分网络和协议如:ATM, Frame Relay, FDDI, Ethernet, Token Ring,
TCP/UDP/IP, HTTP 等等。我们所指的 OPNET 网络仿真软件一般是指 OPNET Modeler,目
前作为商业软件由 OPNET Technology 公司进行开发和维护,是其四个系列网络仿真软件产
品的其中之一,它主要面向的用户为网络设计专业人士,能够帮助客户进行网络结构、设
备和应用的设计、建设、分析和管理。
剩余19页未读,继续阅读
xiyouyuan
- 粉丝: 6
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2