Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc

LỜI NÓI ĐẦU
Cùng với sự gia tăng nhanh chóng về số lượng cũng như công nghệ của các thiết bị di động kéo theo nhu cầu của người sử dụng công nghệ không dây ngày càng cao và đa dạng.Vì vậy để đáp ứng được xu thế đó, mạng thông tin không dây ngày nay phải gánh vác trọng trách lớn hơn là giải quyết vấn đề về lưu lượng đa phương tiện, tốc độ cao,chất lượng ngày càng phải tốt hơn. Song song với yêu cầu hỗ trợ đa phương tiện với chất lượng dịch vụ (QoS) đảm bảo, các công nghệ giao tiếp không dây khác nhau đã xuất hiện,Ad hoc là một kiểu mạng thông tin không dây linh hoạt.Đó là tập hợp của hai hay nhiều thiết bị được trang bị khả năng nối mạng và truyền thông không dây.Các thiết bị đó có thể giao tiếp với các nút mạng khác ngay lập tức trong vùng phủ sóng hay một thiết bị không dây khác ngoài bên ngoài với điều kiện có các nút trung gian để chuyển tiếp thông tin từ nút nguồn đến nút đích.Ad hoc có khả năng tự tổ chức và thích nghi, khi đã hình thành có thể bị giải tán bất cứ lúc nào mà không cần đến bất cứ sự quản trị hệ thống nào.Ad hoc có nhiều dạng khác nhau và có thể di chuyển,đứng độc lập hay nối mạng.Các nút mạng có thể phát hiện sự có mặt của các thiết bị khác trong giải vô tuyến và thực hiện sự bắt tay cần thiết để cho phép truyền thông, chia sẻ thông tin và dịch vụ.Tôpô của mạng thông tin tùy biến thay đổi động do các thiết bị không bị ràng buộc vào một vị trí cụ thể nên việc truy nhập phương tiện tập trung. Giao thức định tuyến phải giảm lưu lượng điều khiển, đơn giản tính toán đường định tuyến. Chính vì thế giao thức định tuyến đóng vai trò quan trọng trong vận hành mạng Ad hoc. Đồ án là tổng quan về bốn giao thức định tuyến trong mạng Ad hoc, đánh giá thông lượng của các giao thức đó dựa trên công mô phỏng OMNET++. Do thời gian cũng như trình độ còn hạn chế, đồ án không tránh khỏi những thiếu sót, em rất mong nhận được ý kiến đóng góp. Để có thể hoàn thành được đồ án tốt nghiệp này, em đã được học hỏi những kiến thức quí báu từ các thầy, cô giáo của Trường Đại học Bách Khoa Hà Nội trong suốt

Vũ Huy Cường- ĐT3- K49

1

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc năm năm đại học. Em vô cùng biết ơn sự dạy dỗ, chỉ bảo tận tình của các thầy, các cô trong thời gian học tập này. Em xin bày tỏ lòng biết ơn của mình tới thầy Nguyễn Trung Dũng – Bộ môn Hệ thống viễn thông – Khoa Điện tử viễn thông – Trường Đại học Bách Khoa Hà Nội, người đã định hướng cho những nghiên cứu của em, người trực tiếp hướng dẫn và chỉ bảo em hoàn thành đồ án này. Cuối cùng, em xin cảm ơn gia đình, bạn bè đã luôn tạo điều kiện thuận lợi, động viên và giúp đỡ em trong suốt thời gian học tập và nghiên cứu đồ án. Ngoài ra, kiến thức thu được từ các thầy cô cũng là nguồn cổ vũ tinh thần lớn nhất giúp em có thể tập trung và hoàn thành tốt đề tài tốt nghiệp này. Hà Nội, tháng 5- 2009 Sinh viên Vũ Huy Cường

Vũ Huy Cường- ĐT3- K49

2

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc

TÓM TẮT ĐỒ ÁN
Mạng Ad hoc là một công nghệ hữu dụng trong mạng không dây. Công nghệ này cho phép các nút mạng giao tiếp trực tiếp với nhau bằng cách sử dụng máy thu phát vô tuyến mà không cần có cơ sở hạ tầng cố định. Đây là một đặc trưng riêng của mạng Ad hoc so với các mạng truyền thống trước đây như mạng cellular hay mạng LAN không dây khi ở đó các nút giao tiếp với nhau thông qua trạm gốc (Base Station). Tuy nhiên, mang Ad hoc phải đối mặt với một số thách thức như giới hạn phạm vi truyền dẫn, vấn đề trạm ẩn, mất gói do lỗi đường truyền, sự chuyển động của các nút mạng làm thay đổi tuyến đường, sự rằng buộc về băng thông và năng lượng. Giao thức định tuyến được sử dụng để Khám phá tuyến giữa các nút giúp cho việc giao tiếp trong mạng dễ dàng hơn. Mục đích chính của một giao thức định tuyến trong mạng Ad hoc là thiết lập tuyến đường chính xác và hiệu quả giữa các cặp nút. Đồ án đưa ra tổng quan về bốn giao thức định tuyến: DYMO, DSR, AODV, OLSR, sử dụng công cụ mô phỏng OMNET++ và đánh giá trễ đầu cuối của các giao thức này dựa trên các thông số đặt ra.

Đồ án gồm 5 chương
• Chương 1: Tổng quan về mạng Ad hoc

Chương 2: Định tuyến trong mạng Ad hoc

• Chương 3: Thông số đánh giá và mô hình chuyển động trong mô phỏng mạng Ad hoc

Chương 4: Mô phỏng và đánh giá thông lượng của OLSR, AODV, DSR và DYMO bằng OMNET++

• Chương 5: Kết luận

Vũ Huy Cường- ĐT3- K49

3

This thesis provides an overview of four different routing protocols: DYMO. uses OMNET++ simulator and evaluates throughput of these protocols based on a given set of parameters. DSR. bandwidth and battery constraints. OLSR. AODV. hidden terminal problems. a routing protocol is used to discover routes between nodes.K49 4 . In order to facilitate communication within the network. DSR and DYMO in OMNET++ • Chapter 5: Summary Vũ Huy Cường. packet losses due to transmission errors.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc ABSTRACT Ad hoc networks are the ultimate frontier in wireless communication.induced route changes. OLSR. such as cellular networks and wireless LAN. This technology allows network nodes to communicate directly to each other using wireless transceivers without the need for a fixed infrastructure.ĐT3. The thesis has a total of 5 chapters: • Chapter 1: Overview of Ad hoc network • Chapter 2: Routing in Ad hoc network • Chapter 3: Protocol Evaluation parameters and Mobility models for Ad hoc network simulation • Chapter 4: Simulating and evaluating throughput of AODV. in which nodes communicate with each other through BS. The primary goal of such an Ad hoc network routing protocol is correct and efficient route establishment between a pair of nodes so that message may be delivered in a timely manner. mobility. This is a very distinguishing feature of ad hoc networks with respect to more traditional wireless networks. Some challenges that ad hoc networking faces are limited wireless transmission range.

................18 3 CHƯƠNG 3 THÔNG SỐ ĐÁNH GIÁ VÀ MÔ HÌNH CHUYỂN ĐỘNG TRONG MÔ PHỎNG MẠNG AD HOC............73 Vũ Huy Cường................6 DANH SÁCH BẢNG BIỂU................................................Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc MỤC LỤC LỜI NÓI ĐẦU............................ DSR VÀ DYMO BẰNG OMNET++...................................................44 4 CHƯƠNG 4............................. OLSR....................................................7 CHƯƠNG 2.......................................................................1 TÓM TẮT ĐỒ ÁN......... TỔNG QUAN VỀ AD HOC NETWORK .......................72 PHỤ LỤC.............. MÔ PHỎNG VÀ ĐÁNH GIÁ THÔNG LƯỢNG CỦA AODV..............................69 TÀI LIỆU THAM KHẢO.............................................. KẾT LUẬN.....................................................................................................................................................................................5 DANH SÁCH HÌNH VẼ....................................3 ABSTRACT...................ĐT3........51 5 CHƯƠNG 5...........................................................70 BẢNG THUẬT NGỮ VIẾT TẮT..................................................................... ĐỊNH TUYẾN TRONG MẠNG AD HOC.................................................................................................4 MỤC LỤC........................................................................................................................................................................K49 5 ...............7 1 CHƯƠNG 1.........

............................................5 Ứng dụng cho mạng cá nhân...............29 Hình 2.............62 63 Hình 4............1 Các module đơn giản và kết hợp.................1 Mô hình mô tả khái niệm mạng Ad hoc.....................................63 64 Hình 4...................................40 Hình 2.................................6 Quá trình gửi gói tin dữ liệu của DYMO..........53 54 Hình 4.......................2 Phân loại các giao thức định tuyến trong mạng Ad hoc.6 Ứng dụng cho mạng xe cộ...................................ĐT3.............................................24 Hình 2.............1 Hệ tọa độ cơ bản mô tả môi trường mạng Ad Hoc.K49 6 .........................................................9: Sự khác nhau giữa AODV và DYMO..2 Các kết nối..............................................11 Hình 1...21 Hình 2..................4 Ứng dụng cho home networking................................4 Quá trình gửi bản tin RREQ của DYMO.................................................................................................................9 Hình 1........................ nút C không thể chuyển tiếp từ A đến E qua ..........................................5 Khám phá tuyến trong DSR.......................12 Hình 1...........3 Quá trình phát tràn lan bản tin quảng bá...................28 Hình 2.................................................54 Hình 4........38 Hình 2.............................14 Hình 2.......6 Duy trì tuyến........................34 liên kết tới bước nhảy tiếp theo D của nó........................................................................................................32 Hình 2......................................5 Quá trình gửi bản tin RREP của DYMO.7 Thiết lập tuyến đường đi ngược.....49 Hình 3...........................................1 Mô hình di chuyển Random Waypoint................................ 8 Thiết lập tuyến đường thuận................50 Hình 4.................42 Hình 3........................................................................4 Bầu chọn MPR................................3 Ứng dụng trong các hội nghị...................2 Mô hình di chuyển hướng ngẫu nhiên.......2 Ứng dụng cho các dịch vụ khẩn cấp khi có thiên tai............................Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc DANH SÁCH HÌNH VẼ Hình 1....34 Hình 2........................................64 65 Vũ Huy Cường......12 Hình 1...................................13 Hình 1.

..........................65 Hình 4....67 Thông lượng của OLSR cao hơn AODV và DSR vì OLSR có thể đáp ứng khi topo mạng thay đổi...................................đầu cuối........9 > ta nhận thấy thông lượng tỷ lệ thuận với gói nhận.............67 Qua biểu đồ thông lượng < hình 4......ĐT3...........................9 Thông lượng đầu cuối ................67 Thông lượng 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.................................................................. TỔNG QUAN VỀ AD HOC NETWORK Vũ Huy Cường....... 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..................OLSR có thông lượng cao hơn AODV và DSR...............................................................................67 DANH SÁCH BẢNG BIỂU Bảng 3..1 Bảng các biến trong thông số di chuyển..........Trong khi đó thì DYMO thể hiện được sự ổn định của mình khi có thông lượng khá cao....................K49 7 .......... AODV...................Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Hình 4..........7 Quá trình gửi ACK báo nhận của DYMO...........1 Bảng thông số đánh giá dùng trong mô phỏng...................67 Khi mức độ di chuyển tăng (giảm pausetime) thì thông lượng của 3 giao thức DSR.....47 Bảng 4.....................thông lượng của DYMO vẫn rất cao ........Khi các nút mạng chuyển động liên tục.... OLSR giảm rõ rệt với mức giảm tương đương nhau.........là sự tối ưu của DSR và AODV.66 1 CHƯƠNG 1................

Vì có nhiều ưu thế vượt trội và những thách thức cần giải quyết.2 KHÁI NIỆM Mạng Ad hoc là tổ hợp của các node di động được kết nối với nhau bằng các liên kết không dây. quốc phòng.1 MỞ ĐẦU Mạng máy tính từ lâu đã trở thành một phần không thể thiếu đối với nhiều lĩnh vực đời sống xã hội. các ứng dụng trong nhiều lĩnh vực cuộc sống của mạng Ad hoc. con người vận động không ngừng. đề cập đến các thách thức mà mạng Ad hoc đang phải đối mặt. Mạng Ad hoc đặc biệt hữu ích trong các ứng dụng như khắc phục thảm họa thiên nhiên. Mạng máy tính đưa mọi người trên thế giới đến gần nhau hơn. 1. các node tự do di chuyển nên kiến trúc mạng có thể thay đổi liên tục mà Vũ Huy Cường. Chính nhu cầu này đã kích thích ngành công nghiệp mạng không dây tiềm năng phát triển mạnh mẽ. ngày nay mạng Ad hoc đã và đang được nghiên cứu triển khai thành công ở một số nước mà phổ biến là Mỹ. nhu cầu đặt ra là vừa kết nối vừa có thể di chuyển và có thể kết nối bất cứ đâu một cách đơn giản. hội nghị nên có xu hướng ứng dụng rộng rãi trên thế giới.ĐT3. 1. một người kết nối vào mạng bằng cáp vật lý thì việc di chuyển của họ bị hạn chế. Các thiết bị như vậy có thể giao tiếp với tất cả thiết bị mạng khác ngay lập tức trong dải vô tuyến (vùng phủ sóng. điện thoại di động Internet. Đó là tập hợp của hai hay nhiều thiết bị được trang bị khả năng nối mạng và truyền thông không dây.K49 8 . Thiết bị hỗ trợ mạng Ad hoc đa dạng và sử dụng khá phổ biến như laptop. Mạng Ad hoc là một kiểu mạng không dây rất linh hoạt. y tế.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Chương này trình bày các khái niệm tổng quan nhất về mạng Ad hoc. mỗi người được tiếp cận với một nguồn thông tin. phạm vi mà thiết bị mạng đó nhận biết được) hay một thiết bị vô tuyến khác nằm ngoài dải vô tuyến của chúng với điều kiện có các node trung gian để chuyển tiếp thông tin từ node nguồn đến node đích. tri thức phong phú. Xã hội phát triển. Đồng thời. từ các hệ thống mạng cục bộ đến hệ thống mạng toàn cầu như Internet.

thì tất cả các nút mạng phải có khả năng chuyển tiếp gói tin đến nút mạng khác. máy trạm di động có địa chỉ IP.ĐT3. Nút mạng có thể ra vào bất cứ lúc nào. Một router thực hiện các giao thức định tuyến.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc không dự đoán được. nó đảm bảo mạng sẽ không bị sập vì trường hợp nút mạng di chuyển ra ngoài khoảng truyền dẫn của các nút mạng khác. do vậy tất cả các nút mạng trong Ad hoc có thể hoạt động như máy trạm và router. Đây là một đặc điểm riêng biệt của mạng Ad hoc so với các mạng không dây truyền thống – mạng chia ô. Mỗi node mạng có một giao diện vô tuyến giao tiếp với các node mạng khác thông qua sóng vô tuyến hoặc hồng ngoại. Để làm được điều này. trong đó các node (các thuê bao di động ) liên lạc với nhau thông qua trạm vô tuyến cơ sở.K49 9 . Nên nút mạng có thể bao gồm một router và một máy trạm liên kết với nhau. Các mạng này không dùng bất cứ sự hỗ trợ cơ sở hạ tầng mạng cố định hay chịu sự quản lí tập trung nào.1 Mô hình mô tả khái niệm mạng Ad hoc Trong Ad hoc không tồn tại khái niệm quản lý tập trung. Vũ Huy Cường. Hình 1. Do khoảng truyền dẫn của nút mạng là hạn chế nên chúng trao đổi thông tin bằng phương pháp truyền gói tin qua nhiều bước (Multihops). mạng WLAN.

sinh viên trao đổi thông tin với nhau trong tiết Vũ Huy Cường. Các giao thức định tuyến có cơ chế tự phát hiện các thay đổi về định tuyến thông qua các thuật toán định tuyến thông thường như vector khoảng cách và trạng thái các liên kết. không tồn tại trong mạng tế bào. Ví dụ: khách hàng có thể chia sẻ tệp tin dữ liệu ở sân bay. nút mạng bị ảnh hưởng có thể yêu cầu đường định tuyến mới và vấn đề sẽ được giải quyết.K49 10 .Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Ad hoc cũng có khả năng thực hiện thay đổi về cấu hình mạng và khắc phục sự cố của nút mạng thông qua thủ tục cấu hình lại mạng. môi trường vô tuyến cũng có các đặc điểm đặc biệt mà người thiết kế cần lưu tâm khi đưa ra các giao thức định tuyến cho Ad hoc.4 ỨNG DỤNG Ad hoc được ứng dụng cho hội thảo. tuy nhiên với người sử dụng Ad hoc vẫn hoạt động bình thường. chỉ cho phép một nút mạng nghe nút mạng kia. Một đăc điểm khác của các nút mạng trong mạng Ad hoc: bị giới hạn về khả năng của CPU. Liên kết một chiều chỉ có trong Ad hoc. Nó cũng được sử dụng cho trường hợp triển khai cơ sở hạ tầng mạng là khó khăn. Điều này sẽ gây ra trễ trên mạng. Khi năng lượng sử dụng bị giới hạn kéo theo giới hạn về khả năng truyền dẫn. Thiết bị truy nhập. 1. Ví dụ: các liên kết một chiều. Ad hoc có nhiều ưu điểm của mạng truyền thông vô tuyến thông thường. Ví dụ: Nếu nút mạng rời khỏi mạng sẽ gây ra sự cố liên kết. dung lượng pin và băng thông.3 ĐẶC ĐIỂM Ad hoc thường được mô tả có cấu trúc mạng thay đổi do sự thay đổi vị trí của các nút mạng. Sử dụng phương pháp định tuyến nhiều bước thì các nút mạng có thể tiết kiệm được năng lượng phát ra.ĐT3. bộ nhớ. nó xuất hiện trong trường hợp 2 nút mạng có công suất phát khác nhau nên có khoảng truyền dẫn khác nhau. ứng dụng trong quân sự. liên kết giữa các nút mạng được hình thành ngay khi chúng nằm trong khoảng truyền dẫn của nhau 1.

hội thảo cần trao đổi thông tin giữa các đại biểu hoặc với hội nghị khác. thì nhóm các máy tính đó hình thành mạng Ad hoc. Điều này có thể không có ý nghĩa với khu vực tổn thất nhỏ. Đây là một nhu cầu lớn trong thời đại phát triển nhanh về thông tin như hiện nay. Tuy nhiên..2 Ứng dụng cho các dịch vụ khẩn cấp khi có thiên tai 1.ĐT3. Hình 1. việc liên lạc rất quan trọng nên Ad hoc trở thành giải pháp hữu ích.K49 11 . khi cơ sở hạ tầng bị hỏng hoặc không còn hoạt động thì giải pháp là gì? Ad hoc chính là câu trả lời nhanh nhất và phù hợp nhất. máy scan.2 Hội nghị Trong hội nghị.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc học… Khi máy tính di động giao tiếp thông qua giao diện mạng LAN vô tuyến.4.1 Dịch vụ khẩn cấp Bất kỳ đâu khi có trường hợp khẩn cẩp xảy ra đều cần có sự kết hợp của các nhân viên cứu hộ.2.. Giải pháp thông thường là dùng thiết bị vô tuyến. Giải pháp hiện tại là sử dụng các Vũ Huy Cường. tuy nhiên với thảm họa thiên nhiên có khu vực ảnh hưởng tàn phá rộng lớn. 1. tài nguyên trên mạng như máy in. khi đó máy tính có thể truy nhập Internet. khi mà giải pháp homenetwork chưa thật sự sẵn sàng.

3 Ứng dụng trong các hội nghị 1.3 Home Networking Rõ ràng sự hiện diện của máy tính xách tay và ứng dụng không dây làm nhu cầu về home network tăng cao.2.4 Mạng cá nhân (PAN) Vũ Huy Cường.4 Ứng dụng cho home networking 1.ĐT3.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc mạng có sẵn cho các đại biểu tham dự tuy nhiên nó có độ trễ lớn.Và Ad hoc là giải pháp chiếm ưu thế.2. ví dụ giải pháp Mobile IP . Hình 1. điều này tiện lợi cho cả người không thật sự am hiểu về mạng cũng như giảm được chi phí cho xây dựng thiết kế mạng.Việc sử dụng kỹ thuật của Ad hoc cho phép chúng tự cấu hình và hình thành mạng. trường học thì khối lượng thông tin quản lý mạng giảm xuống rõ rệt. nếu ta có nhu cầu sử dụng máy tính ở công sở. Hơn nữa. Hình 1.K49 12 .

.) khi chúng được liên kết với nhau hình thành mạng cá nhân PAN thì rõ ràng mang lại nhiều tiện ích hơn cho người sử dụng. Hình 1. có thể điều chỉnh volume của TV khi có cuộc gọi đến.K49 13 . chia sẻ và trao đổi Vũ Huy Cường.đáp ứng nhiều nhu cầu của người sử dụng.5 Hệ thống nhúng (embeded system) Ngày càng có nhiều máy móc cần kết nối với những vật xung quanh kéo theo nhu cầu của Ad hoc. là hệ thống mạng không cần cơ sở hạ tầng.Palm. tuy nhiên khi kết nối với mạng PAN khác cần trợ giúp của Ad hoc.2. tương tác được với home network để tìm kiếm dữ liệu trên internet hoặc có thể kết nối với điện thoại...6 Mạng xe cộ (vehicular network) VANET (Vehicular Ad Hoc Network) gọi là mạng xe cộ Ad hoc.. 1. PAN là mạng di động do con người không thể ngồi yên một chỗ..ĐT3.5 Ứng dụng cho mạng cá nhân 1. được tạo thành từ các phương tiện xe cộ lưu thông trên đường. Chúng được trang bị thiết bị thu phát để có thể liên lạc. Nó có thể là đồ chơi có khả năng kết nối mạng.2.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Ở thời đại thông tin thì 1 người cần mang theo nhiều công cụ hỗ trợ cho công việc (điện thoại.

kỹ thuật nhịp cảm biến được áp dụng để giám sát chất lượng có thể giúp ngăn ngừa các sản phẩm không đạt yêu cầu nên tăng mức thỏa mãn cho khách hàng.Các bộ cảm biến có thể có kích thước nhỏ nhưng khả năng truyền thông và lưu trữ tương đối tốt. các bộ cảm biến có thể giúp xác định chất lượng đất trồng và độ ẩm.. Vũ Huy Cường. Hiện nay đã có những quan tâm đáng kể cho sự phát triển kiểu mạng này. Trong quân sự đã dùng những máy móc hiện đại nhưng kích cỡ gần như hạt bụi nên đối phương rất khó phát hiện và phá hủy chúng. nguy hiểm cần tránh và cả những dịch vụ thông thường như dịch vụ đa phương tiện.K49 14 . Trong nông nghiệp. khảo cổ học.. Trong công nghệ thực phẩm.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc thông tin với nhau giống như một nút trong mạng Ad hoc. Thông tin trao đổi trong mạng VANET bao gồm thông tin về lưu lượng xe cộ. tình báo.7 Mạng cảm biến (sensor network) Mạng cảm biến không dây là một ứng dụng điển hình của Ad hoc.6 Ứng dụng cho mạng xe cộ 1. tai nạn giao thông.ĐT3. chúng cũng có thể phát hiện các hợp chất khác.2. Trong lĩnh vực y tế. công an. nghiên cứu địa lý.chủ yếu là trong quân sự. Internet... tình trạng kẹt xe. các bộ cảm biến cho phép giám sát liên tục thông tin tiêu chuẩn về sự sống.. Hình 1..

Giao thức MAC phải tính đến truy nhập kênh trong khi đồng thời phải tránh được sự xung đột với các nút lân cận. Ngoài ra. nhiều giao thức điều khiển truy nhập phương tiện MAC (Media Access Control) cũng không giải quyết được sự di động của nút mạng. Phổ tần không chỉ được cấp phát và giám sát chặt chẽ mà còn cần phải được trả phí. do cùng một phương tiện truyền thông được chia sẻ bởi nhiều bên tham gia nên thủ tục truy nhập đến kênh chung phải được thực hiện theo kiểu phân bố nhờ sự hỗ trợ của giao thức MAC. 1.3 Cơ chế truy nhập Không giống như mạng tế bào. vấn đề đầu cuối ẩn và các vấn đề liên quan khác.3. được cấp phát. Trong mạng Ad hoc. mạng Ad ho phải hoạt động qua một số dải phổ cụ thể nào đó. các kỹ thuật lập lịch trình và định thời để hỗ trợ QoS gặp nhiều khó khăn. Do vậy.2 Chi phí cho việc sử dụng tần số Hầu hết các mạng Ad hoc thử nghiệm hiện nay đều dựa trên băng tần ISM. trong mạng Ad hoc không có sự điều khiển tập trung và đồng bộ toàn cục.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Ngoài ra. Do đó các phương pháp đa truy nhập truyền thông như TDMA và FDMA không còn thích hợp nữa.ĐT3. Do vậy. 1. các bộ cảm biến cũng được sử dụng rộng rãi trong thông tin thời tiết và môi trường. khi tính toán thiết kế các giao thức MAC cho mạng Ad hoc phải tính đến khả năng di chuyển.4 Định tuyến và chuyển tiếp gói tin trong MANET Vũ Huy Cường.K49 15 . 1. Để ngăn ngừa nhiễu.3.3.3 NHỮNG THÁCH THỨC ĐỐI VỚI MẠNG AD HOC 1.

Tuy nhiên.5 Hiệu quả sử dụng nguồn nuôi Hầu hết các giao thức trong mạng hiện nay không quan tâm đến tiêu tốn năng lượng nguồn nuôi vì các máy chủ và các bộ tính tuyến thường được giả định là tĩnh và được cấp nguồn từ nguồn điện chính.ĐT3. Vũ Huy Cường. TCP là một giao thức hướng liên kết nên cần có một giai đoạn thiết lập kết nối ưu tiên cho việc truyền dữ liệu. Kết nối bị loại bỏ khi việc truyền dữ liệu hoàn thành. các thiết bị dị động hầu hết được cấp nguồn từ nguồn nuôi độc lập.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Đặc tính động của mạng Ad hoc gây ra sự thay đổi thường xuyên và khó đoán trước của topo mạng. 1. TCP giả sử rằng các nút trong tuyến là tĩnh nên việc điều khiển nghẽn và điều khiển luồng chỉ được thực hiện ở các nút nguồn và đích.3.Kỹ thuật nguồn nuôi vẫn thường đi chậm hơn so với kỹ thuật vi xử lý. tuy nhiên giá thành vẫn còn khá cao).3. Do vậy. đối với mạng Ad hoc. Nhiều giao thức và thuật toán định tuyến đã được đề xuất cho mạng Ad hoc. làm tăng độ khó và độ phức tạp để định tuyến giữa các nút di động. 1. Thời gian cấp nguồn của pin loại tốt như Li-ionh hiện nay cũng chỉ tối đa từ 2 đến 3 giờ (hiện nay đã có một số laptop có thời gian sử dụng lên đến 8h. Với internet hiện nay. Đặc biệt. giao thức mạng IP là phi kết nối nên cần có một giao thức truyền dẫn hướng kết nối đáng tin cậy qua một giao thức mạng không tin cậy. đặc biệt là các nút trung gian. Sự giới hạn thời gian hoạt động như thế nói lên tính cần thiết phải bảo tồn tốt nguồn nuôi. tuy nhiên mỗi giao thức lại có một hạn chế riêng.K49 16 . do các thiết bị di động phải thực hiện vai trò của cả hệ thống đầu cuối (tương tác người dùng khi thực hiện các ứng dụng người dùng) lẫn vai trò của một hệ thống trung gian (chuyển tiếp gói tin) nên sẽ tiêu tốn năng lượng nguồn nuôi một cách đáng kể. Tuy nhiên. nghiên cứu về các giao thức định tuyến trong Ad hoc là một vấn đề rất quan trọng.6 Đặc tính TCP TCP (Transmission Control Protocol) là một giao thức cuối-cuối được thiết kế phục vụ việc điều khiển nghẽn và điều khiển luồng trong mạng.

ràng buộc năng lượng.4.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc TCP dựa vào việc đo đạc thời gian toàn trình-RTT (Round Trip Time) và mức tổn thất gói để kết luận là có nghẽn mạch xảy ra trong mạng hay không. TCP không thể phân biệt được sự có mặt của tính di động và sự nghẽn mạng.K49 17 . topo mạng thường xuyên thay đổi.băng thông Vũ Huy Cường. 1. tỉ lệ lỗi cao. cần có một số cải tiến để bảo đảm rằng giao thức truyền dẫn thực hiện tốt mà không ảnh hưởng đến thông lượng truyền thông cuối-cuối. Các giao thức MAC dựa trên truy nhập ngẫu nhiên không hỗ trợ QoS. TỔNG KẾT Chương này đã trình bày những lý thuyết tổng quan mạng Ad hoc.2 Chất lượng dịch vụ (QoS) Khả năng cung cấp QoS của một mạng phụ thuộc vào các đặc tính bên trong của toàn bộ các thành phần mạng. các giao thức định tuyến trong mạng Ad hoc cần giải quyết sự di chuyển của nút. Các nút chuyển động trong một kết nối có thể gây tổn thất gói và làm cho RTT dài hơn. Do vậy. Các giao thức định tuyến trong mạng Ad hoc cần có hỗ trợ tính năng xác thực. hỗ trợ truyền thông unicast tin cậy. Do vậy. từ các liên kết truyền phát đến tầng MAC và tầng mạng. Các giao thức MAC QoS giải quyết vấn đề về xung đột phương tiện. Các kết nối không dây có năng lực thấp và hay thay đổi. 1.ĐT3.3 Tính an toàn và bảo mật Môi trường vô tuyến trong mạng Ad hoc là “mồi ngon béo bở” cho các cuộc tấn công mạo danh do đặc tính quảng bá của nó. và cung cấp việc dự trữ tài nguyên cho các lưu lượng thời gian thực trong môi trường không dây phân tán. Rất nhiều các giao thức MAC và các cải tiến đã được đề xuất để cung cấp việc đảm bảo QoS cho lưu lượng thời gian thực trong môi trường không dây phân tán bao gồm giao thức GAMA/PR và cơ chế xung đột BB. mã hóa để nâng cao tính an toàn. Trong mạng Ad hoc. Các topo mạng là động và có tỷ lệ mất gói cao.4. hiệu năng của mạng.

AODV.1 GIAO THỨC ĐỊNH TUYẾN CỔ ĐIỂN Vũ Huy Cường. tuy nhiên.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 2 CHƯƠNG 2. DSR và DYMO.ĐT3.K49 18 . làm tăng độ khó và độ phức tạp để định tuyến giữa các nút di động. Nhiều giao thức định tuyến được đưa ra. 2. ĐỊNH TUYẾN TRONG MẠNG AD HOC Đặc tính động của Ad hoc gây ra sự thay đổi thường xuyên và khó đoán trước của topo mạng. Chương này trình bày 4 loại giao thức trong mạng Ad hoc: OLSR. chúng vẫn gặp phải một số hạn chế nhất định.

các giao thức định tuyến đưa ra với Ad hoc đều dựa trên một giao thức định tuyến cổ điển làm thuật toán cơ bản. việc tìm hiểu nghiên cứu các hoạt động cơ bản của các giao thức này là hết sức cần thiết.. Giao thức cổ điển như: định tuyến theo vector khoảng cách. Các cấu hình mạng thay đổi có thể hình thành định tuyến khép kín (loop). hoạt động hiệu quả ở mạng Ad hoc có tốc độ di chuyển thấp. chúng sẽ tiêu tốn băng thông. Tuy nhiên. Ngoài ra.Định tuyến dựa trên trạng thái liên kết Phương pháp định tuyến dựa trên trạng thái liên kết dựa trên giá của mỗi liên kết (cost) và nút mạng phải duy trì cấu trúc mạng hoàn chỉnh với tham số này. thông tin cập nhật định tuyến lớn.ĐT3.1. Mỗi nút mạng khi nhận được các thông tin này sẽ cập nhật cấu trúc mạng và sử dụng thuật toán tìn đường đi ngắn nhất để chọn nút mạng tiếp theo cho đường định tuyến đến nút mạng khác. giao thức định tuyến cổ điển rằng buộc liên kết phải là hai chiều. Tham số “giá” sẽ được cập nhật bằng cách mỗi nút mạng sẽ gửi thông tin quảng bá một cách liên tục “giá” của các liên kết xuất phát từ nó tới tất cả các nút mạng khác sử dụng thuật toán flooding.K49 19 . do đó.. nên với số lượng nút mạng tăng. nên cần có những cải thiện nhất định cho thông tin vô tuyến nói chung và mạng Ad hoc nói riêng. yêu cầu trao đổi giữa các nút mạng tăng lên.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Hiện nay. năng lượng và CPU. nó không quan tâm nút mạng có tham giao truyền thông tin trong mạng tại mọi thời điểm hay không. giao thức này hoạt động phụ thuộc vào bản tin điều khiển định tuyến. tuy nhiên. Liên kết có thể có giá không chính xác do nhiều nguyên nhân như trễ đường truyền. Định tuyến dựa trên vector khoảng cách Vũ Huy Cường.1. sự phân tách của mạng. đường định tuyến kiểu này có thời gian tồn tại ngắn vì chúng sẽ bị xóa ngay khi bản tin đã đi qua toàn bộ mạng.1. cấu trúc mạng ít thay đổi. 2. các giao thức này chỉ thích hợp cho cấu trúc mạng tĩnh. Hơn nữa. Bởi vì hai loại giao thức định tuyến trên duy trì định tuyến đến tất cả các nút mạng. 2. định tuyến theo trạng thái liên kết đã được sử dụng từ rất lâu và đã trở nên rất quen thuộc.

Giao thức này hoạt động hiệu quả hơn. dung lượng lưu trữ.K49 20 .2. nó có thể sinh ra đường định tuyến khép kín có thời gian tồn tại thay đổi dài ngắn khác nhau. Ví dụ các đường truyền vô hướng. công suất nguồn và dải thông.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Phương pháp này định tuyến dựa trên vector khoảng cách. 2. Nút mạng khác khi nhận được thông tin này sẽ tính toán lại bảng định tuyến thông qua thuật toán tìm đường đi ngắn nhất. đơn giản hơn và yêu cầu ít bộ nhớ lưu trữ hơn. Thách thức trong việc thiết kế các giao thức định tuyến là khả năng cập nhật được mức di động của nút mạng. Những đường truyền này xuất hiện khi hai nút có cường độ khác nhau và cho phép chỉ một nút nghe được nút kia. Song. Môi trường truy cập. Đa chặng trong môi trường vô tuyến có thể gây ra tăng ích công suất truyền và tăng ích công suất do mối quan hệ căn bậc hai giữa vùng phủ sóng Vũ Huy Cường. có cải tiến hơn so với phương pháp định tuyến dựa trên trạng thái liên kết: mỗi nút mạng chỉ giám sát giá của liên kết xuất phát từ nó. Nhưng chúng cũng có thể xuất hiện do nhiễu từ môi trường xung quanh. nó gửi quảng bá đều đặn đến nút liền cạnh thông tin về khoảng cách ngắn nhất tới nút khác trong mạng.2 GIAO THỨC ĐỊNH TUYẾN CHO MẠNG AD HOC 2. Chích mức di động này là nguyên nhân làm thay đổi toàn bộ cấu trúc topo của mạng. Một nút di động thường bị giới hạn bởi khả năng xử lý của CPU.1 Các yêu cầu chung Do các nút trong mạng Ad Hoc luôn di động và có nhiều đặc tính khác biệt nên không thể áp dụng các giao thức định tuyến thông thường. Đối với mạng Ad Hoc. môi trường vô tuyến cũng có những thuộc tính đặc biệt cần phải chú ý khi thiết kế các giao thức cho mạng Ad Hoc.ĐT3. giao thức định tuyến động tỏ ra hiệu quả và phù hợp hơn các phương pháp định tuyến dựa trên vectơ khoảng cách và trạng thái liên kết. và không quảng bá thông tin đến tất cả nút mạng. vì bảng định tuyến có thể xây dựng từ thông tin đã tồn tại lâu quá trên mạng (không được cập nhật). Các mạng Ad Hoc thường được đặc trưng bởi một topo động do các nút di chuyển làm thay đổi vị trí vật lý của chúng.

các nút có thể truyền các gói tin đi sử dụng công suất ra thấp. hoặc tăng tải lưu lượng mong muốn trên mạng là thách thức đói với các giao thức trong mạng Ad Hoc. Vũ Huy Cường. Trục đầu tiên là số các nút trong mạng.1 Hệ tọa độ cơ bản mô tả môi trường mạng Ad Hoc Yêu cầu đối với một giao thức định tuyến cho mạng Ad hoc là gì? Sau đây là một số yêu cầu quan trọng: • Hoạt động phân tán: Giao thức định tuyến trong mạng Ad Hoc phải là giao thức phân tán yêu cầu độ tin cậy cao.1 Mô tả các trục cơ bản có thể sử dụng để đặc tả môi trường mạng Ad Hoc.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc và công suất phát ra. Hình 2. Hình 2.K49 21 .ĐT3. Do các nút là di động nên giao thức định tuyến tập trung là không phù hợp. vấn đề định tuyến trở nên khó khăn hơn. Tăng số nút. tăng tốc độ thay đổi topo (nghĩa là tăng tính di động của nút). Mỗi nút mạng phải đủ thông minh để tạo các quyết định định tuyến sử dụng các nút lân cận. Khi môi trường di chuyển từ gốc của 3 trục. Bằng cách sử dụng đa chặng. Trục thứ hai là tốc độ mà tại đó topo mạng thay đổi. Trục thứ ba là tải lưu lượng trong mạng.

• Sử dụng các siêu nút: Tất cả các giao thức hiện có đều giả định rằng các nút di động là có cùng các đặc tính dựa trên bản chất của mạng tự tổ chức là tập hợp của các nút ngang hàng. điều này sẽ làm giảm lãng phí băng thông và công suất tiêu hao của CPU. có trường hợp mà ở đó mạng có các nút có băng thông cao. Vùng backbone bao gồm các siêu nút.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc • Không lặp vòng: Để nâng cao chất lượng hoạt động. trễ lớn do hoạt động dựa trên yêu cầu là không chấp nhận được. Vũ Huy Cường. Sử dụng kiểu liên kết này và kiểu liên kết hai chiều sẽ nâng cao hiệu năng của giao thức định tuyến.K49 22 . Thêm vào đó các siêu nút thường được giả định là có độ di chuyển thấp hơn các nút thường để duy trì sự ổn định của backbone. • Hỗ trợ các liên kết một chiều: Môi trường vô tuyến có thể là nguyên nhân hình thành các liên kết theo một hướng. giao thức định tuyến cần đảm bảo đường định được cung cấp không bị lặp vòng. • Hoạt động dựa trên yêu cầu: Tối thiểu hóa phần thông tin điều khiển trong mạng. Nó chỉ tìm đường khi cần thiết và không quảng bá thông tin điều khiển liên tục. Do đó phải sử dụng đặc tính tiên phong nếu tài nguyên của mạng (về mặt giải thông) nằm trong khoảng cho phép. • Tính tiên phong (proactive): Trong một số trường hợp. Các mạng tự tổ chức trong trường hợp này thường có cấu trúc 2 mức: vùng backbone và vùng phụ. Mặc dù điều này có thể đúng trong một số trường hợp. Các nút như vậy được gọi là các siêu nút. nguồn nuôi ổn định. Các nút thường không cần có quyết định định tuyến. giao thức định tuyến thuộc nhóm định tuyến theo yêu cầu có thể đáp ứng được điều này. liên kết không dây tốc độ cao hơn so với các nút khác. tuy nhiên.ĐT3.

2. Vũ Huy Cường.K49 23 .2. các phương thức phân loại hợp lý là rất quan trọng. • Bảo toàn năng lượng: Nút mạng trong mạng Ad hoc có thể là máy tính xách tay hay loại client nhỏ gọn khác như PDA thường có giới hạn về thời gian sử dụng của pin. nó phụ thuộc vào mục đích của mạng. Các phương thức phân loại giúp cho các nhà nghiên cứu và các nhà thiết kế hiểu được những đặc trưng khác nhau và mối quan hệ giữa các giao thức.2.Vấn đề là việc phân bổ các khóa và các nút trong mạng Ad hoc. Nếu như một đường định tuyến không sử dụng được nữa thì một đường định tuyến khác có thể thay thế. Các đặc trưng này chủ yếu liên quan đến việc tập hợp thông tin định tuyến. chẳng hạn. giao thức định tuyến sử dụng cần hỗ trợ chế độ chờ của nút mạng... • Hỗ trợ QoS: Có nhiều loại QoS cần được sự hỗ trợ của các giao thức định tuyến. 2. giao thức không cần khởi tạo lại thủ tục tìm đường. • Nhiều đường định tuyến: Nhằm giảm số lần tác động do sự thay đổi về cấu trúc mạng và khi nhiều đường định tuyến bị nghẽn. Do đó. Sử dụng phương thức này. khai thác thông tin. hỗ trợ lưu lượng thời gian thực.2. các giao thức định tuyến cho mạnh Ad hoc được phân chia như bảng 2. 2. đến vai trò mà một nút có thể đảm nhận trong quá trình định tuyến. nên cần có chế độ chờ (standby mode) để tiết kiệm năng lượng.2 Phân loại Để so sách và phân tích các giao thức định tuyến cho mạng Ad hoc. Như vậy. do đó mã hóa và chứng thực là cách bảo mật thông thường nhất được áp dụng hiện nay. định tuyến theo yêu cầu và định tuyến lai Một trong những phương thức phổ biến nhất để phân loại các giao thức định tuyến cho mang Ad hoc là dựa trên việc thông tin định tuyến được tập hợp và được duy trì như thế nào bới các nút di động.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc • Bảo mật: Môi trường vô tuyến rất dễ bị tấn công.ĐT3.1 Định tuyến theo bảng.

Giao thức định tuyến trạng thái liên kết tối ưu OLSR (Optimized Link State Routing) và giao thức định tuyến vector khoảng cách tuần tự đích DSDV (Dynamic DestinationSequenced Distance-Vector Routing) là hai ví dụ của giao thức định tuyến proactive • Các giao thức định tuyến reactive: còn được gọi là các giao thức định tuyến theo yêu cầu (on-demand). Sử dụng các giao thức này. Việc này được thực hiện thông qua hoạt Vũ Huy Cường. Khi topo mạng thay đổi.ĐT3. các nút truyền các bản tin thông báo cho nhau để cập nhật thông tin về tuyến của toàn bộ mạng. các nút di động cố gắng đánh giá liên tục các tuyến trong mạng để khi một gói cần phải chuyển tiếp thì tuyến đó đã sẵn sàng để sử dụng.2 Phân loại các giao thức định tuyến trong mạng Ad hoc • Các giao thức định tuyến proactive: còn được gọi là các giao thức định tuyến theo bảng (table-driven).Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Hình 2. Sử dụng các giao thức này.K49 24 . do đó tiêu đề định tuyến trong các giao thức này là khá lớn. Tất cả các nút trong mạng sẽ cập nhật các bảng này để duy trì một cách phù hợp thông tin và tình trạng của mạng. Mỗi nút duy trì một hay nhiều bảng chứa thông tin định tuyến tới các nút trong mạng. thủ tục xác định tuyến chỉ được gọi theo yêu cầu.

2. các giao thức định tuyến bất đồng bộ trong mạng Vũ Huy Cường.2. sử dụng định tuyến theo yêu cầu thì việc gửi gói tin sẽ có trễ lớn do nút nguồn phải tìm đường trước khi gửi dữ liệu. Do đó. duy trì tuyến là một hoạt động quan trọng của định tuyến theo yêu cầu. Thông thường. WRP. Trong một số trường hợp.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc động khám phá tuyến đường (route discovery). một số nút đảm nhận vai trò quản lý và chức năng khác nhau. Các giao thức này thường giả định rằng cấu trúc mạng là phẳng. 2. DSR. • Các giao thức định tuyến lai (hybrid) được đề xuất để kết hợp ưu điểm của 2 loại giao thức trên và khắc phục các nhược điểm của chúng. Trong giao thức định tuyến đồng bộ. Các giao thức định tuyến bất đồng bộ có thể được phân chia dựa trên việc tổ chức các nút di động.ĐT3. tất cả các nút di động có cùng vai trò và chức năng. các giao thức lai được triển khai trong mạng có cấu trúc phân cấp. Theo đó. AODV và DSDV là những ví dụ về định tuyến đồng bộ. Khi đó. ít tiêu đề định tuyến là 1 ưu điểm của định tuyến theo yêu cầu. Trong một giao thức định tuyến bất đồng bộ. các tuyến đang hoạt động có thể bị đứt do tính di động của nút. các phương pháp định tuyến bất đồng bộ gắn liền với cấu trúc mạng phân cấp để dể dàng tổ chức và quản lý các nút.2 Cấu trúc và phân bổ tiến trình định tuyến Một phương thức phân loại khác là dựa trên vai trò có thế có của nút trong cơ chế định tuyến. Tuy nhiên. So sánh với định tuyến theo bảng. Quá trình khám phá tuyến kết thúc sau khi hoặc có một tuyến được tìm ra hoặc không có tuyến nào sẵn có sau khi đã kiểm tra toàn bộ các tuyến đường.K49 25 . Zone Routing Protocol (ZRP) và Hybrid Ad Hoc Routing Protocol là những ví dụ của giao thức lai. Trong mạng Ad hoc. chức năng định tuyến và quản lý được thực hiện như thế nào. Thuật toán phân tán được sử dụng để lựa chọn các nút đặc biệt này. các đặc tính định tuyến theo bảng và định tuyến theo yêu cầu sẽ được khai thác độc lập ở các mức phân cấp khác nhau. Hai giao thức reactive điển hình là giao thức định tuyến vector khoảng cách theo yêu cầu AODV (Ad hoc On-demand Distance Vector Routing) và giao thức định tuyến định tuyến nguồn động DSR (Dynamic Source Routing).

Các nút di động được nhóm thành các nhóm. các thuật toán xây dựng vùng khác nhau được triển khai cho việc tổ chức nút. như là xây dựng và theo dõi đường định tuyến. định tuyến phân cấp theo nhóm và định tuyến theo nút lõi. Các giao thức định tuyến theo nhóm sử dụng thuật toán xây dựng nhóm cho việc bầu chọn trưởng nhóm (cluster-head).Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Ad hoc được chia thành định tuyến phân cấp theo vùng. Associatively Based Routing (ARB) và Vũ Huy Cường. một số thuật toán xây dựng vùng sử dụng thông tin vị trí địa lý. giả định có cùng xác suất lỗi có thể không tồn tại trong mạng Ad hoc. giảm xung đột gói tin. ví dụ. Một số nút hoạt động như là gateway và đảm nhận truyền thông liên vùng. quảng bá gói tin dữ liệu. Clusterhead Gateway Switch Routing (CGSR) là một ví dụ của định tuyến theo nhóm. Trong các giao thức định tuyến theo nút lõi. sự ổn định liên kết phải được cân nhắc trong pha xây dựng tuyến đường.3 Khai thác các metric mạng cho định tuyến Các metric sử dụng cho việc xây dựng tuyến đường có thể được sử dụng để phân loại các giao thức định tuyến trong mạng Ad hoc. các nút đặc biệt được tự động lựa chọn để gộp thành 1 backbone trong mạng.ĐT3. ZRP và ZHLS là hai giao thức định tuyến theo vùng cho mạng Ad hoc. Nếu tất cả các liên kết không dây có cùng xác suất lỗi thì đường định tuyến ngắn sẽ ổn định hơn đường định tuyến dài và có thể giảm tiêu đề lưu lượng. Tuy nhiên. Khai thác hiệu quả việc phân chia vùng sẽ giảm được đáng kể tiêu đề để duy trì thông tin định tuyến. 2. Theo đó. Trong các giao thức định tuyến theo vùng. CoreExtraction Distributed Ad Hoc Routing (CEDAR) là một ví dụ điển hình của loại định tuyến này. tuyến nào có số chặng nhỏ nhất sẽ được lựa chọn. Gần như mọi giao thức định tuyến cho mạng Ad hoc sử dụng “số chặng” làm metric. Vi dụ. trưởng nhóm đóng vai trò quản lý thành viên và đảm nhận chức năng định tuyến. Các nút di động trong cùng một vùng biết đường đến các nút khác sẽ có chi phí nhỏ hơn so với việc duy trì thông tin định tuyến tới tất cả các nút trong toàn mạng.K49 26 .2.2. Nếu có nhiều tuyến đường có sẵn. Các nút “backbone” đảm nhận các vai trò đặc biệt.

Ngoài các giao thức định tuyến theo topo. các nút tập hợp thông tin topo mạng cho việc định tuyến. DSDV là giao thức định tuyến theo đích. 2.4 Ước lượng topo. DSR là giao thức định tuyến theo topo và AODV.2. các giao thức định tuyến QoS cho mạng Ad hoc có thể sử dụng các metric.2. Sau đây là một số giao thức định tuyến được đề xuất cho mạng Ad hoc. Ví dụ. hoàn toàn thích hợp cho mạng di động Ad hoc. Trong các giao thức này. Để đáp ứng các yêu cầu này. như là băng thông. Với sự phổ biến của điện toán di động.K49 27 . Giống như mạng có dây. mối quan hệ về vị trí giữa các nút chuyển tiếp gói tin và nút đích. 2. Ví dụ. trễ. Việc sẵn có của hệ thống định vị toàn cầu (GPS) hoặc các hệ thống định vị tương đương cho phép các nút di động truy nhập thông tin vị trí địa lý một cách dễ dàng. một nút chỉ cần biết next-hop trên đường định tuyến khi chuyển tiếp gói tin tới đích. băng thông và độ ổn định liên kết được sử dụng trong CEDAR làm metric cho việc xây dựng tuyến đường. Trong các giao thức định tuyến theo vị trí.3 OPTIMIZED LINK STATE ROUTING(OLSR) OLSR là giao thức định tuyến theo bảng và là một sự tối ưu của giao thức trạng thái liên kết cổ điển. trễ jitter. đích. OLSR tối thiểu hóa tiêu đề định tuyến bằng cách chỉ sử dụng các nút được chọn để phát tràn lan lưu Vũ Huy Cường. vị trí cho định tuyến Trong một giao thức định tuyến theo topo cho mạng Ad hoc. một số giao thức định tuyến theo đích được đề xuất cho mạng Ad hoc. cùng với sự di chuyển của nút.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Signal-Based Routing (SSR) được đề xuất để sử dụng sự ổn định liên kết và độ mạnh tín hiệu như là một metric cho định tuyến.ĐT3. một số ứng dụng di động có thể có các yêu cầu QoS khác nhau. các metric QoS tương ứng lên được sử dụng cho việc định tuyến và chuyển tiếp gói tin trong mạng Ad hoc. tỉ lệ lỗi gói tin và chi phí. có thể được sử dụng trong cả quá trình khám phá tuyến và chuyển tiếp gói tin. Location Aided Routing (LAR) và Distance Routing Effect Algorithm for Mobility (DREAM) là các giao thức định tuyến theo vị trí cho mạng Ad hoc.

3. kí hiệu là MPR(A). là tập con của tập hợp các hàng xóm trực tiếp của A.1 Bầu chọn Multipoint relay Hình 2.3 Quá trình phát tràn lan bản tin quảng bá MPR là để tối thiểu hóa overhead khi phát tràn lan bản tin trong mạng bằng cách giảm số lần truyền lại trong cùng một vùng.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc lượng điều khiển. Tập hợp này gọi là “MPR selector set” của một nút. Vũ Huy Cường. phải thỏa mãn những điều kiện sau: mỗi nút trong hàng xóm hai bước (twohop) của A phải có một liên kết trực tiếp đến MPR(A). Hàng xóm của nút A mà không nằm trong tập hợp MPR của A có thể nhận và xử lý các bản tin quảng bá nhưng không thể truyền các bản tin quảng bá nhận được từ A.K49 28 .ĐT3. Mỗi nút trong mạng lựa chọn một tập hợp các nút hàng xóm trực tiếp của nó để làm MPR. Tập hợp MPR càng nhỏ thì tiêu đề lưu lượng điều khiển của giao thức định tuyến càng nhỏ. Mỗi nút lựa chọn tập hợp MPR từ những hàng xóm trực tiếp (one-hop) của nó. Tập hợp MPR của nút A. Mỗi nút phải duy trì thông tin về tập hợp hàng xóm mà chúng chọn làm MPR. Kỹ thuật này giảm đáng kể số lượng yêu cầu truyền lại để phát tràn lan một bản tin tới tất cả các nút trong mạng. 2. được gọi là Chuyển tiếp đa điểm MPR (Multipoint Relay).

Mục đích chính của bản tin Hello cho phép mỗi nút có thể khám phá tuyến trực tiếp tới hàng xóm của nó. mỗi nút truyền bản tin Hello định kỳ (ví dụ một giây một bản tin) trên mỗi giao diện của nút. Bản tin Hello rất quan trọng trong việc hỗ trợ khái niệm MPR. bởi vì danh sách các hàng xóm hai bước đã được liệt kê trong bản tin Hello của nút hàng xóm trực tiếp của nó. Vũ Huy Cường. hàng xóm trực tiếp mà nút khởi tạo truyền bản tin khám phá. nó kiểm tra liệu bản tin đó có phải được phát sinh từ hàng xóm mới hay không. nút sẽ phát tràn lan các cập nhật định tuyến được phát sinh từ các hàng xóm mà đã chọn nó là MPR.K49 29 .Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Hình 2. Mỗi nút kiểm tra bản tin Hello nhận được từ hàng xóm của nó để xem nó liệu có được lựa chọn làm MPR của bất kỳ hàng xóm nào không.4 Bầu chọn MPR Trong OLSR. và các nút mà nút khởi tạo chọn làm MPRs.ĐT3. Bản tin Hello bao gồm tên của nút khởi tạo. Khi một nút nghe thấy bản tin Hello. Mỗi nút cũng có thể khám phá liệu các nút có là hàng xóm hai bước từ bản tin Hello. do vậy mỗi hàng xóm hai bước phải nhận được bản tin MPR. và nếu đúng. Nếu vậy. Bản tin Hello được quảng bá từng chặng một (hop-by-hop) và phải không được truyền trước đó. Mỗi nút lựa chọn MPR trên cơ sở hàng xóm hai bước. nút sẽ cập nhật vào danh sách hàng xóm trực tiếp của nút.

K49 30 .2 Truyền bá bản tin điều khiển topo (Topology control) Bản tin điều khiển topo được truyền đi với mục đích cung cấp cho mỗi nút trong mạng các thông tin liên kết trạng thái đầy đủ để cho phép tính toán được tuyến đường. Ưu điểm quan trọng của thủ tục định tuyến nguồn là các nút trung gian không cần phải duy trì việc cập nhật thông tin định tuyến khi chuyển tiếp các gói tin bởi vì bản thân các gói đã mang thông tin quyết định việc định tuyến (danh sách đầy đủ các nút theo trình tự mà gói phải đi qua).ĐT3.3. cũng giống như cấu hình giao diện của các nút.1 Định tuyến nguồn DSR phát hiện và sử dụng các tuyến nguồn. Mỗi gói tin được định tuyến sẽ mang thông tin về danh sách các chặng này trong tiêu đề.3. 2. Nút gửi tin sẽ phải nắm đươc toàn bộ thông tin về trình tự sắp xếp của các chặng (vị trí các nút) của mạng tới một nút đích. Do vậy gói tin có thể được chuyển đến các nút không nằm trong vùng phủ sóng của chính nút đó. tham gia hoặc rời khỏi mạng thì toàn bộ các thủ tục định tuyến được xác định và duy trì một cách tự động bởi giao thức định tuyến DSR. Các nút này phối hợp với nhau để chuyển tiếp các gói tin. Giao thức này được thiết kế để sử dụng trong các mạng Ad hoc vô tuyến đa chặng có tốc độ di chuyển cao của các nút. Vũ Huy Cường. Khám phá tuyến và Duy trì tuyến hoạt động hoàn toàn theo yêu cầu. 2. 2. DSR bao gồm 2 cơ chế cơ bản: Khám phá tuyến (Route Discovery) và Duy trì tuyến (Route Maintenance).4 DYNAMIC SOURCE ROUTING (DSR) Giao thức định tuyến nguồn động DSR là giao thức định tuyến đơn giản và hiệu quả. bảng định tuyến của mỗi nút có thể được tính toán. Khi các nút trong mạng di chuyển.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 2.4.3 Tính toán tuyến Thông tin trạng thái liên kết đưa ra được thực hiện thông qua trao đổi định kỳ các bản tin.

nhận dạng yêu cầu> là duy nhất. DSR sử dụng các tuyến nguồn và mỗi gói được định tuyến dựa trên một tuyến nguồn khám phá được.4.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Việc tập hợp thông tin về topo mạng tại nút nguồn của mỗi gói cho phép nút nguồn phân phát các gói tin một cách hiệu quả trong mạng. nó sẽ khởi tạo thủ tục Tìm kiếm tuyến động để tìm ra một tuyến nguồn tới D. Thứ nhất. Vũ Huy Cường. tuy nhiên những cải thiện gần đây đối với DSR đã cho phép hầu hết các gói tin không phải mang theo phần tiêu đề chứa thông tin đầy đủ về tuyến nguồn. tin cậy để truyền các thông tin qua mạng. Cặp <địa chỉ nút nguồn.ĐT3. nhiều tối ưu hóa được sử dụng để giới hạn tần số và phạm vi của các Khám phá tuyến. Trong cơ chế này. 2. Tuy nhiên nếu không tìm thấy tuyến nào trong Bộ nhớ tuyến. Điều này rất thích hợp với việc quản lý tài nguyên trong mạng Ad hoc.K49 31 . nút S sẽ đạt được một tuyến nguồn thích hợp thông qua việc tìm kiếm trong Bộ nhớ tuyến của nó các tuyến đã biết trước đây.2 Khám phá tuyến Khám phá tuyến được thực hiện bằng cách phát tràn lan yêu cầu qua mạng để tìm kiếm một tuyến tới đích nào đó. Thứ hai. Thông thường. đầu tiên nó sẽ đặt vào phần tiêu đề của gói tin đó một tuyến nguồn trong đó chỉ ra thứ tự của các chặng mà gói tin sẽ phải đi qua. nút nguồn chọn một nhận dạng yêu cầu (Request_id) đặt trong gói tin RREQ. mỗi tuyến nguồn là một bản kê sẵn về một đường truyền cụ thể. Trước khi khởi tạo một gói tin RREQ. Khi một nút S muốn gửi một gói tin đến D. Trong dạng đơn giản nhất. nút nguồn A muốn khám phá một tuyến tới nút đích D thì A sẽ phát quảng bá gói tin Yêu cầu tuyến RREQ và gói này tiếp tục được quảng bá bởi các nút trung gian cho đến khi nó đến được nút đích D. Trong trường hợp này ta gọi nút S là nút nguồn còn nút D là nút đích trong thủ tục Khám phá tuyến. Giao thức định tuyến dựa trên các tuyến nguồn còn có thêm 2 lợi ích. giao thức có thể chứng minh được một cách đơn giản tính không lặp vòng bởi vì tuyến nguồn được sử dụng để điều khiển định tuyến các gói.

chuyển bản copy của bản ghi tuyến được cộng dồn từ RREQ. nút này sẽ gắn địa chỉ riêng của nó vào bản ghi tuyến trong bản tin RREQ và tiếp tục quảng bá nó. E có thể thực hiện thủ tục Khám phá tuyến từ nó tới A. nút A cố gắng khám phá tuyến tới nút E. nếu một nút nhận RREQ mà đã nhận được một bản tin RREQ khác từ nút nguồn.K49 32 . Khi một nút nhận được bản tin RREQ này (ví dụ như nút B trong ví dụ). nó cất giữ tuyến này trong Bộ nhớ tuyến để sử dụng khi gửi các gói tin tiếp theo tới đích này. nút E sẽ kiểm tra Bộ nhớ tuyến của nó xem liệu có một tuyến ngược về nút A. Mặt khác.5 Khám phá tuyến trong DSR Hình 2.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc ^ "A" ^ "A.5 minh họa quá trình Khám phá tuyến đơn giản. nếu nó là đích của Khám phá tuyến. Trong việc bản tin RREP trở lại nút nguồn trong thủ tục Khám phá tuyến. mang theo những nhận dạng yêu cầu và địa chỉ đích giống nhau hoặc nếu địa chỉ riêng của nút này đã nằm trong báo cáo tuyến của RREQ. Nếu không. Trong ví dụ. Để khởi đầu Khám phá tuyến.C. Nếu không tìm được một tuyến ngược trở lại A.5. nó sẽ gửi lại bản tin Trả lời tuyến RREP tới khởi tạo của Khám phá tuyến.C" ^ "A. Giá trị ban đầu của bản ghi tuyến là một danh sách trống.B. và nếu tìm được nó sẽ sử dụng tuyến này làm tuyến nguồn để phân phát các gói tin bao gồm cả gói RREP.B" ^ "A.D" | id=2 | id=2 | id=2 | id=2 +-----+ +-----+ +-----+ +-----+ +-----+ | A |---->| B |---->| C |---->| D |---->| E | +-----+ +-----+ +-----+ +-----+ +-----+ | | | | v v v v Hình 2. Nhận dạng yêu cầu được xác định bởi nút nguồn của Yêu cầu. nó sẽ được nhận ở nút C. Mỗi tin báo RREQ nhận dạng nút nguồn và đích của Khám phá tuyến.B. kết quả là copy của Yêu cầu sẽ được nhận bởi nút E. A truyền một tin báo RREQ. Để tránh khả Vũ Huy Cường. nó sẽ broadcast Yêu cầu. khi nút nguồn nhận được RREP. nó sẽ từ chối Yêu cầu. Một RREQ bao gồm một bản ghi danh sách địa chỉ của từng nút trung gian mà tin báo RREQ đã đi qua.ĐT3. chẳng hạn nút E trả lời nút A trong hình 2. nút B sẽ quảng bá bản tin RREQ. nút C và nút D cũng vậy.

Vũ Huy Cường. Mỗi gói trong Send Buffer được gán cho một nhãn thời gian chỉ ra thời gian chúng tồn tại trong Buffer và gói tin sẽ bị loại bỏ sau khi thời gian lưu lại trong Send Buffer quá hạn. Khi khởi tạo một Khám phá tuyến. nghĩa là không có thứ tự sắp xếp của các chặng mà qua đó gói tin được chuyển tiếp tới đích. Để giảm phần phụ trội tiêu đề do các Khám phá tuyến trên người ta phải giới hạn tần suất khởi tạo các Khám phá tuyến từ một nút bất kì đến cùng một đích. Trên thực tế. Tuy nhiên. tần suất khởi tạo các Khám phá tuyến mới cần phải được giới hạn do có thể xảy ra trường hợp đích của thủ tục khởi tạo tuyến đã thay đổi và không thể tới được. Nút E còn có thể đảo vị trí sắp xếp của các chặng trong bản ghi tuyến và sử dụng tuyến đã đảo vị trí này như một tuyến nguồn đối với các gói tin mang bản tin RREP của chính nó. nó sẽ chèn bản tin RREP vào chính bản tin RREQ của nó đối với nút A. Trong trường hợp với mỗi gói tin. nút đang gửi sẽ giữ lại bản sao của gói tin ban đầu trong bộ nhớ đệm nội bộ (Send Buffer) gọi là bộ đệm gửi. Sử dụng cơ chế này nó cũng có khả năng cõng theo các gói dữ liệu nhỏ khác ví dụ như gói TCP SYN trên một bản tin RREQ. một thủ tục Khám phá tuyến được khởi tạo thì một số lớn các gói RREQ không hữu ích được truyền từ nút này tới tất cả các nút khác trong mạng.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc năng quay lại vô hạn có thể của các Khám phá tuyến. do giới hạn về phạm vi truyền dẫn vô tuyến và sự di chuyển của các nút trong mạng nên nhiều khi cấu trúc mạng bị phân mảnh. kĩ thuật FIFO hoặc kĩ thuật tương đương khác có thể được sử dụng để truyền các gói tin đó đi trược khi chúng hết hạn. Kiều phân mảnh như vậy có thể hiếm gặp hoặc phổ biến tùy thuộc vào kiểu di chuyển và mật độ của các nút trong mạng.K49 33 . Ngoài ra Send Buffer còn chứa các bản sao của các gói tin không truyền đi được do chưa tìm ra một tuyến nguồn tới đích.ĐT3. Nút chỉ được phép khởi tạo Khám phá tuyến mới sau khi đợi hết khoảng thời gian tối thiểu cần thiết để có thể thiết lập thủ tục Khám phá tuyến mới. Trong trường hợp gói tin còn lưu lại trong Send Buffer mà chưa truyền đi được thì thỉnh thoảng nút mạng lại thiết lập mới thủ tục Khám phá tuyến tùy theo địa chỉ đích của các gói. để Send Buffer không bị tràn.

thuật toán Khám phá tuyến đã ngăn chặn được việc lặp các RREQ trong mạng.4. Đó là một thuộc tính hiệu chỉnh quan trọng và là nguyên nhân tạo ra thuộc tính không lặp vòng của DSR.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Từ kết quả của việc kiểm tra bản sao các tuyến nguồn ghi được. Trong trường hợp này nút A chịu trách nhiệm về việc nhận gói tin ở nút B. 2.6 dưới đây: nút A gửi một gói tin tới E sử dụng một tuyến nguồn thông qua các nút trung gian B. Sử dụng các nhận dạng yêu cầu là một tối ưu đơn giản khi đó các RREQ ban đầu trải rộng hướng ra phía ngoài so với nút nguồn và rút bớt số các gói RREQ bao quanh bộ khởi tạo.ĐT3. C và D. nút C lại chịu trách nhiệm về việc nhận gói tin ở nút D. Trong nhiều trường hợp khẳng định việc nhận gói tin không ảnh hưởng gì đối với giao thức DSR do thực tế đây là một phần của các thủ tục lớp MAC. mỗi nút sẽ có nhiệm vụ giám sát và khẳng định rằng gói tin đó đã đến được chặng tiếp theo trên tuyến nguồn hay chưa.K49 34 .Ví dụ trường hợp được minh họa trong hình 2. nút C không thể chuyển tiếp từ A đến E qua liên kết tới bước nhảy tiếp theo D của nó Vũ Huy Cường.3 Duy trì tuyến Khi gửi hoặc chuyển tiếp một gói tin tới đích D nào đó sử dụng tuyến nguồn.6 Duy trì tuyến. Hình 2. gói tin sẽ được truyền lại (sau một số lần cho phép) cho tới khi nút này nhận được khẳng định rằng nó đã đến được nút tiếp theo. nút B chịu trách nhiệm việc nhận gói tin ở nút C.… và cứ như thế đến nút cuối cùng nút D phải chịu trách nhiệm về việc nhận gói tin ở nút E.

AODV dựa trên thuật toán vector khoảng cách nhưng thuộc loại định tuyến theo yêu cầu. Ví dụ trong hình 2. Thuật toán định tuyến AODV khá phù hợp cho cấu hình mạng động. Việc truyền lại bản tin ban đầu bây giờ là nhiệm vụ và chức năng của các thủ tục lớp cao hơn như TCP.DEMAND DISTANCE VECTOR ROUTING (AODV) AODV cho phép định tuyến nhiều bước giữa các nút mạng để thiết lập và duy trì mạng Ad hoc. nên yêu cầu toàn bộ băng thông có sẵn cho một nút Vũ Huy Cường. Khi đó A sẽ xóa đường liên kết bị lỗi này khỏi bộ nhớ tuyến của nó. C sẽ gửi bản tin RERR về nút A và tường trình rằng tuyến từ C đến D bị đứt.ĐT3. nó chỉ yêu cầu đường định tuyến khi cần thiết. AODV đưa ra các tuyến không bị lặp ngay cả khi nó đang sửa các liên kết lỗi.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Nếu cơ chế này không tồn tại và sẵn có ở các nút thì khi đó nút gửi tin sẽ dùng một bít thông tin trong phần tiêu đề của gói tin để yêu cầu một phúc đáp từ nút tiếp theo thông qua phần mềm đặc biệt trong DSR. Bởi vì giao thức này không yêu cầu quảng bá tuyến định kỳ trên toàn mạng. Nếu không nó sẽ thực hiện một thủ tục khám phá tuyến mới tới đích E nói trên 2.K49 35 .6 trên : nếu nút C không thể truyền tin đến nút D tiếp theo. Trong trường hợp phải gửi lại gói tin tới chính đích E và nếu trong bộ nhớ tuyến của nút A có một tuyến khác tới E (ví dụ từ các bản tin trả lời tuyến từ các thủ tục khám phá tuyến trước đó hoặc là từ việc nghe lỏm được các thông tin định tuyến từ các gói tin khác) thì nó sẽ gửi ngay gói tin sử dụng tuyến mới đó.5 AD HOC ON. Tuy nhiên nếu đường liên kết giữa hai nút là liên kết đơn hướng thì phúc đáp này có thể phải đi qua rất nhiều chặng khác nhau để quay lại nút gửi tin Nếu gói tin được truyền lại qua một số chặng và vượt quá số lần cực đại cho phép mà vẫn chưa nhận được khẳng định từ nút tiếp theo. Thông thường phúc đáp qua phần mềm này được truyền trực tiếp tới nút gửi tin. nút này sẽ gửi bản tin báo lỗi tuyến RERR quay trở lại nút đã gửi bản tin ban đầu để xác minh tuyến bị lỗi từ nút nào.

Gói tin không đi theo tuyến đường giữa các nút khi một trong những nút đó không nghe được từ các nút khác. Những nút không nằm trên các tuyến đường hoạt động. AODV sử dụng liên kết đối xứng giữa các hàng xóm. AODV tin tưởng vào sự thiết lập động các entry trong Bảng định tuyến ở các nút trung gian. • Quảng bá thông tin về sự thay đổi kết nối cục bộ tới các nút hàng xóm mà thực sự cần thông tin. AODV cũng hỗ trợ định tuyến multicast và giải quyết được vấn đề đếm vô hạn trong thuật toán Bellman Ford.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc di động thực chất là thấp hơn so với các giao thức khác. một nút không phải khám phá và duy trì một tuyến tới nút khác cho tới khi hai nút cần giao tiếp với nhau. AODV sử dụng số thứ tự ở nút mạng đích để giúp cho tuyến đường luôn cập nhật và không hình thành đường định tuyến khép kín. những giao thức yêu cầu quảng bá. chúng sẽ không duy trì bất cứ thông tin định tuyến nào cũng như không tham gia vào bất kỳ sự trao đổi bảng định tuyến định kỳ nào. Thay vì định tuyến nguồn. Hơn nữa.K49 36 .ĐT3. • Phân biệt giữa phát hiện-quản lý kết nối cục bộ trong vùng lân cận với duy trì topo mạng chung. Bảng định tuyến của các nút trong vùng lân cận được tạo ra để tối ưu thời gian đáp ứng tới với sự di chuyển cục bộ và cung cấp thời gian đáp ứng nhanh cho các yêu cầu thiết lập tuyến mới. bao gồm quảng bá cục bộ các bản tin Hello. Hơn nữa. mỗi nút có thể nhận thấy các nút khác trong vùng lân cận của nó bằng một vài kĩ thuật. Khi một kết nối cục bộ của nút di động được thiết lập. AODV sử dụng một cơ chế Khám phá tuyến với sự cải biến của thuật toán DSR. Mục tiêu chính của thuật toán AODV: • Gửi broadcast các gói tin khám phá tuyến khi cần thiết. trừ khi nút đó đóng vai trò như một trạm chuyển tiếp trung gian để duy trì kết nối giữa hai nút khác . Vũ Huy Cường.

nó sẽ loại bỏ RREQ đó và không chuyển tiếp gói tin đó nữa. Mỗi nút duy trì hai bộ đếm: số thứ tự nút và broadcast ID. Khi một nút trung gian nhận được một RREQ. • Địa chỉ IP đích • Địa chỉ IP nguồn Vũ Huy Cường. nó sẽ theo dõi các thông tin sau để thiết lập tuyến đường ngược cũng như thiết lập tuyến đường thuận để dành cho việc truyền gói tin RREP.1 Khám phá tuyến Quá trình Khám phá tuyến được khởi tạo bất cứ khi nào một nút nguồn muốn giao tiếp với các nút mạng khác nhưng nó lại không có thông tin định tuyến trong Bảng định tuyến của nó. Chú ý rằng mỗi nút có thể nhận được nhiều bản sao của cùng một RREQ từ các hàng xóm. Mỗi nút hàng xóm khi nhận được bản tin RREQ sẽ gửi lại một bản tin RREP tới nút nguồn nếu nó biết một tuyến tới đích. nếu nó đã nhận RREQ với cùng broadcast_id và địa chỉ đích. broadcast_id> được xác định duy nhất với mỗi bản tin RREQ.5. Nút nguồn khởi tạo Khám phá tuyến bằng cách quảng bá gói tin RREQ tới hàng xóm của nó. broadcast_id được tăng lên khi nút nguồn khởi tạo một RREQ mới.ĐT3. Nếu một nút không thể đáp ứng được RREQ. hoặc tiếp tục quảng bá bản tin RREQ tới nút hàng xóm sau khi tăng hop_cnt.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 2. RREQ chứa các trường sau: <source_addr source sequence# broadcast_id dest_addr dest sequence # hop_cnt> Trong đó: source _addr: địa chỉ nguồn source sequence: số thứ tự nguồn broadcast_id: định danh của RREQ dest_addr: địa chỉ đích dest sequence: số thứ tự đích hop_cnt : số chặng Cặp <source_addr.K49 37 .

Hình 2. và số thứ tự đích chỉ ra rằng tuyến đường tới đích phải mới như thế nào để nó có thể được chấp nhận bởi nguồn. Để thiết lập tuyến đường ngược. nó sẽ tự động thiết lập các tuyến đường ngược từ tất cả các nút đó tới nút nguồn.2 Thiết lập tuyến đường ngược Có hai số thứ tự được chứa trong một bản tin RREQ: số thứ tự nguồn và số thứ tự đích cuối cùng được biết bởi nguồn.ĐT3. Các entry tuyến đường ngược được duy trì trong khoảng thời gian vừa đủ để bản tin RREQ có thể truyền trên mạng và trả lời lại tới nút gửi.K49 38 . Số thứ tự nguồn được sử dụng để duy trì thông tin mới về tuyến đường ngược tới nguồn. mỗi nút phải ghi lại địa chỉ của hàng xóm mà từ đó nó nhận được bản sao đầu tiên của RREQ.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc • Broadcast ID • Thời gian hết hạn của entry tuyến đường ngược • Số thứ tự của nút nguồn 2. Khi bản tin RREQ được gửi từ nút nguồn tới các nút đích khác nhau.5.7 Thiết lập tuyến đường đi ngược Vũ Huy Cường.

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 2.K49 39 . nó sẽ cập nhật thông tin định tuyến của nó và truyền RREP chỉ khi RREP có số thứ tự đích lớn hơn hoặc bằng RREP trước đó với một số chặng nhỏ hơn. Nếu một nút nhận nhiều hơn một RREP. bản tin RREQ sẽ đến được một nút biết được tuyến tới nút đích. ghi lại số thứ tự đích mới nhất cho tuyến được yêu cầu. Nút không nằm trên tuyến được xác định bởi RREP sẽ hết hạn sau ACTIVE_ROUTE_TIMEOUT (3000ms) và sẽ xóa con trỏ ngược.3 Thiết lập tuyến đường thuận Cuối cùng. Thiết lập tuyến đường thuận khi RREP từ nút đích D tới nút nguồn S. mỗi nút dọc theo tuyến đường thiết lập một con trỏ thuận tới nút mà từ đó RREP đến.5. Các nút trung gian chỉ trả lời khi số thứ tự đích trong bảng entry của nó lớn hơn so với trong bản tin RREQ. thứ tự đích# số chặng. nút nhận được bản tin RREQ sẽ kiểm tra để chắc chắn rằng bản tin RREQ đã được nhận trên một liên kết hai chiều. cập nhật thông tin timeout cho các entry tới nút nguồn và nút đích. Nếu một nút trung gian có một entry tuyến tới đích yêu cầu.ĐT3. Khi đó. nó so sánh số thứ tự đích trong entry tuyến của chính nó với số thứ tự đích trong bản tin RREQ để xác định xem tuyến đó có dùng được hay không. Một bản tin RREP chứa các thông tin sau: <địa chỉ nguồn. Một nút nhận RREP sẽ truyền RREP đầu tiên về nút nguồn. nút sẽ gửi unicast một bản tin RREP tới hàng xóm mà từ đó nó nhận được RREQ. Vũ Huy Cường. Khi RREP trở lại nút nguồn. thời gian sống> Trong khi một gói tin quảng bá tới một nút có tuyến tới đích. Điều này giảm số lượng bản tin RREP truyền tới nút nguồn đồng thời đảm bảo rằng thông tin định tuyến là nhanh và mới nhất. nút trung gian sẽ tiếp tục quảng bá RREQ. Nếu số thứ tự đích trong bản tin RREQ lớn hơn. Nút nguồn có thể truyền dữ liệu ngay sau khi nhận được RREP đầu tiên và sau đó có thể cập nhật thông tin định tuyến nếu nó học được một tuyến mới tốt hơn. một tuyến đường ngược được thiết lập tới nút nguồn của gói tin RREQ. nút trung gian sẽ không sử dụng tuyến trong bảng entry tuyến của nó để đáp ứng RREQ. Đầu tiên. Nếu nút trung gian có một tuyến hiện hành tới nút đích và nếu bản tin RREQ này chưa được nhận trước đó. Nó sẽ loại bỏ hết các RREP khác mà nó nhận được. địa chỉ đích.

được gọi là “bộ đếm thời gian hết hạn RREQ”. hay thời gian mà sau đó tuyến đường này coi như hết hiệu lực. 8 Thiết lập tuyến đường thuận 2.5. Thời gian hết hạn phụ thuộc vào kích thước của mạng Ad hoc. Một thông số quan trọng khác gắn với entry định tuyến là thời gian timeout của các tuyến đang được lưu giữ. Mỗi nút duy trì một entry cho mỗi đích cần đến. Mỗi entry chứa các thông tin sau: Đích 40 Vũ Huy Cường.ĐT3.4 Quản lý bảng định tuyến Gắn liền với các entry tuyến đường ngược là một bộ đếm thời gian. Mục đích của bộ đếm thời gian này là để thanh lọc những entry tuyến đường ngược từ những nút không nằm trên tuyến đường từ nguồn tới đích. địa chỉ của nút hàng xóm mà gói tin đi qua để đến đích cũng được duy trì.K49 . Thông tin này được duy trì để tất cả các nút nguồn có thể được thông báo khi có một liên kết bị đứt.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Hình 2. Một nút được coi là hoạt động đối với đích đó khi nó tạo ra hay chuyển tiếp ít nhất một gói tin tới đích đó trong khoảng thời gian timeout . Trong mỗi entry Bảng định tuyến.

5 Cập nhật đường định tuyến Khi một nút mạng phát hiện đường định tuyến đến nút bên cạnh không hoạt động. nó sẽ xóa trong bảng định tuyến và gửi một bản tin Liên kết hỏng RERR. DYMO đưa ra các đặc tính mới như là thực hiện tính toán tuyến đường.ĐT3.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Next hop Số chặng Số thứ tự đích Các hàng xóm còn hoạt động cho đích đó Thời gian hết hạn cho entry bảng định tuyến Mỗi khi một entry tuyến được dùng để truyền gói tin dữ liệu từ nguồn tới đích. hiện vẫn đang được phát triển bới MANET trong IETF. một nút cũng nhận được thông tin về tất cả các nút trung gian nằm trên một tuyến đường mới khám phá được. từ đó chúng có thể dừng việc gửi thông tin hoặc yêu cầu đường định tuyến mới thông qua bản tin RREQ. đơn giản hóa việc thực thi giao thức. Nếu một tuyến mới được yêu cầu cho một nút di động.5. mặt khác.K49 41 . 2. Cuối cùng bản tin cũng đến được gửi đến tất cả nút mạng có liên quan.6 DYNAMIC MANET ON. Mục tiêu của nó là thiết kế đơn giản. nó sẽ được chọn. các nút di động so sánh số thứ tự đích của tuyến mới với tuyến hiện tại. Nút mạng nhận được bản tin này cũng sẽ lặp lại quá trình gửi bản tin.DEMAND (DYMO) DYMO là giao thức định tuyến theo bảng mới nhất. DYMO có thể coi là sự kết hợp của AODV và DSR. Nếu số thứ tự tuyến mới cao hơn. Vũ Huy Cường. AODV sử dụng danh sách nút mạng bên cạnh còn hoạt động để ghi nhớ nút mạng đang sử dụng đường định tuyến trong bảng định tuyến. Một mặt. giảm thiểu yêu cầu hệ thống . Bên cạnh thông tin tuyến đường về một mục tiêu được yêu cầu. timeout cho entry đó sẽ được reset tới thời gian hiện tại cộng thêm timeout. DYMO cũng sử dụng số thứ tự để đàm bảo tránh lặp tuyến. 2. nếu bằng nhau thì tuyến mới sẽ được chọn khi có metric nhỏ hơn (số chặng ít hơn) tới đích.

9: Sự khác nhau giữa AODV và DYMO Khi sử dụng AODV. còn DYMO thì lưu trữ tuyến đường cho mỗi nút trung gian.K49 42 . một nút gửi một bản tin Yêu cầu tuyến RREQ tới tất cả hàng xóm trong phạm vị truyền sóng của nó. DYMO có thể thiết lập và duy trì các tuyến đường unicast trong các kịch bản mạng IPv4 và IPv6 bằng cách sử dụng cơ chế sau: • Nhằm phát hiện một tuyến mới đến một nút đích. Hình 2. nút A cũng biết cả đường tới C. một nút A chỉ biết đường tới B và D sau khi Yêu cầu tuyến được đáp ứng. Cùng với thông tin định tuyến đã có được trước đó khi chuyển Vũ Huy Cường. Điều này cũng nhận được bằng cách gửi bản tin tới 1 địa chỉ multicast cục bộ riêng. Sau đó nút sẽ gắn địa chỉ của chính nó vào bản tin và truyền bản tin tới tất cả các nút lân cận. trong đó thì AODV chỉ tạo ra entry bảng định tuyến cho nút đích và nút next-hop.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Đây là một khác biệt cơ bản giữa DYMO và AODV. Cũng như trong quá trình quảng bá RREQ.ĐT3. nút này lại gắn địa chỉ của nó và ghi chú tất cả các thông tin định tuyến có trong RREP. Trong DYMO.9. Khi một nút trung gian nhận được một RREQ nó thiết lập tuyến đường tới tất cả các nút mà gói tin đã đi qua. Bằng cách này thì RREQ được quảng bả một cách hiệu quả trên mạng và cuối cùng là đến đích của nó. • Đich đáp ứng RREQ bằng cách gửi unicast một bản tin Trả lời RREP trở về nút mà nó mà từ đó nó nhận được RREQ. Điều này được thể hiên qua hình 2.

Nút này cũng sẽ biết được tuyến đường tới nút đích được yêu cầu. Một hệ thống cũng có thể lựa chọn không bật tính năng theo dõi. bằng cách sử dụng giao thức nhận biết hàng xóm (Neighboehood Discovery Protocol) hoặc kiểm tra phản hồi nhận được ở tầng data link. nút trung gian có khả năng gửi RREP trở về nút nguồn của RREQ. chức năng chính của các giao thức là tìm được đường đi tới đích. nó sẽ gửi một bản tin RERR để thông báo có tất cả các nút lân cận. cũng như là đường tới mọi nút trung gian.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc tiếp RREQ tương ứng. đơn giản chỉ xóa các tuyến không còn hoạt động. không phải đường ngắn nhất hay đường tối ưu nhất được đáp ứng. các liên kết trên tuyến đường đã biết được có thể được theo dõi. Một nút trung gian cũng có thể tạo ra RREP nếu như nó biết tuyến đường tới đích. và ngược lại. thông báo cho chúng biết về tất cả các tuyến đị đứt. Vũ Huy Cường. Để phản ứng tốt với mạng có mức độ di chuyển cao.K49 43 .ĐT3. Tuy nhiên. TỔNG KẾT Qua việc nghiên cứu một số giao thức trong mạng Ad hoc ta có thể thấy rằng chưa có giao thức nào có đầy đủ các tính năng và không thể khẳng định giao thức nào là tối ưu cho mạng Ad hoc. Khi một nút phát hiện liên kết lỗi.

1.ĐT3.1 Thông số đánh giá chất lượng Vũ Huy Cường.K49 44 .Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 3 CHƯƠNG 3 THÔNG SỐ ĐÁNH GIÁ VÀ MÔ HÌNH CHUYỂN ĐỘNG TRONG MÔ PHỎNG MẠNG AD HOC Như đã trình bày ở chương 2.. kích cỡ môi trường. 3. mật độ nút mạng. phù hợp nhất? Nó phụ thuộc vào cấu trúc và thuộc tính của mạng. giao thức định tuyến trong mạng Ad hoc đều tập trung giải quyết vấn đề và khái niệm đặc trưng của môi trường vô tuyến. 3.1 THÔNG SỐ ĐÁNH GIÁ GIAO THỨC MẠNG AD HOC Có hai thông số để đánh giá: thông số đánh giá chất lượng và thông số kịch bản.. kiểu di chuyển của các nút mạng. Nhưng giao thức nào là tốt nhất. mức độ di chuyển của nút mạng.

tức là gói tin được lưu giữ trong bộ đệm khi chưa có đường định tuyến đến đích trước khi bị hủy.1 Tỷ lệ gói nhận được Định nghĩa: Tỷ lệ gói nhận được RD là tỷ lệ giữa số gói nhận được bởi nút đích (PR) và số gói được gửi đi từ lớp ứng dụng của nút nguồn (PS).K49 45 . nó dành được nhiều sự quan tâm khi nghiên cứu giao thức định tuyến mô phỏng. nhưng cũng có nghĩa trễ trung bình trong mạng cũng tăng lên.ĐT3.1) Ý nghĩa: giao thức định tuyến hoạt động tốt phải có giá trị RD cao do khả năng tận dụng băng thông vô tuyến là rất quan trọng. Thông số này phản ánh tỷ lệ gói tin bị mất. Nếu như nút mạng đặt thời gian lớn thì ít gói tin trên mạng bị hủy.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Các thông số này được sử dụng để đưa ra chính xác những gì xảy ra trong quá trình mô phỏng và cung cấp các thông tin có giá trị về các giao thức định tuyến.1. Một thông số quan trọng là thời gian trễ trong bộ đệm.3) Ý nghĩa: Trong mạng gói vô tuyến không có QoS thì giá trị trễ phụ thuộc vào giao thức định tuyến. điều này liên quan đến giá trị trễ đầu cuối đến đầu cuối. Và người thiết kế hệ thống sẽ quyết định: tỷ lệ gói hủy bỏ thấp hay thời gian trễ. 3.2) Tdelay = T buffer + Trelay + Tprop + Tresend (CT 3. Có thể tính thời gian trễ theo hai cách: Tdelay = Trev – T send Hoặc: (CT 3. Nó bao gồm nhiều giá trị nhỏ trên mạng: trễ bộ đệm. trễ truyền dẫn và thời gian để truyền lại gói tin (trong trường hợp gói tin bị mất).1. Vũ Huy Cường.1. RD = PR / PS (CT 3. mức độ hoàn chỉnh và đúng đắn của giao thức định tuyến. Do đó. trễ chuyển tiếp gói tin ở nút trung gian.1.2 Trễ từ đầu cuối đến đầu cuối Định nghĩa: Trễ từ đầu cuối đến đầu cuối là thời gian mà gói tin truyền trên mạng từ nút nguồn đến nút đích. 3.

thì trong mô phỏng băng thông thực sự có được là bao nhiêu? Thông số thông lượng T sẽ cho biết băng thông thực sự khi mô phỏng và có thể cho tháy sự hiệu quả của giao thức định tuyến ở mức độ nào.1 Thông số di chuyển Vũ Huy Cường. hoặc có thể là biến đầu vào (ví dụ như thời gian tạm dừng). Nó cung cấp sự so sánh thật nhất giữa các giao thức. chỉ có gói tin dữ liệu được truyền trên mạng. bao nhiêu băng thông được sử dụng cho các gói tin dữ liệu. Phần tải định tuyến trong giao thức định tuyến theo yêu cầu thông thường là lớn do nó phải gửi bản tin cập nhật định kỳ trên toàn mạng. 3. nó cũng cho biết hiệu năng sử dụng băng thông của giao thức định tuyến: bao nhiêu băng thông được sử dụng cho bản tin định tuyến. Trường hợp lý tưởng là không có bản tin định tuyến.1. Nó không phụ thuộc vào giao thức định tuyến hoặc quá trình mô phỏng cũng như các thông số đánh giá chất lượng mà ta nghiên cứu ở trên.1. Ý nghĩa: Khi băng thông sẵn có trên mạng đã biết.K49 46 . nếu không có giao thức định tuyến thì không thể triển khai thực tế.1. Khi thông lượng trung bình cao nghĩa là băng thông dành cho định tuyến là ít.1.2.3 Thông lượng từ đầu cuối đến đầu cuối Định nghĩa: thông lượng là tỉ lệ giữa số gói tin dữ liệu được truyền trên một đơn vị thời gian. Ý nghĩa: Tải thông tin định tuyến là một thông số quan trọng với mạng Ad hoc.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 3.4 Phần tải thông tin định tuyến Định nghĩa: là tỉ lệ giữa gói tin định tuyến được gửi đi với số gói dữ liệu được gửi tới đích.ĐT3. khi đó giao thức định tuyến hoạt động tốt.1. 3. 3.2 Thông số kịch bản Các thông số kịch bản được tính toán từ dữ liệu đầu vào của mô phỏng. tuy nhiên.1.

6) 2. t= 0 + X.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Nó đánh giá sự chuyển động trong mạng bằng cách tính toán di chuyển của nút mạng liên quan giữa các cặp nút trên mạng. . t=0 + 2X.1 Thời gian tạm dừng Thời gian tạm dừng là một biến đầu vào của mô phỏng.ĐT3.4.4) Bước 2: Tính di chuyển của nút x theo công thức: (CT 3. Bảng 3. Khi sử dụng như một thông số đánh giá. Thông số này tương ứng với số thay đổi liên kết trong mô hình khi mà nút mạng di chuyển theo mô hình định trước.3.5) Bước 3: Tính thông số di chuyển cho cả kịch bản: (CT 3. ny)t n i Ax(t) Mx T Δt Mô tả Khoảng cách giữa nút X và nút Y ở thời điểm t Số nút mạng Chỉ số Khoảng cách trung bình giữa các nút x với các nút khác ở thời điểm t Di chuyển trung bình của nút x với các nút trong thời gian mô phỏng Thời gian mô phỏng Bước thời gian mô phỏng Di chuyển trong toàn bộ kịch bản [m/s] Mod Bước 1: tính khoảng cách trung bình của các nút x với các nút khác trong mạng được thực hiện ở các thời điểm t=0. theo công thức: (CT 3. t = T.K49 47 .. thời gian tạm dừng của tất cả các nút trong mô phỏng được sử dụng Vũ Huy Cường..1 Bảng các biến trong thông số di chuyển Tên biến Dist(nx.

Sau khi hướng chọn một cách ngẫu nhiên trong khoảng (0.2.K49 48 . trong đó vận tốc và hướng hiện tại của hai hay nhiều nút mạng hoàn toàn độc lập với giá trị cũ của chúng. tương tự hướng di chuyển cũng sẽ thay đổi.2. có thể tương ứng với từng ngữ cảnh kịch bản mô phỏng.ĐT3.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc để đo kiểm thông số chuyển động. cần có sự thay đổi về hướng và tốc độ di chuyển trong những khoảng thời gian hợp lý. Khi giá trị trung bình càng lớn thì nút mạng càng ít di chuyển trong mạng. Để có thể mô phỏng giao thức định tuyến thì cần phải có sự phát triển và sử dụng “mô hình di chuyển” cho nút mạng. người ta có thể thay đổi mô hình bằng cách tính toán vận tốc hay hướng di chuyển hoặc cả hai. Vận tốc có thể thay đổi và giảm đến 0.2 MÔ HÌNH DI CHUYỂN MÔ PHỎNG MẠNG AD HOC Trong mạng Ad hoc. Có rất nhiều mô hình áp dụng cho mạng Ad hoc. 3. mô hình sẽ phải đối mặt với hiện tượng không giống thực tế: dừng đột ngột. đường di chuyển quanh co hoàn toàn ngẫu nhiên. Để khắc phục vấn đề này. nên khó khăn khi tìm ra mô hình di chuyển có thể cho mô phỏng. do đó việc xác định mô hình di chuyển là rất quan trọng. các nút bắt đầu di chuyển. Khi Vũ Huy Cường. 3. Mô hình di chuyển yêu cầu phải mô tả di chuyển của nút mạng giống như trong thực tế. có vòng quay nhọn.2 Mô hình di chuyển hướng ngẫu nhiên với vận tốc không đổi Đây là mô hình sửa đổi của mô hình di chuyễn ngẫu nhiên nhưng đảm bảo tất cả nút mạng được gán cho một vận tốc như nhau trong suốt quá trình mô phỏng. Chắc chắn nút mạng thực không thể di chuyển theo đường thẳng với tốc độ không đổi trong suốt quá trình mô phỏng. 2π). trong giới hạn đồ án đề cập một số mô hình tiêu biểu. nút mạng di chuyển từ vị trí này đến vị trí khác.1 Mô hình di chuyển ngẫu nhiên Mô hình di chuyển ngẫu nhiên là mô hình di chuyển đơn giản dựa trên hướng và vận tốc ngẫu nhiên. Do đó. 3.

.2. nó nảy khỏi biên với một góc xác định bởi hướng đến.2. Khi các nút mạng có xu hướng hội tụ. nút mạng chọn ngẫu nhiên vận tốc trong khoảng (0. do các nút trong mô hình Random Waypoint thường chọn các đích mới và xác suất chọn thường là trung tâm khu vực mô phỏng hoặc đường đi qua trung tâm khu vực mô phỏng.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc gặp biên của khu vực mô phỏng.1 Mô hình di chuyển Random Waypoint 3. Hai hay nhiều nút mạng ở một vị trí trong một khoảng thời gian (thời gian tạm dừng). trong mô hình di chuyển hướng ngẫu Vũ Huy Cường. phân tán.3 Mô hình di chuyển Random Waypoint Mô hình này có sử dụng thời gian tạm dừng khi thay đổi hướng và vận tốc.K49 49 . maxspeed) Hình 3. Khi hết thời gian tạm dừng. các nút di chuyển thao đường mới.4 Mô hình di chuyển hướng ngẫu nhiên Mô hình này khắc phục nhược điểm của mô hình Random Waypoint.. 3.ĐT3.

Hình 3. Qua đó.2 Mô hình di chuyển hướng ngẫu nhiên TỔNG KẾT Việc lựa chọn các thông số đánh giá giao thức và mô hình di chuyển là rất quan trọng. ngay khi đến biên nó dừng lại trong một khoảng thời gian và chọn hướng khác (0.K49 50 . 180o) và tiếp tục quá trình . Thông qua các thông số đó. sau đó nó di chuyển theo hướng đó đến biên của khu vực mô phỏng.ĐT3. Vũ Huy Cường. các nút chọn hướng thay vì chọn đích.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc nhiên. ta có thể lựa chọn được giao thức phù hợp cho những giả thiết và yêu cầu đặt ra. ta có thể đánh giá được điểm mạnh cũng như điểm yếu của một giao thức mạng.

tuy nhiên do tính phổ cập và linh hoạt của nó. tương ứng với các mô hình cấu trúc của nó đồng thời phần nhân mô phỏng (simulation kernel) và các module của OMNeT++ cũng rất dễ dàng nhúng vào trong các ứng dụng khác.1 GIỚI THIỆU CHUNG VỀ OMNET++ 4. mô phỏng các giao thức định tuyến.1 Tổng quan về Omnet++ 4. sau đó được tập hợp lại thành những thành phần hay những mô hình lớn hơn bằng một ngôn ngữ bậc cao (NED).1. OMNeT++ còn được sử dụng trong nhiều lĩnh vực khác như mô phỏng các hệ thống thông tin phức tạp.1. các mạng kiểu hàng đợi (queing networks) hay các kiến trúc phần cứng… OMNeT++ cung cấp sẵn các thành phần tương ứng với các mô hình thực tế.1.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 4 CHƯƠNG 4.1 Omnet ++ là gì ? OMNeT++ là viết tắt của cụm từ Objective Modular Network Testbed in C++. kết luận.1. MÔ PHỎNG VÀ ĐÁNH GIÁ THÔNG LƯỢNG CỦA AODV.K49 51 . Kết quả mô phỏng và đánh giá. Các thành phần này (còn được gọi là các module) được lập trình theo ngôn ngữ C++. OLSR. 4.2 Các thành phần chính của OMNeT++ Trong OMNeT++ có các thành phần chính sau: Vũ Huy Cường. OMNeT++ hỗ trợ giao diện đồ họa.ĐT3. Mục đích chính của ứng dụng là mô phỏng hoạt động của mạng thông tin. giả thiết đầu vào cho quá trình mô phỏng. OMNeT++ là một ứng dụng cung cấp cho người sử dụng môi trường để tiến hành mô phỏng hoạt động của mạng. DSR VÀ DYMO BẰNG OMNET++ Chương này sẽ giới thiệu về công cụ để mô phỏng giao thức định tuyến mang Ad học. 4.1.

1. 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)    Vũ Huy Cường. các ví dụ mô phỏng… Ứng dụng 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.1.3 Các tiện ích khác Các tài liệu hướng dẫn.K49 52 Đá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… .ĐT3.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc   Thư viện phần nhân mô phỏng (simulation kernel) Trình biên dịch cho ngôn ngữ mô tả tình trạng (topology description language) – NED (nedc)  (GNED)  Giao diện đồ họa thực hiện mô phỏng. các liên kết bên trong các file thực Trình biên tập đồ họa (graphical network editor) cho các file NED hiện mô phỏng (Tkenv)    Giao diện dòng thực hiện mô phỏng (Cmdenv) Công cụ (giao diện đồ họa) vẽ đồ thị kết quả vector ở đầu ra (Plove) Công cụ (giao diện đồ họa) mô tả kết quả vô hướng ở đầu ra (Scalars)Công cụ tài liệu hóa các mô hình   4.

1 Các module đơn giản và kết hợp Vũ Huy Cường. Các module này được coi là các module đơn giản. Cấu trúc của mô hình có thể được mô tả bằng ngôn ngữ NED của OMNeT++ Hình 4.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 4. Các module có thể gửi các message này theo hai cách. hai là gửi đi theo một đường dẫn được định sẵn.4 Mô hình trong OMNeT++ Một mô hình trong OMNeT++ bao gồm các module lồng nhau có cấu trúc phân cấp. Các module có thể có các tham số của riêng nó. Module mức cao nhất trong cấu trúc phân cấp được gọi là module hệ thống. Các tham số này có thể được sử dụng để chỉnh sửa các thuộc tính của module và để biểu diễn cho topology của mô hình. Độ sâu của các module lồng nhau là không giới hạn. các module con cũng có thể chứa các module con của riêng nó. Độ sâu phân cấp đối với các module là không giới hạn.1. Các module trao đổi thông tin với nhau thông qua việc gửi các message.ĐT3. Mỗi mô hình này thường biểu diễn cho một hệ thống mạng.1. Module này có thể chứa các module con. điều này cho phép người sử dụng có thể biểu diễn các cấu trúc logic của các hệ thống trong thực tế bằng các cấu trúc mô hình. một là gửi trực tiếp tới địa chỉ nhận. Các message này có thể có cấu trúc phức tạp tùy ý. điều này cho phép người sử dụng có thể dễ dàng biểu diễn một cấu trúc logic của một hệ thống trong thực tế bằng cấu trúc phân cấp của OMNeT++. Một mô hình trong OMNeT++ chứa các module lồng nhau có cấu trúc phân cấp. thông qua các cổng và các kết nối.K49 53 . trao đổi thông tin với nhau bằng cách gửi các message. Các module ở mức thấp nhất trong cấu trúc phân cấp đóng gói các thuộc tính. và chúng được lập trình trong ngôn ngữ C++ bằng cách sử dụng các thư viện mô phỏng.

Vũ Huy Cường. ra của các module. các message thường di chuyển qua một loạt các kết nối với điểm bắt đầu và kết thúc là các module đơn giản.2 Các kết nối Tương ứng với cấu trúc phân cấp của một mô hình. Các module đơn giản là các module có cấp thấp nhất trong cấu trúc phân cấp. Các module đơn giản chứa các thuật toán của mô hình. Người sử dụng triển khai các module đơn giản bằng ngôn ngữ C++. Message được gửi đi qua các cổng ra và được nhận vào thông qua các cổng vào. sử dụng các thư viện mô phỏng của OMNeT++. Tập các kết nối đi từ một module đơn giản và đến một module đơn giản được gọi là route. message có dạng khung (frame) hoặc là các gói tin (packet) được truyền đi trong mạng. Các module trao đổi thông tin bằng việc gửi các message. Các message có thể có cấu trúc phức tạp tùy ý. Hình 4. Các module đơn giản có thể gửi các message đi một cách trực tiếp đến vị trí nhận hoặc gửi đi theo một đường dẫn định sẵn thông qua các cổng (gates) và các liên kết (links). hoặc giữa cổng của module con với cổng của module kết hợp.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Các module có thể chứa nhiều module con và được gọi là module kết hợp. Các cổng (gates) là các cổng vào. Trong thực tế. Mỗi kết nối (connection) hay còn gọi là liên kết (link) được tạo bên trong một mức đơn trong cấu trúc phân cấp của các module: bên trong một module kết hợp.ĐT3.K49 54 . một kết nối có thể được tạo ra giữa các cổng tương ứng của hai module con.

 Giao diện người sử dụng.lib). b.1.1.ini). được biên dịch và được đặt cùng dạng với các file thư viện (các file có phần mở rộng là .cc.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 4. Phần này chứa code để quản lý quá trình mô phỏng và các thư viện lớp mô phỏng.K49 55 . OMNeT++ sẽ dịch những định nghĩa này sang các lớp C++ đầy đủ. Khi chương trình khởi động.1 Xây dựng và chạy thử các mô hình mô phỏng a. nó bắt đầu đọc file cấu hình (thông thường là file omnetpp. Đây là các file C++ với phần mở rộng là .h hoặc . Nó được viết bằng C++.msg): Người sử dụng có thể định nghĩa rất nhiều kiểu message và thêm các trường dữ liệu cho chúng.2 Sử dụng OMNeT++ 4.ned có thể được viết bằng bất kỳ bộ soạn thảo hoặc bất kỳ bộ soạn thảo hoặc sử dụng chương trình GNED có trong OMNeT++  Định nghĩa cấu trúc của các message (các file có phần mở rộng . Thực hiện mô phỏng và phân tích kết quả Các chương trình thực hiện mô phỏng (the simulation executable) là các chương trình độc lập. Một mô hình OMNeT++ bao gồm những phần sau  Ngôn ngữ mô tả topology – NED (file có phần mở rộng . tạo sự dễ dàng cho quá trình sửa lỗi. các cổng… Các file. tức là nó có thể chạy trên các máy khác không cài đặt OMNeT++ hay các file mô hình tương ứng. Giao diện này được sử dụng khi thực hiện quá trình mô phỏng.ned): mô tả cấu trúc của module với các tham số.  Mã nguồn của các module đơn giản.a hoặc .2. được biên dịch và đặt cùng nhau trong các thư viện (các file có phần mở rộng là . File này chứa các thiết lập Vũ Huy Cường. Có một vài kiểu giao diện trong OMNeT++.ĐT3. Hệ thống mô phỏng cung cấp cho ta các thành phần sau  Phần nhân mô phỏng. biểu diễn (demonstration) hoặc khi thực hiện mô phỏng theo từng khối (batch execution of simulations). tất cả đều được viết bằng C++.a hoặc .lib) c.

y) và có thể xuất dữ liệu vào clipboard để có thể sử dụng trong các chương trình khác nhằm đưa những phân tích chi tiết hơn. Người sử dụng có thể kiểm thử và sửa lỗi rất dễ dàng qua giao diện đồ họa. Tất cả các chương trình này đều có chức năng chuyên dụng trong việc phân tích số hóa. Điều này là rất quan trọng đối với pha phát triển và sửa lỗi trong dự án. Các file vô hướng cũng có thể được biểu diễn bằng các công cụ Scalar. và cho phép người sử dụng có khả năng thay đổi các biến hay các đối tượng bên trong của mô hình. Giao diện người sử dụng Mục đích chính của giao diện người sử dụng là che những phần phức tạp bên trong cấu trúc của các mô hình đối với người sử dụng. Gnumeric hay Microsoft Excel. Tuy nhiên chúng ta cũng nên hiểu rằng khó mà có thể xử lý đầy đủ các file kết quả mà chỉ dùng riêng OMNeT++. OMNeT++ cung cấp một công cụ đồ họa Plove để xem và vẽ ra nội dung của các file vector. các file vô hướng hoặc các file của người sử dụng. các file này đều là các file có định dạng để có thể đọc được bởi các gói xử lý toán học của các chương trình như Matlab hay Octave. vẽ biểu diễn (visualization) vượt qua khả năng của OMNeT+ +. dễ dàng điều khiển quá trình mô phỏng. d.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc để điều khiển nhiều quá trình mô phỏng. Giao diện đồ họa cũng có thể được sử dụng để trình diễn hoạt động của mô hình. hoặc có thể được đưa vào tính của các chương trình như OpenOffice Calc. các đồ thị dựa vào tập hợp các tọa độ (x. trong trường hợp đơn giản nhất là các quá trình mô phỏng này sẽ được thực hiện lần lượt bởi một chương trình mô phỏng (simulation program). Đầu ra của quá trình mô phỏng là các file dữ liệu.K49 56 .ĐT3. Nó có thể vẽ được các biểu đồ. cuối cùng có thể chạy nó dựa trên một giao diện đơn giản và nhanh chóng có hỗ trợ thực hiện theo khối (batch execution) Vũ Huy Cường. Các file này có thể là các file vector. Cùng một mô hình người sử dụng có thể trên nhiều giao diện khác nhau mà không cần phải thay đổi gì trong các file mô hình.

ĐT3. Điều này tạo khả năng cho người sử dụng có thể xây dựng những chương trình thực hiện lớn bao gồm nhiều quá trình mô phỏng.cpp trong NED compiler (nedc) và message compiler (opp_msgc). Người sử dụng có thể chỉ ra trong file cấu hình mô hình nào sẽ được chạy. sử dụng Các file.    Quá trình tiếp theo giống như biên dịch mã nguồn C/C++ Trong Linux: các file .obj.cc → file.cc trong UNIX hoặc . và phân phối nó như một công cụ mô phỏng độc lập. Các file C++ (có phần mở rộng là . Các chương trình mô phỏng độc lập Các chương trình thực hiện quá trình mô phỏng có thể được lưu lại nhiều lần. Trong Windows: các file . Vũ Huy Cường.cpp → file . 4. Khả năng linh hoạt của ngôn ngữ mô tả topology cũng hỗ trợ cho hướng tiếp cận này. f.ned mô tả topo mạng. không phụ thuộc vào các mô hình. một hệ thống mạng mô phỏng trong OMNeT++ gồm các thành phần sau:    Windows) Quá trình xây dựng một chương trình mô phỏng  Đầu tiên.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc e.2 Chạy các ứng dụng trong OMNeT++ Như đã trình bày ở phần mở đầu. sử dụng cùng một thiết lập cho các module đơn giản.2. Các file có phần mở rộng .msg chứa khai báo các message. Đặc điểm này cung cấp cho người sử dụng khả nhóm các kiểu module lại với nhau và tạo ta các thư viện thành phần.1.o. Các thư viện thành phần Các kiểu module có thể được lưu tại những vị trí độc lập với chỗ mà chúng thực sự được sử dụng. dịch các file NED và các file message thành C++.K49 57 .

o (hoặc . Hình dưới đây cho chúng ta hình ảnh quá trình xử lý khi mô hình được xây dựng và hoạt động Vũ Huy Cường. etc) và các tiện ích tkenv và cmdenv (libtkenv. libcmdenv.exe. Cụ thể ta cần phải liên kết với các thư viện sau:  Phần nhân mô phỏng được gọi là sim_std (như các file libsim_std.lib. sim_std.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc  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 .a.ĐT3. etc).K49 58 .a. Các file .a.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. etc)  Giao diện người dùng: cung cấp thư viện môi trường (file libenvir.a.

cc Thư viện lõi của chương trình mô phỏng *.ini File kết quả *. *.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc File mô tả cấu trúc mạng *.vec.cc File xử lý của simple modules *.ĐT3.ned là các file mô tả topo mạng cũng như cấu trúc của các modul.ned NEDC compling File mô tả cấu trúc mạng sau khi dịch *_n.K49 59 .a Thư viện giao diện người dùng *.a C++ compiling Linking Chương trình mô phỏng Chạy chương trình File cấu hình Omnetpp.cc. *.sna. Vũ Huy Cường. nó sự dụng ngôn ngữ NED (Nework Description ).3 Lược đồ xây dựng và chạy một chương trình mô phỏng OMNeT++ *.lib / *. 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ả. 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 *_.lib / *.sca Hình 4.

ini để khởi động các giá trị cần thiết..2 MÔ PHỎNG 4. 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. Trong quá trình viết code sẽ xác định biến nào được lưu. 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.. 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. 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 *. File omnetpp.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 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+ +.sca ta có thể dùng một chương trình tính toán bất kì. ví dụ như số cuộc gọi đã thực hiện số cuộc gọi bị từ chối… Để xử lí kết quả thống kê đạt được. 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.sca (scalar file) lưu các giá trị thống kê có được sau khi kết thúc mô phỏng.ĐT3.vec.ned khi có sự kiện xảy ra với nó…. còn đối với các file *. nó là các biến thay đổi theo thời gian trong quá trình mô phỏng.vec là các file vector.K49 60 . Thư viện lõi của chương trình mô phỏng được cung cấp bởi OmNet++. File *. xác định hành vi của các simple modul được mô tả trong *.2. cMessage.1 Khởi tạo mô phỏng Trong tất cả các kịch bản mô phỏng. đồ án sử dụng mô hình di chuyển Random Waypoint với các thông số sau: Vũ Huy Cường.ini do người lập trình viết. 4.sna phục vụ cho quá trình sửa lỗi. giá trị của biến và thời gian tương ứng được lưu vào file này. xử lí gói tin đến và đi. Cuối cùng là các file kết quả bao gồm file *. người viết triển khai các hoạt động của mạng như định tuyến.. ta có thể viết một chương trình nhỏ hoặc sử dụng các công cụ có sẵn. omnetpp. OmNet++ cung cấp chương trình Plove để vẽ các file *.

• Thời gian tạm dừng: thay đổi với các giá trị 0. • Kích cỡ môi trường mô phỏng: đồ án sử dung khu vực mô phỏng 500x500m cho toàn bộ kịch bản mô phỏng.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc • 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. • Số nút mạng: giá trị này không thay đổi trong toàn bộ quá trình mô phỏng. Vũ Huy Cường. và gửi ACK báo nhận. 100.K49 61 .ĐT3. • Thời gian mô phỏng : 300s cho tất cả kịch bản mô phỏng. đồ án sử dụng 25 nút mạng trong kịch bản mô phỏng. 200. speedmax].2 Một số hình ảnh mô phỏng Sau đây là tuần tự các quá trình của DYMO: Khám phá tuyến bằng cách gửi RREQ.2. gửi bản tin RREP. 300. gửi gói tin dữ liệu. 4.

K49 62 .Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Trước khi gửi gói tin tới một đích. Hình 4. 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ó.4 Quá trình gửi bản tin RREQ của DYMO Vũ Huy Cường.ĐT3.4). nó sẽ gửi bản tin RREQ để Khám phá tuyến (hình 4.

5 Quá trình gửi bản tin RREP của DYMO Vũ Huy Cường.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Các nút nhận được bản tin RREQ.K49 63 . nó sẽ gửi lại bản tin RREP về nguồn (hình 4.ĐT3. nếu nút đó là đích hoặc biết môt tuyến đường tới đích.5) Hình 4.

ĐT3.K49 64 . Hình 4.6). 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 Quá trình gửi gói tin dữ liệu của DYMO Vũ Huy Cường.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc Như vậy.

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc

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).

Hình 4.7 Quá trình gửi ACK báo nhận của DYMO

Vũ Huy Cường- ĐT3- K49

65

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc

4.2.3 Kết quả mô phỏng các giao thức định tuyến mạng Ad hoc
Bảng 4.1 Bảng thông số đánh giá dùng trong mô phỏng Thông số Phạm vi truyền dẫn Băng thông Thời gian mô phỏng Kích thước môi trường mô phỏng Loại lưu lượng Tốc độ gửi gói tin Kích thước gói tin Số nút Số nguồn gửi gói tin Tốc độ tối đa Giá trị 250m 54Mbps (802.11g) 300s 500m x 500m CBR 4 packet/s 512 bytes 25 5 20m/s

Kịch bản là một phần rất quan trọng trong mô phỏng, ở đây đồ á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). Các nút bắt đầu gửi gói tin dữ liệu sau 60s (mạng hội tụ). 4.2.3.1 Thông lượng đầu cuối - đầu cuối

Vũ Huy Cường- ĐT3- K49

66

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc

Hình 4.9 Thông lượng đầu cuối - đầu cuối Qua biểu đồ thông lượng < hình 4.9 > ta nhận thấy thông lượng tỷ lệ thuận với gói nhận.  Thông lượng 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,thông lượng của DYMO vẫn rất cao  Thông lượng của OLSR 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ì thông lượng của 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ó thông lượng khá cao.OLSR có thông lượng cao hơn AODV và DSR

Vũ Huy Cường- ĐT3- K49

67

QoS. khi mật độ di chuyển.4 Đánh giá và kết luận Trong môi trường kích cỡ trung bình và số lượng nút nhỏ. Do vậy.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 4.ĐT3.2.K49 68 . bảo mật… Vũ Huy Cường. 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. 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. Tuy nhiê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. 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.

với người nghiên cứu chỉ có cách dùng mô phỏng. định hướng phát triển của em là ngoài việc nghiên cứu lí thuyết. bảo mật. chúng ta thấy được thế mạnh và hạn chế của từng loại giao thức. Ngoài ra. OLSR).ĐT3. việc tham gia rất hạn chế. AODV. đóng góp ý kiến của các thầy cô trong bộ môn cũng như trong khoa để đồ á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. Đồ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. Một lần nữa em xin chân thành cảm ơn thầy Nguyễn Trung Dũng – Bộ môn Hệ thống viễn thông – 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. Do đó. không có giao thức nào đáp ứng đủ tiêu chuẩn mạng Ad hoc về mặt QoS. 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ó. DSR. KẾT LUẬN 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. Hà Nội.K49 69 . Đồ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. sẽ tìm hiểu sâu hơn về công cụ mô phỏng OMNET++ để có kết quả mô phỏng chính xác và đầy đủ. đánh giá về nó. 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. Sinh viên Vũ Huy Cường Vũ Huy Cường. Chính vì vậy. Trong tương lai. Qua đó. chỉ bảo và định hướng cho chúng em thực hiện thành công đồ án. em rất mong nhận được sự nhận xét.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc 5 CHƯƠNG 5. AODV. cụ thể là bốn giao thức DYMO. Cũng do thời gian nghiên cứu nên không tránh khỏi thiếu sót. tháng 5 năm 2009. Đồ án là sự nhìn nhận tổng quan về mạng Ad hoc. đồ á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. 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ó. DSR. OLSR.

