平成 23 年度 修士論文
海中センサネットワークにおける Continuous と Selective との Hybrid ARQ を用いた MAC
プロトコル評価
早稲田大学大学院 基幹理工学研究科 情報理工学専攻 5110B135-8
吉永 真人
指導 甲藤 二郎 教授 2012 年 1 月 31 日
指導教授印 受付印
1
目次
1. 序論 ... 3
1.1. 研究背景 ... 3
1.2. 研究目的 ... 3
1.3. 本論文の構成 ... 3
2. 背景技術 ... 5
2.1. アドホックネットワーク ... 5
2.2. 無線センサネットワーク ... 6
2.3. Underwater Sensor Network ... 7
2.3.1. 水中における電波と音波... 8
2.3.2. 音波減衰 ... 9
2.3.3. 音波速度 ... 10
2.3.4. 指向性 ... 11
2.3.5. 雑音 ... 12
2.3.6. 海中における変復調方式... 14
2.4. IEEE802.11[14] ... 14
2.4.1. CSMA/CA ... 15
2.4.2. 隠れ端末問題 ... 16
2.4.3. RTS/CTS ... 16
2.5. UWASNsにおけるMACプロトコル ... 18
2.5.1. Seaweb[17] ... 18
2.5.2. IEEE 801.11をベースとしたCSMA/CAを用いたMACプロトコル ... 19
3. 自動再送要求 ... 22
3.1. 自動再送要求 (ARQ: Automatic Repeat request) ... 22
3.2. Stop and Wait ARQ ... 22
3.3. Go-back-N ARQ ... 23
3.4. Selective Repeat ARQ ... 24
3.5. Selective ARQ ... 24
3.6. UWASNsにおけるContinuous ARQ ... 27
4. 提案手法 ... 29
4.1. 提案手法 ... 29
4.2. SelectiveとContinuousとのHybrid ARQ ... 29
2
4.3. 各種ARQのNAV設定に関して ... 30
4.3.1. Selective ARQにおけるNAV ... 31
4.3.2. JSW ARQにおけるNAV ... 31
4.3.3. Selective+JSWのHybrid ARQにおけるNAV ... 32
4.3.4. NAV設定に関してのまとめ ... 32
4.4. 新たなNAV設定方法 ... 33
5. シミュレーション実験 ... 35
5.1. ns-2 [2,30] ... 35
5.2. 実験概要 ... 35
5.3. 実験1 シングルホップ ... 36
5.4. 実験2 マルチホップ ... 43
5.5. 実験3 クロストポロジー ... 45
6. 結論 ... 51
6.1. 総括 ... 51
6.2. 今後の課題 ... 51
参考文献 ... 53
謝辞 ... 55
発表文献リスト ... 56
3
1. 序論
1.1. 研究背景
近年、Underwater Sensor Networksは海中の観測データを収集するネットワークとし て注目を浴びており、汚染調査や、沖への探査、災害予防など海中環境の情報収集ネット ワークとして期待されている。海中の環境データを収集することにより、環境変化の予測 研 究 や 水 害 の 監 視 も 行 う こ と が 可 能 に な り 、 ま た デ ー タ の 収 集 を 行 う 機 器 は AUV(Anonymous Underwater Vehicles)と呼ばれる自律駆動をするロボットで行うことで、
短時間で広範囲のデータを収集することができるようになるため注目されている。AUV間 もしくは海中に浮遊させたブイを加え、ネットワークを構成し、センシングしたデータを 海上の船上局や陸地の観測センターまで伝送することを目的としている。つまり、端末間 での効率のよい通信は不可欠である。高効率な通信ネットワークとして音波通信を利用し たUnderwater Acoustic Sensor Networks(UWASNs)[1]が挙げられる。しかし、海中に おける音波通信は利用帯域の制限、音波通信における伝搬時間の増加、様々な雑音による 減衰など、厳しい環境において行われる。そのため、既存の陸地無線とは異なるUWASNs に適したデータリンク層やネットワーク層プロトコルの研究が多くなされている。
1.2. 研究目的
本研究では、Underwater Sensor Networkにおけるデータ通信の信頼性を向上させるた めの自動再送制御(ARQ)およびMACプロトコルに着目した。ARQに関しては従来手法で ある、SelectiveとContinuous ARQを組み合わせた手法を提案し、MACプロトコルに関 してはIEEE802.11をベースとしたCSMA/CAをUnderwater Sensor Networkに適した 形での運用を検討する。本研究ではネットワークシミュレータの ns-2[2]に Underwater Sensor Network[3]モジュールを組み込み、従来手法との評価を行い、スループットの向上 を研究目的とする。
1.3. 本論文の構成
第1章である本章では、研究背景、研究目的について述べる。
第2章では、研究背景としてアドホックネットワーク、センサネットワークやUnderwater
Sensor Networkに関して述べ、またそれらに用いられているMAC層のプロトコルについ
て述べる。
4
第3章では、自動再送制御(ARQ)について述べる。
第4章では、提案手法について述べる。
第5章では、ns-2を用いたシミュレーション実験について述べる。
第6章では、総括と今後の課題について述べる。
5
2. 背景技術
2.1. アドホックネットワーク
アドホックネットワーク[4]とは、無線LANのようなアクセスポイント、ネットワークイ ンフラを必要としない、無線インターフェースを搭載した端末(PC、PDA、携帯電話など) のみで構成されたネットワークのことである。また「無線アドホックネットワーク」、「自 立分散型無線ネットワーク」とも言われている。
アドホックネットワークでは、現在広く PC 等の無線接続に用いられている IEEE
802.11x、Bluetooth などの技術を用いながら多数の端末をアクセスポイントの介在をしな
いで相互に接続する形態(マルチホップ通信)を取っている。このため、アドホックネットワ ークでは基地局やアクセスポイントなどのネットワークインフラが不要となり、このよう なインフラを持たない場所で安価にネットワークを構築することが可能であり、ある限ら れた域内での簡易なネットワークの構築の手段として有効である。アドホックネットワー クの応用例として、災害現場でのネットワーク、会議場での参加者だけによるネットワー クまたは軍事利用での兵士のみによるネットワークなど様々な場所での利用が考えられる。
しかし、現在のところアドホックネットワークの構築には、技術的課題がいくつか残さ れている。アドホックネットワーク内では常に端末が移動することが考えられ、端末相互 間のリンクが確実なものではない。そのような環境で、効率よく経路を動的に検出できる かという課題が生じる。またその他にも、端末が安定的な電力を供給されている機器では なく、バッテリー駆動による動作する機器もあるため、通信に用いる電波の出力や、電力 消費などの課題もある。
図 2.1 アドホックネットワークの構成例
6
1970年代前半にDARPAパケット無線ネットワークが登場して以来、アドホックネット ワーク向けの各プロトコルが数多く研究あるいは開発されてきた。アドホックルーティン グプロトコルにおいては、各移動ノードがそれぞれ独立に移動、通信を行うためネットワ ークトポロジーが複雑に変化することを想定しなければならない。また、ノード同士の電 波干渉や帯域や電力の有効活用、ルーティングループの回避など有線ネットワークでは問 題にならなかった点まで考慮する必要がある。
アドホックルーティングプロトコルでは一般に、データ通信する前にあらかじめに経路 を作成しておくProactive型、送信元ノードから通信要求があった時にのみ経路を作成する Reactive型、Proactive型とReactive型の両方の性能を兼ね合わせたHybrid 型と3つの パターンに分類することができる。代表例として、Proactive 型は DSDV[参考文献]、
Reactive型はAODV[参考文献]が挙げられる。
2.2. 無線センサネットワーク
無線センサネットワーク[5]は、複数のセンサノードから構成される無線ネットワークで あり、センシング技術と無線ネットワーク技術を兼ね備え、ユビキタスシステムの構築技 術として注目されている。センシング技術は熱や温度などの一般感知センサから、化学薬 品や物質に反応・検知するセンサなど様々である。無線ネットワーク技術は以下の図2.2に 示したように、通信距離によって分けることができる。センサネットワークは通信距離と の関係では短距離無線や無線PANに相当する。無線センサネットワークでは、安定した電 力供給を持つ機器は尐なく、ほとんどバッテリーでの駆動となるために、省電力という点 でもネットワークを構成するにあたって重要な要素である。具体的なセンサネットワーク として2003年にIEEEで802.15.4として物理層とMAC層が標準化されたZigbeeがある。
森林や砂漠、都市などにセンサを配置して環境の様子や変化を知る広域のセンサネットワ ークや、工場やビル、家の中にセンサを配置しておく狭域のセンサネットワークと多様に わたる。実際にセンサネットワークが使われるアプリケーションとして、森林や砂漠、都 市などにセンサを配置して大気汚染の観測や変化を測定するもの、温度や湿度、光などの センシングデータを利用した農作物の栽培、位置情報や心拍センサなどにより遠隔介護な どと多様にわたる。
7
図2.2 通信距離から見た無線ネットワーク出典:[6]
2.3. Underwater Sensor Network
上記した無線センサネットワークの応用として、水中や海中の水温、潮流などの環境デ ー タ を セ ン シ ン グ し 収 集 す る Underwater Sensor Network が 提 唱 さ れ て い る 。
Underwater Sensor Networksは汚染調査や、沖への探査、災害予防など海中環境の情報
収集ネットワークとして期待されている。情報収集端末として用いるのは海中環境をモニ タリングすることができるセンサを搭載した Unmanned or Autonomous Underwater
Vehicles(UUVs, AUVs)である。これらUUV,AUV間もしくは海中に浮遊させたブイを加え、
ネットワークを構成し、センシングしたデータを海上の船上局や陸地の観測センターまで 伝送することを目的としている。つまり、端末間での効率のよい通信は不可欠である。図 2.3にUnderwater Sensor Networkの構成例を示す。
高効率な海中通信ネットワークとして音波通信を利用したUnderwater Acoustic Sensor
Networks(UWASNs)[1]が挙げられる。UWASNs では、センサが海中環境の特徴に合わせ
て自律的にネットワークを構成しなければならない。海中環境において音波通信は標準的 な通信方法である。電波は海中において塩分の関係により 30-300[Hz]というかなり低い周 波数でのみ伝達されることから、巨大なアンテナや多大な送信電波強度を必要とし、送信 レンジが小さく効率的でない。また、光波は減衰が尐ないものの、拡散の影響が大きくな ってしまう。よって、海中通信には音波が用いられる。
近年、陸地のアドホックまたはセンサネットワークは多くの研究がなされ、それぞれの ネットワークに適したプロトコルが存在するが、それらをそのままUWASNsに適用するこ とは非現実的である。なぜなら、海中音波通信には陸地の無線通信とは異なる、海中環境 ならではの様々な制約が存在するからである。例えば、狭帯域、高遅延、高エラーレート、
マルチパスフェージングによる影響、センサ端末のバッテリー問題などである。これら多 くの制約から受ける影響を考慮した、陸地のセンサネットワークとは異なる Underwater
8
仕様の新たなデータリンク層、ネットワーク層のプロトコルの研究がなされている。次項 において海中音波通信の特徴に関して述べる。
図2.3 Underwater Sensor Networkの例 出展:[1]
2.3.1. 水中における電波と音波
水中での通信には標準的に音波が用いられる。なぜ、陸上の無線通信に使われている電 波が使用されないのか。それは、水中における吸収減衰が関係している。水中において、
音波は電波に比べ非常に減衰が尐なく、より遠くまで通信が可能となる。図2.4に海中での 音波と電波の吸収減衰を示した。海中音波通信においては、帯域としてよく 10~100[kHz]
が使用される。例えば、電波、音波ともに10[kHz]を使用し、通信距離を20[m]とした場合、
音波の吸収減衰はほとんど無視できるのに対し、電波はおよそ1/1000に減衰でしてしまう。
よって、水中における電波通信は巨大な送信エネルギーや受信アンテナを必要とし、機器 や資源の制限がかかってしまう。以上の理由より、水中通信には音波が広く使用されてい る。
9
図2.4 海中における電波と音波の吸収減衰 出典:[7]
しかし、水中通信において音波を使用するにあたり、上記のメリットだけではない。電 波との違いを簡単に表2.1に示した。最も差異が生じるのが、伝搬速度である。電波は電磁 界が振動した波動で真空中でも伝搬し、その伝搬速度は 30×107[m/s]であるのに対し、音 波は伝搬には媒質となる物質が必要で、それが水である場合、その伝搬速度は 1500[m/s]
と電波に比べ非常に遅い。また、詳しくは後述するが雑音やゆらぎの影響も受けやすく、
高誤り率での通信となる。さらに、使用できる周波数帯が限られており狭帯域通信となる。
このように、水中における音波通信は非常に厳しい環境下での通信であり、反射、屈折、
吸収、散乱など複雑な海水環境の影響により、陸地の電波無線にみられるような通信の高 速、大容量化に向けてはまだまだ課題が多い。
表2.1 水中における電波と音波の特徴の違い
電波通信 音波通信
伝搬速度(遅延) 30×10
7[m/s] 1500[m/s]
帯域 ~数百[MHz] ~数十[KHz]
発散損失
吸収減衰 大 小
ゆらぎ、雑音 小 大
同等
2.3.2. 音波減衰
音波は伝搬によって、吸収と拡散の 2 点で減衰する。まず、吸収減衰に関して、音波は
10
水の圧縮と膨張によって伝わるため、水分子にの粘性摩擦により熱が発生する。これを吸 収損失(absorption loss)という。この吸収損失の計算は、ソープによる経験式[8]が用い られることが多い。吸収損失は
r
[dB]で表され、r は距離で単位は[m]である。減衰定数
[dB/m](2.1)に示す式で計算される。2 4 2 2
10
31
109 . 0 4100
7 . 10 43
01 .
3
f f f
(2.1)ここで、fは周波数で単位は[kHz]である。しかし、この式では、水温4℃、塩分濃度35‰、
深度1000mで有効となる式である。
次に拡散減衰に関して。一点から創出された音波が球面状に拡がりながら伝搬していく場 合、拡散損失[dB]は 20logrで表される。つまり通信距離r[m]に対し、1/rの大きさに減 衰してしまう。また、浅い海を想定した場合、音波は球面状ではなく円筒状に拡散する。
その場合、拡散損失は10 logrで表される。
吸収損失および拡散損失の和が伝搬損失TL[dB]、式(2.2)となる。
TL 20 log r r
(2.2)2.3.3. 音波速度
水中での音波伝搬速度は1500[m/s]と非常に遅いが、その速度は水温、圧力、塩分濃度に 関係している。例えば、水深が100[m]深くなるごとに約1.7[m/s]増加し、塩分濃度が1[‰]
増加するごとに約1.3[m/s]増加し、さらに深さにより特性が異なるため、音速の産出には複 雑な計算をすることになる。これに対し、メドウィンが実際の海水温や塩分濃度、深度と 音速の関係を実験により求めた[9]式を(2.3)に示す。ここで、C(D,S,T)は音速であり単位は
[m/s]、Dは深さで単位は[m]、Sは塩分濃度で単位は[‰]、Tは水温で単位は[℃]である。こ
の式は水温0~35[℃]、塩分濃度0~45[‰]、深さ0~1000[m]の範囲に対して有効とされて いる。
D S
T
T T
T S D C
2 2
2 2
10 58 . 1 ) 35 )(
10 34 . 1 (
10 5 . 5 6 . 4 2 . 1449 )
, , (
(2.3) また、さらにマッケンシーが実験により求めた式[10]を(2.4)に示す。ここで、C(D,S,T)は 式(2.3)と同様に音速であり単位は[m/s]、Dは深さで単位は[m]、Sは塩分濃度で単位は[‰]、
Tは水温で単位は[℃]である。この式は、水温が2~30[℃]、塩分濃度が25~45[‰]、深度
が0~8000[m]の範囲において有効とされている。
3 13 2
2 7 2
3 4 2
2
10 139 . 7 ) 35 ( 10 025 . 1 10
675 . 1 10
630 . 1
) 35 ( 340 . 1 10
374 . 2 10
304 . 5 591 . 4 96 . 1448 )
, , (
TD S
T D
D
S T
T T
T S D C
(2.4)
さらに、音波速度が深さ(その地点における水温)によって変化するため、音波が屈折し直
11
進をしない。それが、音が到達しないエリア、通称シャトーゾーンを生む。図2.5にシャド ーゾーンが生じるような例を示す。長距離通信においてはこのエリアが生じることに注意 しなければならない。
図2.5 海中での音波屈折の例 出典:[11]
2.3.4. 指向性
海中音波通信では海面、海底で反射が起きるため、多重反射の影響が出やすくなってし まう。通常、通信に用いられる送受波器は無指向性のものである。しかし、図2.6(a)に示す ように長距離通信において指向性のあまりない送波器を用いてしまうと、反射が起きやす く通信環境に大きな影響を及ぼす。そこで、図2.6(b)のように指向性を高め一方向に波を集 中させることで不要な反射を減らし、通信環境を良好に保つ工夫なども必要である。なお、
送受波器の指向性は、振動子の振動面の面積と波長の関係で決まり、波長に対して振動面 の面積が大きく、波長が短いほど2.6(b)のような鋭い指向性が得られる。
12 送波器
受波器
(a)
送波器 受波器
(b)
図2.6 海中通信における指向性
2.3.5. 雑音
海中環境では、音波での通信であるが故に、音を誘発する様々な現象が雑音となりうる。
13
自然界における雑音として、波浪によって発生する波浪雑音、熱による熱雑音、雤やあら れ、雹などによる降水雑音、甲殻類や哺乳類など海中に生息する生物が出す生物雑音など がある。また、人工的に発生させられる雑音として、船舶のエンジン音による雑音や、沿 岸に設置された機器の振動による雑音、プロペラの回転で発生する気泡によるキャビテー ション雑音などがあげられる。図2.7に海中での雑音の種類とその強さを示す。
図2.7 海中での雑音 出典:[12]
正確な通信が可能であるか否かは、受信時における雑音の大きさに対して、受信信号が どの程度大きいかによって決まる。雑音が大きければ、当然受信データの誤りが増加する。
海中通信における雑音の影響は非常にシビアな問題であり、船舶のエンジン音などの人工 的な雑音は可能であれば最尐減に抑えるべきである。これらの雑音が高エラーレート環境 を生む。
また、雑音とは尐し異なるが、海中通信ではドップラ効果の影響も考慮しなければなら ない。船舶やAUVの移動により僅かに周波数が変動し(ドップラシフト)、ドップラ効果の 影響を受けてしまう。受信側で周波数変動を補償できれば問題ないのだが、不規則なドッ プラシフトは補償が難しく、通信が困難な環境を生んでしまう。
14
2.3.6. 海中における変復調方式
海中通信においても陸地の無線電波と同様で、データに対する変復調が必要となる。変 復調方式にはアナログ変復調方式とデジタル変復調方式がある。アナログ変復調方式とし てSSB-AM(Single Side Band-Amplitude Modulation)が広く用いられている。デジタル変 復調方式としては、陸地の無線と同様でFSK(Frequency Shift Keying), PSK(Phase Shift Keying), QAM(Quadrature Amplitude Modulation)が用いられている。PSKとQAMは多 値化することで、狭帯域環境下における伝送速度の増加が図られている。また、この 2 手 法は復調において適応フィルタが用いられる。これは水中通信路が事変で伝搬特性を正確 に特定できないためである。海中においても、これら変復調方式を利用した様々な通信が うまれている。アナログ無線通信を利用した水中通話機やダイバー通信などである。さら に、デジタル通信を利用したデータ伝送も盛んに行われている[13]。高速伝送が必要なケー
スではPSK,QAMが、消費電力を重視するケースではFSKが用いられる。さらに、画像デ
ータの送信を準リアルタイムで送信する実験も行われている。画像はデータサイズが大き いため、伝送速度を高速化したり、データを圧縮することが必要となる。画像データは10-4 程度の誤り率であれば良いとされている。海洋科学技術センターのしんかい6500が、帯域 幅8[kHz],QPSK,16[Kbps]で256×240ピクセルのカラー静止画像を8[s]に1枚の割合で伝 送することに成功したとされている[7]。
2.4. IEEE802.11[14]
IEEE 802.11無線LAN (以下、802.11無線LAN)は無線LANに関する規格であり、物理 層における変調方式やデータリンク層のうちの MAC 層の通信制御などについて定められ
ている。802.11無線LANでは、同一の無線チャネルを複数端末で共有するためのアクセス
制御が実装されている。
802.11 無線 LAN では、アクセス制御機能として CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance)が採用されている。802.11無線LANの基本アクセス手順 としてDCF (Distributed Coordination Function)では、各局がチャネルの使用状況を検査 して自律的にパケットの送信タイミングを決定するが、その時のアクセス制御プロトコル
にCSMA/CAを使用している。
このため、たとえ周辺に同一チャネルを利用する無線ノードが存在したとしても、
CSMA/CA により、無線ノード間で同一チャネルを共有して通信が可能である。ただし、
CSMA/CAでは、偶然同時にパケットを送信してしまう可能性、すなわちパケット同士が無
線上で衝突してしまう可能性がある。衝突によって、パケットが正常に受信されなかった 場合、パケットは再送されるが、衝突の発生する確率は無線局数と通信トラフィックの増 加につれて大きくなり、スループットの低下を招いてしまう。
15 2.4.1. CSMA/CA
CSMAとは、Carrier Sense Multiple Accessの略で、キャリア(転送波)感知多重アクセ スと訳されているアクセス方式の1つで、無線LANでは広く適用されているアクセス方式 である。このCSMA方式の場合、通信を開始しようとする各無線端末は、開始する前に必 ず周りの無線端末が電波を出していないかどうかを、確認してから通信を開始する方式で ある。
特にCSMA/CAという衝突回避機能を持つCSMAの場合は、衝突を回避するために、周
囲の無線端末が電波を出していれば、ある一定期間 (IFS : Inter Frame Space)だけ待って、
再び周囲が電波を出していなければあるランダムな時間後に自分が電波を送信する方式で す。これは、現在普及している無線LANには、標準として広く適用されている方式です。
CSMA/CAの特徴は、全ての無線端末が対等の関係にあり、しかも分散制御している点に
ある。また、CSMA/CA方式は、各端末が使用している時間に関係して通信が可能か、どう かが決定されるので、広義のTDMA方式に該当する。
次に、CSMA/CAの基本的なアクセス手順について説明する。図2.8において、端末B、
Cは、端末Aが送信中(①)にはキャリアセンスを行い、無線チャネルをビジーと判断するた め、端末A が送信を終了して無線チャネルが未使用になるまで待機する。端末B、Cは、
未使用状態への移動と同時に IFS 時間待ち、更にランダムで決まるバックオフ時間だけキ ャリアセンスを行い、バックオフ時間の短かった端末 B が未使用状態であることを確認し て送信(②)を行っている。同様の手順で、端末Cが送信(③)を行っている。
busy busy
①送信フレーム
IFS
IFS
back off
back off
busy
busy
②送信フレーム
IFS
IFS
back off back off
busy
③送信フレーム
A
B
C
時間
図2.8 CSMA/CAにおける基本的なアクセス手順
16 2.4.2. 隠れ端末問題
無線通信では、無線端末間の距離や電波を通さない障害物などの影響により、互いの無 線信号が到達しない状態(キャリアセンスが機能しない伝搬環境)が起こりえます。これは、
隠れ端末問題 (Hidden Terminal Problem)と呼ばれており、図2.9に例を示してある。図 2.9のようにノードA、B、Cがあった場合、ノードAはノードBのみと、ノードBはノー ドCのみしかキャリアセンス可能な範囲にあらず、ノードAとノードCはお互いにキャリ アセンスできない範囲にあるとする。この状態で、ノードAからノードBへデータを送信 している間に、ノードAの送信をキャリアセンスできないノードCからノードBへデータ を送信してしまうと、パケットの衝突が起きるという問題である。このため、CSMA/CA ではパケット衝突の頻度が増加し、スループット低下の原因となる。
A B C
図2.9 隠れ端末問題
2.4.3. RTS/CTS
そこで802.11規格ではキャリアセンスが有効に機能しない伝搬環境に対応するためにRTS
(Request to Send)、CTS (Clear to Send)と呼ばれる対策機能が定義されている。その動作 手順を図2.10として示す。
端末A は、データ・フレーム送信前にDIFSに加えてバックオフ時間をキャリアセンス して、RTSをデータ・フレームの宛先のAP(アクセスポイント)に送信する(①)。端末Aと 端末Bは互いにキャリアセンスできる環境下にあるため、端末AのRTSを端末Bも受信 することができる(①’)。RTSとCTSのフレームには無線回線を使用する予定期間が記載 されているデュレーション・フィールドがあり、端末BはRTSフレームに記載されている 期間だけ送信を禁止 (NAV : Network Allocation Vector)することにより衝突を防止できる。
一方、データ・フレームの宛先であるAPは、RTS受信後SIFS時間空けて端末A宛に CTSを返す(②)。APが送信したCTSは、端末Cも受信することができるので(②’)、端末
17
CはCTSフレームに記載されている期間だけNAVをセットすることにより衝突を防止で きる。
CTSを受信した端末A は、SIFS時間後にデータ・フレームを送信する(③’)。ここで、
SIFSはDISFより小さいため、短い時間のSIFSを使って優先権を持たせることで、いっ たんRTSが正常に受信されると以後の手順中のフレームは妨害されることなく交換される。
データ・フレーム受信完了後、APはACKフレームを返して通信を終了する(④)。
データ・フレームの送信元端末A、受信先AP以外の周辺無線局(端末B、C)はRTSある いはCTSの受信後、デュレーション・フィールドに記載されている期間は無線回線が使用 されていると見なし、NAVをセットすることにより衝突を防止できる。
また、RTS/CTSを用いることによって、送信端末の信号をキャリアセンスできない環境 の端末が存在しても、基地局が送信するCTSを受信できれば送信端末の存在を知ることが できるため、隠れ端末問題を解決する手段ともなる。
隠れ端末のケースでは、フレームサイズが大きいほど衝突する確率が高くなるため、送 信するデータ・フレーム長が、パラメータRTS Threshold (RTS閾値)の大きさを超える場 合に、RTS/CTSを使用する。
NAV期間(RTS) A
B
C
DIFS
back off
RTS
AP ①
①’
SIFS
CTS
②’
② SIFS
送信データ
③ SIFS
ACK
④
NAV期間(CTS) 図2.10 RTS/CTSを用いたCSMA/CAの通信手順
18
2.5. UWASNs における MAC プロトコル
UWASNs においても当然、データリンク層のプロトコル(MACプロトコル)が必要で
ある、近年多くの研究がなされている。それらのプロトコルは多くの場合、陸地電波無線 仕様のプロトコルがそのまま、もしくは海中通信仕様にパラメータチューニングされ用い られている。本節では、海中音波通信向けに提案、評価されているMACプロトコルに関し て取り上げる。
コンテンションフリーなMACプロトコルとして、TDMA やCDMA、FDMA が挙げら れる。TDMA はその単純さからよく海中無線通信にも適用されている。しかし、欠点とし て、1つ目に高遅延のためにguard timeが長くなること、2つ目にタイムスロットを割り 当てられたノードに送信すべきデータが無い場合そのスロットが空いてしまうこと、3つ目 に同期が困難であることが挙げられている。FDMAは狭帯域のUnderwaterでは効率が悪 く、スループットの低下を招く。CDMAは、同帯域を同時に使用するためnear-far問題が 生じやすい。これは陸地でも海中環境でも変わらない。しかし、高遅延の Underwater で は音波強度の制御が非常に難しいとされている。
コンテンションベースのプロトコルとして、[15]より、陸地電波無線向けに提案された
MACA[16]ベースのMACプロトコルを採用したのが Seaweb[17]である。Seawebに関し
ては次項で取り上げる。また、FAMA[18]ベースのプロトコルとして、slotted FAMA[19]
が挙げられる。Slotted FAMAでは、キャリアセンスを利用したRTS/CTSハンドシェイク が海中環境特有の高伝搬遅延の影響を受け、スループットの低下を招くため、全てのフレ ームに対し送信タイミングをスロット化している。また、RTS/CTS ハンドシェイクに
warningメッセージを加えることで不必要な干渉を低減するDACAP[20]や、ローカルなエ
リアでノード自身が送信タイミングの同期を図る[21]や[22]が挙げられる。
2.5.1. Seaweb[17]
Seawebは様々な海中アプリケーション運用への信頼性を保証するため、音波送信を行う
telesonarモデムのネットワークシステムを構築しており、物理層、データリンク層、ネッ
トワーク層のプロトコルを規定している。実際に海での実装実験にも用いられ、評価がな されている[23]。
物理層では 9~14[kHz]の周波数を利用し、変調方式 MFSK(Multiple Frequency-Shift
Keying)を採用している。データリンク層では、98,99年モデルではFDMAを、2000年モ
デルではCSMA/CAを採用していたがいずれも通信効率が悪く、[17]ではMACAベースの
プロトコルを採用し、RTS/CTS ハンドシェイクを行うことでアクセス制御を行っている。
また、信頼性を高めるため、Selective ARQという再送制御を行う。Selective ARQに関し ては次章で詳細に述べる。さらに、ネットワーク層では NSMA なる方式を採用している。
NSMA(Neighbor-Sense Multiple Access)とは中央制御のようにSeawebサーバーが1Hop 以内の範囲に存在するノード情報のneighborテーブルと目的ノードまでのノード間の接続
19
情報のroutingテーブルを保持し、各ノードは、このSeawebサーバーからのダイアログを
待つ方式である。これにより不必要なパケット衝突を防ぐ。
2.5.2. IEEE 801.11をベースとしたCSMA/CAを用いたMACプロトコル
海中環境においても2.4節で取り上げたIEEE802.11のMACプロトコルCSMA/CAが 海中無線通信仕様にパラメータチューニングがなされ取り上げられている[24,25,26]。本研 究においてのシミュレーションには、このIEEE 802.11をベースとしたCSMA/CAを用い て、実験を行っている。
[24]では、NAVの設定に着目し、NAVを海中環境仕様に変更し、かつ動的にNAVを変
化させる手法を提案している。IEEE 802.11のCSMA/CAにおいて、NAVは以下の式(2.5)
~(2.7)で定められている。
(2.5) (2.6) (2.7)
しかし、これをそのまま海中音波通信に適用しても、特有の高伝搬遅延を考慮してお らず、NAVとして正常に機能しない。さらに、伝搬遅延を考慮する際には、各ノードは 位置をお互いの位置を把握していないため、通信可能な最大距離に合わせる必要がある。
これが無駄なNAV時間を生む可能性がある。そこで、[24]では以下の式(2.8)~(2.10)と定 めている。
(2.8) (2.9) (2.10)
ここで、Tmax_propは通信最大距離を考慮した伝搬遅延時間、Tpropは実際のノード間の 通信距離を考慮した伝搬遅延時間である。タイムスタンプフィールドを用意し、フレー ムの送受信でノード間の通信距離を測っている。つまり、RTS送信時には分からなかっ た、通信距離がCTS送信時には得られており、それをNAVに反映させることを意味し ている。これにより、無駄な待ち時間を低減してスループットの向上を図っている。
[25]では、[24]と同様のNAVルールを設け、加えて、周辺ノードのRTSやCTSを
overhearしてもむやみにNAVには入らず、自身の状態(例えば、RTS送信後、Receiver
側からのCTS待ち状態や、バックオフ状態)に沿って、NAVに入るか否かの選択を行う。
図2.11に各ステートにおける受信フレームに対する処理をまとめた表を[25]より抜粋し て載せる。さらに、オリジナルのIEEE802.11とは異なる2つのルールを設けている。
Time Time
Time
RTS
SIFS CTS DATA ACK
NAV 3
Time Time
CTS
SIFS DATA ACK
NAV 2
Time
DATA
SIFS ACK
NAV
Time Time
Time prop
RTS
SIFS CTS DATA ACK
NAV 4 T
max_ 3
Time Time
prop
CTS
T SIFS DATA ACK
NAV 3 2
Time ptop
DATA
T SIFS ACK
NAV 2
20
1つは、NAVの設定方法として、IEEE802.11のCSMA/CAのように、いくつか受信し たフレームのうち最も長いNAVを採用するのではなく、常にNAVを更新し、ACKを
overhearした場合は直ちにNAVを終了し、IDLE状態へと移行するルールである。もう
1つは、パラメータであるSlotTimeに関するルールである。通常スロットタイムは最大 伝搬遅延+RTS送信時間で定義されるが、最大遅延時間が実際の遅延時間と大きく異なる 場合があるため、スロットタイムを通常より短く定義する必要があると述べられている。
図2.11 [25]におけるステート管理表 出典:[25]
SlotTimeに関しては尐し触れたが、高伝搬遅延を考慮すると、SlotTimeだけでなく、そ
れに基づいて決まるDIFSやバックオフのスロット数などのパラメータにも変更が必要で ある。以下の表2.2に各文献におけるIEEE 802.11のCSMA/CAのパラメータ比較を実験 環境も含めて載せる。
21
表2.2 各文献における海中音波通信向けCSMA/CAに関するパラメータ比較
[24] [25] [26]
送信レンジ[m] 1050 1400 -
SlotTime[s] 0.7 0.933(MAX) 0.18
Cwmin 3 2 4
Cwmax 31 64 32
ノード間距離[m] 600-1000 800-1131 -
SlotTimeは最大伝搬遅延を考慮した値にしなければならず、電波無線のパラメータと比べ
非常に大きい値となっている。その一方、干渉し合うノード数が陸地に比べ尐ない可能性 が高いため、CWは尐ない値となっている。[26]では、送信レンジは記載されていなかった が、100[m3]に100台のノードを配置し実験を行っており、SlotTimeから逆算するとおよ
そ300[m]弱の最大伝搬遅延を保証した値となっている。以上のようなパラメータ設定、お
よび状態管理を参考にし、本稿でもシミュレーション実験を行う。
22
3. 自動再送要求
3.1. 自動再送要求 (ARQ: Automatic Repeat request)
2.3章で述べたように、海中無線通信のチャネルの質はマルチパスやドップラ効果の影響 を受け、非常に务悪なものである。BERは陸地の無線環境と比べ高くなり、さらには変わ りやすい海中の影響により通信環境は時々刻々と変化してしまう。これにより、海中通信 は非効率となり、信頼性は著しく低下する。よって、海中通信におけるARQは必須の制御 と言える。
通常、ARQはデータリンク層またはネットワーク層に組み込まれることが多い。基本的 なアルゴリズムとしては、送信側で誤り検出のための冗長な情報を付加し、受信側はその 情報を利用し誤りを検出する。誤りが検出された場合、送信側はそのデータの再送を行う。
誤り検出にはCRC(Cyclic Redundancy Check)などが用いられる。最もシンプルで著名な ARQの方式として、Stop-and-Wait ARQが挙げられる。また、そのほかにもGo-Back-N
ARQやSelective Repeat ARQ、それらとは尐し異なる海中通信で用いられているARQな
どがある。本章では、これらのARQについて説明を行う。
3.2. Stop and Wait ARQ
Stop-and-Wait ARQ(S&W ARQ)は最もシンプルなARQである。送信側はデータを送信
した後、受信側からの確認応答(ACK: acknowledgment)を待つ。データ送信後にタイム アウト時間を経過する、または、受信側からnegative acknowledgment (NACK)が返って きた場合に当該パケットの再送を行う。ACKが返ってきた場合は新たなデータ送信に移行 する。動作の様子を図3.1に示す。S&W ARQは半二重通信の環境によく用いられるが、1 データに1ACKを待つため効率が良いとは言えず、特にUnderwaterのような高遅延の環 境ではチャネルの使用効率が更に低下してしまう。しかし、他のARQ方式に比べると制御 が簡単で、バッファは送受信側それぞれ1フレーム分でよいなど、低コストの方式である。
23 1
1
2
2
2
3
3 ACK
NACK
図3.1 Stop and Wait ARQ
3.3. Go-back-N ARQ
Go-Back-N ARQはACKを待たずにフレームを連続に送信する方式である。その様子を
図3.2に示す。受信側はどのフレームに誤りがあったかを知らせるためにシーケンス制御が 必要となる。誤りを検出すると、誤りのあったフレームだけを再送するのではなく、その シーケンス番号以降のフレームをすべて再送する。送信に成功したフレームも再送するた めチャネルの使用率はやや低下するが、S&W ARQよりは効率が良い。さらに、バッファ の管理も容易である。しかし、最大フレーム数分のバッファが必要となる。また、送信側 はフレームを送信しながら、ACK/NACKを受信する必要があり、全二重通信環境であるこ とが前提となる。
1 2
3 1
4 2
5 3
6
7 5
8 6
4 7
5 8
6 4
7 5
8 6
9 7
10 8
図3.2 Go-Back-N ARQ
24
3.4. Selective Repeat ARQ
Go-Back-N ARQの改良方式である。誤りが発生したフレームのみを再送する、選択的再
送方式である。その様子を図3.3に示す。再送効率がより上がり、チャネルの使用率は他の 手法よりも高い。しかし、かなり制御が複雑であり、端末の処理負担が大きい。なお、
Go-Back-N ARQおよびSelective Repeat ARQはACKを待たずに連続してフレームを送 信することから総称してContinuous ARQと呼ばれる。
1 2
3 1
4 2
5 3
6
7 5
8 6
4 7
9 8
10 4
11 9
12 10
13 11
14 12
図3.3 Selective Repeat ARQ
3.5. Selective ARQ
Selective ARQとは、ACK/NACK をあるフレームのみに選択的に送信する方式である。
つまり、S&W ARQ方式をベースに、尐しでもチャネルの使用効率を高めるために、送信 側がM個のパケットを連続的に送信した後にACK/NACKを待つという制御を行う手法で ある[27]。名称は似ているが、Selective Repeat ARQとは異なる方式である。図3.4にそ の様子を示す。
25 1
2
3 1
4 2
4
3 5
6 3
7 5
6 7
NACK
ACK
図3.4 Selective ARQ
Selective ARQ は半二重通信下で用いることが可能な手法であり、これを Underwater
に適用し、高遅延、高BERの環境を考慮し、M個のパケットの一つ一つのパケット長を適 切な大きさにすることで、よりチャネルの効率を上げることが示されている[26,28]。なお、
[26,27,28]ではSelective ARQとは銘打っておらず、S&W ARQの派生という表現に留めて いる。Selective ARQと名付けてこの手法を取り入れているのが、UWASNs向けのネット ワークプロトタイプである Seaweb(2.5.1 項)である。Seaweb ではより実装に近い形で、
MAC層のARQにSelective ARQを採用している。図3.5にそのフローを示す。
Sender Receiver
RTS
CTS
SRQ DATA
ACK DATA
RTS/CTSによって、大きな データの受信準備を整える
1024[byte]のデータを6個 (170[byte]ずつ)にフラグメ ンテーションし、CRC冗長 パケットを付加し送信する
4個のサブパケットが成功し、
2個のサブパケットに誤りが存在
2個のサブパケットの再送要求
SRQより誤った2個のサブパ ケットを再送
残り2個のサブパケットの受信成功 全てのサブパケットを受信した ため、ACKを送信
Sender Receiver
RTS
CTS
SRQ DATA
ACK DATA
RTS/CTSによって、大きな データの受信準備を整える
1024[byte]のデータを6個 (170[byte]ずつ)にフラグメ ンテーションし、CRC冗長 パケットを付加し送信する
4個のサブパケットが成功し、
2個のサブパケットに誤りが存在
2個のサブパケットの再送要求
SRQより誤った2個のサブパ ケットを再送
残り2個のサブパケットの受信成功 全てのサブパケットを受信した ため、ACKを送信
図3.5 SeawebにおけるSelective ARQ
26
Seawebでは上位層から来たデータをフラグメンテーションし、連続的に送ったフレーム全
体に対しSRQ(Selective ARQ)と呼ばれるNACKライクなフレームもしくはACKの1
つの応答を待つ。そして、SRQにより再送が要求された場合誤りが生じたフレームのみを 送信する形をとっている。
ここで、Selective ARQを採用したSeawebのMACプロトコルに関するチャネルの使用
効率の理論解析を行う。
上位層から来たデータをM フレームに分割し送信を行う。各パケットの構成はN=Nd+ Nohで表され、Ndはデータ部、Nohはヘッダ部である。M パケット送信成功、つまり受信 側からACKを受信するまでの時間をTtotal、データレートをRとすると、チャネルの使用 効率
は式(3.1)で表せる。(3.1)
TtotalはRTS/CTSハンドシェイクを行う時間Thandと再送を含めたM個のフレームを送信
完了までにかかる時間TMからなる。ThandはRTS/CTSそれぞれのデータ長NRTS,NCTS、片 方向遅延Tdより、Thand=NRTS/R+NCTS/R+2Tdとなる。なお、Td=l/c,l:2点間の距離[m],c:音
速1500[m/s]である。また、m個のパケットを送信し、ACK もしくはSRQ を受信するま
でにかかる時間T(m)は以下の式(3.2)である。
(3.2)
なお、Tp=N/R,Tack./SRQ=Nack/SRQ/Rである。さらに、BERをPeとするとNビット送信時の PER (Packet Error Rate):pは以下で得られる。
(3.3)
M個のフレームを送信し、再送が1回起こる確率は1個以上のパケットに誤りが生じてい た場合なので、1-(1-p)Mとなる。そのとき、再送が必要なパケット数はM・p個である。よ って、Ttotalは式(3.4)となる。
(3,4)
これを(3.1)に代入することによりSeawebのMACプロトコルのチャネル使用効率が求まる。
total d
T R MN /
d SRQ ack
p T T
mT m
T( ) / 2
N
Pe
p1(1 )
n
k
Mp k
hand total
p k
Mp T M
T T T
1
} ) 1 ( 1 ){
( )
( 1
27
3.6. UWASNs における Continuous ARQ
UWASNs は半二重通信である。そのため、全二重通信環境を大前提とする Go-Back-N
ARQやSelective Repeat ARQなどの陸地通信向けに提案されているContinuous ARQを そのまま採用することはできない。一方で、海中音波通信の特徴である高伝搬遅延を逆手 に取り、送受信のタイミングを計りContinuous ARQを実現しているJSW(juggling-like
stop&wait) scheme(以下JSW)[29]なる手法が提案されている。送受信フローを図3.6
に示す。
DATA
ACK
NACK 1
2
3 4
3
図3.6 JSW scheme(UWASNsにおけるContinuous ARQ)
1フレームに1ACK/NACKを返す点ではS&W ARQと変わらない。JSWでは、送信側 がただ単純にACKを待つのではなく、その待ち時間中に次のフレームを送信する。送受信 端末で同期を得て送信タイミングを制御するのではなく、ある決められた時間は連続的に 送信を行い(例えば図3.6では受信側から1番目のフレームに対してのACKが返ってくるま での時間に、送信側は新たに1つのフレーを送信することができる)、それ以降は1Ackが 返ってきたら直ちにデータパケットを送信するというS&W ARQと同様の振る舞いを見せ る。なお、送信側は受信者との距離を把握し、伝搬遅延から、自身がフレームを送信して からそのフレームに対するACKがいつ到着するのかをあらかじめ計算しておかなければな らない。これにより、送信側はなるべくチャネルの空き時間を尐なくなるように、フレー ムを連続して送信することが可能となり、Continuous ARQ を実現している。送信側のフ レームと受信側のACKが同時にフライトするため、チャネルの使用効率は当然高まる。
28
送受信端末が停止しているとき、ti [s]をSenderとReceiverのi番目のパケットを送信後 のアイドル時間、pi [s]をi番目のパケットのフライト時間、δ[s]をデータ送信時間(フレー ムサイズ/データレート)とすると、送信側で1番目のデータに対するACKが来るまでに送 信可能なフレーム数を以下の式(3.5)で表せる。
(3.6)
29
4. 提案手法
4.1. 提案手法
本稿では、UWASNsにおけるチャネルの使用率の向上を目的としたMACプロトコルを 提案し、本章ではその提案手法について説明する。
MAC プロトコルの中でも信頼性向上のための機能である ARQ、および、アクセス制御
であるIEEE802.11 CSMA/CAの海中音波無線仕様に、着目する。UWASNsの最大の特徴
の1つである高伝搬遅延のため、陸地電波無線仕様のプロトコルをそのまま用いた場合、
チャネルの使用率を低下させネットワークのパフォーマンスを著しく低下させてしまうこ とは容易に想像がつく。ARQとしては、前章で挙げたSelective ARQやContinuous ARQ の一形態であるJSW はUWASNs向けに実装、提案されている手法であり、UWASNsに おいても高いスループットが得られることが示されている。しかし、本稿ではよりチャネ ル使用率を高めるため、この2つの手法を組み合わせることを提案する。このSelective + JSWの組み合わせ手法を実装する上で、同時にアクセス制御として利用するIEEE 802.11 をベースとしたCSMA/CAのパラメータチューニングやプロトコルの再設計も必要となる。
さらに、2.5.2項で述べた通り、UWASNs向けのIEEE802.11 CSMA/CAが提案されてい る。それらを参考にすると共に、新たなNAVの決定方法を提案する。
4.2. Selective と Continuous との Hybrid ARQ
ネットワークプロトタイプのSeawebに実装されているSelective ARQは上位層から来 たデータをフラグメンテーションし、細かくしたフレームを連続的に送信し、それに対し
ACK/SRQを待ち、誤りが生じていたフレームのみを再送することでARQとしてのチャネ
ル使用率を高めようという手法であった。しかし、上位層から来たデータが非常に大きい 場合、分割したフレームの全てを連続して送信した後に 1 つの確認応答を待つことは、受 信側のバッファやEnd to Endでの遅延を考えると非現実的であり、ある決まったフレーム 数に対し、1つの確認応答を待つことが現実的である。しかし、その場合、必ず確認応答 の待ち時間が生じ、UWASNsの高遅延環境下ではその影響を無視することはできない。
また、Continuous ARQの一種であるJSWは、UWASNsの高伝搬遅延を逆手に取り、
連続的にデータを送信することで、チャネルの使用率を高めることに成功した画期的な手 法である。しかし、1フレームに対し1ACKを返すという点ではS&W ARQと変わらず、
UWASNs が低帯域であることを考えると、ACK 程のパケット長が短いパケットでさえも
数を重ねれば当然オーバーヘッドとして、チャネルの使用率を低下させる一因となりかね
30
ない。また、文献[29]ではDelayed ACK適用の可能性について触れるにとどまり、実際に 実装し成果を示してはいない。
そこで、本稿では、この2つの手法を組み合わせたSelective+JSWなるHybrid ARQ手 法を提案する。そのフローを図4.1に示す。
1
8 4 9
10 8
4 7
1
5 6
7 5
6 2
2 3
4
3
NACK
ACK
図4.1 Selective + JSWのHybrid ARQ
動作として、いくつのフレームに対して1つの確認応答を待つかは決まっており、図4.1 では 4 と設定、ACK/NACK をただ単純に待つのではなく、あらかじめ計測しておいた
Receiver との伝搬遅延から、送れるだけのフレームを送信する。半二重通信であるため、
確認応答を受信する時間には、SenderはIDLE状態となりACK/NACKを受信しなければ ならない。これにより、理論的には限りなくチャネル使用率を1に近づけることができる。
しかし、ACKの受信時間を空けておくことや、ACK待ち時間の全てを長さの決められたフ レーム送信に充てることはできないので、現実的にはチャネル使用率は 1 にはならない。
他の手法と比較すると、チャネル使用率を高められると考えられる。その効果を含め、い くつのフレームに対し確認応答を待つのかという点や、ACK待ち時間をなるべくデータ送 信に充てるため上位層から来たデータをどのくらいのフレームサイズにフラグメンテーシ ョンするかという点への検討も踏まえ、5章のシミュレーション実験にて評価する。
4.3. 各種 ARQ の NAV 設定に関して
ノードが競合するような環境下では、UWASNsにおいても当然アクセス制御が必要とな る。本稿では、IEEE 802.11 CSMA/CAをアクセス制御として用いる。[24-26]を参考にし、
31
ステート管理や高伝搬遅延を考慮したNAVの設定を行った。しかし、オリジナルのIEEE 802.11のCSMA/CAや[24,25]のNAV 設定がそうであるように、これらの NAVは S&W ARQ を前提として設計されている。本稿では、S&W に加え、Selective、JSW、そして
Hybrid手法の運用を考える必要がある。そのため、NAVもそれらのARQに合わせて設定
されなければならず、その値はUWASNs特有の伝搬遅延を考慮しなければならない。以下
の4.3.1~4.3.3項で、それぞれのNAV設定について述べる。さらに、4.3.4項でNAV設定
に関してまとめを述べる。
4.3.1. Selective ARQにおけるNAV
まず、Selective ARQのNAV設定に関して。RTS/CTSハンドシェイクで送るべきフレ
ーム数をtotal_frameとし、あるデータ送信直前での残りに送信すべきデータのフレーム数
をtemp_frameとする。Selective ARQ特有のパラメータとして、1つのACKを受信する までに連続して送信するフレーム数をNとする。全てのデータ送信に成功すると仮定し、
あるデータ送信直前での、Senderが受信することが必要となるACKの数Sは式(4.1)で表 される。
(4.1)
各フレームの送信時間を{CTS,DATA,ACK}timeとし、伝搬遅延時間をTmax_propは通信最大距 離を考慮した伝搬遅延時間、Tpropは実際のノード間の通信距離を考慮した伝搬遅延時間と する。そのとき、それぞれフレーム送信におけるNAVは以下の式(4.2)~(4.4)で表される。
(4.2) (4.3) (4.4)
4.3.2. JSW ARQにおけるNAV
次に、JSW ARQのNAV設定に関して。基本的な変数はSelective ARQのNAV設定と 同様である。JSWでは1つ目のフレームを送信し、そのフレームに対するACKが返って くるまでの時間、つまり1RTT、中に送れるフレーム数は決まっている。1RTT中に送れる フレーム数をLとし、それを1セットと考える。送信すべきデータに対し、最低でもいく つのRTT の組が必要となるかをRTT_set とし、その組以外で送信が必要なフレーム数を surplus_frameとすると式(4.5)のように、
) 2
(
_ max_
max_prop Time prop Time
Time
RTS CTS T DATA total frame S T ACK
NAV
) 2
(
_ prop Time
Time
CTS DATA total frame S T ACK
NAV
) 2
( ) 1 _
( prop Time
Time
DATA DATA temp frame S T ACK
NAV
N N frame
S temp _ ( 1 )
32
(4.5)
RTT_setを求めることができ、そのときの剰余をsurplusとする。なお、RTSおよびCTS 送信時はtemp_frame=total_frameとなる。また、Sender側は連続的にフレームを送信す
るが、Receiver側がフレームを受信した直後にACKを送信するための時間を空ける必要が
あり、その時間をgurard_timeとする。NAVは以下の式(4.6),(4.7)となる
(4.6)
(4.7)
4.3.3. Selective+JSWのHybrid ARQにおけるNAV
最後にHybrid手法に関するNAV設定に関して。あるデータ送信直前での、Senderが受 信することが必要となるACKの数Sを式(4.1)にて求める点はSelective ARQと同様である。
最後のACK を要求するまでは、ACKを受け取る前にその待ち時間を利用してフレーム送 信を続ける。つまり、最後に要求するACKより前のACK数分だけJSWの効果により、
加えてフレームを送信することができる。ACKの待ち時間に送信できるフレーム数を(L-1) とすると、temp_frameは以下(4.8)のように表せる。
(4.8)
また、先ほどと同様にRTSおよびCTS送信時はtemp_frame=total_frameとなる。これ をSelective ARQのNAV設定である式(4.2)~(4.4)に代入することで、Hybrid手法のNAV が求められる。Selectiveに比べ(S-1)×(L-1)個分だけフレーム送信が短いことを意味してい る。
4.3.4. NAV設定に関してのまとめ
端末間では同期が取れていることを前提とし、RTS 送信時には分からなかった片方向遅 延をタイムスタンプなどにより RTS の受信者は把握することが可能である。よって、
CTS,DATA送信時にはSenderとReceiverの実際の距離を保証したNAVとなっている。
この処理は[24]と同様である。また、NAVの更新に関しては、オリジナルのIEEE 802.11
CSMA/CAでは周辺ノードから聞こえたフレームのうち、最も長い値をNAVとして設定す
prop Time
Time
prop Time
Time prop
Time RTS
T ACK
time guard DATA
surplus
T ACK
DATA set
RTT T
CTS NAV
max_
max_
max_
2 )
_ (
) 2
( _
prop Time
Time
prop Time
Time DATA
CTS
T ACK
time guard DATA
surplus
T ACK
DATA set
RTT NAV
NAV
2 )
_ (
) 2
( _
L frame set temp
RTT _
_
) 1 )(
1 ( _
_ ) 1 (
S L frame temp
frame temp
S
33
る。しかし、そのような設定ではNAV=0のACK到着時にNAVを解除できず、周辺ノー ドに不必要な待ち時間ができてしまう上に、実際の通信距離をサポートしたTpropを用いた NAVCTSやNAVDATAが意味をなさない。そこで、[25]のように周辺ノードからのフレーム到 着毎にNAVを常に更新する方法を本手法でも採用する。
4.4. 新たな NAV 設定方法
本稿では新たなNAVを提案する。オリジナルな IEEE 802.11 CSMA/CAでのNAVや
UWASNs向けに再設計されたNAVは、どちらもRTS, CTS, DATAの送信者がACK到着
までの時間を見積もり、その時間間隔をそれぞれの周辺ノードへと伝える。UWASNsにお いては図4.2のような振る舞いとなる。
Sender Receiver
Other
DATA RTS
CTS ACK
【NAV】
Cancel
図4.2 現状のNAV設定におけるフロー
UWASNsでは各フレームが周辺ノードへと伝わるのには伝搬遅延の影響が大きく出るた
め、周辺ノードはSenderやReceiverからの距離の分だけNAVの時間が長くなってしまう。
つまり、実際にはSenderがReceiverからのACKを受信完了し、チャネルが空いているの にもかかわらず、NAVを解除できていないのである。さらに、ReceiverからのACKを受 信可能な位置にいる周辺ノードはNAVを比較的早期に解除できるが、もし、このACKを 受信できなければさらに長い時間NAV状態が続いてしまう。これは、チャネルの空き時間 を生みネットワーク全体のスループットを低下させるだけでなく、SenderやReceiverに近 いノードの方がより早くNAVを解除できるため、ノードごとの送信権獲得に不公平性が生 じる可能性すら考えられる。
そこで、本稿では、【時間間隔】を周辺ノードへと知らせるのではなく、SenderがACK を受信するまでの【終了時刻】を周辺ノードへと知らせる手法に関して検討を行う。終了 時刻を知らせるため、CTS, DATAを受け取ったノードは全て図4.3のように、実際にSender が ACK を受信する時刻と同時刻に NAV を解除することができる。この手法を Proposal NAVとして定義する。
34 Sender
Receiver
Other
DATA RTS
CTS ACK
【NAV】
図4.3 Proposal NAV設定におけるフロー
しかし、Proposal NAVでは終了時刻を知らせるため、全てのノードは完璧に同期を取れ ていることが必要条件となる。この手法を適用することにより、スループットの改善だけ でなく、各ノードでの送信権獲得の不公平性を改善できる可能性がある。この手法に対す る評価を次の章で行う。