230 likes | 318 Views
代理端末を用いる アドホックネットワークプロトコル. 研究報告 2009 ・ 09 ・ 12 7093-0058 横田翔子. 1. 研究背景 (1/2). アドホックネットワークへの指向性アンテナの利用 通信距離の拡大 空間利用効率の向上 指向性 MAC プロトコル DMAC(Directional MAC) [Choudhury, MobiCom02] SWAMP [ 長島 , 高田 , 渡辺 , 信学論 , 2004] 指向性 MAC プロトコルの問題 指向性隠れ端末問題 Deafness 問題. 2. 研究背景 (2/2).
E N D
代理端末を用いるアドホックネットワークプロトコル代理端末を用いるアドホックネットワークプロトコル 研究報告 2009・09・12 7093-0058 横田翔子
1. 研究背景(1/2) • アドホックネットワークへの指向性アンテナの利用 • 通信距離の拡大 • 空間利用効率の向上 • 指向性MACプロトコル • DMAC(Directional MAC) [Choudhury, MobiCom02] • SWAMP[長島, 高田, 渡辺, 信学論, 2004] • 指向性MACプロトコルの問題 • 指向性隠れ端末問題 • Deafness問題
2. 研究背景(2/2) • 指向性MACプロトコル(DMAC)の問題点 • 指向性隠れ端末問題 • ZのビームがXとYの通信を破壊 • 解決策 • BRTS(BackwardRTS),RCTS(RelayedCTS) • [Sekido, Takata, Bandai, Watanabe, GLOBECOM05] • deafness問題 • Zが再送を繰り返す • 解決策 • Circular RTS [Korakis, MobiHoc03] Collision X Y Z X Y Z 赤:送信ビーム 青:受信ビーム 3 3
3.研究目的 • 指向性隠れ端末・deafness問題への対処 • 両方の問題は通信中の端末は他の端末の通信状況がわからないことが原因 通信中の端末の代理端末を立てる あと3分待って! Aさん じゃあ3分後にしよう! Bさん Cさん 両方同時に対処する指向性MACプロトコルを提案 4 4
4. 提案方式(1/4)(指向性隠れ端末問題への対処)4. 提案方式(1/4)(指向性隠れ端末問題への対処) RTS CTS RES BCTS DATA ACK Z X M Y 赤:送信ビーム 青:受信ビーム M Y Z X 代理端末が隠れ端末の送信を待機させることで,隠れ端末問題を回避 • XとYはRTS/CTS交換 • XはRES(REServation)フレームを送信し代理端末としてMを選択 • MはXの方向にBCTSフレームを送信 • BCTS(Backward CTS)を受信したZは、XとYの通信が終わるまで待機 5 5
4. 提案方式(2/4)(Deafness問題への対処) RTS RTS CTS RES DATA RCR ACK Z X M Y X Y M Z 赤:送信ビーム 青:受信ビーム • XとYはRTS/CTS交換 • XはRES(REServation)フレームを送信しMを代理端末として選択 • MはXとY以外の方向に巡回受信 • ZがXに向かって通信を開始 • MはXの代わりにZからのRTSを受信 • MはZにRCR(ReCoveRy)フレームを送信し、XとYの通信終了時間までZに待機 代理端末がdeaf端末の送信を検出し,送信を抑えることで,deafness問題を回避 6 6
4. 提案方式(3/4)(両方同時に対処) D X M Y H RTS CTS RES BCTS DATA RTS RCR ACK • XとYはRTS/CTS交換 • XはRESフレームを送信しMを代理端末として選択 • MはHにBCTSフレームを送信 • MはXとY以外の方向に巡回受信 • ZがXに向かって通信を開始 • MはXの代わりにZからのRTSを受信 • MはZにRCRフレームを送信し、XとYの通信終了時間までZに待機 7
4. 提案方式(4/4)(代理端末の選択方法) • 代理端末の選択方法 • RTS・CTS受信範囲内にあるノードから選択 • RES受信範囲内にある依頼元端末に一番近い距離にあるノードから選択 • 代理端末候補の位置情報は事前にHelloパケットで交換 • 周囲に代理端末になるノードがいなかった場合 • そのままDMACと同じ処理を行う 8
Dへパケット送信 S D M Sの代理端末 X Sへパケット送信 6.評価方法について • 理論解析 • 固定トポロジにおける各ノードの状態 • ノードSにおける状態遷移 • ノードDにおける状態遷移 • ノードXにおける状態遷移 • ノードMにおける状態遷移 • 各ノードの状態の組み合わせ数 • 4つのノードの状態の場合分け • 各通信状態からdeaf端末の通信成功確率を求める 提案方式が達成可能な性能を評価
データ発生 DATA受信 ACK送信 S D M X DATA送信 7.理論解析(1/5) • ノードSにおける状態遷移 次の通信へ idle RTS受信 DATA_RECWAIT タイムアウト Back_off RTS・RES送信 DATA_REC CTS_RECWAIT RCR_RECWAIT ACK_SENT CTS送信 DATA_SENT 次の通信へ ノードSの状態数は8 ACK_RECWAIT
idle DATA受信 RTS受信 次の通信 ACK送信 DATA_RECWAIT DATA_REC ACK_SENT 7.理論解析(2/5) • ノードDにおける状態遷移 S D M X ノードDの状態数は4
データ発生 idle 次の通信 Back_off タイムアウト RTS・RES送信 CTS_RECWAIT RCR_RECWAIT CTS送信 DATA_SENT RTS再送信 RCR受信 DATA送信 タイムアウト ACK_RECWAIT DATA_SENTWAIT 7.理論解析(3/5) • ノードXにおける状態遷移 S D M X ノードXの状態数は6
idle RES受信 指向性巡回受信 RTS_WAIT 次の通信 RTS受信 RCR受信 RCR_SENT 7.理論解析(4/5) • ノードMの状態遷移 S D M X ノードMの状態数は3
7.理論解析(5/5) • 理論解析 • 固定トポロジにおける各ノードの状態 • ノードSにおける状態遷移 • ノードDにおける状態遷移 • ノードXにおける状態遷移 • ノードMにおける状態遷移 • 各ノードの状態の組み合わせ数 • 4つのノードの状態の場合分け • 各通信状態からdeaf端末の通信成功確率を求める 8つ Dへパケット送信 4つ S D 6つ M 3つ Sの代理端末 X Sへパケット送信 総状態数=8×4×6×3=567通り
S=idle, D=idle, X=idle, M=idle S:データ発生 X:データ発生 S、Xの通信終了 S=Back_off, D=idle, X=Backoff, M=idle S=idle, D=idle, X=ACK_REC, M=idle S:RTS・RES送信 X:RTS送信 D:RTS受信 N:RES受信 S:ACK送信 X:ACK受信 S=CTS_WAIT, D=DATA_WAIT, X=CTS_WAIT, M=RTS_WAIT S=ACK_SENT, D=idle, X=ACK_WAIT, M=idle S:CTS受信 X:タイムアウト D:CTS送信 X:ACK受信待ち S=DATA_REC, D=idle, X=ACK_WAIT, M=idle S=DATA_SENT, D=DATA_WAIT, X=Back_off, M=RTS_WAIT S:データ受信 X:データ送信 S:データ送信 X:RTS送信 D:データ受信 S=DATA_WAIT, D=idle, X=DATA_SENT, M=idle S=ACK_WAIT, D=DATA_REC, X=CTS_WAIT, M=RTS_WAIT X:CTS受信 X:タイムアウト S=DATA_WAIT, D=idle, X=CTS_WAIT, M=idle S=ACK_WAIT, D=ACK_SENT, X=Back_off, M=RTS_WAIT S:RTS受信 CTS送信 X:RTS送信 S、Dの通信終了 X:タイムアウト S:ACK受信 X:RTS送信 D:ACK送信 S=ACK_REC, D=idle, X=CTS_WAIT, M=RTS_WAIT S=idle, D=idle, X=Backoff, M=idle
8. まとめと今後の課題 • まとめ • 指向性隠れ端末問題とdeafness問題を同時に解決する方法を提案 • 代理端末の導入 • deafness問題発生時における固定トポロジでの理論解析 • 4つのノードの状態の場合分け • 各通信状態からdeaf端末の通信成功確率を求める • 今後の課題 • 各通信状態からdeaf端末の通信成功確率を求める • 提案方式が達成可能な性能を評価 16 16
5. 性能評価(1/2) • シミュレーションパラメータ 18 18
5. 性能評価(2/2) • シミュレーショントポロジ 3 2 1 500m 500m 45° 4 • 2-3間のレート大 • ⇒deafness問題が発生 • ⇒RTS再送回数の増加 提案方式はRTS再送回数軽減 • Deafness問題発生時シミュレーション 19
RTS受信 データ発生 DATA受信 ACK送信 タイムアウト DATA送信 7.理論解析 • 一つのノードにおける状態遷移図 次の通信へ 次の通信へ default DATA_RECWAIT RES受信 Back_off DATA_REC タイムアウト RTS_WAIT RTS再送信 CTS_RECWAIT RCR_RECWAIT ACK_SENT RCR送信 RCR受信 RCR_SENT DATA_SENT DATA_SENTWAIT ACK_RECWAIT
RTS受信 通信していない 次の通信へ データ発生 CTS送信 DATA受信 ACK送信 CTS受信 タイムアウト DATA送信 ACK受信 RES受信 default RES_REC RTS_REC Back_off BCTS_SENT CTS_SENT タイムアウト BCTS送信 RTS_SENT RTS_WAIT DATA_RECWAIT RTS送信 RES_SENT RTS再送信 DATA_REC RTS_REC RES送信 RCR送信 CTS_RECWAIT RCR_RECWAIT ACK_SENT RCR_SENT RCR受信 CTS_REC RCR_REC DATA_SENT DATA_SENTWAIT ACK_RECWAIT ACK_REC
S:XへCTS送信 X:データ発生 S:データ発生 X:SからのCTS受信 X:SへRTS送信 S:DへRTS送信 X:SへDATA送信 X:代理端末にRES送信 S:代理端末にRES送信 S:XからのDATA受信 D:SからのRTS受信 S:XへACK送信 D:SへCTS送信 X:タイムアウト S:DへDATA送信 X:SからのACK受信 D:SからのDATA受信 X:SへRTS送信 D:SへACK送信 X:代理端末へRES送信 X:代理端末へRES送信 S:XからのRTS受信 S:DからのACK受信 X:SへRTS送信