K49 70 . 2004. “Ad hoc network Technologies and Protocols”. Boukerche. [11] Sehrish Abrejo. Asma Ansari Pakistan “Analysis of MANET Routing Protocols using Scenario Based Mobility Models ”. “ Metric in Ad hoc networks”. Das. “Routing Protocols in Mobile Ad hoc network”. Mobile Networks and Applications.ĐT3. TX 78249-066 U. “Performance Comparison of Two On-demand Routing Protocols for Ad Hoc Networks”. [5] Krishna Gorantala. June 15. protocols.S. 2007. [7] Narendra Singh Yadav and R. [4] Michel Barbeau and Evangelos Kranakis.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc TÀI LIỆU THAM KHẢO [1] Subir Kumar Sarkar. Department of Computer Science Isra University. Hyderabad. “The Effects of Speed on the Performance of Routing Protocols in Mobile Ad-hoc Network”.“Study of MANET Routing Protocols by Simulation Experiments”. 2007 Vũ Huy Cường. 2005. Division of Computer Science The University of Texas at San Antonio San Antonio. Asadullah Shah. 2009. [10] Samir R.A. and Applications”. pp. Auerbach Publications. Master thesis. 2008. C Puttamadappa. 9. [8] Azzedine Boukerche. Kamran Khowaja. [2] Amitabh Mishra.P. T G Basavaraju. 2007. Wiley. Spinger Science and Business Media. “Ad hoc Mobile Wireless Network Principles. [12] Ashwini Kumar Pandey. [6] Jabson Andres.Yadav. “Principles of Ad hoc networking”. 333-342.Department of Computer Science Southern Illinois University Edwardsville MAY 2004 [13] Farooq Anjum and Petros Mouchtaris. “Algorithms and protocols for wireless and mobile Ad hoc network”. Wiley. “Security for wireless Ad hoc networks” . Wiley. Cambridge University Press. 2006. “Performance Evaluation of Routing Protocols for Ad Hoc Wireless Networks”. [9] A. 2000. “Security and quality of service in Ad hoc wireless networks”. [3] Prasant Mohapatra and Srikanth Krishnamurthy.

Gowrishankar.org/html/draft-ietf-manet-aodv-09 [17] http://tools. Greece [15] S. Aristotle University of Thessaloniki.K49 71 .ietf.G. Basavaraju.ietf. Singh. Acharya Institute of Technology India [16] http://tools. Thessaloniki.org/html/draft-ietf-manet-dymo-17 [18] http://hipercom. of Electrical and Computer Engineering.txt [19] http://www. Subir Kumar Sarkar . Dept.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc [14] Georgios Koltsidas and Fotini-Niovi Pavlidou. Jadavpur University.ĐT3.ietf.org/proceedings/04mar/I-D/draft-ietf-manet-dsr-09. “Scenario based Performance Analysis of AODV and OLSR in Mobile Ad hoc Networks”.txt Vũ Huy Cường.fr/olsr/draft-ietf-manet-olsr-11. M. “Single-path and Multipath Routing Algorithms for Mobile Ad Hoc Networks”.inria. T.

Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc BẢNG THUẬT NGỮ VIẾT TẮT Chữ viết tắt ABR ACK AODV AP BS CBR DEST DHCP DSDV DSR DYMO FDMA Id IEEE IN IP LAN MAC MANET MIP OLSR PDA QoS RPC SRC TCP TTL VANET WLAN Chữ đầy đủ Associativity-Based Routing Acknowledgement Ad Hoc On-Demand Distance Vector Chữ tiếng Việt Định tuyến theo liên kết Báo nhận giao thức định tuyến vector khoảng cách theo yêu cầu Ad hoc Access point Điểm truy cập Base station Trạm gốc Constant Bit Rate Tốc độ bit cố định Destination Đích Dynamic host configuration protocol Giao thức cấu hình host động Destination sequenced distance Định tuyến vector khoảng cách vector tuần tự đến đich Dynamic source routing Định tuyến nguồn động Dynamic MANET On-demand Frequency division multiple access Đa truy cập phân chia theo sóng Identifcation Nhận dạng Institute of electrical and electronics Học viện kĩ sư điện và điện tử engineers Intermediate Trung gian Internet protocol Local area network Mạng cục bộ Media access control Điều khiển truy cập đường truyền Mobile ad hoc network Mạng di động không dây tùy biến Mobile IP Optimized Link State Routing Định tuyến trạng thái liên kết tối ưu Personal digital assistant Máy trợ lý cá nhân dùng kĩ thuật số Quality of service Chất lượng dịch vụ Remote Procedure Call Source Nguồn Transmission power control Điều khiển công suất truyền Time to Live Thời gian sống Vehicular Ad Hoc Network Mạng xe cộ ad hoc Wireless local area network Mạng không dây cục bộ Vũ Huy Cường.K49 72 .ĐT3.

