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

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/05/19:6/6
2024/05/18:20/24

2024/03/20より399/1409
人気モジュール
No.1: フォーラム 6
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット6

No.1:どっかの巡回ロボット5
No.2:Baidu巡回ロボット1

日曜日からの合計
メイン
   Link (MAC) Layer Protocol Implementation & Model Development
     ハンドオーバー条件の変更方法
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
sail
投稿日時: 2007/12/20 16:04
新米
登録日: 2007/5/20
居住地:
投稿: 4
ハンドオーバー条件の変更方法
複数のAPを設置し、その間をハンドオーバーさせるシナリオを作っています。
そのハンドオーバーの際に

1.電波強度
2.APの帯域利用率
3.APに接続している端末数

を考慮した上で接続するAPを選択させようと考えています。
ハンドオーバー時のAP選択を規定している関数はどのソースコードに含まれていて、どういった変更を加えれば上の目的を達せられるでしょうか?
変更の方向性だけでも示していただけると助かります。

よろしくお願いいたします。
sail
投稿日時: 2008/1/3 7:08
新米
登録日: 2007/5/20
居住地:
投稿: 4
電波強度(RSSI)データの利用方法
すみません、この件に関してはある程度解決したのですが、別の疑問点が出たため、
新たに書き込ませていただきます。


ハンドオーバー条件に変更を加えるため、mac_dot11-mgmt.cpp ファイル内の
"MacDot11ManagementScanNextChannel()"
関数で電波強度(RSSI)の情報を利用したいと思っています。

今のところ、以下のことを試してみました。
まず、Message.h 内の "message_str" 最終行に以下を追加し、
RSSI値を格納する変数を追加しました。
==========================================
//Users should not modify above this line
float myRSSI;
}
==========================================

次に、phy_802.11.cppファイル内の
"Phy802_11SignalEndFromChannel()"に以下の行を追加し、
RSSI値をMessage内のmyRSSIに格納しました。
==========================================
propRxInfo->txMsg->myRSSI = propRxInfo->rxPower_dBm;
==========================================

ここで格納したmyRSSIの値は他の箇所(たとえば、mac_dot11.cppファイル内の
"MacDot11ProcessAnyFrame()")では値をprintすることができました。
しかし、冒頭の"MacDot11ManagementScanNextChannel()"関数では引数に
messageが無いため、うまく利用することができませせん。
何か良い方法がありましたらご教授いただければと思います。

よろしくお願いいたします。
mast
投稿日時: 2008/1/11 11:48
一人前
登録日: 2005/4/7
居住地:
投稿: 93
Re: 電波強度(RSSI)データの利用方法
まず、mac_dot11.hのMacDataDot11構造体の最後にRSSI値を格納する変数を追加
==========================================
RandomSeed seed;
float myRSSI;
} MacDataDot11;

==========================================

次に、phy_802.11.cppファイル内の
"Phy802_11SignalEndFromChannel()"に以下の行を追加し、
RSSI値をMacDataDot11内のmyRSSIに格納。
==========================================
MacDataDot11* dot11 = (MacDataDot11*) node->macData[thisPhy->macInterfaceIndex]->macVar;
dot11->myRSSI = propRxInfo->rxPower_dBm;
==========================================

でどうですか?
sail
投稿日時: 2008/1/16 20:52
新米
登録日: 2007/5/20
居住地:
投稿: 4
Re: 電波強度(RSSI)データの利用方法
返信ありがとうございます。

教えていただいた方法を試してみたところ、無事RSSI値を取得し、利用することが出来ました。
大変助かりました。
ありがとうございます。
sail
投稿日時: 2008/1/17 18:45
新米
登録日: 2007/5/20
居住地:
投稿: 4
Re: 電波強度(RSSI)データの利用方法
再び失礼いたします。
最初の投稿で質問させていただいた「APに接続している端末数」の取得が
どうもうまくいっていないようなので、再度質問させていただきます。

現在、APに接続している端末数として、以下の変数から情報を取得しています。
"dot11->apVars->stationCount"
または
"dot11->apVars->apStationList->size"
("mac_dot11-sta.cpp"ファイル内のMacDot11StationCanHandleDueBeacon()関数内)

しかし、どちらの数値も実態と違う数値が表示されています。
具体的には、シミュレーションが進むにつれてどちらの数値も増加し続けてしまい、
実際には5台程度の端末しか接続していないAPでも、20〜30という値が返ってきて
しまいました。
この件に関する解決方法、もしくはAPに接続している端末数の取得方法として、
上記以外に何か方法がありましたらご教授いただけますでしょうか。
よろしくお願いいたします。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT