(57)【要約】【課題】学習者が効率的にネットワーク構築演習を行うことができるネットワーク構築演習装置及びその制御方法を提供する。【解決手段】演習課題ファイル１３−ｎは、仮想デバイス４−１〜４−Ｍの設定情報に誤りがある演習課題となる演習用仮想ネットワークの設定情報、及び、演習課題の正答となる仮想デバイス４−１〜４−Ｍの設定情報を含む。ＣＰＵ２は、学習者が入力した仮想デバイス４−１〜４−Ｍの設定情報に基づいて、仮想デバイス４−１〜４−Ｍ毎に設定情報ファイル１４−１〜１４−Ｍを生成し、設定情報ファイル１４−１〜１４−Ｍを答案ファイル１５に変換し、演習課題ファイル１３−ｎに含まれる演習課題の正答となる仮想デバイス４−１〜４−Ｍの設定情報と、答案ファイル１５に含まれる仮想デバイス４−１〜４−Ｍの設定情報とを比較し、比較結果をディスプレイ６に表示する。【選択図】図１
2012015633.tif 000002
【特許請求の範囲】
【請求項１】
パケットデータを用いて通信を行うパケット交換ネットワークを構築する演習を行うネットワーク構築演習装置であって、
所定の演習課題の正答となる複数の仮想デバイスの設定項目毎の設定情報を含む演習課題ファイルを格納する第１の記憶手段と、
上記ネットワーク構築演習装置の動作を制御する制御手段と、
学習者又は指導者により入力される指示コマンド及びデータを入力するための入力手段とを備え、
上記演習課題ファイルは、仮想デバイスの設定情報を設定項目毎にタグ付けして階層的に記述したテキストファイルであり、
上記制御手段は、
上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドに基づいて、上記各仮想デバイス毎に当該仮想デバイスの設定情報を含む設定情報ファイルを生成するステップと、
上記各仮想デバイス毎に生成された設定情報ファイルを、上記各仮想デバイスの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルである答案ファイルに変換するステップと、
上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するステップとを実行することを特徴とするネットワーク構築演習装置。
【請求項２】
上記第１の記憶手段は、（ａ）上記ネットワーク構築演習装置の全体の動作を制御するためのオペレーティングシステムのプログラムと、（ｂ）パケットデータを用いて通信を行う通信機器を仮想的に実現するための仮想デバイスの機能を実行する仮想デバイスプログラムとをさらに格納し、
上記ネットワーク構築演習装置は、上記仮想プログラムを実行したときに、上記仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを格納する第２の記憶手段をさらに備え、
上記演習課題ファイルは、上記各仮想デバイスの設定情報に誤りがあり演習課題となる演習用仮想ネットワークにおける上記各仮想デバイスの設定情報と、上記各仮想デバイス間の接続情報とをさらに含み、
上記制御手段は、上記設定情報ファイルを生成するステップを実行する前に、上記オペレーティングシステムのプログラムを実行し、上記演習課題ファイルに含まれる上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報に基づいて、上記オペレーティングシステム上で、上記各仮想デバイス毎に上記仮想デバイスプログラムを実行することにより、上記各仮想デバイスが動作するように、上記各仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを上記第２の記憶手段に格納し、これにより、上記演習用仮想ネットワークを構築するステップを実行し、
上記設定情報ファイルを生成するステップは、上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドを実行することにより、上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報を変更するステップをさらに含むことを特徴とする請求項１記載のネットワーク構築演習装置。
【請求項３】
上記制御手段は、上記演習用仮想ネットワークを構築するステップを実行する前に、上記指導者により上記入力手段から入力される（ａ）上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報と、（ｂ）上記演習課題の正答となる上記各仮想デバイスの設定情報とに基づいて、上記演習課題ファイルを自動的に生成して上記第１の記憶手段に格納するステップを実行することを特徴とする請求項２記載のネットワーク構築演習装置。
【請求項４】
上記オペレーティングシステムのプログラムはリナックス（登録商標）であり、
上記仮想デバイスプログラムはユーザモードリナックスであることを特徴とする請求項２又は３記載のネットワーク構築演習装置。
【請求項５】
上記比較の結果を出力し又は表示するステップは、上記各仮想デバイス毎に、上記各設定項目に対応するタグを階層的に比較することにより、上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較することを特徴とする請求項１乃至４のうちのいずれか１つに記載のネットワーク構築演習装置。
【請求項６】
上記演習課題ファイル及び上記答案ファイルは、ＸＭＬ（eXtensible Markup Language）形式で生成されたことを特徴とする請求項１乃至５のうちのいずれか１つに記載のネットワーク構築演習装置。
【請求項７】
上記各仮想デバイスの機能は、ルーティング機能又はパケットデータの送受信機能であることを特徴とする請求項１乃至６のうちのいずれか１つに記載のネットワーク構築演習装置。
【請求項８】
パケットデータを用いて通信を行うパケット交換ネットワークを構築する演習を行うネットワーク構築演習装置のための制御方法であって、
上記ネットワーク構築演習装置は、
所定の演習課題の正答となる複数の仮想デバイスの設定項目毎の設定情報を含む演習課題ファイルを格納する第１の記憶手段と、
上記ネットワーク構築演習装置の動作を制御する制御手段と、
学習者又は指導者により入力される指示コマンド及びデータを入力するための入力手段とを備え、
上記演習課題ファイルは、仮想デバイスの設定情報を設定項目毎にタグ付けして階層的に記述したテキストファイルであり、
上記制御方法は、
上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドに基づいて、上記各仮想デバイス毎に当該仮想デバイスの設定情報を含む設定情報ファイルを生成するステップと、
上記各仮想デバイス毎に生成された設定情報ファイルを、上記各仮想デバイスの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルである答案ファイルに変換するステップと、
上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するステップとを含み、
上記制御方法の各ステップは上記制御手段により実行されることを特徴とするネットワーク構築演習装置のための制御方法。
【請求項９】
上記第１の記憶手段は、（ａ）上記ネットワーク構築演習装置の全体の動作を制御するためのオペレーティングシステムのプログラムと、（ｂ）パケットデータを用いて通信を行う通信機器を仮想的に実現するための仮想デバイスの機能を実行する仮想デバイスプログラムとをさらに格納し、
上記ネットワーク構築演習装置は、上記仮想プログラムを実行したときに、上記仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを格納する第２の記憶手段をさらに備え、
上記演習課題ファイルは、上記各仮想デバイスの設定情報に誤りがあり演習課題となる演習用仮想ネットワークにおける上記各仮想デバイスの設定情報と、上記各仮想デバイス間の接続情報とをさらに含み、
上記制御方法は、上記設定情報ファイルを生成するステップを実行する前に、上記制御手段により、上記オペレーティングシステムのプログラムを実行し、上記演習課題ファイルに含まれる上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報に基づいて、上記オペレーティングシステム上で、上記各仮想デバイス毎に上記仮想デバイスプログラムを実行することにより、上記各仮想デバイスが動作するように、上記各仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを上記第２の記憶手段に格納し、これにより、上記演習用仮想ネットワークを構築するステップを実行することをさらに含み、
上記設定情報ファイルを生成するステップは、上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドを実行することにより、上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報を変更するステップをさらに含むことを特徴とする請求項８記載のネットワーク構築演習装置の制御方法。
【請求項１０】
上記制御手段は、上記演習用仮想ネットワークを構築するステップを実行する前に、上記指導者により上記入力手段から入力される（ａ）上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報と、（ｂ）上記演習課題の正答となる上記各仮想デバイスの設定情報とに基づいて、上記演習課題ファイルを自動的に生成して上記第１の記憶手段に格納するステップを実行することを特徴とする請求項９記載のネットワーク構築演習装置の制御方法。
【請求項１１】
上記オペレーティングシステムのプログラムはリナックス（登録商標）であり、
上記仮想デバイスプログラムはユーザモードリナックスであることを特徴とする請求項９又は１０記載のネットワーク構築演習装置の制御方法。
【請求項１２】
上記比較の結果を出力し又は表示するステップは、上記各仮想デバイス毎に、上記各設定項目に対応するタグを階層的に比較することにより、上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較することを特徴とする請求項８乃至１１のうちのいずれか１つに記載のネットワーク構築演習装置の制御方法。
【請求項１３】
上記演習課題ファイル及び上記答案ファイルは、ＸＭＬ形式で生成されたことを特徴とする請求項８乃至１２のうちのいずれか１つに記載のネットワーク構築演習装置の制御方法。
【請求項１４】
上記各仮想デバイスの機能は、ルーティング機能又はパケットデータの送受信機能であることを特徴とする請求項８乃至１３のうちのいずれか１つに記載のネットワーク構築演習装置の制御方法。
【請求項１５】
請求項７乃至１４のうちのいずれか１つに記載のネットワーク構築演習方法における各ステップを含むことを特徴とするプログラム。
【請求項１６】
請求項１５記載のプログラムを格納したことを特徴とするコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト装置及びルータなどの通信機器の機能を仮想的に実現するための仮想デバイス（以下、仮想機器又は仮想マシンともいう。）を用いて、例えばＩＰネットワークなどのパケット交換ネットワークを構築するネットワーク構築演習装置及びその制御方法に関する。また、上記ネットワーク構築演習装置のための制御方法における各ステップを含むプログラム、並びに、当該プログラムを格納したコンピュータにより読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
例えば、ＩＰネットワークなどのパケット交換ネットワークの学習において、学習者は、講義によって習得した知識を、ネットワークを構築する実技を通して実践することが重要である。多くの教育機関では、ネットワーク技術者の育成を目的として、シスコネットワーキングアカデミー（非特許文献１）に代表される演習が実施されている。これらの演習では、学習者は、ルータなどの実機の通信機器を実際に操作して、ネットワークを構築する。これにより、学習者は実践的なネットワーク構築技能を習得できる。しかしながら、実機を用いたネットワークの構築演習を行うためには、構築するネットワークに応じて機材を用意する必要がある。このため、学習者に対していつでも手軽に演習できる環境を提供することは難しいという課題があった。
【０００３】
この課題を解決するために、仮想化技術を用いたネットワーク構築の学習環境の提供、又は、ソフトウェアのテスト環境の構築を目的とした研究が行われている（非特許文献３〜９参照。）。例えば、非特許文献１０に記載のネットワーク動作可視化システムは、ユーザモードリナックス（UserModeLinux（ＵＭＬ））を利用したネットワーク学習のためのシステムであり、ウェブサーバの構築とそのトラブルシューティングを学習内容としている。ここで、ユーザモードリナックスは、リナックス（Linux（登録商標））をＯＳ（Operating System）として動作する実ホスト装置において、別のリナックス（登録商標）をユーザモードプロセスとして実行するためのプログラムである。しかしながら、非特許文献１０の記載のネットワーク動作可視化システムでは、ルータ及びスイッチなどのネットワーク構成要素を用いたネットワーク構築を行うことができなかった。
【０００４】
また、非特許文献１１には、実ネットワークの通信データを取得し可視化して教材として利用し、データ構造と通信処理の手順について学習するためのツールが記載されている。しかしながら、学習者が使用しているパーソナルコンピュータが送受信したデータを取得して可視化するツールであるため、ルータ及びスイッチなどのネットワーク機器が送受信したデータを学習者に提示できなかった。また、ツールの性質上、ネットワークの構成を学習者が任意に変更できないため、ネットワーク機器の設定変更などに応じて通信データがどのように変化するかを確認できなかった。
【０００５】
さらに、非特許文献１２には、仮想マシン環境ソフトウェアであるヴイエムウェア（ＶＭｗａｒｅ（登録商標））ワークステーションを利用して、個々の学習者がＬＡＮ（Local Area Network）の設計から構築及び運用までを学習するためのシステムを開発している。しかしながら、このシステムを利用するためには実機のルータが必要であるため、学習環境の構築作業が学習者の負担となった。また、通信を可視化する機能を備えていないため、ネットワーク構築による通信プロトコルに関する知識の定着と、手軽な学習環境の提供という点で、課題があった。
【０００６】
これに対して、本願の発明者は、これまでに、ユーザモードリナックスを利用するネットワーク構築演習装置を開発してきた（例えば、非特許文献２参照。）。このネットワーク構築演習装置を用いることで、学習者は１台のパーソナルコンピュータ（以下、実ホスト装置という。）上で仮想的なネットワークを構築してネットワークの構築演習を実施できる。具体的には、リナックス（登録商標）をＯＳとする実ホスト装置において、複数の仮想デバイスにそれぞれ対応する複数のユーザモードリナックスを実行することにより複数の仮想デバイスを動作させる。そして、ユーザモードリナックス用のユーティリティツールを利用して、各仮想デバイスに対してネットワークインタフェースを追加し、複数の仮想デバイスどうしを通信できるように接続した。これにより、仮想デバイスとしては、仮想的なルータ（以下、仮想ルータという。）及びクライアントやサーバとして動作する仮想的なホスト装置（以下、仮想ホストという。）を実現できる。なお、仮想ルータは、ルーティングプロトコルデーモンであるクアッガ（Quagga）を用いて実現した。さらに、仮想ルータでは、静的ルーティング機能、及びＲＩＰ（Routing Information Protocol）又はＯＳＰＦ（Open Shortest Path First）による動的ルーティング機能を実現できる。
【０００７】
図１７は、従来技術に係るネットワーク構築演習装置のディスプレイに表示されるネットワーク構築支援ウィンドウの表示例である。学習者が、ネットワーク構築演習装置においてネットワーク構築演習プログラム（e-Netlab（イーネットラボ））を起動すると、ネットワーク構築支援ＧＵＩ（Graphic User Interface）プログラムが実行され、図１７に示すように、ディスプレイにネットワーク構築支援ウィンドウが表示される。学習者は、ネットワーク構築支援ウィンドウに対して、マウス及びキーボードを用いた直感的な操作を行うことによりネットワークを構築し、構築したネットワークを視覚的に把握できる。具体的には、図１７のネットワーク構築支援ウィンドウは、機器追加ボタンと、ネットワーク図と、コンソールウィンドウと、機器情報一覧とを含む。学習者が機器追加ボタンから通信機器を選択してネットワーク図へドラッグアンドドロップすると、ネットワーク構築演習装置は、ユーザモードリナックスを実行することにより、選択された通信機器に対応する仮想デバイスの機能を実行する。また、ネットワーク図上には、通信機器で構成される仮想トポロジが表示される。ここで、各通信機器は対応するアイコン画像で表され、通信機器どうしの接続は通信機器間を線で接続することで表現されている。学習者が、ネットワーク図上で２つの通信機器のアイコン間をマウスによって選択すると、通信機器間が線で接続される。さらに、ネットワーク構築演習装置は、学習者によって接続動作が行われた２つの通信機器に対応する仮想デバイスを互いに通信可能なように接続する。
【０００８】
さらに、図１７において、学習者がコンソールウィンドウのコマンド入力欄に設定のためのコマンドを入力すると、ネットワーク構築演習装置は、学習者によって入力されたコマンドに基づいて、各仮想デバイスの設定を行う。各仮想デバイスからの出力メッセージは、コンソールウィンドウ上に表示される。また、機器情報一覧には、仮想デバイス名、仮想デバイスの種類、インタフェース名、ＩＰ（Internet Protocol）アドレス、ネットマスク、インタフェースの状態、ポートの設定及びＶＬＡＮ（Virtual Local Area Network）などの各仮想デバイスのインタフェースの情報が表示される。
【０００９】
さらに、従来技術に係るネットワーク構築演習装置は、以下の機能を有する。
（１）通信ログ表示機能：通信ログ表示機能は、各仮想デバイスのネットワークインタフェースを通過したパケットを一覧表示し、選択されたパケットの持つ情報を、プロトコルの仕様と合わせて表示する機能である。この機能により、学習者は、構築した仮想ネットワークの通信情報を用いて、書籍や資料によって得られた通信プロトコルに関する知識を視覚的に確認できる。具体的には、通信ログは、簡易表示画面、詳細表示画面、又は１６進数表示画面に表示される。簡易表示画面には、宛先ＩＰアドレス及び用いられている通信プロトコルなどの基本的な情報が表示される。また、詳細表示画面には、各パケットの全ての情報が表示される。さらに、１６進数表示画面には、パケットのヘッダ情報が１６進数で項目ごとに色分けして表示されるので、学習者は、通信プロトコルに応じて定められたデータ構造と合わせてパケットの内容を確認できる。また、各ログ表示画面において、プロトコル、レイヤ及び入出力の方向でフィルタリングして通信ログを表示できる。
【００１０】
（２）アニメーション機能：アニメーション機能は、パケットを、プロトコル名が付記されたアイコン画像で表現してネットワーク図上を移動させることで，パケットの通信経路を視覚的に表示する機能である。アニメーション機能は、各仮想デバイスをパケットが通過するときに、パケットのヘッダ情報をダイアログ表示する機能を含む。これにより、学習者は、ルータやスイッチのルーティングの設定変更によるパケットの通信経路の変化を視覚的に確認できる。図１８は、従来技術に係るネットワーク構築演習装置のディスプレイに表示されるアニメーションの表示例である。
【００１１】
（３）学習者が構築した仮想ネットワークの情報をネットワーク定義ファイルとして保存する一方、保存されたネットワーク定義ファイルを読み込んで仮想ネットワークを再現するネットワーク保存及び再現機能。
【００１２】
従来技術に係るネットワーク構築演習装置によれば、学習者は、実機を用いたネットワークの構築演習と比較して、高価な実習用機材を用意することなく、たった１台の実ホスト装置を用意するだけで、より手軽にかつ低コストでネットワーク構築演習を実施できる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００５−６２３５号公報。
【非特許文献】
【００１４】
【非特許文献１】Cisco System Incorporated, "Cisco Networking Academy", [online],［２０１０年６月１１日検索］, インターネット＜http://www.cisco.com/web/learning/netacad＞。
【非特許文献２】上田拓実ほか、「仮想Linux環境を用いたネットワーク教育システムにおける通信可視化機能とネットワーク保存・再現機能の開発」、マルチメディア、分散、協調とモバイルシンポジウム（ＤＩＣＯＭＯ２００８）、２００８年７月、ｐ．５４５−５５２。
【非特許文献３】早川正昭ほか、「ＬＡＮ構築シュミレータの開発と教育手法の改善」、教育システム情報学会第２６回全国大会講演論文集、２００１年８月、第Ｅ５−４巻、ｐｐ．３６７−３６８。
【非特許文献４】宮地利幸ほか、「ネットワーク実験支援ソフトウェアの汎用アーキテクチャの提案」、情報処理学会論文誌、２００７年４月、第４８巻、第４号、ｐｐ．１６９５−１７０９。
【非特許文献５】Abler, R. et al., "Georgia tech information security center hands-on network security laboratory", Education, February 2006, IEEE Transactions, Vol.49, No.1, pp. 82-87.
【非特許文献６】Bruce, K. et al., "A Virtual Learning Environment for Real-World networking", June 2003, Proceeding of Informing Science + IT Education Conference 2003.
【非特許文献７】Steve, L. et al., "Virtual Networking Lab(VNL):its concepts and implementation", June 2001, Proceedings of the 2001 American Society for Engineering Education Annual Conference & Exposition.
【非特許文献８】Fermin, G. et al., "Distributed Virtualization Scenarios Using VNUML", October 2007, Proceedings of the First System and Virtualization Management Workshop (SVM'07).
【非特許文献９】Benamin, A. et al., "Xen Worlds; Xen and the Art of Computer Engineering Education", June 2006, Proceedings of 2006 ASEE Annual Conference and Exposition.
【非特許文献１０】立岩佑一郎ほか、「仮想環境ソフトウェアに基づくLAN 構築技能とTCP/IP理論の関連付けのためのネットワーク動作可視化システムの開発、情報処理学会論文誌、２００７年４月、第４８巻、第４号、ｐｐ．１６８４−１６９４。
【非特許文献１１】荒井正之ほか、「ＴＣＰ／ＩＰプロトコル学習ツールの開発と評価」、２００３年１２月、情報処理学会論文誌、第４４巻、第１２号、ｐｐ．３４４２−３２５１。
【非特許文献１２】中川泰宏ほか「ＶＭｗａｒｅを利用した学習用ＬＡＮ構築支援システムの開発、２００７年４月、教育システム情報学会誌、第２４巻、第２号、ｐｐ．１２６−１３６。
【発明の概要】
【発明が解決しようとする課題】
【００１５】
従来技術に係るネットワーク構築演習装置によって、学習者はいつでも手軽に演習を行うことができるようになった。しかしながら、従来技術に係るネットワーク構築演習装置によれば、学習者は、構築した仮想ネットワークにおいて所望の通信が行われるか否かを確認できたものの、所望の通信が行われないときに、仮想ネットワーク内のどの仮想デバイスのどの設定をやり直せばよいのか判断することが難しかった。
【００１６】
また、トラブルシューティングは、技術者が通信の障害箇所の特定及び修復などのネットワークトラブルを早期に解決する能力を養う上で重要な学習である。しかしながら、従来技術に係るネットワーク構築演習装置では、指導者が、所定のネットワークトラブルを解決する課題を複数の学習者に対して課したい場合、各学習者のネットワーク構築演習装置において、パケットデータの送受信を行えない不完全な仮想ネットワークをあらかじめ構築しておく必要があった。このため、指導者は学習者に対して効率的にネットワーク構築の課題を課すことができず、学習者は効率的に学習を行うことができなかった。
【００１７】
本発明の目的は以上の問題点を解決し、従来技術に比較して効率的に学習者に対してネットワーク構築演習の課題を課し、学習者が効率的にネットワーク構築演習を行うことができるネットワーク構築演習装置及びその制御方法を提供することにある。さらに、本発明の別の目的は、上記ネットワーク構築演習方法のステップを含むプログラム、並びに、当該プログラムを格納したコンピュータにより読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【００１８】
第１の発明に係るネットワーク構築演習装置は、パケットデータを用いて通信を行うパケット交換ネットワークを構築する演習を行うネットワーク構築演習装置であって、
所定の演習課題の正答となる複数の仮想デバイスの設定項目毎の設定情報を含む演習課題ファイルを格納する第１の記憶手段と、
上記ネットワーク構築演習装置の動作を制御する制御手段と、
学習者又は指導者により入力される指示コマンド及びデータを入力するための入力手段とを備え、
上記演習課題ファイルは、仮想デバイスの設定情報を設定項目毎にタグ付けして階層的に記述したテキストファイルであり、
上記制御手段は、
上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドに基づいて、上記各仮想デバイス毎に当該仮想デバイスの設定情報を含む設定情報ファイルを生成するステップと、
上記各仮想デバイス毎に生成された設定情報ファイルを、上記各仮想デバイスの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルである答案ファイルに変換するステップと、
上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するステップとを実行することを特徴とする
【００１９】
上記ネットワーク構築演習装置において、上記第１の記憶手段は、（ａ）上記ネットワーク構築演習装置の全体の動作を制御するためのオペレーティングシステムのプログラムと、（ｂ）パケットデータを用いて通信を行う通信機器を仮想的に実現するための仮想デバイスの機能を実行する仮想デバイスプログラムとをさらに格納し、
上記ネットワーク構築演習装置は、上記仮想プログラムを実行したときに、上記仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを格納する第２の記憶手段をさらに備え、
上記演習課題ファイルは、上記各仮想デバイスの設定情報に誤りがあり演習課題となる演習用仮想ネットワークにおける上記各仮想デバイスの設定情報と、上記各仮想デバイス間の接続情報とをさらに含み、
上記制御手段は、上記設定情報ファイルを生成するステップを実行する前に、上記オペレーティングシステムのプログラムを実行し、上記演習課題ファイルに含まれる上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報に基づいて、上記オペレーティングシステム上で、上記各仮想デバイス毎に上記仮想デバイスプログラムを実行することにより、上記各仮想デバイスが動作するように、上記各仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを上記第２の記憶手段に格納し、これにより、上記演習用仮想ネットワークを構築するステップを実行し、
上記設定情報ファイルを生成するステップは、上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドを実行することにより、上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報を変更するステップをさらに含むことを特徴とする。
【００２０】
また、上記ネットワーク構築演習装置において、上記制御手段は、上記演習用仮想ネットワークを構築するステップを実行する前に、上記指導者により上記入力手段から入力される（ａ）上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報と、（ｂ）上記演習課題の正答となる上記各仮想デバイスの設定情報とに基づいて、上記演習課題ファイルを自動的に生成して上記第１の記憶手段に格納するステップを実行することを特徴とする。
【００２１】
さらに、上記ネットワーク構築演習装置において、上記オペレーティングシステムのプログラムはリナックス（登録商標）であり、
上記仮想デバイスプログラムはユーザモードリナックスであることを特徴とする。
【００２２】
またさらに、上記ネットワーク構築演習装置において、上記比較の結果を出力し又は表示するステップは、上記各仮想デバイス毎に、上記各設定項目に対応するタグを階層的に比較することにより、上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較することを特徴とする。
【００２３】
また、上記ネットワーク構築演習装置において、上記演習課題ファイル及び上記答案ファイルは、ＸＭＬ（eXtensible Markup Language）形式で生成されたことを特徴とする。
【００２４】
さらに、上記ネットワーク構築演習装置において、上記各仮想デバイスの機能は、ルーティング機能又はパケットデータの送受信機能であることを特徴とする。
【００２５】
第２の発明に係るネットワーク構築演習装置のための制御方法は、パケットデータを用いて通信を行うパケット交換ネットワークを構築する演習を行うネットワーク構築演習装置のための制御方法であって、
上記ネットワーク構築演習装置は、
所定の演習課題の正答となる複数の仮想デバイスの設定項目毎の設定情報を含む演習課題ファイルを格納する第１の記憶手段と、
上記ネットワーク構築演習装置の動作を制御する制御手段と、
学習者又は指導者により入力される指示コマンド及びデータを入力するための入力手段とを備え、
上記演習課題ファイルは、仮想デバイスの設定情報を設定項目毎にタグ付けして階層的に記述したテキストファイルであり、
上記制御方法は、
上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドに基づいて、上記各仮想デバイス毎に当該仮想デバイスの設定情報を含む設定情報ファイルを生成するステップと、
上記各仮想デバイス毎に生成された設定情報ファイルを、上記各仮想デバイスの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルである答案ファイルに変換するステップと、
上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するステップとを含み、
上記制御方法の各ステップは上記制御手段により実行されることを特徴とする。
【００２６】
上記ネットワーク構築演習装置のための制御方法において、上記第１の記憶手段は、（ａ）上記ネットワーク構築演習装置の全体の動作を制御するためのオペレーティングシステムのプログラムと、（ｂ）パケットデータを用いて通信を行う通信機器を仮想的に実現するための仮想デバイスの機能を実行する仮想デバイスプログラムとをさらに格納し、
上記ネットワーク構築演習装置は、上記仮想プログラムを実行したときに、上記仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを格納する第２の記憶手段をさらに備え、
上記演習課題ファイルは、上記各仮想デバイスの設定情報に誤りがあり演習課題となる演習用仮想ネットワークにおける上記各仮想デバイスの設定情報と、上記各仮想デバイス間の接続情報とをさらに含み、
上記制御方法は、上記設定情報ファイルを生成するステップを実行する前に、上記制御手段により、上記オペレーティングシステムのプログラムを実行し、上記演習課題ファイルに含まれる上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報に基づいて、上記オペレーティングシステム上で、上記各仮想デバイス毎に上記仮想デバイスプログラムを実行することにより、上記各仮想デバイスが動作するように、上記各仮想デバイスの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとを上記第２の記憶手段に格納し、これにより、上記演習用仮想ネットワークを構築するステップを実行することをさらに含み、
上記設定情報ファイルを生成するステップは、上記学習者により、上記入力手段から、上記各仮想デバイスの設定項目毎に、上記演習課題に対する解答として入力される設定情報を設定するための設定コマンドを実行することにより、上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報を変更するステップをさらに含むことを特徴とする。
【００２７】
また、上記ネットワーク構築演習装置のための制御方法において、上記制御手段は、上記演習用仮想ネットワークを構築するステップを実行する前に、上記指導者により上記入力手段から入力される（ａ）上記演習用仮想ネットワークにおける上記各仮想デバイスの設定情報及び上記各仮想デバイス間の接続情報と、（ｂ）上記演習課題の正答となる上記各仮想デバイスの設定情報とに基づいて、上記演習課題ファイルを自動的に生成して上記第１の記憶手段に格納するステップを実行することを特徴とする。
【００２８】
さらに、上記ネットワーク構築演習装置のための制御方法において、上記オペレーティングシステムのプログラムはリナックス（登録商標）であり、
上記仮想デバイスプログラムはユーザモードリナックスであることを特徴とする。
【００２９】
またさらに、上記ネットワーク構築演習装置のための制御方法において、上記比較の結果を出力し又は表示するステップは、上記各仮想デバイス毎に、上記各設定項目に対応するタグを階層的に比較することにより、上記演習課題ファイルに含まれる上記演習課題の正答となる上記各仮想デバイスの設定情報と、上記答案ファイルに含まれる上記各仮想デバイスの設定情報とを比較することを特徴とする。
【００３０】
また、上記ネットワーク構築演習装置のための制御方法において、上記演習課題ファイル及び上記答案ファイルは、ＸＭＬ形式で生成されたことを特徴とする。
【００３１】
さらに、上記ネットワーク構築演習装置のための制御方法において、上記各仮想デバイスの機能は、ルーティング機能又はパケットデータの送受信機能であることを特徴とする。
【００３２】
第３の発明に係るプログラムは、上記ネットワーク構築演習装置の制御方法における各ステップを含むことを特徴とする。
【００３３】
第４の発明に係るコンピュータで読み取り可能な記録媒体は、上記プログラムを格納したことを特徴とする。
【発明の効果】
【００３４】
本発明に係るネットワーク構築演習装置及びその制御方法によれば、演習課題ファイルに含まれる演習課題の正答となる上記各仮想デバイスの設定情報と、答案ファイルに含まれる上記仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するので、従来技術に比較して効率的に学習者に対してネットワーク構築演習の課題を課し、学習者が効率的にネットワーク構築演習を行うことができる。また、上記ネットワーク構築演習方法のステップを含むプログラム、並びに、当該プログラムを格納したコンピュータにより読み取り可能な記録媒体を提供できる。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施形態に係るネットワーク構築演習装置１の構成を示すブロック図である。
【図２】図１のＣＰＵ２によって実行される、演習課題ファイル１３−ｎを生成するための演習課題ファイル生成処理を示すフローチャートである。
【図３】図１のＣＰＵ２によって実行される自動採点処理を示すフローチャートである。
【図４】図１の演習課題ファイル１３−１〜１３−Ｎ及び答案ファイル１５において用いられるタグの定義を示す表である。
【図５】図２の演習課題ファイル生成処理によって生成された演習課題ファイル１３−１の一例を示すブロック図である。
【図６】図１において仮想デバイス４−１が仮想ホストＨｏｓｔ０であるときの、設定情報ファイル１４−１の一例を示すブロック図である。
【図７】図１において仮想デバイス４−２が仮想ルータＲｏｕｔｅｒ０であるときの、設定情報ファイル１４−２の一例を示すブロック図である。
【図８】図６及び図７の設定情報ファイル１４−１及び１４−２に基づいて生成される答案ファイル１５の一例を示すブロック図である。
【図９】図３のステップＳ１８において、図５の演習課題ファイル１３−１の正答仮想ネットワークの設定情報記述部１０３の内容と、図８の答案ファイル１５の答案仮想ネットワークの設定情報記述部２００の内容とを比較したときの、比較結果を示すブロック図である。
【図１０】図２のステップＳ１においてディスプレイ６に表示される初期設定ウィンドウの表示例である。
【図１１】図２のステップＳ１においてディスプレイ６に表示される演習用ネットワーク設定ウィンドウの表示例である。
【図１２】図２のステップＳ１においてディスプレイ６に表示される、仮想ホストの正答情報設定ウィンドウの表示例である。
【図１３】図２のステップＳ１においてディスプレイ６に表示される、仮想ルータの正答情報設定ウィンドウの表示例である。
【図１４】図３のステップＳ１１においてディスプレイ６に表示される自動採点ウィンドウの表示例である。
【図１５】図３のステップＳ１４においてディスプレイ６に表示される設定用コンソールウィンドウの表示例である。
【図１６】図３のステップＳ１９において、図５の演習課題ファイル１３−１及び図８の答案ファイル１５に基づいてディスプレイ６に表示されるチェックリスト欄の表示例である。
【図１７】従来技術に係るネットワーク構築演習装置のディスプレイに表示されるネットワーク構築支援ウィンドウの表示例である。
【図１８】従来技術に係るネットワーク構築演習装置のディスプレイに表示されるアニメーションの表示例である。
【発明を実施するための形態】
【００３６】
以下、本発明に係る実施形態について図面を参照して説明する。なお、以下の各実施形態において、同様の構成要素については同一の符号を付している。
【００３７】
図１は、本発明の実施形態に係るネットワーク構築演習装置１の構成を示すブロック図である。また、図２は、図１のＣＰＵ２によって実行される、演習課題ファイル１３−ｎを生成するための演習課題ファイル生成処理を示すフローチャートであり、図３は、図１のＣＰＵ２によって実行される自動採点処理を示すフローチャートである。図１において、ネットワーク構築演習装置１は、例えばパーソナルコンピュータなどのディジタル計算機であって、学習者がパケットデータを用いて通信を行うパケット交換ネットワークを構築する演習を行うための端末装置として用いられる。ネットワーク構築演習装置１は、ＣＰＵ（Central Processing Unit）２と、ＲＯＭ（Read Only Memory）３と、ＲＡＭ（Random Access Memory）４と、ハードディスクドライブ５と、ディスプレイ６と、操作入力部７とを備えて構成される。ＣＰＵ２は、バスを介してＲＯＭ３、ＲＡＭ４、ハードディスクドライブ５、ディスプレイ６、及び操作入力部７と接続されていてそれらの各動作及びネットワーク構築演習装置１の全体の動作を制御するほか、種々のソフトウェアの機能を実行する。また、ディスプレイ６は、液晶表示装置（ＬＣＤ（Liquid Crystal Display））又はＣＲＴ（Cathode Ray Tube）ディスプレイなどの表示装置であり、ネットワーク構築演習装置１の動作状態の表示及び種々のＧＵＩプログラムのための表示装置として機能する。さらに、操作入力部７は、例えば、マウスなどのポインティングデバイス及びキーボードなどの文字入力手段を含み、ネットワーク構築演習装置１のユーザ（指導者又は学習者）がデータ及び指示コマンドなどを入力するためのものである。
【００３８】
図１において、ＲＯＭ３は、ネットワーク構築演習装置１の動作に必要であってＣＰＵ２によって実行される種々のソフトウェアのプログラムを予め格納する。また、ハードディスクドライブ５は、記録媒体を内蔵する記憶装置であり、ＣＰＵ２が実行するＯＳのプログラム８と、仮想デバイスプログラム９と、演習課題ファイル生成プログラム１１及び自動採点プログラム１２を含むネットワーク構築演習プログラム１０とを予め格納する。また、ハードディスクドライブ５は、詳細後述するＮ個（Ｎは正の整数である。）の演習課題ファイル１３−１，１３−２，…，１３−Ｎと、複数Ｍ個（Ｍは２以上の整数である。）の設定情報ファイル１４−１，１４−２，…，１４−Ｍと、答案ファイル１５とを格納する。さらに、ＲＡＭ４は、ＳＲＡＭ（Static RAM）、ＤＲＡＭ（Dynamic RAM）、ＳＤＲＡＭ（Synchronous DRAM）などで構成され、ＣＰＵ２のワーキングエリアとして使用されて、各プログラムなど８〜１２を実行したときに、当該実行するプログラムに対応する機能を実行するために必要な実行プログラムとそれを実行するために必要なデータ及び実行時に発生する一時的なデータを格納する。
【００３９】
次に、ハードディスクドライブ５に格納される各プログラムなど８〜１２を説明する。図１において、ＯＳのプログラム８は、ネットワーク構築演習装置１の全体の動作を制御して、ネットワーク構築演習装置１のシステム管理を行い、基本的なユーザ操作環境を提供する基本ソフトウェアのプログラムである。ＣＰＵ２は、ネットワーク構築演習装置１の電源が投入されると、ＯＳのプログラム８を実行することにより、ネットワーク構築演習装置１の全体の動作を制御する。本実施形態において、ＯＳのプログラム８は、リナックス（登録商標）のプログラムである。
【００４０】
また、仮想デバイスプログラム９は、具体的には、ユーザモードリナックス（UserModeLinux。以下、ＵＭＬともいう。）であって、パケットデータを用いて通信を行う通信機器を仮想的に実現するための仮想デバイスの機能を実行する仮想ＯＳのプログラムである。ＣＰＵ２は、オペレーティングシステム上で仮想デバイスプログラム９を実行することにより、仮想デバイス４−ｍ（ｍ＝１，２，…，Ｍ）が動作するように、仮想デバイス４−ｍの機能を実行するために必要な実行プログラムとそれを実行するために必要なデータとをＲＡＭ４のワーキングエリアに格納する。図１において、仮想デバイスプログラム９の実行時に用いられるワーキングエリアを、「仮想デバイス４−ｍ」として示す。ここで、ユーザモードリナックスは、リナックス（Linux（登録商標））のプログラムをＯＳのプログラム８として実行する実ホスト装置において、別のリナックス（登録商標）をユーザモードプロセスとして実行するためのプログラムである。また、本実施形態において、仮想デバイス４−ｍの機能は、パケットデータのルーティング機能又はパケットデータの送受信機能である。以下、ルーティング機能を実行する仮想的なルータの仮想デバイス４−ｍを仮想ルータといい、パケットデータの送受信機能を実行する仮想的なホスト装置の仮想デバイス４−ｍを仮想ホストという。
【００４１】
さらに、ネットワーク構築演習プログラム１０は、非特許文献２に記載の従来技術に係るネットワーク構築演習プログラム（イーネットラボ（e-Netlab））に対して、図２を参照して詳細後述する演習課題ファイル生成プログラム１１と、図３を参照して詳細後述する自動採点プログラム１２とを追加したものである。ネットワーク構築演習プログラム１０は、上述した通信ログ表示機能、アニメーション機能並びにネットワーク保存及び再現機能を実行するための各プログラムを含む。なお、ネットワーク構築演習プログラム１０と、演習課題ファイル生成プログラム１１と、自動採点プログラム１２とは、それぞれ、プログラミング言語であるジャバ（Ｊａｖａ（登録商標））で記述されている。
【００４２】
次に、図２を参照して、ＣＰＵ２によって実行される演習課題ファイル生成処理を説明する。演習課題ファイル生成処理は、図１の演習課題ファイル１３−ｎを生成するための処理である。演習課題１３−ｎは、（ａ）各仮想デバイス４−１〜４−Ｍの設定情報に誤りがあり学習者に課される演習課題となる演習用仮想ネットワークにおける各仮想デバイス４−１〜４−Ｍの設定情報と、各仮想デバイス４−１〜４−Ｍ間の接続情報と、（ｂ）演習課題の正答となる仮想デバイス４−１〜４−Ｍの設定項目毎の設定情報とを含む。演習用仮想ネットワークでは、各仮想デバイス４−１〜４−Ｍの設定情報に誤りがあるので、パケットデータの送受信ができず、又は、パケットデータが所望の通信経路を通らない。ここでは、仮想デバイス４−１及び４−２を含む演習用仮想ネットワークにおいて、仮想デバイス４−１に対応する仮想ホストＨｏｓｔ０に対してＩＰアドレス１９２．１６８．０．１／２４を割り当て、かつ、デフォルトゲートウェイを設定し、仮想デバイス４−２に対応する仮想ルータＲｏｕｔｅｒ０に対してＩＰアドレス１９２．１６８．０．１０１／２４を割り当て、かつ、特権パスワードｃｉｓｃｏを設定する演習課題を学習者に対して課すための演習課題ファイル１３−１を生成する場合を例に挙げて、演習課題ファイル生成処理を説明する。
【００４３】
図２のステップＳ１において、指導者がネットワーク構築演習装置１の操作入力部７を用いて、演習課題ファイル１３−ｎを生成するための所定の操作（例えば、ディスプレイ６に表示されている所定のアイコンをクリックする、又は、ディスプレイ６に表示されているコンソールウィンドウにおいて所定のコマンドを入力するなど。）を行うと、これに応答して、ＣＰＵ２は、演習課題ファイル生成プログラム１１を実行する。これにより、ディスプレイ６に、初期設定ウィンドウ及び演習用ネットワーク設定ウィンドウが表示される。図１０は、図２のステップＳ１においてディスプレイ６に表示される初期設定ウィンドウの表示例である。図１０に示すように、初期設定ウィンドウは、指導者が課題名（図１０では、「デモ用課題」である。）を入力するためのテキストボックスと、指導者が課題内容を入力するためのテキストボックスとを含む。
【００４４】
また、図１１は、図２のステップＳ１においてディスプレイ６に表示される演習用ネットワーク設定ウィンドウの表示例である。演習用ネットワーク設定ウィンドウは、学習者が、詳細後述する自動採点プログラム１２を実行して演習課題ファイル１３−ｎの演習課題に解答するときに始めに構築される、演習用仮想ネットワークのトポロジ（接続形態）の情報と各仮想デバイス４−１〜４−Ｍの設定情報とを、指導者が設定するためのものである。図１１に示すように、演習用ネットワーク設定ウィンドウは、機器追加リストと、ネットワーク図と、機器情報一覧とを含む。ここで、機器追加リストは、仮想ルータを表すルータボタン（Router）と、仮想ホストを表すホストボタン（Host）とを含む。指導者が機器追加リストのボタンを選択してネットワーク図にドラッグアンドドロップすると、ネットワーク図に、ドラッグアンドドロップされたボタンに対応する仮想デバイスのアイコンが表示される。また、指導者が、ネットワーク図上で２つの仮想デバイスのアイコン間をマウスによって選択すると、２つのアイコン間が線で接続される。図１１の例では、ネットワーク図上に、ネットワークインタフェースｅｔｈ０を有する仮想ホストＨｏｓｔ０である仮想デバイス４−１と、ネットワークインタフェースｅｔｈ０を有するルータＲｏｕｔｅｒ０である仮想デバイス４−２とが接続されて表示されている。また、機器情報一覧に、仮想ホストＨｏｓｔ０及び仮想ルータＲｏｕｔｅｒ０の各ネットワークインタフェースの状態が「無効（ｄｏｗｎ）」に設定されていることが示されている。
【００４５】
図１１において、指導者がネットワーク図上の仮想デバイスを右クリックすると、右クリックされた仮想デバイスに対応する正答情報設定ウィンドウがディスプレイ６に表示される。ここで、正答情報設定ウィンドウは、演習課題の正答（模範解答）となる各仮想デバイス４−１〜４−Ｍの設定情報を設定項目毎に入力するためのものである。以下、正答となる設定情報をそれぞれ設定された仮想デバイス４−１〜４−Ｍを含む演習用仮想ネットワークを正答仮想ネットワークという。図１２は、図２のステップＳ１においてディスプレイ６に表示される、仮想ホストの正答情報設定ウィンドウの表示例である。図１２に示すように、仮想ホストの正答情報設定ウィンドウは、指導者が以下の設定項目の設定情報を入力できるように構成されている。
（ａ）ネットワークインタフェース。
（ａ１）ＩＰアドレス、
（ａ２）ネットマスク、
（ａ３）デフォルトゲートウェイ、
（ａ４）状態（有効又は無効）、
（ｂ）静的ルーティングの設定。
【００４６】
図１３は、図２のステップＳ１においてディスプレイ６に表示される、仮想ルータの正答情報設定ウィンドウの表示例である。図１３に示すように、仮想ルータの正答情報設定ウィンドウは、指導者が以下の設定項目の設定情報を入力できるように構成されている。
（ａ）ネットワークインタフェース。
（ａ１）ＩＰアドレス、
（ａ２）ネットマスク、
（ａ３）デフォルトゲートウェイ、
（ａ４）状態（有効又は無効）、
（ｂ）特権パスワード。
（ｃ）静的ルーティングの設定。
（ｄ）動的ルーティングの設定（ＲＩＰ又はＯＳＰＦ）。
【００４７】
図２に戻り参照すると、ステップＳ１に続いて、ステップＳ２において、指導者が初期設定ウィンドウと、演習用ネットワーク設定ウィンドウと、各仮想デバイスの正答情報設定ウィンドウを用いて、課題名と、課題内容と、演習用仮想ネットワークの設定情報と、正答仮想ネットワークの各仮想デバイス４−１〜４−Ｍの各設定情報（以下、正答仮想ネットワークの設定情報という。）とを入力したか否かが判断され、ＹＥＳのときはステップＳ３に進む一方、ＮＯのときはステップＳ２の処理を繰り返す。
【００４８】
そして、ステップＳ３において、ＣＰＵ２は、入力された課題名と、課題内容と、演習用仮想ネットワークの設定情報と、正答仮想ネットワークの設定情報とを含むＸＭＬ形式の演習課題ファイル１３−ｎを自動的に生成して、ハードディスクドライブ５に格納して、演習課題ファイル１３−ｎを生成するための演習課題ファイル生成処理を終了する。
【００４９】
図５は、図２の演習課題ファイル生成処理によって生成された演習課題ファイル１３−１の一例を示すブロック図である。また、図４は、図１の演習課題ファイル１３−１〜１３−Ｎ及び答案ファイル１５において用いられるタグの定義を示す表である。図１において、演習課題ファイル１３−１〜１３−Ｎ及び答案ファイル１５はそれぞれ、仮想デバイス４−１〜４−Ｍの設定情報を設定項目毎に図４に示すようにタグ付けして階層的に記述したＸＭＬ形式のテキストファイルである。図５に示すように、演習課題ファイル１３−１は、課題名及び課題内容記述部１０１と、演習用仮想ネットワークの設定情報記述部１０２と、正答仮想ネットワークの設定情報記述部１０３とを含む。ここで、課題名及び課題内容記述部１０１は、課題名タグｎａｍｅと、課題内容タグｅｘｐｌａｉｎとを含む。課題名タグｎａｍｅの内容は、指導者が初期設定ウィンドウのテキストボックス（図１０参照。）に入力した課題名「デモ用課題」であり、課題内容タグｅｘｐｌａｉｎの内容は、指導者が初期設定ウィンドウのテキストボックス（図１０参照。）に入力した以下の課題内容である。
【００５０】
以下のように設定せよ．
〈IPアドレスの割り当て〉
Host0：192.168.0.1/24
Router0:192.168.0.101/24
〈ホストの設定〉
デフォルトゲートウェイの設定
〈ルータの設定〉
特権パスワード：cisco
【００５１】
また、図５において、演習用仮想ネットワークの設定情報記述部１０２は、仮想ホストＨｏｓｔ０と仮想ルータＲｏｕｔｅｒ０の接続情報記述部１０２−１と、仮想ホストＨｏｓｔ０の設定情報記述部１０２−２と、仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０２−３とを含む。ここで、仮想ホストＨｏｓｔ０と仮想ルータＲｏｕｔｅｒ０の接続情報１０２−１は、演習用仮想ネットワークのトポロジを指定するためのケーブルタグｌｉｎｅを含む。ケーブルタグｌｉｎｅの内容は、演習用ネットワーク設定ウィンドウ（図１１参照。）のネットワーク図に基づいて記述される。例えば、図５に示す例では、図１１の演習用ネットワーク設定ウィンドウのネットワーク図に基づいて、ケーブルタグｌｉｎｅを用いて、仮想ルータＲｏｕｔｅｒ０のネットワークインタフェースｅｔｈ０と、仮想ホストＨｏｓｔ０のネットワークインタフェースｅｔｈ０とを接続することが記述されている。さらに、仮想ホストＨｏｓｔ０の設定情報記述部１０２−２には、仮想デバイスタグｖｍを用いて、仮想ホストのホスト名Ｈｏｓｔ０と、仮想ホストのネットワークインタフェースｅｔｈ０を無効（ｄｏｗｎ）に設定することとが記述されている。また、仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０２−３には、仮想デバイスタグｖｍを用いて、仮想ルータのルータ名Ｒｏｕｔｅｒ０と、仮想ルータのネットワークインタフェースｅｔｈ０を無効（ｄｏｗｎ）に設定することとが記述されている。仮想ホストＨｏｓｔ０の設定情報記述部１０２−２及び仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０２−３はそれぞれ、図１１に示すような演習用ネットワーク設定ウィンドウの機器情報一覧の内容に基づいて、あるいは、所定のデフォルト値に基づいて記述される。
【００５２】
さらに、図５において、正答仮想ネットワークの設定情報記述部１０３は、正答仮想ネットワークタグｖｍ＿ｃａを用いて記述されており、仮想ホストＨｏｓｔ０の設定情報記述部１０３−１と、仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０３−２とを含む。ここで、仮想ホストＨｏｓｔ０の設定情報記述部１０３−１の内容は、仮想ホストの正答情報設定ウィンドウ（図１２参照。）に入力された設定値に基づいて記述され、仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０３−２の内容は、仮想ルータの正答情報設定ウィンドウ（図１３参照。）に入力された設定値に基づいて記述される。図５に示した例では、仮想ホストＨｏｓｔ０の設定情報記述部１０３−１には、仮想ホストがホスト名Ｈｏｓｔ０を有することと、有効（ｕｐ）なネットワークインタフェースｅｔｈ０を有することと、ネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．１であることと、ネットマスクが２５５．２５５．２５５．０であることと、デフォルトゲートウェイが１９２．１６８．０．１０１であることとが記述されている。また、仮想ルータＲｏｕｔｅｒ０の設定情報記述部１０３−２には、仮想ルータが仮想ルータ名Ｒｏｕｔｅｒ０を有することと、有効（ｕｐ）なネットワークインタフェースｅｔｈ０を有することと、ネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．１０１であることと、ネットマスクが２５５．２５５．２５５．０であることと、特権パスワードがｃｉｓｃｏであることとが記述されている。
【００５３】
以上説明したように、ＣＰＵ２は、図２の演習課題ファイル生成処理を実行することにより、指導者により操作入力部７から入力される（ａ）演習用仮想ネットワークにおける各仮想デバイス４−１〜４−Ｍの設定情報及び各仮想デバイス４−１〜４−Ｍ間の接続情報と、（ｂ）演習課題の正答となる各仮想デバイス４−１〜４−Ｍの設定情報とに基づいて、演習課題ファイル１３−ｎを自動的に生成してハードディスクドライブ５に格納する。
【００５４】
次に、図３を参照して、ＣＰＵ２によって実行される自動採点処理を説明する。自動採点処理は、図２の演習課題ファイル生成処理によって予めハードディスクドライブ５に格納された演習課題ファイル１３−１〜１３−Ｎを用いて、学習者が演習課題に解答し、解答結果を自動的に評価するための処理である。図３のステップＳ１１において、学習者がネットワーク構築演習装置１の操作入力部７を用いて、自動採点プログラム１２を実行するための所定の操作（例えば、ディスプレイ６に表示されている所定のアイコンをクリックする、又は、ディスプレイ６に表示されているコンソールウィンドウにおいて所定のコマンドを入力するなど。）を行うと、これに応答して、ＣＰＵ２は、自動採点プログラム１２を実行する。これにより、ＣＰＵ２は、演習課題ファイル１３−１〜１３−Ｎをハードディスクドライブ５から読み出し、読み出された各演習課題ファイル１３−１〜１３−Ｎのファイル名と課題内容との関係を示す課題選択テーブル及び課題内容の説明文を含む課題選択タブと、結果タブと、ネットワーク図とを含む自動採点ウィンドウを、ディスプレイ６に表示する。図１４は、図３のステップＳ１１においてディスプレイ６に表示される自動採点ウィンドウの表示例である。図１４に示す例では、課題選択テーブルには、ハードディスクドライブ５に格納されている２つの演習課題ファイル１３−１及び１３−２の各課題名及び課題内容記述部１０１の内容に基づいて、課題内容「ＲＩＰルーティング」及び「デモ用課題」が表示されている。学習者が、課題選択テーブルをクリックして１つの課題を選択すると、選択された課題の演習課題ファイル１３−１の演習用仮想ネットワークの設定情報記述部１０２の内容に基づいて、自動採点ウィンドウにネットワーク図が表示され、課題名及び課題内容記述部１０１の内容に基づいて、自動採点ウィンドウに課題内容が表示される。さらに、「演習開始」ポップアップメニューが表示され、演習者は、「演習開始」ポップアップメニューを選択することにより、１つの演習課題ファイル１３−ｎを選択できる。
【００５５】
次に、図３において、ステップＳ１１に続いて、ステップＳ１２において、学習者が１つの演習課題ファイル１３−ｎを選択したか否かが判断され、ＹＥＳのときはステップＳ１３に進む一方、ＮＯのときはステップＳ１２の処理を繰り返す。ステップＳ１３において、ＣＰＵ２は、選択された演習課題ファイル１３−ｎの演習用仮想ネットワークの設定情報記述部１０２の内容に基づいて、演習用仮想ネットワークを構築する。具体的には、ＣＰＵ２は、演習課題ファイル１３−ｎの仮想デバイスタグｖｍに基づいて、演習用仮想ネットワークを構成する各仮想デバイス４−１〜４−Ｍの設定情報を抽出し、抽出された各設定情報に基づいて各仮想デバイス４−１〜４−Ｍが動作するように、各仮想デバイス４−１〜４−Ｍ毎に仮想デバイスプログラム９を実行する。また、ケーブルタグｌｉｎｅを識別し、仮想スイッチの機能をＲＡＭ４上で実行して当該仮想スイッチを用いて仮想デバイス４−１〜４−Ｍ間を接続する。なお、この接続のために、リナックス（登録商標）のプログラムに含まれるコマンドの１つであるｕｍｌ＿ｓｗｉｔｃｈを用いる。
【００５６】
ステップＳ１３に続いて、ステップＳ１４において、ＣＰＵ２は、ステップＳ１１と同様に演習用仮想ネットワークのネットワーク図を自動採点ウィンドウに表示し、設定用コンソールウィンドウをディスプレイ６に表示する。図１５は、図３のステップＳ１４においてディスプレイ６に表示される設定用コンソールウィンドウの表示例である。図１５において、設定用コンソールウィンドウは、仮想デバイス選択用のドロップダウンリストと、ドロップダウンリストを用いて選択された仮想デバイスの設定のための設定コマンドを入力するためのテキストボックスと、ドロップダウンリストを用いて選択された仮想デバイスの動作状態を表示する表示ウィンドウとを含む。学習者は、設定用コンソールウィンドウのコマンドを入力するためのテキストボックスに、仮想デバイス４−１〜４−Ｍの設定項目毎に、演習課題の解答として入力する設定情報を設定するための設定コマンドを入力する。
【００５７】
例えば、ステップＳ１２において演習課題ファイル１３−１が選択された場合、学習者が、設定項目ごとに、演習課題の正答となる仮想デバイス４−１〜４−Ｍの設定情報を設定するためには、仮想ホストＨｏｓｔ０用の設定用コンソールウィンドウにおいて、以下の設定コマンドを入力する必要がある。
【００５８】
ifconfig eth0 192.168.0.1
route add default gw 192.168.0.101
【００５９】
さらに、仮想ルータＲｏｕｔｅｒ０用の設定用コンソールウィンドウにおいて、以下の設定コマンドを入力する必要がある。
【００６０】
configure terminal
interface eth0
ip address 192.168.0.101/24
no shutdown
exit
enable password cisco
copy run start 
【００６１】
図３において、ステップＳ１４に続いて、ステップＳ１５において、ＣＰＵ２は、学習者が、設定用コンソールウィンドウを用いて、各仮想デバイス４−１〜４−Ｍの設定項目毎に、演習課題に対する解答として入力する設定情報を設定するための設定コマンドを入力する毎に、入力された設定コマンドを実行して演習用仮想ネットワークにおける仮想デバイス４−１〜４−Ｍの設定情報を変更すると共に、入力された設定コマンドに基づいて、仮想デバイス４−１〜４−Ｍ毎に設定情報ファイル９−１〜９−Ｍを生成してハードディスクドライブ５に格納する。ここで、設定情報ファイル９−ｍは、学習者が仮想デバイス４−ｍに対して行った設定の情報を含む所定の形式のテキストファイルである。図６は、図１において仮想デバイス４−１が仮想ホストＨｏｓｔ０であるときの、設定情報ファイル１４−１の一例を示すブロック図である。図６に示す例では、仮想デバイス１４−１のネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．２に設定されている。また、図７は、図１において仮想デバイス４−２が仮想ルータＲｏｕｔｅｒ０であるときの、設定情報ファイル１４−２の一例を示すブロック図である。図７に示す例では、仮想デバイス１４−２の特権パスワードがｃｉｓｃｏに設定され、仮想デバイス１４−２のネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．１０１に設定され、ネットマスクが２５５．２５５．２５５．０に設定されている。
【００６２】
さらに、ステップＳ１５に続いて、ステップＳ１６において、学習者が、自動採点ウィンドウの結果タブを選択して採点要求ボタン（図１６の「Ｃｈｅｃｋ」ボタンである。）をクリックしたか否かが判断され、ＹＥＳのときはステップＳ１７に進む一方、ＮＯのときはステップＳ２０に進む。ステップＳ１７では、ＣＰＵ２は、ハードディスクドライブ５から全ての設定情報ファイル１４−１〜１４−Ｍを読み出し、ＸＭＬ形式の答案ファイル１５に変換する。答案ファイル１５において用いられるタグは、演習課題ファイル１３−１〜１３−ｎにおいて用いられるタグと同様に定義されている。答案ファイル１５は、学習者によって入力された各仮想デバイス４−１〜４−Ｍの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルであって、学習者によって設定が行われた各仮想デバイス１４−１〜１４−ｎによって構成される答案仮想ネットワークの設定情報記述部２００を含む。図８は、図６及び図７の設定情報ファイル１４−１及び１４−２に基づいて生成される答案ファイル１５の一例を示すブロック図である。図８に示す例では、答案仮想ネットワークの設定情報記述部２００は、仮想ホストＨｏｓｔ０の設定情報記述部２０１と、仮想ルータＲｏｕｔｅｒ０の設定情報記述部２０２とを含む。また、仮想ホストＨｏｓｔ０の設定情報記述部２０１には、仮想ホストがホスト名Ｈｏｓｔ０を有することと、有効（ｕｐ）なネットワークインタフェースｅｔｈ０を有することと、ネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．２であることと、ネットマスクが２５５．２５５．２５５．０であることが記述されている。また、仮想ルータＲｏｕｔｅｒ０の設定情報記述部２０２には、仮想ルータが仮想ルータ名Ｒｏｕｔｅｒ０を有することと、有効（ｕｐ）なネットワークインタフェースｅｔｈ０を有することと、ネットワークインタフェースｅｔｈ０のＩＰアドレスが１９２．１６８．０．１０１であることと、ネットマスクが２５５．２５５．２５５．０であることと、特権パスワードがｃｉｓｃｏであることとが記述されている。
【００６３】
図３において、ステップＳ１７に続いて、ステップＳ１８において、ＣＰＵ２は、選択された演習課題ファイル１３−ｎの正答仮想ネットワークの設定情報記述部１０３の内容と、答案ファイル１５の答案仮想ネットワークの設定情報記述部２００の内容とを比較する。具体的には、ＣＰＵ２は、正答仮想ネットワークの設定情報記述部１０３の各タグと、答案仮想ネットワークの設定情報記述部２００の各タグの内容と、階層的に比較する。図９は、図３のステップＳ１８において、図５の演習課題ファイル１３−１の正答仮想ネットワークの設定情報記述部１０３の内容と、図８の答案ファイル１５の答案仮想ネットワークの設定情報記述部２００の内容とを比較したときの、比較結果を示すブロック図である。図９において、正答仮想ネットワークの仮想ホストＨｏｓｔ０のＩＰアドレスタグの内容（ＩＰアドレスが１９２．１６８．０．１で、ネットマスクが２５５．２５５．２５５．０である。）と、答案仮想ネットワークの仮想ホストＨｏｓｔ０のＩＰアドレスタグの内容（ＩＰアドレスが１９２．１６８．０．２で、ネットマスクが２５５．２５５．２５５．０である。）とは一致していない。また、正答仮想ネットワークの仮想ホストＨｏｓｔ０では、デフォルトゲートウェイタグｄｅｆａｕｌｔ＿ｇａｔｅｗａｙを用いてデフォルトゲートウェイの設定が行われているが、答案仮想ネットワークの仮想ホストＨｏｓｔ０では、デフォルトゲートウェイタグｄｅｆａｕｌｔ＿ｇａｔｅｗａｙが存在せず、デフォルトゲートウェイの設定が行われていない。さらに、正答仮想ネットワークの仮想ルータＲｏｕｔｅｒ０のタグ及びタグの内容と、答案仮想ネットワークのタグ及びタグの内容とは一致している。
【００６４】
図３において、ステップＳ１８に続いて、ステップＳ１９において、ＣＰＵ２は、比較結果を自動採点ウィンドウのチェックリスト欄に表示する。図１６は、図３のステップＳ１９において、図５の演習課題ファイル１３−１及び図８の答案ファイル１５に基づいてディスプレイ６に表示されるチェックリスト欄の表示例である。図１６に示すように、チェックリスト欄には、ツリー形式で各仮想デバイス４−１〜４−Ｍの各設定項目の設定内容が正答仮想ネットワークにおける各仮想デバイス４−１〜４−Ｍの各設定項目の設定内容と一致するか否かが、各仮想デバイス４−１〜４−Ｍの各設定内容の正誤情報として示される。具体的には、図１６のチェックリスト欄には、仮想ホストＨｏｓｔ０のネットワークインタフェースｅｔｈ０のＩＰアドレス及びデフォルトゲートウェイの各設定に誤りがあり、仮想ホストＨｏｓｔ０のネットワークインタフェースｅｔｈ０のサブネットマスク及び状態の各設定が正しく、仮想ルータＲｏｕｔｅｒ０のネットワークインタフェースｅｔｈ０のＩＰアドレス、サブネットマスク、及び状態、並びに、特権パスワードの各設定が正しいことが示されている。さらに、設定情報を入力すべき設定項目の総数に対する、学習者によって正しく設定された（正答となる設定情報と一致する）設定項目の総数が、「６／８」のように表示されている。
【００６５】
図３において、ステップＳ１９に続いて、ステップＳ２０において、学習者が自動採点ウィンドウを閉じるなどの所定の終了指示を行ったか否かが判断され、ＹＥＳのときはステップＳ１５に戻り、ＮＯのときは自動採点処理を終了する。ステップＳ１５に戻る場合には、学習者は全ての各仮想デバイス４−１〜４−Ｍの設定が正しくなり、仮想ネットワークにおいてパケットデータが送受信されるように動作するまで、各設定をやり直すことができる。
【００６６】
本実施形態によれば、学習者が演習に利用する演習課題ファイル１３−ｎを選択すると、当該演習課題ファイル１３−ｎに記述されている演習用仮想ネットワークの設定情報に基づいて、演習用仮想ネットワークが自動的に構築される。演習用仮想ネットワークの設定情報は、当該演習用仮想ネットワークのトポロジ（接続形態）の情報と各仮想デバイス４−１〜４−Ｍの設定情報とを、ケーブルタグｌｉｎｅの内容及び仮想デバイスタグｖｍの内容として含む。演習用仮想ネットワーク内の各仮想デバイス４−１〜４−Ｍの各設定には誤りがあり、学習者は、表示された課題内容（例えば、図１４参照。）に示された仕様を満たすように、各仮想デバイス４−１〜４−Ｍの設定項目毎に設定情報を入力し、これにより、演習課題に解答する。さらに、学習者が演習課題に解答して設定を行った後の演習用仮想ネットワークである答案仮想ネットワークの情報は答案ファイル１５に記述される。そして、答案ファイル１５に含まれる各仮想デバイス４−１〜４−Ｍの設定情報と、演習課題ファイル１３−ｎに含まれる各仮想デバイス４−１〜４−Ｍの正答となる設定情報とは比較され、当該比較結果は、自動採点結果としてディスプレイ６に表示される。従って、本実施形態によれば、従来技術に係るネットワーク構築演習装置に対して、演習用仮想ネットワークに対して学習者が施した設定内容を自動的に採点する自動採点機能を提供できる。学習者は、採点結果を参照することで、ネットワークの構築手順を確認できる。これにより、演習と実践結果の確認を繰り返すことで、学習した知識の習熟、実践経験による技術の習得が期待できる。さらに、自動採点機能を利用することで、ネットワークトラブルの対応演習を行うこともできる。
【００６７】
本実施形態に係る自動採点機能は、仮想ネットワーク構築処理（図３のステップＳ１３の処理である。）と、ネットワーク設定情報比較処理（図３のステップＳ１８の処理である。）とを含む。仮想ネットワーク構築処理では、選択された演習課題ファイル１３−ｎから読み込んだ演習用仮想ネットワークの情報に基づいて、演習用仮想ネットワークを構築する。演習課題ファイル１３−ｎはＸＭＬ形式で記述されており、構築する演習用仮想ネットワークのトポロジの情報と、各仮想デバイス４−１〜４−Ｍの設定情報と、正答となる各仮想デバイス４−１〜４−Ｍの設定情報とを含む。ＣＰＵ２は、選択された演習課題ファイル１３−ｎを読み込み、構築する演習用仮想ネットワークの設定情報をタグに基づいて解析し、仮想デバイス４−１〜４−Ｍの起動と仮想デバイス４−１〜４−Ｍ間の接続処理を実行する。さらに。読み込んだ各仮想デバイス４−１〜４−Ｍの設定情報に基づいて、仮想デバイス４−１〜４−Ｍにネットワークの設定を施す。
【００６８】
さらに、ネットワーク設定情報比較処理では、演習課題ファイル１３−ｎに含まれる正答となる各仮想デバイス４−１〜４−Ｍの設定情報と、正答ファイル１５に含まれる学習者によって入力された各仮想デバイス４−１〜４−Ｍの設定情報とを比較する。そして、その比較結果を自動採点ウィンドウのチェックリスト欄に表示する。なお、設定情報ファイル１４−１〜１４−Ｍは、各仮想デバイス４−１〜４−Ｍのネットワークに関する設定情報を含み、仮想デバイス４−１〜４−Ｍごとに作成される。例えば、仮想デバイス４−ｍのネットワークの設定が学習者によって、変更されると、変更内容は設定情報ファイル１４−ｍに書き込まれる。本実施形態によれば、設定情報ファイル１４−ｍに書き込まれた内容と、演習課題ファイル１３−ｎに含まれる仮想デバイス１４−ｍの正答情報とを比較することで、仮想デバイス１４−ｍの設定情報の正誤を判断する。
【００６９】
本実施形態によれば、指導者は、所定のネットワークトラブルを解決する課題を複数の学習者に対して課したい場合、当該ネットワークトラブルの原因となる仮想デバイスの設定情報を含む演習用仮想ネットワークの設定情報と、当該ネットワークトラブルが解決された正答仮想ネットワークの設定情報とを含む演習課題ファイル１３−ｎを予め生成して、複数のネットワーク構築演習装置１のハードディスクドライブ５に格納するだけで、複数の学習者に対して上記課題を同時に課すことができる。
【００７０】
さらに、本実施形態によれば、演習課題ファイル１３−１〜１３−Ｎ及び答案ファイル１５は、仮想デバイスの設定項目毎にタグ付けされたテキストファイルであるので、各タグ内に記述される設定情報を比較的容易に比較できる。また、演習課題ファイル１３−１〜１３−Ｎ及び答案ファイル１５には、指導者及び学習者の設定順序に従って各設定情報が記述されるが、設定順序に関係なく各タグ内に記述される設定情報を比較できる。
【００７１】
なお、演習課題ファイル１３−ｎ及び答案ファイル１５における各タグの記述の順序は図５及び８に示した順序に限らず、任意の順序であってよい。また、本実施形態において、指導者は、演習用ネットワーク設定ウィンドウ（図１１参照。）を用いて、演習用仮想ネットワークのトポロジのみを設定できたが、本発明はこれに限らず、演習用仮想ネットワークを構成する各仮想デバイス４−１〜４−Ｍの設定情報も設定してよい。この場合、例えば、図１２又は図１３に示すような設定ウィンドウをディスプレイ６に表示して、指導者に対して各仮想デバイス４−１〜４−の設定情報を入力させて、入力された設定情報を、演習課題ファイル１３−ｎの演習用仮想ネットワークの情報設定部１０２（図５参照。）に仮想デバイスタグｖｍを用いて記述すればよい。
【００７２】
また、図３の自動採点処理のステップＳ１５において、学習者によって入力された設定コマンドを実行した後に、設定情報ファイル１４−１〜１４−Ｎに基づいて、上述した通信ログ表示機能を実行するためのプログラム又はアニメーション機能を実行するためのプログラムを実行してもよい。これにより、学習者は、学習者が設定情報を変更した演習用仮想ネットワークにおいてパケットデータが送受信されるか、及び、パケットデータの通信経路を確認できる。従って、学習者は、学習者が入力した仮想デバイス４−１〜４−Ｍ毎の各設定項目の設定情報の正誤を確認できるのみならず、正しい設定情報を入力したとき及び誤った設定情報を入力したときに演習用仮想ネットワークがどのような動作をするのかを自学自習できる。
【００７３】
さらに、演習課題ファイル１３−ｎは、演習用仮想ネットワークの設定情報記述部１０２及び正答仮想ネットワークの設定情報記述部１０３のうち、少なくとも正答仮想ネットワークの設定情報記述部１０３を含めばよい。演習課題ファイル１３−ｎが演習用仮想ネットワークの設定情報記述部１０２を含まない場合、ＣＰＵ２は、自動採点処理において、以下の各ステップを実行する。
（ａ）学習者により、操作入力部７から、各仮想デバイス４−１〜４−Ｍの設定項目毎に、演習課題に対する解答として入力される設定情報を設定するための設定コマンドに基づいて、各仮想デバイス４−１〜４−Ｍ毎に当該仮想デバイス４−１〜４−Ｍの設定情報を含む設定情報ファイル１４−１〜１４−Ｍを生成するステップと、
（ｂ）各仮想デバイス４−１〜４−Ｍ毎に生成された設定情報ファイル１４−１〜１４−Ｍを、各仮想デバイス４−１〜４−Ｍの設定情報を対応する設定項目毎にタグ付けして階層的に記述したテキストファイルである答案ファイル１５に変換するステップと、
（ｃ）選択された演習課題ファイル１３−ｎに含まれる演習課題の正答となる各仮想デバイス４−１〜４−Ｍの設定情報と、答案ファイル１５に含まれる各仮想デバイス４−１〜４−Ｍの設定情報とを比較して、比較の結果を出力し又は表示するステップ。
【００７４】
また、図３のステップＳ１９において、比較結果を含むデータをハードディスクドライブ５に出力して格納してもよい。
【００７５】
さらに、上記実施形態において、演習課題ファイル１３−１〜１３−Ｎと、設定情報ファイル１４−１〜１４−Ｍと、答案ファイル１５とをハードディスクドライブ５に格納したが、本発明はこれに限らず、ＵＳＢ（Universal Serial Bus）メモリなどの他の不揮発性の記録媒体に格納してもよい。
【００７６】
また、上記実施形態において、ネットワーク構築演習装置１のＯＳのプログラム８はリナックス（登録商標）のプログラムであり、仮想デバイスプログラム９は、ユーザモードリナックスのプログラムであった。リナックス（登録商標）及びユーザモードリナックスの各プログラムは、無償であり、ソースが公開されているので、安価なネットワーク構築演習装置１を実現するために適している。また、ユーザモードリナックスは、ユーザモードプロセスとして実行されるので耐障害性並びに管理及び改変のしやすさの点で、ゼン（Ｘｅｎ）又はヴイエムウェア（ＶＭＷａｒｅ（登録商標））などの他の仮想デバイスプログラムに比較して、ネットワーク構築演習装置１を安定して動作させるために適している。しかしながら、本発明はこれに限らず、ＯＳのプログラム８は、任意のＯＳのプログラムであってよく、仮想デバイスプログラム９は、ＲＡＭ４上で仮想デバイス４−１〜４−Ｍの機能を実行できる任意の仮想デバイスプログラムであってもよい。
【００７７】
さらに、本実施形態において、プログラムなど８〜１２及びその実行のためのデータをそれぞれハードディスクドライブ５に予め格納した。しかしながら、本発明はこれに限らず、ＣＤ−ＲＯＭ又はＤＶＤなどの、コンピュータで読み取り可能な記録媒体に記録されたプログラムなど８〜１２及びその実行のためのデータをそれぞれ、コンピュータなどのコントローラを含む光ディスクドライブにより再生して、ネットワーク構築演習装置１の外部インタフェース又はインターネットを介してハードディスクドライブ５に格納してもよい。
【産業上の利用可能性】
【００７８】
以上詳述したように、本発明に係るネットワーク構築演習装置及びその制御方法によれば、演習課題ファイルに含まれる演習課題の正答となる上記各仮想デバイスの設定情報と、答案ファイルに含まれる上記仮想デバイスの設定情報とを比較して、上記比較の結果を出力し又は表示するので、従来技術に比較して効率的に学習者に対してネットワーク構築演習の課題を課し、学習者が効率的にネットワーク構築演習を行うことができる。また、上記ネットワーク構築演習方法のステップを含むプログラム、並びに、当該プログラムを格納したコンピュータにより読み取り可能な記録媒体を提供できる。
【符号の説明】
【００７９】
１…ネットワーク構築演習装置、
２…ＣＰＵ、
３…ＲＯＭ、
４…ＲＡＭ、
４−１〜４−Ｍ…仮想デバイス、
５…ハードディスクドライブ、
６…ディスプレイ、
７…操作入力部、
８…ＯＳのプログラム、
９…仮想デバイスプログラム、
１０…ネットワーク構築演習プログラム、
１１…課題ファイル生成プログラム、
１２…自動採点プログラム、
１３−１〜１３−Ｎ…演習課題ファイル、
１４−１〜１４−Ｍ…設定情報ファイル、
１５…答案ファイル。
【図１】
2012015633.tif 000003
【図２】
2012015633.tif 000004
【図３】
2012015633.tif 000005
【図４】
2012015633.tif 000006
【図５】
2012015633.tif 000007
【図６】
2012015633.tif 000008
【図７】
2012015633.tif 000009
【図８】
2012015633.tif 000010
【図９】
2012015633.tif 000011
【図１０】
2012015633.tif 000012
【図１１】
2012015633.tif 000013
【図１２】
2012015633.tif 000014
【図１３】
2012015633.tif 000015
【図１４】
2012015633.tif 000016
【図１５】
2012015633.tif 000017
【図１６】
2012015633.tif 000018
【図１７】
2012015633.tif 000019
【図１８】
2012015633.tif 000020