• Tidak ada hasil yang ditemukan

Implementasi Algoritma Dijkstra dengan Pembobotan Link Dinamis berdasarkan Packet Loss untuk Pencarian Rute Terpendek pada Software Defined Networking

N/A
N/A
Protected

Academic year: 2022

Membagikan "Implementasi Algoritma Dijkstra dengan Pembobotan Link Dinamis berdasarkan Packet Loss untuk Pencarian Rute Terpendek pada Software Defined Networking"

Copied!
10
0
0

Teks penuh

(1)

Fakultas Ilmu Komputer

Universitas Brawijaya 5244

Implementasi Algoritma Dijkstra dengan Pembobotan Link Dinamis berdasarkan Packet Loss untuk Pencarian Rute Terpendek pada Software

Defined Networking

Julio Firdaus Irawan1, Primantara Hari Trisnawan2, Adhitya Bhawiyuga3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya

Email: 1[email protected], 2[email protected], 3[email protected]

Abstrak

SDN merupakan sebuah paradigma baru pada jaringan komputer yang memisahkan control plane dan data plane. Konsep tersebut menawarkan programabilitas yang lebih baik terhadap perangkat dan manajemen jaringan yang lebih efisien. Dalam konteks penentuan rute dalam mekanisme routing pada jaringan SDN penemuan topologi dan perhitungan routing dilakukan oleh controller SDN saja.

Mekanisme dalam menentukan rute terbaik yang dilalui oleh packet dari pengirim ke penerima ditentukan oleh sebuah algoritma routing. Dari beberapa algoritma routing yang ada salah satunya adalah algoritma routing link-state. Salah satu penerapan pada algoritma routing link state adalah menggunakan algoritma Dijkstra. Pada algoritma Dijkstra fokus dari algoritma ini hanya pada strategi pencarian rute tanpa mendefinisikan bobot yang digunakan. Secara umum jarak statis antara dua node akan dijadikan bobot tanpa mempertimbangkan faktor kondisi dari jaringan yang dilewati. Bobot yang didasarkan pada jarak akan menghasilkan rute terpendek namun mungkin bukan yang paling optimal.

Dengan adanya teknologi SDN yang bersifat programmable optimasi bobot pada algoritma Dijkstra yang mempertimbangkan kepadatan jaringan dapat diimplementasikan. Pada penelitian ini telah dilakukan implementasi sistem algoritma routing Dijkstra untuk pencarian jalur terpendek dengan memperhatikan packet loss sebagai bobot. Dari hasil pengujian, diperoleh hasil bahwa sistem telah mampu melakukan pencarian jalur dengan mempertimbangkan nilai packet loss terkecil pada link. Pada pengujian throughput, sistem memiliki throughput yang lebih unggul secara signifikan dibandingkan dengan algoritma statis Dijkstra. Kemudian berdasarkan pengujian packet loss, sistem ini memiliki packet loss berkisar antara 0 - 1 % dibandingkan dengan algoritma statis Dijkstra yang memiliki peningkatan packet loss yang signifikan disaat jumlah client lebih dari 30. Pada sistem ini nilai convergence time yang didapatkan tidak jauh berbeda dengan algoritma statis Dijkstra.

Kata kunci: Software Defined Networking, routing, Algoritma Dijkstra, Bobot Link, Packet loss Abstract

SDN is a new paradigm in computer networks that separates the control plane and data plane. The concept offers better programmability of devices and more efficient network management. In the context of determining the route in the routing mechanism on the SDN network, topology discovery and routing calculations are carried out by the SDN controller only. The mechanism in determining the best route traversed by a packet from the sender to the receiver is determined by a routing algorithm. One of the existing routing algorithms is the link-state routing algorithm. One application of the existing link state routing algorithm is the Dijkstra algorithm. In Dijkstra's Algorithm the focus of this algorithm is only on the route search strategy without defining the weights used. In general, the static distance between two nodes will be weighted without considering the condition factor of the network being passed.

Weights based on distance will result in the shortest route but may not be the most optimal. With the programmable SDN technology, weight optimization that considers network density can be implemented. Therefore, in this research, the implementation of Dijkstra's routing algorithm system for finding the shortest path has been carried out by paying attention to packet loss as a weight. From the test results, the results obtained that the system has been able to search for paths by considering the smallest packet loss value on the link. In throughput testing, the system has significantly superior throughput compared to static Dijkstra algorithm. Then based on packet loss testing, this system has packet loss ranging from 0 - 1% compared to Dijkstra's static algorithm which has a significant increase

(2)

in packet loss when the number of clients is more than 30. In this system the convergence time value obtained is not much different from the static Dijkstra algorithm.

Keywords: Software Defined Networking, Routing, Dijkstra algorithm, Link weight, Packet loss

1. PENDAHULUAN

Software Defined Networking (SDN) merupakan sebuah paradigma baru pada teknologi jaringan komputer yang merubah arsitektur jaringan yang dikenal saat ini ke bidang virtual di mana perangkat jaringan direpresentasikan dan didefinisikan oleh perintah. (Jose, et al., 2016). Pada arsitektur SDN control plane data plane terletak secara terpisah.(Al-Najjar, et al., 2016). Dalam konteks penentuan rute dalam mekanisme routing pada jaringan SDN pemisahan antara control plane dan data plane pada SDN berkonsekuensi terhadap penemuan topologi dan perhitungan routing yang dilakukan oleh controller SDN saja. Sedangkan penerusan packet dalam jaringan SDN secara terpisah hanya dilakukan oleh openflow switch.

Dalam konteks routing mekanisme dalam menentukan rute terbaik yang dilalui oleh packet dari pengirim ke penerima ditentukan oleh sebuah algoritma routing. (Kurose & Rose, 2017). Dari beberapa algoritma routing yang ada salah satunya adalah algoritma routing link- state. Salah satu penerapan pada algoritma routing link state adalah menggunakan algoritma Dijkstra (Kurose & Rose, 2017). Algoritma Dijkstra melakukan perhitungan rute terpendek dari suatu node ke seluruh node yang ada pada jaringan dengan nilai bobot terkecil. Pada Algoritma Dijkstra fokus dari algoritma ini hanya pada strategi pencarian rute tanpa mendefinisikan bobot yang digunakan. Secara umum jarak antara dua node akan dijadikan bobot pada algoritma Dijkstra. Dalam konteks penentuan rute di dalam jaringan, bobot yang didasarkan pada jarak tidak mempertimbangkan faktor kondisi dari jaringan yang dilewati. Bobot yang didasarkan pada jarak tersebut akan menghasilkan rute terpendek namun mungkin bukan yang paling optimal. Faktor-faktor yang memengaruhi keadaan rute di jaringan terutama faktor kemacetan pada jaringan yang dilewati tidak dipertimbangkan sebagai bobot pada algoritma Dijkstra (Wei & Yu, 2014).

Terkait permasalahan tersebut, pada penelitian sebelumnya berjudul Implementasi

Penentuan Bobot Link Menggunakan Logika Fuzzy Untuk Pencarian Jalur Terpendek Pada Software Defined Networking (Hadiyansyah, 2018) mengusulkan penentuan bobot link berdasarkan logika fuzzy dengan parameter traffic dan delay untuk melakukan pencarian jalur pada Software Denfined Networking.

Pada penelitian lain yang berjudul A heuristic algorithm for bandwidth delay constrained routing (Phuong, et al., 2014) mengusulkan routing dengan pembobotan dinamis berdasarkan bandwidth dan delay pada algoritma dijkstra. Pembobotan dinamis bertujuan untuk memilih jalur secara reaktif sehingga ada sumber daya yang memadai untuk permintaan routing di masa mendatang.

Berdasarkan dari penelitian yang telah dibahas sebelumnya, permasalahan keterbatasan algoritma Dijkstra dalam melakukan pembobotan pada link telah mengundang beberapa peneliti untuk menemukan solusinya.

Namun penelitian yang telah ada tidak mempertimbangkan packet loss sebagai parameter dalam menentukan bobot. Menurut penelitian yang dilakukan oleh beshley (Mykola, et al., 2017) metrik rute adalah bagian terpenting pada protokol routing. Semakin baik metrik, semakin besar probabilitas bahwa packet akan dikirimkan melalui rute yang paling optimal.

Pada teknologi jaringan komputer packet loss meningkat seiring dengan meningkatnya intensitas traffic, oleh karenanya kinerja pada sebuah node sering diukur tidak hanya dalam hal delay, tetapi juga dalam hal kemungkinan packet loss. (Kurose & Rose, 2017) Packet loss merupakan salah satu metrik kinerja signifikan yang digunakan untuk menentukan quality of service (QoS) dan diagnostik dalam jaringan.

(Yash, et al., 2018).

Berdasarkan permasalahan pada penerapan algoritma routing yang telah di singgung sebelumnya maka dalam penelitian ini diusulkan penerapan algoritma routing Dijkstra dengan memperhatikan packet loss sebagai bobot untuk pencarian jalur terpendek pada Software Defined Networking. Pada penelitian ini SDN Controller akan menentukan bagaimana sebuah jalur dibuat. Pencarian jalur tidak hanya bertujuan untuk menentukan jalur terbaik dari sumber ke

(3)

tujuan, tetapi pencarian jalur harus mampu mempertimbangkan nilai packet loss terkecil pada link. Setelah jalur dibuat, Controller akan menambahkan flow berisi jalur tersebut ke data plane pada switch di SDN. Kemudian Switch akan meneruskan packet berdasarkan flow pada forwarding table di jaringan SDN.

2. KAJIAN PUSTAKA

Beberapa penelitian yang berkaitan dengan algoritma Dijkstra maupun monitoring packet loss telah banyak dilakukan dalam beberapa tahun belakang ini. Dari beberapa penelitian yang telah ada, diambil beberapa contoh penelitian yang dianggap dapat dijadikan acuan dalam melakukan penelitian ini.

Pada penelitian sebelumnya yang berjudul Real Time Monitoring packet loss in Software Denfined Networking menerapkan monitoring packet loss secara real time pada SDN. Peneliti Yash, et al.,(2018) menemukan kebanyakan monitoring packet loss yang ada pada jaringan SDN hanya melakukan monitoring packet loss berdasarkan flow dari source switch dan last swtich saja dan tidak dengan per-port packet loss. Per-port packet loss ini dapat digunakan oleh administrator jaringan dan ISP untuk mengidentifikasi cluster di jaringan besar yang rentan terhadap kemacetan. Oleh karena itu peneliti melakukan monitoring packet loss pada seluruh switch yang ada dijaringan dengan mengumpulkan semua informasi tentang port statistic. Informasi tadi kemudian diolah sehingga didapatkan real time monitoring per- port packet loss pada Software Defined Networking.

Penelitian lain yang berjudul Implementasi Penentuan Bobot Link Menggunakan Logika Fuzzy Untuk Pencarian Rute Terpendek Pada Software Defined Networking (Hadiyansyah, 2018) meneliti tentang penentuan bobot link yang ada pada algoritma Dijkstra. Peneliti Hadiyansyah mencoba melakukan pembobotan link secara dinamis pada algoritma Dijkstra dengan menggunakan logika fuzzy yang mempertimbangkan traffic dan delay sebagai parameter masukan untuk logika fuzzy. Logika fuzzy yang digunakan oleh peneliti yaitu logika fuzzy tsukamoto dan mamdani, yang kemudian dibandingkan hasil pengujian untuk setiap algoritma yang ada. Di dapatkan hasil pembobotan link dinamis pada algoritma Dijkstra menggunakan logika fuzzy telah dapat

melakukan pencarian rute terpendek pada Software Defined Networking.

Pada penelitian yang berjudul A heuristic Algorithm for Bandwidth delay constrained routing (Phuong, et al., 2014), peneliti melakukan implementasi routing mengunakan algoritma Dijkstra yang dioptimasi. Algoritma dijkstra di optimasi pada pembobotan pada link yang didasarkan pada bandwidth dan delay.

Penelitian ini berusaha melakukan pembobotan dinamis pada rute yang akan dilewati untuk menerima sebanyak mungkin permintaan routing yang ada. Pembobotan dinamis pada algoritma dijkstra bertujuan untuk memilih rute secara reaktif sehingga ada sumber daya yang memadai untuk permintaan routing di masa mendatang. Penelitian ini menghasilkan algoritma routing yang dapat melayani permintaan routing dengan sumber daya yang memadai berdasarkan bandwitdh dan delay.

3. PERANCANGAN SISTEM 3.1. Topologi

Dalam membangun topologi yang digunakan untuk meng-aplikasikan sistem yang telah dibuat topologi yang digunakan adalah topologi yang memiliki rute redudant, yaitu topologi yang berbentuk loop dan memiliki lebih dari satu rute dari node asal ke node tujuan. Pada penelitian ini terdapat 2 topologi yang akan digunakan. Topologi 1 pada Gambar 3.1 akan digunakan untuk melakukan pencarian rute dan mengukur kinerja dari algoritma routing yang meliputi throughput , packet loss dan convergence time. Sedangkan pada Topologi 2 pada Gambar 3.2 hanya digunakan untuk melakukan pengujian kinerja dari algoritma routing.

Gambar 3.1 Topologi 1

Pada Topologi 1 pada Gambar 3.1 bertujuan untuk memenuhi kebutuhan dari penelitian ini yaitu melakukan pencarian rute. Pada topologi terdapat controller(c0) yang berperan sebagai control plane yang melakukan control terhadap

(4)

jaringan, kemudian terdapat 7 openvswitch(s) yang bertindak sebagai forwarding funcition yang berbentuk loop dan 6 host yang akan bertindak sebagai iperf client dan server. Pada topologi ini bandwidth link yang menguhubungkan switch antara satu sama lain sebesar 200 Mbps. Pada switch s1 terdapat 5 host yang akan bertindak sebagai client untuk mengirimkan packet menuju server yang berada pada s5.

Gambar 3.2 Topologi 2

Pada rancangan Topologi 2 pada Gambar 3.2 terdapat 9 openvswitch yang menghubungkan antara client dengan server dengan bandwidth link antara switch sebesar 200 Mbps. Rancangan pada topologi ini bertujuan untuk menciptakan banyak rute yang dapat dilalui oleh suatu packet. Diharapkan rancangan pada topologi ini dapat mensimulasikan topologi jaringan lainnya dengan kompleksifitas yang lebih tinggi.

3.2. Monitoring Packet Loss

Dalam melakukan monitoring packet loss pada jaringan SDN diperlukan sebuah fungsi untuk memantau traffic dari pengiriman dan penerimaan packet setiap port. Untuk mendapatkan traffic pengiriman dan penerimaan packet pada setiap port digunakan aplikasi real time monitoring pada jaringan SDN yaitu Sflow- RT. Pada controller nilai traffic dari pengiriman dan penerimaan packet akan digunakan untuk menghitung nilai packet loss suatu link yang ada pada sebuah jaringan. Metode dalam menghitung packet loss per link pada jaringan SDN mengunakan metode pada penelitian terdahulu yang dilakukan oleh peneliti yash (Yash, et al., 2018) yang dilakukan dengan cara mengurangi RX packet (packet yang diterima) pada suatu port pada destination switch dengan TX packet (packet yang dikirimkan) dari suatu port dari source switch.

3.3. Algoritma Routing Dijkstra Dan

Pembobotan Link

Dalam membangun algoritma routing Dijkstra dilakukan perancangan tentang bagaimana membangun fungsi routing yang dapat meneruskan packet dari pengirim ke penerima dengan rute yang telah ditentukan oleh algoritma routing. Algoritma routing berfungsi untuk menentukan rute terpendek yang akan dilalui oleh packet dari pengirim ke penerima.

Gambar 3.3 Diagram Alir Algoritma Dijkstra Dapat dijelaskan pada diagram alir pada Gambar 3.3 langkah pertama yang akan dilakukan algoritma routing adalah melakukan inisialisasi jarak ke seluruh switch pada jaringan menjadi tidak terhingga. Kemudian algoritma melakukan inisialisasi jarak/bobot node awal bernilai 0 agar menjadi node yang dijelajahi pertama kali karena bobotnya yang paling kecil.

Kemudian algoritma akan mencari switch dengan bobot paling minimum sebagai switch yang akan dijelajahi saat ini yang kemudian ditandai sebagai switch yang telah dijelajahi agar tidak terulang pada iterasi selanjutnya. Setelah switch dengan bobot paling minimum didapatkan maka untuk setiap switch yang ada pada jaringan yang bertetangga dengan switch yang dijelajahi saat ini akan ditentukan bobotnya. Pembobotan link didasarkan pada pembobotan link dinamis dan pembotan link statis. Pembobotan link dinamis dilakukan berdasarkan packet loss, sedangkan bobot link statis didasarkan pada bobot dari algoritma

(5)

Dijkstra yang bernilai tetap berdasarkan pada jarak. Selanjutnya dilakukan proses update bobot dan predecessor. Proses diatas akan dilakukan sehingga semua switch pada jaringan telah dijelajahi dan didapatkan bobot link berdasarkan parameter yang telah ditentukan.

Kemudian hasil akhir dari algoritma ini berupa predecessor yang akan digunakan untuk menentukan rute dari switch asal ke switch tujuan.

3.4. Software Defined Networking

Perancangan terhadap aplikasi SDN dilakukan untuk melakukan penanganan terhadap permintaan pengiriman packet yang akan dilakukan oleh client. Aplikasi SDN akan melakukan pencarian rute terpendek berdasarkan bobot link terkecil yang ada pada topologi menggunakan algoritma Dijkstra. Pada aplikasi SDN yang dibuat sebuah host hanya akan menggunakan 1 rute saja saat ingin terhubung dengan suatu host yang ada pada jaringan.

Saat datang pemintaan pengiriman packet dari client menuju sebuah switch untuk mengirimkan packet ke destinasi tujuan, switch akan melakukan pencocokan packet tersebut dengan flow table yang ada pada data plane.

Ketika tidak didapatkan flow yang cocok dengan flow table, maka packet akan diteruskan untuk dikirimkan menuju controller pada control plane. Controller akan melakukan penanganan terhadap packet yang datang yang dalam hal ini adalah permintaan pengiriman packet.

Controller akan terlebih dahulu memeriksa apakah mac address dari destinasi tujuan sudah diketahui. Setelah didapatkan mac address tujuan selanjutnya controller akan melakukan pencarian jalur menggunakan algoritma routing dijkstra.

Penentuan bobot pada algoritma Dijkstra dilakukan dengan mempertimbangkan packet loss. Controller akan melakukan monitoring terhadap packet loss dan kemudian akan melakukan perhitungan bobot untuk setiap jalur.

Setelah didapatkan jalur controller akan menambahkan flow berisi tindakan yang akan dilakukan oleh sebuah switch ketika menerima packet. Controller akan menambahkan flow ke flow table pada data plane pada setiap switch yang menjadi jalur yang akan dilewati oleh packet. Selanjutnya switch akan melakukan

forwarding packet tersebut menuju destinasi tujuan berdasarkan forwading table (flow table).

4. IMPLEMENTASI

Tahap implementasi didasarkan pada perancangan yang telah dilakukan sebelumnya.

Implementasi topologi dilakukan dengan memasang perangkat lunak pendukung untuk melakukan pengembangan sistem yaitu Mininet.

Implementasi software defined networking, monitoring packet loss dan algoritma Dijkstra dilakukan dengan melakukan pemasangan library ryu, sFlow-RT dan pengembangan program pada controller.

5. HASIL PENGUJIAN 5.1 Pencarian Jalur

Pada pengujian pencarian jalur akan diketahui apakah sistem telah berhasil memenuhi kebutuhan fungsionalitasnya untuk melakukan pencarian jalur terpendek pada topologi. Pengujian dilakukan pada Topologi 1 di mana 3 host akan bertindak sebagai client dan 1 host bertindak sebagai server. Pengujian akan dilakukan mengunakan tools iperf sebagai alat untuk generate traffic. Pada Topologi 1 host 6 akan bertindak sebagai iperf server yang akan menerima packet dari iperf client host lainnya.

Setiap client yang ada akan mengirimkan packet UDP dengan transfer rate sebesar 300 mbps menuju server. Pengiriman dilakukan secara bersamaan dengan jeda waktu yang berbeda antar client.

hasil pencarian jalur pada Gambar 5.1 menunjukkan jalur yang dilewati oleh client menuju server. Di mana untuk host 1 melewati jalur dari s1, s2, s5 untuk mengirimkan packet menuju host 6.

Gambar 5.1 Jalur Host 1 Pembobotan Link Dinamis Kemudian hasil pencarian jalur pada Gambar 5.2 menunjukkan jalur yang dilewati oleh client menuju server. Di mana untuk host 2

(6)

melewati jalur dari s1, s3, s6, s5 untuk mengirimkan packet menuju host 6.

Gambar 5.2 Jalur Host 2 Pembobotan Link Dinamis Sedangkan hasil pencarian jalur pada Gambar 5.3 menunjukkan jalur yang dilewati oleh client menuju server. Di mana untuk host 3 melewati jalur dari s1, s4, s7,s5 untuk mengirimkan packet menuju host 6.

Gambar 5.3 Jalur Host 3 Pembobotan Link Dinamis Pemilihan jalur yang dilakukan menujukkan bahwa setiap host pada jaringan telah berhasil melakukan pemilihan jalur berdasarkan keadaan jaringan yang akan dilewati berdasarkan pada packet loss pada setiap link yang ada di jaringan.

hal ini didasarkan pada saat pengujian jalur di mana pada host 2 dan host 3 yang bertindak sebagai client yang akan mengirimkan packet menuju server yakni host 6 berhasil memilih jalur lain selain jalur yang telah dipilih oleh host 1 di mana keadaan jalur yang dipilih oleh host 1 ini memiliki nilai packet loss yang lebih tinggi, hal ini dikarenakan host 1 telah terlebih dahulu mengirimkan packet dalam jumlah besar yang menyebabkan terjadinya packet loss pada link yang dilewati.

Gambar 5.4 Jalur Client Menuju Server Pembobotan Link Statis

Pada pengujian pencarian jalur yang dilakukan pada algoritma Dijkstra dengan pembobotan statis hasil pencarian jalur pada Gambar 5.4 menunjukkan pemilihan jalur yang dilewati oleh masing masing host dari client menuju server. Di mana untuk host 1 sebagai client melewati jalur dari s1, s2, s5 untuk mengirimkan packet menuju host 6 sebagai server. Kemudian untuk host 2 melewati jalur dari s1, s2, s5 untuk mengirimkan packet menuju host 6. Sedangkan untuk host 3 melewati jalur dari s1, s2, s5 untuk mengirimkan packet menuju host 6. Pemilihan jalur yang dilakukan menujukkan bahwa setiap host pada jaringan telah berhasil melakukan pemilihan jalur berdasarkan bobot link statis yang telah ditentukan sebelumnya. Berikut ini merupakan Tabel dari masing masing algoritma dalam melakukan pemilihan jalur.

Tabel 5.1 Pemilihan Jalur Dari Setiap Algoritma Algoritma

Dijkstra

Pemilihan Jalur

Host -1 Host -2 Host -3 Algoritma

Dijkstra dengan pembobotan statis

S1, S2, S5 S1, S2, S5 S1 , S2, S5

Dymanic weight Dijkstra

S1, S2, S5 S1, S3, S6,

S5 S1, S4, S7,S5

5.2 Pengujian Throughput

Pengujian throughput bertujuan untuk mengetahui kualitas kinerja dari jaringan dan untuk membuktikan bahwa sistem telah berhasil mengatasi kelemahan yang ada pada algoritma routing Dijkstra dengan pembobotan statis.

Pengujian troughput akan dilakukan pada

(7)

Topologi 1 dan Topologi 2 di mana pada masing-masing topologi terdapat 5 host yang bertindak sebagai client dan 1 host sebagai server.

Pengujian trouhgput akan dilakukan dengan mengirimkan packet TCP sebesar besarnya yang dikirimkan oleh client menuju server. Pengujian akan dilakukan secara bersamaan antar client selama 20 detik. Pengujian dilakukan dengan variasi pembeda yaitu jumlah client pada setiap pengujiannya. Hal tersebut ditujukan untuk mengetahui pengaruh dari jumlah client yang ada terhadap perubahan throughput yang didapatkan pada masing masing algoritma.

Tabel 5.2 Throughput Rata Rata Setiap Algoritma Topologi 1

Jumlah client

Throughput Rata – Rata (Mbps) Static Dijkstra Dynamic Dijkstra

20 10,165 30,1825

40 5,4 15,01225

60 3,507966102 10,05066667

80 2,662625 7,531

Pada Tabel 5.2 merupakan hasil dari pengujian trouhgput pada Topologi 1.

Selanjutnya untuk hasil pengujian trouhgput pada Topologi 2 tersaji pada Tabel di bawah ini.

Tabel 5.3 Throughput Rata Rata Setiap Algoritma Topologi 2

Jumlah client

Throughput Rata – Rata (Mbps) Static Dijkstra Dynamic Dijkstra

20 10,4975 29,98

40 5,09975 14,883

60 3,339666667 10,046

80 2,671 7,442375

Pada Tabel 5.3 merupakan hasil dari pengujian trouhgput pada Topologi 2. Kemudian dari data-data tersebut dapat direpresentasikan dalam bentuk grafik pada Gambar 5.5.

Gambar 5.5 Grafik Pengujian Throughput Topologi 1

Selanjutnya hasil dari Tabel pengujian trouhgput pada Topologi 2 yang ada akan ditampilkan dalam bentuk grafik pada Gambar 5.6.

Gambar 5.6 Grafik Pengujian Throughput Topologi 2

Pada grafik diatas terlihat perbadingan dari trouhgput yang ada pada Topologi 1 dan 2 di mana terdapat 2 garis yang mempresentasikan algoritma yang diuji yaitu algoritma Dijkstra dengan pembobotan dinamis dan algoritma Dijkstra dengan pembobotan statis dengan variabel pembeda jumlah client. Berdasarkan hasil dari pengujian diatas, nilai throughput yang didapatkan akan berkurang seiring bertambahnya jumlah client yang terhubung degan server.

Pada algoritma Dijkstra dengan pembobotan statis nilai throughput yang didapatkan lebih buruk dari algoritma Dijkstra dengan pembobotan dinamis. hal tersebut terjadi karena algoritma Dijkstra dengan pembobotan statis hanya memiliki satu jalur yang tetap pada setiap client yang ada untuk terhubung dengan server.

Sedangakan pada algoritma Dijkstra dengan pembobotan dinamis setiap client yang ada telah

0 10 20 30 40

20 40 60 80

Throughput (Mbps)

Jumlah client

Throughput

Static Dijkstra Dynamic Dijkstra

0 10 20 30 40

20 40 60 80

Throughput (Mbps)

Jumlah client

Throughput

Static Dijkstra Dynamic Dijkstra

(8)

dapat memilih jalur yang optimal untuk menuju server berdasarkan tingkat packet loss yang ada pada jaringan sehingga mengasilkan nilai throughput yang lebih baik dari algoritma Dijkstra dengan pembobotan statis.

5.3 Pengujian Packet Loss

Pada pengujian packet loss bertujuan untuk mengetahui persentase kegagalan dari suatu packet yang dikirimkan oleh client menuju server. Pengujian ini juga bertujuan untuk mengetahui perbadingan packet loss pada sistem yang telah dibuat yaitu pada algoritma routing Dijkstra dengan pembobotan dinamis dengan algoritma routing Dijkstra dengan pembobotan statis. Pengujian dilakukan pada Topologi 1 dan Topologi 2 di mana pada topologi tersebut terdapat 5 host yang akan bertindak sebagai client yang akan mengirimkan packet menuju server. Dalam melakukan pengujian packet loss setiap client akan mengirimkan packet UDP dengan transfer rate sebesar 6 Mbps selama 20 detik. Pengiriman packet yang dilakukan diberi variabel pembeda yaitu jumlah client pada setiap pengujiannya. hal tersebut bertujuan untuk mengetahui pengaruh dari jumlah client terhadap nilai packet loss yang didapatkan.

Tabel 5.4 Pengujian Packet Loss Topologi 1

Algoritma Routing

Rata-Rata Packet loss (%) Terhadap Jumlah Client

20 30 40 50

Dynamic Disjktra

0,01 082

0,0126 0,014 485

0,11 52 Static

Dijkstra 0,00

541

0,01340 6667

18,77 15

34,9 88 Pada Tabel 5.4 menunjukkan hasil dari pengujian packet loss yang dilakukan secara berurutan antar algoritma pada Topologi 1.

Selanjutnya untuk hasil pengujian packet loss pada Topologi 2 tersaji pada Tabel di bawah ini.

Tabel 5.5 Pengujian Packet Loss Topologi 2 Algoritm

a Routing

Rata-Rata Packet loss (%) Terhadap Jumlah Client

20 30 40 50

Dynamic Disjktra

0,01672 0,011 82

0,0088 68293

0,011 232 Static

Dijkstra

0,02 0,015 42666

16,708 10811

35,03

Pada Tabel 5.5 menunjukkan hasil dari pengujian packet loss yang dilakukan secara berurutan antar algoritma pada Topologi 2.

Selanjutnya hasil dari Tabel pengujian packet loss yang ada akan ditampilkan dalam bentuk grafik pada Gambar 5.7.

Gambar 5.7 Graffik Pengujian Packet loss Topologi 1

Pada grafik diatas terlihat perbandingan dari packet loss yang ada pada Topologi 1.Selanjutnya hasil dari Tabel pengujian packet loss pada Topologi 2 yang ada akan ditampilkan dalam bentuk grafik pada Gambar 5.8.

Gambar 5.8 Graffik Pengujian Packet loss Topologi 2

Pada grafik diatas terlihat perbadingan dari packet loss yang ada pada Topologi1 dan Topologi 2 di mana terdapat 2 garis yang mempresentasikan algoritma yang diuji yaitu algoritma Dijkstra dengan pembobotan dinamis dan algoritma Dijkstra dengan pembobotan statis dengan variabel pembeda jumlah client.

Berdasarkan hasil dari pengujian packet loss diatas, pada algoritma Dijkstra dengan

0 10 20 30 40

20 30 40 50

Packet Loss (%)

Jumlah client

Packet Loss

Static Dijkstra Dynamic Dijkstra

0 10 20 30 40

20 30 40 50

Packet Loss (%)

Jumlah Client

Packet Loss

Static Dijkstra Dynamic Dijkstra

(9)

pembobotan statis nilai packet loss yang didapatkan mengalami kenaikan yang signifikan saat jumlah client pada topologi bertambah menjadi 40 client. Sedangkan untuk algoritma Dijkstra dengan pembobotan dinamis nilai packet loss secara konstan tidak mengalami perubahan. Nilai yang didapatkan pada algoritma Dijkstra dengan pembobotan dinamis untuk seluruh jumlah client memiliki prosentase berkisar antara 0 sampai dengan 1 persen.

Hasil pengujian diatas terjadi karena pada algoritma Dijkstra dengan pembobotan statis untuk seluruh client yang ada hanya memiliki satu jalur untuk menuju server. Sedangkan pada algoritma Dijkstra dengan pembobotan dinamis seluruh client dapat meratakan beban packet yang dikirimkan melewati jalur yang berbeda pada topologi di jaringan.

5.4 Pengujian Convergance Time

Pengujian convergance time bertujuan untuk mengetahui waktu dari pemrosesan algoritma routing yang telah diimplementasikan. Nilai convergance time pada implementasi algoritma Dijkstra pada jaringan SDN dapat diambil berdasarkan waktu pencarian jalur pada algoritma Dijkstra. Pengujian convergance time dilakukan pada Topologi 1 dan Topologi 2.

Pengujian dilakukan dengan cara mengirimkan packet icmp dari client menuju server. Pengujian yang ada dilakukan sebanyak 10 kali untuk setiap algoritma. Hasil dari pengujian convergance time berupa response time/waktu yang dibutuhkan untuk melakukan ping pengiriman packet icmp. Response time yang didapatkan pada pengujian ini akan di rata-rata dan digunakan sebagai nilai dari convergance time.

Berikut ini merupakan hasil dari pengujian convergance time yang dilakukan pada algoritma Dijkstra dengan pembobotan dinamis dan algoritma Dijkstra dengan pembobotan statis.

Tabel 5.6 Pengujian Convergance time Topologi 1 Rata – Rata Convergance time (ms) Static Dijkstra 21,35

Dynamic Dijkstra 20,87

Pada Tabel 5.6 merupakan hasil pengujian convergance time pada Topologi 1. Kemudian untuk hasil pengujian convergance time pada Topologi 2 tersaji pada Tabel di bawah ini.

Tabel 5.7 Pengujian Convergance time Topologi 2 Rata – Rata Convergance time (ms) Static Dijkstra 33,65

Dynamic Dijkstra 30,23

Pada Tabel 5.7 merupakan hasil pengujian convergance time pada Topologi 2. Dari hasil pengujian yang ada pada setiap algoritma akan dihitung nilai rata-rata dari pengiriman packet icmp yang dikirimkan yang tertera pada Tabel.

Hasil pengujian convergance time yang telah dilakukan pada algoritma Dijkstra dengan pembobotan statis nilai convergance time yang didapatkan tidak jauh berbeda dengan algoritma Dijkstra dengan pembobotan dinamis. Hal tersebut dibuktikan dengan pengiriman packet ICMP yang dilakukan sebanyak 10 kali pada pada Topologi 1 dan Topologi 2 di mana algoritma Dijkstra dengan pembobotan dinamis memiliki rata rata nilai convergance time lebih rendah 1 sampai 2 milisecond (ms) saja dari algoritma Dijkstra dengan pembobotan statis.

Hal tersebut disebabkan karena pemrosesan dari algoritma Dijkstra dengan pembobotan dinamis dalam menentukan bobot pada masing masing link pada topologi hanya perlu mengambil nilai bobot pada list yang berasal dari proses monitoring terlebih dahulu yang telah dilakukan setiap detik yang menyebabkan nilai convergance time tidak jauh berbeda dengan algoritma Dijkstra dengan pembobotan statis.

6. KESIMPULAN

Berdasarkan hasil dari pengujian dan analisis pada implementasi sistem yang telah dilakukan, dapat ditarik kesimpulan dari penelitian ini, yaitu sebagai berikut.

1. Telah dilakukan implementasi algoritma Dijkstra dengan pembobotan link dinamis berdasarkan packet loss untuk pencarian jalur terpendek pada software defined networking. Dalam melakukan implementasi tersebut digunakan aplikasi sFlow-RT dan library Ryu sebagai alat untuk melakukan monitoring packet loss pada suatu link. Kemudian dalam melakukan pembobotan digunakan packet loss sebagai input bobot setiap link. Terakhir algoritma Dijkstra digunakan untuk melakukan pencarian jalur terpendek berdasarkan bobot terkecil pada link.

2. Berdasarkan hasil pengujian pencarian jalur, aplikasi SDN telah mampu melakukan pencarian jalur terhadap

(10)

beberapa jalur yang ada dalam suatu topologi. Pada algoritma Dijkstra dengan pembobotan link berdasarkan packet loss telah berhasil meratakan beban ke semua switch yang ada di jaringan. Sedangkan pada algoritma Dijkstra dengan pembobotan statis hanya mampu menggunakan 1 jalur saja.

3. Berdasarkan hasil pengujian throughput untuk mengukur kualitas jaringan SDN yang dibuat, pada algoritma Dijkstra dengan pembobotan link berdasarkan packet loss memiliki throughput lebih besar dibandingkan dengan algoritma Dijkstra dengan pembobotan statis baik pada Topologi-1 maupun Topologi-2. Pada algoritma Dijkstra dengan pembobotan statis memiliki throughput sangat kecil dengan perbedaan throughput yang cukup signifikan.

4. Berdasarkan hasil pengujian packet loss pada jaringan SDN, pada algoritma Dijkstra dengan pembobotan link berdasarkan packet loss memiliki packet loss berkisar antara 0 - 1 pada semua topologi dan seluruh jumlah client.

Sedangkan pada algoritma Dijkstra dengan pembobotan statis mengalami kenaikan packet loss yang signifikan disaat jumlah client lebih dari 30.

5. Berdasarkan hasil pengujian convergence time, bahwa pada algoritma Dijkstra dengan pembobotan statis nilai convergance time yang didapatkan tidak jauh berbeda dengan algoritma Dijkstra dengan pembobotan link berdasarkan packet loss.

7. DAFTAR PUSTAKA

Al-Najjar, Layeghy & Portmann, 2016. Pushing SDN to The End-Host, Network Load Balancing Using OpenFlow. IEEE International Conference on Pervasive Computing and Communication Workshops, Percom Workshop.

Jose, M. J., Oscar, R., Albert, R. & Lloret, J., 2016. Analyzing the Performance of Software Defined Networks vs Real Networks. International Journal on Advances in Networks, Issue 9, pp. 107 - 116..

Kurose, J. & Rose, K., 2017. COMPUTER

NETWORIKNG : A TOP DOWN Approach.. 7th penyunt. New york:

pearson.

Mykola, B., Seliuchenko, M., Oleksiy, P. &

Artur, P., 2017. Adaptive Flow Routing Model in SDN. CADSM 2017, Issue IEEE, pp. 298 - 302.

Phuong, T. T. C., Ha, H. N. & Tran, C. H., 2014. A heuristic algorithm for bandwidth delay. The 2014 International Conference on Advanced Technologies for Communications (ATC'14), pp. 99 -104.

Wei, M. & Yu, M., 2014. Research On The Optimal Route Choice Based On Improved Dijkstra. 2014 IEEE Workshop on Advanced Research and Technology in Industry Applications (WARTIA), Issue IEEE, pp. 303 - 306.

Yan, Zhang, H. & Jinyao, 2015. Performance of SDN Routing in Comparsion with Legacy Routing Protocols.

International Conference on Cyber- Enabled Distributed Computing, Issue 2011, pp. 491 - 494.

Yash, S., Shikhar, V. & Haribabu, 2018. Real Time Monitoring of Packet Loss in Software Defined Networks. UBICNET 2017, Issue LNICST 218, p. 154–164.

Gambar

Gambar 3.1 Topologi 1
Gambar 3.2 Topologi 2
Gambar 5.1 Jalur Host 1 Pembobotan Link Dinamis  Kemudian  hasil  pencarian  jalur  pada  Gambar  5.2  menunjukkan  jalur  yang  dilewati  oleh client menuju server
Gambar 5.2 Jalur Host 2 Pembobotan Link Dinamis  Sedangkan  hasil  pencarian  jalur  pada  Gambar  5.3  menunjukkan  jalur  yang  dilewati  oleh client menuju server
+3

Referensi

Dokumen terkait