unicast, multicast, atau anycast yang oleh sumber diberi label sebagai traffic flow (RFC-3697 2004). Hop Count: banyaknya node yang harus dilewati oleh suatu paket dari node asal ke node tujuan (Altman et al. 2003). Network Simulator (NS2) NS2 merupakan suatu simulator jaringan yang mendukung banyak aplikasi, protokol, unsur-unsur jaringan, dan model-model trafik. NS2 memiliki dasar dari dua bahasa pemrogaman yaitu C++ yang digunakan untuk menuliskan simulator berorientasi objeknya dan interpreter OTcl ( yang merupakan suatu ekstensi berorientasi objek Tcl) yang digunakan untuk menjalankan script perintah dari pengguna (Altman et al. 2003). Gangguan Inter-flow dan Intra-flow C
A
dari traffic flow yang sama bersaing satu sama lain untuk mendapatkan channel bandwidth. Hal ini meningkatkan konsumsi bandwidth dari traffic flow pada tiap node sepanjang jalur dan menyebabkan throughput dari traffic flow berkurang secara drastis dan delay pada tiap hop meningkat sejalan dengan bertambahnya hop count pada traffic flow (Yang et al.2005). METODE PENELITIAN Studi Pustaka Analisis Permasalahan Perancangan Jaringan
Penyusunan Skenario
B E
Proses Simulasi F
Analisis Hasil
Gambar 9 Contoh gangguan inter-flow (Yang et al.2005). Berbeda dengan jalur kabel yang memiliki dedicated bandwidth, bandwidth pada jalur wireless dibagi diantara node-node yang bersebelahan. Traffic flow yang melalui jalur wireless tidak hanya menghabiskan bandwidth dari node-node pada jalur yang dilaluinya, tetapi juga bersaing memperebutkan bandwidth dengan node-node yang berada pada daerah yang berdekatan. Gangguan yang disebabkan oleh hal ini disebut gangguan inter-flow yang bisa menyebabkan bandwidth starvation pada beberapa node karena node–node tersebut sering mengalami channel yang sibuk. B A
Gambar 11 Metode penelitian. Studi Pustaka Pada tahap ini kegiatan yang dilakukan adalah mengumpulkan dan membaca semua literatur dan informasi yang terkait dengan penelitian. Informasi tersebut bisa didapatkan dari jurnal, buku, internet dan artikel yang yang berkaitan dengan penelitian. Analisis Permasalahan Pada tahap ini dilakukan analisis terhadap hal-hal yang berkaitan secara langsung terhadap jaringan ad hoc, dan parameter yang akan digunakan untuk menentukan kualitas kinerja jaringan ad hoc pada tiap topologi yang berbeda. Perancangan Jaringan
C D
Gambar 10 Contoh gangguan intra-flow (Yang et al.2005). Selain gangguan inter-flow, ada juga gangguan intra-flow dimana node pada jalur
Kegiatan yang dilakukan pada tahap ini adalah perancangan jaringan dan protokolprotokol yang digunakan dalam simulasi. Simulasi hanya menggunakan topologi mesh, ring, tree dan line karena topologi star dan bus sulit untuk diterapkan pada jaringan wireless. Berdasarkan penelitian Oh et al (2008) kinerja throughput dari suatu jaringan yang jumlah flow-nya sama dengan jumlah node-nya, hasilnya tidak begitu berbeda antara jaringan
4
yang memiliki jumlah node pada rentang 25 sampai 81 buah node, sehingga pada simulasi ini digunakan 25 buah node untuk menyederhanakan dan mempercepat proses simulasi. Semua node yang berada pada jaringan bersifat statik dimana posisi node selalu tetap selama simulasi dijalankan. Pada simulasi ini protokol routing yang digunakan adalah AODV. Protokol routing AODV dipilih karena sifatnya yang memungkinkan node untuk mendapatkan rute secara cepat untuk node tujuan yang baru serta node tidak perlu memelihara rute menuju tujuan pada saat tidak ada komunikasi yang aktif. Protokol MAC layer yang digunakan adalah IEEE 802.11b dengan besar bandwidth 11 Mbps. Ukuran paket pada simulasi ini adalah 1024 bytes dan protokol yang digunakan untuk pertukaran data adalah protokol UDP (User Datagram Protocol), protokol ini dipilih karena tidak memerlukan komunikasi awal untuk menciptakan saluran khusus untuk jalur data. Simulasi dilakukan dengan memvariasikan jumlah traffic flow dan packet generation interval pada tiap topologi.
Skenario yang digunakan pada penelitian ini adalah sebagai berikut: Topologi. Terdapat empat topologi yang digunakan pada simulasi, yaitu: mesh, ring, tree, dan line. Pada simulasi, topologi tree yang digunakan adalah topologi tree yang unbalance. Penempatan node untuk tiap topologi pada simulasi bisa dilihat pada Gambar 12, 13, 14 , dan 15.
Gambar 12 Penempatan node pada topologi ring.
Penyusunan Skenario Tabel 1 Variasi parameter jaringan Topologi
Mesh
Ring
Tree
Line
Jumlah Flow saat PGI (detik)= 0.1
0.01
0.001
5
5
5
10
10
10
15
15
15
20
20
20
5
5
5
10
10
10
15
15
15
20
20
20
5
5
5
10
10
10
15
15
15
20
20
20
5
5
5
10
10
10
15
15
15
20
20
20
Gambar 13 Penempatan node pada topologi tree. Gambar 14 Penempatan node pada topologi line.
Gambar 15 Penempatan node pada topologi mesh. Node. Digunakan 25 node yang bersifat statik. Traffic flow: 5, 10, 15, 20 traffic flow. Masing-masing dibangkitkan secara acak
5
melalui fungsi cbrgen pada NS-2 sebanyak 10 buah skenario untuk setiap nilai traffic flow yang berbeda. Packet generation interval (PGI): 0.1, 0.01, 0.001 detik. Variasi parameter jaringan yang digunakan bisa dilihat pada Tabel 1. Jumlah paket: jumlah paket maksimum yang dikirimkan pada tiap traffic flow adalah 10000 paket. Proses Simulasi Simulasi dilakukan pada komputer dengan spesifikasi sebagai berikut: Prosesor : Intel Core 2 Duo T550 Memori : 512 MB Sistem operasi : Ubuntu 10.10 Perangkat lunak yang digunakan dalam penelitian antara lain: Network Simulator 2 (NS-2) versi 2.35. Aplikasi ini merupakan aplikasi utama yang digunakan untuk menjalankan proses simulasi. Perl. Aplikasi ini digunakan untuk mengolah file *.tr yang merupakan data output dari simulasi dengan menggunakan NS-2. Microsoft Excel 2007. Aplikasi ini digunakan untuk membuat grafik dari data hasil simulasi. Pembuatan Script *.tcl NS2 M enjalankan Script *.tcl
Simulasi M enghasilkan File *.tr dan *.nam
Parsing File *.tr dengan menggunakan PERL
Didapatkan nilai QoS Plotting Data ke Grafik
Gambar 16 Langkah-langkah simulasi. Dalam simulasi langkah-langkah dilakukan adalah sebagi berikut:
yang
Membuat script *.tcl sesuai dengan skenario yang telah ditentukan sebelumnya. Berikut ini struktur dasar dari script *.tcl menurut Altman et al. (2004) : a) Inisialisasi: Simulasi ns diawali dengan perintah Set ns [new simulator]
Yang mendeklarasikan variabel ns sebagai suatu instance dari kelas simulator. Kemudian file yang akan digunakan untuk menyimpan hasil simulasi dan visualisasi dideklarasikan dengan perintah Set trace[open out.tr w] $ns trace-all $trace Set nam[open out.nam w] $ns namtrace-all $nam
Penentuan nilai parameter dan tipe jaringan yang digunakan dilakukan dengan perintah Set val(nama variabel) (nilai)
Berikut ini variabel-variabel dari parameter yang digunakan dalam simulasi ini: o chan: Tipe dari channel. o prop: Model propagasi radio. o netif: tipe interface jaringan. o mac: tipe MAC, parameter mac memiliki beberapa subparameter antara lain: - SlotTime_: Waktu minimum antara pengiriman 2 paket. - SIFS_: Small Inter Frame Space, waktu yang dibutuhkan receiver untuk kembali siap menerima paket setelah menerima paket sebelumnya. - PreambleLength_: panjang dari preamble yaitu bagian awal dari PLCP (Physical Layer Convergence Protocol) PDU (Packet Data Unit) yang digunakan untuk memberi tahu receiver bahwa paket akan dikirim. PLCPHeaderLength_: panjang header dari PLCP. - PLCPDataRate_: kecepatan data PLCP yang dikirim melalui channel. - DataRate_: kecepatan maksimum pengiriman data dalam suatu channel.
6
-
BasicRate_: kecepatan dasar pengiriman data dalam suatu channel. o ifq: tipe queue dari interface. o ll: tipe link layer. o ant: model antena. o ifqlen: maksimum paket di dalam ifq. Contoh dari tahap inisialisasi bisa dilihat pada Lampiran 1. b) Definisi dari node-node jaringan, link, queue, dan topologi: membuat nodenode yang masing-masing ditunjukkan oleh suatu variabel node_($i). set node_($i) [$ns node]
Setelah itu didefinisikan posisi dari tiaptiap node dengan perintah $node_(1) set X_ 50 $node_(1) set Y_ 100
Parameter dari node yang digunakan ditetapkan dengan perintah $ns_ node-config –(nama parameter) $val(nama parameter) \
Contoh lebih lengkap dari tahap ini bisa dilihat pada Lampiran 2 dan 3. c) Agen dan aplikasi: agen(protokol) seperti TCP dan UDP digunakan sebagai bagian yang membentuk traffic flow dari suatu jaringan. Disini diberikan contoh suatu traffic flow CBR. Pertama ditentukan suatu agen UDP yang kemudian di-attach pada node asal set udp_(0) [new Agent/UDP] $ns_ attach-agent $node_(1) $udp_(0)
Dan agen sink yang di-attach pada node tujuan set null_(0) [new Agent/Null] $ns_ attach-agent $node_(2) $null_(0)
Kemudian dibuat agen CBR yang akan di-attach pada agen UDP beserta parameter-parameter dari traffic flow seperti ukuran paket, PGI, jumlah maksimal paket yang dikirim, dan kondisi pengiriman paket set cbr_(0) [new Application/Traffic/CBR] $cbr_(0) set packetSize_ 1024 $cbr_(0) set interval_ 0.001 $cbr_(0) set random_ 1 $cbr_(0) set maxpkts_ 10000
$cbr_(0) attach-agent $udp_(0)
Setelah itu agen UDP di node asal dihubungkan dengan agen null di node tujuan $ns_ connect $udp_(0) $null_(0)
Contoh dari tahap ini bisa dilihat pada Lampiran 4. d) Penjadwalan event: menentukan kapan suatu event pada simulasi akan dijalankan dengan perintah $ns at (waktu event) “(event)” Contoh dari penggunaan tahap ini bisa dilihat pada Lampiran 4 dan 5. e) Penghentian simulasi: membuang semua trace dari file-file yang bersangkutan, menutup semua file trace, menghentikan simulasi dan mengembalikan angka 0 sebagai status dari sistem. Fungsi dasar dari tahap ini yaitu proc stop {} { global ns_ tracefd $ns_ flush-trace close $tracefd }
Dan di-invoke dengan menggunakan fungsi penjadwalan. Contoh dari tahap ini bisa dilihat pada Lampiran 5. Script *.tcl ini kemudian dijalankan dengan menggunakan NS-2 sehingga dihasilkan dua buah file, yaitu file *.tr yang berisi hasil trace data dan file *.nam yang digunakan untuk menampilkan animasi dari simulasi.. Proses parsing kemudian dilakukan terhadap file *.tr dengan menggunakan PERL sehingga didapatkan nilai throughput, delay, jitter, dan packet received rate. Berikut ini kerangka dasar dari script perl yang digunakan: a) Inisialisasi awal: Pertama dilakukan pengecekan file input dengan perintah open((variabel dari file input), $ARGV[0]) or die "Cannot open the trace file";
Kemudian dilakukan deklarasi variabelvariabel yang digunakan dengan perintah my $(nama variabel);
variabel)
=
(nilai
b) Parsing file *.tr: parsing dilakukan dengan melakukan pembacaan perbaris dari file input menggunakan perintah
7
while(<(variabel input)>){
dari
kemudian baris tersebut pisahkan dengan spasi pemisahnya melalaui fungsi
file
dipisahsebagai
my @line = split;
c) Penghitungan nilai dari parameter QoS. Berikut ini salah satu contoh perhitungan yang digunakan $tp+=$line [7];
d) Menampilkan output dari perhitungan dengan perintah
hasil
printf("%f”, $(nama variabel));
Setelah itu data hasil parsing kemudian diplotkan ke dalam grafik dengan menggunakan microsoft excel 2007.
flow ditambah dan nilai dari packet generation interval tetap, nilai dari throughput pada tiap jaringan cenderung terus bertambah dengan pengecualian pada saat packet generation interval bernilai 0.01 detik dan jumlah traffic flow bertambah dari 15 traffic flow menjadi 20 traffic flow nilai dari throughput pada topologi mesh dan tree justru semakin berkurang. Pada saat packet generation interval bernilai 0.1 dan 0.01 detik nilai throughput dari topologi mesh bernilai paling tinggi saat jumlah traffic flow berada antar 5-15 traffic flow. Ketika traffic flow berjumlah 20 buah nilai throughput tertinggi justru dimiliki oleh topologi ring dikarenakan mulai menurunnya nilai throughput pada topologi mesh. Pada saat packet generation interval-nya bernilai 0.001 detik terlihat bahwa nilai throughput dari topologi mesh selalu bernilai paling besar dibandingkan topologi ring, tree, dan line dengan perbedaan yang cukup signifikan.
Analisis Hasil Throughput saat PGI=0.1s
Throughput(Mbps)
Analisis dilakukan pada data hasil pengolahan trace file dengan menggunakan PERL. Data lengkap dari masing-masing parameter dapat dilihat pada Lampiran 6, 7, dan 8. Parameter yang digunakan dalam analisis adalah: Throughput Delay paket rata-rata Jitter rata-rata Packet delivery ratio.
1 0.8 0.6
Mesh
0.4
Ring
0.2
Tree
Line
0
5
10 15 20 Traffic Flow
HASIL DAN PEMBAHASAN
Throughput Nilai throughput yang digunakan merupakan rata-rata dari 10 kali pengambilan data. Grafik hasil perhitungan throughput dapat dilihat pada Gambar 17, 18, dan 19. Saat nilai dari packet generation interval dinaikkan dari 0.1 detik sampai 0.001 detik dengan jumlah traffic flow yang sama, nilai throughput pada seluruh topologi cenderung terus menurun. Pada saat jumlah dari traffic
Gambar 17 Grafik throughput dengan packet generation interval 0.1 detik.
Throughput saat PGI=0.01s Throughput(Mbps)
Data hasil analisis kemudian dibandingkan untuk mendapatkan pola yang terbentuk dari masing-masing topologi pada parameterparameter yang berbeda. Data kemudian dibagi berdasarkan parameter analisis yang digunakan. Kemudian pada tiap parameter data, tiap topologi yang memiliki nilai packet generation interval dan jumlah traffic flow yang berbeda dibandingkan untuk melihat kinerja jaringan ad hoc pada masing-masing topologi.
1 0.8 0.6
Mesh
0.4
Ring
0.2
Tree
0
Line 5
10 15 20 Traffic Flow
Gambar 18 Grafik throughput dengan packet generation interval 0.01 detik. Salah satu penyebab turunnya nilai throughput dari jaringan saat beban pada jaringan tersebut bertambah adalah timbulnya
8