メイン Routing Settings AODVの経路表について | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
yosio | 投稿日時: 2012/1/5 14:31 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について 明けましておめでとうございます。
今年もよろしくお願いいたします。 >格納すべき値(元ネタ)をどこから引っ張ってくればよいか?という話題でしょうか? ハイ、そうです。解りにくくて、申し訳ありません。 ご教示お願いいたします。 >それらのうちどれを使用すべきなのかわからないということでしょうか? はい、一応RREPが返している時のNexthopが通常の前ホップノードだと考えているのですが、それを経路表の一部に保持させておきたいと考えています。 複雑な処理になりそうですか? 全体を通じて曖昧な質問で申し訳ありません。 今年もお世話になります。 |
ino | 投稿日時: 2012/1/5 15:24 |
新米 登録日: 2011/1/24 居住地: 投稿: 16 |
Re: AODVの経路表について どうも。
> RREPが返している時のNexthopが通常の前ホップノードだと考えているのですが、それを経路表の一部に保持させておきたいと考えています。 なんだかもう解決しているのでは・・・? RREPが返している時とはAodvHandleRequest()でAodvInitiateRREP()を呼んでいるところですかね?(間違ってたらどなたかご指摘お願いします) で、そのsrcAddr(仮引数でのAddress nextHop)を経路表の一部に保持したい。 経路表はaodv->routeTableで取得できますので、あとはそこに格納用のメンバ変数を用意しておいて、そこに格納すればいいことになります。 |
yosio | 投稿日時: 2012/1/5 15:56 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について ありがとうございます。
一つ質問があります。 経路表は配列ではないのですか? すいません、経路表の構造が把握しきれていません。 ご指導お願いいたします。 |
ino | 投稿日時: 2012/1/5 16:14 |
新米 登録日: 2011/1/24 居住地: 投稿: 16 |
Re: AODVの経路表について どうも。
AODVを使用しているNode内にAodvDataが1つ存在します。 IP層に置いてあるものを以下で取得していることからわかります。 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ aodv = (AodvData*)NetworkIpGetRoutingProtocol (node, ROUTING_PROTOCOL_AODV, NETWORK_IPV4); ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 更にこのAodvData構造体のメンバ変数に ++++++++++++++++++++++++++++++++++++++++++++++++++++++ AodvRoutingTable routeTable; ++++++++++++++++++++++++++++++++++++++++++++++++++++++ が一つあり、これがあるノードが持っているAODVテーブルの全体です。 更に更にこのAodvRoutingTable構造体のメンバ変数に ++++++++++++++++++++++++++++++++++++++++++++++++++++++ AodvRouteEntry* routeHashTable[AODV_ROUTE_HASH_TABLE_SIZE]; ++++++++++++++++++++++++++++++++++++++++++++++++++++++ があり、この配列の要素1つ1つが経路表のエントリそれぞれに 対応していることがわかります。ただし、コード上は配列ですが 名前の通りデータ構造としてはhashですのでアクセスの仕方に注意が必要です。 これにアクセスしている適当な場所を参考にしてみてください。 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ current = routeTable->routeHashTable[destAddr.interfaceAddr.ipv4 % AODV_ROUTE_HASH_TABLE_SIZE]; ++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
mast | 投稿日時: 2012/1/5 17:26 |
一人前 登録日: 2005/4/7 居住地: 投稿: 93 |
Re: AODVの経路表について yosioさん
ハッシュテーブルというデータ構造はご存知ですか? ご存じなければネットで検索すればいろいろと分かりやすい説明を行っているサイトが見つかると思いますのでまずはそちらを理解してみてください。 inoさんの説明では「コード上は配列ですが」と書かれていますが、AODVのルーティングテーブル(routeHashTable[AODV_ROUTE_HASH_TABLE_SIZE])は一般的なハッシュテーブル構造となっています。 絵で表現したほうが分かりやすいと思いますので、inoさんの説明文に加えて添付の絵も構造理解にご活用ください。 qualnet_aodv_route_table.png |
yosio | 投稿日時: 2012/1/5 18:50 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について >inoお返事ありがとうございます。
いつも、解り易い回答で助かります。 今のを見ながらソースをいじっていきたいと思います。 |
yosio | 投稿日時: 2012/1/5 18:53 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について >mast
ハッシュの構造をインターネットで調べてみます。 絵はすごく助かりました。 一目で構造が解りました。 mastさん,inoさん,又お世話になると思いますがよろしくお願いいたします。 |
yosio | 投稿日時: 2012/1/8 10:09 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について 少し前のレスについて質問です。
Queue内のパケット数を取得したいのですが書き方がいまいち解りません、教示お願いします。 使うのはnumberInQueueだけですか? |
ino | 投稿日時: 2012/1/10 10:25 |
新米 登録日: 2011/1/24 居住地: 投稿: 16 |
Re: AODVの経路表について どうも。
ネットワーク層の構造体がNode構造体内に1つあります。 NetworkDataIp *ip = (NetworkDataIp *) node->networkData.networkVar; その下にinterface毎に結びついた構造体がありその下にスケジューラがぶら下がっています。 Scheduler *schedulerPtr = ip->interfaceInfo[interfaceIndex]->scheduler; Queueはそのスケジューラが管理しておりSchedulerクラスのpublicな関数でQueueに関する 様々な情報にアクセスできます。 numberInQueue関数はその1つで引数に優先度を指定することで、指定した優先度に対応した Queue内に入っているパケット数を返してくれます。 int n_queue0 = schedulerPtr->numberInQueue(0); また、その時の優先度にALL_PRIORITIESを指定すれば、全Queueのパケット数合計を返してくれます。 int n_all = schedulerPtr->numberInQueue(ALL_PRIORITIES); (Scheduler::numberInQueueを検索してどういう処理になっているか見ると参考になります)。 > 使うのはnumberInQueueだけですか? 当然ですが、ソースの場所や何をやりたいかによって変わってくると思います。 とりあえず上記の通り意図したパケット数が取得できるか試してみてください。 加えて、Schedulerクラスの他の関数でどのようなことが出来るのか見てみるのも 参考になるかと思います。 |
yosio | 投稿日時: 2012/1/10 11:41 |
常連 登録日: 2011/11/24 居住地: 投稿: 41 |
Re: AODVの経路表について お返信有難うございます。
アクセスの仕方特にわかりませんでした。 助かります。 helloメッセージに各ノードのQueue内パケット数の情報を付加して情報のやりとりをしたいのですが,プロトコルはAODVを使います。そこで処理の内容をHelloメッセージ内に書こうと思っているのですが、その処理はノードの方がよろしいのでしょうか? 色々情報ありがとうございます。 |
« 1 (2) 3 4 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |