文档库 最新最全的文档下载
当前位置:文档库 › NS2简单无线网络模拟实验报告

NS2简单无线网络模拟实验报告

NS2简单无线网络模拟实验报告
NS2简单无线网络模拟实验报告

HUNAN CITY UNIVERSITY

NS2与网络模拟实验报告

实验题目:简单无线网络模拟 __

专业: ____

班级学号_____ _

2015年 10月 27日

1.实验目的

?熟悉NS2网络模拟的基本操作流程

?练习TCL脚本代码的编写

?理解基本的无线网络节点的配置过程、以及数据流的发生

2.实验原理

NS2是指 Network Simulator version 2,NS(Network Simulator)是一种针对网络技术的源代码公开的、免费的软件模拟平台,研究人员使用它可以很容易的进行网络技术的开发,而且发展到今天,它所包含的模块几乎涉及到了网络技术的所有方面。所以,NS成了目前学术界广泛使用的一种网络模拟软件。此外,NS也可作为一种辅助教学的工具,已被广泛应用在了网络技术的教学方面。因此,目前在学术界和教育界,有大量的人正在使用NS。 NS2是一种面向对象的网络仿真器,本质上是一个离散事件模拟器,由UC Berkeley开发而成。它本身有一个虚拟时钟,所有的仿真都由离散事件驱动的。目前NS2可以用于仿真各种不同的IP网,已经实现的一些仿真有网络传输协议,比如TCP和UDP, 流量产生器,比如FTP, Telnet, Web CBR和VBR;路由队列管理机制,比如Droptail, RED和CBQ;路由算法,比如AODV、DSDV、DSR等无线路由协议。NS2也为进行局域网的仿真而实现了多播以及一些MAC 子层协议。

3.实验内容和步骤

?打开虚拟机播放器VMware Player

?打开播放Ubuntu虚拟机镜像(Ubuntu.vmx)

?登录系统后,打开控制台Terminal输入下列命令:

?cd Desktop/EXP/

?ns 6-simple-wireless.tcl

?模拟运行完毕后,动画演示器NAM自动打开,播放动画,观察模拟过程。

4.实验结论

?截取NAM动画演示结果。

?

?详细解释TCL脚本文件中与无线网络相关的代码。

附源代码:

#=========================================================================== set val(chan) Channel/WirelessChannel ;# channel type

set val(prop) Propagation/TwoRayGround ;# radio-propagation model

set val(netif) Phy/WirelessPhy ;# network interface type

set val(mac) Mac/802_11 ;# MAC type

set val(ifq) Queue/DropTail/PriQueue ;# interface queue type

set val(ll) LL ;# link layer type

set val(ant) Antenna/OmniAntenna ;# antenna model

set val(ifqlen) 50 ;# max packet in ifq

set val(nn) 2 ;# number of mobilenodes

set val(rp) AODV ;# routing protocol

set val(x) 100 ;# X dimension of the topography

set val(y) 100 ;# Y dimension of the topography

#============================================================================ set ns [new Simulator]

set tracefd [open wireless.tr w]

$ns trace-all $tracefd

set namtracefd [open wireless.nam w]

#设置无线坐标范围

$ns namtrace-all-wireless $namtracefd $val(x) $val(y)

proc finish {} {

global ns tracefd namtracefd

$ns flush-trace

close $tracefd

close $namtracefd

exec nam wireless.nam &

exit 0

}

set topo [new Topography]

$topo load_flatgrid $val(x) $val(y)

create-god $val(nn)

$ns node-config -adhocRouting $val(rp) \

-llType $val(ll) \

-macType $val(mac) \

-ifqType $val(ifq) \

-ifqLen $val(ifqlen) \

-antType $val(ant) \

-propType $val(prop) \

-phyType $val(netif) \

-channelType $val(chan) \

-topoInstance $topo \

-agentTrace ON \

-routerTrace OFF \

-macTrace OFF

for {set i 0} {$i < $val(nn) } {incr i} {

set node_($i) [$ns node]

$node_($i) random-motion 0

}

#设置节点 0 与节点 1 的初始坐标

$node_(0) set X_ 5.0

$node_(0) set Y_ 2.0

$node_(0) set Z_ 0.0

$node_(1) set X_ 39.0

$node_(1) set Y_ 38.0

$node_(1) set Z_ 0.0

#在50.0s时节点1 向坐标(25.0,20.0)以速度2.0/s移动$ns at 50.0 "$node_(1) setdest 25.0 20.0 2.0"

#在10.0s时节点0 向坐标(20.0,18.0)以速度1.0/s移动$ns at 10.0 "$node_(0) setdest 20.0 18.0 1.0"

#在100.0s时节点1 向坐标(49.0,48.0)以速度2.0/s移动$ns at 100.0 "$node_(1) setdest 49.0 48.0 2.0"

#创建TCP协议节点和 SINK 协议节点

set tcp [new Agent/TCP]

$tcp set class_ 2

set sink [new Agent/TCPSink]

$ns attach-agent $node_(0) $tcp

$ns attach-agent $node_(1) $sink

$ns connect $tcp $sink

set ftp [new Application/FTP]

$ftp attach-agent $tcp

$ns at 10.0 "$ftp start"

#在150.0s时重新初始化节点node_0 和节点 node_1 的坐标位置

for {set i 0} {$i < $val(nn) } {incr i} {

$ns at 150.0 "$node_($i) reset";

}

$ns at 150.0 "finish"

$ns run

实验心得

通过这次实验理解基本的无线网络节点的配置过程、以及数据流的发生。联系了课堂知识,学到了更多东西。

武汉大学计算机网络实验报告 (2)

