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

パスワード:


パスワード紛失

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

2024/03/06より328/1375
メイン
   Physical Layer Settings
     Broadcast packetを除いたRSSIの出力について
投稿するにはまず登録を

題名 投稿者 日時
   Broadcast packetを除いたRSSIの出力について drafly 2016/10/14 20:28
   » Re: Broadcast packetを除いたRSSIの出力について iposup 2016/10/17 20:59
       Re: Broadcast packetを除いたRSSIの出力について drafly 2016/10/18 15:35
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
iposup
投稿日時: 2016/10/17 20:59
新米
登録日: 2016/10/17
居住地:
投稿: 1
Re: Broadcast packetを除いたRSSIの出力について
drafly さん、こんにちは

一般的に(実世界では)PHYレイヤにおいて Broadcast など上位レイヤの情報を判定することはできません。
が、ここではシミュレーションとして送信元の上位レイヤが付加した情報を取り出す方法について書いてみます。
想定が間違っていたらすみません。

目的によりいくつかの方法が取れると思いますが、いずれも簡単にというわけにはいかず、
ある程度の実装ソースコードの理解と改修が必要です。
ヒントというか材料のようなものを提示するので、これを手掛かりにチャレンジしてみてください。

[MACヘッダの情報を取り出す方法例]
・受信したメッセージがパケットメッセージであれば、
PHYのヘッダを取り外すことにより上位のMACフレームを取り出すことができます。
・ヘッダを取り外してMACに渡す処理が、ちょうど drafly さんが見られている
Phy802_11a::signalEnd() にあると思うので参考にしてください。
※MESSAGE_RemoveHeader() によるPLCPヘッダの取り外しの部分
・MACヘッダの見方は、MACのプロトコルが何かに依存しますが、
drafly さんの例だと DOT11 だと思うので、mac_dot11.cpp の
MacDot11ReceivePacketFromPhy() あたりを参考にされるとよいと思います。
MACレベルの Broadcast かどうかは、MACヘッダの destAddr から判定できます。

なお、上記の例はあくまでもMACレベルの情報を取り出すケースです。
MAC の Broadcast を単純に排除できたとしても、MACの制御フレームがまだ含まれると思います。
さらに drafly さんが計測したい RSSI が、CBR の終端ノード宛てのデータパケットだけなどの条件にしようとすると、
MAC より上のレイヤの例えばルーティングのパケットや、
IPレベルで自ノード宛てでない転送パケットも排除しなければならず、
単純にPHYで上位レイヤの中身を除き見ることは大変です。
フラット表示 前のトピック | 次のトピック
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT