BAB II
LANDASAN TEORI
2.1 Routing
2.1.1 Definisi Routing
Routing adalah inti dari semua kontrol jaringan, yaitu mekanisme yang digunakan untuk mengirimkan paket serta mengarahkan dan menentukan jalur yang akan dilewati paket dari satu jaringan ke jaringan yang lain. Pembahasan tentang routing telah meliputi bidang ilmu komputer lebih dari dua dekade, tetapi routing secara komersial menjadi populer pada pertengahan tahun 1980. Routing pada sistem terdistribusi dapat dikarakteristikkan sebagai berikut. Graf G = (V,E) adalah graf yang berbobot, dimana setiap node pada himpunan V merepresentasikan proses/antrian/unit pengirim dan setiap rusuk adalah sistem transmisinya. Tugas utama dari algoritma routing adalah meneruskan aliran data dari sumber ke node-node tujuan dan memaksimalkan performansi jaringan.
Pada kasus tertentu jaringan komunikasi (Steenstrup, 1995; Bertskas dan Gallager, 1992), algoritma routing harus mengatur kumpulan dari fungsi-fungsi dasar dan secara ketat berinteraksi dengan kemacetan dan algoritma kontrol pemasukan data, dengan aturan yang berhubungan dengan antrian, dan lalu lintas pemakai. Inti dari fungsi routing adalah:
1. Akuisi, pengorganisasian, dan distribusi informasi lalu lintas pemakai dan keadaan jaringan.
2. Penggunaan informasi tersebut untuk membangkitkan kemungkinan rute – rute yang dapat memaksimalkan performansi
2.1.2 Komponen Routing
Terdapat dua aktifitas dasar routing yaitu menentukan jalur routing optimal dan transportasi informasi antar jaringan. Protokol routing adalah metode – metode yang digunakan oleh router untuk saling mengkomunikasikan informasi NLR (Network Layer Reachability). Protokol routing menggunakan matriks untuk mengevaluasi jalur mana yang terbaik untuk perjalanan paket data. Untuk membantu proses penentuan jalur, algoritma routing menginisial dan menjaga tabel routing yang memiliki informasi rute. Variasi informasi rute tergantung dengan algoritma routing yang digunakan. Algoitma routing mengisi tabel routing dengan informasi – informasi yang berbeda. Tujuan/hop selanjutnya memberitahu router bahwa partikel node tujuan dapat dicapai secara optimal dengan cara mengirim paket ke partikel router yang merepresentasikan hop selanjutnya ke tujuan akhir. Ketika router menerima paket data, router memeriksa alamat tujuan dan berusaha menggabungkan alamat ini dengan hop selanjutnya.
Tabel routing dapat juga berisi informasi lainnya, seperti data tentang jalur yang diinginkan. Router membandingkan matriks untuk menentukan rute optimal, dan matriks – matriks ini berbeda tergantung dengan desain algoritma routing yang digunakan. Router saling berkomunikasi dan memelihara tabel routingnya melalui transmisi pesan yang beragam. Dengan menganalisa pembaharuan (update) routing dari semua router yang ada, sebuah router dapat membangun detail topologi jaringan.
2.1.3 Algoritma Routing
Algoritma non-adaptive atau disebut juga algoritma statik, keputusan routing tidak berdasarkan penaksiran arus trafik dan topologi. Pada algoritma statik, jalur diambil oleh paket hanya tergantung pada basis sumber dan tujuan, tanpa memperdulikan status jaringan. Sebagai gantinya, rute adalah pra-komputasi dan diberikan kepada router secara offline.
Algoritma adaptive merubah keputusan routingnya untuk menggambarkan perubahan pada topologi dan trafik. Adaptive routing dapat lebih mudah menyesuaikan pada situasi yang tidak konsisten, bergabung dengan node atau kegagalan link atau perubahan lokal topologi.
2.2 Ant Colony System
2.2.1 Sejarah Ant Colony System
Sistem cerdas menjadi bagian dari kemajuan ilmu pengetahuan dan teknologi. Seiring dengan berkembangnya teknologi, aplikasi – aplikasi yang menerapkan sistem cerdas semakin banyak untuk menyelesaikan berbagai macam permasalahan optimisasi. Salah satu algoritma yang menerapkan sistem cerdas ini adalah algoritma Ant Colony System (ACS).
2.2.2 Perilaku Koloni Semut
Semut adalah serangga sosial. Semut dapat bekerja sama dengan koloninya secara efektif untuk melaksanakan sejumlah pekerjaan, contohnya mencari rute terpendek dari sarang ke sumber makanan dan kembali ke sarang mereka tanpa menggunakan petunjuk yang nyata.
Semut dapat bekerja sama dengan koloninya dan bertukar informasi secara tidak langsung yang disebut dengan stigmergy. Pada saat melakukan suatu rute perjalanan, semut meletakkan sejumlah informasi pada daerah yang dilaluinya yaitu feromon yang merupakan zat yang dikeluarkan oleh semut untuk mendeteksi dan merespon keberadaan dari semut lainnya. Dengan feromon ini, semut menandai daerah yang dilaluinya. Semut berikut yang melalui jalur tersebut akan mengidentifikasikan feromon yang diletakkan oleh semut sebelumnya dan memutuskan dengan probabilitas yang tinggi untuk mengikutinya dan menguatkan jalur yang dipilihnya dengan feromon miliknya. Proses dari stigmergy ini dapat diilustrasikan seperti pada gambar 2.1.
Keterangan:
1. Graf dengan jarak D – H = H – B = 1, dan D – C = C – B = 0.5. E adalah sarang dan A adalah sumber makanan.
2. Pada saat t=0 belum terdapat jejak, semut memilih untuk bergerak kearah kiri atau kekanan dengan probabilitas
3. Pada saat t=1, jejak feromon lebih kuat pada jarak yang lebih pendek, sehingga lebih banyak semut memilih jalur tersebut untuk dilewati.
Berdasarkan sifat alamiah semut yang dapat menemukan jarak terpendek inilah banyak permasalahan optimisasi yang terinspirasi dengan menggunakan prinsip semut tersebut. Perbedaan agen semut yang dipakai dalam pemecahan masalah optimisasi dengan semut alami adalah pada agen semut terdapat memori, sehingga semut – semut ini memiliki kemampuan untuk menyimpan data – data atau hasil kunjungan mereka pada setiap rute perjalanan. Konsep ACS telah banyak
diterapkan dalam berbagai kajian permasalahan optimisasi kombinatorial seperti
traveling salesman problem (TSP), quadratic assignment problem, jobscheduling, vehicle routing, graph coloring, dan network routing. Pada penelitian ini, konsep dari perilaku semut yang akan dibahas lebih lanjut adalah ACS pada routing jaringan, bagaimana agen – agen semut dapat memecahkan permasalahan routing dan bagaimana hasil kinerja routing tersebut jika menerapkan algoritma ACS.
2.2.3 AntNet
Secara informal, algoritma AntNet dan karakteristik utamanya dapat dirangkum sebagai berikut:
1. Pada interval regular dan bersamaan dengan data trafik ,dari tiap node – node jaringan, setiap semut bersifat asinkron, maju secara acak ke node – node yang dipilihnya.
2. Agen semut bertindak secara bersamaan dan bebas, dan berkomunikasi secara tidak langsung, melalui informasi yang mereka baca dan menulis informasinya kembali pada node yang mereka lalui.
3. Setiap agen mencari jarak minimum dari node sumber ke node tujuan. 4. Setiap agen bergerak langkah demi langkah ke node tujuan. Pada setiap
node berikutnya, aturan greedy diberlakukan dalam pemilihan node selanjutnya. Hal ini berguna untuk generasi agen lokal dan pemeliharaan informasi.
5. Ketika bergerak, agen mengumpulkan informasi waktu, status kongesti dan identifikasi node pada jalur yang telah dilewati.
6. Ketika agen telah sampai di node tujuan, agen kembali ke node sumber dengan bergerak ke jalur yang sama tetapi berlawanan arah
7. Selama perjalanan pulang, model lokal dari status jaringan dan tabel routing pada setiap node yang dikunjungi dimodifikasi oleh agen sebagai fungsi dari jalur yang mereka ikuti dan kebaikan (goodness) yang diharapkan.
2.2.4 Deskripsi Algoritma
AntNet terbagi menjadi dua agen mobile yang homogen yang disebut dengan forward ant dan backward ant. Agen tesebut memiliki sifat yang sama hanya saja berbeda penempatan situasi dan lingkungannya, sehingga mereka dapat menerima input yang berbeda dan menghasilkan output yang berbeda pula. Secara luas agen – agen semut ini dapat diklasifikasikan sebagai agen yang deliberatif, karena mereka memiliki tingkah laku dapat meregenerasi kembali dan pada waktu yang sama mereka dapat melakukan pemeliharaan status internal yang komplit.
Masing – masing agen berkomunikasi dengan cara tidak langsung atau stigmergy. Agen menangkap informasi yang mereka baca dan menulis informasi yang didapat dalam dua struktur data yang disimpan pada setiap node jaringan seperti gambar 2.2
Keterangan:
1. Sebuah tabel routing Tk merupakan algoritma vektor jarak tetapi
dengan masukan yang probabilitas. Tk mendefinisikan probabilitas
aturan routing yang diadopsi oleh node k, untuk setiap node tujuan d yang mungkin dan untuk setiap node tetangga n, Tk menyimpan
sebuah nilai probabilitas Pnd
P
yang menggambarkan kabaikan (goodness)/keinginan dalam aturan routing jaringan yang luas, memilih n sebagai node selanjutnya sedangkan node tujuannya adalah d :
nd = 1, d Є [1, N], Nk
n Є N
= {tetangga(k)}
k
2. Sebuah array Mk ( μd , σd2, Wd), dari struktur data mendefinisikan
model sederhana parameter statik dari trafik distribusi antar jaringan yang dilihat oleh node k. Modelnya adalah adaptif dan digambarkan oleh contoh properti dan varian komputasi selama waktu perjalanan yang dialami oleh agen mobile, dan dengan memindahkan jendela observasi Wd yang digunakan untuk menyimpan nilai terbaik Wterbaikd
dari waktu perjalanan agen. Untuk setiap daerah tujuan d dalam jaringan, taksiran properti dan variannya, μd dan σd2 memberikan representasi waktu yang diharapkan untuk pergi dan kestabilannya.
2.3 Network Simulator
Untuk menguji algoritma ACS atau antnet pada jaringan maka dibutuhkan sebuah media yang dapat menggambarkan proses – proses yang berjalan pada jaringan komputer. Oleh sebab itu dibutuhkan simulator jaringan yang dapat merepresentasikan algoritma antnet . Pada penelitian ini simulator jaringan yang dipakai adalah Network Simulator versi 2 atau NS2.
NS2 adalah alat simulasi jaringan open source yang banyak digunakan dalam mempelajari struktur dinamik dari jaringan komunikasi. Simulasi dari jaringan nirkabel dan protokol (seperti algoritma routing, TCP, dan UDP) dapat diselesaikan dengan baik dengan simulator ini. Karena kefleksibelannya, NS2 menjadi popular dikalangan komunitas peneliti sejak awal kemunculannya pada tahun 1989.
Beberapa fitur yang ada pada NS2 adalah : 1. TCP dan implementasinya
2. Mobilitas
3. Node berupa satelit yang dapat kita tentukan longitude, latitude, dan altitude.
4. Internet routing protocol
5. Berbagai macam model link loss
6. Berbagai macam penghasil trafik (seperti web, telnet, dan sebagainya) 7. Kemampuan mengemulasikan jaringan
Gambar 2.3 merupakan struktur dari NS2 yang menggambarkan kinerja dari NS2
Gambar 2.3 . Arsitektur NS2