無線アクセスポイントリンク“WAPL”の立上げ方式 小島 崇広 市川 祥平 渡邊 名城大学大学院理工学研究科 晃 Starting system of Wireless Access Point Link WAPL Takahiro Kojima Shouhei Ichikawa Akira Watanabe Graduate School of Science and Technology, Meijo University 1. はじめに 通信端末の小型化,高性能化などの技術革新によるインタ ーネットの急速な普及に伴い,時間や場所を気にせずインタ ーネットに接続できる無線 LAN の需要が高まってきている. 今後も無線 LAN を利用したサービスが増えることが予想さ れ,どこにいてもインターネットに接続できるようになるこ とが想定される.このようなネットワーク環境を実現するに は , 無 線 LAN エ リ ア の 拡 大 , ア ク セ ス ポ イ ン ト (Access Point;AP)の整備が不可欠である.しかし,現在 AP 間は有 線で接続されており,AP の設置に多大な費用と時間を伴う のが現状である.また,一度 AP を設置してしまうと,移設 や増設が困難であるので計画的な配備が必要である.そこで, AP 間を無線で結合できればこのような課題が解決され,無 線 LAN エリアの拡大が容易になると考えられる. 無線 LAN の通信形態には AP を経由して通信を行うインフ ラストラクチャモードと端末自身がパケットを中継して互い に通信を行うアドホックモードがある.アドホックモードで は自動的に経路が生成され端末は自由に移動することが可能 ある.しかし,アドホックモードでは端末が増加すると経路 生成にかかわる制御パケットのトラヒックが増大してしまう といった問題がある.よって,一般的な通信にはインフラス トラクチャモードが適している. AP 間 を 無 線 化 す る 研 究 と し て は こ れ ま で , Multihop-Wireless LAN(M-WLAN)が提案されており,実験 環境の構築が行われている[1]-[4].M-WLAN は,AP 間をアド ホックモードで接続し,端末と AP 間はインフラストラクチ ャモードで接続するもので,両モードの利点を合わせもった システムである.しかし,M-WLAN では,すべての AP がす べての端末の物理アドレスと IP アドレスを所持する必要が あるため,ホスト数が増加すると,AP が管理するテーブル の量が多くなることや,経路維持のためのトラヒックが増大 するという課題がある. そこで,我々はホストからの通信要求があった時点で,随 時必要なテーブルをオンデマンドで作成することにより,テ ーブル量の増加を抑えるとともに,トラヒックを大幅に減少 させることができる WAPL(Wireless Access Point Link)を提 案している[5].しかし,WAPL では初期の立上げに関わる端 末の IP アドレス取得方法と MAC アドレスの解決方法が未検 討であった. IP アドレスを動的に割当てる方式として DHCP[6.7]が事実 上の標準となっており広く利用されている.そこで,WAPL では DHCP を採用し,端末側には一切手を加えず IP アドレ スを取得できるよう,WAP で DHCP メッセージを加工する ことにした.また,MAC アドレスの解決についても,端末側 に一切手を加えずにすむように,WAP で ARP メッセージを 加工する方式を採用した. 以下,2 章で WAPL の概要を説明し,3 章に WAPL の立上 インターネット WAPL 端末1 WAP-1 有線 WAP-5 WAP-2 WAP-3 WAP-4 端末2 端末5 端末3 端末4 DHCPサーバ インフラストラクチャモード アドホックモード 図 1 WAPL 構成例 げ,4章で WAPL の実装について述べ,最後の章でまとめを 行う. 2. WAPL の概要 2.1 WAPL のコンセプト 図1に WAPL の構成例を示す.また,WAPL における AP を以後 WAP(Wireless Access Point)と呼ぶ. WAP は,無線 LAN のインタフェースを 2 つ持つ.一つは WAP どうしの通信用,もう一つは WAP 配下の端末との通信 に用いる.WAP 間は MANET のルーティングプロトコルによ りルーティングテーブルを自動的に生成する[8]-[11].WAP端末間はインフラストラクチャモードで接続する.ユーザは 必要な時だけ端末を立上げ,自分の通信だけに専念すればよ い.端末間通信パケットは最寄りの WAP でカプセル化・デ カプセル化することにより WAP 間を中継され宛先端末に到 達する.端末からは WAP 全体が一つのルータのように見え, WAPL 全体は LAN のような働きをする.このため,WAPL 内で端末は自由に移動が可能である.インターネットへは特 定の WAP から有線で接続される.WAP どうしは電波が必ず 届くように適切に配置する. 2.2 WAPL の動作概要 WAP は自らが保持しているルーティングテーブルとリン クテーブルに従い通信の中継処理を行う.ルーティングテー ブルは次にどの WAP にパケットを送信すべきかを示すテー ブルで,MANET のルーティングプロトコルにより生成する. 一方 リ ンク テ ーブ ル は通 信 した い 相手 端 末が 所 属し て い る WAP の位置を示すテーブルで,通信開始に先だってその都度 生成する. WAP は端末からパケットを受け取るとリンクテーブルか ら宛先の端末がどの WAP に所属しているかを調べる.上記 パケットはカプセル化されルーティングテーブルに従いその 端末が所属している WAP まで届けられる.そして宛先端末 が所属する WAP でデカプセル化され宛先端末に送られる. 3. 端末1 WAP-2 MACアドレス ①DISCOVER DHCPサーバ WAP-3 MACアドレス IPアドレス [x] [X] MACアドレス IPアドレス [y] [Y] ・テーブル作成 ・chaddrの書換え ②DISCOVER フラッディング ③DISCOVER ④OFFER ⑤OFFER ⑥OFFER WAPL の立上げ 端末は自由に WAPL に参加,離脱できる必要がある.その ためには端末が自動的に IP アドレスを取得し,通信可能な状 態になる必要がある.また,通信開始時には MAC アドレス の解決が必要である. 3.1 [a] ユニキャスト ・テーブル検索 ・chaddrの書換え REQUEST ・テーブル作成 ・chaddrの書換え REQUEST フラッディング REQUEST 端末の IP アドレス取得方法 ACK IP アドレスの取得には既存の DHCP の原理をそのまま適 用できる方式を採用する.DHCP サーバは WAPL 内の任意の 場所に配置する.また WAPL 内には DHCP サーバを複数台 置くことも可能とする.端末及び DHCP サーバの動作は通常 の IP アドレス取得と全く同じでよいように WAP においてパ ケットを加工する.ユーザは WAPL の存在を意識することな く DHCP サーバから IP アドレスを取得することができる. これを実現するためには,WAP は DHCP パケットの内容を 解読し,内容を書き換える必要がある. DHCP パケットフォーマットを図2に示す.加工の際に使 用する DHCP パケット内のフィールドには以下のような情 報が含まれる. A) トランザクション ID フィールド(xid);クライアント が要求ごとに用意するランダムな数字でメッセージ の対応をとるために使用される. B) クライアントハードウェアアドレス(chaddr);クライ ア ン ト 側 の ハ ー ド ウ ェ ア ア ド レ ス で ethernet で は MAC アドレスを指す. C) ユーザ IP アドレス(yiaddr);クライアントに割当てた IP アドレスを指す 図3に端末の IP アドレス取得における WAP の動作シーケ ンスを,図4にパケットの内容がどのように変化するかにつ いて示す. 0 78 op(1) 1516 htype(1) hlen(1) hops(1) xid(4) secs(2) flags(2) ciaddr(4) yiaddr(4) siaddr(4) giaddr(4) chaddr(16) sname(64) file(128) options(可変長) 図2 DHCP パケットフォーマット 31 ACK ACK ・テーブル検索 ・chaddrの書換え ユニキャスト IPアドレス 取得 図3 IP アドレス取得シーケンス IPヘッダ ① UDP ヘッダ DHCP メッセージ xid yiaddr chaddr T a T a T y IPヘッダ ② ③ ④ ブロード キャスト X DISCOVER OFFER T A y T A a T A a IPヘッダ ⑤ Y X ⑥ 図4 DHCP 動作時のパケット内容の変化 端末は電源を立上げると DISCOVER パケットをブロード キャストする.最寄りの WAP-2 は DISCOVER パケットを受 信すると,ブロードキャスト IP アドレスでカプセル化して WAP 全体にフラッディングする.このパケットを受け取った WAP-3 は DISCOVER パケット内のトランザクション ID 『T』, クライアントハードウェアアドレス『a』,送信元 IP アドレス 『X』を関連付けてテーブルとして一定時間保持する.そし て DHCP サーバからの OFFER パケットが最寄りの WAP-3 に戻るように,DISCOVER パケット内のクライアントハード ウェアアドレスを自分の MAC アドレス『y』に書き換え,配 下の端末にブロードキャストする. DHCP サーバはクライアントへの設定値「候補」を通知す るメッセージ OFFER パケットを送信する.パケットを受け 取った WAP-3 は先ほど作ったテーブルから OFFER パケット 内のトランザクション ID が一致するクライアントハードウ ェアアドレスを検索し,OFFER パケット内のクライアント ハードウェアアドレスを『a』に戻す.また,同テーブルに 記憶されていた IP アドレス『X』によりパケットカプセル化 しユニキャストで送り返す.このパケットを受け取った WAP-2 はデカプセル化を行い,宛先 MAC アドレスを『a』 としてクライアントに送信する. 後に続く REQUEST パケット,ACK パケットはそれぞれ DISCOVER パケット,OFFER パケットと同様の動作を行う. このようにしてクライアントは WAPL の存在を意識するこ となく,DHCP サーバから IP アドレスを取得することができ る. 3.2 MAC アドレスの解決及びリンクテーブルの生成 端末が通信を行うためには,MAC アドレスの解決が必要で ある. WAP において ARP メッセージの内容を加工すること により端末には手を加えることなく MAC アドレスの解決が できる.また,このとき同時にリンクテーブルを生成するこ とが可能である. 図1の構成において端末1から端末4宛にパケットを送信 する場合の MAC アドレス解決の動作を示す 図5に MAC アドレス解決シーケンスを図6にパケット内容 の変化を示す. 端末1は端末4を探索するための ARP 要求を送信する. ARP 要求を受け取った WAP-2はブロードキャスト IP アド レスでカプセル化し,WAP 全体にフラッディングする. 上記パケットを受け取った WAP はパケットの情報から端 末1の IP アドレス『A』を取り出し,端末1と WAP-2を関 連付けるリンクテーブルを生成する.その後デカプセル化を 端末1 WAP-2 MACアドレス IPアドレス [a] [A] 端末4 WAP-4 MACアドレス IPアドレス [x] [X] MACアドレス IPアドレス [z] [Z] MACアドレス IPアドレス ①ARP要求 ②ARP要求 ・リンクテーブル作成 ・送信元MACアドレス書換え フラッディング ③ARP要求 ④ARP応答 [d] [D] 行い,端末4から返信される ARP 応答が WAP-4に到達する ように ARP 要求内の送信元 MAC アドレスを端末1の MAC アドレス『a』から自分の MAC アドレス『z』に書き換える. また,返信される ARP 応答を判別するために端末1の MAC アドレス『a』を上記のリンクテーブルに関連付けて保存す る.上記のリンクテーブルは一定時間内に ARP 応答を受信 しなかった場合は消去される. 端末4は問い合わせの IP アドレスが自分であるので ARP 応答を返す.ARP 応答を受け取った WAP-4は ARP メッセ ージ内の宛先 IP アドレス『A』からリンクテーブルを検索し, ARP 応答内の宛先 MAC アドレスを元の『a』に戻す.さら に,宛先 IP アドレスを『X』としてカプセル化して WAP-2 に返送する.このパケットを受け取った WAP-2はパケット の情報から端末2の IP アドレス『D』を取り出し,端末2と WAP-4を関連付けるリンクテーブルを生成する.また,パ ケットのデカプセル化を行い,ARP 応答内の送信元 MAC ア ドレス『d』を自分の MAC アドレスである『x』に書き換え 送信する. 以上の処理により,ARP によるアドレス解決が可能となる. 同時にカプセル化に必要となるリンクテーブルを完成させる ことが出来る. 4. WAPL の実装 4.1 モジュール構成 実装対象となる OS はオープンソースで,IP 層に関する情 報や処理内容の資料が多い FreeBSD を採用する. 図 7 に WAPL の階層モデルを示す.WAPL のコンセプトと して端末には一切手を加えない.また,MANET のルーティ ングプロトコルは他の処理とは独立させるため,全ての実装 は WAP のネットワーク層に組み込む.WAPL のモジュール 構成を図 8 に示す. 端末 端末 アプリケーショ ン アプリケーショ ン ⑤ARP応答 ユニキャスト ・宛先MACアドレス書換え TCP/UDP ⑥ARP応答 IP IP ・リンクテーブル作成 ・送信元MACアドレス書換え 図5 WAP イン フラ インフラストラクチャ IP WAPL アド ホック WAP TCP/UDP WAPL IP アド ホック イン フラ インフラストラクチャ MAC アドレス解決シーケンス 図 7 WAPL の階層モデル ARPメッセージ 送信元 送信元 宛先 宛先 MACアドレス IPアドレス MACアドレス IPアドレス ① a A D a A D y A D d D y A d D a A x D a A IP WAPL ip_input ip_output IPヘッダ ② ③ ④ X ブロード キャスト ARP要求 ARP応答 カプセル化処理 call リンクテーブル管理 IPヘッダ ⑤ Y ⑥ 図6 X アドレス解決時のパケット内容の変化 ARP インフラ/アドホック 図 8 WAPL のモジュール構成 if_output IP パケットについては既存の処理に変更を加えないよう パケット受信時には IP 入力関数である ip_input で WAPL を 呼び出す.WAPL 内でカプセル化/デカプセル化を行った後, ip_output に処理を移行する.ただし,ARP パケットの処理 の場合は,FreeBSD の ARP 処理モジュール内から WAPL を 直接呼び出す. 5. まとめ WAPL を実現するために, WAPL における端末の IP アド レス取得方法と通信開始時の MAC アドレス解決方法につい て検討した結果を述べた.いずれの処理においても端末やサ ーバには一切変更を加えることをせず,WAP がパケットの内 容を書き換えることにより実現を可能とした.また,アドレ ス解決と同時にリンクテーブルも同時に生成できることを示 した.今後は WAPL の実装とトラヒックシミュレーションを 並行して実施し,動作検証と評価を行う. 参考文献 1. K.Mase,et al.,“Wireless LAN with Wireless Multihop Backbone Network”,IEEE ICWLHN 2001.pp349-358, 2001 2. 大和田泰伯,間瀬憲一,“無線マルチホップ LAN の通信 方式の検討とスループット評価”,電子情報通信学会 信 学技報(2002) 3. 大和田泰伯,間瀬憲一,“M-LAN における LAN エミュレ ータの実装と性能評価”,電気情報通信学会総合大会, SB-9-4(2002) 4. 朴鐘甲,須田利章,大和田泰伯,照井宏康,間瀬憲一, “アドホックネットワークの通信実験・経路制御方式の性 能評価”,信学技報,IN/MoMuC/MVE2003-11,pp13-18, Nov.2003 5. 市川祥平,渡邊晃,“アクセスポイントの無線化を実現す るシステム”WAPL“の提案”,第 30 回 MBL 研究報告会, Sept.2004 6. R.Droms , “Dynamic Host Congiguration Protocol” , RFC2131(1997) 7. S.Alexander,and R.Droms,“DHCP Options and BOOTP Vendor Extensions”,RFC2132(1997) 8. IEEE Home Page. http://www.ietf.org 9. T.Clausen P.jacquet , “Optimized Link State Routing Protocol”(OLSR)REC3626 Oct.2003 10. C.Perkins S.Das , “Ad hoc on-Demand Distance Vector”(AODV) RFC3561 July 2003 11. R.Ogier,M.Lewis,“Topology Dissemination Based on Reverse-Path Forwarding”(TBRPF) RFC3684 February 2004 無線アクセスポイントリンク ”WAPL”の立上げ方式 名城大学大学院理工学研究科 小島崇広 市川祥平 渡邊晃 研究背景 インターネットの普及 無線LANの需要の高まり 無線LANを利用したサービスの増加 無線LANエリアの拡大 アクセスポイントの整備 アクセスポイント間通信にアドホックを利用 設置・移設が容易 WAPL(Wireless Access Point Link) 2 WAPL(Wireless Access Point Link) WAPLのシステム構成 2つの無線LANインターフェースをもつAP(WAP) WAP間通信用(アドホック・モード) 端末-WAP間通信用(インフラストラクチャ・モード) アドホック・モード インフラストラクチャ・モード 構成例 3 WAPLにおけるカプセル化 EthernetフレームをMANETの ルーティングプロトコルでカプセル化 端末にWAP間でのアドホック通信が 有線接続 Ethernet上で通信しているように見せる Ethernet フレーム WAPL フレーム フレーム アドホック フレーム フレーム 無線MACヘッダ MACヘッダ IPヘッダ フレーム 有線接続と同様の通信が可能 4 WAPLの立上げ 通信開始前 ルーティングテーブル生成 MANETのルーティングプロトコルにより自動生成 MANETの処理には手を加えない WAPLの立上げ IPアドレス割当て方法 WAPL内の任意の場所に設置されたDHCPサーバか ら割当てる リンクテーブル生成 通信開始時のアドレス解決(ARP)と同時に生成 一定時間参照されなければ削除 5 IPアドレス割当て アドホック Ethernet DHCPサーバ DISCOVER DISCOVER OFFER OFFER DISCOVER OFFER REQUEST REQUEST REQUEST ACK ACK ACK 有線と同様の方法でIPアドレス割当て可能 6 リンクテーブル生成 ARPを利用 WAP1 端末1 WAP2 端末2 WAP2リンクテーブル作成 MAC IP IP IP MAC IP カプセリング Ether ヘッダ ヘッダ ARP IP-W1ブロードMAC Mac-T1 IP-T1 IP-T2 ARP要求 リンクテーブル IP-W1 ARP要求 フラッディング ARP応答 ARP応答 ユニキャスト ARP要求 ARP応答 Mac-T1 タイマ WAP1リンクテーブル作成 カプセリング Ether ヘッダ ヘッダ ARP IP-W2 IP-W1 MAC Mac-T2 IP-T2 Mac-T1 IP-T1 リンクテーブル IP-W2 Mac-T2 タイマ 7 WAPLのアーキテクチャ WAP 端末 WAP 端末 Application Application TCP/UDP IP IEEE 802.11 WAPL AP処理 IP Ethernet TCP/UDP IP IEEE IEEE Ether Ether 802.11 802.11 インフラストラクチャ WAPL IP AP処理 IEEE IEEE Ether Ether 802.11 802.11 Ad-hoc WAPはAP機能とカプセル化機能 で構成される 試作として一般のAPとPCでWAP を構成 AP-PC間はEthernetでデータを中 継 IEEE 802.11 Ethernet インフラストラクチャ WAP WAP MANET 8 実装 WAPLの実装方式 FreeBSDのカーネルにモジュールを組み込む Ethernetインターフェース→EthernetのドライバからWAPLモジュールへ 無線インターフェース→IP処理終了後WAPLモジュールへ IP Call ip_input WAPL ip_output カプセル化処理 リンクテーブル管理 ether_output データリンク 802.11 Ehter Ethernetフレームのカプ セル化・デカプセル化を 行う リンクテーブル管理 ether_input Call カプセル化処理 Ether リンクテーブルの作成・削 除を行う 802.11 9 ハンドオーバ アソシエーション張替 え後にLLCパケットを 送信 APが保持している端 末の情報の書き換え 有線接続でのハンドオーバ 通信 移動 LLCパケット Ether上での処理は そのまま利用可能 通信 ハンドオーバ可能 端末:Windows AP:BUFFALO社製 10 まとめ AP間通信をアドホックによってカプセル化す るWAPLのリンクテーブル作成方法とWAPL のアーキテクチャについて説明した 今後は、本提案の実装を完了し、検証を行っ ていく 11 おわり
© Copyright 2024 Paperzz