• Tidak ada hasil yang ditemukan

ditujukan untuk penggunaan percobaan, pengembangan, dan keperluan pendidikan. NS-3

N/A
N/A
Protected

Academic year: 2021

Membagikan "ditujukan untuk penggunaan percobaan, pengembangan, dan keperluan pendidikan. NS-3"

Copied!
13
0
0

Teks penuh

(1)

1. Prasyarat Instalasi dan Instalasi NS-3

NS-3 adalah sebuah discrete-event network simulator dari sebuah jaringan, yang

ditujukan untuk penggunaan percobaan, pengembangan, dan keperluan pendidikan. NS-3

berlisensi GNU GPLv2 sehingga software ini opensource dan bebas untuk didistribusikan.

NS-3 ditulis dengan menggunakan bahasa C++ dan python dan souce codenya tersedia

untuk sistem operasi linux, seluruh varian unix, OS X, dan windows dengan cygwin. File

simulasi yang akan dieksekusi ditulis menggunakan bahasa C++.

1.3.1 Persyaratan Instalasi

Untuk dapat menjalankan aplikasi network simulator ns-3, minimal

sistem operasi yang digunakan diantaranya :

1. Linux x86 gcc 4.2, 4.1, and, 3.4.6.;

2. Linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6;

3. MacOS X ppc and x86 (gcc 4.0.x and 4.2.x);

4. Cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized).

Untuk bisa menjalankan NS-3 dibutuhkan compailer gcc/g++ versi 3.4

atau lebih dan python versi 2.4 atau lebih. Dalam sistem operasi linux

ubuntu/debian, minimal package berikut harus tersedia sebelum proses instalasi

dimulai.

1. Paket minimal untuk C++:

(2)

2. Paket minimal untuk python:

$sudo apt-get install gcc g++ python python-dev

Namun untuk bisa menjalankan semua fungsi dari NS-3, paket berikut

juga harus tersedia sebelum proses instalasi dimulai:

1. Diperlukan mercurial untuk dapat bekerja dengan repositori pengembangan

NS-3:

$sudo apt-get install mercurial

2. Diperlukan paket bazzar untuk menjalankan python bindings di NS-3-dev:

$sudo apt-get install bzr

3. Debugging:

$sudo apt-get install gdb valgrind

4. Dukungan GNU Scientific Library (GSL) untuk keakuratan pada model

kesalahan WiFi:

$sudo apt-get install gsl-bin libgsl0-dev

libgsl0ldbl

5. The Network Simulation Cradle (NSC) membutuhkan penganalisa flex lexical

and bison parser generator:

$sudo apt-get install flex bison

6. Untuk menginstalasi gcc-3.4 untuk beberapa tumpukan (stacks) Network

Simulation Cradle (NSC):

$sudo apt-get install g++-3.4 gcc-3.4

7. Untuk membaca pcap packet traces:

$sudo apt-get install tcpdump

(3)

$sudo apt-get install sqlite sqlite3

libsqlite3-dev

9. Versi XML dari penyimpanan config (membutuhkan libxml2 >= version 2.7):

$sudo apt-get install libxml2 libxml2-dev

10. Konfigurasi sistem berbasis GTK:

$sudo apt-get install libgtk2.0-0 libgtk2.0-dev

11. Untuk bereksperimen dengan mesin virtual dan NS-3:

$sudo apt-get install vtun lxc

12. Dukungan untuk program pemeriksa gaya kode utils/check-style.py:

$sudo apt-get install uncrustify

13. Doxygen dan dokumentasi yang berhubungan:

$sudo apt-get install doxygen graphviz

imagemagick

$sudo apt-get install texlive texlive-pdf

texlive-latex-extra texlive-generic-extra

texlive-generic-recommended

14. Manual NS-3 dan tutorial yang ditulis dalam Texinfo (doc/tutorial atau

doc/manual):

$sudo apt-get install texinfo dia texlive

texlive-pdf texlive-latex-extra

texlive-extra-utils texlive-generic-recommended texi2html

15. Dukungan untuk visualizer NS-3-pyviz Gustavo Carneiro:

$sudo apt-get install pygraphviz

(4)

1.3.2 Instalasi

Untuk bisa mendapatkan source code NS-3, pengguna bisa mengunduh

langsung dari web NS-3 di www.nsnam.org. Dalam halaman download, akan ada 3

pilihan yang tersedia : unduh versi terbaru yang sudah stable dari NS-3, unduh versi

yang sedang dalam tahap pengembangan dan belum dalam keadaan stable, atau

unduh versi terdahulu. Versi 3 yang akan penulis gunakan adalah versi ke

NS-3-Dev (3.11) karena pada saat memulai penelitian, versi ini adalah versi yang

terbaru. Semua file yang dapat diunduh dibuat dalam format tarball, sehingga nama

file yang akan penulis unduh adalah “ns-allinone-3.11.tar.bz2”.

Pada bagian berikut akan dijelaskan mengenai langkah-langkah apa saja

yang harus dilakukan dalam meng-instalasi network simulator NS-3.11 ke dalam

sistem ubuntu setelah file berhasil diunduh. Setelah user mengunduh file source

code yang dibutuhkan, selanjutnya user memindahkan file kedalam directory yang

diinginkan. Lalu user masuk ke dalam terminal dan memasukan perintah sebagai

berikut:

$bunzip2 ns-allinone-3.11.tar.bz2

$tar xvf ns-allinone-3.11.tar

$cd ns-allinone-3.11

$./build.py

Pada perintah pertama, user akan meng-extract file yang sebelumnya

telah di compress untuk memperkecil file unduhan. Pada baris berikutnya, user

akan membuka file tar dengan flag “xvf” yang berarti mengekstrak (x),

(5)

suatu file (f). Setelah ekstraksi selesai dilakukan, pada perintah baris ketiga, user

akan pindah directory dan masuk kedalam directory “ns-allinone-3.11”. Setelah

memasuki directoy “ns-allinone-3.11”, user akan mengeksekusi file shell

programming bernama “build.py”dengan perintah pada baris ke empat. Setelahnya user akan melihat pesan compiler yang sangat banyak hingga proses instalasi

berhenti saat muncul pesan :

$Build finished successfully (00:02:37)

$Leaving directory `./ns-3-allinone'

Jika pesan tersebut sudah muncul, maka selanjutnya adalah user akan

memasuki directory “ns-3.11” dengan memasukan perintah:

$cd ns-3.11

Untuk selanjutnya, aplikasi NS-3 harus dijalankan dari directory tersebut.

Selanjutnya, dilakukan proses testing dengan mengeksekusi file shell programming

bernama “test.py” dengan memasukan perintah:

$./test.py

Sehingga akan menghasilkan output seperti:

PASS: TestSuite histogram

PASS: TestSuite ns3-wifi-interference

PASS: TestSuite ns3-tcp-cwnd

PASS: TestSuite ns3-tcp-interoperability

PASS: TestSuite sample

...

Proses instalasi selesai setelah proses testing berakhir dan aplikasi NS-3

(6)

Untuk dapat mengeksekusi file simulasi yang sudah user buat atau

mengeksekusi contoh-contoh file yang disediakan oleh NS-3, user harus

memasukan perintah-perintah berikut ke dalam terminal :

$cd ns-allinone-3.11

$cd ns-3.11

$./waf --run hello-simulator

Pada baris perintah pertama dan kedua, user akan memasukin directory

“ns-3.10” sebelum dapat mengeksekusi file. Pada baris ketiga, user akan mulai

mengeksekusi file yang ada dalam contoh, eksekusi file menggunakan waf, yang

merupakan file konfigurasi untuk menjalankan program simulasi dan file yang akan

dieksekusi bernama “hello-simulator.cc”.

Setelah menulis file simulasi dari jaringan, maka file tersebut harus di

kompilasi untuk menjadi program yang dapat dipergunakan. Salah satu tools yang

bisa digunakan untuk melakukan kompilasi antara lain adalah waf. Waf adalah

salah satu kompilator terbaru yang dibangun dengan basis bahasa python. Karena

itu waf menjadi salah satu pilihan terbaik untuk menjalan kan file 3 dimana

NS-3 juga dibangun menggunakan bahasa python. Waf dapat mengkompilasi data

python dari sistem NS-3 tanpa mengharuskan user menguasai bahasa pemrograman

python.

2. Proses Menjalankan Program

Pada bagian ini akan dijelaskan tahap-tahap menjalankan program pada network simulator

(7)

1. Masuk ke dalam directory ns-3-dev.

$cd ns-3-dev

2. Eksekusi program dengan menggunakan waf.

$./waf --run final

3. Jika ingin merubah parameter-parameter dari program pada saat compile-time, eksekusi

program dengan flag “--PrintHelp”.

$./waf --run “final --PrintHelp”

Dengan mengeksekusi file dengan flag tersebut, akan muncul parameter-parameter yang

dapat diubah dari program.

Gambar L.1 Parameter Yang Terdapat Dalam Program

Nilai awal dari tiap parameter adalah:

- jalur = 1;

Untuk menjalankan program dengan parameter yang akan kita ubah.

$./waf --run “final --jalur=2”

(8)

2.1 Menjalankan Simulasi Untuk PDR

1. Saat kita ingin melakukan simulasi PDR, maka mulai simulasi dengan mengeksekusi

program dengan perintah pada terminal.

$./waf --run “final --jalur=1”

$./waf --run “final --jalur=2”

Eksekusi program diatas dapat diartikan “jalankan program untuk menghitung PDR

dengan jalur Tunnel1 dan RedundantTunnel1. simpan hasil output kedalam file

bernama temp.dat”. Setelah itu semua hasil output dari terminal akan dipindahkan

kedalam file temp.dat. Jalannya simulasi berlangsung 1.2 , 1.5 , 1.8 , 2.1 , 2.4 , 2.7 ,

3.0 , 3.3 , 3.6 , 3.9 seconds dengan mengubah Simulator::Stop (Seconds (....)). Ulangi

simulasi sampai 3.9 seconds, maka akan didapat :

(9)

Jalur=2 [Redundant Tunnel1 ke server1 dan server2]:

Gambar L.2 Output Program Untuk PDR

2.2 Menjalankan Simulasi Untuk Throughput

Pada perhitungan throughput, lakukan sesuai dengan langkah-langkah pada

perhitungan PDR dan eksekusi program dengan mengubah Simulator::Stop (Seconds (....)).

Ulangi simulasi sampai 3.9 seconds, maka akan didapat :

(10)

Jalur=2 [Redundant Tunnel1 ke server1 dan server2] :

Gambar L.3 Output Program Untuk Throughput

2.3 Menjalankan Simulasi Untuk Delay

Pada perhitungan Delay lakukan sesuai dengan langkah-langkah pada perhitungan

PDR dan eksekusi program dengan mengubah Simulator::Stop (Seconds (....)). Ulangi

simulasi sampai 3.9 seconds, maka akan didapat :

(11)

Jalur=2 [Redundant Tunnel1 ke server1 dan server2] :

Gambar L.4 Output Program Untuk Delay

2.4 Menjalankan Simulasi Untuk Packet Loss Ratio

Pada perhitungan Packet Loss Ratio lakukan sesuai dengan langkah-langkah pada

perhitungan PDR dan eksekusi program dengan mengubah Simulator::Stop (Seconds (....)).

Ulangi simulasi sampai 3.9 seconds, maka akan didapat :

(12)

Jalur=2 [Redundant Tunnel1 ke server1 dan server2] :

Gambar L.5 Output Program Untuk Packet Loss Ratio

Ploting gambar dengan menggunakan program gnuplot seperti pada perintah Menjalankan

Simulasi Untuk PDR pada no.2 dan 3.

2.5 Menjalankan QoE Monitoring

• Download dan copy file 1.cc and qoe-monitor-example-2.cc dari folder qoe-monitor/example ke dalam folder ns-allinone-3.13/ns-3.13/scratch

• Lalu building dan compile module qoe-monitor di dalam folder ns-allinone-3.13/ns-3.13 dengan command:

• export CFLAGS="-Wall -ggdb -g3 -O0 -DSTDC_CONSTANT_MACROS“ • export CXXFLAGS="Wall ggdb g3 O0

-DSTDC_CONSTANT_MACROS“

• export LINKFLAGS="L/usr/local/include/libavcodec L/usr/local/include/libavformat/

L/usr/local/include/libavutil lavcodec lavformat -lavutil“

• ./waf configure • ./waf

(13)

• Tahap akhir adalah menjalankan example file module QoE Monitor dengan sample video:

./waf run scratch/qoemonitorexample commandtemplate="gdb --args %s scratch/figure-test.mp4“

Setelah dijalankan muncul pesan sebagai berikut:

Waf: Entering directory `/home/putut/tarballs/ns-allinone-3.13/ns-3.13/build' Waf: Leaving directory `/home/putut/tarballs/ns-allinone-3.13/ns-3.13/build' 'build' finished successfully (0.840s)

GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04 Copyright (C) 2012 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details.

This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://bugs.launchpad.net/gdb-linaro/>...

Reading symbols from /home/putut/tarballs/ns-allinone-3.13/ns-3.13/build/scratch/qoe-monitor-example-1...done. ( g d b ) r u n

Gambar

Gambar L.1 Parameter Yang Terdapat Dalam Program

Referensi

Dokumen terkait

Nilai rata-rata yang dicapai siswa adalah 8, 13 dengan predikat sangat baik , maka dapat disimpulkan bahwa kemampuan menganalisis struktur teks cerita pendek siswa

Sebagai tindak lanjut dari moratorium, Satuan Tugas Pencegahan dan Pemberantasan Penangkapan Ikan secara Ilegal dibentuk untuk melakukan Analisis dan Evaluasi (Anev) terhadap

Berdasarkan hasil analisis dan pembahasan, dapat disimpulkan bahwa semua variabel bebas dalam penelitian yaitu religiusitas, kesadaran halal, dan sertifikasi halal memiliki

Untuk mengetahui perbedaan efektivitas antara model pembelajaran kooperatif mencari pasangan (make a match) dan LKS dalam meningkatkan penguasaan konsep pengikhtisaran

Dari tabel 4.13 di atas dapat diketahui bahwa dari uji ANOVA atau F test didapat nilai F hitung sebesar 45,477 dan signifikan pada 0,000 &lt; dari α = 0.05 maka dengan demikian

Akan tetapi, daripada kita menghakimi para pemimpin Gereja, barangkali lebih baik bagi kita untuk mempertimbangkan tantangan-tantangan yang dihadapi oleh para pemimpin Gereja

Tahap plan dimulai dengan menyusun rancangan pembelajaran yang akan dilaksanakan berdasarkan pada data awal kondisi mahasiswa yang disampaikan oleh dosen pengampu mata

bahkan Tergugat sudah menikah lagi dengan perempuan lain dan kini Penggugat tetap bersikeras untuk bercerai;--- Menimbang, bahwa dalam suatu rumah tangga jika suami istri tidak