Các mô hình thông lượng được mô phỏng trong NS2 (hình 12) gồm hai loại bộ
tạo thông lượng (traffic generator) và các ứng dụng mô phỏng (simulated application) [31]. Các các bộ tạo thông lượng sử dụng giao thức UDP để gửi các gói tin và các ứng dụng mô phỏng sử dụng giao thức TCP.
• Bộ tạo thông lượng lũy thừa: tạo thông lượng theo một phân bố bật-tắt lũy thừa. Các gói tin có kích thước không đổi. Bộ tạo thông lượng lũy thừa có thể cấu hình để hoạt động như một quá trình Poisson.
• Bộ tạo thông lượng Parero: tạo thông lượng theo phân bố bật-tắt Pareto. Các nguồn này có thể được dùng để tạo các thông lượng kết hợp thể hiện sự phụ
thuộc.
• Bộ tạo thông lượng CBR: tạo thông lượng theo một tốc độ không đổi, xác định. Kích thước gói tin là không đổi. Ngoài ra, một số các dao động ngẫu nhiên được thực hiện giữa các quãng khởi đầu của các gói tin.
• Bộ tạo thông lượng theo file trace: tạo thông lượng theo một file vết (trace file), thu được từ mạng thực, xác định thời gian phát và ngừng phát gói tin cùng các thông số khác.
Các ứng dụng mô phỏng gồm hai loại: Telnet và FTP.
3.4 Tổng quan quá trình mô phỏng
Tổng quan quá trình mô phỏng mạng MANET trong NS2 được thể hiện trong hình 13. Quá trình bao gồm việc tạo hai tệp đầu vào cho NS2:
• Tệp ngữ cảnh (scenario file): là file kịch bản mô tả khuôn dạng di chuyển của các nút.
• Tệp truyền thông (communication file): là file kịch bản mô tả các truyền thông trong mạng
Khi chương trình mô phỏng được cho chạy, bộ mô phỏng ghi nhận các hoạt
động mạng tại các lớp trong một file vết (trace file). Trước khi mô phỏng, các tham số cần cho việc ghi tệp vết được lựa chọn. Tệp vết sau đó có thểđược duyệt và phân tích để xác định các tham số cần tính toán. Các kết quả tính toán, phân tích có thể
dùng là dữ liệu cho các chương trình vẽ như gnuplot, xgraph, tracegraph. Tệp vết cũng có thểđược dùng để trực quan hóa việc chạy mô phỏng bằng Ad-hoc key hoặc NAM (Network Animator).
3.5 Mô phỏng các giao thức định tuyến
Hiện tại có bốn giao thức định tuyến mạng MANET được cài đặt trong NS2 là DSDV, DSR, AODV và TORA [31,13]. Ngoài ra, mã mô phỏng của giao thức OLSR cho NS2 được cung cấp bởi Francisco J. Ros [10]. Sau đây là các giá trị tham số hoạt động và các lưu ý cài đặt của các giao thức trong mô phỏng theo tài liệu của NS2 và các file cài đặt các giao thức.
3.5.1 DSDV
Các tham số hoạt động của DSDV trong mô phỏng:
Tham số Giá trị
Quãng cập nhật đường định kỳ 15s Số cập nhật định kỳ bị mất trước khi liên kết được
xem là bị hỏng
Thời gian cập nhật tức thời đầu tiên được giữ trong hiệu ứng hãm
6s
Thời gian kết hợp các quảng cáo đường 1s Số lượng các gói tin lớn nhất trong bộđệm mỗi nút 5
Bảng 7: Các tham số hoạt động của DSDV trong NS2
Tại nút di động DSDV, tất cả các gói tin có đích là nút di động được bộ phân tách địa chỉ (address mux) chuyển tới bộ phân tách cổng (port mux). Bộ phân tách cổng chuyển các gói tin tới ứng dụng đích tương ứng. Khi đích của gói tin không
được tìm thấy bởi bộ phân tách địa chỉ, nút di động không phải đích của gói tin, gói tin sẽ được chuyển cho đích mặc định là thành phần định tuyến. Thành phần định tuyến gắn chặng tiếp theo của gói tin và gửi nó xuống lớp liên kết.
3.5.2 AODV
Các tham số hoạt động của AODV trong mô phỏng:
Tham số Giá trị
Thời gian đường được xem là hợp lệ 300s Thời gian tồn tại của RREP được gửi bởi đích 600s
Số RREQ được phát lại 3
Thời gian trước khi một RREQ được phát lại 6s Thời gian broadcastID của một gói tin RREQ được giữ 3s
Thời gian đường đi ngược lại cho RREP được giữ 3s Thời gian trước khi liên kết bị hỏng được xóa khỏi bảng
định tuyến
3s
Phát hiện liên kết hỏng bằng lớp MAC có
Trong đặc tả của giao thức AODV, việc phát hiện hàng xóm được thực hiện bằng việc gửi thông điệp HELLO định kỳ. Trong phiên bản mô phỏng của AODV trong NS2, việc phát hiện liên kết hỏng được thay thế bằng thông báo từ lớp MAC. Cách tiếp cận này đã cho thấy ưu điểm là loại bỏđược tổng phí của việc gửi định kỳ
các thông điệp HELLO.
3.5.3 DSR
Các tham số hoạt động của DSR trong mô phỏng:
Tham số Giá trị
Thời gian giữa các ROUTE REQUEST được phát lại
500 ms
Kích thước tiêu đề gói tin mang địa chỉ đường với n chặng
4n+ 4byte
Thời gian hết hạn tìm kiếm đường trong các hàng xóm
30 ms
Thời gian giữ các gói tin chờđường 30s Tốc độ cao nhất việc gửi các gói tin REPLY cho
một đường
1/s
Bảng 9: Các tham số hoạt động của DSR trong NS2
Nút di động của DSR không sử dụng bộ phân tách hay phân loại địa chỉ, tất cả
các gói tin nhận bởi nút đều được chuyển tới thành phần định tuyến theo mặc định. Thành phần định tuyến DSR hoặc nhận gói tin cho chính nó bằng việc chuyển gói tin tới bộ phân tách cổng hoặc chuyển tiếp gói tin theo thông tin vềđường trong gói tin hoặc gửi các yêu cầu đường và trả lời đường.
3.5.4 TORA
Tham số Giá trị
Quãng thời gian phát các BEACON 1s Thời gian liên kết được xem là bị hỏng khi không có các gói tin BEACON hoặc HELLO được trao đổi
3s
Thời gian phát lại object block khi không nhận được biên nhận
500ms
Thời gian object block không được phát lại và liên kết tới đích được xem là bị hỏng
1500ms
Bảng 10: Các tham số hoạt động của TORA trong NS2
Trong mô phỏng, TORA được đặt trên giao thức IMEP (Internet MANET Encapsulation Protocol). IMEP cung cấp sự phát tin cậy và đúng thứ tự các gói tin
định tuyến của TORA tới các hàng xóm và thông báo cho giao thức về liên kết tồn tại với các hàng xóm. Để làm giảm tổng phí, IMEP thường tích hợp các gói tin định tuyến của TORA và IMEP thành gói tin gọi là object block trước khi phát. Để cảm nhận trạng thái liên kết và duy trì danh sách các hàng xóm, IMEP định kỳ phát một gói tin BEACON và được trả lời bằng gói tin HELLO từ nút nhận được gói tin BEACON.
3.5.5 OLSR
Các tham số hoạt động của OLSR trong mô phỏng:
Tham số Giá trị
Thời gian phát các thông điệp HELLO 2s Thời gian phát các thông điệp TC 5s
Quãng thời gian làm mới thông tin tại mỗi nút 2s
Thời gian thông điệp TC là hợp lệ 15s
Bảng 11: Các tham số hoạt động của OLSR trong mô phỏng
Mô phỏng OLSR được cung cấp bởi Francisco J. Ros dựa trên đặc tả của giao thức trong RFC 3636 [26]. Chi tiết các cài đặt của giao thức trên trang web: http://ants.dif.um.es/masimum/um-olsr/html/index.html [10].
Chương 4:
ĐÁNH GIÁ HIỆU SUẤT CÁC GIAO THỨC
Trong chương này chúng tôi trình bày việc đánh giá hiệu suất một số giao thức
định tuyến mạng MANET được thực hiện bằng bộ mô phỏng NS2. Tập hợp các giao thức được đánh giá là DSDV, OLSR, AODV, DSR và TORA, chúng đặc trưng cho nhiều cách tiếp cận định tuyến khác nhau. Các vấn đề liên quan tới hiệu suất của các giao thức được xem xét một cách cụ thể về lượng với tập đa dạng các ngữ
cảnh mạng.
Để xây dựng các ngữ cảnh mạng thích hợp cho việc đánh giá các giao thức, trước tiên chúng tôi tiến hành xem xét và phân tích các tham số môi trường có ảnh hưởng tới hiệu suất của giao thức, các yếu tố môi trường này được chỉ ra trong phần 4.1. Vấn đề hiệu suất của các giao thức được thể hiện thành các đại lượng cụ thể. Giá trị của các đại lượng được tính với mỗi giao thức để cho thấy kết quả làm việc của từng giao thức. Các đại lượng này được trình bày trong phần 4.2. Với việc xem xét các tham số môi trường, chúng tôi đã xây dựng các thí nghiệm cụ thể để đánh giá hiệu suất các giao thức. Các thí nghiệm được trình bày trong phần 4.3. Thông qua các kết quả thí nghiệm, chúng tôi có thể đưa ra các nhận xét về hiệu suất làm việc của từng giao thức. Các nhận xét được trình bày trong phần 4.4.
4.1 Các tham số của môi trường
Các đặc điểm của mạng MANET bao gồm cấu hình mạng động, băng thông hạn chế, khả năng các liên kết có thể thay đổi, các nút có năng lượng thấp và bảo mật vật lý giới hạn. Với các đặc điểm như vậy, khi phân tích hiệu suất các giao thức
định tuyến mạng MANET một số tham số của ngữ cảnh mạng cần được xem xét là [24]:
Kết nối mạng: được thể hiện bằng số trung bình các hàng xóm của một nút.
Tốc độ thay đổi mạng: là tốc độ thay đổi cấu hình vật lý của mạng theo thời gian
Khả năng của liên kết: là băng thông của liên kết không dây, được tính bằng bps
Dạng thông lượng: được thể hiện bằng các mức độ tải trong mạng, có thể là đồng dạng, không đồng dạng hoặc bùng phát.
Dạng di chuyển: được thể hiện bởi sự tương ứng của các hình trạng mạng về thời gian và không gian.
4.2 Các độ đo hiệu suất
Đối với hệ thống nói chung, hiệu suất là độ đo công việc mà hệ thống thực hiện được bao gồm tính sẵn sàng, thông lượng và thời gian đáp ứng [2,22]. Trong mạng MANET, các giới hạn về tài nguyên mạng yêu cầu các giao thức bên cạnh các yếu tố hiệu suất nêu trên cần đảm bảo việc dùng hiệu quả các tài nguyên hạn chế này. Với các giao thức định tuyến, đó chính là chi phí để thực hiện các yêu cầu
định tuyến được thể hiện bởi mức tải định tuyến.
Do vậy, chúng tôi sử dụng các độđo sau để đánh giá hiệu suất các giao thức
định tuyến trong các mạng mô phỏng:
• Phần trăm gói tin được phân phát thành công: Là tỷ lệ giữa số các gói tin được phân phát thành công tới đích so với số các gói tin tạo ra bởi nguồn phát.
• Trễ đầu cuối trung bình của các gói dữ liệu: Là độ trễ toàn phần được tính từ
khi gói tin được phát đi từ ứng dụng phát cho tới khi được nhận bởi ứng dụng nhận bao gồm các trễ có thể như trễ do quá trình phát hiện đường, xếp hàng tại các hàng đợi, trễ phát lại tại tầng MAC và thời gian trễ truyền.
• Tải định tuyến chuẩn hóa: Là tỷ lệ giữa số các gói tin định tuyến trên số gói tin dữ liệu được phân phát. Nếu gói tin định tuyến đi qua nhiều chặng thì mỗi chặng
Hai độđo đầu đánh giá kết quả làm việc của các giao thức. Các độđo này có ý nghĩa đối với hoạt động của các giao thức lớp trên như các giao thức giao vận và các giao thức ứng dụng. Độ đo tải định tuyến chuẩn hóa thể hiện việc sử dụng các tài nguyên mạng. Mức độ ổn định của tải định tuyến có thể cho thấy tính khả mở
của các giao thức.
4.3 Các thí nghiệm mô phỏng
Mục đích các thí nghiệm của chúng tôi là đánh giá hiệu suất các giao thức
định tuyến trong điều kiện cấu hình mạng thay đổi. Phương pháp của chúng tôi là áp dụng nhiều dạng di chuyển với các mức tải mạng khác nhau. Các mạng MANET mô phỏng được xây dựng dựa trên các mô hình di chuyển và mô hình thông lượng.
Đối với mô hình di chuyển, chúng tôi sử dụng ba mô hình tiêu biểu là Random Waypoint, Random Walk và Random Direction thể hiện các dạng di chuyển khác nhau được mô tả trong phần 3.3.2.1. Đối với mỗi mô hình, chúng tôi thay đổi các giá trị tham số để thay đổi các trạng thái của mạng như kết nối mạng, thời gian và tốc độ chuyển động của các nút mạng. Đối với mỗi mạng, chúng tôi áp dụng các mức tải mạng khác nhau.
Để đảm bảo các so sánh là trực tiếp và công bằng giữa các giao thức, điều quan trọng là việc áp dụng các điều kiện tải và môi trường giống nhau với mỗi giao thức. Chính vì vậy, với mỗi mô hình di chuyển chúng tôi xây dựng các file ngữ
cảnh mô tả chính xác chuyển động của mỗi nút cùng với thời gian diễn ra sự thay
đổi của nút. Cũng như vậy với các mô hình thông lượng, các file ngữ cảnh truyền thông được tạo ra thể hiện chính xác các kết nối giữa các nút và thời gian các truyền thông này diễn ra. Do đó, tập các file ngữ cảnh chuyển động và thông lượng giống nhau được áp dụng cho từng giao thức.
Trong tất cả các thí nghiệm, chúng tôi lựa chọn mô hình thông lượng là CBR. Chúng tôi không sử dụng các mô hình thông lượng là các ứng dụng mô phỏng sử
dụng TCP để gửi các gói tin, bởi vì TCP có cơ chế tự động điều phối tải theo tình trạng mạng, có nghĩa là thời gian gửi gói tin thay đổi dựa trên khả năng truyền tải
hiện tại của mạng. Do vậy, thời gian mỗi gói tin được tạo ra tại bên gửi và vị trí của nút khi gửi các gói tin sẽ khác nhau giữa các giao thức do vậy khó có thể thực hiện các so sánh giữa các giao thức với nhau.
Các giao thức DSDV, OLSR, AODV, DSR, TORA lần lượt được áp dụng vào các ngữ cảnh mạng. Bộ mô phỏng ghi nhận lại các hoạt động mạng diễn ra tại các lớp trong chồng các giao thức mạng. Chúng tôi dựa trên các ghi nhận này để đánh giá hiệu suất làm việc của các giao thức, chủ yếu là trên lớp ứng dụng và lớp mạng. Các thí nghiệm và các đánh giá được thể hiện trong các phần sau bao gồm thí nghiệm 1 với mô hình Random Waypoint, thí nghiệm 2 với mô hình Random Walk và thí nghiệm 3 với mô hình Random Direction. Các nhận xét về hiệu suất các giao thức được trình bày trong phần 4.4.
4.3.1 Thí nghiệm 1: Sử dụng mô hình Random Waypoint
Đối với mô hình Random Waypoint, chúng tôi xây dựng mạng mô phỏng gồm 50 nút di động, hình thành nên một mạng MANET. Các nút này di chuyển trong một khu vực địa lý rộng 1500m x 300m (không gian phẳng). Toạđộ của các nút tại mỗi thời điểm là (x, y, z), trong đó toạđộ z luôn bằng 0. Chúng tôi lựa chọn không gian hình chữ nhật để đường đi giữa các nút có độ dài lớn hơn so với trong các không gian hình vuông với mật độ nút tương đương. Cụ thể là độ dài đường lớn nhất trong mạng mô phỏng của chúng tôi là 8 chặng (trong khi không gian hình vuông là 4 chặng). Thời gian mô phỏng là 900 giây.
Chúng tôi tạo ra các mẫu di chuyển của nút với 7 giá trị giới hạn thời gian tạm dừng khác nhau là 0, 30, 60, 120, 300, 600 và 900 giây. Thời gian tạm dừng 0 giây tương ứng với việc các nút di chuyển liên tục trong suốt thời gian mô phỏng và thời gian tạm dừng 900 giây (bằng độ dài thời gian mô phỏng) tương ứng với việc các nút đứng yên trong suốt quá trình mô phỏng.
Mô hình thông lượng được lựa chọn là CBR (constant bit rate). Đây là mô hình thông lượng với tốc độ phát gói tin không đổi. Chúng tôi chọn tham số cho nguồn phát CBR với tốc độ gửi là 4 gói tin/giây và các gói tin có kích thước 512
byte. Số lượng kết nối cho mỗi mô hình di chuyển nút là 10 nguồn phát, 20 nguồn phát và 30 nguồn phát.
Tổng kết về các cấu hình mạng mô phỏng và các tham số của các mô hình di chuyển, mô hình thông lượng được cho trong bảng 12.