Skip to content
This repository was archived by the owner on Jan 28, 2021. It is now read-only.

AODV Routing Protocol.

Jean Pierre Dudey edited this page Jan 13, 2020 · 6 revisions

We currently are on way of developing a AODV protocol for the Locha Mesh network.

Before starting.

You need first to learn the concepts of the IPv6 and 6LoWPAN protocol as AODV and Locha Mesh make intensive use of them. Here are some documents you can use to learn:

Introduction.

To find routes we use the AODV routing protocol, this is an RFC standard (RFC 3561), however we made some changes to make it work with IPv6.

RREQ message format.

The main difference between an RFC AODV RREQ and our RREQ is that the orig_address and dest_address are now 128 IPv6 addresses, also they were reordered so they are alignedo on byte boundaries.

+-----------------------------+
|aodv_type_t       type;      |
+-----------------------------+
|aodv_rrep_flags_t flags;     |
+-----------------------------+
|uint8_t           reserved;  |
+-----------------------------+
|uint8_t           prefix_sz; |
+-----------------------------+
|uint8_t           hop_count; |
+-----------------------------+
|uint32_t          dest_seqno;|
+-----------------------------+
|uip_ipaddr_t      dest_addr; | -> 128-bit IPv6 address.
+-----------------------------+
|uip_ipaddr_t      orig_addr; | -> 128-bit IPv6 address.
+-----------------------------+
|uint32_t          lifetime;  |
+-----------------------------+

Clone this wiki locally