Japan QualNet Community Forums Japan QualNet Community Forums
Welcome Guest 
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/04/20:8/8
2024/04/19:16/23

2024/02/20より294/1357
人気モジュール
No.1: フォーラム 106
No.2: QualNet概要 5
No.3: ニュース 4
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット67
No.2:Linux3
No.3:Unknown OS2

No.1:どっかの巡回ロボット60
No.2:Google巡回ロボット5
No.3:Safari3

日曜日からの合計
メイン
   Routing Protocols Implementation & Model Development
     AODVにおける経路変更
投稿するにはまず登録を

題名 投稿者 日時
 » AODVにおける経路変更 Shinya 2013/10/15 16:13
     Re: AODVにおける経路変更 hiro 2013/10/25 9:58
       Re: AODVにおける経路変更 Shinya 2013/11/5 13:44
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
Shinya
投稿日時: 2013/10/15 16:13
新米
登録日: 2013/3/26
居住地:
投稿: 10
AODVにおける経路変更
お世話になります.

現在AODV方式に改良を加え,通信障害発生時における迅速な通信復旧方法について研究を行っております.


本来AODV方式では、基本的に各ノードが持つ経路表のnextHopは1個のみだと思うのですが(一定時間経過後の経路表),
とある条件を元に各ノードに,nextHopを複数候補を持たせたいと考えております.

たとえば添付ファイルの図ではR1⇒R2を経由し,実パケットを送信しておりますが,
即座に経路を切り替えることでR1⇒R4の通信も可能になるようにしたいと思っております.

そこでまず経路を切り替える事ができるかどうか確認するため,
図のようなノード配置の実験構図を組み、
一定時間経過後、R1におけるnextHopをR2からR4に上書きを試してみました。

その際、プログラム中では、
routing_aodv.hの中の構造体で、R2のノードにR4のアドレスを保持させておき(aodv->usenexthopnode(Address型)とする)、
routing_aodv.cppで、経路を更新するための関数を実装し、

rtEntry->nextHop.interfaceAddr.ipv4 = aodv->usenexthopnode % AODV_ROUTE_HASH_TABLE_SIZE;

と記述することで、アドレスがR2からR4へと切り替わるのではないかと考えました。
ところが、うまく反映されていなかったのか、うまく切り替えが出来ませんでした。

そこで質問なのですが、
1.rtEntry->nextHopはNodeAddress型なので、aodv->usenexthopnodeもNodeAddress型に変換することで

rtEntry->nextHop = aodv->usenexthopnode;

とすればうまくいくのでしょうか?

2.1でうまくいかない場合、どのような記述方法で現在の経路表のnextHopの上書きができるのでしょうか?

経路表に関する理解が浅いため、初歩的な質問かもしれませんが、よろしくお願いいたします。

【追記】
上記の文では、どのテーブルのnextHopか分からないと判断し、
routeTable->routeHashTable[i]->nextHop.interfaceAddr.ipv4 = aodv->usenexthopnode % AODV_ROUTE_HASH_TABLE_SIZE;

と変更を行いましたがこちらもうまくいきませんでした。

通信状態.png
フラット表示 前のトピック | 次のトピック
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT