文档章节

NS2典型例子简单分析

雷霄骅
 雷霄骅
发布于 2014/08/16 13:40
字数 462
阅读 32
收藏 0

“2-1-1”丢包分析

打开Cygwin.terminal,输入 startxwin进入Cygwinxwindow界面,输入source bashrc进行环境变量的配置;输入cd test切换目录到test文件夹,输入ns example2.tcl进行仿真。

创建四个节点(nodes)0123,设置两个发送端01,节点2作为转发,节点3作为接受。实验中即有两条链路传输:023123,为了以示区分,两条链路传输过程中设为不同的颜色。对应代码如下:

#创建四个节点(nodes)      
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
#节点的布局
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
#给data flows定义不同的标记颜色(根据fid)
$ns color 1 Blue
$ns color 2 Red


两条链路设置不同的起始时间,便于分别观察链路的传输情况,对应代码如下:

#为CBR agents 设置任务计划(在第x秒,开始/结束)
$ns at 0.5 "$cbr0 start"
$ns at 1.0 "$cbr1 start"
$ns at 4.0 "$cbr1 stop"
$ns at 4.5 "$cbr0 stop"

因此,在0.5秒的时候可以见到0—2—3开始运行,此时流量从节点0经过节点2转发由节点3接受,如图:

在1.0秒的时候1—2—3开始运行,此时节点1开始传输经节点2由节点3转发,节点3的的线路开始出现排队现象,如图:

在1.18秒开始,此时节点2到节点3的链路出现拥塞,开始进行丢包。如图:

各带宽、时延就丢包方式等信息设置如下:

#为节点(nodes)创建连接,并设置属性(带宽,时延,队列丢包方式)
$ns duplex-link $n0 $n2 1Mb 10ms DropTail
$ns duplex-link $n1 $n2 1Mb 10ms DropTail
$ns duplex-link $n3 $n2 1Mb 10ms SFQ


 

本文转载自:http://blog.csdn.net/leixiaohua1020/article/details/12233845

雷霄骅
粉丝 211
博文 419
码字总数 2129
作品 4
朝阳
程序员
私信 提问
安装NS2和使用GT-ITM一点注意事项

环境:Fedora20 ns-allinone-2.35 我习惯经常更新系统,glibc gcc make g++的版本懒得去查了。 1、确保NS2依赖的X环境的各种头文件都存在: sudo yum groupinstall "X Software Development" ......

garbageaa
2014/04/15
32
0
spring web services,为什么客户端输出的xml是不全的?

String message = "\n" + " 10\n" + ""; StreamSource source = new StreamSource(new StringReader(message)); StreamResult result = new StreamResult(System.out); getWebServiceTemplat......

melnnyy
2013/08/23
91
0
NS-2 “validate overall report: some tests failed:”

系统是Ubuntu 12.04 LTS x64。安装完NS-2 2.35。执行validate,但是“validate overall report: some tests failed:”。之前在笔记本上也有这样的情况,但是我没有在意,因为simple.tcl这个例...

chuqixiaozhu
2014/04/07
142
0
有没有办法在CXF的拦截器里获得调用方法的名称及参数值

AbstractPhaseInterceptor实现类的handleMessage方法里,传入的Message参数,转化InputStream再转化为字符串打印出来后可以看到是包含了关于方法名及方法参数值的信息的,但如何将其取出来呢...

量子玫瑰
2014/12/05
4.1K
3
调用webservice出错,不知道原因

弄了个suds调用webservice的代码.报错 Suds ( https://fedorahosted.org/suds/ ) version: 0.4 GA build: R699-20100913 Service ( messagecentertarget ) tns="http://loushang.ws" Prefix......

小平123
2014/10/23
535
0

没有更多内容

加载失败,请刷新页面

加载更多

读书笔记:深入理解ES6 (五)

第五章 解构:使数据访问更便捷 第1节 为什么使用解构功能?   在ES5中,开发者们从对象、数组中获取特定数据并赋值给变量,编写了很多看起来同质化的代码。例如: 1 let options = {2 ...

张森ZS
30分钟前
24
0
CentOS7 yum方式安装MySQL5.7

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 1 下载并安装MySQL官方的 Yum Repository [root@localho...

roockee
39分钟前
15
0
Allegro三种自定义设置快捷键的方法

Allegro自定义设置快捷键的三种方法: 1、在Allegro PCB editor 命令窗口直接定义 2、通过修改用户变量env文件来设置快捷键 3、定义笔画为快捷键 1、在Allegro PCB editor 命令窗口直接定义 ...

demyar
43分钟前
18
0
如何做一张能让人眼前一亮的大屏?

作为在职场驰骋的社会人,提到数据可视化大家应该都不陌生了。数据可视化的作用也不用我多说,主要是利用图形化手段,更清晰直观地将数据展示。多层次、交互式的可视化分析能够方便决策者理解...

朕想上头条
44分钟前
9
0
TL138/1808/6748-EthEVM开发板硬件CPU、FLASH、RAM

TL138/1808/6748-EthEVM是广州创龙基于SOM-TL138/1808/6748核心板开发的一款开发板,具有三个网络接口。由于SOM-TL138/1808/6748核心板管脚兼容,所以此三个核心板共用同一个底板。开发板采用...

Tronlong创龙
48分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部