Đo băng thông của nhiều luồng lưu lượng gửi qua một mạng gồm nhiều nút
Các nguồn lưu lượng phân chia tài nguyên băng thông rất phù hợp thực tế và lý
thuy ết.
NS-2 là một công cụ mô phỏng khá mới, lại viết trên ngôn ngữtcl nên trong quá
trình làm bài tập lớn nhóm chúng em đã gặp phải nhiều khó khăn, và vẫn chưa hoàn
thành được công việc được giao:
Chưa tính toán chính xác nhất Lưu Lượng của Link3.
13 trang |
Chia sẻ: lylyngoc | Lượt xem: 2887 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Đo băng thông của nhiều luồng lưu lượng gửi qua một mạng gồm nhiều nút, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Nhóm BTV ĐT5 K49
- 1 -
Bài tập lớn
CƠ SỞ MẠNG THÔNG TIN
Đề tài 5
Đo Băng Thông Của Nhiều Luồng
Lưu Lượng Gửi Qua Một Mạng
Gồm Nhiều Nút
Thực hiện: nhóm BTV
Các thành viên:
Hoàng Công Thao(nt)
Hoàng Thanh Tùng
Nguyễn Đức Binh
Nguyễn Xuân Thành
Phạm Thành Vinh
Nhóm BTV ĐT5 K49
- 2 -
MỤC LỤC
1. Yêu cầu bài tập lớn......................................................................................................3
2. Phân chia công việc .....................................................................................................4
2.1 Hoàng Công Thao..................................................................................................4
2.2 Nguyễn Đức Binh ..................................................................................................4
2.3 Hoàng Thanh Tùng ...............................................................................................4
2.4 Nguyễn Xuân Thành.............................................................................................4
2.5 Phạm Thành Vinh.................................................................................................4
3. Quá trình thực hiện ......................................................................................................4
3. 1 Mô phỏng hệ thống. ..............................................................................................4
3.2 Kết Quả Mô phỏng …………………………………………………………………7
4. Kết luận.....................................................................................................................13
5. Tài liệu tham khảo .....................................................................................................13
Nhóm BTV ĐT5 K49
- 3 -
1. Yêu cầu bài tập lớn
Nhóm BTV ĐT5 K49
- 4 -
2. Phân chia công việc
2.1 Hoàng Công Thao
- Viết code mô phỏng trên NS2:
●Thực hiện kịch bản của đề tài.
● Tạo nút,tạo các đường link.
● Mô phỏng quá trình truyền dữ liệu.
● Mô phỏng quá trình Link3 bi đứt và trở lại hoạt động bình
thường.
2.2 Hoàng Thanh Tùng
- Viết code mô phỏng trên NS2 :
● Tính và vẽ băng thông của các luồng lưu lượng
Tạo nút.
Tạo hàng đợi.
Vẽ băng thông của luồng lưu lượng..
2.3 Nguyễn Đức Binh
- Viết code mô phỏng trên NS2 :
Vẽ đồ thị tốc độ mất gói e(t).
Tạo nút.
Tạo các luồng lưu lượng giữa các Agent
2.4 Nguyển Xuân Thành
- Viết code mô phỏng trên NS2 :
Vẽ đồ thị độ lưu lượng thực sự của các Link1 va Link3
Xây dựng Procedure Finish( )
2.5 Phạm Thành Vinh
- Thay các tham số trong mô phỏng & đưa ra nhận xét .
●Các tham số thời gian.
●Đơn vị của băng thông và lưu lượng
3. Quá trình thực hiện
3.1 Mô phỏng hệ thống
Sử dụng công cụ NS2 mô phỏng hệ thống gồm 3 luồng lưu
lượng gửi qua 4 nút.
Nhóm BTV ĐT5 K49
- 5 -
Giả thiết :
* Độ dài hàng đợi: K = 10
* 3 luồng dữ liệu (S1,D1),(S2,D2),(S3,D3) phát gói với độ dài
125bytes. Và khoảng thời gian giữa các gói là λ(S1)= λ(S3)=500kbit/s,
λ(S2)=300kbit/s.
* Các link đều có dung lượng và trễ như nhau và bằng:1Mb/s và
100ms.
1.Xây dụng đồ hình gồm các Nut,Agent truyền và nhận dữ liệu.
#tao 4 nut
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
#tao cac duong link cho cac nut
$ns duplex-link $n1 $n2 1Mb 100ms DropTail
$ns duplex-link $n1 $n3 1Mb 100ms DropTail
$ns duplex-link $n2 $n4 1Mb 100ms DropTail
$ns duplex-link $n3 $n4 1Mb 100ms DropTail
#tao do dai hang doi va cach xap xep vi tri hang doi
$ns duplex-link-op $n1 $n2 queuePos 0.5
$ns queue-limit $n1 $n3 10
$ns duplex-link-op $n1 $n3 queuePos 0.5
$ns queue-limit $n2 $n4 10
$ns duplex-link-op $n2 $n4 queuePos 0.5
$ns queue-limit $n3 $n4 10
$ns duplex-link-op $n3 $n4 queuePos 0.5
#tao do hinh cho mo phong
$ns duplex-link-op $n1 $n3 orient right-down
$ns duplex-link-op $n1 $n2 orient right
$ns duplex-link-op $n2 $n4 orient right-down
$ns duplex-link-op $n3 $n4 orient right
#tao dich cho cac nut
set null0 [new Agent/Null]
set null1 [new Agent/Null]
set null2 [new Agent/Null]
$ns attach-agent $n2 $null0
$ns attach-agent $n2 $null2
Nhóm BTV ĐT5 K49
- 6 -
$ns attach-agent $n4 $null1
$ns connect $udp0 $null0
$ns connect $udp1 $null1
$ns connect $udp2 $null2
2.Tạo các luồng lưu lượng.
#tao do hinh cho mo phong
$ns duplex-link-op $n1 $n3 orient right-down
$ns duplex-link-op $n1 $n2 orient right
$ns duplex-link-op $n2 $n4 orient right-down
$ns duplex-link-op $n3 $n4 orient right
#tao ung dung Trafic
set cbr0 [new Application/Traffic/CBR]
set cbr1 [new Application/Traffic/CBR]
set cbr2 [new Application/Traffic/CBR]
#khoi tao toc do truyen du lieu
$cbr0 set packet_size_ 150
$cbr0 set rate_ 500Kb
$cbr0 attach-agent $udp0
$cbr1 set packet_size_ 150
$cbr1 set rate_ 300Kb
$cbr1 attach-agent $udp1
$cbr2 set packet_size_ 150
$cbr2 set rate_ 500Kb
$cbr2 attach-agent $udp2
3.Xây dựng các hàm tính băng thông
#chuong trinh con ve do thi
proc record {} {
global sink2 sink3 sink4 f0 f1 f2
set ns [Simulator instance]
set time 1
set bw0 [$sink2 set bytes_]
set bw1 [$sink3 set bytes_]
set bw2 [$sink4 set bytes_]
set now [$ns now]
puts $f0 "$now [expr $bw0/$time*8/1000]"
puts $f1 "$now [expr $bw1/$time*8/1000]"
puts $f2 "$now [expr $bw2/$time*8/1000]"
$sink2 set bytes_ 0
Nhóm BTV ĐT5 K49
- 7 -
$sink3 set bytes_ 0
$sink4 set bytes_ 0
$ns at [expr $now+$time] "record"
}
4.Xây dựng các hàm tính tốc độ mất gói.
procrecord {} {
global sinkt2 sinkt3 sinkt4 f0
set ns [Simulator instance]
set time 1
set et0 [$sinkt2 set nlost_]
set et1 [$sinkt3 set nlost_]
set et2 [$sinkt4 set nlost_]
set now [$ns now]
puts $f0 "$now [expr ($et0+$et2)/$time]"
$sinkt2 set nlost_ 0
$sinkt3 set nlost_ 0
$sinkt4 set nlost_ 0
$ns at [expr $now+$time] "record"
}
5.Sử dụng hàm làm đứt link3.
$ns rtmodel-at 25. down $n3 $n4
$ns rtmodel-at 75.0 up $n3 $n4
6.Xây dựng biểu tính luu lượng của link1 va link3
7.Chạy chương trình.
Sau 5 lần thay biến timer bằng các giá trị:0.05;0.1;0.5;0.75 ;1.
Cuối cùng Đặt biến timer co giá trị bằng 1s và mô phỏng trong
110s.thì thu được kết quả dễ quan sát nhất.
Đơn vị của băng thông và lưu lượng là Kbit/s.
Đơn vị tốc độ mất gói là e(goi/s)
Quy định màu :(S1,D1)-blue;(S2,D2):Red;(S3,D3):Green.
Nhóm BTV ĐT5 K49
- 8 -
3.2 Kết Quả Mô phỏng
Sau khi mô phỏng thành công chúng tôi thu đựợc kêt quả như sau:
Mô hình theo kịch bản:
Hình1: Đồ hình mô phỏng 1a: Trước lúc chạy ..
Nhóm BTV ĐT5 K49
- 9 -
Hình1b: Mô phỏng trước khi Link 3 bị đứt
Nhóm BTV ĐT5 K49
- 10 -
Hình 1c . Mô phỏng khi Link 3 bị đứt ( Node 4 và Node 3 ) .
Nhóm BTV ĐT5 K49
- 11 -
Hình 1d .Mô phỏng khi Link 3 hoạt động bình thường .
Hình 2 . Đồ thị băng thông mà các luồng (Si ,Di ) sử dụng .
Nhóm BTV ĐT5 K49
- 12 -
Hinh3:Lưu lượng và băng thông
Nhóm BTV ĐT5 K49
- 13 -
Hình 4 . Đồ thị tốc độ mất gói tại Node 2 .
4. Kết luận
Các nguồn lưu lượng phân chia tài nguyên băng thông rất phù hợp thực tế và lý
thuyết.
NS-2 là một công cụ mô phỏng khá mới, lại viết trên ngôn ngữ tcl nên trong quá
trình làm bài tập lớn nhóm chúng em đã gặp phải nhiều khó khăn, và vẫn chưa hoàn
thành được công việc được giao:
Chưa tính toán chính xác nhất Lưu Lượng của Link3.
5. Tài liệu tham khảo
Các file đính kèm theo tài liệu này:
- btlmang_thong_tin_nhom_btv_3347.pdf