## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928

## Deteksi Serangan DDOS Pada Jaringan SDN dengan Metode Random Forest
Ardhian Ekawijana 1 , Akhmad Bakhrun 1,* , M Teguh Kurniawan 2
1 Jurusan Teknik Komputer dan Informatika,Teknik Informatika, Politeknik Negeri Bandung, Bandung Barat, Indonesia
2 Fakultas Rekayasa Industri, Sistem Informasi, Universitas Telkom, Bandung, Indonesia Email: 1 ardhian.ekawijana@polban.ac.id, 2,* abakhrun@polban.ac.id, 3 teguhkurniawan@telkomuniversity.ac.id Email Penulis Korespondensi: abakhrun@polban.ac.id
Abstrak− Distributed Denial Service (DDoS) Attack adalah upaya dari penyerang untuk melumpuhkan sistem jaringan dengan cara membanjirinya dengan request. Sistem yang sibuk dapat membuat turun dalam performansi dan bahkan lumpuh. Software Defined Service (SDN) merupakan paradigma baru dalam membuat sebuah jaringan didalam suatu area tertentu. SDN dengan segala  keunggulan  dan  fleksibilitasnya  dalam  penerapannya  menjadi  suatu  menarik  untuk  diterapkan,  namun  tetap meninggalkan  masalah  keamanan  yang  besar  terutama  rentan  diserang  oleh  DDoS.  Penelitian  kali  ini  akan  membuat pendekteksian  sebuah  request  tertentu  merupakan  DDoS  atau  bukan.  Random  Forest  adalah  metode  pengembangan  dari Decision Tree untuk mengklasifikasikan suatu request atau paket data itu serangan atau bukan. Random Forest sebagai metode pengembangan dari metode sebelumnya menutupi kelemahan overfiting. Hasil dari penelitian kali ini adalah 98% untuk nilai akurasi.
Kata Kunci: DdoS; Random Forest; SDN; Deteksi; Akurasi
Abstract− Distributed Denial Service (DDoS) Attack is an attempt by an attacker to paralyze a network system by flooding it with  requests.  A  busy  system  can  cause  a  drop  in  performance  and  even  crash.  Software  Defined  Service  (SDN)  is  a  new paradigm in creating a network in a certain area. SDN, with all its advantages and flexibility in implementation, is attractive to implement, but still leaves  major security problems, especially being vulnerable to DDoS attacks. This research will detect whether a particular request is DDoS or not. Random Forest is a method for developing Decision Trees to classify whether a request  or  data  packet  is  an  attack  or  not.  Random  Forest  as  a  development  method  from  the  previous  method  covers  the weakness of overfitting. The results of this research were 98% for accuracy values.
Keywords : DoS; Random Forest; SDN; Detection; Accuracy

## 1. PENDAHULUAN
Keamanan  dalam  dunia  maya  adalah  sebuah  keharusan  yang  ada.  Data  sensitif  terkadang  bisa  dibobol  begitu mudahnya  oleh  tangan-tangan  tidak  bertanggung  jawab  karena  ketidakpedulian  kita  pada  keamanan  Sistem Informasi. Data yang mudah dibobol, sistem yang dibuat sibuk atau down merupakan masalah-masalah yang ada dalam keamanan di dunia Maya.
Software  Defined  Network  (SDN)  adalah  sebuah  konsep  baru  dalam  merencanakan,  mengelola, mengimplementasikan  jaringan,  terutama  dengan  kebutuhan  perubahan  dalam  sebuah  tata  kelola  jaringan  di sebuah perusahaan yang menuntut dinamis dan adaptif. Konsep dasar SDN [1] adalah memisahkan antara control dan forwarding plane.
SDN memiliki keunggulan yaitu penyediaan jaringan secara terpusat, sehingga membantu kosolidasi dalam mengatur  jaringan  secara  terpadu,  biaya  operasional  yang  rendah,  kepengaturan  lebih  utuh.  Namun  ditengah kemudahannya  ada  juga  yang  menjadi  kekurangannya  adalah  :  Membutuhkan  dana  ,  tenaga  yang  besar  untuk mengubah sistem yang existing kepada sistem SDN, Pegawai perlu ditraining untuk memahami SDN [2], Tools baru yang ada, dan Keamanan menjadi Issue yang kuat.
SDN  selain  dengan  segala  kemudahannya  namun  juga  menjadi  sasaran  empuk  untuk  terjadinya  DDoS (Distributed Denial of Service). DDoS merupakan bentuk serangan yang mengirimkan paket secara terus menerus kepada mesin atau jaringan komputer. DDoS bertujuan untuk membuat sistem sibuk dengan request yang diminta. Sistem akhirnya terasa lambat atau mungkin sampai tidak bisa diakses karena sibuknya [3].
Berbeda dengan jaringan konvensional dimana semua paket harus melewati firewall secara fisik terlebih dahulu  sebelum  masuk,  maka  jika  terhalang  firewall  maka  tidak  bisa  masuk.  Jaringan  SDN,  firewall  berada  di kontroler sehingga harus ada sumber daya yang dikonsumsi. Yang mengakibatkan DDoS dapat bekerja di jaringan SDN.
Kasus yang digali adalah klasifikasi paket data apakah berupa serangan atau bukan dengan menggunakan teknik  data  mining  [4].  Data  mining  kali  ini  dengan  menggunakan  Random  Forest  [5].  Random  Forest  dipilih karena secara umum memiliki Akurasi yang tinggi , lebih mampu menjabarkan dengan parameter yang banyak, dan tidak terjadi overfit dengan banyak features dibandingkan dengan metode Decision Tree.
Penelitian  ini  bertujuan  untuk  menemukan  model  dengan  menggunakan  metode  Random  Forest  dalam mendeteksi  sebuah  paket  data  yang  lewat  berupa  serangan  atau  bukan.  Harapannya  deteksi  ini  adalah  dapat meredam bahkan mentiadakan adanya kemungkinan DDoS. Penelitian ini sangat dibutuhkan oleh System Network Administrator  untuk  mengamankan  Sistem  Jaringan  yang  menggunakan  SDN  agar  lebih  aman  dari  serangan DDoS. DDdos akan terdeteksi oleh sistem ini sehingga tidak bisa menembus sistem SDN lebih lanjut. Perbedaan

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
dengan  riset  sebelumnya  adalah  dengan  menggunakan  metode  Random  Forest.  Penelitian  sebelumnya menggunakan metode Entropy [6].

## 2. METODOLOGI PENELITIAN

## 2.1 Tahapan Penelitian
Klasifikasi data dan informasi adalah pokok dari proses penelitian kali ini, adapun tahapan untuk klasifikasi data dan informasi adalah  [7]:

## Gambar 1. Alur Klasifikasi Data
Model  dalam  klasifikasi  adalah  sesuatu  yang  pokok.  Pencarian  model  yang  akurat  menjadi  keharusan. Model yang akurat dan cepat memprediksi data  sangat dibutuhkan. Model dipergunakan untuk mengklasifikasi data selanjutnya agar lebih cepat dan tepat karena selanjutnya menggunakan komputer. Kebutuhan akan proses data mining yang dikoputerisasi menjadi sebuah keharusan, karena banyaknya data sekarang yang bisa mencapai Tera Data per Day. Data yang dinasukan ke dalam data latih untuk mencapai model, harus dipastikan data yang dimasukan bersih, sudah ditransformsikan dan sesuai dengan kebutuhan model. Proses awal untuk memastikan data dalam keadaan siap digunakan adalah proses Preprocessing.
a. Preprocessing
Proses  yang  memastikan  data  dalam  keadaan  siap  dimasukan  dalam  data  latih.  Proses  ini  memastikan  data tidak ada duplikat, data sudah standar dan sudah di normaslisasi. Data yang belum siap akan mengakibatkan tidak tercapainya model yang diinginkan. Model yang diinginkan haruslah sesuai dengan keadaan sebenarnya klasifikasi data dan informasi pada data history [8].
b. Training
Model yang dicari adalah model yang sesuai dengan data latih. Klasifikasi sukses dilakukan manakala model yang didapat memiliki akurasi yang baik dalam keadaan training ataupun testing. Pencarian model disebut juga dengan proses Training.
c. Testing
Model yang sudah selesai dilatih dan memiliki akurasi latih tinggi di testing dengan data diluar data latih namun tetap menggunakan data asli  dari klasifikasi. Model yang  baik akan  mengeluarkan nilai akurasi  yang tinggi untuk proses ini sebaliknya jika model mengeluarkan hasil jelek maka model akurasinya tidak baik.

## 2.2 Metode
Lautan data yang ada dewasa ini merupakan harta karun yang bisa digali lagi menjadi informasi yang bermanfaat. Data mining adalah sebuah cara untuk mendapatkan harta karun informasi tersebut. Proses ini erat hubungannya dengan proses penambangan  mineral  yang dibutuhkan.  Ada beberapa proses  yang  wajib dilakukan dan bahkan beberapa  berat  yang  harus  dilakukan,  sehingga  mendapatkan  mineral  murni  yang  dibutuhkan,  proses  untuk mendapatkannya ialah [9] :
a. Data Cleaning , proses untuk membersihkan dari data-data yang tidak lengkap, duplikat atau data salah yang tidak mendukung terhadap pemurnian mendapatkan informasi. Proses ini adalah proses membuah semua hal yang tidak berhubungan dengan proses inti.
b. Data Integration , proses untuk menggabungkan data dari berbagai sumber, seperti internal data dan eksternal data baik berupa medsos, annual report Perusahaan lain dan website berita.
c. Data  Selection ,  proses  untuk  memilih  data  yang  berkesesuaian  dengan  maksud  informasi  yang  akan didapatkan, yaitu berupa parameter yang menunjang terhadap informasi.
d. Data Transformation , proses mengubah data menjadi satu bentuk yang sama sesuai kesepakatan.
e. Data Mining , proses untuk mendapatkan model yang diharapkan digunakan sebagai acuan memprediksi data lainnya dikemudian hari.
f. Pattern Evaluation , proses untuk mengevaluasi model yang didapat apakah mampu memberikan nilai akurasi yang baik dalam memprediksi data lain diluar data latihnya.
g. Knowledge Presentation . proses untuk memberikan tampilan yang memudahkan user untuk mengambil inti informasi dan digunakan untuk kepentingan tertentu.
Dalam  mencari  harta  karun  informasi  yang  berguna  diatas  adalah  langkah-langkah  baku  yang  harus ditempuh. Langkah tersebut dapat ditempuh semuanya atau melihat keadaan yang ada. Keadaaan yang ada adalah melihat sudah sebaik apa data yang diterima, jika sudah baik dan tidak harus ada proses cleaning, integration dan selection  maka  bisa  langsung  dilanjut  proses  berikutnya.  Langkah  diatas  bisa  menjadi  sebuah  ceklis  dalam penerapannya.  Fungsi  data  mining  memiliki  berbagai  lingkup  dalam  penelitian  ini  kita  akan  menggunakan classification  dalam  mendeteksi  adanya  serangan  atau  tidak,  selain  mendeteksi  juga  ada  proses  mitigasi  [10]. Perbedaannya adalah bagaimana di proses mitigasi digunakan model deteksi agar tidak ada yang kena serangan.
Preprocessing Training Testing

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928

## 2.3 Classification
Classification adalah proses untuk pengklasifikasian data, klasifikasi yang ada berdasarkan pengalaman atau bukti empiris yang ada. Proses klasifikasi data pada data mining adalah bagaimana proses klasifikasi ini dapat dilakukan dengan otomasi tanpa adanya campur tangan manusia. Proses otomasi yang dimaksud adalah dengan menemukan modelnya  terlebih  dahulu.  Model  didapat  dari  pelatihan  dengan  menggunakan  data  klasifikasi  yang  ada. Klasifikasi  yang  ada  biasanya  berupa  data  histori  sebelumnya.  Model  terbaik  hasil  pelatihan  digunakan  untuk memprediksi data yang belum ada label [9]. Metode klasifikasi Random Forest adalah salah satu metode yang ada digunakan dalam penelitian ini.

## 2.4 Decision Tree
Decision Tree adalah algoritma learning [11]. Algoritma ini outputnya adalah berupa pohon keputusan yang dibuat dari data yang ada. Struktur pohon seperti diagram alir keputusan, setiap simpul menunjukan tes pada simpul [12], setiap  cabang  memegang  peranan  arah  aliran  keputusan  dan  pada  node  daun  merupakan  kelas  label  dari  hasil keputusannya [9].
Gambar 2 . Sebuah Pohon Keputusan dengan konsep membeli komputer.
Dalam  mencari  pohon  keputusan  ada  cara  untuk  mendapatkannya.  Algoritma  untuk  mencari  pohon keputusan membutuhkan 3 parameter. Parameter tersebut adalah :
1. D, Kita menyebut D sebagai data partisi, berupa data set yang lengkap dengan baris-baris yang ada dan label kelas (label hasil keputusan) yang terkait.
2. List Atribut, List atribut adalah daftar atribut yang mengambarkan baris yang ada.
3. Atribut yang terseleksi, adalah metoda yang digunakan untuk proses seleksi atribut yang terbaik.

## 2.4.1 Attribute Selection Measures
Pemilihan Atribut untuk pohon keputusan menggunakan algoritma heuristik. Pemilihan tersebut digunakan untuk memilih  atribut  yang  terbaik.  Atribut  terbaik  dipisahkan  dari  D  dan  class-keputusan  menjadi  satu  atribut  yang terseleksi.

## 2.4.2 Information Gain
Information  Gain,  adalah  ukuran  untuk  menyeleksi  atribut  D  untuk  mendapatkan  yang  terbaik.  Setiap  node  N merepresentasikan baris-baris partisi D. Atribut diberikan nilai dengan rumus :
Info(D) =   − ∑ p ilog2(pi) m i=1 (1)
Sekarang,  misalkan  kita  membagi  baris-baris  di  D  pada  beberapa  atribut  A  yang  memiliki  nilai  yang berbeda {a 1 , a 2 , a 3 , … . a v } dengan  partisi  sebanyak  v,  seperti  yang  diamati  dari  data  pelatihan.  Jika  A  bernilai diskrit,  Nilai-nilai  ini  langsung  dapat  dipartisi  menjadi  D  dengan  himpunan  partisi {D 1 , D 2 , D 3 , … . D v } jumlah partisi  ini  akan  sesuai  dengan  cabang  yang  akan  tumbuh  dari  sumpul  tersebut.  Rumus  untuk  menghitung  nilai Information Gain untuk setiap partisi adalah :
Info A (D) =   ∑ |Dj| |D| v j=1 x Info(D j ) (2)
Information Gain didefinisikan sebagai perbedaan antara informasi yang original dan Kebutuhan yang baru. Adapun seberapa banyak yang dibutuhkan pada informasi yang ada dihitung dengan :
Gain(A) = Info(D) − Info A (D)
(3)

## 2.5 Random Forest
Random Forest dapat dianggap sebagai gabungan dari beberapa pohon keputusan (Decision Tree). Idenya adalah untuk  menggabungkan  hasil  prediksi  dari  setiap  pohon  dengan  melakukan  voting.  Ini  membantu  model  yang

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
dilatih menggunakan hutan acak untuk menggeneralisasi lebih baik dengan populasi yang lebih besar. Selain itu jadi tidak overfitting / varian tinggi. Berikut adalah langkah-langkahnya adalah [13] : 1. Ambil sampel acak ukuran N (pilih secara acak dengan pergantian - bootstrap)
2. Tumbuhkan pohon keputusan dari sampel yang ada dengan pertimbangan sebagai berikut :
a. Pilih M fitur secara acak dari semua fitur
b. Buat pohon dengan membagi data menggunakan fitur M berdasarkan fungsi objektif (memaksimalkan gain informasi)
3. Ulangi langkah -langkah di atas untuk jumlah k pohon seperti yang ditentukan.
4. Kumpulkan hasil prediksi dari pohon yang berbeda dan dapatkan prediksi akhir berdasarkan suara mayoritas atau rata-rata. Berikut Ilustrasi Algorritma Random Forest :
Many trees are created using random subsets of features and bootstrapped data
Text Each Tree votes by predicting target class Votes are tallied to reach the final prediction
Gambar 3. Ilustrasi Algoritma Random Forest [13]

## 2.6 Software Defined Networking
SDN  adalah  Software  Defined  Networking,  merupakan  manajemen  jaringan  yang  mengelola  semuanya  secara terpusat. Sistem ini dapat dengan  mudah  memberikan data  dan informasi berkenaan  masalah  yang terjadi pada hardware dan jaringan, karena semuanya terpentau secara terpusat.  SDN memiliki kecerdasan manajemen yang terpusat. Jaringan SDN memiliki pengontrol sebagai pusat kecerdasan untuk memberikan perintah dan data yang terjadi  sampai  pada  tahap  informasi,  karena  sudah  berupa  statistik  dan  analisis  [14].  Ini  menggunakan  API (antarmuka  pemrograman  aplikasi)  untuk  memprogram  jaringan  Anda  secara  cerdas  melalui  kontrol  terpusat. Perangkat  keras  yang  mendasari  (perangkat  jaringan)  dan  teknologi  terkait  masih  ada,  tetapi  kita  dapat memprogramnya  secara  terpusat.  Hasilnya,  Anda  dapat  mengelola  dan  memecahkan  masalah  seluruh  jaringan secara terus-menerus dan mudah dengan fleksibilitas dan kecepatan.

## 2.7 API (Application programming interface)
API adalah perangkat lunak di antara dua aplikasi dan dua komputer yang memungkinkan untuk berkomunikasi satu sama lain. API adalah sebuah protokol atau tatacara untuk saling memahaminya dua komputer atau aplikasi sehingga  terjalin  sebuah  atau  beberapa  kegiatan  yang  harmonis  sesuai  tujuan  yang  menugaskan.  API  biasanya berada pada aplikasi atau webserver. API kali ini menjadi interface atau jembatan antara aplikasi dan perangkat keras yang ada.

## 2.8 SDN Arsitektur
Aplikasi  SDN  adalah  program  yang  secara  jelas,  segera,  dan  terprogram  berkomunikasi  dengan  peralatan jaringannya  sesuai  kebutuhan  dan  jaringan  yang  diinginkan  ke  Pengontrol  SDN  melalui  API  (antarmuka pemrograman Aplikasi). Aplikasi memberikan tampilan yang memudahkan proses yang selama ini abstrak dengan adanya informasi dari setiap kontrol proses yang ada pada setiap bagian.
Pengontrol SDN adalah bagian yang menerima perintah dari SDN dan menjadi jembatan kepada perangkat keras dan jaringan yang ada. Pengontrol juga berfungsi untuk mendapatkan data dan informasi tentang kedaaan

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
perangkat keras dan jaringan terkini dan memberikan timbal balik ke aplikasi SDN. Informasi yang ada termasuk sudah mencangkup statistic dan kejadian penting yang terjadi.
SDN  Datapath:  –  Perangkat  jaringan  SDN  mengontrol  kemampuan  penerusan  dan  pemrosesan  data  untuk jaringan. Ini termasuk penerusan dan pemrosesan jalur data.
SD N A rc hi tec tu re SDN Orchestration Tools Business Applications APPLICATION PLANE Eg(OpenStack, CloudStack) SDN Controller CONTROL LAYER INFRASTRACTURE LAYER Netwok Devices Netwok Devices
Netwok Devices
Gambar 4. SDN Arsitektur [14]
Kontrol SDN ke Data-Plane Interface (CDPI): – SDN CDPI adalah antarmuka yang didefinisikan di antara SDN  Controller  dan  SDN  Datapath,  yang  menyediakan  setidaknya.  Kontrol  terprogram  dari  semua  operasi penerusan 1) Iklan kemampuan 2) Pelaporan statistik 3) Pemberitahuan acara 4) SDN Advantage or DisAdvantage

## 2.9 SDN Advantage
Penyediaan  jaringan  terpusat:  –  SDN  membantu  Anda  mengkonsolidasikan  manajemen  jaringan  Anda  dengan memberikan  perspektif  terpadu  di  seluruh  jaringan.  SDN  juga  dapat  mempercepat  pengiriman  layanan  dan meningkatkan ketangkasan dalam penyediaan perangkat jaringan virtual dan fisik di lokasi pusat [14].
Biaya pengoperasian yang lebih rendah: – Memiliki administrasi  yang mudah dan terawasi, optimalisasi server, dan monitoring yang lebih deskriptif, SDN menurunkan biaya operasional dan perawatan [15]. Otomasi, pengawasan, dan monitoring dilakukan terpusat, sehingga memudahkan dan memakan biaya yang kecil [16], [17].
Manajemen  perusahaan  holistik:  –  SDN  membantu  Anda  menyesuaikan  konfigurasi  perangkat  jaringan Anda tanpa berdampak pada jaringan Anda saat ini. Juga, tidak seperti Protokol Manajemen Jaringan Sederhana (SNMP), pengelolaan sakelar fisik dan virtual serta perangkat jaringan yang berasal dari pengontrol pusat.
Keamanan yang lebih terperinci: – Dengan menetapkan titik kontrol pusat untuk mengatur keamanan dan informasi  kebijakan  untuk  jaringan  perusahaan  Anda,  pengontrol  SDN  dengan  cepat  menjadi  keuntungan  bagi jaringan Anda.
Penghematan  perangkat  keras  dan  pengurangan  pengeluaran  modal:  –  Dengan  mengikuti  instruksi  dari pengontrol SDN, perangkat keras yang lebih tua dapat digunakan kembali sementara perangkat keras yang lebih murah dapat digunakan untuk efek yang optimal. Proses ini memungkinkan perangkat baru menjadi kotak putih [18].
Pengiriman  konten  yang  konsisten  dan  tepat  waktu:  –  Salah  satu  manfaat  terbesar  SDN  adalah kemampuannya untuk memanipulasi lalu lintas data. Penting untuk memiliki kualitas layanan Voice over Internet Protocol (VoIP) dan layanan transmisi multimedia jika Anda dapat mengarahkan dan mengotomatiskan lalu lintas data. SDN juga membantu Anda mengukus video berkualitas lebih tinggi.

## 2.10 Disadvantage of SDN
Kelemahan pada SDN adalah sebagai berikut [14] :
1. Diperlukan  perubahan  di  seluruh  infrastruktur  jaringan  untuk  mengimplementasikan  protokol  SDN  dan pengontrol SDN. Ini membutuhkan konfigurasi ulang jaringan yang lengkap. Ini meningkatkan biaya karena konfigurasi ulang.
2. Staf Perlu dilatih.
3. Alat manajemen baru perlu diadakan dan setiap orang harus dilatih untuk menggunakannya.

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
4. Keamanan adalah tantangan besar di SDN.

## 2.11 DDOS
Denial of Service (DoS) menyerang dengan membuat trafik agar sumber daya yang ada tidak tersedia lagi dengan tujuan tertentu .Beragam cara untuk menjadikan layanan tidak tersedia, yaitu dengan pemrograman, mengacaukan sumber daya, membuat program, atau membuat paket jaringan palsu. Layanan tidak akan tersedia lagi jika diserang dengan jumlah yang banyak karena menjadi busy, dengan cara yang sama juga jika kerentanan dalam membuat program diserang agar bisa menjadi down, dan lambat laun dapat menjadikan sumber daya yang digunakan akan boros [19].
Penyerang menyerang hal yang menjadi kelemahan disaat membuat program, memasukan kode tambahan dan  terbawa  dieksekusi  sesuai  keinginannnya.  Terkadang  tujuannya  juga  adalah  untuk  mendapatkan  informasi yang berharga baginya. Perintah tersebut juga dijalankan deserver dan dideteksi sebagai hal yang sah dan wajar. Serangan yang terus dan bertubi-tubi dapat dilakukan dan membuat pengguna yang sah tidak dapat melakukan layanan  sebagaimana  mestinya.  Penyerangan  tersebut  membuat  layanan  lambat  dan  delay  sehingga  membuat layanan terganggu dan berdampak pada bisa tidaknya sistem diakses dan digunakan [20], [21].

## 2.12 DDos pada SDN
Serangan Denial of Service (DoS) adalah metode penyerangan yang utamanya  untuk menghancurkan ketersediaan jaringan. Di dalam jaringan tradisional, perangkat  keras dan perangkat lunak berbasis aplikasi pada deteksi dan pertahanan  serangan  DDoS  mahal  dan  sulit  untuk  menyebarkan.  Software  Defined  Network  (SDN)  memiliki paradigma baru dalam jaringan. Di dalam SDN, Control Planes dan Data planes dipisahkan. Network intelligence and Network state berada dalam logika yang tersentralisasi. Infrastruktur jaringan adalah abtrak yang diatur pada dari aplikasi. Dalam SDN DDOS akan menyerang langsung dan dapat melumpuhkan. Pertahanan yang baik pada titik tertentu harus dilakukan untuk mengammankan jaringan dengan basis SDN [19].

## 2.13 Topologi Mininet
Mininet adalah emulator jaringan  yang dapat membuat jaringan virtual seperti aslinya  [22]. Mininet digunakan untuk membuat data latih dan data testing. Penelitian ini menggunakan satu controller Ryu dan tiga buah host yang berperan  sebagai  penyerang  dan  sebagai  korban.  IP  yang  dipakai  memiliki  rentang  192.168.0.1/24  sampai 192.168.0.8/24 [6].
Gambar 5. Topologi Mininet [6]

## 3. HASIL DAN PEMBAHASAN
Preprocessing  adalah  tahapan  pertama  dalam  penelitian  kali  ini.  Preprocessing  baik  dilakukan  sebelum  proses latih,  karena  proses  ini  akan  membuat  data  yang  relatif  rata  nilainya  tidak  ada  perbedaan  yang  mencolok. Perbedaan mencolok pada range data seringkali menjadikan tidak imbang kekuatan pengaruh antar tupple.

## 3.1 Preprocessing
Preprocessing adalah proses awal yang dilakukan sebelum melakukan training model. Preprocessing kali ini akan dilakukan  tiga  tahapan  yaitu  konversi  nilai  dari  string  ke  numerik,  normalisasi  dan  membuang  data  pencilan  / Outlier.
a. Perbaikan Data Duplikat
Data  yang  digunakan  diambil  dari  data  penelitian  M.  Teguh  Kurniawan.  Data  yang  ada  perlu  diperbaiki sebelum  diolah  untuk  menemukan  model  training.  Langkah  awal  adalah  untuk  menghapus  semua  data duplikasi.
H1 H2 H3 H5 H4 H6 H7 H8 Ryu Controller S1 S3 S2

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
Tabel 1. Hasil Data Preprocessing
Source Destination  Length Source Address Destination Address Source.1 Destination.1 ARP  ICMP  TCP  Info  label 10.0.123.3  10.0.123.2 204 10.0.0.19 10.0.0.12 0e:cd:eb:a0:85:4b  ae:7e:98:19:a6:4e 0 1 0 1 0 10.0.123.3  10.0.123.2 204 10.0.0.23 10.0.0.46 26:ed:57:4a:6a:84  1a:19:72:67:07:59 0 1 0 1 0 10.0.123.3  10.0.123.2 902 10.0.0.31 10.0.0.46 4a:7b:6b:b9:77:79  33:33:00:00:00:02 0 1 0 1 0 10.0.123.3  10.0.123.2 204 10.0.0.45 10.0.0.50 a6:ed:bf:be:a9:4b  32:f9:2c:60:94:4b 0 1 0 1 0 10.0.123.3  10.0.123.2 550 10.0.0.35 10.0.0.8 12:1e:67:d0:d7:dc  4a:20:1e:fb:1b:38 0 1 0 1 0 10.0.123.2  10.0.123.3 206 10.0.0.59 10.0.0.3 56:cf:f2:cd:c2:ed  06:ab:2b:87:45:6e 0 1 0 2 0 10.0.123.2  10.0.123.3 206 10.0.0.19 10.0.0.12 0e:cd:eb:a0:85:4b  ae:7e:98:19:a6:4e 0 1 0 2 0
Tabel 1 menjelaskan data  mentah dari hasil percobaan Ddos pada SDN. Beberapa yang dilihat dari source, destination,  protocol  dan  ujungnya  label  0  atau  1.  Nol  menyatakan  bukan  serangan  sedangkan  1  adalah serangan. Perbaikan pertama adalah dengan melakukan penghapusan data duplikat.
b. Transformasi Data
Transformasi Data dilakukan  untuk  mengubah asalnya bentuk IP atau Mac  Address  menjadi bentuk angka. Transformasi IP dan Mac dilakukan dengan menghilangkan titik. Transformasi selanjutnya untuk Mac adalah dengan mengubah basis 16 ke 10.

## Tabel 2. Hasil Transformasi Data
Source Destination Length Source Address Destination Address Source.1 Destination.1 ARP ICMP TCP Info label 1001233 1001232 204 100019 100012 1,62776E+13 1,91859E+14 0 1 0 1 0 1001233 1001232 204 100023 100046 4,28008E+13 2,86966E+13 0 1 0 1 0 1001233 1001232 902 100031 100046 8,18939E+13 5,62941E+13 0 1 0 1 0 1001233 1001232 204 100045 100050 1,8354E+14 5,60458E+13 0 1 0 1 0 1001233 1001232 550 100035 10008 1,99218E+13 8,15018E+13 0 1 0 1 0 1001232 1001233 206 100059 10003 9,54511E+13 7,33224E+12 0 1 0 2 0 1001232 1001233 206 100019 100012 1,62776E+13 1,91859E+14 0 1 0 2 0 1001232 1001233 206 100031 100046 2,18E+14 2,86966E+13 0 1 0 2 0
Tabel 2 menunjukan adanya transformasi data dari format IP dan Mac menjadi Numerik. Hal ini dibutuhkan untuk masuk kedalam model pelatihan agar sesuai dengan kebutuhan input data training.
c. Normalisasi Data
Normalisasi  Data  adalah  serangkaian  Upaya  untuk  mengubah  semua  nilai  dengan  jangkauan  yang  sama. Jangkauan  yang  sama  tersebut  diharapkan  akan  memberikan  efek  yang  lebih  adil  pada  setiap  atribut  untuk mempengaruhi label hasil.
Tabel 3. Hasil dari Normalisasi Data 0 1 2 3 4 5 6 7 8 9 6.66E-11 0.9999988904 0.008153846154 3.92E-07 0.9994670161 0.0498960797 0.6737498165 0 1 0 6.66E-11 0.9999988904 0.008153846154 3.92E-07 0.9998445464 0.1488066201 0.07975388144 0 1 0 6.66E-11 0.9999988904 0.06184615385 3.92E-07 0.9998445464 0.2945929069 0.1802234288 0 1 0 6.66E-11 0.9999988904 0.008153846154 3.92E-07 0.9998889617 0.673651999 0.1793192549 0 1 0 6.66E-11 0.9999988904 0.03476923077 3.92E-07 7.77E-05 0.06348610489 0.2719926387 0 1 0 0 1 0.008307692308 3.92E-07 2.22E-05 0.3451504119 0.001976399103 0 1 0 0 1 0.008307692308 3.92E-07 0.9994670161 0.0498960797 0.6737498165 0 1 0 0 1 0.008307692308 3.92E-07 0.9998445464 0.8021612111 0.07975388144 0 1 0 0 1 0.008307692308 3.92E-07 0 1 0.1914701514 0 1 0
Tabel 3 menjelaskan hasil dari Normalisasi data yang dilakukan terhadap data sebelumnya. Normalisasi data dilakukan pada jangkauan [0,1].
3.2 Training
Proses Training adalah proses latih dengan melibatkan beberapa hyperparameter untuk memperoleh model yang memiliki  nilai  akurasi  tertinggi.  Proses  Training  kali  ini  ingin  melihat  skenario  yang  berbeda-beda  terhadap beberapa parameter training yaitu : Max_depth, dan Min_Samples_leaf, sedangkan untuk criterion hanya melihat pada entropy. Berikut Skenario yang dilakukan pada Hyper Parameter tersebut :

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
Gambar 6 adalah setting Hyperparameter. Setting Hyperparameter adalah untuk menemukan model terbaik di proses training. Model terbaik disandarkan pada nilai  accuracy (mean_test_score). Berikut hasil dari training data yang ada terhadap model dengan menggunakan metode Random Forest :
Tabel 4. Hasil Training dengan 25 Skenario
Indeks param_criterion param_max_depth param_min_samples_leaf
mean_test_score rank_test_score 0 entropy 2 5 0.7712650612162125 21 1 entropy 2 10 0.7712650612162125 21 2 entropy 2 20 0.7711952653733134 23 3 entropy 2 50 0.7708114734433147 25 4 entropy 2 100 0.7709161306908291 24 5 entropy 3 5 0.782359800613215 17 6 entropy 3 10 0.782359800613215 17 7 entropy 3 20 0.7821155334214849 20 8 entropy 3 50 0.7821155699383193 19 9 entropy 3 100 0.7830924865517628 16 10 entropy 5 5 0.8883887664966321 11 11 entropy 5 10 0.8878306431990012 13 12 entropy 5 20 0.8881445175633192 12 13 entropy 5 50 0.8873420783848458 14 14 entropy 5 100 0.8858417903278835 15 15 entropy 10 5 0.9472124387536608 9 16 entropy 10 10 0.9479101963400638 8 17 entropy 10 20 0.9483637962852398 7 18 entropy 10 50 0.9489570183469098 6 19 entropy 10 100 0.9450841950393342 10 20 entropy 20 5 0.9720886801586632 2 21 entropy 20 10 0.9727863768836753 1 22 entropy 20 20 0.9706930615214933 3 23 entropy 20 50 0.9617614089850159 4 24 entropy 20 100 0.9491314836096014 5
Tabel 4 menjelaskan hasil accuracy dari setiap setting hyperparameter. Secara umum parameter max_depth memiliki pengaruh dalam peningkatan accuracy. Semakin besar nilai max_depth maka akan memiliki accuracy yang lebih baik. Sedangkan parameter  min_samples_leaf tidak terlalu berpengaruh signifikan terhadap akurasi. Percobaan dengan index 21 menjadi yang dipilih karena memiliki accuracy paling tinggi. Adapun untuk analisis lebih lanjut mengenai model yang diperoleh pada index 21 dapat melihat gambar berikut :

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
Precision Score adalah Nilai  True positif dibagi total bernilai True. Nilai True diperlihatkan pada  kotak yang bernilai 225 dan 11441. Semakin tinggi Nilai Precision Score maka akan mempengaruhi prediksi pada nilai True. Pada kasus ini nilai precision score dan nilai lainnya tidak terlalu berbeda sehingga lebih sama, sedangkan nilai  false-negatif  sebenarnya  relatif  lebih  riskan  karena  ada  yang  memang  aktualnya  adalah  Ddos  namun terdeteksi  bukan,  maka  sistem  dapat  meloloskan  dengan  begitu  saja  serangan.  Nilai  recall  adalah  menunjukan seberapa  riskan  sistem  ini  dalam  memprediksi,  karena  mengandung  False-Negatif,  semakin  tinggi  nilai  recall semakin aman dalam memprediksi karena menunjukan False-Negatif yang kecil. Pada kasus ini harapannya model memiliki nilai Recall tinggi karena akan fatal jika ada Ddos namun dideteksi bukan, namun jika sebaliknya maka tidak terlalu berimbas. F1-Score adalah nilai balancing antara Precision Score dan Recall. F1-Score menilai seluruh model semakin menuju 1 maka model dikatakan baik sebaliknya jika munuju 0 maka makin jelek. Kasus ini nilai dikatakan baik karena nilai 0.98 atau mendekati nilai 1.

## 3.3 Testing
Testing adalah proses untuk menguji model yang didapat pada proses data mining. Proses ini ingin mengetahui model yang didapat baik atau tidak. Awalnya proses ini memasukan data input kepada model lalu membandingkan dengan  data  kenyataannya,  model  didapat dengan  menggunakan  metode  Random  Forest.  Berikut  gambar  yang menjelaskan hasil dari percobaan tersebut :
Gambar 8. Precision, Recall and F1-Score Testing
Gambar 8 adalah hasil dari testing menggunakan model yang memiliki akurasi terbaik. Hasil dari model yang di testing dengan data test menunjukan hasil yang baik. Accuracy menunjukan di angka 0.98. Nilai F-1 juga menunjukan angka 0.98 yang berarti ada nilai stabil antara nilai precision yang mengukur adanya false positif dan recall pada false negative. Nilai false negative pada kasus ini disebut tidak baik karena serangan dideteksi sebagai bukan serangan yang dapat berakibat fatal, beda halnya dengan fase positive yang menyatakan bukan serangan disebut sebagai serangan akibatnya tidak terlalu besar.

## 4. KESIMPULAN
Penelitian  kali  ini  adalah  untuk  mendeteksi  dan  mitigasi  serangan  Ddos  pada  Jaringan  SDN.  Penelitian  ini menggunakan data dari M. Teguh Kurniawan berupa data Disertasi serangan Ddos pada jaringan SDN. Penelitian kali ini kami mencoba menggunakan metode Random Forest. Metode Random Forest memberikan akurasi sebesar 98%  pada  data  latih  dan  data  training.  Skenario  terbaik  ada  di  index  21,  dimana  nilai  max_depth  20  dan

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i1.6928
min_samples_leaf 10. Model dengan Accuracy terbaik ini dicobakan ke data test dan menghasilkan accuracy yang sama yaitu 98%.

## REFERENCES
[1] Z.  Yang  and  K.  L.  Yeung,  “Sdn  candidate  selection  in  hybrid  ip/sdn  networks  for  single  link  failure  protection,” IEEE/ACM Trans. Netw., vol. 28, no. 1, pp. 312–321, 2020.
[2] X.  Zuo,  X.  Pang,  P.  Zhang,  J.  Zhang,  T.  Dong,  and  P.  Zhang,  “A  security-aware  software-defined  IoT  network architecture,” 2020 IEEE Comput. Commun. IoT Appl. ComComAp 2020, 2020.
[3] A. O. Sangodoyin, M. O. Akinsolu, P. Pillai, and V. Grout, “Detection and Classification of DDoS Flooding Attacks on Software-Defined Networks: A Case Study for the Application of Machine Learning,” IEEE Access, vol. 9, pp. 122495– 122508, 2021.
[4] Ismail et al., “A Machine Learning-Based Classification and Prediction Technique for DDoS Attacks,”  IEEE Access, vol. 10, pp. 21443–21454, 2022.
[5] M.  S.  El  Sayed,  N.  A.  Le-Khac,  M.  A.  Azer,  and  A.  D.  Jurcut,  “A  Flow-Based  Anomaly  Detection  Approach  With Feature Selection Method Against DDoS Attacks in SDNs,” IEEE Trans. Cogn. Commun. Netw., vol. 8, no. 4, pp. 1862– 1880, 2022.
[6] M.  T.  Kurniawan,  “PENGEMBANGAN  METODE  ENTROPY  UNTUK  DETEKSI  SERANGAN  DISTRIBUTED DENIAL  OF  SERVICE  (DDoS)  PADA  SOFTWARE  DEFINED  NETWORK  (SDN)  DENGAN  PENERAPAN METODE FEATURE SELECTION.” Universitas Indonesia, Jakarta, pp. 1–77, 2022.
[7] A. Ekawijana, A. Bakhrun, and Z. Arsyad, “Deteksi Dini Anak Disleksia dengan metode Support Vector Machine,” vol. 4, no. September, pp. 217–224, 2022.
[8] E.  Prasetyo,  Data  Mining,  Mengolah  Data  Menjadi  Informasi  Menggunakan  Matlab,  1st  ed.  Yogyakarta:  Andi Yogyakarta, 2014.
[9] J. Han, M. Kamber, and J. Pei, Data mining: Data mining concepts and techniques. 2012.
[10]  M. T. Kurniawan and S. Yazid, “Mitigation and Detection Strategy of DoS Attack on Wireless Sensor Network Using Blocking Approach and Intrusion Detection System,” 2nd Int. Conf. Electr. Commun. Comput. Eng. ICECCE 2020, no. June, pp. 1–5, 2020.
[11]  C. H. Hsu, “Optimal Decision Tree for Cycle Time Prediction and Allowance Determination,” IEEE Access, vol. 9, pp. 41334–41343, 2021.
[12]  G. Seeja, A. S. A. Doss, and V. B. Hency, “A Novel Approach for Disaster Victim Detection Under Debris Environments Using Decision Tree Algorithms With Deep Learning Features,” IEEE Access, vol. 11, no. June, pp. 54760–54772, 2023.
[13]  A.  Kumar,  “Random  Forest  Classifier  Python  Example,”  Data  Analytics,  2023.  [Online].  Available: https://vitalflux.com/random-forest-classifier-python-code-example/.
[14]  Zindagi, “What are the Advantages, Disadvantages, and Architectural Components of SDN?,” Zindagi Technol., 2022.
[15]  S.  S. Patra,  R.  Govindaraj,  S.  Chowdhury,  M.  A.  Shah,  R.  Patro,  and  S.  Rout,  “Energy  Efficient  End  Device  Aware Solution Through SDN in Edge-Cloud Platform,” IEEE Access, vol. 10, no. October, pp. 115192–115204, 2022.
[16]  M. Paliwal and K. K. Nagwanshi, “Effective Flow Table Space Management Using Policy-Based Routing Approach in Hybrid SDN Network,” IEEE Access, vol. 10, pp. 59806–59820, 2022.
[17]  A. Javadpour, F. Ja’fari, T. Taleb, M. Shojafar, and B. Yang, “SCEMA: An SDN-Oriented Cost-Effective Edge-Based MTD Approach,” IEEE Trans. Inf. Forensics Secur., vol. 18, pp. 667–682, 2023.
[18]  C. Miranda, G. Kaddoum, A. Boukhtouta, T. Madi, and H. A. Alameddine, “Intrusion Prevention Scheme Against Rank Attacks  for Software-Defined Low Power IoT Networks,”  IEEE Access, vol. 10, no. December, pp. 129970–129984, 2022.
[19]  L. Yang and H. Zhao, “DDoS attack identification and defense using SDN based on machine learning method,” Proc. - 2018 15th Int. Symp. Pervasive Syst. Algorithms Networks, I-SPAN 2018, pp. 174–178, 2019.
[20]  H. Yang, H. Pan, and L. Ma, “A Review on Software Defined Content Delivery Network: A Novel Combination of CDN and SDN,” IEEE Access, vol. 11, no. March, pp. 43822–43843, 2023.
[21]  Q.  Guo  et  al.,  “SDN-Based  End-to-End Fragment-Aware  Routing  for  Elastic  Data Flows  in  LEO Satellite-Terrestrial Network,” IEEE Access, vol. 7, pp. 396–410, 2019.
[22]  M. D. Ramdhani, B. Sugiarto, and A. Rukmana, “Jurnal FUSE – Teknik Elektro Simulasi Jaringan SDN menggunakan controller RYU Pada Mininet Dengan 5 Topologi Jaringan SDN Network Simulation using RYU controller on Mininet With 5 Network Topologies,” vol. 1, no. 2, pp. 101–110, 2021.