...

⑤木村 昌史.indd

by user

on
Category: Documents
18

views

Report

Comments

Transcript

⑤木村 昌史.indd
Webベースの教育用ネットワークシミュレータ
65
Webベースの教育用ネットワークシミュレータ
木 村 昌 史
Web-based Network Simulator for Education
Masashi Kimura
〈要旨〉
NS-2はBerkleyを中心に開発されてきた著名なネットワークシミュレータである。NS-2は初学者のみなら
ず専門家でも使いこなすのは難解なものである。UNIX系ソフトウェアであることや、C++やTclスクリプト
から構成されていることもその要因になっている。そこでNS-2をサーバーサイドに構築し、PHPによって
Webサーバー経由でクライアントから入出力と実行が行えるシステムに拡張した。シミュレーションのパラ
メータや設定が容易に行うことができ、結果の出力としてWeb上でJavaアプレットによるアニメーションの
表示とテキスト形式のトレースファイルを得ることができる。最近でいうSaaS化を目的として、NS-2をWeb
ベースのeラーニングのシステムとして拡張できる可能性を示した。
〈キーワード〉
NS-2、Tcl、PHP、SaaS、eラーニング
1.はじめに
ネットワークの研究や教育において、ネット
ワークシミュレータの活用は有用である場合が
多い。最も基本的な2つのノード間の通信の流れ
から、大規模なネットワークまで起こりうる現象
や効率とパフォーマンスについての知見を、実際
のネットワークを構成する前に、ある程度の予測
と評価を行うことができるからである。これは
ネットワークの構成図やネットワークを構成する
個々の機器の性能だけからは窺い知れないもので
ある。
インターネットを流れるデータを構成するパ
ケットは、TCP/IPプロトコルによって制御される
が1)、各種のプロトコルの組合せによって、ネッ
トワークのトラフィックレベルでどのようなふる
まいを起こすのかは、経験によって理解する部分
も大きい。既存のプロトコルの組合せにしろ、拡
張したプロトコルを研究する場合にしろ、こうし
た評価を事前に行える手段を持つことは、ネット
ワークを設計したり運用する上で重要である。
またネットワークの教育的な観点から見ると、
近年ネットワークの利用者は飛躍的に増加しては
いるものの、ネットワークの基礎から理解してい
る利用者はそれほど多くはないと思われる。これ
はネットワークの規模が拡大して複雑化している
ため、ネットワークの内部でどのような現象が起
きているのか、きわめてイメージしにくいためで
あるとも考えられる。ネットワーク管理者の立場
にでもならなければ、なかなか広い範囲のネット
ワークを実際に扱う経験をして、ネットワークに
おける事象を理解していくことは難しい。
本論文ではこうした問題意識から、研究面では
既存のシミュレータを活用しやすいように、教育
面では初学者でもネットワークを理解しやすいよ
うなシステムを構成することを問題とする。
近年ではネットワークの応用、特にWebを応用
したeラーニングのシステムが多くの分野で構築
66
情報科学研究
されてきている2)。ネットワークシミュレータに
ついても、eラーニングのような利用ができるよ
うになれば、広くネットワーク教育にも寄与でき
るシステムに発展することになるであろう。
2.ネットワークシミュレータNS-2
一般にネットワークシミュレータと称するソフ
トウェアには多くのものがあり、目的や機能も
様々にわたっている。中でもカルフォルニア大学
Berkleyを中心とするプロジェクト(VINT)によっ
て、1995年頃から継続して開発されているネット
ワークシミュレータ(NS-2)は特に有名である7)。
これは本来ネットワークの基礎研究、機器の開
発および性能評価等に広く利用されている有用な
オープンソースのネットワークシミュレータであ
る。
ただ、あまりに多くの機能があり優秀なソフト
ウェアである反面、利用者にはネットワークとソ
フトウェアに関して深い知識が必要とされ、ネッ
トワークの専門家であっても、使いこなすにはな
かなか敷居の高いソフトウェアであるといえる。
さらに初学者にとっては、日本語化された書籍資
料も乏しいためになおさらである3)4)。
2.1 基本構成
NS-2はオープンソースであるが、基本的には
UNIXベースで動作するものであり、Windows環
境に導入する場合には、UNIXの仮想環境の1つで
あるcygwinが必要になる。構成するソフトウェア
としては、以下のようなものからなる。
(1)NS-2 本体ソフトウェア
(2)ネットワーク記述シナリオファイル
(3)シミュレーション結果の分析ツール
(4)シミュレーション結果の表示ツール
(5)その他のツール
現在のバージョンでは、ソースレベルでは全体
で50MBほどのソフトウェアである。
2.2 使用言語
NS-2本体のエンジン部分はC++言語で記述され
ている。シミュレーションのためのネットワーク
構成と動作の記述には、フロントエンドとして
のOTcl言語(Object-oriented Tcl)によって、オブ
ジェクト指向型のシナリオスクリプトを作成する。
ネットワーク間のパケットの動きをアニメーショ
ン表示をするNAMというツールはTcl/Tkベース
で書かれており、X-Window環境で動作する。
UNIX環境のコマンドからNS-2本体を起動する
と、シナリオスクリプトを読み込み、シミュレー
ションを実行し、そのトレースファイルを出力す
る。その結果を用いて各種の分析と、またアニメー
ションにより個々のパケットの動きやトラフィッ
クの生成を観察することができる。またトレース
ファイルを分析することにより、詳細にシミュ
レーション結果を評価することができる。
また最近では別のプロジェクトで、NS-2をベー
スにJavaベースでシミュレータを再構成している
プロジェクトもある8)。この中でアニメーション
表示にNAMではなく、Web上で動作するJavaアプ
レットを利用するJavisというものもある。
このようにNS-2は、基本的にはUNIXのコマン
ドベースでの実行と、X-Window環境のアニメー
ション表示まで、いくつかの言語やツールを組み
合わせて使うという、やや特殊なソフトウェア構
成となっている。これが初学者にとっては扱いに
くい要因にもなっている。
2.3 オブジェクトの記述
基本的なシミュレーションのシナリオには、プ
ロトコルやパケットを抽象化した以下のようなオ
ブジェクトによって構成されている。
・ノード
ネットワークを構成するサーバーやルータある
いはサイト全体を抽象化した単位である。
・リンク
ノード間を結ぶ通信回線やLAN回線を抽象化
したものであり、単方向/双方向リンク、回線
速度、遅延時間、パケットのキューなどを指定
できる。
・UDP/TCPエージェント
ノードの上にプロトコルを実装する。
TCPについては、より詳細な値の指定が可能に
なっている。
・CBRエージェント
静的なトラフィックジェネレータである。パ
ケットサイズやパケット送出間隔などを設定で
Webベースの教育用ネットワークシミュレータ
67
きる。
2.4 シナリオと実行例
もっとも単純なシミュレーションとしては2
ノードのネットワークから行うことができる。
ネットワークのトポロジーやプロトコルの種類、
回線速度のパラメータなどはTclスクリプトの内
容を編集して書き換えながら実行するような仕様
になっている。
シミュレーションの結果は、テキストファイル
形式の2種類のトレースファイルに書き出される。
アニメーション表示のためには、その1つのファ
イルを読み込んで、パケットが長さや速度によっ
て移動する様子を一定時間表示される。
4ノード(図1)の例の場合の、LANの例(図2)、
無線LAN(図3)のシミュレーションのNAMによ
るアニメーションの表示例を挙げる。
図3 NAMによる無線LANの表示例
2.5 トレースファイル
NS-2の出力ファイルには、通常のトレースファ
イルとNAMのアニメーション表示用ファイルと2
種類存在し、テキストファイルとして出力される。
1行にイベント単位で、すべてのパケットの情報
が記録されるので、分析では必要な行ごとに抽出
しながら、1つ1つのパケットの生成消滅を時系列
で追っていくことができる。
表1には1行の記述項目が示されている。
表1 トレースファイルの項目
図1 NAMによる4ノードの表示例
event
time
from node
To node
pkt type
pkt size
flags
src addr
dst addr
seq num
pkt id
イベントの種類
イベントの時刻
送信元ノード番号
宛先ノード番号
パケットタイプ(TCP/UDP)
パケット長
フロー制御ビット(7ビット)
送信元アドレス.ポート
宛先アドレス.ポート
パケットシーケンス番号
パケット識別番号
図4は実際のシミュレーションの出力の一部で
ある。時系列を追って、あるノードからのパケッ
トを受信してキューに出入りしている(r + -の記
号)のがわかる。また、パケットタイプとして
cbrは固定長ビットレートのパケットジェネレー
タを表し、TCPやUDPに関連するプロトコルを指
定できるようになっている。
図2 NAMによるLANの表示例
情報科学研究
68
・・・・・・
r 1.034 1 2 cbr 1000 ------- 2 1.0 3.1 115 116
+ 1.034 2 3 cbr 1000 ------- 2 1.0 3.1 115 116
- 1.034 2 3 cbr 1000 ------- 2 1.0 3.1 115 116
r 1.034706 2 3 cbr 1000 ------- 2 1.0 3.1 112 112
r 1.034894 2 3 tcp 40 ------- 1 0.0 3.0 0 113
+ 1.034894 3 2 ack 40 ------- 1 3.0 0.0 0 118
- 1.034894 3 2 ack 40 ------- 1 3.0 0.0 0 118
・・・・・・
図4 トレースファイルの出力例
3.NS-2のWebベースへの拡張
結果が蓄積できることになり、必要なときにアニ
メーションや分析部分だけを再現させることもで
きる。あるいは中間結果を出力させておき、後で
シミュレーションのトレースファイルから継続し
て実行することも可能になるであろう。
NS-2を用いた研究面においても、環境設定や
プログラミングに労力をさかずに、シミュレー
ションの内容と分析に集中できるというメリット
があると考えられる。
NS-2をネットワークの研究や教育に利用しよ
うとすると、一般に次のような困難な問題に直面
する。
・NS-2のインストールがそれほど容易ではなく、
マシン環境に依存している。
・シナリオファイル作成には使い慣れないTclス
クリプトの知識と編集が必要になる。
・ネットワークの詳しい知識が前提になる。
・操作はUNIXコマンドベースであり、Webベー
スにはなっていない。
そこでこれらの制限を取り除くために、NS-2
のインタフェース部分を拡張することにする。
3.1 Webアプリケーション化
Tclのプログラミング的知識は、eラーニング
を前提にしたようなネットワークの学習の中で
は、あまり本質的な事柄であるとは思えない。こ
のような学習の障壁を取り除くために、NS-2を
個別のアプリケーションソフトウェアとして利
用するより、eラーニングのシステムの一部のソ
フトウェアとしてサーバーサイドに組込んで実
行させた方がよい。いわゆるSaaS(Software as a
Service)型のWebアプリケーションとして、学習
側のクライアントの環境によらない形に拡張する
方が望ましいであろう。
すなわちシミュレータ利用に必要なテクニカル
な部分は、極力システムに吸収させるようにす
る。そこで現在開発中のeラーニングシステムで
は、図5のようにLinuxサーバをベースにWebサー
バと、シナリオや出力結果をデータベース化する
構成としている5)6)。
シナリオと出力結果をデータベース化しておく
と、多くのネットワーク事例とシミュレーション
図5 NS-2のWebアプリケーション化
3.2 Webサーバーへの実装
今回はns-2.32(2007.9現在最新)の全体パッケー
ジ7)を、LinuxのFedoraプロジェクトのFedora Core
6の環境にインストールした。
NS-2の イ ン ス ト ー ル は ユ ー ザ 環 境 で 可 能 で
あ り、NAMな ど のGUIを 利 用 す る の で あ れ ば、
X-Window環境を含むユーザ環境の方が望ましい。
しかしX-Windowそのものは、今回の拡張には必
須のものではない。
NS-2はマシン環境やOSの種類によってはイン
ストール時にコンパイルに失敗するケースもあり、
ソフトウェアの構成内容の細部について把握して
いないと、導入が難しい場合もあることに注意す
る。またNS-2本体はマイナーバージョンアップ
がたびたび繰り返されているために、一部のツー
ルではバージョンとの不整合がそのままになって
Webベースの教育用ネットワークシミュレータ
いる部分もあり、手動で修正が必要な場合もある。
Webサーバーとしては、Fedoraに標準で組み込
まれているApache2.2を利用するものとする。ま
た後述のようにApacheの上で、PHPが利用可能
になっている。表2のように、サーバーをLAMP
環境(Linux/Apache/MySQL/PHP)に対応させて、
NS-2を組み込ませるような工夫を行なった。た
だし今回は、サンプルとなるシナリオのファイル
数が多くないこともあり、データベースの本格的
な運用までには至っていない。
表2 サーバー側の主なソフトウェア構成
OS
Web
Javaアプレット
入出力
データベース
Fedora Core 6
Apache 2.2
JDK 1.6 / Javis2.0
PHP 5
MySQL 5.0
なおクライント側にはJavaアプレットを表示す
るためにJRE(Java Runtime Environment)を必要
とする。
3.3 PHPによるシナリオ入力と実行
Webアプリケーション化の要点としてはPHPを
利用した。同じ目的でCGIのPerlやJavaのJSPを用
いることも可能であるが、HTML文書からの拡張
の容易さなどからPHPを採用している。
まずシミュレーションの内容に従って、あら
かじめ用意されている雛形となるTclスクリプト
が、PHPによって読み込まれる。単純なシミュ
レーションでは、クライアント側のブラウザから
シミュレーションのためのいくつかの条件(ノー
ド数、帯域条件など)をパラメータとして入力で
きる(図6)。実行ボタンを押すと、この入力値を
もとにして、シミュレーションに必要なTclスク
リプトが動的に生成される。さらにPHPからサー
バー内部でNS-2の実行コマンドが発行され、シ
ミュレーションが実行される。その結果として、
トレースファイルとともに、NAM用トレースファ
イルも生成されるので、それをもとにクライアン
ト側でブラウザ上に、Javaアプレットによるアニ
メーション表示も実行されることになる。
NS-2本体のC++プログラムのソースレベルの変
更はいっさい行っていないので、出力結果は内容
69
的にはローカル環境でNS-2を実行した場合と全
く同じである。
ユーザは、シミュレーションのシナリオ作成の
ために、慣れないTclスクリプトを直接編集する
必要はなくなる。ただしWeb上での出力結果には、
生成されたTclスクリプトも参照できるようにし
ている。さらにWeb上からTclスクリプトを直接
編集できる機能を持たせることも可能にはできる。
特にeラーニングの学習者にとっては、シミュ
レーションのシナリオ作成以前に、ネットワーク
の学習のシナリオが必要になる。単純な学習シ
ナリオとして、2ノードの構成から、やや複雑な
LANからやや複雑なネットワークの構成へと進
めるように、多くのパターンの雛形となるシナリ
オファイルのをデータベース化しておく。このよ
うな目的で、既存の公開されているTclスクリプ
トを利用することができる9)。
こ の シ ス テ ム で は 図5に 示 し た よ う にPHPを
介してりMySQLなどのデータベースとシナリオ
ファイルの格納や読み出しを行うことができる。
図6のシナリオでは4ノードの基本シミュレーショ
ンについてのパラメータ入力のみ受け付けている。
図6 PHPを呼び出す入力画面の例
3.4 Javisによるアニメーション
Web化にともなって、X-Window環境でのNAM
は利用できないので、アニメーション出力として
はNS-2とは別に開発されているJavisというJavaア
プレットを当面は利用する8)。ここでは、Webサー
情報科学研究
70
バーにJavis-2.0のソースをJavaコンパイラである
JDK1.6によってコンパイルした。
図7-8はブラウザ上に出力表示されたJavisによ
るパケットの挙動のアニメーションと、生成され
たTclスクリプトの表示例である。またトレース
ファイルがダウンロードできるようになっている。
図7 Javisによる基本シミュレーションの表示
図8 JavisによるWeb間トラフィックの表示
タ分析の容易さを挙げることができる。Web上に
出力させた、こうした基本的な事例について示す
ことにする。
4.1 ダイナミックルーティング
NS-2ではルーティングプロトコルも実装され
ている。特にダイナミックルーティングに対応し
たプロトコルでは、RIPやOSPFに相当した設定を
行うことができる。シナリオファイルにOSPFな
どに相当するリンクステート型アルゴリズムを指
定すると、ノードが持つリンクのダウンや帯域の
変更のリンク情報が時間とともに更新されるので、
動的にパケットの経路変更を実現することができ
る。図9-11ではアニメーションによってその様子
が表示されることが確認できる。eラーニングと
しては、より規模の大きいノード数のネットワー
クについて、詳細にコストの値も計算させながら、
最適の経路を算出させることもできる。教育的に
はダイクストラ・アルゴリズムを理解する助けに
なるであろう。
図9は、ノード0からノード2に向かって、パケッ
トが0→1→2の経路を選択して流れていることを
示している。ところが1→2のリンクがダウンする
と動的に0→3→2の経路に迂回していることが図
10では示されている。さらに0→3のリンクもダウ
ンすると、0→1→3→2の経路をみつけてパケット
が到達している。NS-2ではルーティングプロト
コルが指定されると、このようなダイナミック
ルーティングによって、最適な経路選択がなされ
る様子を観察することができる。
4.シミュレーション結果の分析
シミュレーションの実行結果のトレースファイ
ルからは、すべてのパケットやトラフィックの情
報が得られる。またパケットの動きのアニメー
ションもこれらの出力をもとに再現することがで
きる。
Webでの出力結果は内容的にはNS-2単体で実行
した場合と変わりはなかったが、eラーニングの
観点からの利点としては、入力の簡便さと、
シミュ
レーションのシナリオを変更する経験が容易にで
きることや、
アニメーションによる視覚化と、
デー
図9 動的な経路選択[0→1→2]
Webベースの教育用ネットワークシミュレータ
図10 動的な経路選択[0→3→2]
図11 動的な経路選択[0→1→3→2]
4.2 ジッタ分析とQoS
ネットワークが混み合って、通信量が増加し多
くのパケットが発生するようになると、ルータや
サーバーの処理が追いつかず、パケットの到達遅
延、破棄が起こるようになり、ネットワーク全
体のパフォーマンスは低下する。回線速度は十分
であったとしても、ルータやサーバーの性能が低
かったり、キューに入るメモリが少なかったりし
ても、パフォーマンスは落ちる。ネットワークの
規模を大きくするほど、どこがボトルネックにな
るかは必ずしも明らかではない。そこでシミュ
レーションによって、条件を変えながら実装に足
る限界点を突き止めていく。特にTCPでは、いわ
ゆる輻輳制御が重要になる。
近年のリアルタイムの音声通信や動画配信など
の品質を示すQoS(Quality of Service)を評価す
る時のひとつの指標としてジッタがある。ジッタ
とは特定のノードにパケットが到着する時間間隔
のゆらぎのようなものである。ネットワークのト
71
ラフィックが増し、ジッタが大きくなると品質が
下がることになるので、ネットワークの設計に改
良の余地があることがわかる。
NS-2でのシミュレーションの実行が終了すれ
ば、テキスト形式のトレースファイルとNAM用
のアニメーション出力ファイルが出力される。ク
ライアント側でこれをダウンロードして各種の集
計をしたりグラフ化することができる。
トレースファイルはログファイルのように、1
行に1つのイベントが記録されているので、特定
のノードに出入りするパケットを逐次追跡してい
くことができる。ちょうど待ち行列の時系列の記
録と同様である。
NS-2にはトレースファイルを分析するために、
UNIXのシェルスクリプトやPerlのツールも提供
されている。ただちに定型的な分析結果を求める
には、トレースファイルから集計して、グラフ表
示を行うことも可能になっている。ただしグラフ
化 に は、X-Window環 境 のxgraphやgnuplotな ど を
利用するようになっている。
しかし今回のシステムでは、サーバー側で実行
した結果は、クライアント側はWindowsであるこ
とを前提にしているので、トレースファイルをテ
キストファイルで得ることができれば、数千行程
度のファイルであればオフラインでExcelでも容
易に分析が可能になる。
ここでは図6における基本シミュレーションの
ノード0からノード3へ到着するパケットのジッタ
を分析した。
ネットワークのトポロジー的には、パケット
が合流するノード2からノード3への流れがボト
ルネックになるはずである。図12はトレースファ
イルから0→2→3と1→2→3のそれぞれの流れのパ
ケットを示す行をExcelのフィルタ機能を用いて
抜き出して分析を行った例である。
初学者にはトレースファイルをコマンドで定型
的に分析するよりは、Excelによって待ち行列的
分析を自在に行ってみる方が、より教育的である
と考えられる。
今回は基本的な分析のみにとどめているが、シ
ミュレーションの条件やパラメータの設定をしや
すくしたために、分析も容易に行えるようになっ
ている。
情報科学研究
72
み込むことによって、学習者はわざわざUNIX系
OS上にNS-2を個別にインストールせずとも利用
できるようになる。たとえばサーバーにのみイン
ストールされていれば、教室内クライアントから
の一斉の実習が可能になる。
SaaS化と並行して、研究用および教育用の今後
の発展として、いくつかの考えられる課題を挙げ
ておく。
図12 CBRトラフィックのジッタ分析
5.SaaS化とeラーニング
現在、一般に多くのアプリケーションソフト
ウェアがWebアプリケーション化され、クライア
ントではソフトウェアをインストールしなくて
も、Web上のサービスとして実行できる、いわゆ
るSaaS(Software as a Service)化が進行している。
研究・教育用のソフトウェアも例外ではなく、
特にeラーニングは、すべてWeb上で行えること
が前提になっていることがそれを示している。裏
を返せば、SaaS化されていないソフトウェアは一
般向けのものではなく、専門分野向けに限定され
ているといってもよい。
NS-2も専門的なソフトウェアであって、利用
者にあまり易しいインターフェ−スになってはお
らず、利用できる機能を理解するのも容易ではな
かった。そこでNS-2のシミュレータ本体はその
ままにして、Webのインターフェースによって利
用を容易にしたことにより、研究用途ではシミュ
レーションのシナリオ作成やパラメータの調整を
容易にして、シミュレーションの作業効率を上げ
ること、結果のデータベースへの蓄積により、同
じようなシミュレーションを繰り返す際の再利用
を容易にすることができた。
教育用途では、Webを通じてネットワークのパ
ケットレベルでの挙動の視覚化と分析によって、
ネットワークの規模が大きくなるにつれて見られ
る現象や、プロトコルの役割を理解する一助とす
るツールになるものである。
SaaS化されたNS-2をeラーニングシステムに組
(1)視覚的効果を持つアニメーション表示機能
アニメーションとして、提供されているJavaア
プレットを用いたが、今後はAjaxとFlashアニメー
ションによる、リッチなクライアント環境も活用
したインターフェースを開発することも考えられ
る。
(2)現実のネットワークとNS-2仮想ネットワー
クとの接続機能
シミュレータは仮想ネットワーク内のみで閉じ
ているが、現実のネットワークやホストを、何ら
かの形でシミュレーションのシナリオの中に組み
込むことができるように拡張するものである。現
実のネットワークに流れるパケットをリアルタイ
ムで収集し、シミュレータの中でのパケットジェ
ネレータとして反映させる。ただしシミュレータ
自身が現実のネットワークに影響を与えるもので
はない。
(3)大規模ネットワークシミュレーションの実現
NS-2は実行するマシンのリソースを別にすれ
ば、1,000ノードくらいのシミュレーションも可
能であるといわれる。大規模なネットワークのシ
ミュレーションを行うためには、複数のNS-2サー
バー同士を連携させて実行することが考えられる。
ネットワークをサブネットワークに分割し、各
サーバーに振り分けるが、サブネット間を同期さ
せるインターフェース部分の開発が問題となる。
(4)ネットワークオープンラボとしてのeラーニ
ングシステム
SaaS化によってクライアントからのシミュレー
ションが可能になったが、LANの中だけでなく、
インターネット上からも実行できる、いわばオー
Webベースの教育用ネットワークシミュレータ
プンラボとして提供をすることができるようにす
る。セキュリティ面での配慮も含め、初学者が体
験しやすいラボとして公開できるようにすること
である。
なおSaaS化が意識されているわけではないが、
NS-2と並行して、すでにNS-3のプロジェクトも
進行中である10)11)。
6.おわりに
NS-2はかなり高度なソフトウェアである。研
究用途も含めて、初学者には決してやさしいもの
ではない。本研究では最近のWebアプリケーショ
参考文献
1) アンドリュー・S・タネンバウム(水野忠則他訳)
:
コンピュータネットワーク第4版(2003).
2) 経済産業省商務情報政策局情報処理振興課編:e
ラーニング白書2007/2008年版(2007).
3) 石原進:NSを使ってネットワークシミュレーション、
Software Design pp.50-57(2002).
4) 銭飛:NS2によるネットワークシミュレーション
実験で学ぶQoSネットワーク技術(森北出版)
(2006).
5) 精廬幹人,木村昌史:教育向けネットワークシミュ
レータの開発、情報処理学会第65回全国大会講演
論文集2D-2(2003).
6) 木村昌史,精廬幹人:ネットワークシミュレータ
73
ン化の流れに結びつけて、利用者はブラウザから
の入出力をするだけで利用できるようなシステム
構成とした。当初は、Javaアプレットを利用して
いることから、TomcatによるサーバーサイドJava
によるシステムも考えられたが、LAMP環境の流
れと手軽さからPHPによる構成とした。これに
よって、シミュレーションのために特殊なプログ
ラミングに煩わされずに、いくつものシミュレー
ションのシナリオを作成し、実行することが可能
になった。教育的には本来のネットワークのプロ
トコルやパケットの挙動の理解を優先させること
ができるようになる。
を含むeラーニングシステム、情報処理学会第66回
全国大会講演論文集5C-5(2004).
7) J.K.Fall and K.Vardhan: The Network Simulator-ns-2,
http://www.isi.edu/nsnam/ns/
http://nsnam.isi.edu/nsnam/
8) E.Vollset: Java Network Simulator,
http://jns.sourceforge.net/
9) J.Chung and M.Claypool: NS by Example,
http://nile.wpi.edu/NS/
10)T.R.Henderson and S.Roy, S.Floyd, G.F.Riley:
Developing the Next-Generation Open-Source Network
Simulator (ns-3), NSF CISE CRI-PI's Workshop 2006.
11)ns-3 project:http://www.nsnam.org/
Fly UP