Comments
Description
Transcript
仮想環境ソフトウェアを用いたネットワークプロトコル可視化教育システム
05-01019 仮想環境ソフトウェアを用いたネットワークプロトコル可視化教育システム の開発 井 口 信 和 近畿大学理工学部情報学科准教授 1 はじめに インターネットや LAN が広く普及した一方で,ネットワーク技術者の不足が問題となっている.このため, ネットワーク技術者の早期の養成が求められている.ネットワーク技術者の養成のために,シスコネットワ ーキングアカデミー1)をはじめとしていくつかのネットワーク教育プログラムが用意されている.近畿大学 においても,シスコネットワーキングアカデミーを開講しており,受講生は,実機を用いてネットワークを 構築することで,ネットワークの構築手順やトラブルシューティングについて学習している. 実機によるネットワーク学習は,実際に機器を接続し設定することでネットワークの構築手順を学ぶため 学習効果が高い.しかし,ネットワーク機器は高価なものが多く,学習者に対して十分な数の機器を用意す ることは困難である.このような環境では,複数の学習者が機器を共同で使用しなければならず,学習効果 が低下する.また,自学自習のために個人が実機を用いて学習する場合,機器の設置場所や購入費用を確保 することが困難である. 企業における新人教育においても同様な問題が発生している.ネットワーク技術者が十分な実力を身につ けるためには,現場における経験が重要である.特に現場におけるトラブルへの対応は有効なトレーニング となる.トラブル対策の経緯を記録したドキュメントを読むだけでは,知識は取得できてもスキルは身に付 かない.ここでも実機によるトラブルシューティングのトレーニングが必要となる.しかし,実機によるト ラブルシューティングは.準備に時間を要することや完全に再現することが困難なこと,さらに実機を故障 させるかもしれないといったリスクが伴う. そこで,本研究では,ネットワーク学習の支援のために,仮想 Linux 環境を用いて1台の PC 上で仮想的な ネットワークを構築することで,ネットワークの構築手順を学習するシステムを開発した.仮想化技術を用 いて,PC 上でネットワークを構築する教育システムとして,User Mode Linux(以下,UML)を使用したシステ ム 2)3)や VMWare を使ったシステム 4)がある.これら Web サーバの構築方法やアプリケーションレイヤのト ラブルシューティングの学習を可能とするものである.これらに対して,本システムでは,仮想ネットワー クに構築に UML を用い,主に OSI 第 3 層と第 2 層の機器を対象とし,ルータによる経路制御やスイッチによ る VLAN 設定などの学習を目的とする. 本研究では,UML を用いた仮想環境によるネットワーク教育システムを開発した.今回の研究において, ルータの機能を実現したことによって,ルーティングの学習が可能となった.さらに UML のコンソールを GUI からコントロールできるようにしたことによって,ネットワーク図を再現しながら学習を進められる.近畿 大学で実施しているシスコネットワーキングアカデミーで行っている演習問題を用いて本システムの評価実 験を行った.実験結果からネットワークの実習が十分可能なこと,作業時間の短縮が可能であることが分か り,本システムの有効性を確認した. 2 システムの概要 本研究では,ネットワーク学習の支援のために,仮想 Linux 環境を用いて1台の PC 上で仮想的なネットワ ークを構築することで,ネットワークの構築手順を学習するシステムを開発した.図1にシステムの構成を 示す.仮想的なネットワークを実現するために UML を使用した. 2-1 UML とは UML は,Linux 上で別の Linux をユーザモードプロセスとして実行できる仮想 OS 環境である. UML の他に も Xen や VMWare といった仮想化技術がある.しかし,柔軟な設定が可能であること,ユーザモードプロセス として実行されることによる耐障害性や管理の容易さから,本研究では UML を採用した.また,無償であり, 524 ソースが公開されているため改変が容易であることも採用した理由の一つである. UML は,それぞれ個別のディスクイメージを保持するため,学習者が作業ミスを起こしても Host マシンに 影響が及ぶことはない.システムを復旧するために必要な作業は,イメージファイルの復元だけである. 2-2 UML による仮想ネットワーク UML を用いて,クライアントまたはサーバとなるコンピュータと,通信経路を制御するルータを実現した. 通常の UML をコンピュータとして使用し,ルーティングプロトコルのデーモン群(RIP,OSPF,BGP,他)を実 装した UML をルータとして使用した.ルータ用の UML において,ルーティング機能の設定に使用するコマン ド群は,Cisco 社製ルータに搭載されている Cisco IOS のものと酷似している.このため CCNA の取得を目的 としたシスコネットワーキングアカデミーには最適な環境となった. 機器同士を接続するハブとスイッチには,UML の付属機能である uml_switch を使用した.uml_switch も Host OS 上でユーザモードプロセスとして実行される.それぞれの UML と uml_switch が相互に通信できるよ うに設定することで,仮想的なネットワークを構築する. UML をネットワーク機器に見立てて仮想的なネットワークを構築するには,複数の UML を同時に実行しな ければならない.この際,Copy On Write(以下,COW)機能を利用することでディスク領域を節約できる. COW 機能によって作成された差分情報を持つファイルを UML の実行時に読み込むことで,前回起動時の設定 を再現できる.また,Host マシンは,元になるディスクイメージと差分情報を持つファイルだけをキャッシ ュすればよいので,ディスクキャッシュ効率が向上する. 2-3 GUI による本システムの操作機能 UML はコンソールアプリケーションであり,コマンド入力によって設定を変更または確認する.そのため, ping の実行などで通信設定が適切であるかを確認することはできても,どのようなネットワークであるかを 直感的に把握できない.そこで本研究では,直感的な仮想ネットワークの構築と,そのトポロジを視覚的に 把握できる GUI を作成した.図2に本システムの操作機能の表示例を示す. この GUI と UML を連動させることで,簡単な操作で仮想ネットワークを構築できる.機器追加ボタンをク リックすることで,仮想ネットワークに機器を追加する.このとき,新たな UML が実行される. この UML に対してコマンドを入力することで設定を変更または確認する.UML に設定した情報は,機器情 報一覧により確認できる. 機器同士をマウス操作により接続することで,UML 同士が通信できるようになる.構築したネットワーク のトポロジも表示され,どのようなネットワークを構築したかを視覚的に把握できる.また,機器のどのポ ート同士が接続されているのかもラベルで表示される. 仮想ネットワーク ルータ コンピュータ UML UML + スイッチ ルーティング機能 uml_switch コンピュータ コンピュータ UML UML 処理の反映 GUI マウス操作・キー入力 ・仮想ネットワークへの機器の追加 ・設定の変更 ・機器の接続 実在するコンピュータ(Hostマシン) 図 1 システムの構成 525 図 2 GUI による本システムの操作機能 3 評価実験 近畿大学で開講しているシスコネットワーキングアカデミーの実習課題のうち,初級レベルの課題(ルー タ2台,コンピュータ2台)を用いて,実機による学習との比較実験をした.図 3 に課題として提示したネ ットワークトポロジ図を示す.本トポロジ図に対して,静的ルーティングと動的ルーティング(RIP)を設定 する実習を評価実験として実施した.図 3 の課題に対して,本システムを用いた実習と通常の実機を使った 実習を行い,実習完了までの時間と受講者による評価を比較した.図 4 は実機による実習に必要な機材を示 す.図 5,6 は実機による実習作業の様子を示す. 図 7 には本システムによって実習を実施している例を示す. 課題 1:静的ルーティング 課題 2:動的ルーティング(RIP) 図 4 実機による実習に必要な機材 図 3 実験に用いた実習課題のトポロジ図 図 6 実機による実習例 2 図 5 実機による実習例 1 526 図 7 本システムによる実習の実施例 4 実験結果および考察 作業時間に関する比較結果を表 1 に,実習に必要な機材とコストについて比較した結果を表 2 に示す. 表 1 作業時間の比較 実機 本システム 短縮時間 静的ルーティング 17 分 31 秒 8 分 27 秒 9分4秒 動的ルーティング(RIP) 19 分 8 秒 8 分 53 秒 10 分 15 秒 表 2 実習に必要な機材とコスト 実機による実習 ルータ 2 台 PC2 台 110 万円 本システムによる実習 PC1 台 25 万円 削減コスト 85 万円 受講生7名に試用してもらった結果,平均所要時間が半分以下に短縮された.実機による学習では,機器 の準備や接続に多くの時間を要するが,本システムを用いた学習ではマウス操作によって簡単に機器を設 置・接続できるためであると考える. 実験に使用した課題は,機器の台数が比較的少ないものであるにも関わらずコストに大きな差が出た.こ の結果から,本システムの使用により,実機による学習の短所である設置場所や費用の問題を補うことがで き,個人での学習を支援できることが分かった. また,同時に実施したアンケートの結果から,実機による学習と同等の学習効果が得られることが分かっ た.しかし,Cisco IOS 用のコマンド群との書式の違いが,一部の学習者にとって負担となっていることも 分かった. 今後は,以下の項目について実装を進める予定である. ・仮想スイッチの改良 現行システムでは,仮想ネットワークにおけるスイッチとして,UML の付属機能である uml_switch を使用 している.しかし,VLAN を作成できないなど実際のスイッチと比べて機能が不十分であるので,uml_switch を改変し,一般的なスイッチが持つ機能を実装する. ・トラブルシューティング学習機能 UML の実行時に,あらかじめ誤りを含む設定を与える.こうして実行した UML を用いることで,何らかの 527 障害が発生している仮想ネットワークを用意できる.学習者は,実際に設定を修正することでトラブルシュ ーティングについて学ぶことができる. ・コマンドラインインタフェースの改良 UML のコマンド書式と Cisco IOS および Linux 本来のコマンド書式の一部が異なっているため,これらの コマンド書式を一致させる変換機能を実装する. 5 おわりに 仮想 Linux 環境における仮想的なネットワークの構築によって,ネットワーク学習を支援するシステムを 開発した.本研究で実装した仮想ルータは,ルーティングプロトコルのデーモン群(RIP,OSPF,BGP,他)を 実装している.そのコマンドラインインタフェースは,Cisco IOS のものと酷似しているため,シスコネッ トワーキングアカデミーの初級レベルの課題であれば,本システムを用いて学習できることも分かった.今 後は,より高度な課題に対して試用し,その有用性を確認する予定である. また,本システムによる仮想ネットワークと実機によるネットワークを通信させることが可能であるため, 本システムと実機を組み合わせた学習やインターネットを経由した遠隔実習も可能である.今後,開発を進 めることで,ネットワーク学習のためのシステムとしての利用以外に,新たに敷設するネットワークのテス ト環境としての利用も期待できる. 【参考文献】 1) シ ス コ ネ ッ ト ワ ー キ ン グ ア カ デ ミ ー ・ プ ロ http://www.cisco.com/japanese/warp/public/3/jp/event/training/academy/index.shtml グ ラ ム : 2) 立岩佑一郎,安田孝美,横井茂樹:TCP/IP 学習のための可視化シミュレータの研究,第 3 回情報科学技術 フォーラム,情報科学技術レターズ pp.355-357,2004. 3) 立岩佑一郎,安田孝美,横井茂樹:仮想環境ソフトウェアに基づくネットワーク構築トラブルシューティング学 習支援システムの開発,第 5 回情報科学技術フォーラム,一般講演論文集第 4 分冊 pp.347-348,2006. 4) 中川泰宏,須田宇宙,三井田惇郎,浮貝雅裕:VMware を利用した学習用 LAN 構築支援システムの開発, 教育情報システム学会誌 Vol.24 No.2pp.126-136,2007. 〈発 題 名 User-Mode Linux による仮想ネットワーク を用いたネットワーク教育システム 仮想 Linux 環境を用いたネットワーク教育 システムのための仮想ルータと GUI の実装 表 資 料〉 掲載誌・学会名等 IT 産学マッチングカンファレンス OSAKA FIT2007 第 6 回情報科学技術フォ ーラム 528 発表年月 2007 年 3 月 5 日 2007 年 9 月(予定)