BAB 3 ANALISIS DAN PERANCANGAN - Analisis Perbandingan Protokol Better Approach To Mobile Ad Hoc Network (BATMAN) Dengan Protokol Babel Untuk Layanan Voice Over Internet Protocol (VOIP) Pada Mobile Ad Hoc Network (MANET)

BAB 3 ANALISIS DAN PERANCANGAN Pada bab ini penulis memaparkan analisis permasalahan yang diangkat yang disajikan

  dengan diagram dan flowchart serta dipaparkan juga perancangan sistem yang akan dibangun, baik yang berupa perangkat keras ataupun perangkat lunak, lokasi pengujian, cara melakukan pengujian dan bentuk topologi.

3.1. Analisis

  Pada penelitian ini akan dibangun sebuah jaringan komputer dengan model MANET. MANET akan dibangun dengan dua buah protokol routing secara bergantian, yaitu B.A.T.M.A.N-adv dan Babel. Dua algoritma tersebut dibandingkan dan dianalisa kinerjanya dengan lima buah parameter sehingga dapat diketahui protokol routing mana yang paling baik.

3.1.1. Analisis Masalah

  Pada kondisi-kondisi tertenu jaringan dengan model MANET sangat dibutuhkan sebagai cara untuk bisa melakukan komunikasi antara satu lokasi dengan lokasi lainnya. Sebagai contoh, pada lokasi bencana alam, misalnya gempa bumi yang menyebabkan infrasturktur komunikasi pada lokasi tersebut mati total, sementara diperlukan sebuah sarana komunikasi suara yang bisa menghubungkan satu posko pengungsian dengan posko lainnya. Jaringan model MANET, dengan node-node yang bersifat mobile dengan baterai sebagai pemberi daya, bisa memenuhi kebutuhkan tersebut.

  Saat ini sudah sangat banyak protokol MANET yang dapat digunakan sehingga membuat administrator menjadi sedikit bingung memilih protokol routing mana yang paling baik dan tepat untuk digunakan dengan layanan komunikasi suara (VoIP) yang akan diimplementasikan pada MANET.

  Masalah yang sudah dijelaskan di atas dapat digambarkan dengan menggunakan diagram Ishikawa (fishbone diagram) seperti pada gambar 3.1 berikut ini:

Gambar 3.1 Diagram Ishikawa Analisis Masalah

3.1.2. Analisis Kebutuhan

  Analisis kebutuhan sistem meliputi analisis kebutuhan fungsional dan analisis kebutuhan non-fungsional.

3.1.2.1. Kebutuhan Fungsional

  Kebutuhan fungsional yang harus ada dalam menentukan protokol routing terbaik pada MANET untuk layanan VoIP adalah sebagai berikut:

  1. MANET dengan protokol routing BATMAN-adv atau Babel dapat mencari jalur terbaik untuk mengirimkan paket tanpa terjadi routing loop.

  2. MANET dengan protokol routing B.A.T.M.A.N-adv atau Babel menggunakan yang terkecil, nilai delay, jitter, packet loss yang juga terkecil dan

  bandwidth nilai MOS yang terbesar.

  3. MANET dapat di-monitoring atau divisualisasikan untuk melihat topologi yang sedang terjadi.

  4. Suara yang dihasilkan bisa didengar, baik di pemanggil dan di penerima.

3.1.2.2. Kebutuhan Non-Fungsional Sistem

  Untuk mendukung kinerja MANET, sebaiknya dapat melakukan hal-hal berikut: 1.

  Setiap node pada MANET dapat diaktifkan dengan mudah baik bagi

  administrator maupun end-user sehingga mempercepat pembangunan MANET.

  2. Bisa digunakan pada semua notebook yang memiliki wireless interface.

  3. Suara yang dihasilkan jernih dan berkualitas baik di pemanggil maupun di penerima.

3.1.3. Pemodelan

  Pada penelitian ini digunakan Use Case Diagram dan flowchart sebagai cara untuk melakukan pemodelan dalam merancang pengujian protokol terbaik pada MANET untuk layanan VoIP. Dalam pengujian ini, terdapat 2 jeni pengguna, yaitu end-user dan administrator, dimana masing-masing memiliki fungsi yang berbeda.

  End-user melakukan kegiatan komunikasi ke node lain dengan menggunakan

  layanan VoIP yang telah disediakan, baik bertindak sebagai pemanggil atau yang dipanggil, sedangkan administrator adalah yang bertindak sebagai yang melakukan analisa terhadap parameter yang sudah ditentukan di node server.

3.1.3.1. Use Case Diagram

  

Use case diagram akan menjelaskan apa saja yang akan dikerjakan di dalam node-

node

  dalam MANET. Use case diagram akan merepresentasikan bagaimana interaksi antara pengguna dengan node. Untuk mengidentifikasikan apa saja aktor dan use case yang terlibat pada MANET ini, perlu dijawab beberapa pertanyaan berikut ini: 1.

  Siapa yang menggunakan MANET? Jawaban: End user dan administrator 2. Siapa yang diperlukan untuk melaksanakan pengujian pada MANET?

  Jawaban: End user dan administrator 3. Apa saja yang dapat dilakukan end-user pada MANET? Jawaban: Melakukan komunikasi dengan node lain.

4. Apa saja yang dapat dilakukan administrator pada MANET?

  Jawaban: Melakukan pemantauan kualitas VoIP dan melihat topologi yang terajadi.

  Pada gambar 3.2 dan 3.3 diperlihatkan diagram use case dari masing-masing pengguna yaitu end user dan administrator terhadap pengujian kualitas VoIP pada MANET.

Gambar 3.2 Use Case End User Pengujian Kualitas VoIP Protokol B.A.T.M.A.N- adv dan BabelGambar 3.3 Use Case Administrator Pengujian Kualitas VoIP Protokol B.A.T.M.A.N-adv dan Babel

3.1.3.2. Flowchart Pengujian

Gambar 3.4 berikut adalah flowchart yang akan menjelaskan proses pengujian kualitas

  VoIP pada MANET dengan menggunakan protokol routing B.A.T.M.A.N-adv dan Babel.

Gambar 3.4 Flowchart Pengujian Kualitas VoIP Pada MANET

  3.2. Perangkat Keras yang Digunakan

  Seperti yang sudah disebutkan sebelumnya pada subbab 1.3 bahwa penelitian ini akan menggunakan 10 buah notebook yang akan dijadikan sebagai node pada MANET yang akan dibangun. 10 buah notebook yang digunakan memiliki spesifikasi yang heterogen atau berbeda-beda satu sama lain dan semua notebook yang digunakan sudah memiliki interface wireless yang nantinya akan digunakan sebagai transreceiver .

  10 node yang akan digunakan memiliki spesifikasi yang terbilang bagus pada saat skripsi ini ditulis, yaitu rata-rata memiliki processor Intel Core i3 dan Core i5, RAM rata-rata 4GB dan harddisk rata-rata diatas atau sama dengan 500GB sehingga sudah sangat layak untuk digunakan dalam pengujian ini.

  3.3. Perangkat Lunak yang Digunakan

  Ada beberapa macam perangkat lunak yang digunakan termasuk diantaranya adalah sistem operasi, protokol routing, tools pendukung yang akan digunakan untuk melakukan kontrol terhadap protokol routing dan untuk mem-visualisasikan topologi, VoIP server, VoIP klien (softphone) dan VoIP monitoring. Berikut ini adalah detil dari setiap pengkat lunak yang digunakan pada penelitian ini.

3.3.1. Sistem Operasi

  Sistem operasi yang digunakan adalah Ubuntu. Ubuntu sendiri adalah sebuah distribusi Linux yang berbasiskan Debian dan didistribusikan sebagai perangkat lunak bebas baik secara penggunaan maupun source code-nya. Saat ini Ubuntu telah menjadi salah satu sitem operasi yang sangat populer dan banyak digunakan, baik untuk keperluan desktop maupun server. Saat penelitian ini ditulis, versi Ubuntu yang terbaru adalah 13.10 yang diberi istilah Saucy Salamander.

  Pada penelitian ini, setiap node klien akan menggunakan sistem operasi Ubuntu Dekstop versi 12.04 LTS (Long Term Support) dengan versi kernel 3.5.0-23-

  

generic . Sedangkan pada node yang dijadikan server VoIP akan dipasangkan sistem

operasi Ubuntu Server versi 12.04 LTS dengan kernel yang sama dengan node klien.

  Penulis memilih versi LTS karena masa support-nya yang paling panjang dibanding versi yang bukan LTS, yaitu sampai 5 tahun sejak versi tersebut dirilis.

  3.3.2. Protokol Routing

  Sesuai dengan permasalahan yang diangkat pada penelitian ini, protokol routing yang akan digunakan pada masing-masing node ada dua, yaitu B.A.T.M.A.N dan Babel. Untuk protokol routing B.A.T.M.A.N akan digunakan B.A.T.M.A.N-adv versi 2013.4.0. Karena paket protokol routing B.A.T.M.A.N belum tersedia pada repository Ubuntu, maka harus diunduh secara manual langsung pada situs resminya http://www.open-mesh.org/projects/open-mesh/wiki/Download. Skrip kode sumber protokol B.A.T.M.A.N tidak serta merta bisa langsung digunakan, namun harus melakukan proses kompilasi dan menggunakan beberapa dependency yang dibutuhkan.

  Sedangkan untuk protokol Babel akan digunakan Babel daemon (babeld) versi 1.1.1-1. Tidak Sama seperti B.A.T.M.A.N-adv, protokol routing Babel sudah tersedia di repository Ubuntu dan bisa langsung digunakan dengan beberapa baris skrip untuk mengaktifkannya.

  3.3.3. Tools Pendukung

  Untuk melakukan kontrol terhadap protokol yang akan digunakan dibutuhkan perangkat lunak terpisah dari protokol itu sendiri. Kontrol yang dimaksud disini adalah melakukan ping, tracerout, mengetahui node tetangga, dan lain sebagainya termasuk yang memvisualisasikan topologi yang sedang terjadi untuk mempermudah melakukan konfirmasi apakah topologi sudah sesuai dengan yang diharapkan, hal ini terkait dengan dua skenario yang telah dibahas sebelumnya.

3.3.3.1. Batctl Masing-masing tool pendukung berbeda antara protokol B.A.T.M.A.N dan Babel.

  Pada B.A.T.M.A.N, tool pendukung yang akan digunakan adalah batctl dengan versi debian-2011.4.0-2. Tool ini sudah tersedia pada repository Ubuntu, dimana fungsi yang bisa diberikan oleh tool ini adalah melakukan beberapa perintah yang berjalan pada layer 2 (Physical), seperti melakukan ping, traceroute dan tcpdump. Fungsi lain dari tool ini adalah untuk melihat semua node yang sedang aktif pada MANET yang menggunakan protokol B.A.T.M.A.N-adv. Kemudian, tool batctl ini juga bisa digunakan untuk melakukan generate topologi yang sedang berjalan atau aktif saat sekarang yang diekspor dalam format Portable Network Graphics (PNG). Gambar 3.5 memperlihatkan sebuah contoh topologi yang dihasilkan batctl.

Gambar 3.5 Contoh Hasil Visualisasi Topologi MANET Dengan Batctl

3.3.3.2. Babelweb

  Untuk tool pendukung protokol routing Babel, penulis menggunakan tool bernama babelweb versi 0.3.0. Berbeda dari tool batctl, tool ini tidak ada di repository Ubuntu, untuk mendapatkannya penulis harus mengunduh kode sumbernya langsung dari

  

http://gabriel.kerneis.info/software/files/babelweb-0.3.0.tar.gz . Tool ini berfungsi

untuk melakukan mapping topologi yang sedang terjadi saat sekarang secara realtime.

  Jika tool batctl melakukan ekspor ke format PNG untuk melihat topologi yang sedang terjadi dan mengharuskan pengguna mengetikkan sebuah command untuk mendapatkan sebuah file PNG, lain halnya dengan babelweb. Pada babelweb pengguna akan disuguhkan sebuah interface berbasis web yang memperlihatkan semua node yang menggunakan protokol Babel pada MANET beserta hubungannya dengan node lain. Semua node tersebut akan berubah setiap 4 detik jika terjadi perubahan kualitas link pada node. Gambar 3.6 memperlihatkan contoh topologi yang dihasilkan babelweb.

Gambar 3.6 Contoh Hasil Visualisasi Topologi MANET Dengan Babelweb

3.3.4. Perangkat Lunak VoIP

  Jika ditinjau dari perangkat lunak, untuk membangun sebuah layanan VoIP, ada 2 jenis perangkat lunak yang dibutuhkan. Pertama perangkat lunak yang akan berfungsi sebagai pemanggil dan penerima panggilan dan yang kedua akan bertindak sebagai penghubung antara satu node dengan node lainnya. Dengan kata lain, ada perangkat lunak untuk klien dan perangkat lunak untuk server.

  3.3.4.1. VoIP Klien (Softphone)

  VoIP klien (dalam hal ini software/softphone) adalah sebuah software yang dipasangkan pada node klien yang digunakan untuk dapat memanggil dan menerima panggilan, baik berupa sambungan komputer ke komputer, komputer ke IP Phone, komputer ke smartphone atau lainnya. Softphone ini berupa komponen yang melakukan dial nomor telepon VoIP atau untuk menerima telepon. Softphone akan berhubungan langsung dengan user. Sudah banyak jenis softphone gratis yang bisa langsung diunduh pada situs resminya. Jenis softphone yang dapat digunakan adalah berikut: a.

  Jenis softphone SIP, misalnya Linphone, SJPhone, X-Lite dan Ekiga.

  b.

  Jenis softphone IAX, misalnya Idefisk dan laxLite.

  c.

  Jenis softphone H.323, misalnya Netmeeting dan Ekiga.

  Pada penelitian ini, penulis akan menggunakan softphone Linphone dengan versi 3.5.2. Alasan penulis memilih Linphone sebagai softphone karena dari beberapa

  

softphone yang bisa dipasang ke mesin dengan sistem operasi Ubuntu, Linphone

  adalah softphone yang penggunaannya sangat mudah, tampilannya sederhana, ukuran yang kecil dan bersifat open source.

  3.3.4.2. VoIP Server (Softswitch)

  VoIP Server (Softswitch) berfungsi sebagai penghubung antar softphone. Softswitch akan mendaftarkan klien serta mengatur pola penomoran dan call routing

  (mengarahkan tujuan data suara). Ada dua pilihan VoIP server yang bisa digunakan, yaitu open source dan non-open source. VoIP server open source dapat diperoleh dengan mengunduh langsung pada situs resminya. Beberapa contoh VoIP server yang bersifat antara lain Asterisk (http://www.asterisk.org),

  open source

  OpenSER (http://www.openser.org), SER (http://www.iptel.org/ser/) atau Yate (http://yate.null.ro). Sedangkan VoIP server yang non-open source dapat diperoleh di situs Axon (http://http://www.nch.com.au/pbx) atau OnDo SIP Server (http://www.brekeke.com) dengan membayar sesuai dengan harga yang ditawarkan.

  Pada penelitian, ini penulis menggunakan VoIP server Asterisk dengan versi

  1.8.10.1. Alasan penulis memilih Asterisk sebagai VoIP server adalah bahwa Asterisk yang sudah banyak dibuktikan handal dan stabil dalam melakukan tugasnya. Konfigurasi yang sederhana dan sifatnya yang open source juga menjadi pilihan utama penulis.

3.3.5. Perangkat Lunak Monitoring

  Untuk mengetahui kualitas VoIP yang diukur berdasarkan dari 4 parameter perbandingan yang bersifat objektif (1 bersifat subjektif) yang sudah disebutkan pada subbab 1.3, dibutuhkan perangkat lunak bantuan yang khusus difungsikan untuk melakukan hal tersebut.

  Untuk melakukan monitoring delay, jitter, dan packet loss digunakan sebuah perangkat lunak berbasis web, yaitu VoIP Monitor dengan versi 6.11.2013. Perangkat lunak ini bersifat open source yang bisa langsung diunduh dari situs resminya di www.voipmonitor.org. Alasan penulis menggunakan perangkat lunak ini adalah karena setelah penulis mencari informasi beberapa perangkat lunak yang bisa digunakan untuk monitoring VoIP, VoIP Monitoring adalah yang paling mendukung dengan sistem operasi Linux khususnya Ubuntu, meskipun membutuhkan beberapa

  dependency , memiliki ukuran yang tidak terlalu besar, mudah digunakan, tampilan

  yang sudah berbasis Web Graphical User Inteface (GUI), report yang cukup lengkap yang bahkan memiliki fasilitas perekam percakapan, dan bersifat gratis.

  Sedangkan untuk analisa penggunaan bandwidth, penulis menggunakan perangkat lunak BitMeterOS dengan versi 0.7.5. Perangkat lunak ini bersifat gratis yang tersedia untuk sistem operasi Windows, Linux dan Mac OS yang bisa langsung diunduh dari situs resminya http://codebox.org.uk/pages/bitmeteros/downloads. Alasan penulis memilih perangkat lunak ini adalah karena dengan tampilan GUI-nya yang berbasis web, perangkat lunak ini memberikan laporan penggunaan bandwidth yang tergolong lengkap dan bisa langsung di ekspor dalam format CSV.

3.4. Lokasi Pengujian

  Lokasi pengujian adalah tempat dimana pengujian sistem akan dilakukan. Lokasi pengujian akan sangat mempengaruhi kinerja dari media wireless, karena media

  

wireless yang digunakan pada penelitian ini merupakan media yang sangat mudah

  dipengaruhi oleh situasi atau keadaan sekitar. Sinyal dari sebuah wireless interface bisa terganggu oleh beberapa hal seperti dinding, air, manusia, tumbuhan, dan lain sebagainya.

  Lokasi pengujian yang penulis pilih adalah di gedung perkuliahan S1 Ilmu Komputer Universitas Sumatera Utara (USU), dimana pada gedung ini terdapat 3 lantai. Penulis memilih lokasi pengujian di gedung tersebut karena beberapa hal, yaitu penulis yang merupakan mahasiswa S1 Ilmu Komputer USU, terdiri dari banyak ruangan kelas yang akan membuat jarak jangkauan node satu dengan node lainnya bisa semakin jauh, serta banyaknya penghalang yang berupa sekat-sekat berupa dinding dan kaca yang bisa melemahkan gelombang elektromagnetik yang dihasilkan

  

interface wireless dari notebook, sehingga pengujian dengan menggunakan 10

notebook akan semakin mendekati seperti penggunaan di kondisi riil yang akan

  membuat angka hasil pengujian akan semakin realistis dan ketersediaan sumber daya listrk untuk notebook yang memiliki ketahanan baterai lemah.

  Dari 3 lantai yang tersedia, penulis memilih lantai 1 dikarenakan keterbatasan akses penulis untuk seluruh lantai gedung. Gambar 3.7 berikut ini yang merupakan lokasi pengujian dan sekaligus digambarkan peletakan seluruh notebook yang akan dijadikan sebagai node pada penelitian ini.

Gambar 3.7 Lokasi Pengujian Lantai 1 Gedung S1 Ilmu Komputer USU

  Dari gambar 3.7 terlihat bahwa node sudah diposisikan di titik-titik yang satu sama lainnya tidak terlalu jauh dan juga tidak terlalu dekat sehingga wireless interface masing-masing notebook masih bisa terhubung ke notebook terdekat. Penulis memberikan penanda untuk setiap notebook, yaitu berupa nomor mulai dari 1 sampai dengan 10, dimana nomor 1 adalah node yang digunakan sebagai server VoIP.

  Posisi-posisi notebook yang diletakkan berlainan tempat tersebut bertujuan untuk melakukan pengujian MANET dengan model partial connected. Sedangkan untuk melakukan pengujian full connected, seluruh notebook akan diletakkan pada satu ruangan yang sama, sehingga seluruh notebook bisa terhubung satu sama lain sesuai dengan sifat MANET full connected. Ruangan yang penulis pilih untuk melakukan pengujian full connected adalah ruangan Kelas Basic gedung S1 Ilmu Komputer USU yang memang cukup luas. Pengaturan tata letak node dapat dilihat pada gambar 3.8 di bawah ini.

Gambar 3.8 Tata Letak Node Pada Ruang Kelas Basic

3.5. Parameter Kualitas VoIP

  Untuk menentukan kualitas atau Quality of Servise (QoS) dari VoIP, digunakan 5 hal yang akan dijadikan parameter perbandingan. 5 parameter tersebut adalah sebagai berikut: a.

  Penggunaan bandwidth Penggunaan bandwidth adalah banyaknya bandwidth yang digunakan untuk beberapa saat yang ditentukan dan diukur dalam kecepatan (rate) dalam satuan

  bit per second (bps) atau kilobyte per second (KBps). Parameter ini adalah

  salah satu yang paling penting mengingat jaringan MANET adalah jaringan yang menggunakan media nirkabel yang tidak terlalu kaya throughput.

  b.

   Delay Delay adalah waktu yang dibutuhkan data untuk menempuh jarak dari asal ke

  tujuan. Delay dapat dipengaruhi oleh jarak, jenis media, atau waktu proses.

  c.

   Jitter Jitter atau variasi kedatangan paket, adalah hal yang diakibatkan oleh variasi-

  variasi dalam panjang antrian, dalam waktu pengolahan data, dan juga dalam waktu penghimpunan ulang paket-paket di akhir perjalanan paket. Jitter lazimnya disebut variasi delay. Delay antrian pada router dan switch dapat menyebabkan jitter.

  d.

   Packet loss Packet Loss merupakan suatu parameter yang menggambarkan suatu kondisi

  yang menunjukkan jumlah total paket yang hilang, dapat terjadi karena

  collision dan congestion pada jaringan. Hal ini akan berpengaruh pada semua

  aplikasi karena retransmisi akan mengurangi efisiensi jaringan secara keseluruhan meskipun jumlah bandwidth cukup tersedia untuk aplikasi tersebut. e.

  Mean Opinion Score (MOS) Metode ini merupakan metode yang digunakan untk menentukan kualitas suara dalam jaringan

  IP yang berdasarkan standar International (ITU) yaitu ITU-T P.800. MOS merupakan opini

  Telecommunication Union

  dari pengguna yang bersifat subjektif, karena standar kualitas suara bagi setiap orang berbeda-beda. Nilai yang diberikan mulai dari 1 sampai 5. Nilai MOS dihasilkan dengan cara merata-ratakan hasil penilaian sejumlah pengguna terhadap kualitas VoIP yang dihasilkan. Setiap pengguna diminta untuk menilai kualitas suara menggunakan skema rating sebagai berikut: 1 = Sangat Buruk, 2 = Buruk, 3 = Cukup Baik, 4 = Baik, 5 = Sangat Baik.

3.6. Mekanisme dan Skenario Pengujian Setelah sistem dipersiapkan, proses selanjutnya adalah melakukan pengujian.

  Sebelumnya sudah disebutkan bahwa pengujian akan dilakukan dengan 2 skenario umum yang berbeda, yaitu pada saat MANET mengalami kondisi full connected dan kondisi partial connected.

  Pengujian yang akan penulis lakukan adalah berdasarkan parameter yang telah disebutkan sebelumnya, yaitu penggunaan bandwidth, delay, jitter, packet loss dan MOS. Namun, sebelum melakukan pengujian 5 parameter tersebut, penulis juga akan melakukan pengujian verifikasi protokol.

3.6.1. Verifikasi Topologi

  Pada pengujian ini masing-masing protokol routing yaitu B.A.T.M.A.N-adv dan Babel akan diuji apakah sudah terkonfigurasi dengan baik termasuk melakukan verifikasi apakah model konektifitas yang diinginkan yaitu full connected atau partial

  connected sudah terimplementasi dengan baik.

3.6.2. Pengujian Penggunaan Bandwidth, Delay, Jitter dan Packet Loss

  Baik pada MANET full connected maupun partial connected penulis akan melakukan prosedur yang sama:

3.6.2.1. Pengujian Penggunaan Bandwidth

  Untuk pengujian penggunaan bandwidth akan dilakukan sebanyak 3 sesi. Pada setiap sesi akan diberikan beban yang berbeda-beda, dimana beban yang dimaksud adalah berupa panggilan dari satu node ke node lainnya. Lama pengamatan dari setiap sesi adalah 60 detik. Setiap detik bandwidth yang digunakan akan dicatat, dan kemudian akan dirata-ratakan. Pengujian ini dilakukan bergantian mulai dari B.A.T.M.A.N-adv dengan full connected, Babel full connected, B.A.T.M.A.N-adv partial connected, dan Babel partial connected. Berikut ini adalah tabel 3.1 yang menunjukkan metode pengujian penggunaan bandwidth.

Tabel 3.1 Metode Pengujian Penggunaan Bandwidth

  Node Pemberi Beban Nama Model Sesi Durasi Protokol Topologi Caller Called

  (Detik)

  • 60 -

  1

  3

  9

  60 BATMAN- Full /

  3

  9 adv / Babel Partial 2 & &

  60

  5

  10

3.6.2.2. Pengujian Delay, Jitter, dan Packet Loss

  Untuk pengujian delay, jitter, dan packet loss akan dilakukan dengan banyak sesi yang sama dengan pengujian penggunaan bandwidth, perbedaannya adalah masing-masing sesi akan dilakukan pengujian sebanyak 5 kali yang masing-masing berdurasi 30 detik.

  Pengujian 1 Sesi Node 3 dan 9 adalah node yang menjadi objek penilaian. Node 3 akan

  menghubungi node 9 selama 30 detik. Nilai dari delay, jitter, dan packet loss akan muncul pada perangkat lunak VoIP Monitor setelah komunikasi diputus. Nilai yang muncul kemudian dicatat oleh administrator. Hal yang sama dilakukan sebanyak 5 kali.

  Pengujian 2 Sesi

  Hal yang sama pada 1 sesi akan dilakukan pada 2 sesi, namun perbedaannya adalah adanya penambahan beban oleh node 5 yang berkomunikasi dengan node 10. Selama pengujian 2 sesi ini, komunikasi node 5 dan 10 tidak akan pernah diputuskan sampai pengujian ke 5 dari 2 sesi selesai.

  Pengujian 3 Sesi

  Pada pengujian 3 sesi, tetap dilakukan 5 kali percobaan, namun beban yang diberikan di 2 sesi akan ditambah dengan komunikasi yang terjadi dari node 2 ke node 7, sehingga pada pengujian sesi ini terjadi 3 komunikasi sekaligus.

  Metode pengujian delay, jitter, dan packet loss dapat dijelaskan dalam tabel 3.2 berikut ini.

  • adv / Babel

  2

  30

  5

  30

  3

  1

  5 &

  2

  10 &

  7

  30

  30

  30

  3

  30

  4

  30

  5

  30

  Untuk pengujian parameter Mean Opinion Score (MOS) penulis akan meminta pendapat kepada 10 user untuk menggunakan layanan VoIP yang telah penulis bangun. Penulis akan mengambil nilai rata-rata dari nilai yang diberikan oleh user untuk mendapatkan nilai akhir untuk parameter MOS ini.

  Dalam pengujian MOS ini, penulis akan menggunakan skenario partial

  

connected . Alasan penulis melakukan pengujian MOS ini dengan skenario partial

connected agar pengujian menyerupai kondisi rill, dimana antar pengguna yang

  berada di ruangan atau tempat yang berbedalah yang biasanya akan menggunakan media komunikasi untuk berinteraksi.

  Pengujian MOS ini akan dilakukan hanya pada 1 sesi komunikasi, dimana pengujian akan dilakukan berurutan untuk 2 orang. Pengguna pertama akan berada pada node 3 dan pengguna kedua akan berada pada node 9, kemudian kedua pengguna

  4

  3

Tabel 3.2 Metode Pengujian Delay, Jitter, dan Packet Loss Nama

  30

  Protokol Model Topologi Sesi Peng- ujian ke Node Objek Node

  Pemberi Beban Durasi (Detik) Caller Called Caller Called

  BATMAN

  Full / Partial

  1

  1

  3

  9

  30

  2

  3

  30

  30

  4

  30

  5

  30

  2

  1

  5

  10

  30

  2

3.6.3. Pengujian Mean Opinion Score (MOS)

  akan melakukan komunikasi selama 60 detik dan kemudian memberikan nilai terhadap kualitas VoIP yang mereka rasakan.

  Pengujian MOS ini akan dilakukan bergantian antara protokol B.A.T.M.A.N- adv dan Babel. Pertama, akan dilakukan pengujian protokol B.A.T.M.A.N-adv dan setelah semua pengguna memberikan nilai, dilanjutkan dengan pengujian protokol Babel, dimana hal yang dilakukan pada pengujian protokol B.A.T.M.A.N-adv juga dilakukan pada pengujian protokol Babel.

  Universitas Sumatera Utara

  

BAB 4

IMPLEMENTASI DAN PENGUJIAN Pada bab 4 ini penulis memaparkan bagaimana implementasi dari sistem dan juga

  nilai-nilai dari setiap parameter hasil pengujian kualitas VoIP yang dilakukan pada MANET yang sudah dibangun menggunakan protokol B.A.T.M.A.N-adv dan Babel dalam 2 skenario, yaitu full connected dan partial connected.

4.1. Implementasi Sistem

  Pada implementasi sistem, penulis akan melakukan instalasi seluruh perangkat lunak yang dibutuhkan pada setiap node. Untuk mendapatkan paket-paket yang dibutuhkan oleh sistem operasi Ubuntu baik perangkat lunak utama maupun dependencies-nya, penulis mengambil dari repository lokal yang telah penulis siapkan pada media

  

harddisk eksternal sehingga proses pengambilan paket. Berikut ini adalah hal-hal yang

  penulis lakukan: a.

  Melakukan instalasi Ubuntu Desktop 12.04 LTS pada 9 notebook.

  b.

  Melakukan instalasi Ubuntu Server 12.04 LTS pada 1 buah notebook.

  c.

  Melakukan instalasi protokol B.A.T.M.A.N-adv dan Babel, dependencies dan

  tools untuk kebutuhan protokol routing yang sudah disebutkan sebelumnya pada seluruh node termasuk node yang akan bertindak sebagai server.

  d.

  Melakukan instalasi dan konfigurasi Asterisk, VoIP monitoring dan bandwidth beserta dependencies-nya pada node server.

  monitoring e.

  Melakukan instalasi Linphone pada semua node klien.

  f.

  Melakukan konfigurasi protokol B.A.T.M.A.N-adv dan Babel pada seluruh

  node termasuk server sehingga masing-masing protokol bisa aktif dan berjalan dengan baik.

  4.1.1. Pengalamatan

  Protokol B.A.T.M.A.N-adv dan Babel memiliki perbedaan dalam pengalamatan, dimana pada protokol routing Babel pengalamatan logika, baik IPv4 atau IPv6 mutlak dibutuhkan, sedangkan pada protokol B.A.T.M.A.N-adv, walaupun tidak perlu dilakukan pengalamatan logika, protokol routing tetap bisa berjalan. Hal ini dikarenakan setiap node dapat saling terhubung dengan menggunakan MAC Address sebagai karakteristik protokol routing BATMAN-adv yang bekerja di layer 2. Namun karena layanan VoIP membutuhkan IP Address, maka setiap node akan diberikan pengalamatan logika yaitu IPv4.

  Pengalamatan logika pada setiap node akan diberikan secara manual yang digabungkan dengan skrip aktifasi protokol routing. IP Address yang diberikan memiliki rentang dari 10.10.1.1/24 sampai 10.10.1.10/24, dimana oktet terakhir dari

  IP Address disamakan dengan penomoran pada setiap node yang sudah dibuat sebelumnya. Jadi, untuk node server penulis memberikan IP Address 10.10.1.1/24. Penulis tidak menggunakan pengalamatan otomatis menggunakan Dynamic Host

  

Configuration Protocol (DHCP) agar lebih mudah dalam melakukan kontrol dari

  setiap node, dimana salah satunya adalah jika ada node yang bermasalah, misalnya belum terkoneksi akan mudah untuk melakukan troubleshoot.

  4.1.2. Instalasi Protokol

  Penulis sudah membuat sebuah skrip bash untuk melakukan instalasi protokol B.A.T.M.A.N-adv dan Babel beserta semua dengan dependencies-nya, termasuk melakukan kompilasi awal dari skrip B.A.T.M.A.N-adv. Tujuan dibuatnya skrip ini adalah untuk memudakan penulis melakukan hal yang sama di 10 node lainnya, sehingga akan sangat menghemat waktu instalasi. Skrip bash tersebut penulis letakkan pada direktori /usr/local/sbin, sehingga dapat dipanggil dari direktori manapun. Berikut ini adalah isi skrip bash yang penulis buat:

  #!/bin/bash clear echo "Membuat folder penampung" sleep 2 mkdir /adam clear echo "Mengcopy sources.list ke apt" sleep 2 cp /media/ADAM-KURNIAWAN/SUMBER/sources.list /etc/apt clear echo "Mengcopy kode sumber B.A.T.M.A.N" sleep 2 cp /media/ADAM-KURNIAWAN/SUMBER/batman-adv-2013.4.0.tar.gz /adam clear echo "Mencopy file BitMeterOS" sleep 2 cp /media/ADAM-KURNIAWAN/SUMBER/bitmeteros_0.7.5-i386.deb /adam clear echo "Mencopy file bash konfigurasi protokol" sleep 2 cp /media/ADAM-KURNIAWAN/SUMBER/file-konfigurasi/*-manet.sh /usr/local/sbin chmod 755 /usr/local/sbin/*-manet.sh clear echo "Mencopy file bash topology mapper B.A.T.M.A.N" sleep 2 cp /media/ADAM-KURNIAWAN/SUMBER/top-bat.sh /usr/local/sbin chmod 755 /usr/local/sbin/top-bat.sh clear echo "Mengupdate paket" sleep 2 apt-get update clear echo "Menginstal BATCTL" sleep 2 apt-get install batctl -y clear echo "Menginstal build-essential" sleep 2 apt-get install build-essential -y clear echo "Menginstal qt4-dev-tools" sleep 2 apt-get install qt4-dev-tools -y clear echo "Menginstall libncourses5-dev" sleep 2 apt-get install libncurses5-dev -y clear echo "Mengekstrak kode sumber B.A.T.M.A.N" sleep 2 cd /adam tar xzvf batman-adv-2013.4.0.tar.gz clear echo "Kompilasi kode sumber B.A.T.M.A.N" sleep 2 cd /adam/batman-adv-2013.4.0 make clear echo "Berpindah ke direktori Linux Header" sleep 2 cd /usr/src/linux-headers-3.5.0-23-generic/ clear echo "Kompilasi xconfig" sleep 2 make xconcifg clear echo "Kompilasi menuconfig" sleep 2 make menuconfig clear echo "Kompilasi oldconfig" sleep 2 make oldconfig clear echo "Memuat B.A.T.M.A.N ke kernel" sleep 2 cd /adam/batman-adv-2013.4.0 modprobe batman-adv clear echo "Instalasi Protokol Babel" apt-get install babeld -y clear echo "Install Graphviz" apt-get install graphviz -y clear echo "Instalasi Ekiga" apt-get install linphone -y clear echo "Instalasi BitMeter OS" cd /adam dpkg -i bitmeteros_0.7.5-i386.deb clear echo "Selesai" exit

4.1.3. Pendaftaran Akun VoIP

  Context adalah penanda atau pendefenisian sebuah user yang akan dimasukkan pada file dialplan extension.conf.

  8 friend manet 1009 adam dynamic

  9

  9 friend manet 1010 adam dynamic

  10 Penjelasan: a.

  Type adalah grup dari user.

  b.

  c.

  7 friend manet 1008 adam dynamic

  Username adalah nomor yang akan dipanggil untuk memulai komunikasi.

  d.

  Secret adalah password kata kunci yang digunakan saat memasukkan akun ke perangkat lunak Linphone.

  e.

  Host adalah alamat mesin pengguna, apabila ditentukan biasanya akan berupa

  IP Address, digunakan dynamic karena setiap user bisa menggunakan IP Address secara dinamis.

  8

  Untuk bisa memanfaatkan layanan VoIP yang diberikan oleh server, masing-masing pengguna harus didaftarkan pada server VoIP. Pada Asterisk pendaftaran akun dilakukan pada file sip.conf yang berada di direktori /etc/asterisk dan masing-masing pengguna yang sudah didaftarkan harus diberikan ekstensi yang digunakan untuk penanganan panggilan masuk atau keluar. Pemberian ekstensi ini berada di file

  

extensions.conf yang juga berada di direktori /etc/asterisk. Berikut ini adalah 9 akun

  3 friend manet 1004 adam dynamic

  yang akan didaftarkan pada Asterisk untuk penelitian ini:

Tabel 4.1 Daftar Akun Pengguna Layanan VoIP No type context username secret host Node

  1 friend manet 1002 adam dynamic

  2

  2 friend manet 1003 adam dynamic

  3

  4

  6 friend manet 1007 adam dynamic

  4 friend

  manet 1005 adam

  dynamic

  5

  5 friend manet 1006 adam dynamic

  6

  7 f.

  Node adalah notebook yang akan menggunakan akun dan field ini tidak ada di file konfigurasi.

4.1.4. Aktifasi Protokol

  Untuk mengaktifkan protokol B.A.T.M.A.N-adv dan Babel pada setiap node, ada beberapa perintah yang harus ketikkan di mode terminal. Beberapa perintah tersebut penulis buat dalam sebuah skrip bash dengan tujuan untuk memudahkan pengguna, baik end-user maupun administrator untuk melakukan aktifasi protokol routing B.A.T.M.A.N-adv dan Babel. Skrip bash tersebut penulis letakkan pada direktori

  

/usr/local/sbin/ agar bisa diakses dari manapun dengan status root. Berikut ini adalah

isi skrip bash tersebut.

  #!/bin/bash clear #Nama interface Wi-Fi

  IFACE=[interface nirkabel node, mis: wlan0] #Nama essid harus sama pada semua node ESSID=adammanet #Channel yang digunakan CHANNEL=1 #MAC Address salah satu node dan harus sama pada semua node CELLID=aa:bb:cc:dd:ee:ff #IP Address dan netmask tidak boleh sama pada tiap node

  IPADD=[IP Address node, mis: 10.10.1.1] NETMASK=255.255.255.0 NETWORKMANAGER="service network-manager" if [ "$1" = "batman" ]; then echo "Mengaktifkan B.A.T.M.A.N" echo "Menonaktifkan network manager" $NETWORKMANAGER stop sleep 5 echo "Menonaktifkan sementara wireless interface" ifconfig $IFACE down echo "Set maksimal transfer unit dari nilai standar 1500 ke 1528" ifconfig $IFACE mtu 1528 echo "Menonaktifkan enkripsi wireless interface" iwconfig $IFACE enc off echo "Mengaktifkan mode jaringan ad-hoc"

iwconfig $IFACE mode ad-hoc essid $ESSID ap $CELLID channel $CHANNEL

echo "Memuat modul B.A.T.M.A.N kedalam kernel" modprobe batman-adv echo "Menambahkan interface virtual" batctl if add $IFACE echo "Mengaktifkan kembali wireless interface" ifconfig $IFACE up echo "Mengaktifkan interface virutal bat0" echo "Konfigurasi intercae virtual dengan IP Adress=$IPADD dan netmask=$NETMASK" ifconfig bat0 $IPADD netmask $NETMASK up echo "Set originator interval ke 1000 ms" batctl it 1000 echo "ESSID $ESSID pada inteface $IFACE selesai" echo "B.A.T.M.A.N siap digunakan!" fi if [ "$1" = "babel" ]; then echo "Mengaktifkan Babel" echo "Menonaktifkan network manager" $NETWORKMANAGER stop sleep 5 echo "Menonaktifkan sementara wireless interface" ifconfig $IFACE down echo "Set mode jaringan ad-hoc"

iwconfig $IFACE mode ad-hoc essid $ESSID ap $CELLID channel $CHANNEL

echo "Mengaktifkan kembali wireless interface" ifconfig $IFACE up $IPADD netmask $NETMASK sleep 5 echo "Menjalankan Babel" babeld -d1 -w $IFACE fi if [ "$1" = "stop" ]; then echo "Menonaktifkan MANET" echo "Mengaktifkan network-manager" $NETWORKMANAGER restart echo "Menghapus interface virtual" batctl if del $IFACE sleep 5 echo "Menghapus proses babel" rm /var/run/babeld.pid

echo "Menghapus IP Address" ip addr del $IPADD/24 dev $IFACE echo "Stop MANET selesai" fi

4.2. Analisis Data

  Berikut ini adalah data yang berhasil didapatkan dari beberapa skenario dan model yang sudah penulis lakukan.

4.2.1. Verifikasi Topologi

  Setelah dilakukan implementasi dari protokol routing B.A.T.M.A.N-adv dan Babel, didapatkan visualisasi topologi yang berhasil di-generate oleh tools pendukungn masing-masing protokol routing. Berikut ini adalah gambar 4.1 dan 4.2 yang merupakan hasil visualisasi protokol routing B.A.T.M.A.N-adv yang dihasilkan pada penelitian ini.

Gambar 4.1 Visualisasi Topologi Full Connected B.A.T.M.A.N-adv

  Pada gambar 4.1 diatas diperlihatkan bahwa node dengan MAC Address 00:21:5d:f3:36:40 adalah node yang bertindak sebagai server VoIP sedangkan node-

  

node lainnya adalah node yang bertindak sebagai klien. Untuk MAC Address yang

ada di belakang setiap node adalah interface virtual yang dihasilkan oleh batctl.

  Contohnya interface virtual dari node server adalah 5e:6f:f6:78:2e:cb.

Gambar 4.2 Visualisasi Topologi Partial Connected B.A.T.M.A.N-adv

  Pada gambar 4.2 diperlihatkan perbedaan yang terjadi pada MAC Address

interface virtual yang dihasilkan oleh batctl pada setiap node untuk setiap aktifasi.

Contohnya untuk node server yang memiliki MAC Address interface fisik yaitu 00:21:5d:f3:36:40. Pada skenario full connected, MAC Address interface virtual yang dihasilkan adalah 5e:6f:f6:78:2e:cb, sedangkan pada aktifasi berikutnya yang terjadi pada partial connected MAC Address interface virtual yang dihasilkan adalah 6a:9f:55:40:6b:ba, begitu juga untuk node klien lainnya.

  Sedangkan hasil visualisasi protokol routing Babel yang dihasilkan pada penelitian ini dapat dilihat pada gambar 4.3 dan 4.4 berikut ini.

Gambar 4.3 Visualisasi Topologi Full Connected BabelGambar 4.4 Visualisasi Topologi Partial Connected Babel

  Hasil visualisasi pada gambar 4.3 dan 4.4 untuk routing protocol Babel di atas diambil pada node server. Jadi, untuk node yang berwarna merah muda dengan legend

  

Me adalah node server, sedangkan node dengan legend Neighbours adalah node-node

  klien yang terhubung langsung dengan node server, dan node dengan legend Others adalah node klien yang tidak terhubung langsung dengan node server.

  Dari gambar 4.1, 4.2, 4.3, dan 4.4 memperlihatkan bahwa semuda node yang terpasang protokol routing B.A.T.M.A.N-adv dan Babel sudah bisa berkomunikasi dengan node lainnya dengan skenario yang diinginkan. Pada gambar 4.1 terlihat bahwa skenario full connected sudah terjadi menggunakan protokol routing B.A.T.M.A.N-adv, dimana satu node sudah terhubung ke semua node lainnya secara langsung, begitu juga dengan gambar 4.3 yang menggunakan protokol routing Babel.

  Sedangkan pada gambar 4.2 diperlihatkan bahwa skenario partial connected juga sudah terjadi yang dihasilkan oleh protokol routing B.A.T.M.A.N-adv, dimana tidak semua node terhubung secara langsung ke semua node lainnya, namun harus melalui node tertentu yang dianggap sebagai tetangga dengan kualitas link terbaik. Hal yang sama juga terjadi pada skenario partial connected yang menggunakan protokol routing Babel yang diperlihatkan pada gambar 4.4.

  Waktu yang dibutuhkan oleh masing-masing protokol routing untuk mencapai status konvergen tidak sama, dimana Babel memakan waktu yang lebih lama dari B.A.T.M.A.N-adv. Hal ini penulis amati dari masing-masing skenario yang penulis lakukan. B.A.T.M.A.N-adv dapat mencapai status konvergensi kurang dari 1 menit untuk 10 node, sedangkan Babel lebih dari 1 menit.

  Untuk protokol routing Babel dengan skenario full connected, jika sudah mencapai status konvergen, maka hasil visualisasi topologi tidak akan lagi terlihat garis putus-putus. Hal ini menandakan bahwa rute terbaik menuju sebuah node sudah ditetapkan. Visualisasi topologi untuk skenario full connected yang sudah mencapai status konvergen bisa dilihat pada gambar 4.5 berikut ini.