武汉大学教学实验报告 动力与机械学院能源动力系统及自动化专业2013 年11 月10 日

一、实验操作过程 1.在仿真软件packet tracer上按照实验的要求选择无线路由器,一般路由器和PC机构建一个无线局域网,局域网的网络拓扑图如下: 2.按照实验指导书上的表9.1(参数配置表)对路由器,DNS服务器,WWW服务器和PC机进行相关参数的配置: 服务器配置信息(子网掩码均为255.255.255.0) 主机名IP地址默认网关 DNS 202.2.2.1 202.2.2.2 WWW 202.3.3.1 202.3.3.3 路由器配置信息(子网掩码均为255.255.255.0) 主机名型号IP地址默认网关时钟频率ISP 2620XM e1/0:202.2.2.2 e1/1:202.3.3.3 s0/0:202.1.1.2 64000 Router2(Server) 2620XM f0/0:192.168.1.1 s0/0:202.1.1.1 Wireless Router Linksys WRT300N 192.168.1.2 192.168.1.1 202.2.2.1 备注:PC机的IP地址将通过无线路由器的设置自动分配 2.1 对router0(sever)断的配置: 将下列程序代码输到router0中的IOS命令行中并执行,对router0路由器进行设置。Router>en Router#conf t

2.3 WWW服务器的相关配置 对www服务器进行与DNS服务器相似的配置,包括它的IP地址,子网掩码,网关等,具体的相关配置图见下图: WWW服务器的相关配置图

NS2网络仿真实验

NS2网络仿真实验 实验目的: 通过修改NS2的TCP协议代码,来简单的观察窗口阈值的不同算法对网络资源利用率的影响。 实验步骤: 1. 实验环境搭建 (1)系统环境: 虚拟机:virtrulbox; 操作系统:linux/ubuntu 10.04 工作目录:/home/wangtao/workspace/ (2)NS2安装与使用: 下载NS2软件包到工作目录, 地址https://www.wendangku.net/doc/d75211807.html,/sourceforge/nsnam/ns-allinone-2.33.tar.gz 解压(注:以下斜体字为命令行命令) tar -zxf ns-allinone-2.33.tar.gz cd ns-allinone-2.33 ./install (中间的两个bug已经修改,此处忽略) 耐心等待安装完毕后将出现如下画面说明安装正常: 接下来是系统环境配置,重新进入终端 cd ~ vim .bashrc(如果没有安装vim最好安装一下,sudo apt-get install vim) 在打开的.bashrc的末尾加上以下内容:

PATH="$PATH:/home/wangtao/worksapce/ns-allinone-2.33/bin:/home/wangtao/worksapce/ns-a llinone-2.33/tcl8.4.18/unix" export LD_LIBRARY_PATH="$LD_LIBRARY_PAHT:/home/wangtao/worksapce/ns-allinone-2.33/otcl-1.13,/ home/wangtao/worksapce/ns-allinone-2.33/lib" export TCL_LIBRARY="$TCL_LIBRARY:/home/wangtao/worksapce/ns-allinone-2.33/tcl8.4.18/library" 保存并退出,重新进入终端 安装xgraph sudo apt-get install xgraph 运行一个简单的例子,以证明环境安装完成: ns /home/wangtao/workspace/ ns-allinone-2.33/tcl/ex/simple.tcl 出现如下图说明成功: 2.修改https://www.wendangku.net/doc/d75211807.html,代码 vim /home/wangtao/workspace/ns-allinone-2.33/tcp/https://www.wendangku.net/doc/d75211807.html, (将窗口阈值一半变为的窗口阈值1/3——wt_https://www.wendangku.net/doc/d75211807.html,) 第一处: …… if (cwnd_ < ssthresh_) slowstart = 1; if (precision_reduce_) { //halfwin = windowd() / 2; //wangtao halfwin = windowd() / 3;

NS2网络模拟

网络协议分析与仿真课程设计报告 网络模拟 一、课程设计目的 掌握网络模拟工具NS2的使用,学习基本的网络模拟方法。 二、课程设计内容 协议模拟 工具:NS2,awk,shell,perl等; 要求:掌握NS2网络模拟的基本流程; 内容:NS2网络模拟基本流程 编写TCL脚本,搭建如下图所示的一个网络,共6个节点,其中2、3节点用做ftp服务器和客户端,4、5节点用做cbr流量的源和目的,而0、1节点用做转发设备。各节点间的链路属性见图。 cbr null packet size = 1kbytes, rate=1Mbps 模拟时间设为13秒钟,在0.1秒开始产生cbr流量,在1.0秒开发发送发ftp流量; 8.0秒ftp流量结束,12.0秒cbr流量结束。编写脚本(可用shell,awk,或perl等) 分析模拟日志文件,统计每0.5s内0、1节点间链路通过的分组数以及字节数。 三、设计与实现过程 1.仿真脚本代码与详细注解 #Create a simulator object set ns [new Simulator] #Define different colors for data flows (for NAM) $ns color 1 Blue $ns color 2 Red #Open the NAM trace file set nf [open out.nam w] $ns namtrace-all $nf #Open the Trace file

