4.2.1. Kịch bản mô phỏng
Trong kịch bản mô phỏng gồm 5 cấu trúc mạng (topologys) với số lượng nút mạng thay đổi là 50 nút, 100 nút, 150 nút, 200 nút, 250 nút (bảng 4-1) trong
đó các nút có vị trí ngẫu nhiên trong diện tích 500m x 500m. Mỗi cấu trúc mạng chúng ta sẽ thực hiện gửi các gói tin từ các nút nguồn bất kỳ tới các nút đích bất kỳ bằng các giao thức định tuyến GPSR, DRQC, DR-CR (giao thức cải tiến từ
giao thức DRQC). Sau đó thu thập thông tin về tỷ lệ phần trăm gói tin chuyển thành công của các giao thức và vẽđồ thị.
Bảng 4-1. Bảng thông số kịch bản mô phỏng mạng ngẫu nhiên
STT Mạng Mạng 1 Mạng 2 Mạng 3 Mạng 4 Mạng 5 Thông số Number node 50 100 150 200 250 Time demo (s) 100 100 100 100 100 Data Rate (Mbps) 2 2 2 2 2 Packet Size (byte) 64 64 64 64 64 Transmit Power (dBm) 7.5 7.5 7.5 7.5 7.5
Hình 4-1. Cấu trúc mạng gồm 50 nút Hình 4-2. Cấu trúc mạng gồm 100 nút
Hình 4-3. Cấu trúc mạng gồm 150 nút Hình 4-4. Cấu trúc mạng gồm 200 nút
Hình 4-5. Cấu trúc mạng gồm 250 nút
4.2.2. Kết quả thực hiện đánh giá
Kết quả sau khi thực hiện các chương trình mô phỏng được phân tích và tính toán, cho ta thấy tỷ lệ chuyển gói tin thành công trong các cấu trúc mạng
tương ứng với từng giao thức. Tỷ lệ chuyển gói tin thành công giữa các giao thức tương ứng với mỗi cấu trúc mạng được thể hiện trong Bảng 4-2 và đồ thị
Hình 4-6.
Bảng 4-2: Kết quả tỷ lệ chuyển gói tin thành công
Số TT Nút mạng DRQC GPSR DR-CR
2 100 80,00% 76,56% 81,00% 3 150 89,56% 84,60% 88,50% 4 200 90,58% 89,58% 90,58% 5 250 93,38% 92,38% 93,00%
Hình 4-6. Biểu đồ tỷ lệ chuyển gói tin thành công
Kết quả trên cho thấy: Giao thức định tuyến dựa trên phân chia góc phần tư
DRQC và DR-CR là những giao thức định tuyến có tỷ lệ chuyển gói tin thành
công tương đối cao và luôn luôn có tỷ lệ thành công lớn hơn giao thức GPSR.
Đặc biệt, với những cấu trúc mạng có số lượng nút mạng nhỏ 50 nút, 100 nút, 150 nút và phân bố trong một diện tích lớn thì tỷ lệ chuyển gói tin thành công của giao thức DRQC, DR-CR và GPSR có sự chênh lệch tương đối cao cụ thể:
- Cấu trúc mạng gồm 50 nút: thì tỷ lệ chuyển thành công DRQC là 75 %, DR-CR là 72,20 % còn GPSR là khoảng 68%.
- Cấu trúc mạng gồm 100 nút: thì tỷ lệ chuyển thành công DRQC là trên 80%, DR-CR là 81,00 % còn GPSR là 75%.
- Cấu trúc mạng gồm 150 nút: thì tỷ lệ chuyển thành công DRQC là 90 %, DR-CR là 88,50 % còn GPSR thì dưới 85 %.
Tuy nhiên khi số lượng các nút mạng tương đối nhiều thì tỷ lệ chuyển tiếp gói tin thành công của cả ba giao thức DRQC, DR-CR và GPSR gần như ngang
4.3. Thông lượng trung bình của các giao thức định tuyến địa lý 4.3.1. Kịch bản mô phỏng 4.3.1. Kịch bản mô phỏng
Xem xét mạng có số lượng 150 nút với các vị trí của của các nút được xác
định trước (hình 4-7). Trong cấu trúc mạng tồn tại một số vùng trống cố định
cho trước. Nút nguồn gửi gói tin và nút đích gửi gói tin cốđịnh cho trước. Thực hiện mô phỏng mạng gửi gói tin từ nút nguồn tới nút đích và thực hiện tính toán thông lượng trung bình theo thời gian của các giao thức (bảng 4-3).
Bảng 4-3. Thông số mô phỏng mạng cốđịnh Số TT Tham số Giá trị 1 Số nút 150 (nút) 2 Thời gian mô phỏng 30 (s) 3 Diện tích phân bổ nút mạng 500 x 500(m) 4 Khoảng cách nút 30 m 5 Nút nguồn Nút {18} 6 Nút đích Nút {95} 7 Transmit Power 7.5 dBm 8 Data Rate
9 Packet Size 1024 byte 10 Data rate 2 Mbps
4.3.2. Kết quả thực nghiệm và phân tích
Kết quả thực hiện chương trình mô phỏng với các giao thức lần lượt là: DRQC, GPSR, DR-CR. Chương trình mô phỏng sinh ra các tập tin .pcap, sau khi sử dụng chương trình phân tích gói tin Wireshark để phân tích. Trích lọc các thông tin cần thiết và thực hiện tính thông lượng trung bình theo thời gian của các giao thức bằng chương trình Perl (Phụ lục 2 kèm theo), kết quả được minh họa ởđồ thị (Hình 4-8).
Hình 4-8. Thông lượng theo thời gian của các giao thức
Từ kết quả phân tích và hiện thị trong đồ thị Hình 4-8, thấy rằng: Đối với một cấu trúc mạng có các vị trí cố định cho trước, trong một số điều kiện như
kịch bản mô phỏng (hình 4-7), kết quả thông lượng trung bình theo thời gian chỉ
ra: Giao thức DRQC, DR-CR là hai giao thức định tuyến dựa trên phân chia góc phần tư luôn lớn hơn giao thức GPSR là giao thức dựa trên thuật toán tham lam. Với một cấu trúc mạng có vùng trống xác định và các nút nguồn và nút đích
nằm ở những vị trí không tối ưu chúng ta thấy rằng giao thức cải tiến dựa theo phân chia góc phần tư (DR-CR) có thông lượng trung bình lớn hơn giao thức gốc là DRQC.
KẾT LUẬN
Với những tìm hiểu, nghiên cứu về các nội dung trong luận văn đã giúp cho
tôi có được những kiến thức bổ ích về định tuyến dựa theo thông tin vị trí địa lý trong mạng không dây. Luận văn cũng giúp tôi rất nhiều về kỹ năng thực hành,
đánh giá hiệu năng hệ thống mạng.
Dù trong quá trình nghiên cứu tôi đã rất cố gắng nhưng chắc chắn không tránh khỏi những sai sót, hạn chế cần bổ sung trong tương lai khi phát triển tiếp
đề tài. Vì vậy, tôi xin đưa ra một số kết luận và định hướng như sau:
1. Các kết quảđạt được
Luận văn đã trình bày về tổng quan giao thức định tuyến sử dụng thông tin
địa lý, cũng như trình bày về giao thức định tuyến địa lý dựa trên phân chia góc phần tư “Detour Routing based on Quadrant Classification Protocol – (DRQC)”. Từ những phân tích và so sánh về giao thức định tuyến DRQC luận vănđã chỉ ra hạn chế của chính giao thức định tuyến này trong trường hợp các nút mạng nằm tại các vị trí không tối ưu. Luận văn cũng đã đề xuất một phương pháp cải tiến thuật toán DRQC là phương pháp quay trục tọa độ của mỗi nút trong mạng khi thực hiện tính toán lựa chọn nút hàng xóm thuộc góc phần tư cùng với nút đích.
Luận văn cũng đã cài đặt và thực hiện đánh giá các giao thức định tuyến theo chiến lược tham lam (GPSR), giao thức định tuyến dựa trên phân chia góc phần
tư (DRQC) và giao thức cải tiến từ giao thức DRQC bằng công cụ mô phỏng sự
kiện mạng NS3. Kết quả thực nghiệm và so sánh các giao thức định tuyến thấy rằng, tỷ lệ chuyển thành công gói tin trong mạng không dây bằng giao thức định tuyến dựa trên phân chia góc phần tư DRQC luôn luôn cao hơn với giao thức sử
dụng chiến lược tham lam GPSR cũng như kết quả chỉ ra rằng thông lượng trung bình chuyển gói tin của giao thức định tuyến cải tiến từ giao thức DRQC là tối
ưu hơn trong một số trường hợp. Luận văn cũng đã trình bày về công cụ mô phỏng mạng NS3 và cách thức thêm mới thành phần vào trong mã nguồn của công cụ mô phỏng sự kiện mạng NS3 nhằm giúp người học, người nghiên cứu có thể cài đặt mới những nghiên cứu của mình để đánh giá và thử nghiệm kết quả.
2. Những hạn chế của đề tài
Luận văn không nghiên cứu và cài đặt so sánh được nhiều giao thức định tuyến sử dụng thông tin vị trí địa lý, mà chỉ giới trong hai giao thức “Greedy
Perimeter Stateless Routing” và “Detour Routing Based on Quadrant Classification”. Luận văn mới chỉ dừng lại nghiên cứu công cụ mô phỏng mạng NS-3 giúp cho việc mở rộng một số giao thức định tuyến sử dụng thông tin vị trí
địa lý mà chưa nghiên cứu sâu về công cụ mô phỏng sự kiện mạng NS-3. Ngoài ra luận văn cũng chỉ dừng lại việc đánh giá hiệu năng tỷ lệ chuyển gói tin thành
công và thông lượng trung bình của các giao thức mà chưa đánh giá được nhiều
hơn các thông số khác.
3. Hướng phát triển
Đánh giá và cải tiến chất lượng quá trình định tuyến gói tin rất cần thiết trong các hệ thống mạng máy tính. Vì vậy, để đề tài nghiên cứu hoàn thiện hơn
và có giá trịhơn cần tập trung các nội dung sau:
- Tìm hiểu sâu hơn về các giao thức định tuyến địa lý khác giúp cho việc
đánh giá, so sánh khách quan và toàn diện hơn với giao thức định tuyến
địa lý đi vòng dựa theo phân loại nút theo góc phần tư.
- Nghiên cứu và đánh giá sâu hơn về giải pháp cải tiến giao thức đi vòng dựa trên phân loại nút theo góc phần tư.
- Tìm hiểu công cụ mô phỏng sự kiện mạng NS3 giúp cho việc sử dụng,
cài đặt các thành phần khác tốt hơn.
- So sánh và đánh giá giao thức định tuyến theo thông tin vị trí địa lý và một số giao thức định tuyến khác trong mạng không dây.
- Nghiên cứu về các giao thức định tuyến theo vị trí địa lý giúp tối ưu năng lượng của các nút.
TÀI LIỆU THAM KHẢO
[1] Nandan Banerji, Uttam Kumar Kundu, Pulak Majumder, Debabrata Sarddar (2013), “Quadrant Based WSN Routing Technique by Shifting of Origin”,
International Journal of Advanced Computer Science and Applications, 4,(3), pp.38 – 41.
[2] Ana Maria Popescu, Ion Gabriel Tudorache, Bo Peng, A.H. Kemp (2012), “Surveying Position Based Routing Protocols for Wireless Sensor and Ad-hoc Networks”, International Journal of Communication Networks and Information Security (IJCNIS), 4, (1), pp. 41-67.
[3] Brad Krap, H.T.Kung (2000), “GPSR: Greedy Perimeter Stateless Routing for Wireless Networks”, ACM International Conference on Mobile Computing and Networking, pp. 243-245.
[4] Basu Dev Shivahare, Charu Wahi, Shalini Shivhare (2012), “Comparison Of Proactive And Reactive Routing Protocols In Mobile Ad-hoc Network Using Routing Protocol Property”, International Journal of Emerging Technology and Advanced Engineering 2, (3), pp. 356-359.
[5] I. Stojmenovic, X. Lin (2001), “Loop-free hybrid single-path/flooding routing algorithms with guaranteed delivery for wireless networks,” IEEE Trans. on Parallel and Distributed Systems, 12 (10), pp. 1023–1032.
[6] A. Tanenbaum, D. Wetherall (2011), “Computer Networks”, Boston, Massachusetts, United States of America.
[7] University of Freiburg, Germany (2009), Theory and Practice of Geographic Routing.
[8] Lih-Chyau Wuu, Wen-Ben Li, Wen-Chung Ko (2010), “Detour Routing Protocol for Geographic Sensor Network”, International Conference on Broadband, Wireless Computing, Communication and Applications (122), pp. 505 – 510.
[9] Shyjith M.B, V.K.Reshma (2012), “GOAFR: An Optimal Algorithm for Geographic Routing In Wireless Sensor Networks”, International Journal of Computer Networks and Wireless Communications, 2, (2), pp. 131-135.
[10] NS3-Tutorial, 21/12/2013, http://www.nsnam.org/docs/release/3.16/tutorial/ns-3-tutorial.pdf, (ngày truy cập 26/12/2013).
[11] NS3-Document, http://www.nsnam.org/doxygen-release/ (truy cập ngày 12/07/2013).
PHỤC LỤC 1
I. CÔNG CỤ MÔ PHỎNG SỰ KIỆN MẠNG NS-3 1.1. Tổng quan về NS-3
Network simulator (NS-3) [10][11] là một chương trình mô phỏng các sự
kiện của hệ thống mạng máy tính. Mục đích chính của NS-3 là dùng mô phỏng các sự kiện mạng trong nghiên cứu và học tập của cộng đồng các nhà nghiên cứu và sinh viên làm việc với hệ thống mạng máy tính.
NS-3 là một dự án phần mềm mã nguồn mở (open source), được bắt đầu xây dựng từnăm 2006, giấy phép sử dụng dưới dạng GNU GPLv2 license. Dự
án NS-3 cam kết sẽ xây dựng một lõi chương trình mô phỏng chung nhất cũng
như một hệ thống tài liệu chuẩn (Doxygen [11]), dễ dàng dùng cho xây dựng và
kiểm soát lỗi dự án. NS-3 phục vụ cho toàn bộ nhu cầu mô phỏng, từ những cấu hình để bắt và phân tích gói tin, hơn nữa, các nền tảng ứng dụng, modules được
cài đặt trong NS-3 giúp người sử dụng phát triển, cải tiến, thực hiện các mô phỏng. NS-3 còn có thể mô phỏng với các mạng thực tế (emulator), tương tác
cùng với mạng thực và NS-3 còn tồn tại một số giao thức phát triển rất hữu dụng trong NS-3.
Mô phỏng NS-3 hỗ trợ nghiên cứu về cả hai giao thức cơ bản của mạng là IP và Non-IP. Tuy nhiên, nội dung phần lớn của NS-3 tập trung vào mô phỏng wireless/IP. Cùng với các mô hình liên quan cho Wi-Fi, WiMAX, hoặc LTE thuộc các lớp 1 và 2. NS-3 cũng dùng cho các giao thức định tuyến động như
OLSR và AODV cho ứng dụng địa chỉ IP cơ bản. Mỗi một quý 3 tháng NSNAM sẽ phát hành một phiên bản NS-3 ổn định tới cộng đồng người sử dụng [10].
Một số chú ý cần quan tâm khi làm việc với bộ mô phỏng mạng NS-3.
NS-3 không phải được thừa kế và mở rộng từ NS2. Đây là một bộ mô phỏng sự kiện mạng mới. Cả hai bộ mô phỏng NS2, NS-3 đều được viết bằng
C++, nhưng NS-3 không hỗ trợ các hàm API của NS2. Một sốmô đun từNS2 đã
và đang được phát triển và cài đặt trong NS-3. Dự án này sẽ tiếp tục bảo trì công
cụ mô phỏng NS2, và phát phát triển mới công cụ mô phỏng NS-3.
NS-3 là một phần mềm mã nguồn mở, dự án này được bảo trì và để mở mã
nguồn cài đặt, môi trường phát triển nhằm giúp cộng đồng nghiên cứu tìm hiểu
và chia sẽ các thuộc tính cũng như các thành phần mở rộng của chính người dùng trên NS-3.
NS-3 sử dụng trong cộng đồng người dùng NS2
Đối với cộng đồng sử dụng bộ mô phỏng NS2, một trong những thay đổi
dễ nhìn thấy nhất đó là lựa chọn kịch bản viết mô phỏng. Trong NS2, là những kịch bản Otcl và kết quả của simulator có thể xem (hiện thị trực quan) bằng công cụ mô phỏng trực quan NAM. NS2 không thể mô phỏng hoàn toàn bằng ngôn ngữ C++ mà không dùng tới kịch bản OTcl. Hơn thế nữa có rất nhiều thành phần trong chương trình NS2 đã được viết bằng C++, nhưng một số viết bằng
OTcl. Trong chương trình NS-3 mô phỏng được viết hoàn toàn bởi C++ và lựa
chọn biên dịch bằng Python. Các công cụ xem trực quan kết quả trong NS-3
cũng đã sãn sàng và đang được tiếp tục phát triển. NS-3 sinh ra tập tin pcap có
thểdùng để phân tích kết quả rất là tốt nhờ công cụ phân tích gói tin Wireshare.
Một trong những câu hỏi mà chúng ta thường nghe và rất quan tâm là “ Nên dùng NS2 hay chuyển sang dùng NS-3?”. Câu trả lời là tùy thuộc vào những mô phỏng của chúng ta. NS-3 không có tất cả các modules như NS2 hiện
tại đang có, nhưng NS-3 lại có khảnăng mới như: xử lý nhiều thao tác trên cùng
một nút, sử dụng địa chỉ IP liên kết nhiều hơn với các giao thức cũng như thiết kế chi tiết hơn với chuẩn mạng 802.11 [10]. NS-3 cũng cho phép ngươi dùng
phát triển và cài đặt thêm các phần mở rộng dễdàng hơn[10].
1.2. Các thành phần của NS-3
Tìm hiểu một cách nhìn tổng quát về các thành phần của công cụ mô phỏng mạng NS-3 sẽ giúp cho người sử dụng có thể đọc mã nguồn của dự án NS-3 hoặc có thể thêm, chỉnh sửa các module của dự án.
i.Node
Là những máy tính, thiết bị đầu cuối được kết nối vào hệ thống mạng. Trong NS-3, một nút (node) là một khái niệm trừu tượng và được xây dựng trong một lớp node viết bằng ngôn ngư C++. Lớp node hỗ trợ những phương thức
dùng để quản lý và đại diện cho một máy tính, một thiết bị trong mô phỏng.
Chúng ta nên xem một nút như là một máy tính và trong quá trình mô phỏng được thêm vào các hàm, chức năng khác. Một trong những chức năng
quan trọng nhất là Application (thêm ứng dụng mạng vào nút), protocol (thêm giao thức), kết nối các thiết bị ngoại vi khác liên quan để cho phép thực hiện các mô phỏng mạng. Một nút được dùng như một model (mô hình) trong NS-3 [10].
ii.Application
Một phần mềm máy tính được chia ra làm hai thành phần cơ bản là phần
mềm hệ thống (các hệ điều hành) để điều khiển và liên kết các thiết bị trong