GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu14.04へのNetworkSimulator2(NS2)のインストール

1はじめに

ネットワークシミュレータは、ネットワーク内の離散イベントをシミュレートするために使用されるツールであり、コンピュータネットワークの動作を予測するのに役立ちます。通常、シミュレートされたネットワークには、リンク、スイッチ、ハブ、アプリケーションなどのエンティティがあります。シミュレーションモデルが完了すると、パフォーマンスを分析するために実行されます。管理者は、ニーズに合わせてシミュレータをカスタマイズできます。ネットワークシミュレータは通常、WLAN、UDP、TCP、IP、WANなど、現在使用されている最も一般的なプロトコルとネットワークをサポートしています。

現在利用可能なほとんどのシミュレーターは、NCTUNSのようなGUIアプリケーションに基づいていますが、他のシミュレーターには以下が含まれます。 NS2はCLIベースです。ネットワークのシミュレーションには、リンク、スイッチ、ハブ、端末などの状態要素と、パケットドロップ率、配信ステータスなどのイベントの構成が含まれます。シミュレーションの最も重要な出力は、トレースファイルです。トレースファイルは、すべてのパケット、シミュレーションで発生したすべてのイベントをログに記録し、分析に使用されます。ネットワークシミュレータは、傾向や潜在的な問題箇所の視覚的な分析を容易にする他のツールを提供することもできます。シミュレーションのほとんどは、キューにあるイベントが順番に次々に処理される離散時間間隔で実行されます。

シミュレーションは複雑な作業であるため、すべてのシミュレーターがすべての異なるタイプの情報に対して正確または正確な結果を提供できることを保証することはできません。ネットワークシミュレータの例は、ns、NCTUNS、NetSimなどです。

ns2は、ns-1、ns-2、ns-3などの一連の離散イベントネットワークシミュレーターの名前です。それらはすべて離散イベントネットワークシミュレータであり、主に研究と教育で使用されます。 ns2は無料のソフトウェアであり、研究、開発、および使用のためにGNUGPLv2ライセンスの下で公開されています。

この投稿では、Ubuntu14.04で「ネットワークシミュレーター2」とも呼ばれる「ns2」のインストールについて説明します。

2ns2をダウンロードして抽出

ここからns2のオールインワンパッケージをダウンロードします

ダウンロードされたパッケージの名前は「ns-allinone-2.35.tar.gz」になります。ホームフォルダにコピーします。次に、ターミナルで次の2つのコマンドを使用して、パッケージの内容を抽出します。

cd ~/
tar -xvzf ns-allinone-2.35.tar.gz

すべてのファイルは「ns-allinone-2.35」というフォルダに抽出されます。

3依存関係の構築

Ns2には、いくつかのパッケージがプリインストールされている必要があります。また、GCCバージョン4.3が正しく機能する必要があります。したがって、次のコマンドを使用してすべてをインストールします。

sudo apt-get install build-essential autoconf automake libxmu-dev

言及されている依存関係の1つは、コンパイラGCC-4.3であり、これは使用できなくなったため、GCC-4.4バージョンをインストールする必要があります。バージョン4.4は私たちが入手できる最も古いものです。これを行うには、次のコマンドを使用します:

sudo apt-get install gcc-4.4

次の画像は、上記の両方のコマンドを実行した場合の出力を示しています。私が行ったように、すべての依存関係がプリインストールされている場合、出力は次の画像のようになります。

インストールが終了したら、「ls.h」ファイルに変更を加える必要があります。次の手順を使用して変更を加えます。

「linkstate」フォルダーに移動し、次のコマンドを使用します。ここでは、抽出されたnsフォルダーがシステムのホームフォルダーにあると想定しています。

cd ~/ns-allinone-2.35/ns-2.35/linkstate

次に、「ls.h」という名前のファイルを開き、137行目までスクロールします。その中で、「エラー」という単語を変更します 「this->error」へ 。次の画像は、ls.hファイルに変更を加えた後の137行目(下の画像で強調表示)を示しています。ファイルを開くには、次のコマンドを使用します。

gedit ls.h

そのファイルを保存して閉じます。

ここで、実行する必要のあるもう1つのステップがあります。どのバージョンのGCCが使用されるかをnsに通知する必要があります。これを行うには、nsフォルダーに移動し、次のコマンドを入力します。

Sudo gedit ns-allinone-2.34/otcl-1.13/Makefile.in

次の画像に示すように、ファイルでChange CC =@[emailprotected]をCC=gcc-4.4に変更します。

4インストール

これで、ns2をインストールする準備が整いました。そのためには、最初にroot権限が必要であり、次にインストールスクリプトを実行できます。次の2つのコマンドを使用します。

sudo su cd ~/ns-allinone-2.35/./install

以下は、これらのコマンドのスナップです。

下の画像は、正常に実行されたときの様子を示しています

ns2をビルドしてシステムにインストールするのに約6分かかりました。ただし、実行する前に、ビルドパスを環境パスに追加する必要があります。

5環境パスの設定

最後のステップは、ns2のファイルがインストールまたは存在する場所をシステムに通知することです。そのためには、「。bashrc」ファイルを使用して環境パスを設定する必要があります。そのファイルでは、下部に数行を追加する必要があります。追加するものは以下のとおりです。ただし、以下に示すパスの場合、これらの行の多くには "/ home / akshay / ns-allinone-2.35 / ...."があります。 、しかしそれは私が抽出したフォルダを持っているところです。それらを自分のパスに置き換えてください。たとえば、フォルダ "/ home / abc"にインストールした場合 、次に "/ home / akshay / ns-allinone-2.35 / otcl-1.14"を置き換えます "/ home / abc / ns-allinone-2.35 / otcl-1.14"

必要なすべての行に対してこれを実行します。

sudo gedit ~/.bashrc

追加する行:

# LD_LIBRARY_PATH
OTCL_LIB=/home/akshay/ns-allinone-2.35/otcl-1.14
NS2_LIB=/home/akshay/ns-allinone-2.35/lib
X11_LIB=/usr/X11R6/lib
USR_LOCAL_LIB=/usr/local/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$X11_LIB:$USR_LOCAL_LIB
# TCL_LIBRARY
TCL_LIB=/home/akshay/ns-allinone-2.35/tcl8.5.10/library
USR_LIB=/usr/lib
export TCL_LIBRARY=$TCL_LIB:$USR_LIB
# PATH
XGRAPH=/home/akshay/ns-allinone-2.35/bin:/home/akshay/ns-allinone-2.35/tcl8.5.10/unix:/home/akshay/ns-allinone-2.35/tk8.5.10/unix
#the above two lines beginning from xgraph and ending with unix should come on the same line
NS=/home/akshay/ns-allinone-2.35/ns-2.35/ 
NAM=/home/akshay/ns-allinone-2.35/nam-1.15/ 
PATH=$PATH:$XGRAPH:$NS:$NAM

変更が完了したら、ファイルを保存してシステムを再起動します。

6実行中のns2

システムが再起動したら、ターミナルを開き、次のコマンドを使用してns2を起動します。

ns

インストールが正しい場合、端末は次の画像のようになります:

  • NS2ネットワークシミュレーター

Ubuntu
  1. Ubuntu12.10へのVirtualBox4.2のインストール

  2. Ubuntu 12.04.02をUefiモードでインストールしますか?

  3. ネットワークインターフェイスの問題AcerAspireH340(ヘッドレスサーバー)にUbuntuサーバーをインストールしますか?

  1. Ubuntu16へのCuda8のインストール:パッケージCudaが見つかりませんか?

  2. Lua5.2対のインストール。 Ubuntu 16.10のLua5.3?

  3. Dockerのインストール(Ubuntu)

  1. Ubuntu18.04へのSNMPのインストール

  2. Ubuntu14.04にQt5.5.1をインストールする–ターミナルでQt.network.sslエラーをスローしますか?

  3. Mac MiniにUbuntuサーバーをインストールするときにネットワークインターフェイスが検出されませんか?