Anda di halaman 1dari 113

ANALISIS PERFORMA ROUTING PROTOKOL DSR

DAN DSDV MENGGUNAKAN NS-3 PADA MOBILE


AD-HOC NETWORK (MANET)

SKRIPSI

Oleh :

MUSTAFTIH IRSAL U

1111091000012

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI

SYARIF HIDAYATULLAH

JAKARTA

2018 M/1439 H
ANALISIS PERFORMA ROUTING PROTOKOL DSR
DAN DSDV MENGGUNAKAN NS-3 PADA MOBILE
AD-HOC NETWORK (MANET)

Skripsi

Sebagai Salah Satu Syarat Untuk Memperoleh Gelar

Sarjana Komputer

Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh :

MUSTAFTIH IRSAL U
1111091000012

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

2018 M/1439 H
LEMBAR PERSETUJUAN

ANALISIS PERFORMA ROUTING PROTOCOL DSR DAN


DSDV MENGGUNAKAN NS-3 PADA MOBILE AD-HOC
NETWORK (MANET)

Skripsi

Sebagai Salah Satu Syarat untuk


Memperoleh Gelar Sarjana Komputer (S.Kom)

Oleh:
MUSTAFTIH IRSAL U
1111091000012

Menyetujui,

Pembimbing I, Pembimbing II,

Andrew Fiade, M.Kom Hendra Bayu Suseno, M.Kom


NIP. 19820811 200912 1 004 NIP. 1981211 200912 1 003

Mengetahui,
Ketua Prodi Teknik Informatika

Arini, MT
NIP. 19760131 200901 2 001

i
PERNYATAAN ORISINALITAS

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR


HASIL KARYA SAYA SENDIRI YANG BELUM PERNAH DIAJUKAN
SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI
ATAU LEMBAGA MANAPUN

Jakarta, 28 Juni 2018

Mustaftih Irsal U
1111091000012

ii
HALAMAN PENGESAHAN

Skripsi yang berjudul “Analisis Performa Routing Protocol DSR Dan DSDV
Menggunakan NS-3 Pada Mobile Ad-Hoc Network” yang ditulis oleh Mustaftih
Irsal U, NIM. 1111091000012 telah diuji dan dinyatakan lulus dalam Sidang
Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif
Hidayatullah Jakarta pada hari Rabu, tanggal 6 Juni 2018. Skripsi ini telah diterima
sebagai salah satu syarat memperoleh gelar sarjana strata satu (S1) pada Program
Studi Teknik Informatika.
Tim Penguji,
Penguji I Penguji II

Nashrul Hakiem, Ph.D Siti Ummi Masruroh, M.Sc


NIP. 197106082005011005 NIP. 198208232011012013
Tim Pembimbing,
Pembimbing I Pembimbing II

Andrew Fiade, M.Kom Hendra Bayu Suseno, M.Kom


NIP. 198208112009121004 NIP. 198212112009011003
Mengetahui
Dekan Ketua Program Studi
Fakultas Sains dan Teknologi Teknik Informatika

Dr. Agus Salim, M.Si Arini, MT


NIP. 1972081619990313 NIP. 197601312009012001

iii
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI
SKRIPSI UNTUK KEPENTINGAN AKADEMIS

Sebagai sivitas akademik UIN Syarif Hidaytaullah Jakarta, saya yang bertanda
tangan di bawah ini:

Nama : Mustaftih Irsal U


NPM : 1111091000012
Program Studi : Teknik Informatika
Fakultas : Sains Dan Teknologi
Jenis Karya : Skripsi

demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada


Universitas Islam Negeri Syarif Hidayatullah Jakarta Hak Bebas Royalti
Noneksklusif (Non-exclusive Royalty Free Right) atas karya ilmiah yang berjudul:
ANALISIS PERFORMA ROUTING PROTOCOL DSR DAN DSDV
MENGGUNAKAN NS-3 PADA MOBILE AD-HOC NETWORK (MANET)

beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti
Noneksklusif ini Universitas Islam Negeri Syarif Hidayatullah Jakarta berhak
menyimpan, mengalih media/formatkan, mengelola dalam bentuk pangkalan data
(database), merawat, dan mempublikasikan tugas akhir saya selama tetap
mencantumkan nama saya sebagai penulis/pencipta dan sebagai pemilik Hak Cipta.
Demikian pernyataan ini saya buat dengan sebenarnya.

Dibuat di : Jakarta
Pada tanggal : 28 Juni 2018
Yang menyatakan

(Mustaftih Irsal U)

iv
KATA PENGANTAR

Assalamu’alaikum Wr. Wb.


Segala puji dan syukur penulis panjatkan kehadirat Allah SWT atas segala
karunia, rahmat, kekuatan dan segala petunjuk serta kemudahan sehingga penulis
dapat menyelesaikan penulisan skripsi ini dengan sebaik-baiknya. Shalawat serta
salam tak lupa penulis haturkan kepada junjungan kita Nabi besar Muhammad
SAW, para sahabat, keluarga serta muslimin dan muslimat, semoga kita
mendapatkan syafa’at-Nya di akhirat kelak Amiin.
Skripsi ini berjudul “Analisis Performa Routing Protocol DSR dan DSDV
menggunakan NS-3 Pada Mobile Ad-hoc Network (MANET)”, yang disusun untuk
memenuhi salah satu syarat dalam menyelesaikan program S1 pada Program Studi
Teknik Informatika di Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Penulis menyadari bahwa skripsi ini tidak dapat terselesaikan tanpa bantuan
dari pihak lain. Oleh karena itu, izinkanlah penulis mengucapkan “terimakasih”
kepada semua pihak yang telah membantu dalam penulisan skripsi ini, terutama
kepada:

1. Kedua Orang Tua Penulis yang tidak henti-hentinya selalu memberikan


semangat dan dukungan baik dalam bentuk do’a, materi serta kasih sayang
yang melimpah.
2. Bapak DR. Agus Salim, M.Si, selaku Dekan Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta.
3. Ibu Arini, ST. MT. Selaku Ketua Program Studi Teknik Informatika, dan
Bapak Feri Fahrianto, M.Sc. selaku Sekretaris Program Studi Teknik
Informatika, Fakultas Sains dan Teknologi UIN Syarif Hidayatullah
Jakarta.
4. Bapak Andrew Fiade, M.kom, dan Bapak Hendra Bayu Suseno, M.Kom,
selaku Dosen Pembimbing yang telah memberikan banyak nasihat, saran,
dan bimbingan yang bermanfaat kepada penulis selama penyusunan skripsi
ini.

v
5. Bapak Mahbubul Wathoni, M.Kom yeng memberi arahan dan tempat
kepada penulis untuk melakukan penelitian di Pusat Lab Terpadu Fakultas
Sains dan Teknologi
6. Seluruh Dosen di Program Studi Teknik Informatika UIN Syarif
Hidayatullah Jakarta.
7. Seluruh LS-ADIan lintas generasi yang memberikan penulis pencerahan
dan cara pandang baru terutama (ucok, jaid, komok, ali, dimong, kong sabri,
kopok dan rifki).
8. Seluruh sahabat sahabati PMII Komisariat Fakultas Sains dan Teknologi
yang penulis cintai dan Indira Puspadewanty yang selalu memberikan
semangat dan support selama ini untuk mengerjakan skripsi. Terlebih
sahabat sahabati Distrik Power Ranger 2011.
9. Grup Damay 20k terutama (don ujo, valdi, eko, arman, ridho, galby,
chaung).
10. Seluruh teman-teman Program Studi Teknik Informatika Fakultas Sains dan
Teknologi UIN Syarif Hidayatullah. Khususnya TI A 2011.
11. Terimakasih juga untuk Chucky Crew (Achenk, Galdun) yang terus
memberikan support dan do’a.
12. Semua pihak yang secara langsung maupun tidak langsung membantu
penulis dalam menyelesaikan skripsi ini.

vi
Semoga kebaikan dan bantuan yang sudah diberikan kepada penulis kiranya
dicatat sebagai amal baik oleh Allah SWT. Penulis menyadari bahwa skripsi ini
jauh dari kata sempurna, oleh karena itu penulis sangat mengharapkan kritik dan
saran yang bersifat membangun dari pembaca ke alamat email
ical.omsus@gmail.com. Semoga skripsi ini dapat memberi manfaat bagi semua.
Amiin Amiin ya Robbal ‘alamiin.
Wassalamu’alaikum Wr. Wb.

Jakarta, 28 Juni 2018

Mustaftih Irsal U
1111091000012

vii
Nama : Mustaftih Irsal U
Nim : 1111091000012
Judul : Analisis Performa Routing Protocol DSR dan DSDV Menggunakan Ns-3
Pada Mobile Ad-Hoc Network (MANET)

ABSTRAK
Mobile Ad-Hoc Network (MANET) merupakan sebuah jaringan yang terdiri
dari gabungan perangkat-perangkat bergerak (mobile) tanpa infrastruktur, sehingga
membentuk jaringan yang bersifat sementara. Tiap perangkat memiliki antarmuka
nirkabel dan saling berkomunikasi melalui gelombang radio, kemudian tiap
perangkat tersebut dinamakan node. Dalam penerapannya, dibutuhkan sebuah
aturan berupa protokol ruting untuk menentukan rute pengiriman paket. Banyak
masalah yang muncul ketika menentukan penggunaan jalur yang efisien dalam
pengiriman paket data dari sumber ke tujuan. Penelitian ini dilakukan untuk
mengetahui dan membandingkan performa ruting protocol DSR (Dynamic Source
Routing) dan DSDV (Destination Sequenced Distance Vector) dengan mengacu
kepada tiga parameter, yaitu Throughput, Delay dan Packet loss. Hasil dari
penelitian ini menunjukkan bahwa Protokol ruting DSR lebih unggul dari protocol
ruting DSDV, protocol ruting DSR menghasilkan throughput yang lebih besar
dibandingkan protokol ruting DSDV. protokol ruting DSR menghasilkan lebih
sedikit Delay dibandingkan Delay protokol ruting DSDV. Selain itu, protokol
ruting DSR memiliki Packet loss yang stabil pada prosentase 40% dalam
penambahan node sampai 200 node. Packet loss protokol ruting DSDV bertambah
seiring dengan penambahan node, puncaknya pada jumlah 200 node, yaitu 50,34%
paket yang hilang. Berdasarkan pemaparan tersebut dapat disimpulkan bahwa
performa Protokol ruting DSR lebih baik dibandingkan protokol ruting DSDV

Kata kunci : MANET, Ruting Protokol, DSR, DSDV, node, NS3,


Throughput, Delay, Packet loss

viii
DAFTAR ISI

LEMBAR PERSETUJUAN .................................................................................... i


PERNYATAAN ORISINALITAS ......................................................................... ii
HALAMAN PENGESAHAN ............................................................................... iii
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI UNTUK
KEPENTINGAN AKADEMIS ............................................................................. iv
KATA PENGANTAR ............................................................................................ v
ABSTRAK ........................................................................................................... viii
DAFTAR ISI .......................................................................................................... ix
DAFTAR GAMBAR ........................................................................................... xiii
DAFTAR TABEL ................................................................................................. xv
BAB I PENDAHULUAN ...................................................................................... 1
1.1. Latar Belakang Masalah ........................................................................... 1
1.2. Tujuan Penelitian...................................................................................... 2
1.3. Manfaat Penelitian.................................................................................... 3
1.3.1 Bagi Penulis ...................................................................................... 3
1.3.2 Bagi Universitas ................................................................................ 3
1.4. Rumusan Masalah .................................................................................... 3
1.5. Batasan Masalah ....................................................................................... 3
1.6. Metode Penelitian ..................................................................................... 4
1.6.1 Metode Pengumpulan Data ............................................................... 4
1.6.2 Metode Simulasi ............................................................................... 5
1.7. Sistematika Penulisan ............................................................................... 5
BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI .............................. 7
2.1. Jaringan Nirkabel (Wireless) .................................................................... 7
2.2. Jenis Jaringan Wireless ............................................................................. 7
2.2.1. Wireless Wide Area Networks (WWANs) ........................................ 7
2.2.2. Wireless Metropolitan Area Networks (WMANs)............................ 8
2.2.3. Wireless Local Area Networks (WLANs) ........................................ 8
2.2.4. Wireless Personal Area Networks (WPANs) ................................... 9
2.3. Model OSI ................................................................................................ 9

ix
2.4. Protokol Ruting ...................................................................................... 16
2.4.1. Link State ........................................................................................ 16
2.4.2. Distance Vector ............................................................................... 17
2.4.3. Source Routing ................................................................................ 17
2.5. Mobile Ad-Hoc Network (MANET) ....................................................... 18
2.5.1. Karakteristik .................................................................................... 19
2.5.2. Kelebihan ........................................................................................ 20
2.5.3. Kekurangan ..................................................................................... 21
2.5.4. Aplikasi ........................................................................................... 22
2.6. Jenis Protokol Routing MANET ............................................................ 24
2.6.1. Proactive Routing ........................................................................... 25
2.6.2. Reactive Routing ............................................................................. 26
2.6.3. Hybrid Routing................................................................................ 26
2.7. DSR (Dynamic Source Routing) ............................................................ 27
2.7.1. Mekanisme Pencarian Rute (Route Discovery) .............................. 27
2.7.2. Mekanisme Pemeliharaan Rute (Route Maintenance) .................... 28
2.8. DSDV (Destination Sequence Distance Vector) .................................... 28
2.9. Faktor-faktor Performa Routing Protokol ............................................. 29
2.10. NS-3 .................................................................................................... 30
2.11. Sublime Text........................................................................................ 33
2.12. Simulasi Jaringan ................................................................................ 36
2.12.1. Faktor Simulasi Jaringan ............................................................. 36
2.12.2. Simulator Jaringan ....................................................................... 38
2.13. Metode Simulasi ................................................................................. 39
2.13.1. Problem Formulation .................................................................. 39
2.13.2. Conceptual Model ....................................................................... 40
2.13.3. Input / Output Data ..................................................................... 40
2.13.4. Modelling .................................................................................... 40
2.13.5. Simulation.................................................................................... 41
2.13.6. Verification and Validation ......................................................... 41
2.13.7. Experimentation .......................................................................... 41
2.13.8. Output Analysis ........................................................................... 42

x
2.14. Alasan Menggunakan Simulasi .......................................................... 42
2.15. Bahasa Pemrograman ......................................................................... 42
BAB III METODOLOGI PENELITIAN ............................................................ 46
3.1. Metode Pengumpulan Data .................................................................... 46
3.1.1 Studi Pustaka ................................................................................... 46
3.1.2 Studi Literatur ................................................................................. 46
3.2. Metode Simulasi ..................................................................................... 50
3.2.1 Problem Formulation...................................................................... 51
3.2.2 Conceptual Model ........................................................................... 51
3.2.3 Input / Output Data ......................................................................... 51
3.2.4 Modelling ........................................................................................ 51
3.2.5 Simulation ....................................................................................... 52
3.2.6 Verification and Validation............................................................. 52
3.2.7 Experimentation .............................................................................. 52
3.2.8 Output Analysis ............................................................................... 52
3.3. Alur Penulisan ....................................................................................... 53
BAB IV IMPLEMENTASI ................................................................................. 54
4.1. Problem Formulation ............................................................................. 54
4.2. Conceptual Model .................................................................................. 55
4.3. Input / Output Data ................................................................................ 56
4.4. Modelling ............................................................................................... 58
4.4.1 Skenario 1 ....................................................................................... 58
4.4.2 Skenario 2 ....................................................................................... 59
4.4.3 Skenario 3 ....................................................................................... 60
4.4.4 Skenario 4 ....................................................................................... 61
4.4.5 Skenario 5 ....................................................................................... 62
4.5. Simulation............................................................................................... 63
4.6. Verification and Validation .................................................................... 65
4.7. Experimentation ..................................................................................... 65
4.8. Output Analysis ...................................................................................... 65
BAB V HASIL DAN PEMBAHASAN .............................................................. 66
5.1. Verification and Validation .................................................................... 66

xi
5.2. Experimentation ..................................................................................... 66
5.2.1. Protokol ruting DSR ....................................................................... 66
5.2.2. Protokol ruting DSDV .................................................................... 67
5.3. Output Analysis Ruting Protokol DSR dan DSDV ................................ 68
5.3.1. Hasil Simulasi Skenario DSR 10 node ........................................... 68
5.3.2. Hasil Simulasi Skenario DSR 50 node ........................................... 69
5.3.3. Hasil Simulasi Skenario DSR 100 node ......................................... 69
5.3.4. Hasil Simulasi Skenario DSR 150 node ......................................... 70
5.3.5. Hasil Simulasi Skenario DSR 200 node ......................................... 71
5.3.6. Hasil Simulasi Skenario DSDV 10 node ........................................ 71
5.3.7. Hasil Simulasi Skenario DSDV 50 node ........................................ 72
5.3.8. Hasil Simulasi Skenario DSDV 100 node ...................................... 73
5.3.9. Hasil Simulasi Skenario DSDV 150 node ...................................... 73
5.3.10. Hasil Simulasi Skenario DSDV 200 node................................... 74
5.4. Output Analysis Performa Ruting .......................................................... 74
5.4.1. Performa Throughput ...................................................................... 74
5.4.2. Performa Delay ............................................................................... 76
5.4.3. Performa Packet loss ....................................................................... 77
BAB VI PENUTUP .............................................................................................. 81
6.1. Kesimpulan............................................................................................. 81
6.2. Saran ....................................................................................................... 81
DAFTAR PUSTAKA ........................................................................................... 82
LAMPIRAN .......................................................................................................... 85

xii
DAFTAR GAMBAR

Gambar 2. 1 Layer OSI ......................................................................................... 11

Gambar 2. 2 Header UDP ..................................................................................... 15

Gambar 2. 3 Perangkat Heterogen ........................................................................ 18

Gambar 2. 4 Perangkat Homogen ......................................................................... 18

Gambar 2. 5 Protokol Routing MANET ............................................................... 25

Gambar 2. 6 Logo Sublime Text........................................................................... 34

Gambar 2. 7 Bahasa aras tinggi ............................................................................ 43

Gambar 2. 8 Bahasa aras rendah ........................................................................... 44

Gambar 3. 1 Alur Penulisan .................................................................................. 53

Gambar 4. 1 Tahapan Protokol Routing DSR dan DSDV menggunakan NS3 .... 55

Gambar 4. 2 Topologi Jaringan MANET 10 node, Luas Area 1000m X 1000m . 58

Gambar 4. 3 Topologi Jaringan MANET 50 node, Luas Area 1000m X 1000m . 59

Gambar 4. 4 Topologi Jaringan MANET 100 node, Luas Area 1000m X 1000m 60

Gambar 4. 5 Topologi Jaringan MANET 150 node, Luas Area 1000m X 1000m 61

Gambar 4. 6 Topologi Jaringan MANET 200 node, Luas Area 1000m X 1000m 62

Gambar 5. 1 Ruting DSR ...................................................................................... 66

Gambar 5. 2 Data berjalan DSR ........................................................................... 67

Gambar 5. 3 Ruting DSDV ................................................................................... 67

xiii
Gambar 5. 4 Data Berjalan DSDV ........................................................................ 68

Gambar 5. 5 Protokol ruting DSR dengan topologi 10 node ................................ 68

Gambar 5. 6 Protokol ruting DSR dengan topologi 50 node ................................ 69

Gambar 5. 7 Protokol ruting DSR dengan topologi 100 node .............................. 70

Gambar 5. 8 Protokol ruting DSR dengan topologi 150 node .............................. 70

Gambar 5. 9 Protokol ruting DSR dengan topologi 200 node .............................. 71

Gambar 5. 10 Protokol ruting DSDV dengan topologi 10 node ........................... 71

Gambar 5. 11 Protokol ruting DSDV dengan topologi 50 node ........................... 72

Gambar 5. 12 Protokol ruting DSDV dengan topologi 100 node ......................... 73

Gambar 5. 13 Protokol ruting DSDV dengan topologi 150 node ......................... 73

Gambar 5. 14 Protokol ruting DSDV dengan topologi 200 node ......................... 74

Gambar 5. 15 Grafik throughput DSR dan DSDV ............................................... 75

Gambar 5. 16 Grafik Delay DSR dan DSDV ....................................................... 77

Gambar 5. 17 Grafik Packet loss DSR dan DSDV ............................................... 78

Gambar 5. 18 Grafik Packet loss DSR dan DSDV ............................................... 80

xiv
DAFTAR TABEL

Tabel 2. 1 Fungsi Model pada OSI ....................................................................... 11

Tabel 2. 2 Aplikasi MANET ................................................................................. 22

Tabel 2. 3 Kekurangan dan Kelebihan DSDV ...................................................... 29

Tabel 2. 4 Bahasa Pemrograman aras tinggi ......................................................... 44

Tabel 3. 1 Perbandingan Studi Literatur ............................................................... 47

Tabel 3. 2 Kekurangan dan Kelebihan .................................................................. 49

Tabel 4. 1 Parameter Simulasi .............................................................................. 57

Tabel 5. 1 Hasil simulasi Throughput DSR dan DSDV ....................................... 75

Tabel 5. 2 Hasil simulasi Delay DSR dan DSDV ................................................. 76

Tabel 5. 3 Hasil simulasi Packet loss DSR dan DSDV ........................................ 78

xv
BAB I
PENDAHULUAN

1.1. Latar Belakang Masalah

Seiring dengan pesatnya perkembangan dibidang teknologi


informasi dan komunikasi demi memenuhi kebutuhan-kebutuhan manusia.
Perangkat-perangkat elektronik yang dikembangkan sekarang ini juga turut
memicu akan perkembangan teknologi tersebut. Beberapa contoh perangkat
mobile yang umum dipakai antara lain PDA (Personal Desktop Assistance),
smartphone, laptop, notebook dan sebagainya. Merupakan peralatan yang
sekarang ini digunakan sehari-hari untuk menyelesaikan permasalahan
manusia.
Tidak lain tujuan utama dari perangkat mobile tersebut adalah untuk
memudahkan user untuk saling berkomunikasi dan bertukar data dengan
mudah kapan pun dibutuhkan. Untuk dapat berkomunikasi tentunya harus
tersedia infrastruktur telekomunikasi terlebih dahulu, namun pada
kenyataannya sering terjadi kondisi dimana tidak terdapat infrastruktur
telekomunikasi. Sehingga user tidak dapat menggunakan perangkat mobile
untuk berkomunikasi ataupun bertukar data dengan user lainnya. Bisa juga
karena daerah yang memiliki kekurangan dalam hal infrastruktur
telekomunikasi karena mengalami bencana alam ataupun perang
(Dabungke, Wahidah dan Mulyana, 2009).
Atas dasar tersebut, maka diperlukan suatu jenis atau tipe jaringan
khusus yang mampu melibatkan banyak orang atau peralatan komunikasi
tanpa ketergantungan terhadap suatu infrastruktur. Hal inilah yang
dimaksud dengan Mobile Ad-hoc Network (MANET).
MANET bisa terbentuk dari sekumpulan node yang menggunakan
wireless untuk melakukan komunikasi antara satu node dengan node yang
lainnya. Setiap node bisa menjadi host ataupun router, sehingga node
mampu meneruskan paket ke node berikutnya. Dalam penerapannya,

1
2

dibutuhkan sebuah aturan berupa protokol ruting untuk menentukan rute


pengiriman paket. Banyak masalah yang muncul ketika menentukan
penggunaan jalur yang efisien dalam pengiriman paket data dari sumber ke
tujuan.
Terdapat sejumlah penelitian yang telah dilakukan untuk melihat
kinerja dari masing-masing routing protokol. Pada penelitian yang
menggunakan NS2 disebutkan bahwa DSDV lebih unggul bila dibandingkan
dengan AODV dan DSR dari nilai throughput serta Delay berdasarkan
koneksinya (Rai & Jain, 2012). Namun demikian penelitian lain dengan
menggunakan NS3 juga menyebutkan bahwa AODV dan DSR ternyata lebih
unggul daripada DSDV bila dilihat dari parameter throughput dan Delay
berdasarkan mobility rate (Soewito, 2014). Kemudian pada penelitian yang
membandingkan AODV, DSR dan DSDV menggunakan NS2 menyebutkan
bahwa Protokol DSR terbaik dalam hal PDR dibandingkan protokol lain
berdasarkan konsumsi energi (energy consumption) (Khediri, 2014).
Sementara itu penelitian yang membandingkan AODV, DSR dan DSDV
dengan menggunakan simulator yang berbeda menyebutkan bahwa NS-3
menghasilkan hasil yang lebih baik sedangkan OMNET++ memiliki
Graphical User Interface (GUI) yang lebih baik (Shastri & Lala , 2017).
Oleh karena permasalahan diatas, dalam penyusunan tugas akhir ini
penulis akan mengambil judul “Analisis Performa Routing Protokol DSR
dan DSDV menggunakan NS-3 pada Mobile Ad-Hoc Network (MANET)”.

1.2. Tujuan Penelitian

Tujuan yang ingin dicapai oleh penulis dalam penelitian ini adalah:
1. Mengetahui Performa terbaik antara routing protokol DSR dan
DSDV berdasarkan jumlah node.

Adapun manfaat dari penelitian ini adalah:

UIN Syarif Hidayatullah Jakarta


3

1.3. Manfaat Penelitian

1.3.1 Bagi Penulis

 Untuk mengaplikasikan ilmu yang telah diperoleh selama


menempuh pendidikan di Perguruan Tinggi Negeri UIN Syarif
Hidayatullah Jakarta.
 Memahami lebih jauh tentang jaringan khususnya jaringan ad-
hoc dan MANET.

1.3.2 Bagi Universitas

 Mengetahui kemampuan mahasiswa dalam memahami apa yang


didapat selama perkuliahan.
 Menambah kepustakaan di Perguruan Tinggi Negeri UIN Syarif
Hidayatullah Jakarta.
 Mengetahui kemampuan mahasiswa dalam menerapkan ilmu
yang didapat.

1.4. Rumusan Masalah

Dari latar belakang yang telah diuraikan diatas maka permasalahan


yang akan dibahas pada jaringan Mobile Ad-hoc Network (MANET) adalah
sebagai berikut:
1. Bagaimana mengetahui seberapa besar pengaruh jumlah node
terhadap kinerja routing DSR dan DSDV?

1.5. Batasan Masalah

Berdasarkan rumusan masalah di atas, penulis memberikan batasan


masalah dalam penelitian ini sebagai berikut :
 Metodologi
- Metode yang digunakan yaitu metode simulasi dengan tahapan
problem formulation, conceptual model, input / output data,

UIN Syarif Hidayatullah Jakarta


4

modelling, simulation, verification and validation,


experimentation, dan output analysis.
- Metode yang digunakan adalah penambahan node.
 Proses
- Penelitian ini menggunakan ruting protokol DSR dan DSDV.
- Penelitian ini menjelaskan cara merancang simulasi dengan
menggunakan 10 node, 50 node, 100 node, 150 node dan 200
node.
- Analisis performa dilakukan terhadap Throughput, Delay dan
Packet Loss.
- Penelitian ini tidak membahas keamanan jaringan MANET.
 Tools
- Simulator Jaringan yang digunakan NS-3 versi 3.27.
- Bahasa pemrograman yang digunakan bahasa C++.
- Text editor yang digunakan Sublime text.

1.6. Metode Penelitian

Metode yang digunkan penulis pada penelitian ini, yaitu:


1.6.1 Metode Pengumpulan Data

a. Studi Pustaka
Studi pustaka yaitu mengumpulkan data dan informasi dari
tulisan terkait dengan topik penelitian ini. Data dan informasi
tersebut didapat dari buku, ebook, tugas akhir, karya ilmiah dan
sumber lainnya yang berkaitan dengan protokol DSR dan
DSDV.
b. Studi Literatur
Studi literatur dilakukan dengan mempelajari literatur
penelitian sejenis yang memiliki keterkaitan permasalahan yang
dibahas. Studi ini bertujuan untuk meningkatkan pemahaman
mengenai topik penelitian yang dilakukan.

UIN Syarif Hidayatullah Jakarta


5

1.6.2 Metode Simulasi

Penulis menggunakan metode simulasi dalam melakukan


pembahasan. Pada metode simulasi ini terdapat beberapa langkah
yang akan dilakukan yaitu :

1. Problem Formulation
2. Conceptual Model
3. Input/Output data
4. Modelling
5. Simulation
6. Verification and Validation
7. Experimentation
8. Output Analysis

1.7. Sistematika Penulisan

Dalam penyusunan skripsi ini, pembahasan penulis sajikan dalam


enam pokok bahasan, diantaranya adalah:

BAB I PENDAHULUAN

Pada bab ini menerangkan latar belakang, perumusan


masalah, pembatasan masalah, tujuan dan manfaat
penelitian, serta sistematika penulisan.

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI


Pada bab ini berisi tentang konsep dari teori yang digunakan
dalam penyusunan skripsi ini.

BAB III METODOLOGI PENELITIAN

Bab ini menjelaskan langkah-langkah yang akan digunakan


untuk menyelesaikan permasalahan yang ada. Bab ini
memiliki unsur yaitu metode pengumpulan data, metode
implementasi dan metode pengujian.

UIN Syarif Hidayatullah Jakarta


6

BAB IV IMPLEMENTASI

Bab ini akan memaparkan penjelasan tentang simulasi dan


implementasi untuk menyelesaikan masalah yang ada
berdasarkan landasan teori yang telah dipaparkan
sebelumnya.
BAB V HASIL DAN PEMBAHASAN
Bab ini berisi hasil dan pembahasan yang didapat dari
penelitian yang dilakukan penulis.

BAB VI PENUTUP

Pada bab ini diuraikan mengenai kesimpulan penelitian dan


saran yang dapat digunakan untuk pengembangan penelitian
selanjutnya.

UIN Syarif Hidayatullah Jakarta


BAB II
TINJAUAN PUSTAKA DAN LANDASAN TEORI

2.1. Jaringan Nirkabel (Wireless)

Jaringan teknologi nirkabel (wireless) adalah sebuah teknologi


pengembangan dari jaringan komputer yang sebelumnya menggunakan
kabel sebagai media penghubungnya. Wireless memanfaatkan udara atau
gelombang elektromagnetik sebagai media lalu lintas pertukaran datanya
(William, 2008).

Sampai saat ini, teknologi jaringan nirkabel yang bekerja pada


frekuensi 2.4 GHz, dan/atau 5GHz berkembang pesat sekali terutama
karena pembebasan izin frekuensi di band industrial scientific medical
(ISM) maupun band unlicensed national information infrastructure
(Wetherall & Tanebaum 2011).

2.2. Jenis Jaringan Wireless

Dilihat dari cakupan dan luas jaringan, jaringan nirkabel (wireless)


secara geografis dibedakan menjadi 4 kelompok menurut Wetherall dan
Tanebaum (2011) yaitu:

2.2.1. Wireless Wide Area Networks (WWANs)

Teknologi WWANs memungkinkan pengguna untuk


membangun koneksi nirkabel melalui jaringan publik maupun
privat. Koneksi ini dapat dibuat mencakup suatu daerah yang sangat
luas, seperti Kota atau Negara, melalui penggunaan beberapa antena
atau juga sistem satelit yang diselenggarakan oleh penyelenggara
jasa telekomunikasinya. Teknologi WWAN saat ini dikenal dengan
system 2G (Second generation) inti dari system 2G ini termasuk
didalamnya global system for mobile communication (GSM),
cellular digital packet data (CDPD) dan juga code division multiple
access (CDMA).

7
8

2.2.2. Wireless Metropolitan Area Networks (WMANs)

Teknologi WMANs memungkinkan pengguna untuk


membuat koneksi nirkabel didalam suatu area metropolitan
(contohnya, antara Gedung berbeda-beda dalam suatu Kota atau
pada Kampus Universitas), dan ini bisa dicapai tanpa biaya fiber
optic atau kabel tembaga yang terkadang sangat mahal. Sebagai
tambahan, WMANs dapat bertindak sebagai backup bagi jaringan
yang berbasis kabel dan dia akan aktif ketika jaringan yang berbasis
kabel tadi mengalami gangguan. WMAN menggunakan gelombang
radio atau cahaya infrared untuk mentransmisikan.

Jaringan akses nirkabel broadband, yang memberikan


pengguna dengan akses berkecepatan tinggi, merupakan hal yang
banyak diminati saat ini. Meskipun ada beberapa teknologi yang
berbeda, seperti multi channel multipoint distribution service
(MMDS) dan local multipoint distribution service (LMDS).

2.2.3. Wireless Local Area Networks (WLANs)

Teknologi WLANs membolehkan pengguna untuk


membangun jaringan nirkabel dalam suatu area yang sifatnya lokal
(contohnya, dalam lingkungan Gedung Kantor, Gedung Kampus
atau Area publik, seperti Café). WLANs dapat digunakan pada
Kantor sementara atau yang mana instalasi kabel permanen tidak
diperbolehkan. Atau WLAN terkadang dibangun sebagai suplemen
bagi LAN yang sudah ada, sehingga pengguna dapat bekerja pada
berbagai lokasi yang berbeda dalam lingkungan Gedung. WLANs
dapat dioperasikan dengan dua cara. Dalam infrastruktur WLANs,
Stasiun wireless (peranti dengan network card radio atau eksternal
modem) terhubung ke acces point nirkabel yang berfungsi sebagai
bridge antara stasiun-stasiun dan network backbone yang ada saat
ini. Dalam lingkungan WLAN yang sifatnya peer-to-peer (ad-hoc),

UIN Syarif Hidayatullah Jakarta


9

beberapa pengguna dalam area terbatas, seperti ruang rapat dapat


membentuk suatu jaringan sementara tanpa menggunakan access
point.

2.2.4. Wireless Personal Area Networks (WPANs)

Teknologi WPANs membolehkan pengguna membangun


suatu jaringan nirkabel (Ad-Hoc) bagi piranti sederhana, seperti
PDA, telepon seluler atau laptop. Ini bisa digunakan dalam ruang
operasi personal (personal operating space atau pos) sebuah POS
adalah suatu ruang yang ada disekitar orang, dan bisa mencapai
jarak 10 meter. Saat ini ada dua kunci dari WPAN adalah Bluetooth
dan cara infra merah. Bluetooth merupakan teknologi pengganti
kabel yang menggunakan gelombang radio untuk mentransmisikan
data sampai dengan jarak sekitar 30 feet.

2.3. Model OSI

OSI Reference Model adalah model konseptual yang terdiri dari


tujuh lapisan, masing-masing menetapkan fungsi jaringan tertentu. OSI
Reference Model menggambarkan bagaimana informasi dari satu aplikasi
komputer diangkut melintasi jaringan ke aplikasi yang sama (atau serupa)
di komputer lain.

Menurut Dean (2010), pada awal 1980-an, ISO (International


Organization for standardization) mulai mengerjakan satu kumpulan
spesifikasi universal yang dapat memungkinkan platform komputer di
seluruh dunia untuk berkomunikasi secara terbuka. Hasilnya adalah model
yang membantu untuk memahami dan mengembangkan komunikasi
komputer-ke-komputer melalui jaringan.

Model ini yang disebut model OSI (Open System Interconnection),


membagi komunikasi jaringan menjadi tujuh lapisan/layer. Ketujuh layer
dari model OSI dimulai dari layer 7 sampai layer 1 adalah:

UIN Syarif Hidayatullah Jakarta


10

1. Application Layer (layer 7).


2. Presentation Layer (layer 6).
3. Session Layer (layer 5).
4. Transport Layer (layer 4).
5. Network Layer (layer 3).
6. Data Link Layer (layer 2).
7. Physical Layer (layer 1).

Ketujuh lapisan dari model referensi OSI dapat dibagi ke dalam


dua kategori, yaitu lapisan atas dan lapisan bawah. Lapisan atas dari
model OSI, yang terdiri dari Application Layer, Presentation Layer,
Session Layer, Transport Layer, berurusan dengan persoalan aplikasi
dan pada umumnya diimplementasi hanya pada perangkat lunak.
Application Layer adalah lapisan penutup sebelum ke pengguna.
Keduanya, pengguna dan lapisan aplikasi saling berinteraksi proses
dengan perangkat lunak aplikasi yang berisi sebuah komponen
komunikasi.

Lapisan bawah dari model OSI, yang terdiri dari Network Layer,
Data Link Layer, Physical Layer, mengendalikan persoalan pengiriman
data. Lapisan bawah tersebut diimplementasikan ke dalam perangkat
keras. Lapisan terbawah, yaitu lapisan fisik adalah lapisan penutup bagi
media jaringan fisik (misalnya jaringan kabel) dan sebagai penanggung
jawab bagi penempatan informasi pada media jaringan.

UIN Syarif Hidayatullah Jakarta


11

Gambar 2. 1 Layer OSI

berikut merupakan penjelasan fungsi ketujuh layer dalam bentuk


table 2.1.

Tabel 2. 1 Fungsi Model pada OSI

Layer Keterangan
Application Berfungsi sebagai antar muka
(penghubung) aplikasi dengan
fungsionalitas jaringan, mengatur
bagaimana aplikasi dapat
mengakses jaringan, dan kemudian
membuat pesan-pesan kesalahan.
Pada layer inilah sesungguhnya
user berinteraksi dengan jaringan.
Contoh protokol yang ada pada
lapisan ini : FTPtelnet, SMTP,
HTTP, POP3 dan NFS.
Presentation Berfungsi untuk mentranslasikan
data yang hendak di transmisikan

UIN Syarif Hidayatullah Jakarta


12

oleh aplikasi kedalam format yang


dapat ditransmisikan melalui
jaringan.
Protokol yang berada pada level ini
adalah sejenis redictor software,
seperti network shell semacam
virtual network computing (VNC)
atau remote desktop connection
(RDC).
Session Berfungsi untuk mendefinisikan
bagaimana koneksi dimulai,
dipelihara, dan diakhiri. Selain itu,
dilevel ini juga dilakukan resolusi
nama. Beberapa contoh protokol
pada layer ini:
 NETBIOS, protokol yang
dikembangkan oleh IBM,
menyediakan layanan
untuk layer presentation,
dan layer application.
 NETBEUI, (NETBIOS
Extended user Interface),
protokol pengembangan
dari NETBIOS, digunakan
pada Microsoft
networking.
 ADSP (AppleTalk Data
Stream Protokol).
Transport Berfungsi untuk memecah data
menjadi paket-paket data serta

UIN Syarif Hidayatullah Jakarta


13

memberikan nomor urut setiap


paket sehingga dapat disusun
kembali setelah diterima. Paket
yang diterima dengan sukses akan
diberi tanda (Acknowledgement).
Sedangkan paket yang rusak atau
hilang ditengah jalan akan dikirim
ulang.
Contoh protokol yang digunakan
pada layer ini seperti : UDP, TCP
dan SPX.
Network Berfungsi untuk mendefinisikan
alamat-alamat IP, membuat
Header untuk paket-paket, dan
melakukan ruting melalui
internetworking dengan
menggunakan router dan switch
layer 3. Pada layer ini juga
dilakukan proses deteksi error dan
transmisi ulang paket-paket yang
error.
Contoh protokol yang digunakan
seperti : IP, IPX.
Data link Berfungsi untuk menentukan
bagaimana bit-bit data
dikelompokan menjadi format
yang disbut frame. Pada level ini
terjadi error connection, flow
control, pengalamatan perangkat
keras (MAC Address), dan

UIN Syarif Hidayatullah Jakarta


14

menentukan bagaimana perangkat-


perangkat jaringan seperti bridge
dan switch layer beroperasi.
Menurut spesifikasi IEEE 802,
layer dikelompokan menjadi dua
yaitu Logical Link Control (LLC)
dan media Access Control (MAC)
Contoh protokol yang digunakan
pada layer ini adalah : Ethernet
(802.5 & 802.3). token bus
(802.4), token ring (802.5)
Demand Priority 802.12).
Physical layer Berfungsi untuk mendefinisikan
media transmisi jaringan, metode
pensinyalan, sinkronisasi bit,
arsitektur jaringan (seperti halnya
Ethernet atau token ring), topologi
jaringan, dan pengkabelan. Selain
itu level ini juga mendefinisikan
bagaimana Network Interface
Card (NIC) berinteraksi dengan
media wire atau wireless.
 UDP
UDP disebut protokol transport yang connectionless, tidak bisa
diandalkan (unreliable). Protokol ini tidak menambah apapun ke
layanan ip kecuali untuk menyediakan komunikasi process-to-
process daripada ke komunikasi host-to-host. UDP menawarkan
hanya layanan transport minimal-pengiriman datagram tak
bergaransi dan memberi aplikasi akses langsung ke layanan
datagram dari ip layer. UDP digunakan oleh aplikasi yang tidak
membutuhkan layanan tingkat TCP atau yang ingin menggunakan

UIN Syarif Hidayatullah Jakarta


15

layanan komunikasi (seperti, pengiriman multicast atau broadcast)


tidak tersedia dari TCP. UDP adalah protokol hamper null/batal;
layanan yang hanya disediakannya melalui ip adalah checksumming
data dan multiplexing oleh nomer port. Oleh karena itu, program
application yang berjalan melalui UDP harus berhubungan langsung
dengan masalah komunikasi end-to-end yang protokolnya
connection-oriented dapat ditangani seperti, transmisi ulang
pengiriman yang handal, paketisasi dan pengumpulan ulang, flow
control, pencegahan kesesakan, dan sebagainya, dimana hal tersebut
yang dibutuhkan. Penggabungan kompleks yang wajar antara IP dan
TCP akan dicerminkan pada penggabungan antara UDP dan banyak
aplikasi yang menggunakan UDP (Dordal, 2018).
Karakter UDP connectionless berarti pesan UDP akan
dikirimkan tanpa proses negosiasi antara dua host yang hendak
bertukar informasi. Unreliable maksudnya bahwa pesan UDP akan
dikirimkan sebagai datagram tanpa adanya nomor urut.

Gambar 2. 2 Header UDP

Penjelasan mengenai gambar format header di atas:


a. Source port
Digunakan untuk mengidentifikasi sumber protokol lapisan
aplikasi yang mengirim pesan UDP yang bersangkutan.
b. Destination port
Mengidentifikasi tujuan protokol lapisan aplikasi yang
menjadi tujuan UDP yang bersangkutan.

UIN Syarif Hidayatullah Jakarta


16

c. Length
Mengindikasi panjang pesan UDP (pesan UDP ditambah
header UDP) dalam satu byte.
d. Checksum
Berisi informasi pengecekan integritas dari pesan UDP yang
dikirimkan (header dan pesan UDP).

2.4. Protokol Ruting

Menurut Sukaridhoto (2014) Salah satu fungsi dari protokol ruting


adalah membentuk koneksi dari berbagai macam bentuk interface yang
berbeda. Protokol routing mempunyai kemampuan untuk membangun
informasi dalam routing table secara dinamik. Apabila terjadi perubahan
jaringan routing protokol mampu memperbaharui informasi routing
tersebut. Dikarenakan banyak protokol ruting ad-hoc yang diusulkan
memiliki algoritma tradisional yang mendasar, maka penting untuk
dipahami operasi dasar pada protokol konvensional. Ada 3 operasi dasar
pada protokol konvensional yaitu link state, distance vector, dan source
routing.

2.4.1. Link State

Tiap node mengurus gambaran topologi lengkap dengan


bobot untuk setiap link. Untuk menjaga bobot link tersebut
konsisten, setiap node secara periodik melakukan broadcast bobot
link ke semua link diluar menggunakan flooding. Setelah setiap node
menerima informasi, node melakukan update gambaran jaringan
dan menerapkan algoritma rute terpendek untuk memilih hop
selanjutnya untuk setiap tujuan. Beberapa bobot link pada gambaran
node dapat keliru karena panjang jeda propagasi, jaringan yang
terbagi, dan sebagainya. Gambaran topologi jaringan yang tidak
konsisten dapat membentuk routing-loops. Loops ini bagaimanapun

UIN Syarif Hidayatullah Jakarta


17

berumur pendek, karena loops tersebut menghilang saat membawa


pesan melintasi diameter jaringan (Graziani & Vanchon, 2014).

2.4.2. Distance Vector

Tiap node tidak hanya memonitor bobot link yang keluar,


tapi juga melakukan broadcast informasi ini ke semua jalur node,
secara periodik melakukan broadcast ke setiap tetangganya untuk
perkiraan jarak terpendek ke setiap node lain di dalam jaringan.
Node penerima kemudian menggunakan informasi ini untuk
kalkulasi ulang table routing, dengan menggunakan algoritma jarak
terpendek

Algoritma distance vector berbasiskan pada algoritma


bellman-ford. Algoritma bellman-ford adalah algoritma yang
menghitung jarak terpendek dari puncak atau ujung sumber tunggal
ke simpul yang lain pada digraph berbobot. Algoritma ini lebih
lambat daripada algoritma dijkstra untuk masalah yang sama, tetapi
lebih serba guna, karena mampu menangani graf dimana beberapa
dari bobot tepi bernilai negative

Dibandingkan link-state, distance vector lebih efisien


komputasi, lebih mudah diimplementasikan dan membutuhkan
ruang penyimpanan lebih sedikit. Bagaimanapun, hal tersebut
diketahui bahwa distance vector dapat membentuk keduanya,
routing loops berumur pendek dan berumur panjang. Penyebab
utama hal ini bahwa node memilih sendiri hop selanjutnya dalam
sikap yang terdistribusi sesuai informasi yang dapat menjadi basi
(Graziani & Vanchon, 2014).

2.4.3. Source Routing

Source routing berarti bahwa masing-masing paket harus


membawa lintasan yang lengkap yang harus dilewati paket didalam
jaringan. Pemilihan ruting dibuat di sumber. Keuntungan

UIN Syarif Hidayatullah Jakarta


18

pendekatan ini bahwa sangat mudah untuk menghindari ruting


loops. Kerugiannya adalah masing-masing paket membutuhkan
overhead kecil (Graziani & Vanchon, 2014).

2.5. Mobile Ad-Hoc Network (MANET)

Mobile Ad-Hoc Network (MANET) merupakan sebuah jaringan


yang terdiri dari gabungan perangkat-perangkat bergerak (mobile) tanpa
infrastruktur, sehingga membentuk jaringan yang bersifat sementara. Tiap
perangkat memiliki antarmuka nirkabel dan saling berkomunikasi melalui
gelombang radio, kemudian tiap perangkat tersebut dinamakan node.
Beberapa contoh adhoc node yaitu laptop dan personal digital assistants
(PDA) yang saling berkomunikasi secara langsung satu sama lain (Jiatmiko
dan Prayudi, 2015).
Karena peralatan ad-hoc bisa bermacam-macam, maka seperti pada
gambar 2.3 dan 2.4 Diperlihatkan kemungkinan topologi pada jaringan ad-
hoc, yaitu terdiri dari perangkat yang berbeda-beda (heterogen) atau sejenis
(homogen).

Gambar 2. 3 Perangkat Heterogen Gambar 2. 4 Perangkat Homogen

MANET diharapkan menjadi lebih besar lagi. Diperlukan router


yang tetap (fixed-router) maupun lokasi yang tetap (fixed-location) pada
infrastruktur jaringan.

UIN Syarif Hidayatullah Jakarta


19

2.5.1. Karakteristik

Menurut Saeed, Abbod and Al-Raweshidy (2017) MANET


mempunyai karakteristik pokok yang membedakannya dari wired
network. Karakteristik pokok ini yang mana membuat routing
protokol tradisional tidak cocok diterapkan pada MANET,
karakteristik pokok ini antara lain:
 Dynamic topology
Node-node bebas untuk bergerak secara berubah-ubah dalam
jaringan (meninggalkan dan bergabung dalam jaringan) yang
menyebabkan perubahan topologi yang mana perubahan itu
dapat terjadi dengan cepat pada waktu yang tidak dapat
diprediksi. Itu sama halnya bahwa paket dikirimkan melalui
berbagai lompatan (hops) karena biasanya tidak semua node
dalam jangkauan transmisi dari node lainnya.
 Bandwith-Constrained, Variable Capacity Links
Link wireless biasanya mempunyai kapasitas yang lebih
rendah dibandingkan link wired. Link pada MANET dapat
berupa link searah maupun link dua arah.
 Congestion
Congestion atau kemacetan merupakan ciri yang sangat khas
untuk MANET karena kapasitas link yang biasanya terbatas.
Oleh karena itu, dibandingkan fixed network, kapasitas
maksimal link MANET lebih cepat tercapai.
 Energy Constrained Mobile Nodes
Mobile node biasanya beroperasi menggunakan battery, jadi
semua operasi harus dioptimalkan untuk penghematan energy.
 Limited Physical Security
MANET cenderung lebih mendapatkan ancaman pada
keadaan fisiknya dibandingkan wired network, seperti
penyadapan dan sejenisnya.

UIN Syarif Hidayatullah Jakarta


20

2.5.2. Kelebihan

Mobile ad-hoc netwok (MANET) memiliki kelebihan dan


kekurangan. Kelebihan MANET antara lain:
a. Instalasi Cepat
Tingkat keluwesan untuk pengaturan MANET tinggi, sejak
tidak membutuhkan instalasi sebelumnya atau infrastruktur,
sehingga dapat dibawa dan diruntuhkan dalam waktu
singkat.
b. Topologi Dinamis
Node dapat bergerak bebas di sekitar jaringan dan dapat
menghilang dari MANET, supaya grafik topologi jaringan
dapat berubah terus-menerus pada kecepatan yang belum
ditentukan.
c. Toleransi Kesalahan
Karena keterbatasan antarmuka radio dan topologi dinamis,
MANET mendukung kegagalan koneksi, karena ruting dan
protokol kontrol transmisi didesain untuk mengelola
keadaan.
d. Konektivitas
Penggunaan titik terpusat atau gerbang tidak diperlukan
untuk komunikasi didalam MANET. Karena kolaborasi
antar node dalam tugas pengiriman paket.
e. Mobilitas
Wireless mobile nodes dapat bergerak bersamaan pada arah
berbeda. Meskipun algoritma ruting menangani masalah ini,
simulasi kinerja menunjukan bahwa ada tingkat ambang dari
mobilitas node seperti operasi protokol mulai untuk gagal.
f. Biaya
MANET dapat lebih ekonomis pada beberapa kasus karena
menghilangkan biaya infrastruktur tetap dan mengurangi
konsumsi daya pada node bergerak.

UIN Syarif Hidayatullah Jakarta


21

g. Kemungkinan Penggunaan Spectrum Kembali


Karena komunikasi link pendek (node ke node daripada node
ke pusat base station), tingkat emisi radio dapat dijaga pada
tingkat rendah. Hal itu meningkatkan kemungkinan
penggunaan kembali spectrum atau kemungkinan
penggunaan band tanpa izin.

2.5.3. Kekurangan

Adapun kekurangan MANET antara lain:

a) Keterbatasan Bandwith
Kapasitas wireless link selalu lebih rendah daripada dengan
kabel (wired).
b) Kemampuan Pemrosesan
Sebagian besar node merupakan perangkat tanpa CPU yang
kuat.
c) Keterbatasan Energi
Daya baterai terbatas pada semua perangkat, yang tidak
memperbolehkan waktu operasi tak terbatas untuk node.
d) Latency Tinggi
Ketika desain konservasi energi telah diterapkan, itu berarti
bahwa node diam (tidur) ketika tidak harus mengirim data
apapun. Saat pertukaran data antara dua node melewati node
yang diam (tidur). Delay mungkin lebih tinggi jika algoritma
routing memutuskan bahwa node tersebut harus bangun.
e) Kesalahan Transmisi
Atenuasi dan gangguan adalah akibat lain dari wireless link
yang menambah tingkat kesalahan/error.
f) Keamanan
Beberapa kerentanan dan serangan MANET dapat dibagi
menjadi dua, yaitu aktif dan pasif. Aktif yang terjadi ketika

UIN Syarif Hidayatullah Jakarta


22

penyerang menyuntik paket yang berubah-ubah ke dalam


jaringan dengan beberapa cadangan seperti menonaktifkan
jaringan. Pasif ketika penyerang hanya mencoba untuk
menemukan informasi berharga dengan mendengarkan lalu
lintas ruting.
g) Lokasi
Pengalamatan adalah masalah lain di lapisan jaringan pada
MANET. Sejak informasi mengenai lokasi pengalamatan IP
digunakan pada jaringan tetap menyediakan beberapa
fasilitas untuk routing yang tidak bisa diterapkan pada
MANET.
h) Roaming
Perubahan terus-menerus pada grafik konektivitas jaringan
ikut serta bahwa algoritma routing jaringan tetap tidak bisa
diterapkan pada MANET, karena hal itu berdasar pada
keberadaan jaminan jalan ke beberapa tujuan.
i) Ketidaksediaan Secara Komersil
MANET jauh dari penggunaan pada komersil skala besar.

2.5.4. Aplikasi

Aplikasi MANET beranekaragam, dari kecil, jaringan statis


yang dibatasi sumber daya, skala besar, mobile, dan jaringan
berdinamis tinggi. Aplikasi yang khas adalah jaringan yang secara
efisien bertahan dan komunikasi yang dinamis harus mapan. Tabel
dibawah ini merupakan gambaran aplikasi MANET sekarang dan di
masa depan.

Tabel 2. 2 Aplikasi MANET

Aplikasi Layanan yang mungkin


Jaringan taktis  operasi dan komunikasi militer.
 medan perang otomatis.

UIN Syarif Hidayatullah Jakarta


23

Layanan darurat  operasi SAR.


 penanggulangan bencana.
 penggantian infrastruktur tetap pada
kasus bencana alam.
 pemadam kebakaran.
 mendukung kerja dokter dan perawat
dirumah sakit.
Komersil dan  e-commerce: pembayaran elektronik
lingkungan sipil kapanpun dan dimanapun.
 bisnis: akses dinamis basis data, kantor
bergerak.
 layanan berkendara: jalan atau panduan
kecelakaan, transmisi jalan dan kondisi
cuaca, jaringan taktis, jaringan antar
kendaraan.
 Stadion olahraga, bursa dagang, mall.
 jaringan pengunjung di Bandar udara.
Jaringan rumah  jaringan nirkabel rumah/kantor.
dan perusahaan  konferensi, ruang rapat.
 wilayah jaringan pribadi (personal area
network), jaringan pribadi.
 jaringan pada situs pembangunan.
Pendidikan  Universitas dan kampus.
 kelas virtual.
 komunikasi ad-hoc selama rapat atau
kuliah.
Hiburan  permainan multi pengguna.
 jaringan nirkabel P2P.
 akses internet luar ruangan.
 peliharaan robot.

UIN Syarif Hidayatullah Jakarta


24

 Taman.
Jaringan sensor  sensor pintar aplikasi rumah dan
embedded.
 elektronik konsumen.
 jaringan wilayah badan (BAN).
 pelacakan data dari kondisi lingkungan,
pergerakan binatang, deteksi
biologi/kimia.
Layanan  layanan diikuti: penerusan panggilan,
ruang kerja.

2.6. Jenis Protokol Routing MANET

Menurut Dabungke, Wahidah dan Mulyana, (2009), Internet


Enginering Task Force (IETF) telah menstandarisasikan dua jenis protokol
routing pada jaringan ad-hoc, yaitu protokol routing yang bersifat reaktif,
proaktif dan hybrid. Protokol reaktif terdiri dari protokol routing seperti
Dynamic Source Routing (DSR), Ad Hoc On Deman Distance Vector
(AODV), Associativy Based Routing (ABR), Signal Stabily Routing (SSR),
sedangkan protokol routing proaktif terdiri dari Destination Sequenced
Distance Vector (DSDV), Cluster Switch Gateway Routing (CSGR),
Wireless Routing Protokol (WRP), Optimized Link State Routing (OLSR).

UIN Syarif Hidayatullah Jakarta


25

Gambar 2. 5 Protokol Routing MANET

2.6.1. Proactive Routing

Routing protokol ini bekerja dengan mempertaruhkan rute


unicast diantaranya sepasang node terlepas dari apakah semua rute
digunakan. Oleh Karena itu, ketika sebuah node ingin mengirim
paket data ke node lain sumber lalu lintas sudah menyediakan rute
tanpa harus mencari jalur yang akan dilalui terlebih dahulu.
Pada ruting protokol jenis ini setiap node pada jaringan
memiliki satu atau lebih tabel ruting yang berisi informasi rute
terbaru untuk menuju node lain. Pada jaringan yang sangat dinamis,
proactive routing protokol memerlukan sumber daya yang besar
untuk mendapatkan informasi terbaru yang dapat diandalkan.
Contoh proactive routing protokol adaah OLSR (optimized link
state routing protokol) dan DSDV (destination sequence distance
vector).

UIN Syarif Hidayatullah Jakarta


26

2.6.2. Reactive Routing

Berbeda dengan proactive routing protokol, reactive routing


protokol bekerja ketika dibutuhkan, ketika node ingin mengirimkan
paket datata ke node lain, reactive routing protokol bekerja mencari
dan menetapkan jalur yang tepat dengan kondisi stabil dengan cara
awalnya node asal melakukan broadcast request sampai request
tersebut sampai ke node tujuan, kemudian node tujuan membalas
dengan mengirimkan replay. Dari proses inilah ditentukan mana
jalur yang akan digunakan untuk mengirim data.

Keuntungan dari menggunakan routing protokol ini adalah


sumber daya yang hemat karena sumber daya tidak dibutuhkan
untuk menyimpan informasi tentang rute ke node yang lain.
Disamping memiliki kelebihan, reactive routing protokol juga
memiliki kekurangan, yaitu paket yang akan dikirim memiliki Delay
yang cukup lama dalam antrian node asal menunggu protokol
menemukan jalur yang akan dilewati. Beberapa jenis reactive adalah
AODV (Ad-hoc on-demand distance routing), DSR (dynamic source
routing ), DYMO (dynamic MANET on-demand) dan lain-lain.

2.6.3. Hybrid Routing

Protokol hybrid routing adalah gabungan dari kelebihan


yang dimiliki oleh protokol routing reaktif dan proaktif. Protokol
ruting hybrid menggunakan karakteristik protokol ruting reaktif dan
proaktif untuk mencari jalur terbaik sesuai dengan tuntutan dan
kondisi (on demand) dengan jaringan yang terus di-update. Selain
itu, pada protokol routing hybrid, paket Route Request (RREQ) dan
Route Reply (RREP) dikirimkan setelah terdapat routing request
dengan waktu interval tertentu.

UIN Syarif Hidayatullah Jakarta


27

2.7.DSR (Dynamic Source Routing)

Menurut Qi, Anggoro dan Husni (2017) protokol DSR (Dynamic


Source Routing) adalah protokol yang sederhana dan efisien yang dirancang
khusus pada jaringan MANET. Protokol ini hanya beroperasi sepenuhnya
apabila ada permintaan dari pengirim/ node source. Protokol DSR ini benar-
benar berdasarkan source routing dimana semua informasi routing terus
diperbaharui pada mobile node dan hanya node source yang memungkinkan
untuk memilih dan mengontrol jalur yang digunakan dalam mengirim paket
ke node tujuan/ node destination.

Keuntungan protokol ini adalah intermediate node tidak perlu


memelihara secara up to date informasi routing saat melewatkan paket,
karena setiap paket selalu berisi informasi routing di dalam headernya.
Routing jenis ini juga menghilangkan juga proses periodic route
advertisement dan neighbor detection yang dijalankan oleh routing adhoc
lainnya. Kerugian dari routing ini adalah mekanisme route maintenance
tidak dapat memperbaiki link yang rusak atau down. Penggunaan routing ini
akan sangat optimal pada jumlah node yang kecil atau kurang dari 200 node.
Untuk jumlah yang lebih besar akan mengakibatkan collision antar paket
dan menyebabkan bertambahnya Delay waktu pada saat akan membangun
koneksi baru. Terdapat dua tahap mekanisme utama dalam prototol DSR
yaitu:

2.7.1. Mekanisme Pencarian Rute (Route Discovery)

Mekanisme Route Discovery pada DSR yaitu dengan mencari


penentuan path yang terbagi menjadi dua bagian yaitu RREQ dan
RREP. Mekanisme dasar route discovery ini adalah pada saat ingin
membangun hubungan, node pengirim melakukan broadcast paket
route request untuk menginisialisasi node tujuan di daerah range
transmisinya. Apabila proses pencarian berhasil menemukan node
tujuan, maka node pengirim akan menerima RREP yang berarti

UIN Syarif Hidayatullah Jakarta


28

route untuk mengirimkan data menuju node tujuan telah ditemukan


dan paket data siap untuk dikirimkan. Pada RREQ terdapat route
record yang berfungsi untuk menyimpan route yang dilalui selama
proses route discovery berlangsung dan di dalam RREQ juga
terdapat request id yang ditulis secara khusus (unix) pada setiap
paket. Dalam paket ini terdapat informasi node pengirim, node
tujuan, serta informasi hops yang dilalui. Setiap node juga
memelihara request di setiap menerima paket. Protokol routing DSR
memiliki route cache yang berguna untuk menyimpan route yang
dilewati oleh paket RREQ.

2.7.2. Mekanisme Pemeliharaan Rute (Route Maintenance)

Pada tahap ini, protokol DSR akan memonitor kondisi route


pada saat pengiriman paket data dan pengiriman pesan error pada
saat route terjadi gangguan. Route maintenance memiliki dua paket
control informasi yaitu paket RErr dan ACK. Paket RErr dan ACK
ini digunakan untuk memberikan notifikasi terhadap keberhasilan
dan kegagalan dalam pengiriman data.

2.8. DSDV (Destination Sequence Distance Vector)

Menurut Murthy dan Manoj (2004) Routing protokol DSDV


(Destination Sequenced Distance Vector) adalah suatu protokol awal yang
diusulkan pada jaringan nirkabel ad-hoc. DSDV termasuk salah satu
protokol proaktif. DSDV juga merupakan salah satu protokol yang menjaga
informasi dari topologi global dalam membentuk tabel pada setiap node.
Tabel-tabel ini di-update secara berkala untuk menjaga konsisten dan
keakurasian keadaan jaringan DSDV merupakan versi lebih baik dari
algoritma bellman-ford dimana setiap node menjaga sebuah tabel yang
berisi jarak terpendek dan node pertama pada jarak terpendek dari setiap
node lainnya yang berada di dalam jaringan.

UIN Syarif Hidayatullah Jakarta


29

DSDV menyatukan update dari tabel dengan meningkatnya urutan


nomor untuk mencegah looping, untuk menghitung yang tak terbatas dan
untuk mempercepat pertemuan pada satu titik. Menurut Narra et all (2011)
DSDV memiliki kelebihan dan kekurangan. Berikut penjelasannya pada
tabel 2.3 dibawah ini.

Tabel 2. 3 Kekurangan dan Kelebihan DSDV

Kelebihan Kekurangan
DSDV adalah protokol yang DSDV perlu mengirim banyak
efisien untuk pencarian rute, pesan kontrol. Pesan ini penting
ketika sebuah rute ke sebuah untuk menjaga topologi jaringan
tujuan diperlukan, rute tersebut pada setiap node.
sudah ada pada source.
Latency untuk penerimaan rute Akibat dari terlalu sering mengirim
sangat rendah. pesan ini dapat menghasilkan
volume lalu lintas yang tinggi untuk
jaringan yang padat dan sangat
mobile.
DSDV juga menjamin jalur bebas Perhatian khusus harus diambil
loop. untuk mengurangi jumlah pesan
kontrol.

2.9. Faktor-faktor Performa Routing Protokol

Berikut merupakan faktor-faktor penentu dari performa ruting


protokol menurut beberapa ahli:

 Throughput
Throughput adalah nilai rata-rata pada pengiriman pesan
yang sukses melalui sebuah kanal komunikasi. Data ini dapat
dikirim melalui sebuah link physical maupun logical, atau lewat
melalui sebuah network node tertentu. Throughput biasanya diukur

UIN Syarif Hidayatullah Jakarta


30

dalam satuan bit per detik (bit/s atau bps), dan terkadang dalam
paket data per detik atau paket data per satuan waktu. Semakin tinggi
nilai throughput, maka jaringan memiliki performa yang lebih baik
(Sidharta dan Widjaja, 2013).
 Delay
Delay dapat didefinisikan sebagai rata-rata waktu antara
pada saat sebuah paket data dikirim oleh sumber data dan pada saat
paket data diterima oleh penerima data (Marsic, 2013).
 Packet Loss
Packet loss terjadi ketika satu paket data atau lebih yang
melintasi sebuah jaringan komputer gagal mencapai tujuannya.
Packet loss dibedakan sebagai salah satu dari tipe tipe error yang
dihadapi dalam komunikasi digital, dua yang lain adalah bit error
dan paket yang bersifat seperti tiruan oleh karena noise. Pecahan
dari paket yang hilang bertambah sebagaimana intensitas lalu lintas
jaringan bertambah (Marsic, 2013).

2.10. NS-3

Simulator NS-3 adalah sebuah network simulator peristiwa


yang memiliki ciri tersendiri yang ditargetkan secara utama untuk
tujuan riset dan pendidikan. Proyek NS-3, dimulai pada tahun 2006,
adalah sebuah proyek open source yang diatur oleh komunitas
peneliti dan pengembang. Pada MANET, NS-3 mempunyai
beberapa fitur yang dapat dimanfaatkan untuk memodelkan dan
menguji MANET (Hennderson, 2017).
Dengan NS-3, MANET disimulasikan dengan membuat
salah satu skenario. Pembuatan topologi, node dan protokol yang
digunakan untuk MANET sudah didukung oleh NS-3. Dengan NS-
3 kita dapat menambahkan fungsi-fungsi baru di dalam core NS-3
karena NS-3 bersifat open source. Ns-3 dikembangkan

UIN Syarif Hidayatullah Jakarta


31

menggunakan bahasa C++ di lapisan inti dan script python. Fitur-


fitur NS-3 diantaranya adalah system atribut NS-3 terdokumentasi
dengan baik. Setiap objek NS-3 memiliki seperangkat atribut (name,
type, initial value) dan NS-3 selaras dengan system nyata. Model
node yang lebih seperti komputer nyata, dukungan utama antar
muka seperti soket API dan IP atau perangkat driver antarmuka (di
linux) serta NS-3 juga telah mengupdate model-model (memuat
campuran model baru dan ported model). NS-3 juga terintegrasi
dengan software/tools lain seperti Wireshark untuk melihat trace
output. Representasi hasil data simulasi pada NS-3 dapat
ditampilkan dalam bentuk grafik, sehingga memudahkan untuk
menganalisis dan mengevaluasi hasil terhadap suatu model jaringan
MANET. Sebagai alat simulasi jaringan, NS-3 mempunyai model-
model untuk semua elemen jaringan yang terdapat pada jaringan
nyata. Elemen-elemen jaringan tersebut adalah.
1. Node.
Dalam jaringan internet perangkat komputer yang terhubung ke
jaringan disebut host atau terkadang end system. Dalam NS-3
abstraksi perangkat komputasi dasar atau komputer disebut
node. Abstraksi ini diwakili dalam C++ oleh kelas node. Kelas
node menyediakan metode untuk mengelola representasi
perangkat komputasi di simulasi. Kelas node menyediakan
metode untuk mengelola representasi perangkat komputasi di
simulasi.
2. Aplikasi.
Dalam NS-3. Abstraksi dasar untuk program pengguna yang
menghasilkan beberapa kegiatan yang akan disimulasikan
adalah aplikasi. Abstraksi ini diwakili dalam C++ oleh kelas
application. Kelas application menyediakan metode untuk
mengelola representasi versi NS-3 pada aplikasi-aplikasi level
user dalam simulasi. Pengembang diharapkan untuk

UIN Syarif Hidayatullah Jakarta


32

mengkhususkan kelas application dalam pengertian


pemrograman berorientasi obyek untuk membuat aplikasi baru.
3. Channel.
Media dimana aliran data dalam jaringan mengalir disebut
channel. Dalam dunia simulasi NS-3, seseorang
menghubungkan sebuah node ke objek yang mewakili sebuah
saluran komunikasi. Di NS-3 abstraksi komunikasi dasar
subnetwork disebut channel dan diwakili di C++ oleh kelas
channel.
4. Net Device.
Untuk terhubung dengan jaringan, komputer harus memiliki
perangkat keras yang disebut dengan peripheral card.
Peripheral card tersebut diimplementasikan beberapa fungsi
jaringan, sehingga disebut network interface cards (NICs). NIC
tidak akan berfungsi tanpa sebuah software driver untuk
mengontrol perangkat keras tersebut. Pada Unix (atau Linux),
sebuah peripheral hardware disebut sebagai device. Device
dikontrol menggunakan device driver, dan NIC dikontrol
menggunakan network device driver yang disebut dengan net
device. Di NS-3, net device meliputi baik software driver dan
simulasi hardware. Sebuah net device ‘di-instalasi’ pada
sebuah node agar memungkinkan node untuk berkomunikasi
dengan node lainnya dengan simulasi melalui channels.
Abstraksi net device direpresentasikan dengan C++ oleh kelas
net device. Kelas net device menyediakan metode untuk
mengatur koneksi ke objek node dan channel.
5. Topology helpers.
Dalam sebuah jaringan simulasi besar akan diperlukan banyak
koneksi untuk mengatur antara node, net device serta channel
NS-3 menyediakan apa yang disebut objek topology helpers
untuk mengatur simulasi-simulasi jaringan semudah mungkin.

UIN Syarif Hidayatullah Jakarta


33

Adapun fitur fitur yang terdapat pada Ns-3 antara lain:

1. Ditulis dalam C++ dengan antarmuka python (opsional).


2. System atribut NS-3 terdokumentasi dengan baik. Setiap objek
NS-3 memiliki seperangkat atribut (name, type, initial value).
3. NS-3 selaras dengan system nyata. Model node yang lebih
seperti komputer nyata. Dukungan utama antar muka seperti
soket API dan IP atau perangkat driver antarmuka.
4. NS-3 telah mengupdate model-model (memuat campuran model
baru dan ported model).
5. Terintegrasi dengan software/tools lain seperti wireshark untuk
melihat trace output.
6. Ns-3 mengembangkan 2 mode integrasi dengan system nyata:
 Mesin virtual yang berjalan diatas perangkat den
channel NS-3.
 Ns-3 berjalan dalam node emulasi dan mengeluarkan
mengkonsumsi paket melalui perangkat nyata
(Hennderson, 2017).

2.11. Sublime Text

Sublime Text adalah aplikasi editor untuk kode dan teks yang
dapat berjalan diberbagai platform operating system dengan
menggunakan teknologi Phyton API. Terciptanya aplikasi ini
terinspirasi dari aplikasi Vim, Aplikasi ini sangatlah fleksibel dan
powerfull. Fungsionalitas dari aplikasi ini dapat dikembangkan
dengan menggunakan sublime-packages. Sublime Text bukanlah
aplikasi open source dan juga aplikasi yang dapat digunakan dan
didapatkan secara gratis, akan tetapi beberapa fitur pengembangan
fungsionalitas (packages) dari aplikasi ini merupakan hasil dari
temuan dan mendapat dukungan penuh dari komunitas serta
memiliki lisensi aplikasi gratis (Skinner, 2017).

UIN Syarif Hidayatullah Jakarta


34

Sublime Text mendukung berbagai bahasa pemrograman dan


mampu menyajikan fitur syntax highlight hampir di semua bahasa
pemrograman yang didukung ataupun dikembangkan oleh
komunitas seperti; C, C++, C#, CSS, D, Dylan, Erlang, HTML,
Groovy, Haskell, Java, JavaScript, LaTeX, Lisp, Lua, Markdown,
MATLAB, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL, Textile
and XML. Biasanya bagi bahasa pemrograman yang didukung
ataupun belum terdukung secara default dapat lebih dimaksimalkan
atau didukung dengan menggunakan add-ons yang bisa diunduh
sesuai kebutuhan user.

Gambar 2. 6 Logo Sublime Text

Berikut beberapa fitur yang diunggulkan dari aplikasi Sublime Text:

a. Goto Anything.
Fitur yang sangat membantu dalam membuka file ataupun
menjelajahi isi dari file hanya dengan beberapa keystrokes.

b. Multiple Selections.
Fitur ini memungkinkan user untuk mengubah secara
interaktif banyak baris sekaligus, mengubah nama variabel
dengan mudah, dan memanipulasi file lebih cepat dari
sebelumnya.

c. Command Pallete.

UIN Syarif Hidayatullah Jakarta


35

Dengan hanya beberapa keystorkes, user dapat dengan cepat


mencari fungsi yang diinginkan, tanpa harus menavigasi melalui
menu.

d. Distraction Free Mode.


Bila user memerlukan fokus penuh pada aplikasi ini, fitur ini
dapat membantu user dengan memberikan tampilan layar penuh.

e. Split Editing.
Dapatkan hasil yang maksimal dari monitor layar lebar
dengan dukungan editing perpecahan. Mengedit sisi file dengan
sisi, atau mengedit dua lokasi di satu file. Anda dapat mengedit
dengan banyak baris dan kolom yang user inginkan.

f. Instant Project Switch.


Menangkap semua file yang dimasukkan kedalam project
pada aplikasi ini. Terintegrasi dengan fitur Goto Anything untuk
menjelajahi semua file yang ada ataupun untuk beralih ke file
dalam project lainnya dengan cepat.

g. Plugin API.

Dilengkapi dengan plugin API berbasis Phyton sehingga


membuat aplikasi ini sangat tangguh.

h. Customize Anything.
Aplikasi ini memberikan user fleksibilitas dalam hal
pengaturan fungsional dalam aplikasi ini.

i. Cross Platform.
Aplikasi ini dapat berjalan hampir disemua operating system
modern seperti Windows, OS X, dan Linux based operating
system (Skinner, 2017).

UIN Syarif Hidayatullah Jakarta


36

2.12. Simulasi Jaringan

Menurut Issariyakul dan Hossain (2009) sebuah simulasi


dapat dianggap sebagai suatu proses entities (entitas) jaringan
(contoh : node, paket). Ketika entitas-entitas tersebut bergerak
melalui system, mereka berinteraksi dengan entitas lain, bergabung
dalam kegiatan tertentu, memicu peristiwa, menyebabkan beberapa
perubahan keadaan pada system, dan meningkatkan proses. Dari
waktu ke waktu, mereka bersaing untuk menunggu untuk beberapa
jenis sumber daya. Ini berarti bahwa harus ada urutan eksekusi logis
untuk menyebabkan semua tindakan ini terjadi dengan cara yang
dapat dipahami dan dikelola. Sebuah urutan eksekusi memainkan
peran penting dalam mengawasi simulasi dan kadang-kadang
digunakan untuk mencirikan jenis simulasi.

2.12.1. Faktor Simulasi Jaringan

Menurut Issariyakul dan Hossain (2009), komponen


struktural simulasi terdiri dari:

1. Entities.
Entitas adalah objek yang berinteraksi satu sama lain dalam
sebuah program simulasi untuk menyebabkan beberapa
perubahan pada keadaan system. Dalam konteks jaringan
komputer, entitas mungkin termasuk node komputer, paket,
aliran paket atau objek non fisik seperti jam simulasi. Untuk
membedakan entitas yang berbeda, atribut yang unik
ditugaskan untuk masing-masing entitas. Sebagai contoh
sebuah entitas paket mungkin memiliki atribut seperti
panjang paket, nomor urut, prioritas, dan header.
2. Resources.
Sumber daya merupakan bagian dari sistem yang kompleks.
Secara umum, persediaan sumber daya yang terbatas harus

UIN Syarif Hidayatullah Jakarta


37

dibagi diantara kumpulan entitas tertentu. Hal ini biasanya


terjadi untuk jaringan komputer, dimana bandwith, airtime,
jumlah server, misalnya, mewakili sumber daya jaringan
yang harus dibagi diantara entitas jaringan.
3. Activities and event.
Keterlibatan akan hal ini menciptakan peristiwa dan memicu
perubahan dalam keadaan system. Contoh umum kegiatan
meliputi Delay dan queueing. Ketika komputer
membutuhkan untuk mengirimkan paket tetapi menemukan
medium sibuk, maka harus menunggu sampai medium
bebas. Dalam hal ini, paket yang akan dikirim melalui udara
tapi medium sibuk, paket dikatakan terlibat dalam aktivitas
menunggu.
4. Scheduler.
Scheduler memelihara daftar kejadian dan waktu eksekusi
mereka. Selama simulasi, scheduler menjalankan jam
simulasi menciptakan peristiwa, dan mengeksekusikan
mereka.
5. Global varietities.
Dalam simulasi, variabel global dapat diakses oleh fungsi
atau entitas apa saja dalam system, dan pada dasarnya
melacak beberapa nilai umum simulasi tersebut. Dalam
konteks jaringan komputer, variabel seperti itu mungkin
mewakili, misalnya, panjang dari antrian paket dalam
jaringan server tunggal, total sibuk air time dari jaringan
nirkabel, atau jumlah paket yang ditransmisikan.
6. Random number generator.
Sebuah Random Number Generator (RNG) diperlukan
untuk memperkenalkan keacakan dalam model simulasi.
Nomer acak dihasilkan oleh mengambil nomer secara
berurutan deterministic nomor psudo-random, namun nomor

UIN Syarif Hidayatullah Jakarta


38

diambil dari urutan ini secara acak. Dalam kebanyakan


kasus, urutan psudo-random telah ditetapkan dan digunakan
oleh semua RNG. Dalam pelaksanaannya, RNG
diinisialisasi dengan seed. Seed mengidentifikasi lokasi awal
dalam urutan psudo-random, dimana sebuah RNG mulai
memilih angka. Simulasi berbeda diinisialisasi dengan seed
yang berbeda sehingga menghasilkan hasil yang berbeda
(tetapi secara statistic identic) dalam simulasi jaringan
komputer, misalnya, proses kedatangan paket, proses
menunggu, dan proses layanan biasanya dimodelkan sebagai
proses acak. Sebuah proses acak dinyatakan oleh urutan
variabel acak. Proses acak ini biasanya dilaksanakan dengan
bantuan dari suatu RNG.
7. Statistic gatherer.
Tanggung jawab utama dari seorang pengumpul statistik
adalah untuk mengumpulkan data yang dihasilkan oleh
simulasi sehingga kesimpulan yang berarti dapat ditarik dari
data tersebut.

2.12.2. Simulator Jaringan

Sebuah simulator jaringan adalah sebuah program perangkat


lunak yang meniru kerja jaringan komputer. Dalam simulator,
jaringan komputer biasanya dimodelkan dengan perangkat, lalu
lintas dan lain-lain dan kerjanya dianalisis. Umumnya, pengguna
dapat menyesuaikan simulator untuk memenuhi kebutuhan spesifik
analisis mereka. Simulator biasanya datang dengan dukungan
protokol paling popular yang digunakan saat ini seperti Wlan,
Wimax, UDP, dan TCP (Issariyakul dan Hossain, 2009).

UIN Syarif Hidayatullah Jakarta


39

2.13. Metode Simulasi

Simulasi adalah imitasi dari sistem dinamis dengan


menggunakan model komputer untuk mengevaluasi dan
meningkatkan performansi sistem. Simulasi sebagai suatu sistem
yang digunakan untuk memecahkan atau menguraikan persoalan-
persoalan dalam kehidupan nyata yang penuh dengan ketidakpastian
dengan tidak atau menggunakan model atau metode tertentu dan
lebih ditekankan pada pemakaian komputer untuk mendapatkan
solusinya.
Ada beberapa langkah dasar yang harus dipertimbangkan
dalam melakukan studi simulasi. Terkadang beberapa langkah dapat
dilewati atau tidak perlu digunakan, tergantung kompleksitas
aplikasi. Pada sub bagian 2.13.2 – 2.13.8 dianjurkan untuk
menggunakan siklus spiral dengan pengembangan incremental,
yang dapat menyebabkan revisi pada fase sebelumnya. Berikut ada
beberapa langkah-langkah dalam metode simulasi menurut Madani
et all (2010) :

2.13.1. Problem Formulation

Proses simulasi dimulai dengan masalah praktis yang


memerlukan pemecahan atau pemahaman. Sebagai contoh sebuah
perusahaan kargo ingin mencoba untuk mengembangkan strategi
baru untuk pengiriman truk, contoh lain yaitu astronom mencoba
memahami bagaimana sebuah nebula terbentuk. Pada tahap ini kita
harus memahami perilaku dari sistem, mengatur operasi sistem
sebagai objek untuk percobaan. Maka kita perlu menganalisis
berbagai solusi dengan menyelidiki hasil sebelumnya dengan
masalah yang sama. Solusi yang paling diterima yang harus dipilih.

UIN Syarif Hidayatullah Jakarta


40

2.13.2. Conceptual Model

Langkah ini terdiri dari deskripsi tingkat tinggi dari struktur


dan perilaku sebuah sistem dan mengidentifikasi semua benda
dengan atribut dan interface mereka. Kita juga harus menentukan
variable statenya, bagaimana cara mereka berhubungan, dan mana
yang penting untuk penelitian. Pada tahap ini dinyatakan aspek-
aspek kunci dari requirement. Selama definisi model konseptual,
kita perlu mengungkapkan fitur yang penting. Kita juga harus
mendokumentasikan informasi non-fungsional, misalnya seperti
perubahan pada masa yang akan datang, perilaku non-intuitive atau
non-formal, dan hubungan dengan lingkungan.

2.13.3. Input / Output Data

Pada tahap ini kita mempelajari sistem untuk mendapatkan


data input dan output. Untuk melakukannya kita harus
mengumpulkan dan mengamati atribut yang telah ditentukan pada
tahan sebelumnya. Ketika entitas sistem yang dipelajari, maka
dicoba mengaitkannya dengan waktu. Isu penting lainnya pada
tahap ini adalah pemilihan ukuran sampel yang valid secara statistik
dan format data yang dapat diproses dengan komputer. Kita harus
memutuskan atribut mana yang stokastik dan deterministik. Dalam
beberapa kasus, tidak ada sumber data yang dapat dikumpulkan
(misalnya pada sistem yang belum ada). Dalam kasus tersebut kita
perlu mencoba untuk mendapatkan set data dari sistem yang ada
(jika tersedia). Pilihan lain yaitu dengan menggunakan pendekatan
stokastik untuk menyediakan data yang diperlukan melalui generasi
nomor acak.

2.13.4. Modelling

Pada tahap pemodelan, kita harus membangun representasi


yang rinci dari sistem berdasarkan model konseptual dan

UIN Syarif Hidayatullah Jakarta


41

input/output data yang dikumpulkan. Model ini dibangun dengan


mendefinisikan objek, atribut, dan metode menggunakan paradigma
yang dipilih. Pada tahap ini spesifikasi model dibuat, termasuk set
persamaan yang mendefinisikan perilaku dan struktur. Setelah
menyelesaikan definisi ini, kita harus membangun struktur awal
model (mungkin berkaitan sistem dan metrik kerja).

2.13.5. Simulation

Pada tahap simulasi, kita harus memilih mekanisme untuk


menerapkan model (dalam banyak kasus menggunakan komputer
dan bahasa pemrograman dan alat-alat yang memadai), dan model
simulasi yang dibangun. Selama langkah ini, mungkin perlu untuk
mendefinisikan algoritma simulasi dan menerjemahkannya ke
dalam program komputer.

2.13.6. Verification and Validation

Pada tahap sebelumnya, tiga model yang berbeda yang


dibangun yaitu model konseptual (spesifikasi), sistem model
(desain), dan model simulasi (executable program). Kita perlu
memverifikasi dan memvalidasi model ini. Verifikasi terkait dengan
konsistensi internal antara tiga model. Validasi difokuskan pada
korespondensi antara model dan realitas yaitu hasil simulasi yang
konsisten dengan sistem yang dianalisis.

2.13.7. Experimentation

Kita harus menjalankan model simulasi, menyusul tujuan


yang dinyatakan pada model konseptual. Selama fase ini kita harus
mengevaluasi output dari simulator menggunakan korelasi statistik
untuk menentukan tingkat presisi untuk metrik kerja. Fase ini
dimulai dengan desain eksperimen, menggunakan teknik yang
berbeda. Beberapa teknik ini meliputi analisis sensitivitas, optimasi,
dan seleksi (dibandingkan dengan sistem alternatif).

UIN Syarif Hidayatullah Jakarta


42

2.13.8. Output Analysis

Pada tahap analisis output, output simulasi dianalisis untuk


memahami perilaku sistem. Output ini digunakan untuk
mendapatkan tanggapan tentang perilaku sistem yang asli. Pada
tahap ini, alat visualisasi dapat digunakan untuk membantu proses
tersebut.

2.14. Alasan Menggunakan Simulasi

Menurut Koh (2013) dalam presentasinya, beberapa alasan


pentingnya penggunaan simulasi ialah sebagai berikut:

1. Menggambarkan keadaan pada kondisi sebenarnya.


2. Waktu yang diperlukan lebih cepat.
3. Biaya yang dikeluarkan lebih murah.

Dapat melakukan percobaan yang “impossible”.

2.15. Bahasa Pemrograman


Menurut Stallings (2010), sebuah bahasa pemrograman
harus bersifat universal. Setiap masalah harus memiliki solusi yang
dapat deprogram dalam bahasa, jika masalah tersebut dapat
diselesaikan oleh computer, setidaknya diwilayah aplikasi yang
diinginkan.

Bahasa pemrograman bisa juga diartikan notasi yang


digunakan untuk menulis program (computer). Bahasa ini dibagi
menjadi tiga tingkatan yaitu bahasa mesin, bahasa tingkat rendah
dan bahasa tingkat tinggi.

Bahasa mesin (machine language) merupakan


microinstruction atau hardware. Programnya sangat panjang dan
sulit dipahami. Disamping itu sangat tergantung pada arsitektur
mesin. Keunggulanya adalah prosesnya sangat cepat dan tidak perlu
interpreter atau penerjemah bahasa tingkat rendah (low level

UIN Syarif Hidayatullah Jakarta


43

language) berupa macroinstuction (assembly). Seperti halnya


bahasa mesin, bahasa tingkat rendah tergantung pada arsitektur
mesin. Program panjang dan sulit dipahami walaupun prosesnya
cepat. Jenis bahasa tingkat ini perlu penerjemah berupa assembler.

Bahasa tingkat tinggi (high level language) menyerupai


struktur bahasa manusia sehingga muda dipahami. Bahasa ini tidak
tergantung pada arsitektur mesin tetapi memerlukan penerjemah
berupa compiler atau interpreter.

Secara garis besar ada dua kategori bahasa pemrograman


level tinggi (high level). Bahasa pemrograman aras rendah
cenderung mendekati level komputer, ini berarti bahwasanya ditulis
mendekati atau sama dengan bahasa mesin computer, hal ini sangat
sulit ditulis karena bahasanya jauh dari bahasa manusia yang
digunakan manusia sehari-hari. Bahasa pemrograman yang lebih
mudah dipelajari adalah bahasa pemrograman aras tinggi. Disebut
aras tinggi karena bahasanya mendekati level bahasa manusia
sehingga mudah dipahami. Gambar ini merupakan gambaran antara
bahasa aras tinggi dengan aras rendah.

Gambar 2. 7 Bahasa aras tinggi

UIN Syarif Hidayatullah Jakarta


44

Gambar 2. 8 Bahasa aras rendah

Dengan gambar tersebut diatas, maka dapat dilihat bahwa


menulis program dengan bahasa aras tinggi akan lebih mudah dan
dapat dipahami dibandingkan dengan bahasa aras rendah karena
bahasanya ditulis dengan kode numeric ataupun dengan sintak yang
sangat pendek sehingga sulit sekali dipahami. Dapat dilihat pada
tabel 2.4 dibawah ini :

Tabel 2. 4 Bahasa Pemrograman aras tinggi

Nama Penjelasan
Basic Beginners All-purpose Symbolic Instruction
Code, bahasa pemrograman yang biasa digunakan
untuk merancang program sederhana pada
programmer pemula
Fortran Formula Translator, bahasa pemrograman yang
dirancang untuk menyelesaikan algoritma
matematika yang kompleks

UIN Syarif Hidayatullah Jakarta


45

Cobol Common Business-Oriented Language, bahasa


pemrograman yang dirancang pada aplikasi bisnis
Pascal Pemrograman terstruktur, bersifat umum, dan
biasanya bahasa pemrograman ini banyak
diajarkan
C Pemrograman terstruktur, bersifat umum. Bahasa
ini dikembangkan oleh bell laboratories. Bahasa
C ini dapat digunakan sebagai bahasa aras tinggi
dan bahasa aras rendah
C++ C# atau “C sharp”. Bahasa ini ditemukan oleh
Microsoft untuk mengembangkan aplikasi
Microsoft.NET
Java Bahasa ini merupakan bahasa berorientasi objek
yang dikembangkan oleh sum microsystem.
Dengan java memungkinkan untuk
pengembangan program yang berjalan pada
jaringan internet atau pada web browser

Visual Basic Bahasa pemrograman Microsoft dimana bahasa


ini bertujuan untuk pengembangan perangkat
lunak yang dapat memudahkan programmer
dalam membuat aplikasi berbasis windows
 C ++

Menurut Raharjo (2007), C++ adalah bahasa


pemrograman tingkat tinggi yang memungkinkan seseorang
software engineer untuk berkomunikasi secara efisien dengan
computer. C++ adalah bahasa yang sangat fleksibel dan mudah
beradaptasi. Sejak diciptakannya pada tahun 1980, C++ telah
digunakan untuk berbagai program termasuk firmware untuk
mikrokontroler, system operasi, aplikasi dan pemrograman
grafik.

UIN Syarif Hidayatullah Jakarta


BAB III
METODOLOGI PENELITIAN

Pada penelitian skripsi ini, diperlukan data-data yang lengkap dan akurat
serbagai bahan pendukung materi uraian dan pembahasan. Oleh karena itu
diperlukan metode pengumpulan data dan metode simulasi dalam penyusunan
skripsi ini.

3.1. Metode Pengumpulan Data

Penulis melakukan pengumpulan data dalam penelitian kali ini


dengan cara seperti berikut:

3.1.1 Studi Pustaka

Pengumpulan data dan informasi dengan metode studi pustaka


adalah teknik survey terhadap data yang telah ada dengan menggali
teori-teori yang telah berkembang dalam bidang ilmu yang
berkepentingan, mencari metode-metode serta teknik penelitian,
baik dalam mengumpulkan atau menganalisis data, yang telah
digunakan oleh peneliti-peneliti terdahulu.
Penulis melakukan studi pustaka dengan mencari referensi
berkaitan dengan objek yang diteliti dalam perpustakaan UIN Syarif
Hidayatullah Jakarta, toko buku, serta secara online melalui internet.
Informasi yang didapatkan digunakan dalam penyusunan landasan
teori, metodologi penelitian.

3.1.2 Studi Literatur

Berikut dijabarkan beberapa penelitian yang penulis angkat


menjadi studi literature, kekurangan dari studi literature inilah yang
ingin penulis sempurnakan pada penelitian kali ini:

46
47

Tabel 3. 1 Perbandingan Studi Literatur

Judul Penulis Tahun Perbedaan

Study and Vijendra IJSR, Penelitian ini membahas


Comparison Rai; 2012. perbandingan ruting
Performance of Jaishree protokol AODV, DSR,
On-demand Jain. dan DSDV
AODV and DSR, menggunakan NS2.
along with the Penelitian penulis
traditional menggunakan NS3 dan
proactive DSDV routing protokol yang di
Routing Protokol bandingkan adalah DSR
for MANET. dan DSDV.
Performance Benfano IJCA, Penelitian ini membahas
Optimization Soewito. 2014. perbandingan ruting
Wireless Ad Hoc protokol AODV, DSR,
Network Based dan DSDV berdasarkan
on Routing mobility rate pada area
Protokols. 500m X 500m dan 700m
X 700m. Penelitian
penulis membandingkan
DSR dan DSDV
berdasarkan
penambahan node
dengan area 1000m X
1000m.
Routing Salim El IEEE, Penelitian ini membahas
Protokols in Khediri; 2014. perbandingan ruting
MANET: Nejah protokol AODV, DSR,
Performance Nasri; dan DSDV berdasarkan

UIN Syarif Hidayatullah Jakarta


48

Comparison of Benfradj; konsumsi energy


AODV, DSR and Kachouri (energy consumption)
DSDV Protokols ; Anne dan menggunakan NS2.
using NS2. Wei. Penelitian penulis
membandingkan DSR
dan DSDV berdasarkan
penambahan node dan
menggunakan NS3.
Comparison of Dipti IJSR, Penelitian ini membahas
AODV, DSR and Shastri; 2017. protokol routing AODV,
DSDV on Ajay DSR dan DSDV dengan
Different Lala. simulator yang berbeda.
Simulator for Penulis membahas
Qos Parameters. Protokol ruting DSR dan
DSDV menggunakan
simulator NS3.
Analisis Dimas 2016. Penelitian ini membahas
Perbandingan Setiawan algoritma routing
Algoritma Saputro. LEACH-C dan Pegasis
Routing LEACH- dengan parameter
C dan Pegasis lifetime node, konsumsi
Pada Wireless energy dan throughput.
Sensor Network
Menggunakan
Network
Simulator-2.

UIN Syarif Hidayatullah Jakarta


49

Tabel 3. 2 Kekurangan dan Kelebihan

Judul Kekurangan Kelebihan


Study and - Menggunakan - Berhasil
Comparison node yang menyimpulkan
Performance of kecil. bahwa protokol
On-demand - Tidak routing DSDV
AODV and menampilkan lebih baik
DSR, along with grafik untuk jaringan
the traditional perbandingan. yang kecil
proactive DSDV tetapi tidak
Routing untuk jaringan
Protokol for yang besar.
MANET. - Menampilkan
parameter
dengan graph.
Performance - Luas area - Menggunakan
Optimization yang diuji 2 skenario.
Wireless Ad Hoc 500m X 500m - Menggunakan
Network Based dan 700m X mobility rate.
on Routing 700m.
Protocols. - Tidak
menguji
packet loss.
Routing - Luas area - Parameter yang
Protocols in yang diuji diuji adalah
MANET: hanya 100m energy
Performance X 100m. consumption,
Comparison of - Tidak routing
AODV, DSR menguji

UIN Syarif Hidayatullah Jakarta


50

and DSDV packet loss overhead dan


Protocols using dan Delay.
NS2. throughput.
Comparison of - Tidak - Penelitian ini
AODV, DSR membahas membahas
and DSDV on routing simulator
Different protokol OMNET++,
Simulator for mana yang GloMoSim,
Qos lebih baik. NS3 dan NS2.
Parameters. - Tidak - Parameter yang
menguji diuji konsumsi
packet loss. energy, pause
time, PDR dan
Throughput.
Analisis - Luas area - Menggunakan
Perbandingan yang algoritma
Algoritma digunakan routing sebagai
Routing kecil. perbandingan.
LEACH-C dan - Membahas
Pegasis Pada wireless sensor
Wireless Sensor network.
Network
Menggunakan
Network
Simulator-2.

3.2. Metode Simulasi

Metode simulasi mendefinisikan siklus-siklus proses berupa


tahapan-tahapan mekanisme teoritas yang dibutuhkan dalam suatu
rangkaian proses simulasi jaringan komputer. Berkaitan dengan penelitian

UIN Syarif Hidayatullah Jakarta


51

ini maka dipaparkan tahapan simulasi dalam membangun sebuah jaringan,


yaitu sebagai berikut

3.2.1 Problem Formulation

Penulis merumuskan permasalahan utama dari protokol


ruting dengan cara pengumpulan data. Setelah mendapatkan data
dari permasalahan dari protocol ruting penulis merumuskan
permasalahan utama dari protocol ruting.permasalahan utama
tersebut yaitu pemilihan protokol ruting yang digunakan dan
penggunaan jalur yang efisien dalam pengiriman paket data dari
sumber ke tujuan. Pada penelitian ini penulis melakukan sebuah
simulasi untuk melihat perbandingan protokol ruting DSR dan
DSDV menggunakan NS3 dengan penambahan node.

3.2.2 Conceptual Model

Pada tahap pembuatan konsep model (Conceptual Model)


penulis menggambarkan konsep model secara keseluruhan. Dimulai
dari pemasukan data dari hasil pengumpulan data, proses simulasi,
hingga hasil yang diberikan atau output yang dihasilkan.

3.2.3 Input / Output Data

Pada tahap input/output data penulis melakukan pemilihan data


yang akan digunakan sebagai input atau masukan dalam penelitian.
Data tersebut disaring untuk memilih data mana saja yang
dibutuhkan untuk melakukan proses simulasi. Pemilihan atribut
yang diperlukan untuk proses simulasi yaitu berupa spesifikasi data-
data protokol ruting DSR dan DSDV.

3.2.4 Modelling

Penulis membangun model simulasi dengan cara


menentukan parameter yang digunakan selama simulasi

UIN Syarif Hidayatullah Jakarta


52

berlangsung pada tahap modelling. Skenario-skenario yang akan


dilakukan untuk proses simulasi juga ditentukan dalam tahap ini.

3.2.5 Simulation

Implementasi dari hasil tahap sebelumnya dilakukan pada


tahap simulasi. Selain itu, dilakukan pula pemasangan parameter
yang diuji untuk menilai performa ruting protokol.

3.2.6 Verification and Validation

Tahap verifikasi dan validasi dilakukan untuk mengecek


kebenaran dari tahap-tahap yang telah dilakukan sebelumnya agar
simulasi siap untuk dilaksanakan. Verifikasi dan validasi dilakukan
akan dilakukan terhadap tahap conceptual model, tahap modelling
dan tahap simulation.

3.2.7 Experimentation

Tahap experimentation merupakan tahapan paling penting


dalam penelitian. Proses simulasi dari skenario yang telah
ditentukan kemudian dijalankan pada tahap experimentation ini.
Hasil yang didapat balam bentuk .txt yang kemudian diolah menjadi
grafik.

3.2.8 Output Analysis

Tahap akhir yang dilakukan setelah didapatkan hasil ialah


output analysis. Tahap output analysis tersebut akan menganalisis
hasil yang diperoleh dari penelitian. Hasil penelitian dianalisis untuk
mengetahui protokol ruting mana yang lebih baik dan efisien.

UIN Syarif Hidayatullah Jakarta


53

3.3. Alur Penulisan

Gambar 3. 1 Alur Penulisan

UIN Syarif Hidayatullah Jakarta


BAB IV
IMPLEMENTASI

4.1. Problem Formulation

Mobile Ad-Hoc Network (MANET) merupakan sebuah jaringan


yang terdiri dari gabungan perangkat-perangkat bergerak (mobile) tanpa
infrastruktur, sehingga membentuk jaringan yang bersifat sementara. Tiap
perangkat memiliki antarmuka nirkabel dan saling berkomunikasi melalui
gelombang radio, kemudian tiap perangkat tersebut dinamakan node.

Dalam penerapannya, dibutuhkan sebuah aturan berupa protokol


ruting untuk menentukan rute pengiriman paket. Banyak masalah yang
muncul ketika menentukan penggunaan jalur yang efisien dalam
pengiriman paket data dari sumber ke tujuan.

Terdapat sejumlah penelitian yang telah dilakukan untuk melihat


kinerja dari masing-masing routing protokol. Pada penelitian yang
menggunakan NS2 disebutkan bahwa DSDV lebih unggul bila
dibandingkan dengan AODV dan DSR dari nilai throughput serta Delay
berdasarkan koneksinya (Rai, 2012). Namun demikian penelitian lain
dengan menggunakan NS3 juga menyebutkan bahwa AODV dan DSR
ternyata lebih unggul daripada DSDV bila dilihat dari parameter
throughput dan Delay berdasarkan mobility rate (Soewito, 2014).
Kemudian pada penelitian yang membandingkan AODV, DSR dan
DSDV menggunakan NS2 menyebutkan bahwa Protokol DSR terbaik
dalam hal PDR dibandingkan protokol lain berdasarkan konsumsi energy
(energy consumption) (Khediri, 2014). Sementara itu penelitian yang
membandingkan AODV, DSR dan DSDV dengan menggunakan
simulator yang berbeda menyebutkan bahwa NS-3 menghasilkan hasil
yang lebih baik sedangkan OMNET++ memiliki Graphical User
Interface (GUI) yang lebih baik (Shastri D & Lala A, 2017).

54
55

4.2. Conceptual Model

Tahap membuat konsep model merupakan tahap dilakukannya


penggambaran mulai dari input, proses, sampai output yang dihasilkan.
Gambaran tahap pembuatan routing protokol DSR dan DSDV diberikan
pada tahap ini.

Gambar 4. 1 Tahapan Protokol Routing DSR dan DSDV


menggunakan NS3

Keterangan Gambar 4.1

1. Membuat file NS3 dengan bahasa C++.


2. Konfigurasi parameter simulasi berupa Throughput, Delay
dan Packet loss.

UIN Syarif Hidayatullah Jakarta


56

3. Konfigurasi topologi, topologi yang digunakan berupa


topologi 10 node, 50 node, 100 node, 150 node, dan 200
node.
4. Pembuatan node.
5. Pembuatan channel, komunikasi dasar subnetwork atau
media dimana aliran data dalam jaringan mengalir.
6. Inisialisasi posisi node dan mobility model. Pengaturan
posisi awal node dan mobility yang digunakan (pergerakan
wireless mobile nodes bersamaan pada arah yang berbeda).
7. Konfigurasi DSR dan DSDV. Konfigurasi ruting protokol
yang digunakan berupa protokol DSR dan DSDV.
8. Pembuatan aplikasi dan waktu simulasi.
9. Pengiriman paket berjalan. Berlangsungnya simulasi.
10. Capture pengiriman paket dan receive paket. Hasil yang
dibuat berupa file .txt untuk diolah menjadi grafik.
11. Selesai.

4.3. Input / Output Data

Tahap Collection of Input/Output Data merupakan proses


penentuan input yang akan digunakan dalam penelitian. Berdasarkan hasil
yang diperoleh pada saat memformulasikan masalah, dapat ditemukan
bahwa penetuan ruting protokol yang efisien dalam pengiriman paket data
dari sumber ke tujuan. oleh karena itu, penelitian kali ini menentukan
parameter performa ruting protokol dengan skenario komunikasi berjalan
satu arah, yaitu dari banyak node (source) ke satu node (sink) dengan
pergerakan sebesar 5m/s. inisialisasi node (source dan sink) dilakukan
secara acak.

Parameter secara lengkap yang dipakai dalam merancang skenario


ini antara lain:

UIN Syarif Hidayatullah Jakarta


57

Tabel 4. 1 Parameter Simulasi

Parameter Protokol MANET


DSR DSDV
Simulator NS-3 versi 3.27 NS-3 versi 3.27
Tipe MAC IEEE 802.11 IEEE 802.11
Data Rate 802.11b (11mbps) 802.11b (11mbps)
Protokol Transport UDP UDP
Jumlah Nodes 10/50/100/150/200 10/50/100/150/200
Luas Area Simulasi 1000m X 1000m 1000m X 1000m
Waktu Simulasi 60 detik 60 detik
Kecepatan Konstan 5m/s 5m/s
Inisialisasi Posisi Random Rectangle Random Rectangle
Node Position Allocator Position Allocator
Mobility Model Random Waypoint Random Waypoint
Mobility Mobility
Interval Update - 5 detik

Output yang diharapkan pada penelitian ini yaitu :

a. Throughput.
Throughput nilai rata-rata pada pengiriman pesan yang
sukses melalui sebuah kanal komunikasi selama 60 detik.
b. Delay.
Rata-rata waktu antara pada saat sebuah paket data dikirim
oleh sumber data dan pada saat paket data diterima oleh
penerima data selama 60 detik.
c. Packet Loss.
Paket data yang melintasi sebuah jaringan komputer gagal
mencapai tujuannya selama waktu simulasi berjalan.

UIN Syarif Hidayatullah Jakarta


58

4.4. Modelling

Tahap modelling menganalisis ruting protokol yang dilakukan


dengan menggunakan visualisasi NS3 dengan bantuan python. analisis
tersebut dilakukan dengan menggunakan skenario yang berbeda-beda
berdasarkan penambahan topologi node. Skenario yang akan dijalankan
pada simulasi ini adalah sebagai berikut:

4.4.1 Skenario 1

Gambar 4. 2 Topologi Jaringan MANET 10 node, Luas Area 1000m


X 1000m
Gambar pada skenario 1 adalah posisi 10 node sebagai
topologi jaringan MANET dari hasil visualisasi python pada file
NS3 yang telah dibuat dengan luas area sebesar 1000 X 1000m.

UIN Syarif Hidayatullah Jakarta


59

4.4.2 Skenario 2

Gambar 4. 3 Topologi Jaringan MANET 50 node, Luas Area 1000m


X 1000m
Gambar pada skenario 2 adalah posisi 50 node sebagai
topologi jaringan MANET dari hasil visualisasi python pada file
NS3 yang telah dibuat dengan luas area sebesar 1000 X 1000m.

UIN Syarif Hidayatullah Jakarta


60

4.4.3 Skenario 3

Gambar 4. 4 Topologi Jaringan MANET 100 node, Luas Area


1000m X 1000m

Gambar pada skenario 3 adalah posisi 100 node sebagai


topologi jaringan MANET dari hasil visualisasi python pada file
NS3 yang telah dibuat dengan luas area sebesar 1000 X 1000m.

UIN Syarif Hidayatullah Jakarta


61

4.4.4 Skenario 4

Gambar 4. 5 Topologi Jaringan MANET 150 node, Luas Area


1000m X 1000m

Gambar pada skenario 4 adalah posisi 150 node sebagai


topologi jaringan MANET dari hasil visualisasi python pada file
NS3 yang telah dibuat dengan luas area sebesar 1000 X 1000m.

UIN Syarif Hidayatullah Jakarta


62

4.4.5 Skenario 5

Gambar 4. 6 Topologi Jaringan MANET 200 node, Luas Area


1000m X 1000m
Gambar pada skenario 5 adalah posisi 200 node sebagai
topologi jaringan MANET dari hasil visualisasi python pada file
NS3 yang telah dibuat dengan luas area sebesar 1000 X 1000m.

UIN Syarif Hidayatullah Jakarta


63

4.5. Simulation

Proses simulasi akan dijalankan menggunakan skenario yang telah


ditentukan pada tahap sebelumnya pada tahap ini. Selain itu, pengujian
dilakukan sesuai dengan parameter yang telah ditentukan juga pada tahap
sebelumnya.

 Pembuatan Aplikasi
Pembuatan parameter dalam simulasi ruting protokol DSR
dan DSDV dilakukan menggunakan Sublime text berikut
tahapan dalam membuat aplikasi:

1. Membuat Node.
Untuk membuat node penulis menggunakan bahasa c++ berikut
potongan kodenya.
NodeContainer networkNodes;
networkNodes.Create (numNodes);.
2. Inisiasi posisi node dan mobility model.
Untuk mengatur posisi node dan model pergerakan arah node
yang digunakan dalam NS-3 dengan Random Rectangle Position
Allocator dan Random Waypoint Mobility berikut adalah
potongan kodenya:
MobilityHelper mobility;
ObjectFactory pos;
pos.SetTypeId ("ns3::RandomRectanglePositionAllocator");
pos.Set ("X", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
pos.Set ("Y", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
std::ostringstream speedConstantRandomVariableStream;
speedConstantRandomVariableStream <<
"ns3::ConstantRandomVariable[Constant=" << speed << "]";

UIN Syarif Hidayatullah Jakarta


64

Ptr <PositionAllocator> taPositionAlloc = pos.Create ()-


>GetObject <PositionAllocator> ();
mobility.SetMobilityModel
("ns3::RandomWaypointMobilityModel", "Speed", StringValue
(speedConstantRandomVariableStream.str ()), "Pause",
StringValue ("ns3::ConstantRandomVariable[Constant=2.0]"),
"PositionAllocator", PointerValue (taPositionAlloc));
mobility.SetPositionAllocator (taPositionAlloc);
mobility.SetMobilityModel
("ns3::ConstantPositionMobilityModel");
mobility.Install (networkNodes);
3. Throughput.
Rumus throughput adalah besar paket diterima dibagi waktu
simulasi.
Berikut potongan kode perhitungan throughput pada NS-3.
"Throughput:" <<
double((received_packets*packetSize)/60)*8/1024 << " Kbps."
4. Delay.
Rumus Delay adalah total Delay dibagi paket diterima
Berikut potongan kode perhitungan Delay pada NS-3.
Delay.RecordRx(packet);
total_Delay += Delay.GetLastDelay().GetSeconds();
Rerata Delay: " << total_Delay/received_packets << "seconds."
5. Packet Loss.
Rumus Packet loss adalah total paket dikirim dikurangi paket
diterima.
Berikut potongan kode perhitungan Packet loss pada NS-3.
"Jumlah paket yang hilang: " << numPackets*(numNodes - 1) -
received_packets << " paket. "
6. Pembuatan aplikasi dan waktu simulasi.

UIN Syarif Hidayatullah Jakarta


65

Berikut potongan kode untuk pembuatan aplikasi dan waktu


simulasi pada NS-3.
{
Simulator::Schedule (Seconds(startTime), &GenerateTraffic,
source, packetSize, networkNodes.Get(count2), numPackets,
interPacketInterval);
}
Simulator::Stop (Seconds (60.0));

Simulator::Run ();
Simulator::Destroy();

4.6. Verification and Validation

Penjelasan dan pemaparan mengenai verifikasi dan validasi akan


dijelaskan pada bab V skripsi, yaitu pada bagian hasil dan pembahasan.

4.7. Experimentation

Penjelasan dan pemaparan mengenai eksperimentasi akan


dijelaskan pada bab V skripsi, yaitu pada bagian hasil dan pembahasan.

4.8. Output Analysis

Penjelasan dan pemaparan mengenai output analysis akan


dijelaskan pada bab V skripsi, yaitu pada bagian hasil dan pembahasan.

UIN Syarif Hidayatullah Jakarta


BAB V
HASIL DAN PEMBAHASAN

5.1. Verification and Validation

Verifikasi dan validasi dari tahap-tahap sebelumnya dilakukan pada


tahap ini. Jika terjadi kesalahan pada masing-masing tahap metode simulasi
maka dilakukan koreksi atau perbaikan. Verifikasi dilakukan dengan
menguji apakah protokol ruting DSR dan DSDV yang telah dibuat dapat
berjalan. Sedangkan validasi dilakukan dengan mengecek kembali apakah
protokol ruting DSR dan DSDV yang telah dibuat telah sesuai dengan
ketentuan-ketentuan pada conceptual model, input output data dan
modelling.

5.2. Experimentation

Setelah NS-3 dan Sublime text diinstall pada Ubuntu, maka akan
dilakukan proses pengujian performa ruting pada DSR dan DSDV
menggunakan waf tools sesuai dengan konsep dan model simulasi yang
telah dijelaskan sebelumnya.

5.2.1. Protokol ruting DSR

Pengujian performa ruting DSR dilakukan dengan


menggunakan waf tools pada NS-3 sehingga menghasilkan gambar
seperti berikut.

Gambar 5. 1 Ruting DSR


Setelah berhasil membuat protokol DSR maka NS-3
langsung membuat aplikasi pada terminal dan menjalankan
simulasi.

66
67

Gambar 5. 2 Data berjalan DSR

Gambar diatas merupakan proses berjalannya simulasi pada


protokol ruting DSR.

5.2.2. Protokol ruting DSDV

Pengujian performa ruting DSDV dilakukan dengan


menggunakan waf tools pada NS-3 sehingga menghasilkan gambar
seperti berikut.

Gambar 5. 3 Ruting DSDV

UIN Syarif Hidayatullah Jakarta


68

Setelah berhasil membuat protokol DSDV maka NS-3


langsung membuat aplikasi pada terminal dan menjalankan
simulasi.

Gambar 5. 4 Data Berjalan DSDV

Gambar diatas merupakan proses berjalannya simulasi pada


protokol ruting DSDV

5.3. Output Analysis Ruting Protokol DSR dan DSDV

Berikut akan di paparkan hasil simulasi dari ruting protokol DSR


dan DSDV pada skenario 10 node, 50 node, 100 node, 150 node, dan 200
node.

5.3.1. Hasil Simulasi Skenario DSR 10 node

Berikut hasil dari simulasi protokol routing DSR terhadap


Throughput, Delay dan Packet Loss dengan topologi 10 node.

Gambar 5. 5 Protokol ruting DSR dengan topologi 10 node

UIN Syarif Hidayatullah Jakarta


69

Protokol ruting DSR dengan topologi 10 node menggunakan


pergerakan acak selama 60 detik dan kecepatan konstan sebesar
5m/s menghasilkan throughput sebesar 72 Kbps, Delay sebesar
0.00640476 detik atau 6.40476 ms dan paket yang hilang sebesar
360 atau 40%.

5.3.2. Hasil Simulasi Skenario DSR 50 node

Berikut hasil dari simulasi protokol routing DSR terhadap


Throughput, Delay dan Packet loss dengan topologi 50 node.

Gambar 5. 6 Protokol ruting DSR dengan topologi 50 node

Protokol ruting DSR dengan topologi 50 node menggunakan


pergerakan acak selama 60 detik dan kecepatan konstan sebesar
5m/s menghasilkan throughput sebesar 392 Kbps, Delay sebesar
0.0334381 detik atau 33.4381 ms dan paket yang hilang sebesar
1960 atau 40%.

5.3.3. Hasil Simulasi Skenario DSR 100 node

Berikut hasil dari simulasi protokol routing DSR terhadap


Throughput, Delay dan Packet loss dengan topologi 100 node.

UIN Syarif Hidayatullah Jakarta


70

Gambar 5. 7 Protokol ruting DSR dengan topologi 100 node

Protokol ruting DSR dengan topologi 100 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 792 Kbps,
Delay sebesar 0.0672287 detik atau 67.2287 ms dan paket yang
hilang sebesar 3960 atau 40%.

5.3.4. Hasil Simulasi Skenario DSR 150 node

Berikut hasil dari simulasi protokol routing DSR terhadap


Throughput, Delay dan Packet loss dengan topologi 150 node.

Gambar 5. 8 Protokol ruting DSR dengan topologi 150 node

Protokol ruting DSR dengan topologi 150 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 1192 Kbps,
Delay sebesar 0.101033 detik atau 101.033 ms dan paket yang
hilang sebesar 5960 atau 40%.

UIN Syarif Hidayatullah Jakarta


71

5.3.5. Hasil Simulasi Skenario DSR 200 node

Berikut hasil dari simulasi protokol routing DSR terhadap


Throughput, Delay dan Packet loss dengan topologi 200 node.

Gambar 5. 9 Protokol ruting DSR dengan topologi 200 node

Protokol ruting DSR dengan topologi 200 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 1592 Kbps,
Delay sebesar 0.135119 detik atau 135.119 ms dan paket yang
hilang sebesar 7960 atau 40%.

5.3.6. Hasil Simulasi Skenario DSDV 10 node

Berikut hasil dari simulasi protokol routing DSDV terhadap


Throughput, Delay dan Packet loss dengan topologi 10 node.

Gambar 5. 10 Protokol ruting DSDV dengan topologi 10 node

UIN Syarif Hidayatullah Jakarta


72

Protokol ruting DSDV dengan topologi 10 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 71.5938
Kbps, Delay sebesar 0.00643997 detik atau 6.43997 ms dan paket
yang hilang sebesar 363 atau 40.33333%.

5.3.7. Hasil Simulasi Skenario DSDV 50 node

Berikut hasil dari simulasi protokol routing DSDV terhadap


Throughput, Delay dan Packet loss dengan topologi 50 node.

Gambar 5. 11 Protokol ruting DSDV dengan topologi 50 node


Protokol ruting DSDV dengan topologi 50 node
menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 363.195
Kbps, Delay sebesar 0.0351168 detik atau 35.1168 ms dan paket
yang hilang sebesar 2176 atau 44.40816%.

UIN Syarif Hidayatullah Jakarta


73

5.3.8. Hasil Simulasi Skenario DSDV 100 node

Berikut hasil dari simulasi protokol routing DSDV terhadap


Throughput, Delay dan Packet loss dengan topologi 100 node.

Gambar 5. 12 Protokol ruting DSDV dengan topologi 100 node

Protokol ruting DSDV dengan topologi 100 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 677.461
Kbps, Delay sebesar 0.0709211 detik atau 70.9211 ms dan paket
yang hilang sebesar 4819 atau 48.67677%.

5.3.9. Hasil Simulasi Skenario DSDV 150 node

Berikut hasil dari simulasi protokol routing DSDV terhadap


Throughput, Delay dan Packet loss dengan topologi 150 node.

Gambar 5. 13 Protokol ruting DSDV dengan topologi 150 node


Protokol ruting DSDV dengan topologi 150 node
menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 998.398

UIN Syarif Hidayatullah Jakarta


74

Kbps, Delay sebesar 0.177716 detik atau 177.716 ms dan paket yang
hilang sebesar 7412 atau 49.74497%.

5.3.10. Hasil Simulasi Skenario DSDV 200 node

Berikut hasil dari simulasi protokol routing DSDV terhadap


Throughput, Delay dan Packet loss dengan topologi 200 node.

Gambar 5. 14 Protokol ruting DSDV dengan topologi 200 node

Protokol ruting DSDV dengan topologi 200 node


menggunakan pergerakan acak selama 60 detik dan kecepatan
konstan sebesar 5m/s menghasilkan throughput sebesar 1317.59
Kbps, Delay sebesar 0.273439 detik atau 273.439 ms dan paket yang
hilang sebesar 10018 atau 50.34171%.

5.4. Output Analysis Performa Ruting

Hasil simulasi yang dilakukan pada setiap skenario protokol ruting


bertujuan untuk mendapatkan nilai performa ruting dari setiap skenario
yang dirancang. Berikut adalah performa ruting dari setiap skenario.

5.4.1. Performa Throughput

Throughput merupakan factor penting yang mempengaruhi


performa komunikasi dan jaringan. Semakin tinggi nilai throughput,
maka semakin baik jaringan tersebut. Throughput dihitung dengan
cara ukuran paket yang diterima tujuan dalam kilo bit dibagi waktu
simulasi, sehingga satuan throughput adalah kilo bit per detik

UIN Syarif Hidayatullah Jakarta


75

(Kbps). Semakin banyak jumlah node seharusnya nilai throughput


yang dihasilkan akan semakin meningkat pula.
Pada skenario percobaan throughput muncul pada file output
.txt hasil throughput dari semua skenario akan ditampilkan pada
tabel 5.1 dan grafik 5.15 dibawah ini.

Tabel 5. 1 Hasil simulasi Throughput DSR dan DSDV

Throughput masing masing protokol


Jumlah node
DSR DSDV
10 Node 72 Kbps 71.5938 Kbps
50 Node 392 Kbps 363.195 Kbps
100 Node 792 Kbps 677.461 Kbps
150 node 1192 Kbps 998.398 Kbps
200 node 1592 Kbps 1317.59 Kbps

Throughput
1800
1600
1400
1200
1000
800
600
400
200
0
10 Node 50 Node 100 Node 150 node 200 node

DSR DSDV

Gambar 5. 15 Grafik throughput DSR dan DSDV


Routing protokol DSR dan DSDV cukup stabil nilai

throughputnya dengan meningkat seimbang dengan penambahan

node. Performa paling tinggi DSDV berada pada jumlah node 200

UIN Syarif Hidayatullah Jakarta


76

yaitu 1317.59 Kbps dan performa terendah DSDV pada jumlah node

10 yaitu 71.5938 Kbps sedangkan DSR lebih unggul dengan

Performa maksimal pada node 200 yaitu 1592 Kbps dan Performa

terendah pada 10 node yaitu 72 Kbps.

5.4.2. Performa Delay

Delay merupakan waktu yang dibutuhkan sebuah paket


untuk menempuh perjalanan dari node sumber sampai pada node
tujuan. Semakin kecil Delay pada proses pengiriman paket maka
semakin baik performa ruting protokol, satuan Delay adalah detik
atau mili detik (ms).

Pada skenario percobaan Delay muncul pada file output.txt


hasil Delay dari semua skenario akan ditampilkan pada tabel 5.2 dan
grafik 5.16 dibawah ini.

Tabel 5. 2 Hasil simulasi Delay DSR dan DSDV

Delay masing masing protokol


Jumlah node
DSR DSDV
10 Node 6.40476 ms 6.43997 ms

50 Node 33.4381 ms 35.1168 ms

100 Node 67.2287 ms 70.9211 ms

150 node 101.033 ms 177.716 ms

200 node 135.119 ms 273.439 ms

UIN Syarif Hidayatullah Jakarta


77

Delay
300

250

200

150

100

50

0
10 Node 50 Node 100 Node 150 node 200 node

DSR DSDV

Gambar 5. 16 Grafik Delay DSR dan DSDV

Pada performa Delay DSDV terjadi lonjakan paling


signifikan pada jumlah node 100 menuju 150 node, dari 70.9211 ms
menjadi 177.716 ms. Delay tertinggi terjadi pada jumlah node 200,
yaitu 273.439 ms dan Delay terendah pada jumlah node 10, yaitu
6.43997 ms.
Performa Delay DSR terlihat peningkatan yang lebih stabil
dibanding dengan DSDV. Dimulai pada jumlah node 10 dengan
nilai Delay terendah, yaitu 6.40476 ms dan tertinggi pada jumlah
node 200 yaitu 135.119 ms. Jelas terlihat secara keseluruhan
performa Delay DSR lebih rendah daripada DSDV sehingga
performa DSR lebih baik dibanding DSDV.

5.4.3. Performa Packet loss

Packet loss terjadi ketika satu paket data atau lebih yang

melintasi sebuah jaringan komputer gagal mencapai tujuannya.

Packet loss dihitung dengan cara jumlah total paket yang dikirim

dikurangi jumlah paket yang diterima, untuk prosentasenya jumlah

UIN Syarif Hidayatullah Jakarta


78

paket yang dikirim dikurang jumlah paket yang diterima dikali

seratus persen. Semakin rendah paket yang hilang maka semakin

baik performa routing protokol.

Pada skenario percobaan Packet loss muncul pada file


output.txt hasil Packet loss dari semua skenario akan ditampilkan
pada tabel 5.3 dan grafik 5.17 dibawah ini.

Tabel 5. 3 Hasil simulasi Packet loss DSR dan DSDV

Packet loss masing masing protokol


Jumlah node
DSR DSDV
10 Node 360 paket 363 paket

50 Node 1960 paket 2176 paket

100 Node 3960 paket 4819 paket

150 node 5960 paket 7412 paket

200 node 7960 paket 10018 paket

Packet Loss
12000

10000

8000

6000

4000

2000

0
10 Node 50 Node 100 Node 150 node 200 node

DSR DSDV

Gambar 5. 17 Grafik Packet loss DSR dan DSDV

UIN Syarif Hidayatullah Jakarta


79

Performa Routing protokol DSR cukup stabil nilai Packet


lossnya dengan meningkat seimbang dengan penambahan node.
Performa Packet loss terbesar DSR berada pada jumlah node 200
sebanyak 7960 paket yang hilang dan performa terendah DSR
terjadi pada jumlah node 10 sebanyak 360 paket yang hilang.

Performa protokol ruting DSDV terendah berada pada


jumlah node 10 sebanyak 363 paket yang hilang sedangkan
performa Packet loss tertinggi berada pada jumlah node 200
sebanyak 10018 paket yang hilang.

Berikut dipaparkan prosentase paket yang hilang untuk


menilai performa Packet loss pada protokol DSR dan DSDV
kedalan bentuk tabel dan grafik.

Prosentase Packet loss masing masing protokol


Jumlah node
DSR DSDV
10 Node 40% 40.33333%

50 Node 40% 44.40816%

100 Node 40% 48.67677%

150 node 40% 49.74497%

200 node 40% 50.34171%

UIN Syarif Hidayatullah Jakarta


80

Packet Loss
60

50

40

30

20

10

0
10 Node 50 Node 100 Node 150 node 200 node

DSR DSDV

Gambar 5. 18 Grafik Packet loss DSR dan DSDV

Routing protokol DSR sangat stabil dalam prosentase


performa Packet loss terlihat pada jumlah node 10 sampai node 200
packet yang hilang sebesar 40% tidak ada titik tertinggi maupun titik
terendah dari paket yang hilang pada protokol DSR.

Ruting protokol DSDV mengalami peningkatan paket yang


hilang pada 50 node menuju 100 node, dari 44.40816% menjadi
48.67677% paket yang hilang terbesar terjadi pada jumlah node 200
yaitu sebesar 50.34171% dan paket yang hilang terendah terjadi
pada jumlah node 10 yaitu sebesar 40.33333%. Jelas terlihat secara
keseluruhan performa Packet loss DSR lebih rendah daripada
DSDV sehingga performa DSR lebih baik dan stabil dibanding
DSDV.

UIN Syarif Hidayatullah Jakarta


BAB VI
PENUTUP

6.1. Kesimpulan

Berdasarkan hasil dari tahapan-tahapan metode simulasi yang telah


dilakukan, performa ruting protokol DSR dan DSDV menggunakan NS-3
dengan parameter Throughput, Delay, dan Packet loss menunjukkan bahwa
secara keseluruhan performa protokol ruting DSR (Dynamic Source
Routing) lebih unggul dari protokol ruting DSDV (destination sequence
distance vector) pada node dan penambahan node yang kecil.

Kesimpulan dari penelitian ini menunjukkan bahwa Protokol ruting


DSR lebih unggul dari protokol ruting DSDV, protokol ruting DSR
menghasilkan throughput sebesar yang lebih besar dibandingkan protokol
ruting DSDV. protokol ruting DSR menghasilkan lebih sedikit Delay
dibandingkan Delay protokol ruting DSDV. Selain itu, protol ruting DSR
memiliki Packet loss yang stabil di 40% dalam penambahan node dari 10
node sampai 200 node. Packet loss protokol ruting DSDV bertambah dalam
penambahan node dari 10 node sampai puncaknya pada jumlah 200 node,
yaitu 50,34% paket yang hilang.

6.2. Saran

Penulis menyarankan untuk melakukan pengembangan penelitian


selanjutnya agar menjadi lebih baik karena penelitian ini memiliki banyak
keterbatasan. Berikut adalah saran untuk penelitian selanjutnya :

1. Melakukan penelitian dengan protokol ruting yang lain agar bisa


mengetahui lebih dalam tentang protokol ruting seperti AODV, OSLR,
ZRP, EIGRP dll.
2. Melakukan penelitian dengan menguji terhadap keamanan jaringan.
3. Melakukan penelitian dengan parameter QoS (Quality of Service) yang
lain seperti PDR, Routing Overhead, Energy consumption dll.

81
82

DAFTAR PUSTAKA

Dabungke, B., Wahidah, I., dan Mulyana, A. (2009). Evaluasi Performansi


Protokol Ruting DSDV dan DSR Pada Jaringan Wireless Mobile Ad Hoc
Network (Manet).

Dean, T. (2010). Network+ Guide to Networks: fifth edition. Course Technology.


USA.

Dordal, P, L. (2018). An Introduction to Computer Networks, Release 1.9.10.


Loyola University Chicago.

Graziani, R., & Vanchon, B. (2014). Routing Protocols Companion Guide. Cisco
Press. Indianapolis.

Issariyakul, T., & Hossain, E. (2009). Introduction to Network Simulator NS2.


Springer.

Jiatmiko, N., dan Prayudi, Y. (2015). Simulasi Jaringan Manet Dengan Ns3 Untuk
Membandingkan Performa Routing Protokol AODV dan DSDV.

Khediri, S, E., et all. (2014). Routing Protocols in MANET: Performance


Comparison of AODV, DSR and DSDV Protocols using NS2. IEEE.

Koh, C. (2013). Why Simulation is Important: An Engineer’s Perspective. PepsiCo

Global R&D.

Madani, S, A,. et all. (2010). Wireless sensor networks : modeling and simulation.

Marsic, I. (2013). Computer Networks Performance and Quality of Service. Rutgers


University.

Murthy, C, S, R., & Manoj, B, S. (2004). Adhoc Wireless Networks And Protocols.
Pearson Education, Inc. USA.

UIN Syarif Hidayatullah Jakarta


83

Narra, H., et all. (2011). Destination-Sequenced Distance Vector (DSDV) Routing


Protocol Implementation in NS-3. SIMUTools’11 Proceeding of the ICST,
Brussels.

Hennderson, T. (2017). NS-3.27 Module . (online) Retrieved from


https://www.nsnam.org/wiki/Ns-3.27/module.htm diakses pada tanggal 24
april 2018.

Qi, H, A, S., Anggoro, R., dan Husni, M. (2017). Implementasi Routing Protokol
DSR pada scenario Mobility random waypoint dengan menggunakan
propagasi nakagami. Jurnal teknik ITS vol.6 no.2.

Raharjo, B. (2007). Pemrograman C++. Informatika. Bandung.

Rai, V., & Jain, J. (2012). Study and Comparison Performance of On-demand
AODV and DSR, along with the traditional proactive DSDV Routing Protocol
for MANET. International Journal of Scientific and Research Publication
(IJSR) vol. 2.

Saeed, N, H., Abbod, M, F., & Al-Raweshidy, H. (2012). Manet Routing protocol
taxonomy. ICFCN.

Saputro, D, S. (2016). Analisis Perbandingan Algoritma Routing LEACH-C dan


Pegasis Pada Wireless Sensor Network menggunakan Network Simulator-2.
Fakultas Sains dan Teknologi. Universitas Islam Negeri Syarif Hidayatullah
Jakarta. Jakarta.

Shastri, D., & Lala, A. (2017). Comparison of AODV, DSR and DSDV on Different
Simulator for Qos Parameters. International Journal of Scientific and
Research (IJSR) vol. 6.

Sidharta, Y., & Widjaja, D. (2013). Perbandingan Unjuk Kerja Protokol Routing
Adhoc on Demand Distance Vector (AODV) dan Dynamic Source Routing
(DSR) Pada Manet.

UIN Syarif Hidayatullah Jakarta


84

Skinner, J. (2017). Sublimetext 3.0. (online) Retrieved from


https://www.sublimetext.com/blog/articles/sublime-text-3-point-0 diakses
pada tanggal 24 april 2018.

Soewito, B. (2014). Performance Optimization Wireless Adhoc Network Based On


Routing Protocols. International Journal Of Control And Automation, 7(2),
49-64. Doi:10.14257/Ijca.2014.7.2.06.

Stallings, W. (2010). Computer Organization and Architecture Designing for


Performance eighth edition. Prentince Hall.

Sukaridhoto, S. (2014). Buku Jaringan Komputer I. Politeknik Elektronika Negeri


Surabaya (PENS). Surabaya.

Wetherall, D, J., & Tanebaum, A, S. (2011). Computer Networks fifth edition.


Prentice Hall.

William, C, Y, L. (2008). Mobile Cellular Telecommunications. McGraw Hill


International Editions.

UIN Syarif Hidayatullah Jakarta


LAMPIRAN

A. Kode Program DSR


NS_LOG_COMPONENT_DEFINE ("DSR");
using namespace ns3;
using namespace dsr;
using namespace std;
uint32_t received_packets = 0;
long double total_delay = 0;
void ReceivePacket (Ptr<Socket> socket)
{
ofstream outfile;
outfile.open("dsr10n_Simulation_general.txt", ios::app);
Ptr<Packet> packet;
Address from;
while (packet = socket->RecvFrom (from))
{
if (packet->GetSize () > 0)
{ received_packets++;
DelayJitterEstimation delay;
delay.RecordRx(packet);
total_delay += delay.GetLastDelay().GetSeconds();
InetSocketAddress iaddr = InetSocketAddress::ConvertFrom (from);
NS_LOG_UNCOND ("--\nMenerima 1 paket, jumlah paket sampai saat ini: "
<< received_packets << " dari: "
<< iaddr.GetIpv4() << " Delay: "
<< delay.GetLastDelay().GetSeconds() << " Ukuran paket "
<< packet -> GetSize() << " port: "
<< iaddr.GetPort () << " pada detik ke = "
<< Simulator::Now ().GetSeconds () << "\n--");
outfile << "Menerima 1 paket, socket: "
<< iaddr.GetIpv4 () << " port: "
<< iaddr.GetPort () << " pada detik ke = "
<< Simulator::Now ().GetSeconds () << "\n";

85
(void) iaddr;
}
}
outfile.close();
}
static void GenerateTraffic (Ptr<Socket> socket, uint32_t pktSize, Ptr<Node> n,
uint32_t pktCount, Time pktInterval)
{
Ptr<Packet> p = Create<Packet> (pktSize);
DelayJitterEstimation delay;
delay.PrepareTx(p);
if (pktCount > 0)
{
socket->Send (p);
Simulator::Schedule (pktInterval, &GenerateTraffic, socket, pktSize, n, pktCount
- 1, pktInterval);
}
else
{
socket->Close ();
}
}
int main (int argc, char *argv[])
{
bool verbose = false;
double startTime = 0.0;
uint32_t numPackets = 100; // jumlah paket yang dikirim
std::string phyMode ("DsssRate11Mbps");
uint32_t packetSize = 1024;
uint32_t periodicUpdateInterval = 5;
long double interval = 1;
uint32_t numNodes = 200;
uint32_t speed = 5;
ofstream outfile;

86
ofstream outfile2;
outfile.open("dsr10n_Simulation_general.txt", ios::app);
outfile << "Parameter simulasi" << endl
<< "Protokol Routing : DSR" << endl
<< "Jumlah Node: " << numNodes << endl
<< "Kecepatan: " << speed << " m/s" << endl
<< "Jumlah paket yang dikirim dari tiap node : " << numPackets << endl
<< "Data rate: " << ((packetSize/interval)*8)/1024 << " Mbps" << endl;
outfile2.open("dsr10n_Simulation_results.txt", ios::app);
outfile2 << "----Parameter simulasi----" << endl
<< "Protokol Routing : DSR" << endl
<< "Jumlah Node: " << numNodes << endl
<< "Kecepatan: " << speed << " m/s" << endl
<< "Jumlah paket yang dikirim dari tiap node: " << numPackets <<endl
<< "Data rate: " << ((packetSize/interval)*8)/1024 << " Mbps" << endl;
CommandLine cmd;
cmd.AddValue ("phyMode", "Wifi Phy mode", phyMode);
cmd.AddValue ("packetSize", "ukuran paket aplikasi yang dikirim", packetSize);
cmd.AddValue ("numPackets", "Jumlah total paket yang dikirim", numPackets);
cmd.AddValue ("periodicUpdateInterval", "Waktu pembaruan/update periodik",
periodicUpdateInterval);
cmd.AddValue ("startTime", "Waktu mulai simulasi", startTime);
cmd.AddValue ("verbose", "Menyalakan semua komponen log alat", verbose);
cmd.Parse (argc, argv);
Time interPacketInterval = Seconds (interval);
Config::SetDefault
("ns3::WifiRemoteStationManager::FragmentationThreshold",
StringValue("2200"));
Config::SetDefault ("ns3::WifiRemoteStationManager::RtsCtsThreshold",
StringValue ("2200"));
Config::SetDefault ("ns3::WifiRemoteStationManager::NonUnicastMode",
StringValue (phyMode));

NodeContainer networkNodes;

87
networkNodes.Create (numNodes);
WifiHelper wifi;
if (verbose)
{
wifi.EnableLogComponents ();
}
wifi.SetStandard (WIFI_PHY_STANDARD_80211b);
/** Wifi PHY **/
YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default ();
wifiPhy.Set ("RxGain", DoubleValue (5));
wifiPhy.Set ("TxGain", DoubleValue (5));
wifiPhy.Set ("CcaMode1Threshold", DoubleValue (0.0));
/** wifi channel **/
YansWifiChannelHelper wifiChannel;
wifiChannel.SetPropagationDelay
("ns3::ConstantSpeedPropagationDelayModel");
wifiChannel.AddPropagationLoss ("ns3::FriisPropagationLossModel");
Ptr<YansWifiChannel> wifiChannelPtr = wifiChannel.Create ();
wifiPhy.SetChannel (wifiChannelPtr);
/** MAC layer **/
NqosWifiMacHelper wifiMac = NqosWifiMacHelper::Default ();
wifi.SetRemoteStationManager ("ns3::ConstantRateWifiManager",
"DataMode", StringValue (phyMode), "ControlMode", StringValue (phyMode));
wifiMac.SetType ("ns3::AdhocWifiMac");
NetDeviceContainer devices = wifi.Install (wifiPhy, wifiMac, networkNodes);
MobilityHelper mobility;
ObjectFactory pos;
pos.SetTypeId ("ns3::RandomRectanglePositionAllocator");
pos.Set ("X", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
pos.Set ("Y", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
std::ostringstream speedConstantRandomVariableStream;

88
speedConstantRandomVariableStream <<
"ns3::ConstantRandomVariable[Constant=" << speed << "]";
Ptr <PositionAllocator> taPositionAlloc = pos.Create ()->GetObject
<PositionAllocator> ();
mobility.SetMobilityModel ("ns3::RandomWaypointMobilityModel", "Speed",
StringValue (speedConstantRandomVariableStream.str ()), "Pause", StringValue
("ns3::ConstantRandomVariable[Constant=2.0]"), "PositionAllocator",
PointerValue (taPositionAlloc));
mobility.SetPositionAllocator (taPositionAlloc);
mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
mobility.Install (networkNodes);
//** Routing Protocol (DSR) **/
DsrHelper dsr;
DsrMainHelper dsrMain;
Ipv4ListRoutingHelper list;
/** Internet stack **/
InternetStackHelper internet;
internet.SetRoutingHelper (list);
internet.Install (networkNodes);
/** Network Adresses **/
Ipv4AddressHelper ipv4;
NS_LOG_INFO ("Assign IP Addresses.");
ipv4.SetBase ("10.1.0.0", "255.255.0.0");
Ipv4InterfaceContainer i = ipv4.Assign (devices);
TypeId tid = TypeId::LookupByName ("ns3::UdpSocketFactory");
Ptr<Socket> recvSink;
recvSink = Socket::CreateSocket (networkNodes.Get (0), tid);
InetSocketAddress local = InetSocketAddress (Ipv4Address::GetAny (), 80);
recvSink->Bind (local);
recvSink->SetRecvCallback (MakeCallback (&ReceivePacket));
Ptr<Socket> source;
for(uint32_t count1 = 1; count1 < numNodes; count1++)
{
source = Socket::CreateSocket (networkNodes.Get (count1), tid);

89
InetSocketAddress remote = InetSocketAddress (Ipv4Address::GetBroadcast (),
80);
source->SetAllowBroadcast (true);
source->Connect (remote);
}
for(uint32_t count2 = 1; count2 < numNodes; count2++)
{
Simulator::Schedule (Seconds(startTime), &GenerateTraffic, source, packetSize,
networkNodes.Get(count2), numPackets, interPacketInterval);
}
Simulator::Stop (Seconds (60.0));
Simulator::Run ();
Simulator::Destroy();
NS_LOG_UNCOND ("Jumlah paket dikirim: " << numPackets*(numNodes - 1)
<< " paket. \nJumlah paket diterima: " << received_packets << " paket. \nPaket
diterima: " << double(received_packets*100)/(numPackets*(numNodes - 1)) <<
"%. \nRerata Delay: " << total_delay/received_packets << " detik. \nThroughput:
" << double ((received_packets*packetSize)/30)*8/1024 << " Kbps.\nAkhir
simulasi");
outfile2 << "----Hasil Simulasi----" << endl <<
"Jumlah paket dikirim: " << numPackets*(numNodes - 1) << endl <<
"Jumlah paket diterima: " << received_packets << " paket. " << endl <<
"Jumlah paket yang hilang: " << numPackets*(numNodes - 1) - received_packets
<< " paket. " << endl <<
"Rerata Delay: " << total_delay/received_packets << "seconds." << endl <<
"Throughput: " <<double((received_packets*packetSize)/30)*8/1024 << " Kbps."
<< endl;
outfile << "Akhir simulasi" << endl << endl;
outfile2 << "Akhir simulasi" << endl << endl <<
"---------------------------------------------------------" << endl << endl;
outfile.close();
outfile2.close();
received_packets = 0;
total_delay = 0;

90
return 0;
}
B. Kode Program DSDV
NS_LOG_COMPONENT_DEFINE ("DSDV");
using namespace ns3
using namespace std;
uint32_t received_packets = 0;
long double total_delay = 0;
void ReceivePacket (Ptr<Socket> socket)
{
ofstream outfile;
outfile.open("dsdv10n_Simulation_general.txt", ios::app);
Ptr<Packet> packet;
Address from;
while (packet = socket->RecvFrom (from))
{
if (packet->GetSize () > 0)
{
received_packets++;
DelayJitterEstimation delay;
delay.RecordRx(packet);
total_delay += delay.GetLastDelay().GetSeconds();
InetSocketAddress iaddr = InetSocketAddress::ConvertFrom (from);
NS_LOG_UNCOND ("--\nMenerima 1 paket, jumlah paket sampai saat ini: "
<< received_packets << " dari: " << iaddr.GetIpv4() << " Delay: " <<
delay.GetLastDelay().GetSeconds() << " Ukuran paket "<< packet -> GetSize()
<< " port: " << iaddr.GetPort () << " pada detik ke = " << Simulator::Now
().GetSeconds () << "\n--");
outfile << "Menerima 1 paket, socket: "<< iaddr.GetIpv4 ()<< " port: " <<
iaddr.GetPort () << " pada detik ke = " << Simulator::Now ().GetSeconds () <<
"\n";
(void) iaddr;
}
}

91
outfile.close();
}
static void GenerateTraffic (Ptr<Socket> socket, uint32_t pktSize, Ptr<Node> n,
uint32_t pktCount, Time pktInterval)
{
Ptr<Packet> p = Create<Packet> (pktSize);
DelayJitterEstimation delay;
delay.PrepareTx(p);
if (pktCount > 0)
{
socket->Send (p);
Simulator::Schedule (pktInterval, &GenerateTraffic, socket, pktSize, n,
pktCount - 1, pktInterval);
}
else
{
socket->Close ();
}
}
int main (int argc, char *argv[])
{
bool verbose = false;
double startTime = 0.0;
uint32_t numPackets = 100; // jumlah paket yang dikirim
std::string phyMode ("DsssRate11Mbps");
uint32_t packetSize = 1024;
uint32_t periodicUpdateInterval = 5;
long double interval = 1;
uint32_t numNodes = 200;
uint32_t speed = 5;
ofstream outfile;
ofstream outfile2;

outfile.open("dsdv10n_Simulation_general.txt", ios::app);

92
outfile << "Parameter simulasi" << endl
<< "Protokol Routing : DSDV" << endl
<< "Jumlah Node: " << numNodes << endl
<< "Kecepatan: " << speed << " m/s" << endl
<< "Jumlah paket yang dikirim dari tiap node : " << numPackets << endl
<< "Data rate: " << ((packetSize/interval)*8)/1024 << " Mbps" << endl;
outfile2.open("dsdv10n_Simulation_results.txt", ios::app);
outfile2 << "----Parameter simulasi----" << endl
<< "Protokol Routing : DSDV" << endl
<< "Jumlah Node: " << numNodes << endl
<< "Kecepatan: " << speed << " m/s" << endl
<< "Jumlah paket yang dikirim dari tiap node: " << numPackets <<endl
<< "Data rate: " << ((packetSize/interval)*8)/1024 << " Mbps" << endl;
CommandLine cmd;
cmd.AddValue ("phyMode", "Wifi Phy mode", phyMode);
cmd.AddValue ("packetSize", "ukuran paket aplikasi yang dikirim", packetSize);
cmd.AddValue ("numPackets", "Jumlah total paket yang dikirim", numPackets);
cmd.AddValue ("periodicUpdateInterval", "Waktu pembaruan/update periodik",
periodicUpdateInterval);
cmd.AddValue ("startTime", "Waktu mulai simulasi", startTime);
cmd.AddValue ("verbose", "Menyalakan semua komponen log alat", verbose);
cmd.Parse (argc, argv);
Time interPacketInterval = Seconds (interval);
Config::SetDefault
("ns3::WifiRemoteStationManager::FragmentationThreshold",
StringValue("2200"));
Config::SetDefault ("ns3::WifiRemoteStationManager::RtsCtsThreshold",
StringValue ("2200"));
Config::SetDefault ("ns3::WifiRemoteStationManager::NonUnicastMode",
StringValue (phyMode));
NodeContainer networkNodes;
networkNodes.Create (numNodes);
WifiHelper wifi;
if (verbose)

93
{
wifi.EnableLogComponents ();
}
wifi.SetStandard (WIFI_PHY_STANDARD_80211b);
/** Wifi PHY **/
YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default ();
wifiPhy.Set ("RxGain", DoubleValue (5));
wifiPhy.Set ("TxGain", DoubleValue (5));
wifiPhy.Set ("CcaMode1Threshold", DoubleValue (0.0));
/** wifi channel **/
YansWifiChannelHelper wifiChannel;
wifiChannel.SetPropagationDelay
("ns3::ConstantSpeedPropagationDelayModel");
wifiChannel.AddPropagationLoss ("ns3::FriisPropagationLossModel");
Ptr<YansWifiChannel> wifiChannelPtr = wifiChannel.Create ();
wifiPhy.SetChannel (wifiChannelPtr);
/** MAC layer **/
NqosWifiMacHelper wifiMac = NqosWifiMacHelper::Default ();
wifi.SetRemoteStationManager ("ns3::ConstantRateWifiManager","DataMode",
StringValue (phyMode),"ControlMode", StringValue (phyMode));
wifiMac.SetType ("ns3::AdhocWifiMac");
NetDeviceContainer devices = wifi.Install (wifiPhy, wifiMac, networkNodes);
MobilityHelper mobility;
ObjectFactory pos;
pos.SetTypeId ("ns3::RandomRectanglePositionAllocator");
pos.Set ("X", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
pos.Set ("Y", StringValue
("ns3::UniformRandomVariable[Min=0.0|Max=1000.0]"));
std::ostringstream speedConstantRandomVariableStream;
speedConstantRandomVariableStream <<
"ns3::ConstantRandomVariable[Constant=" << speed<< "]";
Ptr <PositionAllocator> taPositionAlloc = pos.Create ()->GetObject
<PositionAllocator> ();

94
mobility.SetMobilityModel ("ns3::RandomWaypointMobilityModel", "Speed",
StringValue (speedConstantRandomVariableStream.str ()),"Pause",
StringValue ("ns3::ConstantRandomVariable[Constant=2.0]"),
"PositionAllocator", PointerValue (taPositionAlloc));
mobility.SetPositionAllocator (taPositionAlloc);
mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
mobility.Install (networkNodes);
//** Routing Protocol (DSDV) **/
DsdvHelper dsdv;
dsdv.Set ("PeriodicUpdateInterval", TimeValue
(Seconds(periodicUpdateInterval)));
/** Internet stack **/
InternetStackHelper internet;
internet.SetRoutingHelper(dsdv);
internet.Install (networkNodes);
/** Network Adresses **/
Ipv4AddressHelper ipv4;
NS_LOG_INFO ("Assign IP Addresses.");
ipv4.SetBase ("10.1.0.0", "255.255.0.0");
Ipv4InterfaceContainer i = ipv4.Assign (devices);
TypeId tid = TypeId::LookupByName ("ns3::UdpSocketFactory");
Ptr<Socket> recvSink;
recvSink = Socket::CreateSocket (networkNodes.Get (0), tid);
InetSocketAddress local = InetSocketAddress (Ipv4Address::GetAny (), 80);
recvSink->Bind (local);
recvSink->SetRecvCallback (MakeCallback (&ReceivePacket));
Ptr<Socket> source;
for(uint32_t count1 = 1; count1 < numNodes; count1++)
{
source = Socket::CreateSocket (networkNodes.Get (count1), tid);
InetSocketAddress remote = InetSocketAddress (Ipv4Address::GetBroadcast (),
80);
source->SetAllowBroadcast (true);
source->Connect (remote);

95
}
for(uint32_t count2 = 1; count2 < numNodes; count2++)
{
Simulator::Schedule (Seconds(startTime), &GenerateTraffic, source,
packetSize, networkNodes.Get(count2), numPackets, interPacketInterval);
}
Simulator::Stop (Seconds (60.0));
Simulator::Run ();
Simulator::Destroy();
NS_LOG_UNCOND ("Jumlah paket dikirim: " << numPackets*(numNodes - 1)
<< " paket. \nJumlah paket diterima: " << received_packets << " paket. \nPaket
diterima: " << double(received_packets*100)/(numPackets*(numNodes - 1)) <<
"%. \nRerata Delay: " << total_delay/received_packets << " detik. \nThroughput:
" << double ((received_packets*packetSize)/30)*8/1024 << " Kbps.\nAkhir
simulasi");
outfile2 << "----Hasil Simulasi----" << endl <<
"Jumlah paket dikirim: " << numPackets*(numNodes - 1) << endl <<
"Jumlah paket diterima: " << received_packets << " paket. " << endl <<
"Paket diterima: " << double(received_packets*10)/(numPackets*(numNodes - 1))
<< "%." << endl <<
"Jumlah paket yang hilang: " << numPackets*(numNodes - 1) - received_packets
<< " paket. " << endl <<
"Rerata Delay: " << total_delay/received_packets << "seconds." << endl <<
"Throughput: " <<double((received_packets*packetSize)/60)*8/1024 << " Kbps."
<< endl;
outfile << "Akhir simulasi" << endl << endl;
outfile2 << "Akhir simulasi" << endl << endl <<"--------------------------------------
-------------------" << endl << endl;
outfile.close();
outfile2.close();
received_packets = 0;
total_delay = 0;
return 0;
}

96

Anda mungkin juga menyukai