`

NS by Example 笔记(14)LAN Example

阅读更多

LAN Example

(Obsolete: work with ns-2.1b4a)

 

LAN例子的模拟脚本并演示了它的网络拓扑和模拟场景。 模拟脚本 "ex-lan.tcl"。

 




 
Figure 32. LAN simulation network topology and scenario

 

 

# Author: Jae Chung
# Date:   7/20/99
#
# This file is modified from 
# "ns-2/tcl/ex/lantest.tcl"

set opt(tr)	"out.tr"
set opt(namtr)	"out.nam"
set opt(seed)	0
set opt(stop)	5
set opt(node)	8

set opt(qsize)	100
set opt(bw)	10Mb
set opt(delay)	1ms
set opt(ll)	LL
set opt(ifq)	Queue/DropTail
set opt(mac)	Mac/Csma/Ca
set opt(chan)	Channel
set opt(tcp)	TCP/Reno
set opt(sink)	TCPSink

set opt(app)	FTP


proc finish {} {
	global ns opt trfd ntrfd

	$ns flush-trace
	close $trfd
        close $ntrfd
	exec nam $opt(namtr) &
	exit 0
}

proc create-trace {} {
	global ns opt

	set trfd [open $opt(tr) w]
	$ns trace-all $trfd
	return $trfd
}

proc create-namtrace {} {
        global ns opt

        set ntrfd [open $opt(namtr) w]
        $ns namtrace-all $ntrfd
}

proc create-topology {} {
	global ns opt
	global lan node source node0

	set num $opt(node)
	for {set i 0} {$i < $num} {incr i} {
		set node($i) [$ns node]
		lappend nodelist $node($i)
	}

	set lan [$ns newLan $nodelist $opt(bw) $opt(delay) \
			-llType $opt(ll) -ifqType $opt(ifq) \
			-macType $opt(mac) -chanType $opt(chan)]

	set node0 [$ns node]
	$ns duplex-link $node0 $node(0) 2Mb 2ms DropTail

	$ns duplex-link-op $node0 $node(0) orient right

}

## MAIN ##

set ns [new Simulator]
set trfd [create-trace]
set ntrfd [create-namtrace]

create-topology

set tcp0 [$ns create-connection TCP/Reno $node0 TCPSink $node(7) 0]
$tcp0 set window_ 15

set ftp0 [$tcp0 attach-app FTP]

$ns at 0.0 "$ftp0 start"
$ns at $opt(stop) "finish"

$ns run

 

  • 大小: 2.9 KB
分享到:
评论

相关推荐

    NS by Example 笔记(12)Add New Queue

    在本篇“NS by Example 笔记(12)Add New Queue”中,我们将探讨如何在计算机网络模拟软件NS-2(Network Simulator 2)中添加新的队列管理器。NS-2是一款广泛用于研究和教学的开源网络模拟工具,它允许用户模拟各种...

    NS by Example 笔记(11)Add New Application and Agent

    标题 "NS by Example 笔记(11)Add New Application and Agent" 提及的是网络模拟器 NS-2(Network Simulator 2)中的一个教程或笔记,重点在于如何添加新的应用程序和代理。在这个过程中,我们将深入理解NS-2的...

    NS by Example

    《NS by Example》是一本专为初学者设计的IT技术图书,主要聚焦于"NS"相关的编程概念和技术。"NS"通常指的是Objective-C中的“Foundation框架”中的“NS”(Namespace)前缀,它代表“Next Step”,是Apple macOS和...

    ns_by_example.rar_ns_ns by example

    《NS by Example》是针对网络仿真工具NS(Network Simulator)的一份详细教程,旨在帮助初学者快速掌握NS的使用方法和技巧。NS是一款强大的开源软件,广泛用于研究计算机网络、移动通信网络以及无线网络的性能分析和...

    ns_by_example.rar_ns2_ns2 by example_ns2 tcl_ns_by_example_tcl

    《NS2 by Example》是NS2(网络模拟器2)学习者的重要参考资料,尤其适合初学者。这本书通过实例教学的方式,让读者深入理解和掌握NS2的使用,即使对于英语不太熟练的学习者,也能通过实例的详细讲解和分析,逐步...

    ns by Example

    《ns by Example》是一个以实例为主的教程,旨在帮助读者深入理解和掌握ns的相关知识。"ns"通常指的是网络模拟器(Network Simulator),它是一个强大的工具,用于模拟和分析网络行为。在这个教程中,我们将通过一系列...

    ns by example

    ### ns2学习:从《ns by example》理解网络模拟器 #### 概览与基础知识 《ns by example》是一份详尽的指南,专为希望深入理解ns2(一种事件驱动的网络模拟器)的初学者设计。不同于繁杂的技术手册,这份资料以...

    Ns_by_example.rar_ns2 by example

    《Ns2 by Example》是一本非常适合初学者的网络模拟软件Ns2的学习指南。Ns2(Network Simulator 2)是一款广泛使用的开源网络模拟器,它允许研究人员和学生在虚拟环境中模拟和分析各种网络协议和拓扑结构。这本书...

    NS by example

    ### NS2基础知识与实践指南 ...通过上述介绍,我们不仅了解了NS2的基本结构和使用方法,还学会了如何利用《NS by Example》这一宝贵资源来提升自己的NS2技能。希望每位读者都能从中受益,快速成为NS2的专家级用户。

    ns2 by example 经典的ns2学习资料

    ns2 by example 经典的ns2学习资料

    ns_by_example.rar_There There_ns2_ns_by_example

    "There There_ns2_ns_by_example"这个压缩包,正如其名,提供了通过实例学习NS2的方法,旨在帮助新手快速上手。 NS2的核心在于它的事件驱动模型,这种模型使得模拟网络中的各种事件(如数据包发送、接收、路由等)...

    ns-by-example

    总体而言,“ns-by-example”项目不仅是一份详尽的NS使用指南,更是一个宝贵的学习资源库,它通过实例教学的方式降低了NS的入门难度,使更多研究人员和学生能够迅速掌握这款强大的网络模拟工具,开展深入的网络科学...

    ns2学习笔记ns2学习笔记ns2学习笔记

    ### ns2学习笔记知识点解析 #### 一、ns2简介 ns2,即Network Simulator version 2,是一款开源且免费的网络仿真平台,主要用于研究和开发网络技术。它提供了丰富的模块,涵盖了网络技术的众多领域,包括但不限于...

    lan.rar_LAN ns2 _lan in ns2_ns2 lan

    NS2 LAN 脚本,可以直接运行,然后通过相应的工具对结果进行分析。

    NS By Example

    NS2还支持组播功能,并实现了一些局域网(LAN)模拟所需的MAC层协议。NS2项目现已成为VINT项目的一部分,该项目致力于开发用于展示、分析模拟结果及转换网络拓扑结构的工具。 #### 基础 NS2的版本2是用C++编写的...

Global site tag (gtag.js) - Google Analytics