set tf [open out.tr w] $ns trace-all $tf #Define a 'finish' procedure proc finish {} { global ns nf tf $ns flush-trace close $nf close $tf exec nam out.nam & exit 0 } #Create four nodes set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] #Create links between the nodes $ns duplex-link $n0 $n2 1.5Mb 10ms DropTail $ns duplex-link $n0 $n4 1.5Mb 10ms DropTail $ns duplex-link $n0 $n1 2Mb 20ms DropTail $ns duplex-link $n1 $n3 1.5Mb 10ms DropTail $ns duplex-link $n1 $n5 1.5Mb 10ms DropTail #Set Queue Size of link (n2-n3) to 10 $ns queue-limit $n0 $n1 10 #Setup a TCP connection set tcp [new Agent/TCP] $ns attach-agent $n2 $tcp set sink [new Agent/TCPSink] $ns attach-agent $n3 $sink $ns connect $tcp $sink $tcp set fid_ 1 #Setup a UDP connection set udp [new Agent/UDP] $ns attach-agent $n4 $udp set null [new Agent/Null] $ns attach-agent $n5 $null

无线网络组建实训报告

实训报告 评 语 教师签字日期成绩学时 姓名学号班级组别 项目编号项目名称无线网络组建 课程名称《无线局域网技术实训》教材《无线网络组建项目教程》1. 实训项目说明 项目背景 在该创新型企业中,由于需要使用笔记本电脑等便携式设备与台式计算机进行 联合调试,需要通过无线网络与有线接入的台式计算机进行互联。而办公场地面积 较大有多个房间,单一无线路由受墙等客观因素影响,信号强度不够,无法完全覆 盖整个办公场地。 该企业正在开发一个手机游戏,需要通过手机与服务器进行并发测试,为了避 免测试过程中对办公网络造成影响,需要独立的无线环境进行测试,请给出解决方 案。 后期还需要进行游戏推广,需要在公共区域提供免费WIFI,但是需要浏览游戏推广的页面后再能上网,类似高铁站、机场等区域的免费WIFI,请给出解决方案。 企业管理者为了加强对来访者的WIFI接入管理,希望能对接入的WIFI进行上网限制,最好能实现独立的访客网络,不允许接入员工办公网络,避免公司重要信 息泄漏。 项目需求分析一、背景 在该创新型企业中,由于需要使用笔记本电脑等便携式设备与台式计算机进行联合 调试,需要通过无线网络与有线接入的台式计算机进行互联。而办公场地面积较大 有多个房间,单一无线路由受墙等客观因素影响,信号强度不够,无法完全覆盖整 个办公场地。 该企业正在开发一个手机游戏,需要通过手机与服务器进行并发测试,为了避免测 试过程中对办公网络造成影响,需要独立的无线环境进行测试,请给出解决方案。 后期还需要进行游戏推广,需要在公共区域提供免费WIFI,但是需要浏览游戏推广

的页面后再能上网,类似高铁站、机场等区域的免费WIFI,请给出解决方案。 企业管理者为了加强对来访者的WIFI接入管理,希望能对接入的WIFI进行上网限制,最好能实现独立的访客网络,不允许接入员工办公网络,避免公司重要信息泄 漏。 二、无线网络设计原则 1、安全稳定: 众所周知,无线网络的性能要受到障碍物、传输距离等因素的影响,而企业对于网 络的最基本要求就是稳定。另外,无线网络具有很强的开放性,任何一台拥有无线 网卡的PC就可以登录到企业的无线网络,这对于企业来说是一种威胁,为此,企业 无线网络必须要安全。 2、覆盖围: 由于无线网络的覆盖围有限,组建企业无线网络时,必须考虑到无线网络的覆盖围, 让无线网络信号覆盖企业的每一个地方,实现无缝覆盖。 3、可扩充性: 为了企业发展的需要,组建企业无线网络时,可扩充性也是企业的一个需求。 4、可管理性: 设备和信息的集中管理可以快速有效地帮助管理人员发现和解决问题,同时也能使 各种网络资源的分配更合理,因此网络的建设一定让网管人员方便管理。 三、接入速率需求分析 局域网接口速率: IEEE 802.11──无线局域网 802.11a带宽最高可达54Mbps,使用的是开放的5GB频段 802.11b带宽最高可达11Mbps,使用的是开放的 2.4GB频段 802.11g带宽最高可达54Mbps,使用的是开放的 2.4GB频段 802.11n带宽最高可达300Mbps,使用的是开放的 2.4GB或者5GB频段 四、设备选型 1传输介质的选择 : 有线传输介质是主要有双绞线、同轴电缆和光纤。双绞线和同轴电缆传输电信号, 光纤传输光信号。 双绞线:由两条互相绝缘的铜线组成,其典型直径为1mm。这两条铜线拧在一起,就可以减少邻近线对电气的干扰。双绞线即能用于传输模拟信号,也能用于传输数 字信号,其带宽决定于铜线的直径和传输距离。但是许多情况下,几公里围的传输 速率可以达到几Mbit/s.由于其性能较好且价格便宜,双绞线得到广泛应用,双绞线可以分为非屏蔽双绞线和屏蔽双绞线两种,屏蔽双绞线性能优于非屏蔽双绞线。双

无线网络技术 全部实验报告 含选作实验

本科实验报告 课程名称:无线网络应用 姓名: 学院: 系: 专业: 学号: 指导教师:张昱,史笑兴,李惠忠 2014年11月25日

实验报告 课程名称: 无线网络应用 指导老师: 张昱,史笑兴,李惠忠 成绩:________________ 实验名称:虚拟服务器、防火墙等无线网络安全性配置实验 实验类型: 设计 同组学生姓名: __ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤(必填) 五、实验结果与分析(必填) 六、讨论、心得(必填) 一、实验目的和要求 1. 虚拟服务器实验: 了解虚拟服务器的原理和应用 熟悉TP-LINK 无线路由器的虚拟服务器的设置方法 熟悉TP-LINK 无线路由器的WEP 安全模式的设置方法 2. IP 过滤及DMZ 实验: 了解防火墙IP 过滤的原理和应用 熟悉TP-LINK 无线路由器的DMZ 主机的设置方法 熟悉TP-LINK 无线路由器的WPA-PSK 安全模式和IP 过滤的设置方法 二、实验内容和原理 1.设置内网的Web Server 和FTP Server 为两个虚拟服务器,允许外网的客户机进去访问它们。并且无线路由器采用WEP 安全模式(包括数据加密和身份验证)。 将内网中需要为外网用户提供HTTP 或FTP 等服务的主机的相应服务端口映射到无线路由器的WAN 口,从而实现从外网访问内网。内网中被映射的为外网提供服务的主机就是虚拟服务器。 2.设置内网的PC1为DMZ 主机,允许外网的客户机PC3进去访问PC1上面的Web 及FTP 等所有服务。并且无线路由器采用WPA-PSK 安全模式(包括数据加密和身份验证)。 在集成路由器中,可设置非军事区DMZ 来允许外部网络主机访问内部网络中的服务器。启用非军事区时,外部网络主机可访问内部指定DMZ 服务器上的所有端口。 三、主要仪器设备 无线路由器1台(包括电源变压器1个) 2.直通线1根、PC 机3台 四、操作方法和实验步骤 虚拟服务器实验: 1. 利用网线通过有线方式连接到无线路由器的LAN 口,设置无线路由器的SSID 和频段等无线参数。 2. 进入“无线设置”中的“无线安全设置”选择安全模式为WEP ,然后选择认证类型为“自动”或 “开放模式”,选择WEP 密钥格式为“ASCII 码”,设定为12345,密钥1的密钥类型选为64位。重启无线路由器。 专业: 姓名: 学号: 日期: 2014/11/06 地点: 东四418,419

基于NS2的无线传感器网络软件仿真实验

目录 ●课程设计目的 ●课程设计内容 ●课程设计实验原理 ?WSN路由协议 ?WSN MAC层协议 ?修改的路由协议 ●课程设计小组分工 ●课程设计实验流程 ●课程设计实验结果分析 ●课程设计心得体会 ●课程设计总结 ●参考文献 ●源代码

一、课程设计目的 无线传感器网络是物联网的基本组成部分,是物联网用来感知和识别周围环境的信息生成和采集系统,传感器网络对信息处理来说如同人体的感觉突触一样重要。为了方便感知和部署并提高网络的可扩展性,传感器网络一般采用无线通信方式,从而形成了节点之间可自组织拓扑结构的无线传感器网络。本课程设计的目的综合应用学生所学知识,建立系统和完整的传感器网络概念,理解和巩固无线传感器网络基本理论、原理和方法,掌握无线传感器网络开发的基本技能。 二、课程设计内容 软件仿真实验。 要求使用相关软件仿真一个无线传感器网络,要求如下: ●自行参考相关资料,成功安装NS2(或OPNET也可以); ●利用NS2自带的范例,构建一个100个节点的无线传感器网络, 能够成功运行;最好能有界面显示; ●利用利用NS2自带的范例或其它已有脚本,仿真上述无线传感器 网络一种路由协议(例如一种多播路由协议); ●利用利用NS2自带的范例或其它已有脚本,仿真上述无线传感器 网络采用一种MAC协议; ●修改或自行编写一个简单路由协议或MAC协议,并进行仿真运 行。

三、课程设计实验原理 a)WSN路由协议 传统计算机网络对路由协议要求如下:正确性,健壮性,稳定性,公平性,最优性。除此之外,无线传感器网络对路由协议更注重以下特殊要求:能源有效性,简单性,多路性。无线传感器网络是以数据为中心(Data Centric)进行路由的,不同于传统Ad hoc网络以地址为中心(Address Centric)进行路由的模式。由于传感器最基本任务就是感知、采集数据,无线传感器网络邻近节点间采集的数据必然具有相似性,存在冗余信息,需经数据融合(Data Fusion)处理再进行路由。有研究表明,在分布密度为ρ(x, y)的随机区域,传感器间冗余数据为:η=ζSeρ。直接传输这些未经处理、存在冗余的数据,将会造成网络带宽、节点能源的巨大浪费,导致节点迅速死亡,缩短整个网路的生命周期。 无线传感器网络中的大部分节点不像传统Ad hoc网络中的节点一样快速移动,因此没有必要花费很大的代价频繁地更新路由表信息。常规路由协议通常认为底层的通信信道是双向的,但是在采用无线通信的无线传感器网络环境中,由于发射功率或地理位置等因素的影响,可能存在单向信道。它给常规路由协议带来三个严重的影响:认知单向性、路由单向性和汇点不可达。

网络模拟器NS2中仿真功能的问题分析及改进

第21卷第2期 系 统 仿 真 学 报? V ol. 21 No. 2 2009年1月 Journal of System Simulation Jan., 2009 网络模拟器NS2中仿真功能的问题分析及改进 况晓辉1, 赵 刚1,2, 郭 勇1, 3 (1.北京系统工程研究所, 北京 100101; 2.清华大学计算机科学与技术系, 北京 100084; 3.国防科技大学信息系统与管理学院, 长沙 410073) 摘 要:网络仿真技术为解决大规模网络规划、应用和协议设计面临的挑战提供了新的途径。作为广泛应用的网络模拟器,NS2为建立可扩展的网络仿真环境奠定了重要基础。在描述NS2仿真功能实现的基础上,重点分析了NS2仿真功能存在的不足。针对发现的问题,提出并实现了NS2仿真功能扩展,最后验证了仿真功能扩展的正确性。 关键词:网络仿真;NS2;报文转换;功能扩展 中图分类号:TP393 文献标识码:A 文章编号:1004-731X (2009) 02-0427-05 Improvement of Emulation Function in Network Simulator KUANG Xiao-hui 1, ZHAO Gang 1,2, GUO Yong 1, 3 (1. Beijing Institute of System and Engineering, Beijing 100101, China; 2. Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China; 3. Department of Information System and Management of NUDT, Changsha 410073, China) Abstract: Network emulate technology which enables real hosts and a real network to interact with a virtual network, becomes a very important way to resolve the challenge faced in network plan, application and protocol design. As a famous network simulator, NS2 proposed a foundation to construct network emulate platform. The emulation function of NS2 was described firstly. Based on analysis the problem of emulation function in NS2, the extension of NS2 emulation function was proposed and implemented. The correctness of extension was dominated in the end. Key words: network emulation; NS2; packet reform; function extension 引 言互联网的迅速发展与膨胀对网络的规划、应用和协议的 设计提出了新的挑战。在试验环境中对网络规划、新的应用和协议进行评估是应对上述挑战的有效手段之一[1-3]。当前构建复杂网络试验环境的实现技术主要包括测试床、网络模拟(network simulation )和网络仿真(network emulation )[4]等三种类型。 测试床具有逼真度高的优点,但是造价较高、规模和复杂性有限。网络模拟具有可控性强、灵活性高、代价低以及能够实现复杂网络拓扑等优点,但是对于网络流量以及实现细节支持不够,交互性不高。网络仿真综合了测试床和网络模拟的优点。在仿真环境中,网络应用运行在实际的硬件平台上,且能够与实际的环境交互,扩展性和灵活性较高,同时网络试验环境可配置、可控制、可重复,能够生成真实网络流量,从而成为当前构建网络试验环境的重要技术。当前网络仿真技术研究思路分为两种:一种思路是将仿真网络看作简单的延迟黑盒(simple delay lines ),仅关注网络出入口的设置,该思路具有硬件要求低的优点。相关研究包括:Dummynet [5],NIST net [6]等。另一种思路是通过建立虚拟网络模拟进行实时网络仿真。真实网络流量能够通过仿真 收稿日期:2007-06-10 修回日期:2008-02-09 作者简介:况晓辉(1975-), 男, 湖南新化, 博士, 副研究员, 研究方向为计算机网络, 信息安全;赵刚(1969-), 男, 河北保定, 研究员, 研究方向为计算机网络, 信息安全; 郭勇(1966-), 男, 湖南常德, 研究员, 研究方向为计算机网络, 计算机软件。 器,虚拟网络能够根据交互生成网络流量。相关的研究包括VINT/nse [7],ModelNet [8],NetBed [9], Virtual Routers [10],PlanetLab [11]以及IP-TNE [1]等。 随着网络复杂性的提高,基于延迟黑盒的网络仿真环境难以满足应用需求。因此,建立在网络模拟基础上的仿真环境成为网络仿真技术的研究重点。在网络模拟器实现中,NS2 [12]能够支持有线和无线、本地或卫星、局域网和广域网等各种网络类型以及网络分层模型,具有强大的二次开发能力以及可扩展、易配置和编程的事件驱动特性,为构建网络仿真平台提供了良好基础。然而,NS2已有的仿真功能在IP 地址支持、路由机制、协议支持等方面存在不足,难以满足网络技术研究和协议设计开发的实际需求。 本文在深入分析NS2仿真功能的基础上,重点分析了已有功能存在的不足,描述并实现了NS2仿真功能扩展,解决了IP 地址支持、动态路由以及拓扑验证的问题。最后,通过试验验证了仿真功能的正确性和有效性。 1 NS2网络仿真功能分析 事件驱动的网络模拟器NS2是DARPA 支持的VINT 项目中的核心部分,由Berkeley, USC/ISI 、 LBL 和Xerox PARC 等大学和实验室合作开发,其目的是构造虚拟的网络平台和模拟工具,以支持网络协议的研究、设计和开发。 1.1 仿真功能 NS2仿真模块实现了模拟器与实际网络的连接功能,

NS2实验报告

NS2实验报告 一、实验平台和环境 本实验是在Windows XP操作系统平台下安装了Cygwin软件以模仿Linux 下的编程环境,然后在Cygwin模仿的环境中安装了ns-allinone-2.34软件包,该软件包包含nam、otcl、tcl、tclcl、tk以及xgraph等软件包和辅助分析工具。 二、实验步骤 2.1 安装与配置 1.安装cygwin a)在cygwin官方网站下载setup.exe。 b)运行setup.exe,使用默认配置选择unix安装。 c)在选择安装组件时确认安装以下内容:XFree86-base, XFree86-bin, XFree86-prog,XFree86-lib, XFree86-etc,make,patch,perl,gcc,gcc-g++, gawk,gnuplot,tar 和gzip。 Diffstat,diffutils,libXmu,libXmu-devel,libXmu6,libXmuu1, X-startup-scripts xorg-x11-base xorg-x11-bin xorg-x11-devel xorg-x11-bin-dlls xorg-x11-bin-lndir xorg-x11-etc xorg-x11-fenc xorg-x11-fnts xorg-x11-libs-data xorg-x11-xwin 2.安装NS2 a)在NS2官方网站下载ns2-allinone-2.34.tar.gz安装包。 b)将ns2-allinone-2.34.tar.gz拷贝放入cygwin用户目录下。 c)运行cygwin,命令行下输入tar xvfz ns2-allinone-2.34.tar.gz。 d)进入ns2-allinone-2.34目录,执行./install开始安装。

基于NS2的UDP仿真报告

基于NS2的UDP协议仿真 1. UDP协议的特点 UDP 是OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。UDP 协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序。UDP协议并不提供数据传送的保证机制。如果在从发送方到接收方的传递过程中出现数据报的丢失,协议本身并不能做出任何检测或提示。UDP协议称为不可靠的传输协议。 UDP报头由4个域组成,其中每个域各占用2个字节,具体如表1所示: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1819 20 21 22 23 24 25 26 27 28 29 30 31 源端口目的端口 段长校验和 表1 UDP报头结构 UDP协议使用端口号为不同的应用保留其各自的数据传输通道。数据发送一方(可以是客户端或服务器端)将UDP数据报通过源端口发送出去,而数据接收一方则通过目标端口接收数据。UDP协议使用报头中的校验值来保证数据的安全。校验值首先在数据发送方通过特殊的算法计算得出,在传递到接收方之后,还需要再重新计算。如果某个数据报在传输过程中被第三方篡改或者由于线路噪音等原因受到损坏,发送和接收方的校验计算值将不会相符,由此UDP协议可以检测是否出错。 2. NS2软件的安装与配置 2.1 ubuntu实验环境 Ubuntu是Linux的一个版本,是一款免费的操作系统,Ubuntu 项目完全遵从开源软件开发的原则;用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。NS2在linux环境下运行比在windows下更稳定,出现更少的错误,还可以更改linux内核,使得仿真效果更好。 2.2 软件安装 NS2可以再Linux平台下运行,因此一般需要安装Linux操作系统。也可以采用Windows+虚拟机(VMware,Virtual PC)+NS组合的方式。 若要在Ubuntu上运行NS2,下面的软件是在安装和使用NS2中需要用到的,必须先行安装。

无线传感器实验报告

无线传感器网络实验报告 Contiki mac协议与xmac协议的比较 1.简介 无线传感器网络(wireless sensor networks,WSN)节点由电池供电,其能力非常有限,同时由于工作环境恶劣以及其他各种因素,节点能源一般不可补充。因而降低能耗、延长节点使用寿命是所有无线传感器网络研究的重点。 WSN中的能量能耗主要包括通信能耗、感知能耗和计算能耗,其中通信能耗所占的比重最大,因此,减少通信能耗是延长网络生存时间的有效手段。同时,研究表明节点通信时Radio模块在数据收发和空闲侦听时的能耗几乎相同,所以要想节能就需要最大限度地减少Radio模块的侦听时间(收发时间不能减少),及减小占空比。 传统的无线网络中,主要考虑到问题是高吞吐量、低延时等,不需要考虑能量消耗,Radio模块不需要关闭,所以传统无线网络MAC协议无法直接应用于WSN,各种针对传感器网络特点的MAC协议相继提出。现有的WSN MAC协议按照不同的分类方式可以分成许多类型,其中根据信道访问策略的不同可以分为: X-MAC协议 X-MAC协议也基于B-MAC协议的改进,改进了其前导序列过长的问题,将前导序列分割成许多频闪前导(strobed preamble),在每个频闪前导中嵌入目的地址信息,非接收节点尽早丢弃分组并睡眠。 X-MAC在发送两个相邻的频闪序列之间插入一个侦听信道间隔,用以侦听接收节点的唤醒标识。接收节点利用频闪前导之间的时间间隔,向发送节点发送早期确认,发送节点收到早

期确认后立即发送数据分组,避免发送节点过度前导和接收节点过度侦听。 X-MAC还设计了一种自适应算法,根据网络流量变化动态调整节点的占空比,以减少单跳延时。 优点: X-MAC最大的优点是不再需要发送一个完整长度的前导序列来唤醒接收节点,因而发送延时和收发能耗都比较小;节点只需监听一个频闪前导就能转入睡眠。 缺点: 节点每次醒来探测信道的时间有所增加,这使得协议在低负载网络中能耗性比较差。而且分组长度、数据发送速率等协议参数还需进一步确定 X-MAC原理图如图3所示: ContikiMAC协议 一.ContikiMAC协议中使用的主要机制: 1.时间划分

NS2仿真实验报告

Ns2简单有线网络仿真实验报告 一、实验概述 1、在windows系统下安装Centos虚拟机 2、在Centos系统下安装NS2仿真工具包 3、Nam方式示例 二、实验内容 1)NS2仿真工具包安装说明 1.在Centos系统下设置root账户 2.解压NS2文件 3.安装ns-allinone-2.35 设置环境变量 4.验证NS2工具包安装情况 2)Nam方式 Otcl脚本 # 产生一个仿真的对象 set ns [new Simulator] #针对不同的资料流定义不同的颜色,这是要给NAM用的 $ns color 1 Green $ns color 2 Red #开启一个NAM trace file set nf [open out.nam w] $ns namtrace-all $nf #开启一个trace file,用来记录封包传送的过程 set nd [open out.tr w] $ns trace-all $nd #定义一个结束的程序 proc finish {} { global ns nf nd $ns flush-trace close $nf close $nd #以背景执行的方式去执行NAM exec nam out.nam & exit 0 } #产生6个网络节点 set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node]

