Você está na página 1de 3

EXPERIMENT 1

Aim: 1) Introduction to OSI, TCP & UDP.


2) Set up a network with two nodes; link them with duplex link, 10ms propagation delay,
1Mbps rate and DropTail procedure. Use Agent UDP with CBR traffic source.

Requirements: A console with any distributions (Like Fedora) with NS installed.

Theory: Open Systems Interconnection (OSI) is a set of internationally recognized, non-


proprietary standards for networking and for operating system involved in networking functions.
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer

TCP: The Transmission Control Protocol (TCP) is one of the core protocols of the Internet
Protocol Suite. TCP is one of the two original components of the suite, complementing the
Internet Protocol (IP), and therefore the entire suite is commonly referred to as TCP/IP. TCP
provides reliable, ordered delivery of a stream of bytes from a program on one computer to
another program on another computer. TCP provides a communication service at an intermediate
level between an application program and the Internet Protocol (IP). That is, when an application
program desires to send a large chunk of data across the Internet using IP, instead of breaking the
data into IP-sized pieces and issuing a series of IP requests, the software can issue a single
request to TCP and let TCP handle the IP details

UDP: The User Datagram Protocol (UDP) is one of the core members of the Internet Protocol
Suite, the set of network protocols used for the Internet. With UDP, computer applications can
send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol (IP)
network without requiring prior communications to set up special transmission channels or data
paths. The protocol was designed by David P. Reed in 1980 and formally defined in RFC 768.
UDP uses a simple transmission model without implicit handshaking dialogues for providing
reliability, ordering, or data integrity. Thus, UDP provides an unreliable service and datagram
may arrive out of order, appear duplicated, or go missing without notice. UDP assumes that error
checking and correction is either not necessary or performed in the Application, avoiding the
overhead of such processing at the network interface level. Time sensitive applications often use
UDP because dropping packets is preferable to waiting for delayed packets, which may not be an
option in a real-time system.

Code:
set ns [new Simulator]
#ns simulator started
set tracefile1 [open out2.tr w]
$ns trace-all $tracefile1
#out2.tr filemade
set namfile [open out2.nam w]
$ns namtrace-all $namfile
#out2.nam file for simulation made

proc finish {} {
global ns tracefile1 namfile
$ns flush-trace
close $tracefile1
close $namfile
exec nam out2.nam &
exit 0
}

set n0 [$ns node]


set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]
set n6 [$ns node]
set n7 [$ns node]
set n8 [$ns node]
set n9 [$ns node]
set n10 [$ns node]
#10 nodes made
$ns duplex-link $n0 $n1 2Mb 10ms DropTail
$ns duplex-link-op $n0 $n1 color red
$ns duplex-link $n0 $n2 1Mb 10ms DropTail
$ns duplex-link $n0 $n3 1Mb 10ms DropTail
$ns duplex-link $n0 $n4 1Mb 10ms DropTail
$ns duplex-link $n0 $n5 1Mb 10ms DropTail
$ns duplex-link $n1 $n5 1Mb 10ms DropTail
$ns duplex-link $n2 $n8 1Mb 10ms DropTail
$ns duplex-link $n10 $n6 1Mb 10ms DropTail
$ns duplex-link $n9 $n1 1Mb 10ms DropTail
#creating udp agent
set udp0 [new Agent/UDP]
$ns attach-agent $n0 $udp0
#creating sink
set null0 [new Agent/Null]
$ns attach-agent $n1 $null0
#create CBR
set cbr0 [new Application/Traffic/CBR]
$cbr0 set packetSize_ 800
$cbr0 set rate_ 0.03ms
$cbr0 attach-agent $udp0

$ns connect $udp0 $null0


$ns at 0.3 "$cbr0 start"
$ns at 5.0 "$cbr0 stop"
$ns at 5.5 "finish"
$ns run
Observation:

Result: Learned about TCP and UDP protocols, and about OSI model of networking. Also,
learned how to implement these protocols on ns2.

Você também pode gostar