Tải bản đầy đủ
XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG

XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG

Tải bản đầy đủ

mô phỏng TCP, định tuyến, và các giao thức multicast trên các mạng có dây hoặc
không dây và cả vệ tinh. Ns2 hỗ trợ các đặc tính như các đường kết nối điểmđiểm, mạng LAN, định tuyến unicast, định tuyến multicast, các giao thức vận
chuyển như UDP, TCP, các giao thức lớp ứng dụng, mobile IP, các mạng di động
ad-hoc……
NS-2 là ngôn ngữ hướng đối tượng được xây dựng trên 2 ngôn ngữ là C++
và Tcl còn được gọi là Otcl. Các đối tượng C++ lập thành mặt phẳng dữ liệu
trong Ns2 và các đối tượng OTcl như mặt phẳng điều khiển. Sẽ có các đối tượng
liên kết TclCL để kết nối với các kiểu đối tượng khác nhau. Một bài toán mô
phỏng thường đi theo các bước sau đây:
-Tạo lịch trình các sự kiện.
- Khởi động dấu vết (trace) bất kỳ.
- Tạo các đối tượng node và đường liên kết mạng.
- Thiết lập định tuyến unicast hay multicast.
- Cài các module đo lỗi bất kỳ.
- Khởi tạo các giao thức lớp vận chuyển như UDP hay TCP.
- Khởi tạo các bộ phát sinh lưu lượng cho TCP hoặc UDP
- Kết hợp giao thức lớp ứng dụng với giao thức lớp vận chuyển đã chọn.
Thường đa số các thành phần bên được sử dụng trong NS-2 là các đối
tượng node và các đối tượng đường kết nối. Các đối tượng node bao gồm các
nhân tố(agent) và các bộ phân lớp. Các nhân tố thường là các điểm cuối giao
thức và các bộ phân lớp thường là các bộ giải trộn gói tin. Các đối tượng đường
liên kết thường gói gọn 1 hàng đợi, trễ và có thể là kiểm tra thời gian TTL (Time
To Live).

55

Hình 4.1: Cấu trúc node Unicast và node Multicast
4.2 Các phần mền dùng kết hợp với ns2
4.2.1 Công cụ đồ hoạ NAM
Khi mô phỏng kết thúc, nếu các script Tcl (OTcl) đầu vào yêu cầu thì NS sẽ
tạo ra các file text lưu chi tiết dữ liệu mô phỏng. Dữ liệu đó có thể được dùng cho
việc phân tích hay được dùng như đầu vào cho các công cụ trình diễn mô phỏng
đồ họa NAM.
NAM thực hiện lại những sự kiện từ file lần vết nam (nam tracefile). File
này có thể là khổng lồ khi thời gian mô phỏng lớn và sự kiện xảy ra nhiều. Vì
thế, phải hết sức cẩn thận. Ngoài ra, cần chú ý rằng các thông tin đồ họa lại
không được dùng để phân tích mô phỏng một cách chính xác.
Có thể tóm tắt các tính năng của NAM như sau:
- Cung cấp trình diễn ảo cho mạng đã được tạo.
- Có thể thi hành trực tiếp từ kịch bản Tcl.
- NAM có giao diện đồ hoạ bắt mắt của CD player với các điều khiển bao
gồm play (chạy), stop (ngưng), fast forward (chạy tiếp nhanh), rw (lùi lại), pause
(tạm ngưng), điều khiển tốc độ trình diễn và tính năng giám sát packet.
- Biểu diễn thông tin như throughput (thông lượng), số packet trên từng
link.
- Cung cấp giao diện rê và thả cho việc tạo ra các topology (mô hình).
Chạy NAM

56

Chạy NAM trong Command Line:
+ $nam –a nam_trace_file.nam
+ Chạy nam trong kịch bản ns-2:
+ Proc finish{} {
……
exec nam –a nam_trace_file.nam &
exit }
+ Các tuỳ chọn khi chạy NAM:
+ nam [-a -S -s –f init_script -d display -j jump -r rate -k initPort] tracefiles
+ -a tạo mới một instance của nam
+ -S

đồng bộ hóa X

+ -s

đồng bộ hoá nhiều trace (nhiều lần vết)
Cửa sổ NAM Console
Sau khi khởi động NAM, cửa sổ NAM console xuất hiện. Đây chính là một

instance của NAM. Một cửa sổ NAM console (hay một instance của NAM) có
thể có nhiều cửa sổ minh hoạ NAM. Trong cửa sổ NAM console có hai menu
chính ‘File’ và ‘Help’.
- ‘File’: dưới File có lệnh ‘New’, ‘Open’, ‘WinList’ và ‘Quit’
'New' tạo mới một topology ns dùng chương trình soạn thảo NAM
‘Open’ mở các file trace đã tồn tại (mở cửa sổ minh họa nam)
‘WinList’ mở ra cửa sổ liệt kê tên của tất cả các file trace đang mở
‘Quit’ thoát nam
‘Help’: chỉ là các trợ giúp đơn giản và lệnh để xem phiên bản, thông tin về
bản quyền
4.2.2 Cửa sổ minh hoạ NAM
Khi một file trace được tải vào nam (bằng lệnh ‘Open’ hay từ command
line) thì một cửa sổ minh hoạ NAM sẽ xuất hiện. Giao diện chính có menu bar
(thanh lệnh chính), control bar (thanh điền khiển), main display (màn hình minh
họa chính). Ngoài ra, khi lựa chọn một số chức năng từ menu hay bằng cách
click chuột thì còn có thêm các cửa sổ con xuất hiện.

57

Hình 4.2: Mô tả các công cụ của NAM
- Menu bar: dưới menu bar có 3 lệnh con ‘File’, ‘Views’, ‘Analysis’
+ ‘File’
+ ‘Save layout’ lưu tất cả các sơ đồ mạng hiện tại vào file
+ ‘Print’ in tất cả các sơ đồ mạng hiện tại
+ ‘Views’
+ ‘New view’ button tạo ra khung nhìn mới cho cùng một minh họa. Tất cả
các minh hoạ sẽ chạy đồng bộ.
+ ‘Show monitor’ dạng checkbox (dùng để kiềm tra). Nếu được check (usr
click chọn) thì một cửa sổ con Monitors (Giám sát) xuất hiện. Các monitors sẽ
được thể hiện.
- ‘Show autolayout’ dạng checkbox. Nếu được check thì một cửa con Auto
layout (sơ đồ) xuất hiện. Có các box nhập liệu và button điều chỉnh sơ đồ tự
động. Checkbox này không thể mở nếu ta dùng các sơ đồ liên kết có hướng.
- ‘Show annotation’ dạng checkbox. Nếu được check thì một cửa sổ con
Annotation (Chú thích) xuất hiện chú thích các sự kiện đang diễn ra theo thứ tự
thời gian tăng dần.
+ ‘Analysis’
58