examples.debug = true **.nodeSeparation = 150 *.playgroundSizeX = 500 *.numHosts =25 *./.adhoc..Grid_movilidad cmdenv-express-mode = true tkenv-plugin-path = .coreDebug = false **.playgroundSizeY = 500 **.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc PHỤ LỤC Mã nguồn chương trình • File omnetpp.wlan.channelNumber = 0 **.grid_aodv./.ĐT3.frameCapacity = 10 # channel physical parameters Vũ Huy Cường.ini [General] #debug-on-errors = true sim-time-limit = 300s seed-0-mt = 5 num-rngs = 2 network = inet.vector-recording = false cmdenv-express-mode = true *./Etc/plugins #tkenv-default-run=1 description = "Aodv Simple test" **.mgmt...K49 73 .numberOfChannels = 1 **.channelNumber = 0 **.

udpApp[0].host*.001s.4.udpApp[0].host[2].4GHz *.numUdpApps=1 **.channelcontrol.20.1) **.host*.sat = -110dBm *.speed = 20mps #uniform(0mps.ĐT3.udpApp[0].mobility.mobilityType = "inet.udpApp[0].alpha = 2 *.pMax = 2.burstDuration = 0s #uniform(1. if true select new destination per burts **.host[0].host[3].localPort=1234 **.host*.mobility.carrierFrequency = 2.udpApp[0].25s **.destPort=1234 **.1)) **.host[*].udpApp[0].udpApp[0].udpApp[0].destAddresses="random_name(host)" **.1) **.udpApp[0].limitDelay =20s **.time_end=0s **.numChannels = 1 # udp apps (on) **.destAddresses="random_name(host)" **.rand_generator=1 **.host[*].channelcontrol.1s Vũ Huy Cường.20mps) **.updateInterval = 0.messageLength=512B # Bytes **.udpApp[0].udpApp[0].messageFreq = 0.udpApp[0].destAddresses="" **.udpApp[0].destAddresses="random_name(host)" **.time_begin = 60s **.channelcontrol.channelcontrol. udpApp[0].channelcontrol.K49 74 .destAddresses="random_name(host)" **.0.host[1].message_freq_jitter=uniform(-0.mobility.NullMobility" **.host[*].udpApp[0].host[4].Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc *.udpApp[0].0mW *.udpAppType="UDPBasicBurst" **.udpApp[0].001s.destAddresses ="random_name(host)" **.activeBurst=true # if false all packet to the same address.udpApp[0].time_off = 0s # uniform(10.

mac.ĐT3.opMode = 2 # 802.address = "auto" **.maxQueueSize = 14 **.wlan.proxyARP = true # Host's is hardwired "false" **.mac.cacheTimeout = 100s # manet routing **.procDelay=10us # **.mobility.IPForward=false # ARP configuration **.cwMinBroadcast = 31 **.mobility.routingFile="" **.wlan.mac.mac.routingProtocol = "DYMO"# DSR/AODV/OLSR # nic settings **.retryCount = 3 **.wlan.manetmanager.mac.scrollX = 50 **.host*.wlan.wlan.mac.slotTime = 9us # **.wlan.K49 75 .wlan.mac.mac.rtsThresholdBytes = 3000B **.11g **.wlan.tcpAppType="TelnetApp" # ip settings **.wlan.nodeId = -1 # tcp apps (off) **.mac.ip.cwMinData = 31 **.retryTimeout = 1s **.mgmt.networkLayer.wlan.arp.scrollY = 50 **.wlan.mac.retryLimit = 7 **.AIFSN = 2 #DIFS Vũ Huy Cường.bitrate = 54Mbps **.basicBitrate = 24Mbps # 24Mbps **.mac.frameCapacity = 10 **.mobility.wlan.manetrouting.host*.arp.host*.arp.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc **.numTcpApps=0 **.

radio.s_bit_ = false **.radio.channelcontrol.berTableFile = "per_table_80211g_Trivellato.pMax = 2.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc # channel physical parameters *.radio.MaxPktSec = 20 #// 10 **.wlan.wlan.11b/802.hello_ival_ = 0 **.channelcontrol.radio.broadCastDelay=uniform(0s.sensitivity = -85dBm **.0mW *.hello_jittering = true **.radio.NetDiameter = 10 **.RREQTries = 3 **.4GHz *.wlan.radio.005s) #/ parameters : DYMOUM **.pathLossAlpha = 2 **.wlan.alpha = 2 *.radio.wlan.transmitterPower = 2.0.sat = -110dBm *.noRouteBehaviour = 1 # // parameters: AODVUU.11g-only **.0mW **.numChannels = 1 **.channelcontrol.K49 76 .RREQWaitTime = 1000 **.thermalNoise = -110dBm **.wlan.promiscuous = false **.snirThreshold = 4dB # in dB **.channelcontrol.wlan.log_to_file = false **.reissue_rreq_ = false **.phyOpMode = 2 #1/2 802.ĐT3.optimized_hellos = true Vũ Huy Cường.wlan.wlan.bitrate = 54Mbps **.no_path_acc_ = false **.RouteDeleteTimeOut = 3000*5 #//5*RouteTimeOut **.dat" **.RouteTimeOut = 3000 **.channelcontrol. **.radio.carrierFrequency = 2.radio.channelModel = 1 #1/2 rayleigh/awgn **.

BroadCastJitter = 20 # 20 ms **.debug = false **. **.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc **.ratelimit = 1000 **.internet_gw_mode = 0 **.NonpropRequestTimeout = 30# //30 MILLISECONDS **.GratReplyHoldOff = 1 #.MaxMaintRexmt = 2 # //2 **.MaintHoldoffTime = 250# //250 MILLISECONDS **.0" # // parameters: DSRUU.FlushLinkCache = true **.receive_n_hellos = 1 **.SendBufferTimeout = 300# //30 s **.active_timeout = 6000 # // time in ms **.internet_gw_address = "0.MaxRequestPeriod = 10 #//10 SECONDS **.RexmtBufferSize = -1 #//MAINT_BUF_MAX_LEN **.TryPassiveAcks = true #//1 **.LifoSize = 20 Vũ Huy Cường.rreq_gratuitous = true #**. **.PrintDebug = true **.K49 77 .0.expanding_ring_search = true **.SendBufferSize = -1 **.MaxRequestRexmt = -1 #// 16.llfeedback = false# //1000 **.ĐT3.RouteCacheTimeout = 300 #300 seconds **.PromiscOperation = false **.rt_log_interval = 0 **.local_repair = true **.wait_on_reboot = 0 **. //1 SECONDS **.UseNetworkLayerAck = false **.RequestPeriod = 500 #//500 MILLISECONDS **.PassiveAckTimeout = 100# //100 MILLISECONDS **.MAX_SALVAGE_COUNT = 15 # //15 **.RequestTableSize = -1 **.RequestTableIds = -1 **.unidir_hack = 0 **.0.

1" • File .C_alpha = 0.manetroutingprotocol.Mid_ival = 5 **.ETXWindowNumHello = 10 **.Link_delay = true #//default false **.Mpr_algorithm = 1 **.awk Vũ Huy Cường.host*.Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc **.Tc_ival = 5 **.ETXRetryBeforeFail = -1 **.PathCache = true **.Link_quality = 2 **.netmask = "255.RNGseed_DSDV = 0 seed-0-mt = 1209575029 seed-1-mt = 449294716 **.255.timetolive_routing_entry = 5 # // .manetroutingprotocol.MaxVariance_DSDV = 1 **.Fish_eye = false **.Hello_ival = 2 **.ĐT3.use_mac = 0 #1 **.Tc_redundancy = 3 **. [seconds] **.RREPDestinationOnly = false **.2 #// DSDV **.Willingness = 3 **.0.hellomsgperiod_DSDV = 1 # //Period of DSDV hello message generation [seconds] **.ETX_Active = false **.K49 78 . // Second **.RREQMaxVisit = 5 # // Max Number that a RREQ can be processes by a node #// Olsr **.routing_algorithm = 1 **.mobility.manetroutingprotocol.ETXHelloInterval = 1 #.traceFile = "esce_10_no_pausa.0" # // **.

8f\n". receives = 0.simulation/t).Đánh giá thông lượng của các giao thức định tuyến trong mạng Ad hoc BEGIN { sends = 0.(receives/simulation)). printf("numSent= %. printf("numReceived= %. } if ($3 == "simtime") { simulation += $4.8f\n". simulation = 0.8f\n". } if ($3 == "Routing-overhead") { routing += $4. t = 0.sum_delay/receives).8f\n". printf("throughput(pkts/s) = %.} if ($3 == "Total_received") { receives += $4. printf("packet delivery ratio = %.8f\n". } if ($3 == "numReceived") { numReceived += $4. printf("mean_delay = %.ĐT3. } if ($3 == "sum_delay") { sum_delay += $4. numReceivedOther = 0. numSent = 0. } { # CALCULATE PACKET DELIVERY FRACTION if ($3 == "Total_send") { sends += $4. routing/sends).(receives)/(sends)).sends). numReceived = 0. printf("numReceivedOther=%. printf("simulation_time(s) = %. t++.8f\n". numReceivedOther). } } END { printf("Totalsends(pkts) = %. } if ($3 == "numSent") { numSent += $4. } Vũ Huy Cường.8f\n".receives). printf("normalized-routing-overhead=%.8f\n".8f\n". sum_delay = 0. numSent).K49 79 . numReceived). printf("Totalreceives(pkts) = %.8f\n". routing =0. } if ($3 == "numReceivedOther") { numReceivedOther += $4.

Sign up to vote on this title
UsefulNot useful