Bài tập lớn : CƠ SỞ MẠNG THÔNG TIN

11 486 0
Bài tập lớn : CƠ SỞ MẠNG THÔNG TIN

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1. Yêu cầu bài tập lớn Cho mạng thông tin có cấu hình như hình 3. Nút s gắn với hai nguồn lưu lượng tcp1 vào tcp2 gửi các gói đến nut d, dựa trên giao thức truyền TCP. Cả hai nguồn gửi ra các gói có chiều dài cố định là 1300byte. Nguồn tcp1 phát ra các gói đều đặn theo thời gian với tốc độ 500 gói/s. Số lượng gói phát ra từ nguồn tcp2 tuân theo phân bố poisson, tốc độ 300 gói/s 1.Viết kịch bản và chạy mô phỏng hệ thống thông tin nói trên trong thời gian không ngắn hơn 5 phút. 2.Thu thập và vẽ đồ thị các số liệu: khả thông từng luồng, tỉ lệ mất gói của từng luồng tại từng nút và trễ toàn đường truyền. 3.Thu thập và vẽ đồ thị số liệu của cửa sổ tắc nghẽn (congestion windown) 4.Thay đổi kích thước gói, tốc độ phát sinh gói rồi làm lại các thao tác trong mục 2 và 3 . Nhận xét kết quả thu được 2. Phân tích yêu cầu bài toán: Bài toán được đặt ra với các giả thiết: các máy tính nối với mạng bằng liên kết Ethernet 100BaseT. Trễ truyền lan trên tất cả các liên kết là 10ns. Chiều dài mặc định của tất cả các hàng đợi là 50. Yêu cầu của bài toán xây dựng một mạng thông tin gồm có 6 nút trong đó có hai luồng dữ liệu. Cả hai luồng đều dự trên giao thức TCP và bắt đầu từ nút nguốn S kết thúc ở nút đích D. Thu thập số liệu và vẽ đồ thị của : -Khả thông từng luồng -Tỉ lệ mất gói của từng luồng tại từng nút -Trễ toàn đường truyền -Của sổ tắc nghẽn (congestion windown) Thay đổi tốc độ phát sinh gói, kích thước mỗi gói và làm lại các yêu cầu như trên. 3. Phân chia công việc 3.1 Nguyễn Hải Dương: Tìm hiểu đề bài, tổng hợp các ý kiến của thành viên, tìm tài liệu và tổng hợp tài liệu từ các bạn thành viên. Tổ chức họp nhóm, phân công công việc. Theo dõi tiến độ và viết báo cáo. Viết kịch bản mô phỏng. Ghép các Module và chạy chương trình. 3.2 Phạm Tuấn Minh : Tìm hiểu lý thuyết và viết code cho mô phỏng về khả thông từng luồng 3.3 Hoàng Viết Sinh: Tìm hiểu lý thuyết và viết code cho thu thập và vẽ đồ thị số liệu cửa sổ tắc nghẽn ( Congestion Window ) 3.4 Phương: Tìm hiểu lý thuyết và viết code về tỉ lệ mất gói của từng luồng tại từng nút 3.8 Bách: Tìm hiểu lý thuyết và viết code trễ toàn đường truyền Chú ý: i.Các thành viên khi hoàn thành công việc của mình thì có thể giúp các bạn khác. ii.Sau khi hoàn thành Bai Tập Lớn sẽ tập trung để giảng cho các bạn trong nhóm về vấn đề mình tím hiểu. 4. Quá trình thực hiện Tiến hành cài đặt NS2: Việc cài đặt NS2 đối với chúng em thật là gian nan. Tuy nhiên sau một tuần mầy mò cùng sự trợ giúp của các bạn khác thì mọi người trong nhóm cũng đã cài xong NS2 trên Ubuntu 9.10 và 10.4 Tuy nhiên do một số bạn cài đặt theo kiểu online nên không sửa cấu hình cho phân bố poisson mà phải thêm bằng cách dựa theo hàm số mũ. 4.1 Mô phỏng hệ thống Thời gian mô phòng 300s. Mô phỏng hệ thống gồm 2 luồng lưu lượng gửi qua 6 nút. Giả thiết : * Độ dài hàng đợi: K = 50 * 2 luồng dữ liệu từ nút S đến nút D 1.Xây dụng đồ hình gồm các Nut,Agent truyền và nhận dữ liệu. Sử dụng lệnh “ set ten_node [$ns node]” tạo ra 6 nút mạng: set s1 [$ns node] set s2 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set d0 [$ns node] Có thể dung lệnh sau để tạo nhiểu nút: Tạo 10 node trong mạng for {set i 1} {$i < 11} {incr i} { set n($i) [$ns node] } Tạo liên kết giữa các nút: $ns duplex-link $s1 $n1 2Mb 10ns DropTail $ns duplex-link $s2 $n1 2Mb 10ns DropTail $ns duplex-link $n1 $n2 1.5Mb 20ns DropTail $ns duplex-link $n2 $n3 1Mb 20ns DropTail $ns duplex-link $n3 $d0 2Mb 10ns DropTail #Đặt các nút theo sơ đồ đã cho: $ns duplex-link-op $s1 $n1 orient right-down $ns duplex-link-op $s2 $n1 orient right-up $ns duplex-link-op $n1 $n2 orient right $ns duplex-link-op $n2 $n3 orient right $ns duplex-link-op $n3 $d0 orient right 2. Cuối cùng ta có phần khung khởi tạo

s TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA ĐIỆN TỬ VIỄN THÔNG o0o Bài tập lớn : CƠ SỞ MẠNG THÔNG TIN Giảng viên hướng dẫn : Phạm Văn Tiến Các thành viên: Nguyễn Hải Dương ( nhóm trưởng) Hoàng Viết Sinh Phạm Tuấn Minh MỤC LỤC 1. Yêu cầu bài tập lớn 2 2. Phân tích yêu cầu bài toán: 3 3. Phân chia công việc 4 3.1 Nguyễn Hải Dương: 4 3.2 Phạm Tuấn Minh : 4 3.3 Hoàng Viết Sinh: 4 3.4 Phương: 4 3.8 Bách: 4 4. Quá trình thực hiện 4 4.1 Mô phỏng hệ thống 5 Thời gian mô phòng 300s 5 Mô phỏng hệ thống gồm 2 luồng lưu lượng gửi qua 6 nút 5 4.2 Kết Quả Mô phỏng 7 5. Phần nội dung Code: 11 6. Kết luận 11 1. Yêu cầu bài tập lớn Cho mạng thông tin có cấu hình như hình 3. Nút s gắn với hai nguồn lưu lượng tcp1 vào tcp2 gửi các gói đến nut d, dựa trên giao thức truyền TCP. Cả hai nguồn gửi ra các gói có chiều dài cố định là 1300byte. Nguồn tcp1 phát ra các gói đều đặn theo thời gian với tốc độ 500 gói/s. Số lượng gói phát ra từ nguồn tcp2 tuân theo phân bố poisson, tốc độ 300 gói/s 1. Viết kịch bản và chạy mô phỏng hệ thống thông tin nói trên trong thời gian không ngắn hơn 5 phút. 2. Thu thập và vẽ đồ thị các số liệu: khả thông từng luồng, tỉ lệ mất gói của từng luồng tại từng nút và trễ toàn đường truyền. 3. Thu thập và vẽ đồ thị số liệu của cửa sổ tắc nghẽn (congestion windown) 4. Thay đổi kích thước gói, tốc độ phát sinh gói rồi làm lại các thao tác trong mục 2 và 3 . Nhận xét kết quả thu được 2. Phân tích yêu cầu bài toán: Bài toán được đặt ra với các giả thiết: các máy tính nối với mạng bằng liên kết Ethernet 100BaseT. Trễ truyền lan trên tất cả các liên kết là 10ns. Chiều dài mặc định của tất cả các hàng đợi là 50. Yêu cầu của bài toán xây dựng một mạng thông tin gồm có 6 nút trong đó có hai luồng dữ liệu. Cả hai luồng đều dự trên giao thức TCP và bắt đầu từ nút nguốn S kết thúc ở nút đích D. Thu thập số liệu và vẽ đồ thị của : - Khả thông từng luồng - Tỉ lệ mất gói của từng luồng tại từng nút - Trễ toàn đường truyền - Của sổ tắc nghẽn (congestion windown) Thay đổi tốc độ phát sinh gói, kích thước mỗi gói và làm lại các yêu cầu như trên. 3. Phân chia công việc 3.1 Nguyễn Hải Dương: Tìm hiểu đề bài, tổng hợp các ý kiến của thành viên, tìm tài liệu và tổng hợp tài liệu từ các bạn thành viên. Tổ chức họp nhóm, phân công công việc. Theo dõi tiến độ và viết báo cáo. Viết kịch bản mô phỏng. Ghép các Module và chạy chương trình. 3.2 Phạm Tuấn Minh : Tìm hiểu lý thuyết và viết code cho mô phỏng về khả thông từng luồng 3.3 Hoàng Viết Sinh: Tìm hiểu lý thuyết và viết code cho thu thập và vẽ đồ thị số liệu cửa sổ tắc nghẽn ( Congestion Window ) 3.4 Phương: Tìm hiểu lý thuyết và viết code về tỉ lệ mất gói của từng luồng tại từng nút 3.8 Bách: Tìm hiểu lý thuyết và viết code trễ toàn đường truyền Chú ý: i. Các thành viên khi hoàn thành công việc của mình thì có thể giúp các bạn khác. ii. Sau khi hoàn thành Bai Tập Lớn sẽ tập trung để giảng cho các bạn trong nhóm về vấn đề mình tím hiểu. 4. Quá trình thực hiện Tiến hành cài đặt NS2: Việc cài đặt NS2 đối với chúng em thật là gian nan. Tuy nhiên sau một tuần mầy mò cùng sự trợ giúp của các bạn khác thì mọi người trong nhóm cũng đã cài xong NS2 trên Ubuntu 9.10 và 10.4 Tuy nhiên do một số bạn cài đặt theo kiểu online nên không sửa cấu hình cho phân bố poisson mà phải thêm bằng cách dựa theo hàm số mũ. 4.1 Mô phỏng hệ thống Thời gian mô phòng 300s. Mô phỏng hệ thống gồm 2 luồng lưu lượng gửi qua 6 nút. Giả thiết : * Độ dài hàng đợi: K = 50 * 2 luồng dữ liệu từ nút S đến nút D 1.Xây dụng đồ hình gồm các Nut,Agent truyền và nhận dữ liệu. Sử dụng lệnh “ set ten_node [$ns node]” tạo ra 6 nút mạng: set s1 [$ns node] set s2 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set d0 [$ns node] Có thể dung lệnh sau để tạo nhiểu nút: Tạo 10 node trong mạng for {set i 1} {$i < 11} {incr i} { set n($i) [$ns node] } Tạo liên kết giữa các nút: $ns duplex-link $s1 $n1 2Mb 10ns DropTail $ns duplex-link $s2 $n1 2Mb 10ns DropTail $ns duplex-link $n1 $n2 1.5Mb 20ns DropTail $ns duplex-link $n2 $n3 1Mb 20ns DropTail $ns duplex-link $n3 $d0 2Mb 10ns DropTail #Đặt các nút theo sơ đồ đã cho: $ns duplex-link-op $s1 $n1 orient right-down $ns duplex-link-op $s2 $n1 orient right-up $ns duplex-link-op $n1 $n2 orient right $ns duplex-link-op $n2 $n3 orient right $ns duplex-link-op $n3 $d0 orient right 2. Cuối cùng ta có phần khung khởi tạo Tiếp theo viết hàm khởi tạo giao thức truyền UDP và TCP, tạo Sink agent (traffic sink) #Setup a UDP connection set udp [new Agent/UDP] $ns attach-agent $s2 $udp set sink1 [new Agent/LossMonitor] $ns attach-agent $d0 $sink1 $udp set class_ 2 #Setup a TCP connection set tcp [new Agent/TCP] $ns attach-agent $s1 $tcp set sink2 [new Agent/TCPSink/DelAck] $ns attach-agent $d0 $sink2 $tcp set fid_ 1 Liên kết nguồn – đích $ns connect $udp $sink1 $ns connect $tcp $sink2 Đồng thời mọi hoạt động mạng được lưu dấu lại trong file out.tr qua thủ tục: set tracefile [open out.tr w] $ns trace-all $tracefile Để thực hiện tính toán độ trễ của các packet tại các node, ta sử dụng một file awk xử lý trên file trace thu được, xuất ra file. 4.2 Kết Quả Mô phỏng Sau khi mô phỏng thành công chúng em thu đựợc kêt quả như sau: Mô hình theo kịch bản: Hình1: Đồ hình mô phỏng trước lúc chạy Hình2: Mô hình khi chạy được 8s Hình3: Mô hình khi luồng s2 bắt đàu phát Hình 4: Băng thông Hình 5. Cửa sổ tắc nghẽn [...]... http://dt34.uni.cc (http://dtvt.free-forums.com) Liên lạc với trưởng nhóm: Trịnh Văn Tỉnh E-mail : tinhbk21@gmail.com 7 Tài liệu tham khảo http://www.isi.edu/nsnam/ns/tutorial/index.html http://nile.wpi.edu/ns http://140.116.72.80/~smallko/ns2/ns2.htm http://www-sop.inria.fr/maestro/personnel/Eitan.Altman/COURS-NS/n3.pdf http://google.com http://cygwin.com ... thành tốt bài tập này Qua đây chúng em cũng rất mong thầy cho chúng em thêm nhiều tiết thực hành hơn nữa bên cạnh những giờ học lý thuyết Do chưa có kinh nghiệm làm việc theo nhóm nên trong quát trình phân công công việc, chúng em còn lúng túng cũng như công việc của mỗi cá nhân vẫn còn bị chồng chéo Tài liệu và Code bài tập lớn của nhóm được chia sẻ miễn phí trên Diễn Dàn: http://dt34.uni.cc (http://dtvt.free-forums.com)...Hình 6 Đồ thị tỉ lệ mất gói tại các nút 5 Phần nội dung Code: Phần code được lưu trong 2 file “bai2.tcl” và “T1.awk” được gửi kèm theo báo cáo 6 Kết luận 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 Các thành viên trong nhóm đều cảm thấy khá mới mẻ và lạ lẫm

Ngày đăng: 10/06/2015, 16:55

Mục lục

    1. Yêu cầu bài tập lớn

    2. Phân tích yêu cầu bài toán:

    3. Phân chia công việc

    4. Quá trình thực hiện

    4.1 Mô phỏng hệ thống

    4.2 Kết Quả Mô phỏng

    5. Phần nội dung Code: