bayashidayo @Wiki wireless-seting

※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

多分間違ってる


Phy/WirelessPhy set bandwidth_ 54Mb # 54 Mbps bandwidth(物理層帯域幅)
Mac/802_11 set dataRate_ 54Mb     # 54 Mbps for data(MAC層ユニキャスト)
Mac/802_11 set basicRate_ 54Mb    # 54 Mbps for broadcasts(MAC層ブロードキャスト時)

802.11gの設定(メーリングリストから抜粋)

あってる保証無し

#define DSSS_CWMin               15
#define DSSS_CWMax               1023
#define DSSS_SlotTime            0.000009  // 9us
#define DSSS_CCATime             0.000004  // 4us
#define DSSS_RxTxTurnaroundTime  0.000005  // 5us
#define DSSS_SIFSTime            0.000010  // 10us
#define DSSS_PreambleLength      96        // 96 bits or 120 bits
#define DSSS_PLCPHeaderLength    24        // 4 us
#define DSSS_PLCPDataRate        6.0e6     // 6Mbps
#define DSSS_MaxPropagationDelay 0.0000005 // 0.5us

これをどうやってスクリプトに組み込むか?
802.11のMAC層を定義しているファイルの中身(/mac/mac-802_11.h)

#define DSSS_CWMin               31
#define DSSS_CWMax               1023
#define DSSS_SlotTime            0.000020 // 20us
#define DSSS_CCATime             0.000015 // 15us
#define DSSS_RxTxTurnaroundTime  0.000005 // 5us
#define DSSS_SIFSTime            0.000010 // 10us
#define DSSS_PreambleLength      144      // 144 bits
#define DSSS_PLCPHeaderLength    48       // 48 bits
#define DSSS_PLCPDataRate        1.0e6    // 1Mbps
#define DSSS_MaxPropagationDelay 0.000002 // 2us

を書きかえるのかも・・・?

チャネルの分割(3つのチャネルに分割)


オプションの設定で
set val(chan)         Channel/WirelessChannel
※このまま”node-config”で”-channel $val(chan)”とやると警告がでる
 結果には影響ないけど警告の対策も含めて以下のように宣言を変える

set chan_1 [new $val(chan)]
set chan_2 [new $val(chan)]
set chan_3 [new $val(chan)]
↑で3つのチャネルを宣言(chan_1~3)

それぞれのチャネルを割り当てたいノードごとに
node-config -channel chan_1
$ns_ node ~
node-config -channel chan_2
$ns_ node ~
node-config -channel chan_3
$ns_ node ~
のようにやるとエラーも出ないし、それぞれのノードに別々のチャネルを割り当てられる