ANALISIS UNJUK KERJA PROTOKOL ROUTING DYNAMIC TIME WARPING DI JARINGAN OPORTUNISTIK BERBASIS PUBLISH AND
SUBSCRIBE
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Informatika
Novi Fitri 175314036
PROGRAM STUDI INFORMATIKA JURUSAN INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
PERFORMANCE ANALYSIS OF DYNAMIC TIME WARPING ROUTING PROTOCOL IN OPPORTUNISTIC NETWORKS BASED ON
PUBLISH AND SUBSCRIBE
A THESIS
Presented as Partial Fulfillment of Requirements to Obtain Sarjana Komputer Degree in Informatics Department
Novi Fitri 175314036
INFORMATICS STUDY PROGRAM DEPARTMENT OF INFORMATICS FAKULTY OF SAINS AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
i
HALAMAN PERSETUJUAN SKRIPSI
ii
HALAMAN PENGESAHAN SKRIPSI
iii MOTTO
“Everything will be okay in the end. If it’s not okay, it’s not the end.” John Lennon
iv
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa di dalam skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 26 Juli 2021 Penulis,
v
LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Novi Fitri NIM : 175314036
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah yang berjudul:
ANALISIS UNJUK KERJA PROTOKOL ROUTING DYNAMIC TIME WARPING DI JARINGAN OPORTUNISTIK BERBASIS PUBLISH AND
SUBSCRIBE
Beserta perangkat yang dibutuhkan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengolahnya dalam bentuk pangkalan data, mendistribusikannya secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Yogyakarta, 26 Juli 2021
Penulis,
vi ABSTRAK
Perkembangan jaringan oportunistik saat ini telah dirancang untuk mendekati kebiasaan manusia, contohnya seperti pergerakan maupun minat atau ketertarikan. Content Centric Delay Tolerant Network adalah salah satu contoh komunikasi baru di jaringan oportunistik yang mengubah pengiriman pesan berbasis source ke destination menjadi pengiriman yang melihat dari isi pesannya. Salah satu contoh implementasi dari CCDTN yakni mekanisme Publish and Subscribe. Mekanisme ini berusaha menghindari pengiriman pesan yang melihat alamat pengirim dan penerima atau berdasarkan source ke destination menjadi konten dan ketertarikan. Dalam mekanisme Publish and Subscribe pengiriman konten atau pesan kepada subscriber dapat dilakukan tanpa keputusan yaitu dengan melakukan flooding. Namun dikarenakan sifatnya yang membanjiri setiap node dengan pesan mengakibatkan pengiriman pesan berbasis flooding tidak efisien dan membutuhkan banyak resource. Oleh karena itu pada penelitian ini akan menggunakan pendekatan Dynamic Time Warping (DTW) untuk menitipkan pesan pada relay yang tepat yakni yang memiliki kemiripan dengan subscriber yang dilihat dari posisi mereka di jaringan (position similarity).
Pada penelitian ini menggunakan average utility, average eficiency dan average latency sebagai pengukuran unjuk kerja. Kemudian menggunakan DTW untuk memilih relay yang tepat sebagai pembawa pesan dengan menghitung position similarity relay dengan tujuan. Dari hasil simulasi, penulis menyimpulkan dengan menggunakan DTW sebagai keputusan pendistribusian pesan lebih efisien dibandingkan dengan protokol routing berbasis flooding.
Kata Kunci : Jaringan Oportunistik, Content-centric Delay Tolerant Network, Publish and Subscribe, Dynamic Time Warping, Position Similarity
vii ABSTRACT
The recent study of delay-tolerant networks has been designed to incorporate and consider human behavior such as physical movement and interest in the communication process. Content-Centric Delay Tolerant Network(CCDTN) is a new paradigm in opportunistic networks that converts message delivery based on source-to-destination into content-based. The implementation of CCDTN is Publish and Subscribe communication mechanism. This mechanism enables message delivery based on its content of interest. This interest is generated by a publisher and the content will be delivered to the interested subscriber. The messages from publisher to subscriber and vice versa are delivered in a flooding manner. However, this flooding mechanism is inefficient and requires a lot of resources.
Therefore, this research use the Dynamic Time Warping (DTW) approach to entrust messages to the right relay. We inspect that the position-based similarity measure by DTW is beneficial to reduce resource utilization. This research uses average utility, average efficiency, and average latency as performance measurements. From the simulation results, the authors conclude that using DTW in routing decisions is more efficient than the flooding-based routing protocols. This research uses average utility, average efficiency and average latency as performance measurements. Then uses DTW to select the right relay as a message carrier by calculating the position similarity relay with the destination. From the simulation results, the authors conclude that using DTW as a message distribution decision is more efficient than the flooding-based routing protocols.
Keywords : Opportunistic Network, Content-centric Delay Tolerant Network, Publish and Subscribe, Dynamic Time Warping, Position Similarity
viii
KATA PENGANTAR
Puji syukur kepada Tuhan yang Maha Esa atas berkat dan rahmat-Nya penulis dapat menyelesaikan skripsi ini. Selama mengerjakan skripsi ini penulis menyadari bahwa banyak pihak yang membimbing dan membantu penulis baik secara langsung maupun tidak langsung sehingga skripsi ini dapat terselesaikan sebagaimana mestinya. Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada :
1. Tuhan yang Maha Esa karena atas karunia-Nya penulis dapat menyelesaikan tugas akhir ini.
2. Kedua orang tua, kakak Ivan, kakak Nia dan keluarga yang telah mendukung, memberikan semangat dan dorongan serta doa dalam menyelesaikan tugas akhir.
3. Bapak Bambang Soelistijanto, S.T, M.Sc., Ph.D. selaku dosen pembimbing tugas akhir yang sudah memberikan banyak bimbingan dan ilmu dalam mengerjakan tugas akhir.
4. Ibu Vittalis Ayu S.T., M.Cs. yang sudah membantu memberikan arahan, bimbingan dan ilmu baik sebelum maupun sesudah mengerjakan tugas akhir. 5. Bapak Johanes Eka Priyatma, Ph.D. selaku dosen pembimbing akademis yang
sudah memberikan bimbingan.
6. Teman seperjuangan penulis dari masa metopen hingga skripsi, yaitu Francisca Intan dan Reena Simanihuruk yang mau bertukar pikiran ketika penulis mengalami kesulitan.
7. Andri Prasetyo dan Jose Pedro yang telah membantu dalam membuat pergerakan yang dibutuhkan.
8. Seluruh teman-teman jaringan komputer angkatan 2017 yang selalu memberikan dorongan dan dukungan.
9. Teman – teman yang memberikan semangat dan mendengarkan curhatan penulis yakni Nisa, Andri dan Sari.
10. Serta seluruh pihak yang telah mendoakan dan mendukung penulis secara langsung maupun tidak langsung saya ucapkan terima kasih.
ix
Penulis menyadari bahwa tulisan ini masih jauh dari kata sempurna, oleh karena itu kritik dan saran yang membangun sangat penulis harapkan untuk menyempurnakan tulisan ini. Akhir kata penulis mengucapkan terima kasih semoga dapat bermanfaat bagi pihak yang membaca.
Penulis
x DAFTAR ISI
HALAMAN PERSETUJUAN SKRIPSI ... i
HALAMAN PENGESAHAN SKRIPSI ... ii
MOTTO... iii
PERNYATAAN KEASLIAN KARYA ... iv
LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... v
ABSTRAK ... vi
ABSTRACT ... vii
KATA PENGANTAR ... viii
DAFTAR ISI ... x
DAFTAR GAMBAR ... xiii
DAFTAR TABEL ... xiv
DAFTAR RUMUS... xv BAB I ... 1 1.1. Latar Belakang... 1 1.2. Rumusan Masalah ... 2 1.3. Batasan Masalah ... 2 1.4. Tujuan Penelitian ... 2 1.5. Manfaat Penelitian ... 2 1.6. Metodologi Penelitian ... 2 1.6.1 Studi Literatur ... 3 1.6.2 Perancangan ... 3
1.6.3 Simulasi dan Analisis ... 3
1.6.4 Penarikan Kesimpulan ... 3
1.7. Sistematika Penulisan ... 3
xi
2.1. Jaringan Oportunistik ... 5
2.2. Content Centric Delay Tolerant Network... 6
2.2.1 Publish and Subscribe ... 6
2.3. Penyebaran Pesan Berbasis Flooding ... 7
2.4. Dynamic Time Warping ... 7
BAB III... 10
3.1. Skenario Simulasi ... 10
3.2. Usulan Routing ... 11
3.3. Psudocode ... 12
3.3.1 Pseudo-code Pemilihan Publisher serta Pembangkitan Konten ... 12
3.3.2 Pseudo-code Pemilihan Subscriber serta Pembangkitan Subscribe . 13 3.3.3 Pseudo-code Routing DTW ... 14
3.4. Parameter Simulasi ... 15
3.5. Pergerakan Node ... 15
3.6. Matriks Unjuk Kerja ... 16
3.5.1 Average Utility ... 16
3.5.2 Average Efficiency... 17
3.5.3 Average Latancy ... 17
BAB IV ... 18
4.1. Perbandingan Average Utility protokol routing Dynamic Time Warping dengan protokol routing Flooding ... 18
4.2. Perbandingan Average Efficiency protokol routing Dynamic Time Warping dengan protokol routing Flooding ... 19
4.3. Perbandingan Avergae Latency protokol Dynamic Time Warping dengan protokol Flooding ... 20
BAB V ... 21
KESIMPULAN DAN SARAN ... 21
5.1. Kesimpulan ... 21
xii
DAFTAR PUSTAKA ... 22 LAMPIRAN ... 23
xiii
DAFTAR GAMBAR
Gambar 2.1 1 Store-Carry-Forward ... 5
Gambar 2.4 1 Euclidean Distance ... 8
Gambar 2.4 2 Dynamic Time Warping ... 8
Gambar 2.4 3 Contoh DTW Matriks dan Warping Path ... 9
Gambar 3.1 1 Ilustrasi interval model ... 10
Gambar 3.1 2 Contoh Konten yang diminati Subscriber ... 10
Gambar 3.2 1 Pergerakan node P1 ... 11
Gambar 4.1 1 Average Utility ... 18
Gambar 4.2 1 Average Efficiency... 19
xiv
DAFTAR TABEL
Tabel 3.3 1 Parameter Simulasi ... 15 Tabel 3.4 1 Transition Probability ... 16
xv
DAFTAR RUMUS
Rumus 2.4 1 ... 8
Rumus 2.4 2 ... 9
Rumus 3.5.1 1 Utility ... 16
Rumus 3.5.1 2 Average Utility ... 16
Rumus 3.5.2 1 Efficicency ... 17
Rumus 3.5.2 2 Average Efficiency ... 17
1 BAB I PENDAHULUAN
1.1. Latar Belakang
Pada jaringan oportunistik (OPPNET) komunikasi antara source dan destination dapat dimungkinkan tanpa harus tersedianya rute yang menghubungkan source ke destination. Dengan menggunakan metode store – carry – forward [1], mengizinkan suatu node untuk menyimpan pesan dan diteruskan ke node lain hingga sampai ke alamat tujuan. Pada umumnya pengiriman pesan dalam OPPNET hanya ditujukan pada satu penerima saja, padahal ada kemungkinan lebih dari satu orang yang menginginkan pesan tersebut. Hal ini menjadi masalah karena membutuhkan waktu yang lebih agar mereka dapat memperoleh pesan yang sama [2]. Oleh karena itu muncul paradigma baru yang dikenal dengan sebutan Content-Centric Delay Tolerant Networks (CCDTN).
Konsep CCDTN adalah gaya jaringan komunikasi baru yang mengaitkan pasangan source-destination berdasarkan dari konten dan ketertarikan [3]. Hal ini berarti pengiriman pesan di jaringan tidak lagi mengandalkan dari alamat penerima (destination) melainkan dengan cara melihat dari isi pesannya. Mekanisme pengiriman pesan seperti ini dikenal dengan Publish dan Subscribe (P&S). Jadi ada node yang berperan sebagai pembuat konten (publisher) dan ada node yang menginginkan konten tersebut (subscriber) tidak bergantung siapa pembuatnya selama dia mendapatkan konten sesuai dengan ketertarikannya. Terdapat cara sederhana yang dapat digunakan untuk menyebarkan konten dijaringan ini yaitu dengan melakukan flooding. Namun hal ini dapat menyebabkan beban jaringan yang tinggi dan tidak efisien dikarenakan setiap node akan dibanjiri oleh konten.
Untuk mengatasi hal tersebut maka diperlukan protokol routing yang dapat memilih relay yang tepat agar konten dapat secara efektif dan efisien sampai kepada subscriber. Pada penelitian ini menggunakan algoritma
2
Dynamic Time Warping dalam keputusan pendistribusian pesan. Algoritma ini digunakan untuk melihat seberapa mirip suatu node dengan node lain.
1.2. Rumusan Masalah
Berdasarkan latar belakang diatas, maka rumusan masalah yang didapat yaitu bagaimana memilih relay yang tepat dengan menggunakan pendekatan Dynamic Time Warping dalam CCDTN.
1.3. Batasan Masalah
Batasan masalah pada penelitian ini adalah sebagai berikut:
1. Algortima routing yang digunakan adalah Dynamic Time Warping. dalam skema jaringan berbasis Publish and Subscribe.
2. Menggunakan protokol Flooding sebagai pembanding
3. Menggunakan matriks unjuk kerja yaitu Average Utility, Average Eficiency dan Average Latency.
4. Setiap node dapat berperan sebagai publisher, subscriber dan juga relay.
1.4. Tujuan Penelitian
Tujuan pada penelitian ini adalah untuk melihat seberapa efektif penyebaran pesan dalam konsep CCDTN dengan menggunakan algoritma Dynamic Time Warping.
1.5. Manfaat Penelitian
Manfaat dilakukannya penelitian ini adalah untuk menjadi pertimbangan dalam pengembangan mekanisme pendistribusian pesan dalam CCDTN.
1.6. Metodologi Penelitian
Metodologi dan langkah-langkah yang digunakan dalam mengerjakan tugas akhir ini adalah sebagai berikut :
3 1.6.1 Studi Literatur
Mengumpulkan berbagai macam referensi dan mempelajari teori-teori yang mendukung penulisan seperti :
a. Teori Jaringan Opportunistic b. Teori CCDTN
c. Teori Publish and Subscribe d. Teori routing berbasis Flooding.
e. Teori routing protokol Dynamic Time Warping 1.6.2 Perancangan
Tahapan ini merupakan skenario yang digunakan dalam penelitian.
1.6.3 Simulasi dan Analisis
Simulasi jaringan yang dipakai pada penelitian ini menggunakan The ONE Simulator dan setelah mendapatkan data dari hasil simulasi data akan di analisis.
1.6.4 Penarikan Kesimpulan
Penarikan kesimpulan terhadap data yang telah dianalisis sesuai dengan parameter unjuk kerja yang ditentukan.
1.7. Sistematika Penulisan
Dalam penulisan tugas akhir ini dibagi secara sistematik penulisan menjadi 3 bab, berikut ini sistematika penulisan
BAB I PENDAHULUAN
Bab ini berisikan penjelasan umum tentang latar belakang, rumusan masalah, tujuan penelitian, batasan masalah, manfaat penelitian, metodologi penelitian, dan sistematika penulisan. BAB II LANDASAN TEORI
Bab ini berisi tentang dasar teori yang digunakan sebagai dasar dalam melakukan penelitian.
4 BAB III METODE PENELITIAN
BAB IV
BAB V
Bab ini berisikan tentang usulan algoritma, pseudo code perancangan skenario simulasi sebagai alat penelitian dan langkah-langkah pengujian.
PENGUJIAN DAN ANALISIS
Berisi tentang tahap pengujian, simulasi dan analisis data dari hasil simulasi.
KESIMPULAN DAN SARAN
Berisi tentang kesimpulan dari hasil penelitian dan saran dari penulis untuk penelitian selanjutnya.
5 BAB II LANDASAN TEORI
2.1. Jaringan Oportunistik
Jaringan oportunistik atau juga dikenal dengan Opportunistic Network (OppNet) adalah jaringan yang berkomunikasi tanpa memerlukan adanya infrakstruktur dan juga menoleransi adanya delay. Pada jaringan ini berasumsi bahwa jalur antara end-to-end tidak selalu ada dikarenakan node itu bergerak dan menyebabkan topologi yang selalu berubah sewaktu – waktu sehingga penerusan pesan dalam jaringan ini merupakan suatu tantangan tersendiri.
Sebagian besar penerusan pesan di DTN menggunakan mekanisme store-carry-forward seperti diperlihatkan pada Gambar 2.1.1. Mekanisme dimana sebelum pesan dikirimkan, akan disimpan (store) dalam bentuk bundle terlebih dahulu kemudian dibawa (carry) hingga akhirnya diteruskan (forward) ketika bertemu node lain atau dengan destination.
Gambar 2.1 1 Store-Carry-Forward
Mekanisme diatas memungkinkan setiap node menjadi relay atau node pembawa pesan bagi source agar pesan dapat sampai kepada destination. Dengan begitu komunikasi antara source dan destination tetap dapat terjadi tanpa harus selalu tersedianya rute yang menghubungkan mereka.
Komunikasi antara source dengan destination pada umumnya dihubungkan dengan melihat alamat yang dicantumkan pada pesan. Pengiriman dengan model seperti ini tentu memiliki kelemahan dikarenakan
6
pesan hanya dapat diterima oleh satu destinasi saja. Oleh karena itu muncul pendekatan baru yang berusaha mengubah pasangan source dan desitnation berdasarkan dari alamat pengirim dan penerima menjadi konten dan ketertarikannya yang dikenal dengan sebutan Content Centric Delay Tolerant Network.
2.2. Content Centric Delay Tolerant Network
Content Centric Delay Tolerant Network (CCDTN) adalah paradigma routing yang melihat dari isi pesannya. Pembuatan maupun pengiriman pesan tidak lagi dengan melihat alamat tujuan atau destinasi melainkan dari isi pesannya. Kemudian salah satu contoh implementasi dalam CCDTN yaitu publish and subscribe
2.2.1 Publish and Subscribe
Mekanisme publish and subscribe dalam kehidupan nyata dapat diibaratkan seperti orang yang mempublikasikan sebuah video atau konten di platform tertentu dan kemudian siapa saja yang tertarik dengan konten tersebut dapat menikmatinya. Dalam mekanisme ini terdapat tiga jenis node yang memiliki peran yang berbeda yaitu Publisher, Subscriber dan juga Relay. Peran dari tiga jenis node ini yaitu sebagai berikut:
• Publisher : node yang bertugas membuat konten tanpa harus menspesifikkan siapa penerimanya. Konten setiap publisher yang satu akan berbeda dengan konten publisher yang lain.
• Subscriber : node yang menyukai suatu konten selama konten tersebut masih hidup.
• Relay : node yang dititipkan suatu konten untuk diberikan kepada subscriber.
Dalam proses pengiriman konten atau pesan dapat digunakan cara sederhana yakni dengan menyebarkannya langsung kepada setiap node yang ditemui (flooding).
7 2.3. Penyebaran Pesan Berbasis Flooding
Flooding difusion [4] adalah cara umum yang digunakan untuk menerukan pesan yakni dengan tanpa memerlukan pertimbangan. Oleh karena itu setiap node di jaringan akan langsung memberikan salinan pesan kepada setiap node yang dia temui. Dengan pendekatan seperti ini tingkat keberhasilan konten sampai kepada subscriber tentu tinggi dikarenakan semua node memiliki konten tersebut. Namun dikarenakan setiap node dibanjiri oleh pesan tentu hal ini akan membebani jaringan. Untuk itu diperlukan protokol routing yang mampu memilih relay yang tepat untuk menyampaikan konten kepada subscriber. Pada penelitian ini akan menggunakan algoritma dynamic time warping sebagai pertimbangan keputusan pendistribusian pesan.
2.4. Dynamic Time Warping
Pada perkembangannya, pergerakkan node di OppNet telah dirancang untuk mendekati pergerakan manusia [5]. Karakteristik pergerakan manusia dapat diprediksi dan memiliki pola tertentu karena manusia cenderung pergi dan kembali ke tempat semula atau disebut juga sebagai rumah. Oleh karena itu pemilihan node relay dalam menyebarkan konten dapat dilakukan dengan melihat kemiripan pola pergerakan dengan subscriber.
Dynamic time warping (DTW) adalah salah satu algoritma yang dapat digunakan untuk membandingkan kemiripan pola pergerakan tersebut. DTW merupakan algoritma untuk mengukur kemiripan antara dua buah data yang diperoleh dari deretan waktu. Berbeda dengan Euclidean distance yang hanya membandingkan one-to-one, DTW mampu membandingkan satu nilai ke beberapa nilai lainnya sehingga walaupun terdapat dua panjang data yang berbeda tetap dapat dibandingkan [6].
8
Gambar 2.4 1 Euclidean Distance
Gambar 2.4 2 Dynamic Time Warping
Pada gambar diatas terlihat dua kurva hampir menunjukkan pola yang sama, tetapi kurva berwarna biru lebih panjang datanya daripada kurva berwarna merah. Jika mengikui aturan one-to-one seperti Gambar 2.4.1 maka data tidak dipetakan dengan sempurna sehingga ujung dari kurva biru diabaikan. Oleh karena itu pada penelitian ini menggunakan DTW karena dapat mengatasi permasalahan tersebut dengan menerapkan perbandingan one-to-many sehingga data yang satu dapat dibandingkan dengan keseluruhan data lainnya.
Misalkan terdapat dua buah urutan data dengan X = x1, ,x2 ,x3..xm dan Y = y1, y2, y3…,yn. Untuk mencari kemiripan dua buah data ini dengan menggunakan DTW maka diperlukan matriks dengan orde m x n, dimana m dan n adalah panjang data dari kedua data tersebut. Kemudian elemen (i,j) dari matriks adalah jarak kumulatif di (i,j) dan nilai minimum dari tiga elemen yang berdekatan dengan elemen (i.j). Elemen (i,j) dalam matriks DTW dapat direpresentasikan sebagai berikut :
𝐷𝑇𝑊(𝑖, 𝑗) = 𝑑𝑖𝑗 + min 𝛼 Rumus 2.4 1
9
Dimana dij = |xi -yj|, 𝑖 ∈ [1, 𝑚], 𝑗 ∈ [1, 𝑛] dan 𝛼 adalah perhitungan sebagai berikut : 𝛼 = { 0 𝑖 = 0, 𝑗 = 0 𝐷𝑇𝑊(𝑖, 𝑗 − 1) 𝑖 = 0, 𝑗 > 0 𝐷𝑇𝑊(𝑖 − 1, 𝑗) 𝑖 > 0, 𝑗 = 0 min ( 𝐷𝑇𝑊(𝑖 − 1, 𝑗), 𝐷𝑇𝑊(𝑖, 𝑗 − 1), 𝐷𝑇𝑊(𝑖 − 11, 𝑛 − 1) ) 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 Rumus 2.4 2
Setelah matriks DTW terbentuk maka distance antara kedua data adalah nilai terakhir dari matriks. Kemudian kita juga telah dapat menentukan warping path pada matriks tersebut. Warping path adalah jalur lintasan yang melalui matriks dengan berisi jarak minimal dari elemen Dij hingga elemen Dmn.
Gambar 2.4 3 Contoh DTW Matriks dan Warping Path
Pada gambar diatas, sel berwarna biru merepresentasikan sebagai warping path. Warping path didapatkan setelah menghitung distance antara dua buah deret data A = {1,3,9,2,1} dan B = {2,9,3,1,1} dengan menggunakan DTW. Distance antara dua sekuens data diatas adalah elemen yang berada pada D(m,n) atau berada pada sudut kanan atas seperti yang diilustrasikan pada Gambar 2.4.3 yaitu 3. Untuk menentukan warping path, maka kita akan memilih elemen dengan nilai terkecil yang dipilih dari sudut kanan atas hingga menuju D(0,0).
10 BAB III
METODE PENELITIAN
3.1. Skenario Simulasi
Skenario pada penelitian ini semua node dapat berperan sebagai publisher, subscriber maupun relay. Pemilihan pubsliher maupun subscriber akan dipilih secara acak, sehingga siapa saja dapat menjadi publisher, subscriber maupun keduanya dengan catatan dia tidak akan menyukai jenis konten yang dibuatnya. Kemudian terdapat 5 jenis kategori yang diperoleh dari pembagian interval 1 hingga 100. Kategori ini merepresentasikan interest atau ketertarikan dari suatu node.
Gambar 3.1 1 Ilustrasi interval model
Gambar 3.1.1 menunjukan pembagian interest menjadi 5 rentang interval yang diambil dari interval (1,100). Ketertarikan node subscriber diasumsikan sebagai suatu interval dan konten node publsiher diasumsikan sebagai titik yang diambil acak dari interval tersebut. Ketika node ditunjuk sebagai publisher maka node tersebut akan membuat pesan dengan ditandai “C” pada id pesan yang menandakan bahwa pesan itu adalah sebuah konten. Kemudian untuk node yang ditunjuk sebagai subscriber akan membuat pesan dengan id ditandai “S”. Subscriber dikatakan menyukai suatu konten jika nilai konten tersebut berada pada rentang interval ketertarikan dari subsriber.
11
Misalkan terdapat konten dengan angka 45,5 dan rentang interval [41,60) seperti pada Gambar 3.1.2. Dikarenakan angka konten masuk pada rentang interval kategori 3 maka konten tersebut adalah konten yang diminati atau diinginkan oleh subscriber yang memiliki ketertarikan S41 atau dengan interval [41,60).
3.2. Usulan Routing
Keputusan routing dengan DTW akan menghitung nilai similarity terhadap subscriber. Inputan yang digunakan sebagai perhitungan similarity adalah berdasarkan dari posisi suatu node di jaringan.
Gambar 3.2 1 Pergerakan node P1
Setiap node selama proses warm-up akan menyimpan informasi lokasi mereka setiap 10 menit dan juga mempertukarkan informasi tersebut ke node lain. Total waktu warm-up adalah 8 jam yang terbagi menjadi dua proses yaitu 6 jam awal untuk proses menyimpan informasi lokasi dan 2 jam sisanya untuk mempertukarkan informasi lokasi setiap node di jaringan. Pada Gambar 3.2.1 mengilustrasikan pergerakan node P1 ketika mengunjungi area tertentu. Contoh ketika koordinat node P1 berada pada area 1 maka P1 akan menyimpan informasi dengan angka 1 begitu juga dengan area lainnya. Sehingga nantinya akan terbentuk deret data = {1,5,2,3,6} yang merepresentasikan posisi node P1 setiap 10 menit. Suatu node dikatakan memiliki similarity yang tinggi dengan
12
node lain jika perhitungan dengan DTW menghasilkan nilai yang rendah dan begitu pula sebaliknya.
3.3. Psudocode
Berikut ini rancangan dari pseudo-code yang digunakan :
3.3.1 Pseudo-code Pemilihan Publisher serta Pembangkitan Konten
Pseudo-code publisher selection and content generation
/Initialization category {e1,….e5} e1 [1,20) e2 [21,40) e3 [41,60) e4 [61,80) e5 [81,100)
Note : N is total of host
If content creation time falls then update expired temporary publisher
While publisher has not been selected do
host = random a host who will be a publisher [0,N] category = random a category that will be published [1,5]
If host is a subscriber and like the same category or host already a publisher of certain content
then publisher has not beed selected Else
add a host to temporary publisher publisher selected
End if End while
value = random a number according to the interval of the category publish a content marked by “C” along with that random value End if
13
3.3.2 Pseudo-code Pemilihan Subscriber serta Pembangkitan Subscribe
Pseudo-code subscriber selection and subscribe generation
/Initialization category {e1,….e5} e1 [1,20) e2 [21,40) e3 [41,60) e4 [61,80) e5 [81,100)
Note : N is total of host
If subscribe creation time falls then update expired temporary subscriber
While subscriber has not been selected do
host = random a host who will be a subscriber [0,N] category = random a category that will be requested [1,5]
If host is a publisher and publish the same category or host already a subscriber of certain category
then subscriber has not beed selected Else
add a host to temporary subscriber subscriber selected
End if End while
value = get the lower range of the interval category
subscribe a category marked by “S” along with that lower range value End if
14 3.3.3 Pseudo-code Routing DTW
Pseudocode Routing Dynamic Time Warping
While a is in contact with b do If in warm-up time then send pathInfo list a receive pathInfo list b update pathInfo list a else
send subscription list a receive subscription list b update subscription list a end if
while m E buffer a do
for all subscription list b that match content value do
me calculate dtw distance to subscriber (Rumus 2.4.1) peer calculate dtw distance to subscriber (Rumus 2.4.1)
if peer < me then send content end if end for don’send end while end while
15 3.4. Parameter Simulasi
Pada penelitian ini parameter yang akan digunakan yaitu sebagai berikut :
Tabel 3.3 1 Parameter Simulasi
Parameter Pergerakan Synthetic Scenario Time 259200 s Transmit Speed 250K Transmit Range 10 Buffer Size 5M Luas Area (m) 1200 x 1200 TTL 300 minutes Host 90 Msg. Interval (1msg/s) 1660, 2660 s 2160 s Msg. Size 500K, 1M Warm-up time 28800 3.5. Pergerakan Node
Pergerakan yang dipakai dalam penelitian ini adalah pergerakan cluster buatan yang dimana terdiri dari 9 area (3x3 grid). Pada pergerakan ini setiap areanya terdiri dari 10 node yang 2 diantaranya adalah super node dan sisanya adalah node biasa. Super node adalah node yang probabilitas geraknya lebih tinggi ke area lain daripada area asalnya. Sedangkan node biasa adalah node yang probabilitas geraknya lebih tinggi berada dalam area asalnya daripada area lain.
Berikut ini adalah transisi probabilitas pergerakan dari super node dan node biasa dalam pergerakan cluster buatan :
16
Tabel 3.4 1 Transition Probability
Note : S is Super Node dan B is Node Biasa 3.6.Matriks Unjuk Kerja
Ada beberapa metriks unjuk kerja yang dipakai untuk mengevaluasi unjuk kerja protokol yang akan di pakai yaitu :
3.5.1 Average Utility
Utility digunakan untuk menghitung berapa banyak konten yang berhasil sampai kepada subscriber. Semakin tinggi nilai utilitas yang dihasilkan maka dapat disimpulkan protokol routing yang dipakai unjuk kerjanya baik. Rumus utility yaitu :
𝑈𝑡𝑖𝑙𝑖𝑡𝑦 = 𝑇𝑜𝑡𝑎𝑙 𝐷𝑒𝑙𝑖𝑣𝑒𝑟𝑒𝑑 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 𝑇𝑜𝑡𝑎𝑙 𝑆𝑢𝑏𝑠𝑐𝑟𝑖𝑏𝑒𝑟 𝑜𝑓 𝑎 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 Rumus 3.5.1 1 Utility
Total Subscriber of a Content : Jumlah node yang tertarik terhadap suatu konten selama waktu konten masih hidup
𝐴𝑣𝑒𝑟𝑎𝑔𝑒 𝑈𝑡𝑖𝑙𝑖𝑡𝑦 = 𝑆𝑢𝑚 𝑜𝑓 𝑈𝑡𝑖𝑙𝑖𝑡𝑦 𝑇𝑜𝑡𝑎𝑙 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 Rumus 3.5.1 2 Average Utility
Area 1 2 3 4 5 6 7 8 9 1 S 0.1 - 0.3 0.3 0.3 - - - - B 0.6 - - - 0.4 - - - - 2 S - 0.1 0.3 0.3 0.3 - - - - B - 0.6 - - 0.4 - - - - 3 S 0.12 0.12 0.1 - 0.12 0.12 0.12 0.12 0.12 B - - 0.6 - - - 0.4 4 S 0.12 0.12 - 0.1 0.12 0.12 0.12 0.12 0.12 B - - - 0.6 - - - - 0.4 5 S 0.12 0.12 0.12 0.12 0.1 0.12 - 0.12 0.12 B - - - 0.4 0.6 - - - - 6 S 0.18 0.18 0.18 0.18 0.18 0.1 - - - B - - - 0.6 0.4 - - 7 S 0.12 0.12 0.12 0.12 - 0.12 0.1 0.12 0.12 B - - - 0.4 - - 0.6 - - 8 S 0.18 0.18 0.18 0.18 0.18 - - 0.1 - B - - - 0.4 0.6 - 9 S 0.18 0.18 0.18 0.18 0.18 - - - 0.1 B - - - 0.4 - 0.6
17 3.5.2 Average Efficiency
Average efficiency digunakan untuk menghitung rata – rata jumlah node yang mendapatkan konten sesuai interest dibagi dengan jumlah relay untuk konten tersebut. Semakin tinggi nilai efficiency maka protokol routing yang dipakai dapat dikatakan unjuk kerjanya baik. Rumus average efficiency yaitu :
𝐸𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑐𝑦 = 𝑇𝑜𝑡𝑎𝑙 𝐷𝑒𝑙𝑖𝑣𝑒𝑟𝑒𝑑 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 𝑇𝑜𝑡𝑎𝑙 𝑅𝑒𝑙𝑎𝑦 𝑜𝑓 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 Rumus 3.5.2 1 Efficicency
𝑨𝒗𝒆𝒓𝒂𝒈𝒆 𝑬𝒇𝒇𝒊𝒄𝒊𝒆𝒏𝒄𝒚 = 𝑺𝒖𝒎 𝒐𝒇 𝑬𝒇𝒇𝒊𝒄𝒊𝒆𝒏𝒄𝒚 𝑻𝒐𝒕𝒂𝒍 𝑪𝒐𝒏𝒕𝒆𝒏𝒕 Rumus 3.5.2 2 Average Efficiency
3.5.3 Average Latancy
Average latency digunakan untuk menghitung rata – rata waktu sebuah konten sampai ke node tujuan dari sejak pertama dibuat. Rumus average latency yaitu :
𝐴𝑣𝑒𝑟𝑎𝑔𝑒 𝐿𝑎𝑡𝑒𝑛𝑐𝑦 = (𝑇𝑖𝑚𝑒 𝑜𝑓 𝐷𝑒𝑙𝑖𝑣𝑒𝑟𝑒𝑑 𝐶𝑜𝑛𝑡𝑒𝑛𝑡 − 𝑇𝑖𝑚𝑒 𝑜𝑓 𝐶𝑟𝑒𝑎𝑡𝑒𝑑 𝐶𝑜𝑛𝑡𝑒𝑛𝑡) 𝑇𝑜𝑡𝑎𝑙 𝐷𝑒𝑙𝑖𝑣𝑒𝑟𝑒𝑑 𝐶𝑜𝑛𝑡𝑒𝑛𝑡
18 BAB IV
PENGUJIAN DAN ANALISIS
Untuk mengetahui unjuk kerja protokol routing DTW, maka dilakukan pengujian dengan mengikuti rancangan skenario yang telah dijelaskan pada Bab III. Data hasil simulasi akan diperoleh dari report yang akan menjadi acuan untuk dianalisis.
4.1. Perbandingan Average Utility protokol routing Dynamic Time Warping dengan protokol routing Flooding
Gambar 4.1 1 Average Utility
Pada Gambar 4.1.1 menunjukan bahwa dengan menggunakan protokol routing DTW dapat mendekati protokol routing berbasis flooding. Untuk yang flooding memiliki nilai yang lebih tinggi dikarenakan setiap kali bertemu suatu node akan dititipi konten berbeda dengan DTW yang memerlukan pertimbangan terlebih dahulu sehingga menyebabkan tidak semua node dapat dikatakan sebagai relay yang tepat terhadap node tujuan. Oleh karena sedikitnya jumlah relay terhadap suatu konten, maka hal ini tentunya dapat mengurangi tingkat keberhasilan suatu konten untuk sampai kepada subscriber. 0.917407837 0.868351811 0.7 0.75 0.8 0.85 0.9 0.95
Average Utility
Flooding DTW19
4.2. Perbandingan Average Efficiency protokol routing Dynamic Time Warping dengan protokol routing Flooding
Gambar 4.2 1 Average Efficiency
Pada gambar 4.2.1 terlihat nilai average efficiency menghasilkan nilai yang sangat rendah yakni sekitar 0.0. Hal ini dikarenakan rata - rata konten diminati hanya 3 subscriber. Oleh karena itu kandidat relay yakni selain pembuat konten (publisher) dan subscriber adalah jumlah node yakni 90 dikurang 4 (publisher+subscriber) menjadi 86 relay. Sehingga jika semua subscriber mendapatkan konten maka perhitungan efficiency akan menjadi 3/86 = 0.03. Nsmun nilai average efficency pada protokol routing DTW memiliki nilai yang lebih tinggi dibandingkan dengan Flooding. Hal ini terjadi karena pada prokotol DTW dapat mengurangi jumlah copy dengan cara memilih relay yang pergerakannya mirip dengan subscriber. Berbeda dengan flooding yang selalu menyebarkan pesan terhadap setiap node yang ditemui menyebabkan semua node terpilih sebagai relay. Oleh karena itu untuk mendapatkan penyebaran pesan yang efisien perlu membuat salinan pesan atau jumlah copy yang optimum.
0.034915776 0.058029656 0.02 0.025 0.03 0.035 0.04 0.045 0.05 0.055 0.06 0.065 0.07
Average Efficiency
Flooding DTW20
4.3. Perbandingan Avergae Latency protokol Dynamic Time Warping dengan protokol Flooding
Gambar 4.3 1 Average Latency
Untuk nilai average latency yang dihasilkan dengan menggunakan protokol DTW menunjukkan nilai yang lebih tinggi daripada flooding. Hal ini berarti dengan menggunakan protokol DTW memerlukan waktu yang cukup lama untuk sebuah konten mencapai subscriber. Dikarenakan dalam penyebaran konten, jumlah relay terhadap suatu konten lebih sedikit daripada flooding. Oleh karena itu kemungkinan suatu konten sampai lebih lama berbeda dengan flooding yang semua node memiliki konten terhadap node tujuan. Semakin banyak jumlah copy kontennya maka kemungkinan untuk bertemu dengan subscriber juga akan lebih cepat.
2467.773367 4491.525833 2000 2500 3000 3500 4000 4500 5000
Average Latency
Flooding DTW21 BAB V
KESIMPULAN DAN SARAN 5.1. Kesimpulan
Setelah melakukan pengujian dan analisis pada data hasil simulasi, maka dapat disimpulkan bahwa protokol routing Dynamic Time Warping lebih efisien karena mampu mengurangi jumlah copy dengan cara memilih relay yang pergerakannya memiliki kemiripan dengan subscriber. Pada pergerakan cluster buatan ini, aktivitas node biasa mempunyai kemiripan dengan node lain yang berada pada area asal yang sama sehingga relay yang dipilih sebagai pembawa pesan adalah yang pergerakannya hampir sama. Namun dikarenakan lebih sedikitnya relay yang dipilih sebagai pembawa pesan menyebabkan rata – rata waktu sebuah pesan untuk sampai ke tujuan lebih lama dibandingkan dengan protokol routing berbasis flooding. Disamping kelemahannya, DTW mampu menghasilkan nilai utilitas yang hampir mendekati dengan protokol routing berbasis flooding. Oleh karena itu, protokol routing DTW dapat digunakan sebagai bahan pertimbangan dalam mendistribusikan pesan pada jaringan oportunistik berbasis publish and subscribe.
5.2. Saran
Untuk penelitian selanjutnya, dapat menghitung similarity tidak hanya berdasarkan dari aspek posisi saja. Kemudian sebaiknya suatu node bisa memiliki ketertarikan yang overlaping agar dapat mencerminkan kehidupan manusia yang tentunya setiap orang pasti memiliki ketertarikan lebih dari satu.
22
DAFTAR PUSTAKA
[1] T. Spyropoulos, R. N. Bin Rais, T. Turletti, K. Obraczka, and A. Vasilakos, “Routing for disruption tolerant networks: Taxonomy and design,” Wirel. Networks, vol. 16, no. 8, pp. 2349–2370, 2010, doi: 10.1007/s11276-010-0276-9.
[2] L.Jenar, “Analisis unjuk kerja jaringan oportunistik berbasis publish & subscribe dengan duplicate filter dan kombinasi aturan pengurutan,” Universitas Sanata Dharma, 2020.
[3] L. Feng and W. Jie, “MOPS: Providing content-based service in disruption-tolerant networks,” Proc. - Int. Conf. Distrib. Comput. Syst., pp. 526–533, 2009, doi: 10.1109/ICDCS.2009.28.
[4] A. Vahdat and D. Becker, “Epidemic routing for partially-connected ad hoc networks,” no. CS-2000-06, 2000.
[5] R. Yonas and B. Soelistijanto, “Analisis Kinerja Protokol Routing Social Aware Berbasis Konten Pada Opportunistic Network,” pp. 110–123, 2017. [6] V. Niennattrakul and C. A. Ratanamahatana, “On clustering multimedia time
series data using k-means and dynamic time warping,” Proc. - 2007 Int. Conf. Multimed. Ubiquitous Eng. MUE 2007, pp. 733–738, 2007, doi: 10.1109/MUE.2007.165.
23 LAMPIRAN a. ContenSubsDTW
27 b. UtilityandEfficiencyReport
31 c. LatencyReport
32 d. MessageGene
33 e. KontenGenerator
34 f. SubscribeGenerator
36 g. MessageCreateEvent
37 h. ReportHelper