BÀI TẬP LỚN MÔN CƠ SỞ MẠNG THÔNG TIN Dành cho SV K56 chuyên ngành ĐTVT – Trường ĐHBK Hà nội Giảng viên: PGS.TS Nguyễn Hữu Thanh, Email: thanhnh@hust.edu.vn Mục đích Trong mơn Cơ sở mạng thông tin, sinh viên làm quen với phương pháp đánh giá hoạt động hệ thống thông tin phương pháp phân tích tốn học, đặc biệt mơ hình liên quan đến hệ thống hàng đợi đơn, mạng hàng đợi, sở cho chế điều khiển luồng định tuyến mạng Trong phần tập lớn, sinh viên làm quen với phương pháp khác để đánh giá hiệu năng, phương pháp mơ Bài tập lớn có số mục đích sau: Kiểm nghiệm kết phân tích, đánh giá hệ thống dùng phương pháp phân tích tốn học phương pháp mơ Làm quen với công cụ mô NS-2 – công cụ mô mạng thông dụng Làm quen với hệ điều hành Linux lập trình môi trường GNU Phát triển kỹ làm việc theo nhóm Phát triển kỹ làm việc độc lập Phương thức chấm điểm Bài tập lớn: 30% Thi cuối kỳ: 70% Hướng dẫn thực Sinh viên chia thành nhóm, nhóm 03 người Số nhóm làm tập lớn phải nhau, nhóm phải làm việc độc lập với Lớp trưởng tổng hợp danh sách nhóm sau gửi cho thầy hướng dẫn để thầy duyệt Trong nhóm, sinh viên phải phân cơng cơng việc cụ thể, không trùng lặp với công việc sinh viên khác; thành viên nhóm tự phân công công việc với Lớp trưởng lấy danh sách nhóm sau gửi cho thầy giáo qua email tuần trước kết thúc học kỳ Sau thực hiện, nhóm viết báo cáo gửi cho thầy giáo Hạn nộp: Trước kết thúc học kỳ tuần Báo cáo phải có nội dung sau: o Họ tên sinh viên theo nhóm o Nhiệm vụ sinh viên tập lớn o Mơ tả q trình thực tập lớn o Kết cuối cùng: đưa kết cuối dạng số, đồ thị, nói rõ số lần thí nghiệm, thời gian chạy mơ phỏng, đặc biệt quan trọng kết luận rút từ kết thu Các nhóm chuẩn bị thuyết trình để báo cáo + demo khoảng 15 phút để báo cáo trước lớp Các bước tiến hành Bước - Chuẩn bị làm quen Tất nhóm thực bước sau trước vào tập lớn cụ thể: Cài đặt Linux Cygwin (nếu chưa có) Chú ý: Nên sử dụng hệ điều hành Linux Các hệ điều hành Linux thông dụng nay: o Fedora Core: http://rhold.fedoraproject.org/Download/ o Ubuntu: http://www.ubuntu.com/getubuntu/download o RedHat Trong website có hướng dẫn cài đặt, ý phải cài đặt chương trình dịch (GNU gcc, g++), coi tùy chọn tất hệ điều hành Linux, khơng quen cài với option full để hệ điều hành cài tất chương trình cần thiết Cài đặt NS-2: phiên với hướng dẫn cài đặt NS-2 download từ: http://www.isi.edu/nsnam/ns/ns-build.html Cách dễ cài đặt cài ns-allinone, cho phép cài NS-2 kèm với tiện ích Khi gặp vấn đề cài đặt, vào trang sau để tham khảo: http://www.isi.edu/nsnam/ns/ns-problems.html Hoặc đăng ký vào diễn đàn (mailing list) sau để trực tiếp hỏi trao đổi vấn đề gặp phải: http://www.isi.edu/nsnam/ns/ns-lists.html#faq Ngoài tham khảo đây: http://vntelecom.org/diendan/forumdisplay.php?f=53 Sau cài đặt thành công, bước sinh viên phải làm quen với cách sử dụng NS-2 Thực bước tài liệu hướng dẫn sử dụng sau: http://www.isi.edu/nsnam/ns/tutorial/index.html Ngồi sinh viên tham khảo thêm tài liệu sau: http://nile.wpi.edu/NS/ (cho người bắt đầu) http://www.isi.edu/nsnam/ns/ns-documentation.html (cho người sử dụng thành thạo) Các tài liệu tham khảo khác: o Để làm quen với phương pháp mô hệ thống hàng đợi mạng hàng đợi NS-2, xem chương 10 tài liệu sau: http://www-sop.inria.fr/maestro/personnel/Eitan.Altman/COURS-NS/n3.pdf o Các kiến thức mô mạng LAN (Ethernet) trình bày Chương tài liệu o Các kiến thức cấu trúc file kết NS, lọc kết cần thiết file kết trình bày 2.6 Chương tài liệu o Kiến thức đo băng thơng trình bày trong: http://www.isi.edu/nsnam/ns/tutorial/nsscript4.html o Kiến thức công cụ awk (để lọc số liệu) tham khảo trang 33, tài liệu: http://www-sop.inria.fr/maestro/personnel/Eitan.Altman/COURS-NS/n3.pdf o Rất nhiều kiến thức hữu ích NS-2 có tại: http://ns-2.blogspot.com/ Chú ý: Sinh viên mô tả cách thức thực bước báo cáo Bước - Thực tập lớn Sau cài đặt làm quen với NS, nhóm bắt đầu vào phần chọn thực tập sau đây: Bài 1: So sánh hiệu hệ thống hàng đợi M/M/1/ M/D/1/ Tạo kịch mô với hàng đợi đơn bắt luồng gói phát từ nguồn gửi đến đích Chiều dài hàng đợi vơ tận 1.1 Sử dụng kiến thức lý thuyết hàng đợi học, tính tốn tham số hàng đợi như: N, Nq, T, Tq trường hợp sau: o Trường hợp – Hàng đợi M/M/1: Nguồn phát gói với tốc độ tới tuân theo phân bố Poisson với tham số =120 (gói/s) Trạm phục vụ phục vụ gói với tốc độ phục vụ tuân theo phân bố Poisson, tải: =0,9 o Trường hợp – Hàng đợi M/D/1: Nguồn phát gói với tốc độ tới tuân theo phân bố Poisson với tham số =120 (gói/s) Trạm phục vụ phục vụ gói với tốc độ phục vụ cố định, tải: =0,9 1.2 So sánh tham số hàng đợi hai trường hợp Nếu giữ cho =120 cố định, vẽ đồ thị N, Nq, T, Tq phụ thuộc vào 1.3 Tạo hai kịch mô tương ứng với hai trường hợp 1.1 Chạy mô thời gian 2s o Vẽ đồ thị trễ cho gói độ dài hàng đợi tức thời nq(t) o Tính tham số trung bình N, Nq, T, Tq, so sánh với kết tính tốn 1.1 1.4 Tương tự 1.3, nhiên chạy mô khoảng thời gian 200s Có nhận xét kết thu từ 1.3 1.4? 1.5 Giả thiết hàng đợi có chiều dài hữu hạn L=10 gói Hãy lặp lại câu 1.3, vẽ đồ thị tốc độ tràn hàng đợi Bài 2: Đo hiệu mạng Ethernet Mạng Ethernet với tốc độ 10Mbit/s, sử dụng cấu hình kênh truyền bus (coaxial cable) Trễ truyền dẫn 10ms Biết đệm card mạng máy tính liên tục có gói gửi đến với tốc độ =200 gói/s, tuân theo phân bố Poisson Độ dài gói Ethernet tuân theo phân bố Poisson với chiều dài trung bình 1500bytes (Hình vẽ) Chạy mô dùng NS-2 khoảng thời gian 30s Đánh giá vẽ đồ thị tổng dung lượng băng thơng bị chiếm bus truyền gói b(t) tốc độ gói e(t) (tính gói/s) số máy tính nối mạng là: 2.1 máy 2.2 10 máy 2.3 Lặp lại mô trường hợp trễ truyền dẫn 1s Có nhận xét so với trường hợp đầu tiên? Giả thiết máy x phát gói đến đích máy y sinh viên tự chọn 2.4 Giả thiết độ dài gói Ethernet cố định L=1500bytes Lặp lại câu 2.2, so sánh kết với trường hợp độ dài gói thay đổi Bài 3: Đo hiệu hàng đợi M/M/1/K Cho hàng đợi đơn M/M/1/K hình vẽ 3.1 Sử dụng kiến thức hàng đợi học để tính xác suất gói lỗi Pe, N, Nq, T, Tq Các tham số hàng đợi sau: tốc độ trung bình gói đến hàng đợi =120gói/s; tải =0,9; độ dài hàng đợi K=6 3.2 Dùng NS-2 thiết lập kịch mô cho hàng đợi với tham số cho 3.1 o Tính tham số hiệu với thời gian chạy mô 200s o Vẽ đồ thị tốc độ gói e(t) (tính gói/s) độ dài hàng đợi tức thời nq(t) o So sánh kết luận so với kết tính tốn 3.1 3.3 Tương tự 3.2, nhiên với tham số =1 3.4 Tương tự 3.2, nhiên với K=10 Có kết luận kết thu được? 3.5 Tăng thời gian mô lên 600s, tính tham số hiệu Có nhận xét kết quả? Bài 4: Băng thơng công luồng Cho mạng gồm nút hình vẽ Nút 1, 2, 3, 4, hàng đợi đơn hoạt động theo nguyên tắc FIFO với độ lớn hàng đợi K=10 gói Có luồng liệu gửi qua mạng tương ứng (S1, D1), (S2, D2) (S3, D3) Trong Si nguồn phát liệu Di đích Đường nối L1 có dung lượng 1,5Mb/s trễ lan truyền 150ms; L2 có dung lượng 1Mb/s trễ lan truyền 100ms; đường L3 có dung lượng 0,6Mb/s, trễ lan truyền 50ms; L4 có dung lượng 0,5Mb/s, trễ lan truyền 100ms Các nguồn Si phát gói với độ dài cố định 125byte, khoảng thời gian gói tuân theo phân bố Poisson 4.1 Giả thiết băng thông đối đa tổng cộng mà luồng chiếm kênh truyền vật lý 95% dung lượng kênh truyền Tính tốc độ S1, S2, S3 (kbit/s) để luồng chia sẻ băng thông kênh truyền theo nguyên lý công cực đại - cực tiểu (max – fairness) 4.2 Dựng kịch mô mạng với tốc độ luồng S1, S2, S3 tính tốn 4.1 Chạy mơ 100s 4.3 Vẽ đồ thị băng thông ri(t) mà luồng (S1, D1), (S2, D2) (S3, D3) sử dụng Vẽ đồ thị tốc độ gói ei(t) (số gói mất/đơn vị thời gian) luồng (S1, D1), (S2, D2) (S3, D3) nút 4.4 Thay luồng theo phân bố Poisson luồng TCP Lặp lại câu 4.3 Có nhận xét gì? Bài 5: Đo băng thông nhiều luồng lưu lượng gửi qua mạng gồm nhiều nút Cho mạng gồm nút hình vẽ Nút 1, 2, 3, 4, hàng đợi đơn hoạt động theo nguyên tắc FIFO với độ lớn hàng đợi K=5 gói Có luồng liệu gửi qua mạng tương ứng (S1, D1), (S2, D2) (S3, D3) Trong Si nguồn phát liệu Di đích Các nguồn Si phát gói với độ dài cố định 125byte, khoảng thời gian gói tuân theo phân bố Poisson với tốc độ trung bình: S1=500kbit/s, S2=300kbit/s, S3=500kbit/s Các đường nối nút mạng L1, L2, L3, L4, L5 có dung lượng trễ lan truyền 1Mb/s, 100ms 5.1 Dựng kịch mô để mô mạng Chạy mô vòng 100s, thời gian t=25s, đường liên kết L3 bị đứt, thời gian t=75s, đường L3 lại trở lại hoạt động bình thường 5.2 Vẽ đồ thị băng thông ri(t) mà luồng (S1, D1), (S2, D2) (S3, D3) sử dụng Vẽ đồ thị lưu lượng tổng cộng C1(t) liên kết L1 L3 5.3 Thay luồng S1, S2, S3 nguồn TCP Lặp lại 5.1, 5.2 Có nhận xét kết đo được? Bài 6: Kiểm tra giao thức định tuyến cách sử dụng NS-2 Cho mạng hình vẽ Các đường truyền vật lý nối nút mạng có trễ lan truyền 5ms Đặt giao thức định tuyến DV (distance vector) Gửi gói UDP từ nút A đến nút D với tốc độ 100 gói/s (chiều dài gói UDP lấy giá trị mặc định) Việc truyền gói từ A D thời gian 0,01 Mô kết thúc thời gian 1000 Tại thời gian 0,4 có đường kết nối vật lý bị đứt 6.1 Chạy nam để xem kết trường hợp: Kết nối đứt AE Kết nối đứt ED Trong trường hợp gói theo đường nào? Giải thích? 6.2 Lặp lại câu 6.1 với phương pháp định tuyến link state Gợi ý: phương thức định http://isi.edu/nsnam/ns/doc/node309.html tuyến tham khảo tại: Bài 7: Kiểm tra thuật toán điều khiển luồng sử dụng TCP TCP (Transmission Control Protocol) giao thức cho phép truyền liệu cách tin cậy máy tính TCP dựa vào phương pháp điều khiển luồng theo cửa sổ trượt Mặt khác, UDP giao thức không đưa chế truyền tin cách tin cậy, nhiên UDP lại có đặc điểm đơn giản, trễ truyền liệu nhỏ, hiệu suất truyền lớn nên thích hợp cho ứng dụng thời gian thực Một câu hỏi đặt truyền TCP UDP mạng Internet giao thức chia sẻ băng thông nào, hoạt động chúng trường hợp mạng xảy tắc nghẽn Bài tập cho phép sinh viên khảo sát trả lời câu hỏi thông qua bước sau: Tạo mạng cần mô sử dụng NS-2 giống hình vẽ Tạo kết nối TCP UDP sử dụng nguồn/đích TCP nguồn/đích UDP Nguồn TCP sử dụng TCP Reno (TCP Reno phiên TCP hỗ trợ NS-2) Thiết lập cửa sổ chống tắc nghẽn tối đa (maximal congestion window size) luồng TCP 32 gói Kích thước gói UDP TCP 512 bytes Chạy mô 200s Các nguồn UDP TCP phát gói liên tục Luồng UDP có tốc độ phát 512kbit/s (sử dụng nguồn CBR) 7.1 Chạy mơ đo băng thơng trung bình luồng TCP (băng thơng trung bình tính bằng: Số byte truyền luồng TCP/thời gian mô phỏng) 7.2 Lặp lại thí nghiệm 7.1 trường hợp tốc độ phát luồn UDP Mbit/s, Mbit/s, Mbit/s 4Mbit/s 7.3 Vẽ đồ thị thể băng thông TCP so sánh với băng thông UDP 7.4 Trong trường hợp tốc độ luồng UDP 500kbit/s 4Mbit/s, vẽ kích thước cửa sổ trượt “congestion window” TCP (trục tung: kích thước cửa sổ, trục hồnh: thời gian) 7.5 Có kết luận kích thước Congestion Window băng thông luồng TCP trường hợp tải UDP xét 7.6 Thay đổi kích thước cửa sổ trượt tối đa lên 64 gói 128 gói, tốc độ phát luồng UDP Mbps, lặp lại câu 8.1 Có nhận xét từ kết quả? 7.7 Tạo thêm luồng TCP với nguồn gắn vào nút số đích gắn vào nút số Vẽ đồ thị băng thông cho luồng TCP luồng UDP trường hợp: (1) luồng TCP bắt đầu vào thời điểm; (2) luồng TCP bắt đầu vào thời điểm khác Có nhận xét từ kết quả? Chú ý: cách thiết lập luồng liệu sử dụng nguồn TCP UDP tham khảo đây: http://pages.cpsc.ucalgary.ca/~caox/441s05/sample.tcl ... Sinh viên mô tả cách thức thực bước báo cáo Bước - Thực tập lớn Sau cài đặt làm quen với NS, nhóm bắt đầu vào phần chọn thực tập sau đây: Bài 1: So sánh hiệu hệ thống hàng đợi M/M/1/ M/D/1/ Tạo... mạng Internet giao thức chia sẻ băng thông nào, hoạt động chúng trường hợp mạng xảy tắc nghẽn Bài tập cho phép sinh viên khảo sát trả lời câu hỏi thông qua bước sau: Tạo mạng cần mô sử dụng... thiết hàng đợi có chiều dài hữu hạn L=10 gói Hãy lặp lại câu 1.3, vẽ đồ thị tốc độ tràn hàng đợi Bài 2: Đo hiệu mạng Ethernet Mạng Ethernet với tốc độ 10Mbit/s, sử dụng cấu hình kênh truyền bus