GIỚI THIỆU CHUNG VỀ OMNET++ 74

Một phần của tài liệu Các phương pháp định tuyến trong mạng AD HOC (Trang 76)

Mô phỏng là một công cụ cơ bản để nghiên cứu và phân tích các giao thức

định tuyến, đặc biệt là trong mạng Ad hoc. Mô phỏng được sử dụng với hai lý do chính. Thứ nhất, mô phỏng cho phép mô hình và đánh giá mạng Ad hoc với nhiều nút mạng mà không tồn tại hay thực hiện một cách khó khăn trên các thiết bị có thật trên các kịch bản thực tế. Thứ hai, sự phức tạp và các yếu tố tác động của tự nhiên (truyền sóng vô tuyến, di chuyển của các nút, sự tương tác giữa các giao thức...) ảnh hưởng tới sự thực thi của Ad hoc. Ngày nay, có rất nhiều công cụđể mô phỏng cho mạng Ad hoc như: Network Simulation – 2 (NS-2), OPNET, Ncutns và OMNET++. Trên tất cả, OMNET++ là một công cụ tối ưu để mô phỏng mạng Ad hoc. Ưu điểm của OMNET++:

• Nó là công cụ mã nguồn mở, người viết chương trình có thể thêm các thư

viện mới hoặc phỏng theo các thư viện đã có sẵn theo yêu cầu của kịch bản mô phỏng đểđánh giá.

• Giao diện chương trình đơn giản và thân thiện với người sử dụng, giúp phát triển code mới.

• Nó đưa ra cấu trúc modul, giúp triển khai dễ dàng các giao thức truyền thông mới. Do đó, các giao thức mới không yêu cầu một kiến thức đầy đủ về

các phần khác của code. Các tầng khác nhau và các giao thức có thể giao tiếp bởi chính các bản tin. Vì vậy, yêu cầu người lập trình nắm rõ các định dạng của những bản tin đó.

Mai Văn Linh-ĐTVT2-CH2009   75 

• Code OMNET++ đặc biệt hiệu quả, nó là nguyên nhân làm giảm thời gian mô phỏng khi so sánh với các công cụ mô phỏng khác (như NS-2).

• OMNET++ được hỗ trợ rộng rãi trên mạng internet do sự mở rộng của cộng

đồng OMNET++.

4.1.1 ng dng

OMNeT++ là một công cụ mô phỏng các hoạt động mạng bằng các module

được thiết kế hướng đối tượng. OMNeT++ thường được sử dụng trong các ứng dụng chủ yếu như:

• Mô hình hoạt động của các mạng thông tin • Mô hình giao thức

• Mô hình hóa các mạng kiểu hàng đợi

• Mô hình hóa các hệ thống đa bộ vi xử lý (multiprocessor) hoặc các hệ thống phần cứng theo các mô hình phân tán khác (distributed hardware systems) • Đánh giá kiến trúc phần cứng

• Đánh giá hiệu quả hoạt động của các hệ thống phức tạp…

4.1.2 Chy các ng dng trong OMNeT++

Mt h thng mng mô phng trong OMNeT++ gm các thành phn sau:

• Các file.ned mô tả topo mạng.

• Các file có phần mở rộng .msg chứa khai báo các message.

• Các file C++ (có phần mở rộng là .cc trong UNIX hoặc .cpp trong Windows) Quá trình xây dựng một chương trình mô phỏng

• Đầu tiên, dịch các file NED và các file message thành C++, sử dụng NED compiler (nedc) và message compiler (opp_msgc).

• Quá trình tiếp theo giống như biên dịch mã nguồn C/C++

9 Trong Linux: các file .cc → file.o.

9 Trong Windows: các file .cpp → file .obj.

9 Sau đó tất cả các file trên sẽđược liên kết (link) với các thư viện cần thiết để tạo thành file .exe.

Mai Văn Linh-ĐTVT2-CH2009   76 

C th ta cn phi liên kết vi các thư vin sau:

• Phần nhân mô phỏng được gọi là sim_std (như các file libsim_std.a, sim_std.lib, etc)

• Giao diện người dùng: cung cấp thư viện môi trường (file libenvir.a, etc) và các tiện ích tkenv và cmdenv (libtkenv.a, libcmdenv.a, etc). Các file .o (hoặc .obj) phải được liên kết tới thư viện môi trường cùng với hoặc tkenv hoặc cmdenv.

Hình 4.1 Lược đồ xây dựng và chạy một chương trình mô phỏng OMNeT++

*.ned là các file mô tả topo mạng cũng như cấu trúc của các modul, nó sử dụng ngôn ngữ NED (Nework Description ), là ngôn ngữ chuyên biệt dùng riêng cho OMNET++. Sự phát triển tiếp theo của NED là GNED (Graphic NED) làm cho việc mô tả topo mạng được trực quan hơn bằng cách dùng các công cụđồ hoạđể mô tả.

Mai Văn Linh-ĐTVT2-CH2009   77 

Các file ned sau đó được NEDC (NED compiler) dich sang code C++ để mô tả cấu trúc mạng sang ngôn ngữ C++ dưới dạng file *_.cc.

Các file xử lý của các simple moduls là phần cốt lõi khi viết chương trình mô phỏng và được viết bằng ngôn ngữ C++ bằng cách kế thừa các lớp có sẵn của OMNET++, người viết triển khai các hoạt động của mạng nhưđịnh tuyến, xử lí gói tin đến và đi, xác định hành vi của các simple modul được mô tả trong *.ned khi có sự kiện xảy ra với nó….

Thư viện lõi của chương trình mô phỏng được cung cấp bởi OMNET++, nó bao gồm rất nhiều các lớp và các hàm có sẵn phục vụ cho chương trình mô phỏng như các lớp cSimplemodul, cMessage..., các hàm ngẫu nhiên… Thư viện giao diện người dùng cung cấp giao diện cho chương trình mô phỏng. OMNET++ với các phiên bản gần đây sử dụng hai kiểu giao diện là giao diện dòng lệnh cmd (command) và giao diện đồ hoạ dựa trên tcl/tk. Giao diện đồ hoạ rất trực quan nên

được ưa dùng hơn. Sau khi dịch và liên kết ta được một chương trình mô phỏng dựa trên nền OMNET++.

File omnetpp.ini để khởi động các giá trị cần thiết. omnetpp.ini do người lập trình viết, nó rất quan trọng để chạy một chương trình mô phỏng với các tham số được thay đổi để có được kết quả thống kê mong muốn.

Cuối cùng là các file kết quả bao bồm file*.vec là các file vector, hay file*.sca là các file scalar. Luận văn sử dụng file scalar để thể hiện kết quả đầu ra, dùng file*.awk viết code xử lý đầu ra và vẽđồ thị bằng Gnuplot.

• Code OMNET++ đặc biệt hiệu quả, nó là nguyên nhân làm giảm thời gian mô phỏng khi so sánh với các công cụ mô phỏng khác (như NS-2).

• OMNET++ được hỗ trợ rộng rãi trên mạng internet do sự mở rộng của cộng

đồng OMNET++.

Hiện nay, các thư viện của OMNET++ chứa chồng giao thức UDP/TCP/IP cũng như một số loại giao diện MAC (Media Access Control) lớp 2, ví dụ

Mai Văn Linh-ĐTVT2-CH2009   78 

4.2 KT QU MÔ PHNG

4.2.1 Khi to mô phng

Trong tất cả các kịch bản mô phỏng, luận văn sử dụng mô hình di chuyển Random Waypoint với các thông số sau:

• Kích cỡ môi trường mô phỏng: luận văn sử dung khu vực mô phỏng 500x500m cho toàn bộ kịch bản mô phỏng.

• Phạm vi truyền dẫn: 250m.

• Các giao thức mô phỏng: DYMO, DSR, AODV, OLSR.

4.2.2 Mt s hình nh mô phng

Sau đây là tuần tự các quá trình Khám phá tuyến và gửi gói tin của giao thức

định tuyến DYMO: Khám phá tuyến bằng cách gửi RREQ, gửi bản tin RREP, gửi gói tin dữ liệu, và gửi ACK báo nhận.

Trước khi gửi gói tin tới một đích, môt nút sẽ kiểm tra trong Bộ nhớ tuyến của nó có tuyến tới đích đó hay không. Nếu không có, nó sẽ gửi bản tin RREQ để Khám phá tuyến (hình 4.4).

Mai Văn Linh-ĐTVT2-CH2009   79 

Hình 4.2 Quá trình gửi bản tin RREQ của DYMO

Các nút nhận được bản tin RREQ, nếu nút đó là đích hoặc biết môt tuyến

Mai Văn Linh-ĐTVT2-CH2009   80 

Hình 4.3 Quá trình gửi bản tin RREP của DYMO

Như vậy, nút nguồn đã có một tuyến tới đích và nó thực hiện quá trình gửi gói tin dữ liệu hình (hình 4.6).

Mai Văn Linh-ĐTVT2-CH2009   81 

Hình 4.4 Quá trình gửi gói tin dữ liệu của DYMO

Nút đích nhận được gói tin dữ liệu, nó sẽ gửi ACK tới nút nguồn để xác nhận nó đã nhận được gói từ nút nguồn (hình 4.7).

Mai Văn Linh-ĐTVT2-CH2009   82 

Mai Văn Linh-ĐTVT2-CH2009   83 

4.2.3 Đánh giá t l nhn gói theo thi gian dng

Bảng 4.1 Bảng giá trị thông sốđánh giá theo thời gian dừng

Thông s Giá tr

Phạm vi truyền dẫn 250m Băng thông 54Mbps (802.11g)

Thời gian mô phỏng 300s Kích thước môi trường mô phỏng 500m x 500m Loại lưu lượng CBR

Tốc độ gửi gói tin 4packet/s Kích thước gói tin 512 bytes

Số nút 25

Số nguồn gửi gói tin 5

Tốc độ tối đa 20m/s

Các giao thức mô phỏng DYMO, DSR, AODV, OLSR • Vận tốc tối đa speedmax: ở bất kỳ thời điểm nào vận tốc có giá trị ngẫu nhiên

trong khoảng [0, speedmax].

• Ởđây luận văn đưa ra 4 giá trị cần đo cho thời gian tạm dừng của nút mạng: 0, 100, 200, 300. Thời gian tạm dừng bằng 0, nút mạng chuyển động liên tục; thời gian tạm dừng bằng 300, nút mạng coi như đứng yên (không chuyển

động). Nguồn lưu lượng cần tạo là 5CBR và bắt đầu ở các thời điểm khác nhau.

Mức độ di chuyển của nút mang ảnh hưởng rất nhiều đến tỉ lệ gói nhận. Khi mức độ di chuyển các nút mạng càng cao, topo mạng thay đổi nhanh thì tỉ lệ gói nhận lại càng giảm (hình 4.8).

Mai Văn Linh-ĐTVT2-CH2009   84 

Hình 4.6 Đánh giá tỷ lệ gói nhận được theo thời gian dừng

• Tỉ lệ gói nhận của DYMO là cao nhất do DYMO là giao thức định tuyến hoạt động theo yêu cầu hoặc theo bảng điều khiển, là sự tối ưu của DSR và AODV. Khi các nút mạng chuyển động liên tục, tỉ lệ gói của DYMO vẫn rất cao - 90%.

• OLSR có tỉ lệ gói cao hơn AODV và DSR vì OLSR có thểđáp ứng khi topo mạng thay đổi, nó cho phép Khám phá tuyến nhanh chóng tới các hàng xóm và các MPR của chúng để thiết lập kết nối với các nút khác.

• Khi mức độ di chuyển tăng (giảm pausetime) thì tỉ lệ gói nhận ở 3 giao thức DSR, AODV, OLSR giảm rõ rệt với mức giảm tương đương nhau.Trong khi đó thì DYMO thể hiện được sựổn định của mình khi có tỷ lệ gói nhận khá cao (trên 90% trong tất cả các trường hợp). OLSR có tỉ lệ gói cao hơn AODV và DSR vì OLSR có thể đáp ứng khi topo mạng thay đổi, nó cho phép Khám phá tuyến nhanh chóng tới các hàng xóm và các MPR của chúng để thiết lập kết nối với các nút khác.

Mai Văn Linh-ĐTVT2-CH2009   85 

Bảng 4.2 Bảng giá trị các thông sốđánh giá theo tốc độ phát gói

Thông s Giá tr

Phạm vi truyền dẫn 250m Băng thông 54Mbps (802.11g)

Thời gian mô phỏng 250s Kích thước môi trường mô phỏng 500m x 500m

Loại lưu lượng CBR

Tốc độ phát gói 4packet/s, 8packets/s, 12packets/s Kích thước gói tin 512 bytes

Số nút 20

Số nguồn gửi gói tin 5

Thời gian dừng 5s

Các giao thức mô phỏng DYMO, DSR, AODV, OLSR

Tốc độ di chuyển của các nút thay đổi với các giá trị: 0m/s, 0.5m/s, 1m/s,1.5m/s, 2m/s, 2.5m/s, 3m/s, 3.5m/s.

Mai Văn Linh-ĐTVT2-CH2009   86 

Hình 4.7 Đánh giá tỉ lệ gói nhận của DSR theo tốc độ phát gói

Mai Văn Linh-ĐTVT2-CH2009   87 

Hình 4.9 Đánh giá tỷ lệ gói nhận của OLSR theo tốc độ phát gói

Mai Văn Linh-ĐTVT2-CH2009   88 

Tốc độ phát gói tăng lên làm tăng số gói gửi, gây xung đột trên đường truyền và nghẽn mạng trong Bộđệm, gói tin bị hủy nhiều. DYMO có tỷ lệ nhận gói tương

đối ổn định và cao hơn hẳn so với các giao thức còn lại khi thay đổi tốc độ gửi gói.

4.2.5 Đánh giá và kết lun

Trong môi trường kích cỡ trung bình và số lượng nút nhỏ, khi mật độ di chuyển, hay tốc độ phát gói tăng dần thì DYMO là giao thức hoạt động khá ổn định khi có tỉ lệ gói nhận cao hơn so với các giao thức khác. Tuy nhiên, theo một số kết quả nghiên cứu cho thấy DYMO lại tạo ra khá nhiều bản tin định tuyến so với AODV và DSR. Do vậy, không thể khẳng định DYMO là một giao thức tối ưu.

Hiện nay chưa có một giao thức nào có thể đáp ứng đầy đủ yêu cầu với một giao thức định tuyến trong mạng Ad hoc. Các giao thức cần được cải tiến hơn nữa

để có thể đáp ứng được cho mạng Ad hoc đồng thời hỗ trợ multicast, QoS, bảo mật…

Mai Văn Linh-ĐTVT2-CH2009   89 

KT LUN

Mạng Ad hoc hiện đang tham gia vào mọi mặt của cuộc sống và hứa hẹn sẽ

phát triển mạnh mẽ trong tương lai. Do là một phần công nghệ của mạng không dây nên mạng Ad hoc được thừa hưởng nhiều ưu điểm của mạng không dây hiện nay và

đồng thời cũng có những ưu thế đặc biệt mà các mạng khác không có. Luận văn là sự nhìn nhận tổng quan về mạng Ad hoc. Ngoài ra, luận văn cũng tập trung vào nghiên cứu các giao thức định tuyến mạng Ad hoc hiện nay, cụ thể là bốn giao thức DYMO, DSR, AODV, OLSR. Đồng thời sử dụng công cụ mô phỏng OMNET++ để

phân tích đánh giá chất lượng giao thức định tuyến mạng Ad hoc (DYMO, DSR, AODV, OLSR).

Mạng Ad hoc vẫn còn là một công nghệ mới trong vài năm gần đây ở Việt Nam và chưa có nhiều kết quả thử nghiệm, đánh giá về nó. Do đó, việc tham gia rất hạn chế, với người nghiên cứu chỉ có cách dùng mô phỏng. Chính vì vậy, định hướng phát triển của em là ngoài việc nghiên cứu lí thuyết, sẽ tìm hiểu sâu hơn về

công cụ mô phỏng OMNET++ để có kết quả mô phỏng đánh giá các giao thức theo nhiều thông số khác nhau. Qua đó, chúng ta thấy được thế mạnh và hạn chế của từng loại giao thức. Đồng thời em sẽ đi sâu tìm hiểu về khả năng triển khai mạng Ad hoc vào thực tiễn tại Việt Nam. Trong tương lai, em mong muốn sẽ tiếp tục nghiên cứu về vấn đề này cũng như phát triển mở rộng nó.

Cũng do thời gian nghiên cứu nên không tránh khỏi thiếu sót, em rất mong nhận được sự nhận xét, đóng góp ý kiến của các thầy cô trong bộ môn cũng như

trong khoa để luận văn của em và những nghiên cứu sau này sẽ còn thành công hơn nữa.

Mai Văn Linh-ĐTVT2-CH2009   90 

Một lần nữa em xin chân thành cảm ơn thầy Nguyễn Quốc Trung – Bộ môn Kỹ thuật thông tin – Khoa Điện tử viễn thông – Trường Đại học Bách Khoa Hà Nội

đã nhiệt tình hướng dẫn, chỉ bảo và định hướng cho chúng em thực hiện thành công

đồ án.

Hà Nội, tháng 4 năm 2012. Sinh viên

Mai Văn Linh-ĐTVT2-CH2009   91 

TÀI LIU THAM KHO

[1] Subir Kumar Sarkar, T G Basavaraju, C Puttamadappa, “Ad hoc Mobile Wireless Network Principles, protocols, and Applications”, Auerbach Publications, 2007.

[2] Amitabh Mishra, “Security and quality of service in Ad hoc wireless networks”, Cambridge University Press, 2008.

[3] Prasant Mohapatra and Srikanth Krishnamurthy, “Ad hoc network Technologies and Protocols”, Spinger Science and Business Media, 2005.

[4] Michel Barbeau and Evangelos Kranakis, “Principles of Ad hoc networking”, Wiley, 2007.

[5] Krishna Gorantala, “Routing Protocols in Mobile Ad hoc network”, June 15, 2006.

[6] Jabson Andres, “ Metric in Ad hoc networks”, Master thesis, 2000.

[7] Narendra Singh Yadav and R.P.Yadav, “The Effects of Speed on the Performance of Routing Protocols in Mobile Ad-hoc Network”.

[8] Azzedine Boukerche, “Algorithms and protocols for wireless and mobile Ad hoc network”, Wiley, 2009.

[9] A. Boukerche, “Performance Evaluation of Routing Protocols for Ad Hoc Wireless Networks”, Mobile Networks and Applications, 9, pp. 333-342, 2004. [10] Samir R. Das, “Performance Comparison of Two On-demand Routing

Protocols for Ad Hoc Networks”, Division of Computer Science The University of Texas at San Antonio San Antonio, TX 78249-066 U.S.A.

[11] Sehrish Abrejo, Asadullah Shah, Kamran Khowaja, Asma Ansari Pakistan

“Analysis of AD HOC Routing Protocols using Scenario Based Mobility Models”,

Department of Computer Science Isra University, Hyderabad.

[12] Ashwini Kumar Pandey,“Study of AD HOC Routing Protocols by Simulation Experiments”,Department of Computer Science Southern Illinois University Edwardsville MAY 2004

Mai Văn Linh-ĐTVT2-CH2009   92 

[13] Farooq Anjum and Petros Mouchtaris, “Security for wireless Ad hoc networks” , Wiley, 2007

[14] Georgios Koltsidas and Fotini-Niovi Pavlidou, “Single-path and Multipath Routing Algorithms for Mobile Ad Hoc Networks”, Dept. of Electrical and Computer Engineering, Aristotle University of Thessaloniki, Thessaloniki, Greece

[15] S. Gowrishankar, T.G. Basavaraju, M. Singh, Subir Kumar Sarkar , “Scenario based Performance Analysis of AODV and OLSR in Mobile Ad hoc Networks”, Jadavpur University, Acharya Institute of Technology India

[16] http://tools.ietf.org/html/draft-ietf-Ad hoc-aodv-09

[17] http://tools.ietf.org/html/draft-ietf-Ad hoc-dymo-17

Một phần của tài liệu Các phương pháp định tuyến trong mạng AD HOC (Trang 76)

Tải bản đầy đủ (PDF)

(105 trang)