アドホックオンデマンド距離ベクトル(AODV)ルーティングは、モバイルアドホックネットワーク(MANET)やその他の無線アドホックネットワーク向けのルーティングプロトコルです。これは、Charles Perkins(Sun Microsystems)とElizabeth Royer(現Elizabeth Belding)(カリフォルニア大学サンタバーバラ校)によって共同開発され、1999年2月に開催されたACM第2回IEEEモバイルコンピューティングシステムおよびアプリケーションワークショップで初めて発表されました。[ 1 ]
AODVは、低消費電力、低データレートの無線アドホックネットワークであるZigbeeで使用されるルーティングプロトコルです。AODVには、MAD-HOC、Kernel-AODV、AODV-UU、AODV-UCSB、AODV-UIUCなど、さまざまな実装があります。[ 2 ]
AODV の最初の出版物は、2018 年にSIGMOBILE Test of Time Award を受賞しました。 [ 3 ] Google Scholar によると、この出版物は 2022 年末までに 30,000 件の引用数に達しました。AODV は、2003 年にインターネット技術タスクフォース (IETF) で実験的 RFC 3561 [ 4 ]として公開されました。
各ノードには、時間とともに単調増加する独自のシーケンス番号があり、使用されるパスにループが発生しないことを保証します。さらに、ルーティング機能に割り当てられた各ネットワークコンポーネントは、独自のパスインデックスを格納します。このパスインデックスには、宛先方向の次のノードのアドレス(ネクストホップ)、そのシーケンス番号、ホップ数で表される総距離、またはリンク品質を測定するために設計されたその他のメトリックが含まれます。
AODVでは、データパケットを転送するための接続が必要になるまで、ネットワークは完全に静止状態を保ちます。ネットワーク上で経路を検索する必要がある場合、AODVはプロトコルで定義されている以下のパケットを使用します。
これらのメッセージは、シンプルなUDPパケットとして実装でき、ルーティングは引き続きインターネットプロトコル(IP)に基づいています。
RREQパケットは送信元ノードからブロードキャストされるため、メッセージのバーストが生成され、ネットワーク全体に転送されます。ネットワーク内のノードが要求パケットを受信すると、一時的な経路を介して要求元ノードにRREPパケットを送信できます。要求元ノードは、受信した新しい情報を利用できます。一般的に、各ノードは経路の長さに基づいて複数の経路を比較し、最も都合の良い経路を選択します。ノードに到達できなくなった場合、RERRメッセージが生成され、ネットワークの残りのノードに警告されます。
各RREQには、再送信できる回数を制限する「有効期限」が設定されています。さらに、AODVは、ノードがRREQに対する応答を受信しない場合に備えて、バイナリバックオフ機構を実装しています。この機構では、実装によって設定された最大値まで、要求が線形的に増加する時間間隔で繰り返されます。
AODVの主な利点は、既に確立され正常に機能している経路の場合、トラフィックを生成しないことです。実際、経路が不明なノードにパケットを送信する必要がない限り、アルゴリズム自体は全く関係ありません。さらに、距離ベクトルベースのルーティングは計算が簡単で、大量のメモリを必要としません。
しかし、このプロトコルは、ネットワーク内の2つのノード間の接続を確立するのに、他のプロトコルよりも時間がかかる。