set n4 [$ns node] set n5 [$ns node] #把节点连接起来 $ns duplex-link $n0 $n2 2Mb 10ms DropTail $ns duplex-link $n1 $n2 2Mb 10ms DropTail $ns duplex-link $n2 $n3 1.7Mb 20ms DropTail $ns duplex-link $n3 $n4 1.7Mb 30ms DropTail $ns duplex-link $n3 $n5 1.5Mb 30ms DropTail #设定ns2到n3之间的Queue Size为10个封包大小$ns queue-limit $n2 $n3 10 $ns queue-limit $n3 $n4 5 #$ns queue-limit $n3 $n5 10 #设定节点的位置,这是要给NAM用的 $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 $ns duplex-link-op $n3 $n4 orient right-up $ns duplex-link-op $n3 $n5 orient right-down #观测n2到n3之间queue的变化,这是要给NAM用的$ns duplex-link-op $n2 $n3 queuePos 0.5 #建立一条n0-n5TCP的联机 set tcp [new Agent/TCP] $ns attach-agent $n0 $tcp set sink [new Agent/TCPSink] $ns attach-agent $n5 $sink $ns connect $tcp $sink #在NAM中,TCP的联机会以Green表示 $tcp set fid_ 1 #在TCP联机之上建立FTP应用程序 set ftp [new Application/FTP] $ftp attach-agent $tcp $ftp set type_ FTP #建立一条UDP的联机 set udp [new Agent/UDP] $ns attach-agent $n1 $udp set null [new Agent/Null] $ns attach-agent $n3 $null $ns connect $udp $null #在NAM中,UDP的联机会以红色表示 $udp set fid_ 2 #在UDP联机之上建立CBR应用程序 set cbr [new Application/Traffic/CBR] $cbr attach-agent $udp

(完整word版)NS2网络仿真实验

移动自组织网络 实 验 报 告 NS2网络仿真实验 何云瑞 13120073 电信研1301班

1.实验目的和要求 1.学会NS2的安装过程,并熟悉NS2的环境; 2.观察并解释NAM动画,分析Trace文档。 3.学会用awk和gnuplot分析吞吐量、封包延迟、抖动率和封包丢失率。2.实验环境 先在PC上安装VMware虚拟机,再在虚拟机上安装Ubuntu系统,最后再Ubuntu系统上安装NS2软件,本次实验采用的是NS-2.34版本。 3.基本概念 3.1 NS2简介 NS2是一款开放源代码的网络模拟软件,最初由UC Berkeley开发。它是一种面向对象的网络模拟器,它本质上是一个离散事件模拟器,其本身有一个模拟时钟,所有的模拟都由离散事件驱动。其采用了分裂对象模型的开发机制,采用C++和OTcl两种语言进行开发。它们之间采用TclCL进行自动连接和映射。考虑效率和操作便利等因素,NS2将数据通道和控制通道的实现相分离。为了减少封包和事件的处理时间,事件调度器和数据通道上的基本网络组件对象都使用C++编写,这些对象通过TclCL映射对OTcl解释器可见。 目前,NS2可以用于模拟各种不同的通信网络,它功能强大,模块丰富,已经实现的主要模块有:网络传输协议,如TCP和UDP;业务源流量产生器,如FTP、Telnet、CBR、Web和VBR;路由队列管理机制,如Droptail、RED和CBQ;路由算法;以及无线网络WLAN、移动IP和卫星通信网络等模块。也为进行局域网的模拟实现了多播协议以及一些MAC子层协议。 3.2 NS2的功能模块 NS2仿真器封装了许多功能模块,最基本的是节点、链路、代理、数据包格式等,下面对各个模块进行简单的介绍: (1)事件调度器:目前NS2提供了四种具有不同数据结构的调度器,分别是链表、堆、日历表和实时调度器。

湖南大学无线传感器网络实验报告DV-HOP

无线传感器网络 题目:DV-hop定位算法 学生: 学号: 完成时间: 2014.5.121

一、实验目的 1、掌握matlab工具的使用方法。 2、了解DV-hop算法原理,熟悉DV-hop算法代码,分析DV-hop算法实验结果。 二、实验原理 DV-hop算法概述 (一)基本思想: 3、计算位置节点与犀鸟节点的最小跳数 4、估算平均每跳的距离,利用最小跳数乘以平均每条的距离,得到未知节点与信标节点之间的估计距离 5、利用三遍测量法或者极大似然估计法计算未知节点的坐标 (二)定位过程 1、信标节点向邻居节点广播自身未知信息的分组,其中包括跳数字段,初始化为0 2、接受节点记录具有到每条信标节点的最小跳数,忽略来自一个信标节点的较大跳数的分组,然后将跳数数值加1,并转发给邻居节点 3、网络中所有节点能够记录下到每个信标节点最小跳数 (三)计算未知节点与信标节点的实际跳段距离

1、每个信标节点根据记录的其他信标节点的位置信息和相距跳数,估 算平均每跳距离 2、信标节点将计算的每条平均距离用带有生存期字段的分组广播至网络中,未知节点仅仅记录接受到的第一个每跳平均距离,并转发给邻居节点 3、未知节点接受到平均每跳距离后,根据记录的跳数,计算到每个信标节点的跳段距离 (四)利用三边测量法或者极大似然估计法计算自身位置 4、位置节点利用第二阶段中记录的到每个信标节点的跳段距离,利用三边测量法或者极大似然估计法计算自身坐标 三、实验容和步骤 DV-hop代码如下: function DV_hop() load '../Deploy Nodes/coordinates.mat'; load '../Topology Of WSN/neighbor.mat'; if all_nodes.anchors_n<3 disp('锚节点少于3个,DV-hop算法无法执行'); return; end %~~~~~~~~~~~~~~~~~~~~~~~~~最短路经算法计算节点间跳数~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ shortest_path=neighbor_matrix; shortest_path=shortest_path+eye(all_nodes.nodes_n)*2; shortest_path(shortest_path==0)=inf;

网络性能的仿真+ns2

实验一:网络性能的仿真 一、实验要求 1)对64个计算机结点,每个计算机采用若干100Mbps集线器(HUB)的 方式连接到一台服务器上。采用NS2仿真软件,对于以上的具体环节进 行网络性能的仿真,给出网络的吞吐量,丢包率,总时延,抖动率等参 数的仿真曲线,并对结果进行分析。 2)将以上环境中的集线器(HUB)换成交换机(switch),给出网络的信道 利用率,吞吐量,传输时延,排队延迟等参数的仿真曲线,并对结果进 行分析。 二、实验目的 通过本次实验的完成,首先能够学会在Ubuntu环境下安装搭建NS2运行的环境。其次对于tcl语言有了更加全面的了解。通过对具体环境的网络环境进行仿真,可以加深对网络的信道利用率,吞吐量,传输时延,排队延迟等参数的计算及了解。最后通过仿真环境中集线器(HUB)和交换机(Switch)之间的仿真的区别,加深对HUB和交换机之间差别的理解。 三、实验原理 1、NS2( Network Simulator version 2),NS(Network Simulator)是一种针对网络技术的源代码公开的,免费的软件模拟平台。计算机网络是一个相当复杂的系统,包含了各种通信协议和网络技术,而网络仿真是网路通信技术研究的重要手段之一,网络仿真是指采用计算机软件对网络协议,网络拓扑,网络性能进行模拟分析的一种研究手段。NS2是一种面向对象的网络仿真器,本质是一个离散事件模拟器,它可以仿真各种不同的IP网,实现一些网络传输协议,比如TCP和UDP,还包括业务源流量产生器,比如FTP,CBR等。NS2使用C++和Otcl作为开发语言。NS可以说是Otcl的脚本解释器,它包含仿真事件调度器、网络组件对象库以及网络构建模型库等。NS是用Otcl和C++编写的。由于效率的原因,NS将数据通道和控制通道的实现相分离。为了减少分组和事件的处理时间,事件调度器和数据通道上的基本网络组件对象都使用C++写出并编译的,这些对象通过映射对Otcl解释器可见。当仿真完成以后,NS将会产生一个或多个基于文本的跟踪文件。只要在Tcl脚本中加入一些简单的语句,这些文件中就

浙江大学·无线网络应用实验报告

本科实验总结 课程名称:无线网络应用 姓名:王泽颢 学院(系):信电学院 专业:信息工程 学号:3150100825 指导教师:张昱,史笑兴,李惠忠 2015年11 月 7日 实验总结的实验项目清单

第一部分基本实验总结 1、第五次课实验:无线网络安全性配置应用之虚拟服务器实验 2、第六次课实验:无线网络中以PC机为DHCP服务器配置应用实验 3、第七次课实验:Ad Hoc模式的无线网络组网及流媒体服务配置应用实验 第二部分扩展实验总结 1、第三次课实验:基于无线路由器的VPN共享上网实验 2、第五次课实验:无线路由器的QSS快速安全设置实验 3、第六次课实验:无线路由器的无线互联实验 4、第六次课实验:基于无线AP的中继ZJUWLAN共享上网实验 5、第七次课实验:基于虚拟WiFi的VPN共享上网实验 第一部分基本实验总结 第五次课实验:无线网络安全性配置应用之虚拟服务器实验

一、实验目的和要求 了解虚拟服务器的原理和应用 熟悉TP-LINK无线路由器的虚拟服务器的设置方法 二、实验内容和原理 设置内网的Web Server 和FTP Server 为两个虚拟服务器,允许外网的客户机进去访问它们。并且无线路由器采用WEP安全模式(包括数据加密和身份验证)。将内网中需要为外网用户提供HTTP或FTP等服务的主机的相应服务端口映射到无线路由器的WAN口,从而实现从外网访问内网。内网中被映射的为外网提供服务的主机就是虚拟服务器。 这部分中我们担任的是FTP server. 三、主要仪器设备 1.TL-WR847N无线路由器1台(包括电源变压器1个) 2.直通线1根、PC机3台 四、操作方法和实验步骤

无线传感网实验报告

Central South University 无线传感器网络实验报告 学院: 班级: 学号: 姓名: 时间: 指导老师:

第一章基础实验 1 了解环境 1.1 实验目的 安装 IAR 开发环境。 CC2530 工程文件创建及配置。 源代码创建,编译及下载。 1.2 实验设备及工具 硬件:ZX2530A 型底板及 CC2530 节点板一块,USB 接口仿真器,PC 机 软件:PC 机操作系统 WinXP,IAR 集成开发环境,TI 公司的烧写软件。 1.3 实验内容 1、安装 IAR 集成开发环境 IAR 集成开发环境安装文件所在光盘目录:物联网光盘\工具\C D-EW8051-7601 2、ZIBGEE 硬件连接 安装完 IAR 和 Smartrf Flash Programmer 之后,按照图所示方式连接各种硬件,将仿真器的 20 芯 JTAG 口连接到 ZX2530A 型CC2530 节点板上,USB 连接到 PC 机上,RS-232 串口线一端连接ZX2530A 型 CC2530 节点板,另一端连接 PC 机串口。 3、创建并配置 CC2530 的工程文件

IAR 是一个强大的嵌入式开发平台,支持非常多种类的芯片。IAR 中的每一个 Project,都可以拥有自己的配置,具体包括 Device 类型、堆/栈、Linker、Debugger 等。 (1)新建 Workspace 和 Project 首先新建文件夹 ledtest。打开 IAR,选择主菜单 File -> New -> Workspace 建立新的工作区域。 选择 Project -> Create New Project -> Empty Project,点击 OK,把此工程文件保存到文件夹 ledtest 中,命名为:ledtest.ewp(如下图)。 (2)配置 Ledtest 工程 选择菜单 Project->Options...打开如下工程配置对话框

相关文档
相关文档 最新文档