mo phong ns2 - nhom ntr - utehy.pptx

18
NETWORK SIMULATOR VERSION 2 Người trình bày: Ths. Vi Hoài Nam Nhóm nghiên cứu: NTR – Trường Đại học SPKT Hưng Yên

Upload: hanh-nguyen

Post on 05-Feb-2016

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mo phong NS2 - Nhom NTR - UTEHY.pptx

NETWORK SIMULATOR VERSION 2Người trình bày: Ths. Vi Hoài Nam

Nhóm nghiên cứu: NTR – Trường Đại học SPKT Hưng Yên

Page 2: Mo phong NS2 - Nhom NTR - UTEHY.pptx

NỘI DUNG

I. Giới thiệu NS2

II.Cài đặt và thiết lập NS2

III.Mô phỏng với NS2

Page 3: Mo phong NS2 - Nhom NTR - UTEHY.pptx

I. GIỚI THIỆU NS2

• NS-2: bô công cu mô phỏng mang điêu khiên theo cac kịch

bản.

• Phat triên bơi trương đai hoc Berkeley – My

• NS-2: mã nguồn mơ hỗ trên cả Windows 32bit và Linux

• Môt số cac phiên bản

Page 4: Mo phong NS2 - Nhom NTR - UTEHY.pptx

I. GIỚI THIỆU NS2

• NS dưới góc đô ngươi dùng.

Page 5: Mo phong NS2 - Nhom NTR - UTEHY.pptx

I. GIỚI THIỆU NS2

• Mô hinh kiến truc cua NS

• NS2 sử dung Otcl và C++.

• C++ : Định nghĩa cac packet, đối tượng.

• Otcl : Điêu khiên qua trinh mô phỏng, thực thi nó.

• TclCL là ngôn ngữ được sử dung đê cung cấp liên kết giữa C++ và OTcl

Page 6: Mo phong NS2 - Nhom NTR - UTEHY.pptx

I. GIỚI THIỆU NS2

• Luồng cac sự kiện cho file Tcl chay trong NS

File.tcl NS-2

Out.nam(NAM Vistual Simulation)

Out.tr(Tracing and monitoring

Simulation)

Page 7: Mo phong NS2 - Nhom NTR - UTEHY.pptx

I. GIỚI THIỆU NS2

• Định dang cua file out.tr trong NS-2:

Event có 4 sự kiện:

r: receive +: enqueue

d: drop -: dequeue

event TimeFrom node

To node

Pkt type

Pkt size

Flags FidSrc addr

Dst addr

Seq num

Pkt id

Page 8: Mo phong NS2 - Nhom NTR - UTEHY.pptx

II. CÀI ĐẶT VÀ THIẾT LẬP NS2

• Cài đặt ns2.35 trên Ubuntu 14.04.

Bước 1: Tải và cài đặt cac gói cần thiết.

Bước 2: Dowload ns-2.35 và cài đặt

Bước 3: Thiết lập biến môi trong NS2

Page 9: Mo phong NS2 - Nhom NTR - UTEHY.pptx

II. HƯỚNG DẪN CÀI ĐẶT NS2

Bước 4: Hoàn thành

Gõ lệnh: source ~/.bashrc

ns : kết quả trả vê ký tự % (OK)

nam : hiện ra bảng GUI vê chương trinh (OK)

Page 10: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

Kịch bản: Sơ đồ kết nối như hinh vẽ.

Dữ liệu truyên từ n0 đến n3 qua n2 qua kết

nối tcp

Dữ liệu truyên từ n1 đến n3 qua n2 qua kết

nối udp

Tai cac node thiết lập hàng đợi với size 10

Page 11: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

- Cac bước xây dựng

1. Tao cac node.

2. Thiết lập đương truyên giữa cac node.

3. Thiết lập kích thước hang đợi.

4. Thiết lập cac agent TCP, UDP. Cac bô khơi tao ftp, cbr.

5. Cài đặt thơi gian cho cac sự kiện.

6. Cấu hinh thơi gian mô phỏng.

7. Thực thi mô phỏng.

Page 12: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

#Create a simulator objectset ns [new Simulator]

#Define different colors for data flows (for NAM)$ns color 1 Blue$ns color 2 Red

#Open the NAM trace fileset nf [open out.nam w]$ns namtrace-all $nf

Page 13: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

#Define a 'finish' procedureproc finish {} { global ns nf $ns flush-trace #Close the NAM trace file close $nf #Execute NAM on the trace file exec nam out.nam & exit 0}

Page 14: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

#Create four nodesset n0 [$ns node]set n1 [$ns node]set n2 [$ns node]set n3 [$ns node] #Create links between the nodes$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 #Set Queue Size of link (n2-n3) to 10$ns queue-limit $n2 $n3 10

Page 15: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2#Give node position (for 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#Monitor the queue for link (n2-n3). (for NAM)$ns duplex-link-op $n2 $n3 queuePos 0.5

#Setup a TCP connectionset tcp [new Agent/TCP]$tcp set class_ 2$ns attach-agent $n0 $tcpset sink [new Agent/TCPSink]$ns attach-agent $n3 $sink$ns connect $tcp $sink$tcp set fid_ 1

Page 16: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2#Setup a FTP over TCP connectionset ftp [new Application/FTP]$ftp attach-agent $tcp$ftp set type_ FTP

#Setup a UDP connectionset udp [new Agent/UDP]$ns attach-agent $n1 $udpset null [new Agent/Null]$ns attach-agent $n3 $null$ns connect $udp $null$udp set fid_ 2

Page 17: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2#Setup a CBR over UDP connectionset cbr [new Application/Traffic/CBR]$cbr attach-agent $udp$cbr set type_ CBR$cbr set packet_size_ 1000$cbr set rate_ 1mb$cbr set random_ false #Schedule events for the CBR and FTP agents$ns at 0.1 "$cbr start"$ns at 1.0 "$ftp start"$ns at 4.0 "$ftp stop"$ns at 4.5 "$cbr stop"

Page 18: Mo phong NS2 - Nhom NTR - UTEHY.pptx

III. MÔ PHỎNG VỚI NS2

#Detach tcp and sink agents (not really necessary)$ns at 4.5 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink"#Call the finish procedure after 5 seconds of simulation time$ns at 5.0 "finish"#Print CBR packet size and intervalputs "CBR packet size = [$cbr set packet_size_]"puts "CBR interval = [$cbr set interval_]" #Run the simulation$ns run