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

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/05/17:18/23
2024/05/16:22/24

2024/03/18より398/1407
人気モジュール
No.1: フォーラム 103
No.2: QualNet概要 3
No.3: ニュース 2
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット83
No.2:Unknown OS1
No.3:Windows XP1

No.1:どっかの巡回ロボット74
No.2:Majestic-12巡回ロボット6
No.3:Google巡回ロボット3

日曜日からの合計
メイン
   Physical Layer Settings
     ListenableとListeningについて
投稿するにはまず登録を

題名 投稿者 日時
 » ListenableとListeningについて TakaoIto 2011/10/26 22:55
     Re: ListenableとListeningについて hed 2011/10/31 15:13
       Re: ListenableとListeningについて TakaoIto 2011/11/2 13:55
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
TakaoIto
投稿日時: 2011/10/26 22:55
新米
登録日: 2010/4/23
居住地: 東京
投稿: 7
ListenableとListeningについて
お世話になります.

基本的すぎるのだろうと質問せずに研究の合間調べていたのですが,いつまで経っても解決できなかったので質問させてください.

現在802.11における無線通信に関して,複数のチャネルを使い分けていきたいと考えております.

そこで,下記トピックを参考にしながら,ソースコードを改変しているところです.
http://simweb.kke.co.jp/qualnet/forum/modules/newbb/viewtopic.php?viewmode=thread&topic_id=387&forum=45&post_id=1457#1457


【mac_dot11.cppに追加したソースコード】

unsigned int phyNumber = dot11->myMacData->phyNumber;   //物理インタフェース
int channnelIndex = 1;                                  //変更後のチャネル
int channnelIndexPrev = 0;                              //変更前のチャネル
BOOL phyCanListen = FALSE;
BOOL phyIsListening = FALSE;

phyCanListen =
	PHY_CanListenToChannel(				//新規のチャネルからリスニングすることができるかどうか確認
		node,
		phyNumber,
		channelIndex);

if(phyCanListen){                                       //新規のチャネルからリスニングすることができるなら実行
	phyIsListening =                //変更前のチャネルでリスニングしているかどうか確認
		PHY_IsListeningToChannel(
			node,
			phyNumber,
			channelIndexPrev);

	if (phyIsListening == TRUE)	                //変更前のチャネルでリスニングしていたならば実行
	{
		PHY_StopListeningToChannel(       //現在のチャネルでのリスニングを停止
			node,
			phyNumber,
			channelIndexPrev);

		PHY_StartListeningToChannel(      //新規のチャネルでのリスニング開始
			node,
			phyNumber,
			channelIndex);

		PHY_SetTransmissionChannel(             //新規のチャネルを送信チャネルとしても設定
		        node,
		        phyNumber,
		        channelIndex);
	}
}



流れとして合っているのか・・・というのも聞きたいところなのですが,それ以前の質問です.
QualNetGUIでチャネルマスクを設定する際,ListenableとListeningと2つあります.これはどう違うのでしょうか.

現状では,

Listenableは無線デバイスとして受信チャネルに使用できるかどうか
Listeningは実際に今デバイスでそのチャネルを監視している状態

という認識でいます.

実際phy.cppやmac_dot11-mgmt.cpp等を読んできて,特にその理解で違和感はありませんでした.
しかし,何故Listeningは『type="Mask"』で定義されているのでしょうか.(phy_layer.prt)
一つの無線インタフェースで複数のチャネルを同時に受信チャネルとして利用できるとは思えません.

2つの周波数を定義し,Mask設定で11と両方設定していた場合には先頭のチャネルが使われているのだろうと想像していました.
ですが,PHY_IsListeningToChannel()関数を使ってリスニングしているチャネルを見たときに,Mask設定の通り両方がListeningされているという結果が得られました.

無知で申し訳ないのですが,ご教示頂けるとすごく助かります.
フラット表示 前のトピック | 次のトピック
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT