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

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/05/03:15/15
2024/05/02:19/23

2024/03/04より312/1375
人気モジュール
No.1: フォーラム 95
No.2: ニュース 3
No.3: QualNet概要 1
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット84
No.2:Windows NT1

No.1:どっかの巡回ロボット81
No.2:Majestic-12巡回ロボット2
No.3:Safari1

日曜日からの合計
メイン
   Routing Settings
     OLSRにおける経路切り替え
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
Akihiro
投稿日時: 2014/5/30 14:17
新米
登録日: 2014/5/30
居住地:
投稿: 10
OLSRにおける経路切り替え
お世話になります.
QualNet初心者です.

現在アドホック通信におけるOLSR方式において,
経路決定の際のコスト計算に,新たなメトリック値を追加し,
一定間隔ごとに,経路を切り替えるといった研究を行っております.

そこで質問なのですが,
経路を切り替える際,
例えば添付図のような状態のとき(経路2⇒5へ変更)
プログラム内では,具体的にどのプログラムのどの部分をどのように変更すればよいでしょうか?

経路決定をしている部位と合わせてご指導頂ければと思います.

よろしくお願い致します.
質問用.png
hiro
投稿日時: 2014/5/30 15:50
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: OLSRにおける経路切り替え
さて、どこから始めましょうか。

まず初めにOLSRはOLSR-INRIAですか、それともOLSRv2ですか。

# たぶん長いやり取りになりますよ。
Akihiro
投稿日時: 2014/5/30 16:39
新米
登録日: 2014/5/30
居住地:
投稿: 10
Re: OLSRにおける経路切り替え
解答ありがとうございます。

現時点ではOLSRと変更点が少ないといった理由で、v2での実装を考えております。

また、OLSR-INRIAに関する資料があまり見つからなかったので、仕様の理解がいまいちできてないのですが、OLSRとは大きく違いはありますか?
hiro
投稿日時: 2014/5/30 18:42
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: OLSRにおける経路切り替え
では、まず QualNet-Wireless-ModelLibrary.pdf の
以下の2章の内容を読んで、目的に適したOLSRを選択して下さい。

5.10 Optimized Link State Routing Protocol - INRIA (OLSR-INRIA)
The QualNet OLSR-INRIA model is based on RFC 3626.

5.11 Optimized Link State Routing Protocol version 2 (OLSRv2)
The QualNet OLSRv2 model is based on draft-ietf-manet-olsrv2-02.
Akihiro
投稿日時: 2014/5/30 19:12
新米
登録日: 2014/5/30
居住地:
投稿: 10
Re: OLSRにおける経路切り替え
早速読ませて頂きました.

考え直した結果,今回はRFC3626に基づいたOLSRの拡張のみで十分そうなので,
OLSR-INRIAを用いて実装を行いたいと思います.

よろしくお願い致します.
hiro
投稿日時: 2014/6/3 16:21
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: OLSRにおける経路切り替え
関連するソースコードは以下の2つです。
./libraries/wireless/src/routing_olsr-inria.{cpp,h}

コストと経路に関連しているものを探します。

まず経路(RoutingTable)関連を探します。
./libraries/wireless/src/routing_olsr-inria.cpp
このファイルから以下の関数が候補になります。

OlsrLookupRoutingTable
OlsrDeleteRoutingTable
OlsrReleaseRoutingTable
OlsrInsertRoutingTable
OlsrInsertRoutingTablefromTopology
OlsrFillRoutingTableWith2HopNeighbors
OlsrFillRoutingTableWithNeighbors
OlsrInsertRoutingTableFromHnaTable
OlsrPrintRoutingTable
OlsrCalculateRoutingTable

次にコスト(metric)がどのように使われるのか探します。
./libraries/wireless/src/routing_olsr-inria.h
このファイルから以下の部分が関係ありそうです。

#define rt_metric rt_entry_infos.rtu_metric // cost of route
#define rt_interface rt_entry_infos.rtu_interface // cost of route

第一段階として、上記の情報を元に調べてみましょう。
Akihiro
投稿日時: 2014/6/4 15:38
新米
登録日: 2014/5/30
居住地:
投稿: 10
Re: OLSRにおける経路切り替え
お返事ありがとうございます。

どうやら
OlsrInsertRoutingTable
OlsrInsertRoutingTablefromTopology
または、
OlsrInsertRoutingTableFromHnaTable
あたりをいじる事で、経路を切り替える事が出来そうですね。

まずはメトリックをいじらずに、
簡単なトポロジーを組んで、経路が切り替えられているかどうかを確認してみようと思います。
ありがとうございました。

・・・また息詰ったらよろしくお願いします。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT