- NS hỗ trợ các giao thức mạng như là TCP và UDP, các đáp ứng nguồn lưu lượng như là Drop Tail, RED và CBQ, các thuật toán định tuyến như là Dijkstra, … - Ngoài ra NS cũng bổ sung việc t
Trang 1Bài 18-19 Thực hành Kỹ thuật Viễn thông
Tài liệu cho ĐH PTIT ngành QTKD và CNTT
ThS Nguyễn Thị Thu Hằng
Bộ môn Mạng viễn thông ĐT: 84-(04)-33519387 http://ptit.edu.vn ptitthuhang@yahoo.com hangntt@ptit.edu.vn http://360.yahoo.com/bomonmangvt1
Häc viÖn c«ng nghÖ B u chÝnh viÔn th«ng
KHOA VIỄN THÔNG I
Giới thiệu chung
1 Giới thiệu và làm quen với NS
2 Thực hành TCP/IP trên nền NS
3 IP QoS
4 IP QoS nâng cao
- NS là chương trình mô phỏng hoạt động của mạng IP, được phát triển bởi dự
án VINT tại Đại học Berkeley
- NS hỗ trợ các giao thức mạng như là TCP và UDP, các đáp ứng nguồn lưu
lượng như là Drop Tail, RED và CBQ, các thuật toán định tuyến như là Dijkstra,
…
- Ngoài ra NS cũng bổ sung việc truyền đa điểm (multicasting) và một số giao
thức lớp MAC cho việc mô phỏng mạng LAN
- Hiện nay thường sử dụng NS phiên bản 2 (ns2) Đây là chương trình hướng
đối tượng, được viết trên nền C++ và OTcl
- NS mô phỏng các sự kiện xảy ra theo lịch trình, có chứa các thư viện về các
phần tử mạng và các thư viện đơn vị cho việc thiết lập mạng
- Để thiết lập mô phỏng, người sử dụng phải viết một chương trình lệnh Otcl,
xây dựng cấu trúc mạng, ghép các hàm chức năng trong thư viện, điều khiển
nguồn lưu lượng bắt đầu hay dừng việc truyền các gói tin theo một kịch bản sự
kiện đã định sẵn
Làm quen với NS-2 (Network Simulator
2)
Quan điểm của người dùng về NS2
Ph©n tÝch
(vÝ dô: awk)
Hien thÞ kÕt qu¶
ph©n tÝch
(vÝ dô xgraph )
KÕt qu¶ m«
pháng
NAM Network Animator
OTcl: Bé phiªn dÞch Tcl víi më réng OO
Th− viÖn m« pháng NS
• C¸c chñ thÓ lËp tr×nh sù kiÖn
• C¸c chñ thÓ thµnh phÇn m¹ng
• C¸c modun trî gióp thiÕt lËp m¹ng
M· OTcl
Ch−¬ng tr×nh m« pháng
Làm quen với NS-2 (Network Simulator 2)
Trang 2Tớnh hai mặt (C++ và Otcl) của NS2:
Làm quen với NS-2 (Network Simulator
2)
Các đối t−ợng
thuần C++
Các đối t−ợng từng phần C++/OTcl
ns
Các đối t−ợng thuần OTcl
Ưu điểm:
- Mụ phỏng nhanh, dễ cấu hỡnh bằng cỏch dựng hai ngụn ngữ lập trỡnh thụng dụng là OTcl
và C++;
- Đó thực hiện sẵn rất nhiều giao thức;
- Nổi tiếng và được ỏp dụng ở nhiều trường đại học trờn thế giới;
- Được thừa nhận rộng rói trong cộng đồng mạng và cú số lượng người sử dụng rất lớn;
- Cho phộp mụ hỡnh húa cỏc giao thức mạng, mụ phỏng cỏc mạng cú dõy, khụng dõy và
vệ tinh;
- Hỗ trợ cỏc khả năng thống kờ, bỏm vết, cỏc mụ hỡnh lỗi, v.v;
- Miễn phớ và cú mó nguồn mở nờn dễ dàng sửa đổi, cập nhật và bổ sung.
Nhược điểm:
- Mất nhiều thời gian để làm quen;
- Mó nguồn chưa được hướng dẫn đầy đủ.
Làm quen với NS-2 (Network Simulator 2)
Cỏc ưu, nhược điểm của NS2
Phương phỏp thực hiện:
- Cỏc mỏy tớnh trong phũng thực hành được cài đặt sẵn mụi trường mụ phỏng NS
2.28, chạy trờn nền Cygwin, trờn HĐH Windows;
- Nhúm gồm 2 - 3 sinh viờn trờn một mỏy tớnh PC;
Yờu cầu đối với sinh viờn:
- Cú kĩ năng làm việc với mỏy tớnh, hệ điều hành Windows và mụi trường Cygwin;
- Cú kiến thức căn bản về ngụn ngữ kịch bản Tcl, chương trỡnh minh họa NAM và
một số cụng cụ phõn tớch số liệu như xgraph, tracegraph,
Cỏc bài thực hành
Tiến trỡnh thực hành:
1 Sinh viờn (SV) đọc để hiểu rừ mục đớch và những điểm then chốt trong cơ
sở lớ thuyết của bài;
2 GV hướng dẫn cho chạy một chương trỡnh vớ dụ (demo version) để giới thiệu khỏi quỏt ý tưởng của bài;
3 GV trỡnh bày kịch bản thực hành và những yờu cầu cụ thể đối với bài;
4 SV lần lượt làm theo cỏc bước thực hành nờu trong bài và ghi lại đầy đủ cỏc nội dung thống kờ theo kết quả của chương trỡnh;
5 Phần mở rộng và nõng cao (dành cho cỏc SV đó hoàn thành cỏc nội dung chớnh và muốn phỏt triển kịch bản để hiểu rừ hơn chương trỡnh);
6 Về nhà: SV xử lớ số liệu thống kờ và viết bỏo cỏo thực hành để bảo vệ
Cỏc bài thực hành
Trang 3Bài 1: Thực hành cơ bản về mạng và công nghệ TCP/IP
Các phần tử của mạng IP: khái niệm nút, liên kết, luồng, bộ đệm, v.v
Khảo sát và so sánh các đặc tính của lưu lượng TCP và UDP
Bài 2: QoS trong mạng IP
Khảo sát các tham số QoS cơ bản trong mạng IP:
thụng lượng, trễ, jitter, tỷ lệ mất gúi
Tính toán các tham số bằng tay trên cơ sở Trace File
Phân tích và đánh giá các tham số QoS với sự trợ giúp của công cụ
Tracegraph
Cỏc bài thực hành xõy dựng trong đề tài
Bài số 1: Thực hành cơ bản về mạng và cụng nghệ TCP/IP
- Tạo topo mạng
- Thiết lập các thông số (của nút, liên kết, luồng, bộ đệm, v.v.)
- Tạo các nguồn lưu lượng
- Lập lịch sự kiện
- Khảo sát và so sánh các đặc tính của lưu lượng TCP và UDP
0
1
2
5
3
4
2M, 5ms
2M, 5ms
2M, 10ms
2M, 5ms
2M, 5ms Q=10
k
CBR/UDP NULL
Thiết lập topo mạng và lưu lượng CBR (bước 2-3-4) trong
bài thực hành: hai nỳt n0, n1, liờn kết n0-n1, lưu lượng
chạy từ n0 đến n1
Băng thụng = 1Mb/s
Kớch thước gúi = 500Byte
Khoảng cỏch giữa cỏc gúi = 0.005s
ặ Thay đổi từng thụng số trờn để thấy được tỏc động của
mỗi thụng số đến lưu lượng trong mạng
Bài số 1: Thực hành cơ bản về mạng và cụng
nghệ TCP/IP
CBR/UDP
NULL
Tạo topo mạng gồm 3 nỳt và 2 liờn kết, lưu lượng cbr chạy từ n0 đến n2 như hỡnh vẽ:
Tỡm đường tối ưu (lưu lượng CBR): Gúi tin đi từ 0 đến 2
cú 2 đường:
0-1-2
0-2
Bài số 1: Thực hành cơ bản về mạng và cụng nghệ TCP/IP
CBR/UD P
NULL
CB R/UD P
NULL
Trang 4 Thay đổi tham số mạng hoặc lưu lượng để tạo nghẽn
mạng tại n1Æ cách khắc phục khi có gói tràn
Bài số 1: Thực hành cơ bản về mạng và công
nghệ TCP/IP
CBR/UDP
NULL
nghẽn, gói rơi
sát lưu lượng FTP/TCP màu xanh
1 Giám sát, mô tả hoạt động của TCP
2 Thay đổi các giá trị cửa sổ để hiểu cách thức điều khiển cửa sổ W=0, 1, 2, 4, 16, 64, 128 Nhận xét với mỗi trường hợp
Bài số 1: Thực hành cơ bản về mạng và công nghệ TCP/IP
0
1
2
5
3
4
2M, 5ms
2M, 5ms
2M, 10ms
2M, 5ms
2M, 5ms Q=10
k
CBR/UDP NULL
0
1
2
5
3
4
2M, 5ms
2M, 5ms
2M, 10ms
2M, 5ms
2M, 5ms Q=10
Bài 2: QoS trong mạng IP (phần cơ sở)
Tìm hiểu ý nghĩa và cách tính các tham số QoS cơ bản trong mạng
IP:
Jitter tỷ lệ mất gói
Khảo sát cấu trúc của File bám vết mô phỏng (Trace File)
Tự tính toán các tham số QoS trên cơ sở Trace File
0
2
5
4
10
7
9
8
1
CBR2/UDP2
CBR1/UDP1
2M, 2ms
2M, 2ms
2M, 2ms
2M, 2ms
2M, 2ms
2M, 2ms
2M, 2ms
2M, 2ms
BW 2-3 =2M, D 2-3 =10ms BW 2-3 =2M, D 2-3 =10ms
Bài 2: QoS trong mạng IP (phần nâng cao)
Khảo sát các tham số QoS cơ bản trong mạng IP trong trừơng hợp mạng có topo phức tạp với nhiều loại nguồn lưu lượng khác nhau
Phân tích và đánh giá các tham số QoS với sự trợ giúp của công cụ phần Tracegraph
Trang 5NS2 Version 2.1b7a (Cont.)
NS Directory Structure
ns-allinone 2.28
tcl
box
C++ source code, header file
tcl
mobile satellite routing lib
OTcl source
…
xgraph
Tham khảo
[1] W Richard Steven, TCP/IP Illustrated Volume 1-The
Protocols, Addison WesleyLongman, Inc, 1994
[2] Kavin Fall, Kannan Varadhan, The NS manual,
http://www.isi.edu/nsnam/ns/, 13/12/2003
[3] Jae Chung & Mark Claypool, Giới thiệu chung về NS bằng
các ví dụ, http://nile.wpi.edu/NS/
[7] Tài liệu thực hành do Bộ môn Mạng cung cấp