JENIS DAN JENIS KONTROLER OPENFLOW

BAB I
PENDAHULUAN
1.1. Latar Belakang
Jaringan komunikasi saat ini dirancang di sekitar mekanisme asli Ethernet dan
TCP / IP. Karena keberhasilan teknologi awal, jaringan tumbuh lebih besar dan lebih
kompleks, yang menyebabkan kebutuhan untuk pilihan kontrol yang lebih kompleks,
seperti VLAN, ACL dan Firewall.
Berbagai peralatan jaringan yang heterogen dikenal sebagai middleboxes
(firewalls, load balancers, IDS, optimizers, dan sebagainya) masing-masing menerapkan
kontrol tersendiri bawaan pabrik dan menyediakan antarmuka manajemen bergantung
vendor dalam bentuk CLI, antarmuka web, atau protokol manajemen. Komunikasi
timbal balik ditangani oleh protokol kompleks lainnya seperti Spanning Tree, Shortest
Path Bridging, Border Gateway, atau serupa. Setiap komponen tambahan sehingga
meningkatkan kompleksitas dan mempersulit manajemen jaringan terpadu. Konsekuensi
sering pemanfaatan jaringan rendah, pengelolaan yang buruk, kurangnya pilihan kontrol
dalam konfigurasi lintas jaringan, dan vendor lock-in.
Salah satu jalan keluar dari dilema ini adalah Software Defined Networks (SDN)
dan OpenFlow. OpenFlow adalah Open Networking Foundation (ONF) protokol standar
yang memiliki rincian arsitektur switching yang kompleks, cepat dan efisien. Hari ini,
OpenFlow menawarkan antarmuka kontrol terbuka yang kini diimplementasikan dalam
perangkat keras oleh semua produsen komponen jaringan utama. Beberapa vendor

bahkan menawarkan software switch (controller) yang mendukung pusat data virtual.
OpenFlow juga mendukung konsep memisahkan data (data plan) dan jalur
control (controller), yang memungkinkan titik kontrol pusat mengawasi berbagai
komponen jaringan OpenFlow. SDN kontroler bahkan bisa menjadi aplikasi terdistribusi
untuk menyediakan keamanan tambahan, toleransi kesalahan, atau load balancing.
1.2. Tujuan Penulisan
Tujuan dari penulisan makalai ini adalah
1.2.1

Sebagai prasyarat pengganti nilai kuis 1 matakuliah Jaringan Komputer 3.

1.2.2

Mengetahui jenis-jenis controller untuk arsitektur SDN OpenFlow.
1

1.2.3

Mengetahui cara instalasi controller dalam jaringan SDN OpenFlow.


1.3. Ruang Lingkup
Adapun ruang lingkup atau permasalahan yang akan dibahas dalam makalah ini, yaitu:
1.3.1 Jenis-jenis kontroler SDN OpenFlow.
1.3.2 Instalasi masing-masing Kontroler SDN OpenFlow.
1.4. Sumber Data
Tinjauan pustaka tentang Jenis-jenis kontroler SDN OpenFlow dari literatur dan
internet.
1.5. Metode
Metode yang digunakan dalam penulisan makalah ini adalah dengan menggunakan
metode tinjauan dari beberapa sumber yang menyajikan pembahasan mengenai
kontroler SDN OpenFlow.

2

BAB II
PEMBAHASAN
2.1 Jenis-jenis Kontroller SDN OpenFlow
2.1.1

NOX dan POX

NOX adalah bagian dari Software Defined Networking ekosistem. Secara
khusus, adalah platform untuk membangun aplikasi jaringan kontrol. Bahkan,
sementara apa yang sekarang kita sebut SDN tumbuh dari sejumlah proyek akademik
(mungkin terutama SANE dan Etana), teknologi SDN pertama yang mendapatkan
pengakuan nama aslinya adalah OpenFlow, dan NOX awalnya dikembangkan di
Nicira Networks bersamaan dengan OpenFlow. NOX adalah kontroler OpenFlow
pertama. Nicira disumbangkan NOX untuk komunitas riset pada tahun 2008, dan
sejak itu, telah menjadi dasar bagi banyak dan berbagai proyek penelitian dalam
eksplorasi awal ruang SDN.

Gambar 2.1 Tampilan pengoperasian NOX

POX adalah adik NOX. Pada intinya, itu adalah platform untuk pengembangan
cepat dan prototyping perangkat lunak kontrol jaringan menggunakan Python.
Artinya, pada tingkat yang sangat dasar, itu salah satu dari semakin banyak kerangka
kerja untuk membantu Anda menulis controller OpenFlow. Selain sebagai kerangka
kerja untuk berinteraksi dengan switch OpenFlow, kita menggunakannya sebagai
dasar untuk beberapa pekerjaan berkelanjutan untuk membantu membangun disiplin
yang muncul dari Software Defined Networking. Digunakan untuk mengeksplorasi
3


dan distribusi prototipe, SDN debugging, virtualisasi jaringan, desain controller, dan
pemrograman model.

Gambar 2.2 Tampilan Graphic User Interface dari POX
2.1.2

SNAC
SNAC merupakan open source kontroler OpenFlow yang terbuka untuk LAN
dengan antarmuka pengguna grafis dan bahasa definisi kebijakan. Hal ini
memungkinkan konfigurasi jaringan menggunakan bahasa pemodelan formal (FML).
SNAC dibangun sebagai modul dari NOX namun memerlukan versi bercabang dari
kontroler dasar. SNAC didistribusikan di bawah GNU Public License.

Gambar 2.3 Tampilan SNAC
4

2.1.3

BEACON

Beacon telah dikembangkan sejak awal 2010, dan telah digunakan dalam
beberapa proyek penelitian, kelas jaringan, dan penyebaran sidang. Beacon saat ini
kekuatan 100-vswitch, switch 20-fisik data eksperimen pusat dan telah berjalan
selama berbulan-bulan tanpa downtime. Beacon ditulis di Jawa dan berjalan pada
banyak platform, dari high-end server multi-core Linux untuk ponsel Android.
Beacon dilisensikan kombinasi dari GPL v2 lisensi dan Stanford University FOSS
License Exception v1.0 berlisensi.
Code bundles di Beacon dapat dimulai / berhenti / refresh / dipasang di
runtime, tanpa mengganggu bundel non-dependent lain (yaitu menggantikan Anda
berjalan Belajar aplikasi Transfer tanpa memutuskan switch). Beacon mudah untuk
bangun dan berjalan. Beacon dibangun di atas kerangka Java yang matang seperti
Spring dan Equinox (OSGi)

2.1.4

TREMA
Trema adalah kerangka penuh stack untuk mengembangkan kontroler
OpenFlow di Ruby dan C.

Gambar 2.4 Tampilan beris kode dalam kontroler OpenFlow Trema


5

2.1.5

MAESTRO
Maestro adalah "sistem operasi" untuk merancang aplikasi jaringan kontrol.
Maestro menyediakan antarmuka untuk mengimplementasikan aplikasi kontrol
jaringan modular untuk mengakses dan memodifikasi keadaan jaringan, dan
mengkoordinasikan interaksi mereka. Maestro adalah platform untuk mencapai
fungsi kontrol jaringan otomatis dan program menggunakan aplikasi ini modular.
Meskipun proyek ini berfokus pada membangun OpenFlow kontroler menggunakan
Maestro. Maestro tidak hanya terbatas pada jaringan OpenFlow. Kerangka
pemrograman Maestro menyediakan antarmuka untuk:
a. Memperkenalkan fungsi kontrol disesuaikan baru dengan menambahkan
komponen kontrol termodulasi.
b. Mempertahankan negara jaringan atas nama komponen kontrol.
c. Menyusun komponen kontrol dengan menentukan urutan eksekusi dan
negara jaringan bersama komponen.
Selain itu, Maestro mencoba untuk mengeksploitasi paralelisme dalam satu

komputer untuk meningkatkan kinerja throughput sistem. Fitur dasar jaringan
OpenFlow adalah bahwa controller bertanggung jawab untuk pembentukan awal
setiap aliran ini dengan menghubungi switch terkait. Dengan demikian kinerja
controller bisa menjadi hambatan. Dalam merancang Maestro kami mencoba untuk
meminta sedikit usaha dari programmer mungkin untuk mengelola parallelization
tersebut.

Sebaliknya

Maestro

menangani

sebagian

besar

pekerjaan

yang


membosankan dan rumit mengelola distribusi beban kerja dan pekerja benang
penjadwalan.
2.1.6

FLOODLIGHT
Floodlight open SDN Controller adalah OpenFlow kontroler kelas enterprise,
Apache-lisensi, berbasis Java. Hal ini didukung oleh komunitas pengembang
termasuk sejumlah insinyur dari Big Beralih Networks.
OpenFlow adalah standar terbuka yang dikelola oleh Open Networking
Foundation. Ini menentukan protokol melalui switch remote kontrol dapat
memodifikasi perilaku perangkat jaringan melalui didefinisikan dengan baik "set
6

instruktion forwarding". Floodlight dirancang untuk bekerja dengan meningkatnya
jumlah switch, router, switch virtual, dan jalur akses yang mendukung standar
OpenFlow. Beberapa fitur yang ditawarkan Floodlight:
a. Menawarkan sistem modul beban yang membuatnya sederhana untuk
memperluas dan meningkatkan.
b. Mudah untuk mengatur dengan dependensi minimal

c. Mendukung berbagai switch OpenFlow virtual dan fisik.
d. Dapat menangani OpenFlow dan non-OpenFlow jaringan campuran dapat
mengelola beberapa "islands" dari OpenFlow switch hardware.
e. Dirancang untuk menjadi kinerja tinggi - adalah inti dari produk komersial
dari Big Beralih Networks.
f. Dukungan untuk OpenStack (link) platform awan orkestrasi

Gambar 2.5 Tampilan Graphic User Interface dari Floodlight
7

2.1.7

OPENDAYLIGHT
OpenDaylight

adalah

sebuah

platform


terbuka

untuk

jaringan

programmability mengaktifkan SDN dan NFV untuk jaringan di setiap ukuran dan
skala. Rilis kedua "Helium" hadir dengan antarmuka pengguna baru dan lebih
sederhana dan disesuaikan proses instalasi berkat penggunaan wadah Apache Karaf.
Bagi mereka yang mencari untuk mengelola jaringan mereka menggunakan
OpenDaylight, ada integrasi lebih dalam dengan OpenStack, termasuk perbaikan
yang signifikan dalam proyek Integrasi database Terbuka vSwitch, dan preview
teknologi fitur OpenStack canggih seperti Security Groups, Distributed Virtual
Router dan Load Balancing as a Service.
Software OpenDaylight adalah kombinasi dari komponen termasuk controller
sepenuhnya pluggable, interface, protokol plug-in dan aplikasi. Dengan platform
bersama ini baik pelanggan dan vendor bisa berinovasi dan berkolaborasi untuk
mengkomersialkan solusi SDN dan NFV berbasis.


Gambar 2.6 Tampilan OpenDaylight saat dijalankan

8

2.2 Instalasi Kontroller SDN OpenFlow
2.2.1

NOX dan POX
2.2.1.1 Instalasi NOX
Instalasi NOX menggunakan code dalam Bahasa C.

Ini mungkin memakan waktu (20 menit), sehingga Anda disarankan untuk
melakukan hal ini di muka jika Anda berencana untuk menggunakan NOx
klasik. Semakin tua Mininet 1.0 VM termasuk NOX klasik.
Kami tidak akan menggunakan controller referensi lagi, yang berjalan di
latar belakang (melakukan 'ps -A | grep controller' jika Anda tidak yakin).
Pastikan controller referensi yang digunakan sebelum tidak berjalan,
sehingga NO dapat menggunakan port 6633.
2.2.1.2 Instalasi POX
Mengunduh kode POX dari repositori POX di github ke Virtual Machine:

2.2.2

SNAC
Download biner SNAC pada dedicated server. SNAC biner mengharuskan
Anda memiliki sistem Debian (Paket dibangun pada Debian Lenny stabil)
Menginstal dependensi yang diperlukan
$ Sudo apt-get pembaruan
$ Sudo apt-get install openssl libboost-test1.34.1 libboost-filesystem1.34.1 libboostserialization1.34.1 \
libxerces-C28 python2.5 python-memutar python-simplejson python-mako pythonopenssl tmpreaper

9

Unzip dan Instal binari
$ Tar xvfz snac_packages.tar.gz
$ Sudo dpkg -i * .deb
Setelah itu menginstal SNAC, Anda perlu mengkonfigurasi instalasi dengan
mengedit / etc / default / noxcore untuk menambahkan baris ini:
OF_LISTEN = "- i ptcp: 8888"
WWW_LISTEN_PORT = "80"
Mulai SNAC dengan menjalankan perintah
"sudo /etc/init.d/noxcore restart".
Kunjungi https: // kontroler-IP-address / dan login sebagai "admin" tanpa
password. Semua switch baru akan muncul dalam daftar switch sebagai "tidak
terdaftar". Anda harus mendaftarkan masing-masing dengan mengklik "Register
Beralih", setelah itu mereka mulai menjadi switch menggunakan SNAC.

Gambar 2.7 Tampilan pengeditan Switch pada SNAC

10

2.2.3

BEACON
Persiapan
a. Jalankan Eclipse dengan menjalankan gerhana eksekusi dalam
/beacon-tutorial-1.0.2/eclipse/
b. File -> Switch Workspace -> Other, pick a new folder to host the workspace
c. Set Eclipse's compliance level to 1.6
d. Window (atau Eclipse untuk MAC) -> Preferences -> Java -> Compiler
kemudian di bawah JDK Kepatuhan, tingkat kepatuhan Compiler perubahan
menjadi 1,6.
e. Impor Beacon dan OpenFlowJ proyek
f. File -> Import -> General -> Existing Projects ke Workspace, Pilih
/beacon-tutorial-1.0.2/beacon-tutorial-1.0.2/src sebagai direktori root, klik
ok, lalu pilih semua proyek , memastikan proyek salinan ke ruang kerja tidak
diperiksa dan klik finish.
g. Buka proyek Beacon Main Target, klik dua kali file utama-local.target.
h. Klik tetapkan sebagai target platform di sudut kanan atas jendela main.target.
Tunggu beberapa detik, pada saat ini semua kesalahan kompilasi harus pergi.
i. Impor pengaturan gaya kode Beacon
j. Klik Window -> Preferences. Kemudian pada kolom sebelah kiri klik Java ->
Kode Gaya -> Formatter, kemudian klik tombol Import, dan pilih /
beacon-tutorial-1.0.2/src/beacon-1.0.2/beacon_style_settings.xml dan tekan
ok , kemudian memastikan profil aktif adalah Beacon.

2.2.4

TREMA
Pastikan bahwa Anda memiliki akses Internet:

Jalankan untuk setiap antarmuka tanpa IP yang ditetapkan, menggantikan ethX yang
diperlukan:

11

Instal prereqs:

2.2.5

MAESTRO
Download file image VM. Kemudian pada mesin host, jalankan:

Instal vmplayer. Anda harus mendaftar untuk versi evaluasi. Sebagai contoh, untuk
versi 32bit Ubuntu, Anda akan men-download file bernama "VMware-Pemain-3.1.3324285.i386.bundle". Kemudian tambahkan mengeksekusi izin untuk file ini
dengan:

Kemudian, jalankan file dengan:

Ubah direktori ke direktori image dan mulai mesin virtual dengan:

Baik username dan password adalah "OpenFlow". Setelah sepatu mesin virtual,
Anda akan mendapatkan jendela untuk mesin virtual dengan terminal shell berjalan.
Jalankan:

untuk mendapatkan alamat IP mesin virtual. Sebagai contoh, Anda akan
mendapatkan sesuatu seperti "192.168.212.128". Ini akan menjadi alamat IP yang

12

Anda gunakan SSH untuk terhubung ke mesin virtual ini dari mesin host lokal,
berdasarkan:

Di dalam seperti terminal SSH terhubung ke mesin virtual (atau asli windowed
terminal mesin virtual), mulai topologi jaringan menggunakan mininet oleh:

2.2.6

FLOODLIGHT
Download file floodlight pada halaman resmi floodlight dengan alamat halaman
sebagai berikut http://www.projectfloodlight.org/download/
Lakukan instalasi JDK jika belum ternstall dalam komputer.
Kemudian jalankan ComanPromt ( cmd ) :
Cd drive
Cd nama_folder_penyimpanan_file_image_floodlight
Kemudian jalankan floodlight dengan menggunakan perintah :
Java –jar floodlight.jar

13

BAB III
PENUTUP
3.1 Kesimpulan
Dari Paparan atau penjelasan di atas, maka penulis dapat menyimpulkan bahwa
sesuai dengan makalah “Jenis-Jenis Kontroler Openflow ” penulis menyimpulkan bahwa
terdapat banyak kontroler OpenFlow yang ada di pasaran. Pada setiap kontroler memiliki
ciri khas tersendiri dimulai dari Bahasa pemrograman yang digunakan, platform yang
digunakan hingga pada virtual machine yang dapat digunakan. Pada dasarnya hamper semua
kontroler OpenFlow memiliki fungsi yang sama yakni sebagai pusat pengaturan konfigurasi
dan semagai remote terhadap perangkat dalam jaringan yang sudah menerapkan konsep
SDN OpenFlow.

14

DAFTAR PUSTAKA

Azodolmolky, Siamak. 2013.

Software Defined Networking with OpenFlow.

Birmingham, UK : Packt Publishing Ltd
http://yuba.stanford.edu/~casado/of-sw.html, diakses pada: 19 Oktober 2014 pukul 20.00
WIB
http://www.openflowhub.org/display/Snac/SNAC+Home, diakses pada: 20 Oktober 2014
pukul 13.00 WIB
http://www.opendaylight.org/, diakses pada: 20 Oktober 2014 pukul 13.00 WIB
http://trema.github.io/trema/, diakses pada: 20 Oktober 2014 pukul 13.00 WIB
http://www.projectfloodlight.org/floodlight/, diakses pada: 20 Oktober 2014 pukul 13.00
WIB
http://code.google.com/p/maestro-platform/, diakses pada: 20 Oktober 2014 pukul 13.00
WIB
http://www.noxrepo.org/nox/about-nox/, diakses pada: 20 Oktober 2014 pukul 13.00
WIB
http://www.noxrepo.org/pox/about-pox/, diakses pada: 20 Oktober 2014 pukul 13.00
WIB
http://archive.openflow.org/wp/deploy-production-controllersetup/, diakses pada: 21
Oktober 2014 pukul 16.00 WIB
http://archive.openflow.org/wk/index.php/OpenFlow_Tutorial, diakses pada: 21 Oktober
2014 pukul 16.00 WIB
http://archive.openflow.org/wk/index.php/
OpenFlow_Tutorial#Controller_Choice:_NOX_w.2FPython, diakses pada: 21
Oktober 2014 pukul 16.00 WIB
http://archive.openflow.org/wk/index.php/
OpenFlow_Tutorial#Controller_Choice:_POX_.28Python.29, diakses pada: 21
Oktober 2014 pukul 16.00 WIB
http://archive.openflow.org/wk/index.php/
OpenFlow_Tutorial#Controller_Choice:_Beacon_.28Java.29, diakses pada: 21
Oktober 2014 pukul 16.00 WIB
15

http://archive.openflow.org/wk/index.php/
OpenFlow_Tutorial#Controller_Choice:_Floodlight_.28Java.29, diakses pada:
21 Oktober 2014 pukul 16.00 WIB
http://archive.openflow.org/wk/index.php/
OpenFlow_Tutorial#Controller_Choice:_Trema_.28Ruby.29, diakses pada: 21
Oktober 2014 pukul 16.00 WIB

16