Bài tập lớn môn Cơ sở mạng thông tin

TCP (Transmission Control Protocol) là giao thức cho phép truyền dữ liệu một cách tin cậy giữa 2 máy tính bất kỳ. 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 là giao thức không đưa ra các cơ chế truyền tin một cách tin cậy, tuy nhiên UDP lại có đặc điểm là đơn giản, trễ truyền dữ liệu nhỏ, hiệu suất truyền lớn nên thích hợp cho các ứng dụng thời gian thực. Một câu hỏi đặt ra là khi truyền cả TCP và UDP trên mạng Internet thì 2 giao thức trên chia sẻ băng thông như thế nào, hoạt động của chúng ra sao trong trường hợp mạng xảy ra tắc nghẽn. Bài tập này cho phép sinh viên khảo sát và trả lời các câu hỏi trên thông qua các bước như sau:  Tạo ra một mạng cần mô phỏng sử dụng NS-2 giống như trên hình vẽ. Tạo ra 2 kết nối TCP và UDP sử dụng nguồn/đích TCP và nguồn/đích UDP. Nguồn của TCP sử dụng TCP Reno (TCP Reno là một phiên bản của TCP đã được hỗ trợ trong NS-2).  Thiết lập cửa sổ chống tắc nghẽn tối đa (maximal congestion window size) của luồng TCP là 32 gói.  Kích thước các gói UDP và TCP là 512 bytes.  Chạy mô phỏng trong 200s.  Các nguồn UDP và TCP đều phát gói liên tục. Luồng UDP có tốc độ phát là 512kbit/s (sử dụng nguồn CBR)

pdf8 trang | Chia sẻ: hachi492 | Ngày: 06/01/2022 | Lượt xem: 396 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài tập lớn môn Cơ sở mạng thông tin, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
BÀI TẬP LỚN MÔN CƠ SỞ MẠNG THÔNG TIN Dành cho SV K52 chuyên ngành ĐTVT – Trường ĐHBK Hà nội Giảng viên: PGS.TS. Nguyễn Hữu Thanh, Email: thanhnh@mail.hut.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 của một hệ thống thông tin bằng phương pháp phân tích toán học, đặc biệt là các mô hình liên quan đến hệ thống hàng đợi đơn, mạng hàng đợi, cơ sở cho các cơ chế điều khiển luồng và định tuyến trong mạng. Trong phần bài tập lớn, sinh viên sẽ được làm quen với một phương pháp khác để đánh giá hiệu năng, đó là phương pháp mô phỏng. Bài tập lớn này có một số mục đích sau:  Kiểm nghiệm các kết quả phân tích, đánh giá hệ thống khi dùng phương pháp phân tích toán học và phương pháp mô phỏng.  Làm quen với công cụ mô phỏng NS-2 – công cụ mô phỏng mạng thông dụng nhất hiện nay.  Làm quen với hệ điều hành Linux và lập trình trong môi trường GNU.  Phát triển kỹ năng làm việc theo nhóm.  Phát triển kỹ năng 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 hiện  Sinh viên chia thành nhóm, mỗi nhóm 05 người.  Cho phép tối đa 02 nhóm được chọn cùng một bài tập lớn, các nhóm phải làm việc độc lập với nhau.  Trong mỗi nhóm, mỗi sinh viên phải được phân công một công việc cụ thể, không trùng lặp với công việc của sinh viên khác; các thành viên trong nhóm tự phân công công việc với nhau.  Lớp trưởng lấy danh sách các nhóm sau đó gửi cho thầy giáo qua email.  Sau khi thực hiện, mỗi nhóm viết một báo cáo gửi cho thầy giáo. Hạn nộp: Trước khi kết thúc học kỳ 2 tuần. Báo cáo phải có các nội dung sau: o Họ tên của các sinh viên theo nhóm. o Nhiệm vụ của từng sinh viên trong bài tập lớn. o Mô tả quá trình thực hiện bài tập lớn. o Kết quả cuối cùng: đưa ra kết quả cuối cùng dướ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 là kết luận rút ra từ các kết quả thu được.  Các nhóm chuẩn bị một bài thuyết trình để báo cáo + demo trong khoảng 15 phút để báo cáo trước lớp. Các bước tiến hành Bước 1 - Chuẩn bị và làm quen Tất cả các nhóm đều thực hiện các bước sau trước khi đi vào từng bài tập lớn cụ thể:  Cài đặt Linux hoặc 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 hiện nay: o Fedora Core: o Ubuntu: o RedHat Trong các website đều có hướng dẫn cài đặt, chú ý phải cài đặt cả chương trình dịch (GNU gcc, g++), được coi là tùy chọn trong tất cả các hệ điều hành Linux, nếu không quen có thể cài với option là full để hệ điều hành cài tất cả các chương trình cần thiết.  Cài đặt NS-2: phiên bản mới nhất cùng với hướng dẫn cài đặt của NS-2 có thể download từ: Cách dễ nhất khi cài đặt là cài bản ns-allinone, bản này cho phép cài NS-2 kèm với các tiện ích. Khi gặp vấn đề khi cài đặt, có thể vào trang sau để tham khảo: Hoặc đăng ký vào các diễn đàn (mailing list) sau để trực tiếp hỏi và trao đổi các vấn đề gặp phải: Ngoài ra có thể tham khảo tại đây:  Sau khi cài đặt thành công, trong bước tiếp theo sinh viên phải làm quen với cách sử dụng NS-2. Thực hiện các bước trong tài liệu hướng dẫn sử dụng sau: Ngoài ra sinh viên cũng có thể tham khảo thêm các tài liệu sau: (cho người mới bắt đầu) (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ô phỏng hệ thống hàng đợi và mạng hàng đợi trong NS-2, xem chương 10 trong tài liệu sau: o Các kiến thức về mô phỏng mạng LAN (Ethernet) cũng được trình bày trong Chương 8 tài liệu trên. o Các kiến thức về cấu trúc file kết quả của NS, lọc các kết quả cần thiết trong file kết quả được trình bày trong 2.6 và Chương 3 của tài liệu trên. o Kiến thức về đo băng thông được trình bày trong: o Kiến thức về công cụ awk (để lọc số liệu) được tham khảo tại trang 33, tài liệu: Chú ý: Sinh viên không phải mô tả cách thức thực hiện bước 1 trong báo cáo. Bước 2 - Thực hiện bài tập lớn Sau khi cài đặt và làm quen với NS, các nhóm bắt đầu đi vào phần chính là chọn và thực hiện một trong các bài tập sau đây: Bài 1: So sánh hiệu năng giữa 2 hệ thống hàng đợi M/M/1/ và M/D/1/. Tạo ra kịch bản mô phỏng với một hàng đợi đơn bắt luồng gói phát ra từ nguồn và gửi đến đích. Chiều dài hàng đợi là vô tận. 1.1. Sử dụng kiến thức về lý thuyết hàng đợi đã được học, tính toán các tham số của hàng đợi như: N, Nq, T, Tq trong các trường hợp sau: o Trường hợp 1 – Hàng đợi M/M/1: Nguồn phát ra các 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ụ các 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 2 – Hàng đợi M/D/1: Nguồn phát ra các 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ụ các gói với tốc độ phục vụ cố định, tải: =0,9. 1.2. So sánh các tham số hàng đợi trong 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 ra hai kịch bản mô phỏng tương ứng với hai trường hợp trong 1.1. Chạy mô phỏng trong thời gian 2s. o Vẽ đồ thị trễ  cho từng gói và độ dài hàng đợi tức thời nq(t). o Tính các tham số trung bình N, Nq, T, Tq, so sánh với các kết quả tính toán trong 1.1. 1.4. Tương tự như 1.3, tuy nhiên chạy mô phỏng trong khoảng thời gian 200s. Có nhận xét gì về các kết quả thu được từ 1.3 và 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 năng của 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 rằng bộ đệm card mạng của các máy tính đều liên tục có các gói được gửi đến với tốc độ như nhau =200 gói/s, tuân theo phân bố Poisson. Độ dài của gói Ethernet tuân theo phân bố Poisson với chiều dài trung bình là 1500bytes (Hình vẽ). Chạy mô phỏng dùng NS-2 trong khoảng thời gian 30s. Đánh giá và vẽ đồ thị tổng dung lượng băng thông bị chiếm trên bus khi truyền gói b(t) và tốc độ mất gói e(t) (tính bằng gói/s) khi số máy tính nối mạng là: 2.1. 3 máy 2.2. 10 máy. 2.3. Lặp lại mô phỏng trên trong trường hợp trễ truyền dẫn 1s. Có nhận xét gì so với trường hợp đầu tiên? Giả thiết mỗi máy x sẽ phát gói đến một đích là máy y bất kỳ do sinh viên tự chọn. 2.4. Giả thiết độ dài gói Ethernet là cố định L=1500bytes. Lặp lại câu 2.2, so sánh kết quả với trường hợp độ dài gói thay đổi. Bài 3: Đo hiệu năng của hàng đợi M/M/1/K Cho hàng đợi đơn M/M/1/K như 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 như sau: tốc độ trung bình của 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 một kịch bản mô phỏng cho hàng đợi với các tham số đã cho trong 3.1. o Tính các tham số hiệu năng như trên với thời gian chạy mô phỏng 200s. o Vẽ đồ thị tốc độ mất gói e(t) (tính bằng gói/s) và độ dài hàng đợi tức thời nq(t). o So sánh và kết luận so với kết quả tính toán trong 3.1. 3.3. Tương tự như 3.2, tuy nhiên với tham số =1. 3.4. Tương tự như 3.2, tuy nhiên với K=10. Có kết luận gì về các kết quả thu được? Bài 4: Băng thông công bằng giữa các luồng Cho một mạng gồm 5 nút như hình vẽ. Nút 1, 2, 3, 4, 5 là các 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ó 3 luồng dữ liệu được gửi qua mạng tương ứng là (S1, D1), (S2, D2) và (S3, D3). Trong đó Si là nguồn phát dữ liệu còn Di là đích. Đường nối L1 có dung lượng 1,5Mb/s trễ lan truyền 150ms; L2 có dung lượng là 1Mb/s trễ lan truyền 100ms; đường L3 có dung lượng 0,6Mb/s, trễ lan truyền 50ms; và L4 có dung lượng 0,5Mb/s, trễ lan truyền 100ms. Các nguồn Si đều phát gói với độ dài cố định là 125byte, khoảng thời gian giữa các 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à các luồng được chiếm trên một kênh truyền vật lý là bằng 95% dung lượng kênh truyền. Tính tốc độ S1, S2, S3 (kbit/s) để 3 luồng trên chia sẻ băng thông kênh truyền theo nguyên lý công bằng cực đại - cực tiểu (max – min fairness). 4.2. Dựng kịch bản mô phỏng mạng trên với tốc độ các luồng S1, S2, S3 đã được tính toán trong 4.1. Chạy mô phỏng trong 100s. 4.3. Vẽ đồ thị băng thông ri(t) mà các luồng (S1, D1), (S2, D2) và (S3, D3) sử dụng. Vẽ đồ thị tốc độ mất gói ei(t) (số gói mất/đơn vị thời gian) của 3 luồng (S1, D1), (S2, D2) và (S3, D3) tại nút 3. Bà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. Cho một mạng gồm 5 nút như hình vẽ. Nút 1, 2, 3, 4, 5 là các 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ó 3 luồng dữ liệu được gửi qua mạng tương ứng là (S1, D1), (S2, D2) và (S3, D3). Trong đó Si là nguồn phát dữ liệu còn Di là đích. Các nguồn Si đều phát gói với độ dài cố định là 125byte, khoảng thời gian giữa các 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 giữa các nút mạng L1, L2, L3, L4, L5 đều có dung lượng và trễ lan truyền bằng nhau và bằng 1Mb/s, 100ms. 5.1. Dựng kịch bản mô phỏng để mô phỏng mạng trên. Chạy mô phỏng trong vòng 100s, tại thời gian t=25s, đường liên kết L3 bị đứt, tại 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à các luồng (S1, D1), (S2, D2) và (S3, D3) sử dụng. Vẽ đồ thị lưu lượng tổng cộng C1(t) tại liên kết L1 và L3. 5.3. Vẽ đồ thị tốc độ mất gói e(t) tại nút 2. Bài 6: Kiểm tra giao thức định tuyến theo vector khoảng cách (distance vector routing) bằng cách sử dụng NS-2 Cho mạng như trên hình vẽ. Các đường truyền vật lý nối giữa các nút mạng đều có trễ lan truyền là 5ms. Đặt giao thức định tuyến là DV (distance vector). Gửi các gói UDP từ nút A đến nút D với tốc độ 100 gói/s (chiều dài một gói UDP lấy giá trị mặc định). Việc truyền gói từ A  D bắt đầu từ thời gian 0,01. Mô phỏng kết thúc ở thời gian 1000. Tại thời gian 0,4 có một đường kết nối vật lý bị đứt. Chạy nam để xem kết quả trong 2 trường hợp:  Kết nối đứt là AE  Kết nối đứt là ED Trong 2 trường hợp trên thì các gói sẽ đi theo đường nào? Giải thích? Bài 7: Kiểm tra thuật toán điều khiển luồng sử dụng TCP TCP (Transmission Control Protocol) là giao thức cho phép truyền dữ liệu một cách tin cậy giữa 2 máy tính bất kỳ. 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 là giao thức không đưa ra các cơ chế truyền tin một cách tin cậy, tuy nhiên UDP lại có đặc điểm là đơn giản, trễ truyền dữ liệu nhỏ, hiệu suất truyền lớn nên thích hợp cho các ứng dụng thời gian thực. Một câu hỏi đặt ra là khi truyền cả TCP và UDP trên mạng Internet thì 2 giao thức trên chia sẻ băng thông như thế nào, hoạt động của chúng ra sao trong trường hợp mạng xảy ra tắc nghẽn. Bài tập này cho phép sinh viên khảo sát và trả lời các câu hỏi trên thông qua các bước như sau:  Tạo ra một mạng cần mô phỏng sử dụng NS-2 giống như trên hình vẽ. Tạo ra 2 kết nối TCP và UDP sử dụng nguồn/đích TCP và nguồn/đích UDP. Nguồn của TCP sử dụng TCP Reno (TCP Reno là một phiên bản của TCP đã được hỗ trợ trong NS-2).  Thiết lập cửa sổ chống tắc nghẽn tối đa (maximal congestion window size) của luồng TCP là 32 gói.  Kích thước các gói UDP và TCP là 512 bytes.  Chạy mô phỏng trong 200s.  Các nguồn UDP và TCP đều phát gói liên tục. Luồng UDP có tốc độ phát là 512kbit/s (sử dụng nguồn CBR) 7.1. Chạy mô phỏng và đo băng thông trung bình của luồng TCP (băng thông trung bình được tính bằng: Số byte được truyền đi của luồng TCP/thời gian mô phỏng) 7.2. Lặp lại thí nghiệm 7.1. trong trường hợp tốc độ phát của luồn UDP là 1 Mbit/s, 2 Mbit/s, 3 Mbit/s và 4Mbit/s. 7.3. Vẽ đồ thị thể hiện băng thông của TCP so sánh với băng thông của UDP. 7.4. Trong trường hợp tốc độ của luồng UDP là 500kbit/s và 4Mbit/s, vẽ kích thước cửa sổ trượt “congestion window” của TCP (trục tung: kích thước cửa sổ, trục hoành: thời gian). 7.5. Có kết luận gì về kích thước của Congestion Window và băng thông của luồng TCP trong các trường hợp tải UDP đã xét. Chú ý: cách thiết lập các luồng dữ liệu sử dụng nguồn TCP và UDP có thể tham khảo tại đây:

Các file đính kèm theo tài liệu này:

  • pdfbai_tap_lon_mon_co_so_mang_thong_tin.pdf
Tài liệu liên quan