PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ANALISIS UNJUK KERJA TCP RENO DENGAN OLSR SEBAGAI PROTOKOL ROUTING DI MANET
SKRIPSI Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika.
Oleh : Agustinus Dimas Fitriyanto NIM : 115314002
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERFORMANCE ANALYSIS OF TCP RENO OVER OLSR IN MANET
A THESIS Presented as Partial Fulfillment of the Requirements to Obtain Sarjana Komputer Degree in Informatics Enggineering.
By : Agustinus Dimas Fitriyanto NIM : 115314002
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING FACULTY SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2015
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSETUJUAN
SKRIPSI ANALISIS UNJUK KERJA TCP RENO DENGAN OLSR SEBAGAI PROTOKOL ROUTING DI MANET.
Oleh : Agustinus Dimas Fitriyanto NIM : 115314002
Telah disetujui oleh :
Dosen Pembimbing I
Tanggal……………………………
Bambang Soe listijanto, S.T., M.Sc., Ph.D.
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PENGESAHAN
SKRIPSI ANALISIS UNJUK KERJA TCP RENO DENGAN OLSR SEBAGAI PROTOKOL ROUTING DI MANET. Dipersiapkan dan ditulis oleh : Agustinus Dimas Fitriyanto NIM : 115314002 Telah dipertahankan di depan Panitia Penguji pada tanggal …………………………. dan dinyatakan memenuhi syarat.
Susunan Panitia Penguji Nama lengkap
Tanda Tangan
Ketua
Iwan Binanto, S.Si., M.Cs.
……………….
Sekretaris
H. Agung Hernawan, S.T., M.Kom.,
……………….
Anggota
Bambang Soelistijanto, S.T., M.Sc., Ph.D.
……………….
Yogyakarta, ………………………………. Fakultas Sains dan Teknologi Universitas Sanata Dharma
Dekan,
Paulina Heruningsih Prima Rosa, S.Si., M.Sc. iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, terkecuali yang sudah tertulis di dalam kutipan daftar pustaka, sebagaimana layaknya sebuah karya ilmiah.
Yogyakarta, 20 November 2015 Penulis
Agustinus Dimas Fitriyanto
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
Skripsi ini saya persembahkan untuk :
KELUARGA TERCINTA Bapak Ibu saya yang senantiasa telah membiayai dan membimbing saya untuk menyelesaikan studi, untuk semua adek saya Desi, Rosa dan Rani yang selalu mendukung dan memberi semangat untuk menyelesaikan tugas akhir ini.
TEMAN – TEMAN ANGKATAN 2011 Terimakasih atas dukungan dan semangat yang diberikan dalam menyelesaikan tugas akhir saya ini.
SANATA DHARMA OPEN SOURCE Terimakasih sebesar – besarnya atas kebersamaannya dalam belajar open source sehingga mampu membantu menyelesaikan tugas akhir saya ini.
Salam Open Source.
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
MOTTO “ Jika ada kemauan dan usaha, pasti akan membuahkan hasil”
“ Kalau tidak dimulai sekarang kapan lagi “
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma : Nama
: Agustinus Dimas Fitriyanto
NIM
: 115314002
Demi mengembangkan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul : ANALISIS UNJUK KERJA TCP RENO DENGAN OLSR SEBAGAI PROTOKOL ROUTING DI MANET. Beserta perangkat yang diperlukan (bila ada). Dengan demikian, saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan kedalam
bentuk
media
lain,
mengelolanya
dalam
bentuk
pangkalan
data,
mendistribusikannya secara terbatas dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu ijin dari saya maupun memberi royalty kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan ini saya buat dengan sebenarnya. Yang menyatakan,
Agustinus Dimas Fitriyanto
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRAK Mobile Ad-Hoc Network (MANET) merupakan jaringan nirkabel tanpa infrastruktur yang terdiri dari banyak mobile node yang bersifat dinamis dan spontan. Optimized Link State Routing (OLSR) adalah protokol routing proaktif
yang
digunakan pada MANET. Transport Control Protocol (TCP) merupakan protokol pada lapisan transport yang paling banyak digunakan pada internet sekarang. Tetapi, TCP memiliki beberapa kekurangan ketika digunakan pada jaringan nirkabel. Pada penelitian ini, penulis ingin mengetahui kinerja TCP Reno dengan OLSR sebagai protokol routing di MANET dengan menggunakan simulator OMNET++. Parameter kinerja yang digunakan adalah CWND, RTO, Control Messages, Throughput dan Overhead Ratio. Parameter jaringan yang digunakan pada setiap simulasi adalah luas area yang tetap dengan jumlah node dan kecepatan pergerakan node yang bertambah. Hasil dari simulasi menunjukkan
bahwa
throughput
TCP
mengalami
penurunan jika jumlah node dan kecepatan pergerakan node bertambah pada area simulasi yang tetap karena banyak terjadi timeout yang disebabkan oleh perubahan cepat topologi jaringan dan jumlah control messages OLSR yang meningkat sehingga menyebabkan beban jaringan menjadi tinggi (overhead ratio meningkat) dan berakibat pada pemakaian bandwith yang kurang efisien untuk transfer data.
Kata kunci : MANET, OLSR, TCP, Reno, Throughput, Timeout, Overhead Ratio.
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT Mobile Ad-Hoc Network (MANET) is a wireless network without an infrastructure that consists of many mobile node that is dynamic and spontaneous. Optimized Link State Routing (OLSR) is a proactive routing protocol used in MANET. Transport Control Protocol (TCP) is a protocol at the transport layer of the most widely used on the Internet today. However, TCP has some shortcomings when used on a wireless network. In this study, the authors wanted to know the performance of TCP Reno with OLSR as a routing protocol in MANET using OMNET ++ simulator. Performance parameters used are cwnd, RTO, End-To-End Delay, Control Messages, Throughput and Overhead Ratio. Network parameters used in each simulation is an area that remains the number of nodes and node movement speed is increased. Results of the simulation showed that the TCP throughput decreased if the number of nodes and the speed of movement of nodes increases in the area of simulation that remains as much a timeout occurs due to rapid changes of the network topology and the amount of OLSR control messages increased (overhead ratio increased), causing the network load is high and resulted in bandwidth usage which is less efficient for data transfer.
Keywords : MANET, OLSR, TCP, Reno, Throughput, Timeout, Overhead Ratio.
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yesus Kristus atas segala berkat dan karuniaNya, sehingga penulis dapat menyelesaikan tugas akhir yang berjudul “ Analisis Unjuk Kerja TCP Reno dengan OLSR sebagai Protokol Routing di MANET “ ini dengan baik. Penulis menyadari bahwa selama proses penelitian dan penyusunan laporan tugas akhir ini, banyak pihak yang telah memberikan bantuan baik berupa dukungan, perhatian, semangat , kritik dan saran yang sangat penulis butuhkan, sehingga pada kesempatan ini penulis ingin mengucapkan terimakasih yang sebesar – besarnya, antara lain kepada : 1. Bapak Bambang Soelistijanto, S.T., M.Sc., Ph.D. selaku dosen pembimbing tugas akhir, atas kesabarannya dalam membimbing penulis, meluangkan waktunya , memberi dukungan, motivasi, serta saran yang sangat membantu penulis. 2. Bapak Iwan Binanto , S.Si., M.Cs. dan Bapak H.Agung Hernawan, S.T., M.Kom., selaku dosen penguji yang telah memberikan saran dan masukan yang berguna dalam tugas akhir ini. 3. Bapakku Robertus Soenarto dan Ibuku Chatarina Titik Hayati serta adik – adik ku Desi, Suster Rosa, Rani atas doa, semangat, dan dukungan baik moril maupun finasial serta kasih sayang yang begitu besar yang selalu ada untukku.
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4. Pacarku Monica Rintan Desmaweni yang selalu memberi kasih sayang, semangat dan dukungannya selama menyelesaikan tugas akhir ini. 5. Teman – teman angkatan 2011 yang selalu memberikan semangat, dukungan dan bantuan hingga penulis menyelesaikan tugas akhir ini. 6. Teman – teman komunitas Sanata Dharma Open Source yang memberikan dukunganya terhadap tugas akhir ini. 7. Semua pihak yang telah membantu dan mendukung baik secara langsung dan tidak langsung, penulis mengucapkan banyak terimakasih. Penulis menyadari bahwa masih banyak kekurangan dalam penyusunan tugas akhir ini. Saran dan kritik sangat diharapkan untuk perbaikan yang akan datang. Akhir kata, semoga tulisan ini dapat bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan.
Yogyakarta, 20 November 2015 Penulis
Agustinus Dimas Fitriyanto
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL .....................................................................................................i TITLE OF PAGE......................................................................................................... ii HALAMAN PERSETUJUAN ................................................................................... iii HALAMAN PENGESAHAN ..................................................................................... iv PERNYATAAN KEASLIAN ......................................................................................v HALAMAN PERSEMBAHAN ................................................................................. vi MOTTO ...................................................................................................................... vii LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH.............................. viii ABSTRAK ................................................................................................................... ix ABSTRACT ..................................................................................................................x KATA PENGANTAR ................................................................................................. xi BAB I ............................................................................................................................ 1 PENDAHULUAN ....................................................................................................... 1 1.1.
Latar Belakang. ............................................................................................... 1
1.2.
Rumusan masalah. .......................................................................................... 5
1.3.
Tujuan. ............................................................................................................. 6
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1.4.
Batasan masalah.............................................................................................. 6
1.5.
Metodologi penelitian. .................................................................................... 7
1.6.
Sistematika Penulisan. .................................................................................... 7
BAB II .......................................................................................................................... 9 LANDASAN TEORI .................................................................................................. 9 2.1.
Mobile Ad-hoc Network. ................................................................................ 9
2.2.
Protokol routing di MANET. ....................................................................... 12 2.2.1. Optimized Link-State Routing......................................................... 15
2.3.
Transport Control Protocol (TCP).............................................................. 22 2.3.1. TCP Reno........................................................................................... 37
2.4.
OMNET ++ .................................................................................................... 43
BAB III....................................................................................................................... 45 PERANCANGAN SIMULASI JARINGAN .......................................................... 45 3.1.
Parameter Simulasi....................................................................................... 45
3.2.
Parameter Kinerja. ....................................................................................... 46
3.3.
Skenario Simulasi.......................................................................................... 47
3.3.
Topologi Jaringan. ........................................................................................ 49
BAB IV ....................................................................................................................... 51
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ANALISIS DATA ..................................................................................................... 51 4.1.
Hasil Simulasi. ............................................................................................... 52 4.1.1. Skenario 1 .......................................................................................... 52 4.1.2. Skenario 2 .......................................................................................... 54 4.1.3
Skenario 3 .......................................................................................... 55
4.1.4. Skenario 4 .......................................................................................... 56 4.1.5. Skenario 5 .......................................................................................... 58 4.1.6. Skenario 6 .......................................................................................... 59 4.2.
Analisis perbandingan unjuk kerja dari semua skenario. ........................ 61
BAB V......................................................................................................................... 70 KESIMPULAN DAN SARAN ................................................................................. 70 5.1.
Kesimpulan. ................................................................................................... 70
5.2.
Saran. ............................................................................................................. 71
DAFTAR PUSTAKA ................................................................................................ 72 LAMPIRAN............................................................................................................... 74
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL Tabel 3.1.1. Parameter jaringan. ................................................................................. 46 Tabel 3.2.1. Tabel skenario simulasi dengan penambahan jumlah node dan kecepatan pergerakan node 2mps. ............................................................................................... 48 Tabel 3.2.2. Tabel skenario simulasi dengan penambahan jumlah node dan kecepatan pergerakan node 5mps. ............................................................................................... 48 Tabel 4.1.1.1. Tabel TCP performance metrics node 40 dengan kecepatan 2mps. .... 53 Tabel 4.1.1.2. Tabel total control messages node 40 dengan kecepatan 2mps. ......... 53 Tabel 4.1.2.1. Tabel TCP performance metrics node 60 dengan kecepatan 2mps. .... 54 Tabel 4.1.2.2. Tabel total control messages node 60 dengan kecepatan 2mps. ......... 55 Tabel 4.1.3.1. Tabel TCP performance metrics node 80 dengan kecepatan 2mps. .... 56 Tabel 4.1.3.2. Tabel total control messages node 80 dengan kecepatan 2mps. ......... 56 Tabel 4.1.4.1. Tabel TCP performance metrics node 40 dengan kecepatan 5mps. .... 57 Tabel 4.1.4.2. Tabel total control messages node 40 dengan kecepatan 5mps. ......... 57 Tabel 4.1.5.1. Tabel TCP performance metics node 60 dengan kecepatan 5mps. ..... 59 Tabel 4.1.5.2. Tabel total control messages node 60 dengan kecepatan 5mps. ......... 59 Tabel 4.1.6.1. Tabel TCP performance metrics node 80 dengan kecepatan 5mps. .... 60 Tabel 4.1.6.2. Tabel total control messages node 80 dengan kecepatan 5mps. ......... 61 Tabel 4.2.1 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata data transfer per cwnd.......................................................................................... 61
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tabel 4.2.3 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata RTO...................................................................................................................... 63 Tabel 4.2.5 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata control messages ................................................................................................. 65 Tabel 4.2.6 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata throughput ............................................................................................................ 66 Tabel 4.2.7 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata overhead ratio ...................................................................................................... 68
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR Gambar 1. Taksonomi protokol routing di jaringan komputer. .................................. 10 Gambar 2. Jangkauan signal radio node. .................................................................... 11 Gambar 3. Kategori ad-hoc protokol routing. ............................................................ 13 Gambar 4. Distribusi messages melalui MPR. ........................................................... 17 Gambar 8. Perbandingan Sistem Broadcast. .............................................................. 19 Gambar 10. Tabel routing OLSR................................................................................ 21 Gambar 11. Proses enkapsulasi data. .......................................................................... 25 Gambar 12. Format header TCP................................................................................. 26 Gambar 14. Sliding Windows...................................................................................... 28 Gambar 15. Slow start dan congestion avoidance pada TCP yang umum. ................ 35 Gambar 16. Fast Retransmit pada TCP. ..................................................................... 37 Gambar 3.3.1. Snapshot jaringan dengan jumlah node 40. ........................................ 49 Gambar 3.3.2. Snapshot jaringan dengan jumlah node 60. ........................................ 50 Gambar 3.3.3. Snapshot jaringan dengan jumlah node 80. ........................................ 50 Gambar 4.1.1.1. Grafik CWND node 40 dengan kecepatan 2mps. ............................ 52 Gambar 4.1.2.1. Grafik CWND node 60 dengan kecepatan 2mps. ............................ 54 Gambar 4.1.3.1. Grafik CWND node 80 dengan kecepatan 2mps. ............................ 55 Gambar 4.1.4.1. Grafik CWND node 40 dengan kecepatan 5mps. ............................ 57 Gambar 4.1.5.1. Grafik CWND node 60 dengan kecepatan 5mps. ............................ 58 Gambar 4.1.6.1. Grafik CWND node 80 dengan kecepatan 5mps. ............................ 60
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.2.1 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata byte transfer per cwnd ...................................................................................... 62 Gambar 4.2.3 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata RTO................................................................................................................... 64 Gambar 4.2.5 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata control messages ............................................................................................... 66 Gambar 4.2.6 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata TCP throughput ................................................................................................ 67 Gambar 4.2.7 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata overhead ratio ................................................................................................... 68
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN
1.1.
Latar Belakang. Jaringan wireless (nirkabel) adalah jaringan komputer yang menggunakan
transmisi data nirkabel untuk menghubungkan antar node dalam suatu jaringan. Jenis dari jaringan nirkabel adalah jaringan nirkabel dengan infrastruktur dan jaringan nirkabel tanpa infrastruktur[1] Jaringan nirkabel berkembang sangat pesat saat ini. Perkembangan ini merupakan tuntutan dari kebutuhan masyarakat akan akses informasi dan data yang cepat, bisa kapan saja dan dimana saja. Jaringan nirkabel dengan infrastruktur merupakan perluasan dari jaringan LAN. Sedangkan jaringan nirkabel tanpa infrastruktur biasa disebut jaringan ad-hoc. Jaringan ad-hoc adalah jaringan nirkabel multihop yang terdiri dari banyak mobile node yang bersifat spontan dan dinamis[2] Jaringan ad-hoc memiliki keunggulan dibandingkan jaringan nirkabel dengan infrastruktur seperti tidak memerlukan dukungan backbone infrastruktur atau sarana pendukung transmisi data, node yang bergerak dapat mengakses informasi secara real time ketika berhubungan, fleksibel terhadap suatu keperluan, dan dapat direkonfigurasi dalam beragam topologi. Mobile Ad-Hoc Network (MANET) merupakan jenis jaringan ad-hoc yang terdiri dari banyak mobile node yang bersifat dinamis dan spontan, dapat diaplikasikan dimana saja, kapan saja. Pada jaringan MANET, mobile node bergerak kemanapun 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
dengan kecepatan tertentu dan mengirimkan paket data secara peer to peer. Mobile node pada jaringan MANET dapat berperan sebagai pengirim, penerima data
atau
perantara untuk mobile node lainnya. Dalam suatu jaringan, agar node dapat saling berkomunikasi dengan node lainnya maka diperlukan sebuah aturan. Aturan tersebut adalah protokol routing[3] Protokol routing berfungsi untuk menentukan bagaimana suatu node dapat berkomunikasi dengan node yang lainnya dan menyebarkan informasi yang memungkinkan node sumber untuk memilih jalur yang optimal ke node tujuan dalam sebuah jaringan. Protokol routing menyebarkan informasi pertama kali kepada node tetangganya, kemudian ke semua node dalam jaringan. Pada jaringan MANET, protokol routing dapat diklasifikasikan menjadi beberapa jenis seperti protokol routing proaktif ( DSDV, OLSR, FSR, TBRPF), protokol routing reaktif ( AODV, DSR, TORA, FDSR), dan protokol routing hybrid ( CGSR, ZRP, CBR, HSR, LANMAR).[4] OLSR (Optimized Link State Routing) merupakan salah satu protokol routing proaktif yang menggunakan hello message dan topology control message untuk menemukan dan menyebarkan informasi link state ke semua node dalam jaringan MANET. Setiap node menggunakan informasi link state untuk menentukan node tujuan selanjutnya untuk semua node dalam jaringan menggunakan jalur terpendek. OLSR menggunakan algoritma Djikstra untuk mencari jalur terpendek ke setiap node tujuan dalam suatu jaringan. Keunikan dari OLSR adalah meminimalkan jumlah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
broadcast topology control messages dengan menggunakan multi point relay (MPR) sehingga penggunaan sumber daya dan bandwith dari node lebih efisien. Pada jaringan komputer, lapisan transport bertanggung jawab menyediakan layanan komunikasi end-to-end atau host-to-host antar lapisan application yang sesuai dalam arsitektur lapisan komponen dan protokol jaringan[5] Transport layer digunakan oleh model TCP/IP dan model Open Systems Interconnection (OSI) pada jaringan komputer[6] Protokol lapisan transport yang paling banyak digunakan adalah TCP dan UDP[6] TCP dan UDP merupakan suatu protokol yang berada pada lapisan transport
(model OSI dan model TCP/IP).
TCP mempunyai karakteristik seperti
berorientasi pada koneksi (connection-oriented), mendukung full duplex, handal, flow control, multiplexing, dan byte stream[7] TCP congestion control digunakan pada fase slow start dan congestion-avoidence untuk menghindari kemacetan yang terjadi pada jaringan[8] TCP mempunyai beberapa varian seperti TCP Tahoe, TCP Reno, TCP Vegas, TCP SACK, TCP Westwood, dan TCP Cubic. Sedangkan UDP mempunyai karakteristik seperti tidak berorientasi pada koneksi (connectionless), tidak handal, half duplex, dan sederhana. MANET merupakan sistem komunikasi yang komplek dengan mobile node yang bergerak bebas dan dinamis dalam jaringan. TCP memiliki beberapa keterbatasan pada jaringan MANET seperti route failures dan wireless errors[9] Route failure pada MANET terjadi sebagian besar disebabkan karena pergerakan node, sehingga menyebabkan perubahan topologi jaringan secara dinamis dan cepat. Oleh karena itu,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
maka dibutuhkan respon protokol routing yang cepat untuk mengatasi perubahan topologi jaringan sehingga ketika terjadi TCP transfer data, TCP tidak mendeteksi adanya paket yang hilang. Jika respon dari protokol routing lambat, maka akan menyebabkan TCP menunggu terlalu lama atau akan mengalami timeout. TCP awalnya dirancang untuk komunikasi pada jaringan kabel yang memiliki bit-error kecil. Paket yang hilang terdeteksi oleh TCP bukan terjadi karena congestion, melainkan karena menerima 3 duplikat ACK[10]
Saat mendeteksi paket yang hilang, TCP akan
mengimplementasikan fase fast retransmit. Dan jika terjadi timeout, maka akan mengimplementasikan fase slow start. Hal ini tidak efisien karena akan menyebabkan delay pada ranah pengguna. Jenis protokol routing yang digunakan pada penelitian ini adalah protokol routing proaktif karena tabel routing terjaga setiap saat melalui update topology control messages berkala atau sesuai dengan perubahan topologi jaringan sehingga jalur sudah tersedia ketika dibutuhkan. Namun, protokol routing proaktif tidak relevan untuk diimplementasikan pada jaringan dengan skala yang besar karena akan menimbulkan overhead jaringan dan konsumsi bandwith yang besar. TCP yang diuji pada penelitian ini adalah TCP Reno karena varian TCP ini paling banyak digunakan pada jaringan[11] Selain itu, modul TCP Reno sudah tersedia di perangkat lunak simulator OMNET ++. TCP Reno merupakan varian TCP yang muncul setelah TCP Tahoe (tahun 1990). Pada TCP Reno, jika terjadi congestion maka akan mengimplementasikan slow
start,
kemudian congestion
melakukan algoritma fast retransmit dan fast recovery[12]
avoidance
dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
Penelitian
mengenai
kinerja
protokol
dilakukan[13][14]
Penelitian
tersebut
menggunakan
memanfaatkan
perangkat
lunak
simulator
routing
OPNET.
MANET
model Hasil
banyak
simulasi
dengan
penelitian
tersebut
menunjukkan bahwa protokol routing OLSR memperlihatkan hasil
yang lebih baik
dibandingkan protokol routing lainnya pada simulasi jaringan MANET. Selain itu, protokol routing OLSR juga meminimalkan jumlah broadcast dengan menggunakan MPR. Berdasarkan uraian diatas, penulis akan melakukan penelitian mengenai kinerja TCP Reno menggunakan protokol routing OLSR di lingkungan MANET dengan menggunakan perangkat lunak simulator OMNET ++. Dengan menggunakan protokol routing OLSR maka jalur komunikasi akan terjaga oleh topology control messages dari protokol routing OLSR, sehingga kemungkinan untuk terjadi paket yang hilang pada TCP sangat kecil. OMNET ++ merupakan perangkat lunak simulator yang didesain untuk simulasi komunikasi jaringan komputer. OMNET ++ bersifat Academic Public License. Hasil penelitian ini diharapkan dapat memberikan pertimbangan dalam menggunakan varian TCP pada MANET dengan menggunakan protokol routing OLSR.
1.2.
Rumusan masalah. Berdasarkan latar belakang diatas, rumusan masalah yang didapat adalah :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
-
Bagaimana kinerja TCP Reno dengan OLSR sebagai protokol routing di MANET.
1.3.
Tujuan. Tujuan dari tugas akhir ini adalah : 1. Mengetahui kinerja TCP Reno dengan protokol routing OLSR di MANET menggunakan simulator OMNET++. 2. Mengetahui pengaruh kinerja protokol routing OLSR terhadap kinerja TCP Reno. 3. Mengetahui pengaruh Congestion Window (CWND), Retransmission Timeout (RTO) pada TCP Reno tehadap parameter kinerja Throughput dan Overhead Ratio.
1.4.
Batasan masalah. Batasan masalah pada penelitian ini adalah : 1. Simulasi menggunakan perangkat lunak Simulator OMNET++. 2. Protokol routing yang digunakan adalah OLSR 3. Parameter kinerja yang digunakan adalah Congestion Window (CWND), Retransmission Timeout (RTO), Throughput, Control messages dan Overhead Ratio. 4. TCP yang digunakan pada penelitian ini adalah TCP Reno.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
1.5.
Metodologi penelitian. Adapun metodologi dan langkah – langkah yang digunakan dalam pelaksanaan
Tugas Akhir ini adalah sebagai berikut : 1. Studi Literatur mengenai : a. Teori MANET. b. Teori OLSR. c. Teori TCP. d. Teori TCP Reno. e. Teori OMNET ++. 2. Perancangan dan pembangunan simulasi. 3. Pengukuran data simulasi. 4. Analisis data dan pembahasan.
1.6.
Sistematika Penulisan. Sistematika penulisan yang digunakan dalam penyusunan Tugas Akhir ini
adalah sebagai berikut : BAB I PENDAHULUAN. Bab ini berisi latar belakang penulisan tugas akhir, rumusan masalah, batasan masalah, metodologi penelitian dan sistematika penulisan. BAB II LANDASAN TEORI.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
Bagian ini menjelaskan mengenai teori yang berkaitan dengan judul / masalah di tugas akhir ini. BAB III PERANCANGAN SIMULASI JARINGAN. Bab ini berisi perancangan jaringan yang digunakan untuk simulasi. BAB IV ANALISIS DATA. Bab ini berisi pelaksanaan simulasi dan hasil analisis data simulasi jaringan. BAB V KESIMPULAN DAN SARAN. Bab ini berisi kesimpulan yang didapat dan saran – saran berdasarkan hasil analisis data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II LANDASAN TEORI
2.1.
Mobile Ad-hoc Network. Jaringan wireless (nirkabel) adalah jaringan komputer yang menggunakan
transmisi data nirkabel untuk menghubungkan antar node dalam suatu jaringan. Jaringan nirkabel menggunakan standart Institute of Electrical and Electronics Engineers 802.11 atau IEEE 802.11[2] IEEE merupakan organisasi yang mengatur standart mengenai teknologi nirkabel. Frekuensi kerja jaringan nirkabel adalah 2,4 GHz, 3,7 GHz dan 5GHz. Jaringan nirkabel dapat diklasifikasikan menjadi 2 kategori yaitu jaringan nirkabel dengan infrastruktur dan jaringan nirkabel tanpa infrastruktur [1], seperti ditunjukkan pada gambar 1. Contoh dari jaringan nirkabel tanpa infrastruktur adalah jaringan ad-hoc. Jaringan ad-hoc adalah jaringan nirkabel multihop yang terdiri dari banyak mobile node yang bersifat spontan dan dinamis[2] Jaringan ad-hoc memiliki keunggulan dibandingkan jaringan lain seperti tidak memerlukan dukungan backbone infrastruktur atau sarana pendukung transmisi data, node yang dapat bergerak bebas saat mengakses informasi secara real time ketika berhubungan, fleksibel terhadap suatu keperluan, dan dapat direkonfigurasi dalam beragam topologi. Sedangkan jaringan nirkabel infrastruktur merupakan perluasan dari jaringan LAN yang menggunakan
9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
access point sebagai pintu keluar masuk untuk ke jaringan yang lain misalnya internet atau LAN.
Gambar 1. Taksonomi protokol routing di jaringan komputer.
Mobile Ad-Hoc Network (MANET) merupakan jenis jaringan ad-hoc yang dapat berubah lokasinya dan melakukan konfigurasi sendiri dengan cepat. Pada jaringan MANET, mobile node bergerak kemanapun dengan kecepatan tertentu dan mengirimkan paket data secara peer-to-peer. Mobile node pada jaringan MANET dapat berperan sebagai pengirim, penerima data
atau perantara untuk mobile node
lainnya. MANET dapat dibentuk dimana saja dan kapan saja selama 2 node atau lebih
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
saling berhubungan dan berkomunikasi satu sama lain secara langsung ketika berada dalam jangkauan sinyal radio suatu node. Contoh jangkauan sinyal radio suatu node ditunjukkan pada gambar 2. Contoh implementasi jaringan MANET antara lain komunikasi pada medan perang pada beberapa lokasi, komunikasi pada daerah bencana alam yang mengalami kerusakan infrastruktur telekomunikasi, dan suatu event yang tidak memungkinkan untuk membangun jaringan kabel atau menyediakan layanan jaringan.
Gambar 2. Jangkauan signal radio node.
Karakteristik jaringan MANET : 1. Media nirkabel : pada jaringan ad-hoc, node berkomunikasi secara nirkabel dan berbagi penggunaan media.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
2. Otonomi dan tanpa infrastruktur : MANET tidak bergantung kepada infrastruktur atau bersifat terpusat. Setiap node berkomunikasi secara distribusi peer-to-peer. 3. Topologi dinamis : karena node dapat bergerak kemanapun, maka topologi sering berubah. 4. Sumber daya yang terbatas : baterai yang dibawa oleh setiap mobile node mempunyai daya terbatas, kemampuan untuk memproses terbatas, yang pada akhirnya akan membatasi layanan dan aplikasi yang didukung oleh setiap node.
2.2.
Protokol routing di MANET. Routing merupakan perpindahan informasi di seluruh jaringan dari node
sumber ke node tujuan dengan minimal satu node yang berperan sebagai perantara. Routing bekerja pada lapisan network. Routing dibagi menjadi 2 komponen penting yaitu protokol routing dan algoritma routing. Protokol routing berfungsi untuk menentukan bagaimana
node
berkomunikasi dengan node
yang lainnya
dan
menyebarkan informasi yang memungkinkan node sumber untuk memilih jalur yang optimal ke node tujuan dalam sebuah jaringan. Protokol routing menyebarkan informasi pertama kali kepada node tetangganya, kemudian ke seluruh jaringan. Sedangkan algoritma routing berfungsi untuk menghitung secara matematis jalur yang optimal berdasarkan informasi routing yang dipunyai oleh suatu node.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Protokol routing pada jaringan MANET dapat diklasifikasikan menjadi 3 kategori yaitu table driven (protokol routing proaktif), on-demand (protokol routing reaktif) dan protokol routing hybrid seperti pada gambar 3. Meskipun dirancang untuk jenis jaringan yang sama, setiap protokol routing memiliki karakteristik yang berbeda – beda.
Gambar 3. Kategori ad-hoc protokol routing.
Pada protokol routing proaktif, setiap node memiliki tabel routing seluruh node dalam jaringan, sehingga setiap node mengetahui gambaran keseluruhan topologi jaringan. Jalur ke semua node tujuan sudah ditentukan pada saat jaringan terbentuk dan dipelihara melalui proses update berkala. Protokol routing proaktif memelihara daftar tujuan dan jalurnya dengan cara mendistribusikan tabel routing secara berkala ke semua node dalam jaringan. Setiap node akan meng-update tabel routing yang dimilikinya secara berkala sehingga perubahan topologi jaringan dapat diketahui setiap interval waktu tersebut. Protokol routing proaktif melakukan proses pencarian jalur secara otomatis dan berkala tanpa permintaan dari node. Protokol routing proaktif akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
membangun tabel routing pada setiap node yang berisi informasi tentang cara bagaimana mencapai setiap node lainnya dan menjaga konsistensi dari algoritma yang berusaha untuk memelihara update tabel routing secara berkala. Setiap node akan berbagi tabel routing dengan node tetangganya.. Setiap node harus memelihara satu atau lebih tabel routing untuk menyimpan informasi routing. Ketika terjadi perubahan topologi jaringan maka informasi routing harus dilakukan update oleh setiap node. Protokol routing proaktif memiliki delay yang kecil, namun besar pada routing overhead. Hal ini disebabkan karena setiap node secara berkala bertukar topology control messages dan informasi tabel routing, untuk memelihara jalur ke setiap node yang aktif dalam jaringan tetap up-to-date. Tetapi, jika sebuah node tidak pernah menggunakan jalur yang ada, hal ini sama saja dengan membuang sumber daya dan bandwith untuk proses yang tidak perlu. Sedangkan pada protokol routing reaktif, proses pencarian jalur hanya akan dilakukan ketika dibutuhkan komunikasi antara node sumber dengan node tujuan atau jalur routing belum ditentukan sebelumnya. Protokol routing reaktif melakukan pencarian jalur dan penyediaan jalur dengan menggunakan sets of control packet yang khusus seperti RREQ (Route Request), RREP (Route Reply) dan RERR (Route Error)[15]
Ketika sebuah node ingin berkomunikasi dengan node lainnya dalam
sebuah jaringan, maka node sumber akan memulai tahap pencarian jalur dengan cara mengirimkan paket RREQ ke node tetangganya setiap kali transmisi diperlukan. Mekanisme pencarian jalur dilakukan berdasar pada flooding algorithm (sebuah node
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
akan mem-broadcast paket ke semua node tetangganya dan node perantara akan meneruskan paket itu ke tetangga mereka, teknik ini akan berulang – ulang hingga mencapai node tujuan). Jika node tetangganya adalah node tujuan, maka akan dibalas dengan paket RREP ke node sumber, dengan demikian maka paket RREQ dari node sumber akan diakui. Jika node tetangganya bukan node tujuan, maka paket RREQ akan diteruskan hingga diterima oleh node tujuan. Jika terjadi kesalahan pada link, maka paket RERR akan dikirimkan ke node sumber. Protokol routing reaktif mempunyai delay yang besar namun kecil akan routing overhead. Hal ini disebabkan karena jalur belum ditentukan, sehingga sebuah node harus memulai tahap proses pencarian jalur. Setelah jalur tersedia, maka jalur akan dipelihara sampai jalur tersebut tidak lagi dibutuhkan. Protokol routing hybrid merupakan gabungan dari protokol routing proaktif dan protokol routing reaktif. Protokol routing hybrid memiliki kelebihan dari protokol routing proaktif dan reaktif untuk mengurangi delay yang merupakan kekurangan dari proaktif dan untuk routing overhead. Faktor utama yang menjadi kelebihan protokol routing hybrid adalah penggunaan protokol routing proaktif untuk yang jarak dekat dan protokol routing reaktif untuk yang jarak jauh.
2.2.1. Optimized Link-State Routing. Optimized Link-State Routing (OLSR) dikembangkan oleh kelompok kerja MANET IETF untuk mobile ad-hoc networks. OLSR merupakan protokol
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
routing proaktif yang berarti pertukaran informasi topologi dengan node yang lain dalam jaringan dilakukan secara berkala. Protokol ini mewarisi sifat kestabilan dari algoritma link state dan memiliki keuntungan yaitu jalur sudah tersedia ketika dibutuhkan. OLSR merupakan optimalisasi dari protokol link state yang disesuaikan untuk MANET. Karakterisitik dari protokol routing link state adalah : 1. Setiap node memulai dengan mencari node tetangganya. 2. Setiap node men-generates link state advertisements (LSA) untuk didistribusikan ke semua node. 3. Setiap node menjaga sebuah database yang berisi semua LSA yang diterima (topologi database atau link state database) yang digambarkan pada sebuah graph beserta dengan beban simpul. 4. Hasilnya adalah semua node memiliki topologi jaringan yang lengkap dan informasi link cost. 5. Setiap router menggunakan link state database guna menjalankan algoritma jalur terpendek (algoritma djikstra) untuk menemukan jalur terpendek ke setiap node di dalam jaringan. Protokol routing link state awalnya didesain untuk jaringan kabel dan tidak untuk jaringan ad-hoc dengan skala yang luas karena jaringan ad-hoc sering melakukan topologi update yang merupakan bagian penting dari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
kapasitas jaringan. Oleh karena itu, banyak muncul berbagai protokol routing salah satunya adalah OLSR. Hal baru yang terdapat pada OLSR adalah meminimalkan routing overhead dari broadcast control messages dengan menggunakan MPR seperti yang ditunjukkan pada gambar 4. Teknik ini cukup signifikan dalam mengurangi jumlah retransmissions yang diperlukan dalam mendistribusikan messages ke semua node dalam jaringan. OLSR hanya memerlukan sebagian link state untuk dibanjiri dalam menyediakan jalur terpendek. MPR digunakan sebagai node perantara dari node sumber ke node tujuan. MPR
Gambar 4. Distribusi messages melalui MPR.
Tahapan kerja OLSR. -
Link sensing (mendeteksi hubungan). Setiap node harus mendeteksi hubungan antara dirinya dengan node
tetangganya. Hubungan harus diperiksa dikedua arah agar dianggap sah. Proses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
pendeteksian hubungan dengan node tetangga tersebut dinamakan Link Sensing. Link sensing dilakukan melalui pengiriman pesan HELLO secara berkala guna memperbaharui local link information melalui antarmuka nirkabel yang digunakan dalam node tersebut. Local link information menyimpan informasi tentang hubungannya dengan node tetangganya. Tujuan dari link sensing adalah node memiliki status hubungan yang terkait baik itu simetris atau asimetris.
-
Neighbour detection (mendeteksi node tetangga). Mekanisme neighbour detection dilakukan melalui pertukaran pesan
HELLO secara berkala. Informasi pesan HELLO yang disimpan oleh sebuah node mencakup informasi mengenai 1-hop node tetangganya, 2-hop node tetangganya, MPR.
-
MPR selection (Pemilihan MPR). Ide
dari
MPR
adalah
meminimalkan
routing
overhead
dari
pendistribusian messages dalam jaringan dengan mengurangi retransmissions yang berlebihan pada area yang sama. Setiap node (N) dalam jaringan akan memilih sekumpulan node tetangganya 1-hop simetris (memiliki hubungan dua arah) yang mungkin untuk meneruskan messages. Pada gambar 8 ditunjukkan perbandingan
antara
broadcast
pada
umumnya
dengan
broadcast
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
menggunakan mekanisme MPR. Sekumpulan node tetangga yang dipilih disebut sebagai MPR set (kumpulan MPR) dari suatu node (N). Hanya node yang terpilih sebagai MPR set yang bertanggung jawab untuk meneruskan messages, hal ini dimaksudkan untuk didistribusikan ke seluruh jaringan. MPR set yang dipilih akan mencakup semua node 2-hop simetris. Untuk node tetangga dari suatu node (N) yang tidak terpilih sebagai MPR set, maka akan menerima dan memproses messages, tetapi tidak meneruskan messages yang diterima dari suatu node (N). Semakin kecil MPR set, maka control traffic overhead dari protokol routing akan berkurang. Setiap node akan memelihara informasi tentang sekumpulan node tetangganya yang dipilih sebagai MPR set. Setiap node ini disebut dengan MPR selector set dari sebuah node. Sebuah node akan menerima informasi HELLO messages secara berkala yang dikirim dari node tetangganya. Oleh karena itu, pemilihan jalur melalui MPR set secara otomatis akan menghindari masalah yang terkait dengan data transfer paket yang uni-directional (tidak mendapatkan acknowledgement).
(a) General Broadcasting
(b) MPR Broadcasting
Gambar 8. Perbandingan Sistem Broadcast.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Algoritma pemilihan MPR. 1. Sebuah node perlu tahu tentang pengetahuan node tetangga 2 hop. -
Node {A,B,C,D,I} merupakan node tetangga 1 hop node V , ditunjukkan sebagai N(V) ; sedangkan node {E,F,G,H,J} merupakan node tetangga 2 hop node V, ditunjukkan sebagai N2 (V).
2. Setiap node memilih subset terkecil node tetangga 1 hop (MPRs) yang mencakup semua node tetangga 2 hop. -
Memilih node tetangga 1 hop u sebagai MPR, jika ada sebuah node di N2 (V) maka akan dicakup oleh u. Catatan : Semua node di N 2 (V) yang tidak tercakup oleh node MPR disebut sebagai node uncovered.
-
Memilih node tetangga 1 hop u sebagai MPR, jika node u mencakup node uncovered yang banyak di N2 (V), maka akan menggunakan ID node untuk memutus simpul ketika 2 node mencakup node uncovered yang sama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
-
-
Mengulangi langkah kedua sampai tidak ada node uncovered di N 2 (V).
Topology discovery (penyebaran topologi). Dalam rangka membangun informasi topologi, setiap node yang terpilih
sebagai MPR akan mem-broadcast TC messages. TC messages dibanjirkan ke semua node dalam jaringan dengan menggunakan MPR. Informasi yang disebarkan dalam jaringan melalui pesan TC digunakan untuk perhitungan tabel routing.
-
Routing table calculation (perhitungan tabel routing). Setiap node memiliki tabel routing yang dapat digunakan sebagai jalur
data menuju node lainnya dalam jaringan. Tabel routing dibuat berdasarkan informasi dalam local link information (local link set, neighbour set, 2-hop neighbour set, MPR set), dan informasi topology set. Oleh karena itu, apabila terjadi perubahan pada set - set tersebut maka tabel routing akan dihitung ulang untuk memperbaharui informasi jalur ke setiap node tujuan dalam jaringan. Informasi jalur yang disimpan dalam suatu tabel routing ditunjukkan seperti terlihat pada gambar 10.
Gambar 10. Tabel routing OLSR.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
R_dest_addr menunjukkan alamat utama node yang dapat dituju sedangkan R_dist merupakan jarak atau jumlah hop yang harus dilalui untuk mencapai node tujuan tersebut. R_next_addr merupakan alamat utama node dari hop berikutnya yang merupakan jalur untuk menuju alamat tujuan. R_iface_addr merupakan alamat interface pada node sumber yang dapat dipakai untuk menghubungi node pada R_next_addr.
2.3.
Transport Control Protocol (TCP). TCP merupakan protokol pada lapisan transport yang bertanggung jawab
menyediakan layanan
komunikasi end-to-end
atau
host-to-host
antar
lapisan
application yang sesuai dalam arsitektur lapisan komponen dan protokol jaringan[5] TCP umumnya digunakan ketika protokol lapisan application membutuhkan layanan transfer data yang bersifat handal, yang layanan tersebut tidak dimiliki oleh protokol lapisan application
tersebut.
Contoh dari protokol yang menggunakan TCP
adalah HTTP dan FTP. TCP mempunyai karateristik sebagai berikut : 1. Connection oriented (berorientasi pada koneksi). Sebelum data ditransmisikan antara dua host, dua proses yang berjalan pada lapisan application harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses connection termination (terminasi koneksi) TCP. 2. Full duplex (transmisi dua arah).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua buah jalur, yakni jalur keluar dan jalur masuk. Dengan menggunakan teknologi lapisan yang lebih rendah yang mendukung full-duplex, maka data pun dapat secara simultan diterima dan dikirim. Header TCP berisi sequence number TCP (nomor urut TCP) dari data yang ditransmisikan dan sebuah acknowledgment dari data yang masuk. 3. Reliable (handal). Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket acknowledgment dari penerima. Jika tidak ada paket acknowledgment dari penerima, maka segmen TCP (protokol data unit dalam protokol TCP) akan ditransmisikan ulang. Pada pihak penerima, segmen - segmen duplikat akan diabaikan dan segmen-segmen yang datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan segmensegmen
TCP.
Untuk
menjamin
integritas
setiap
segmen
TCP,
TCP
mengimplementasikan penghitungan TCP Checksum. 4. Flow control (kontrol aliran). Untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat "macet" jaringan, TCP mengimplementasikan layanan flow control yang dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Untuk mencegah pihak penerima memperoleh
data
yang
tidak
dapat
disangganya
(buffer),
TCP
juga
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jumlah buffer yang masih tersedia dalam pihak penerima. 5. Multiplexing. Untuk memungkinkan banyak komunikasi TCP secara bersamaan dalam satu host, TCP menyediakan seperangkat alamat atau port dalam setiap host. Gabungan dari alamat jaringan dan host dari lapisan transport, disebut dengan socket. Keunikan sepasang socket mengidentifikasi setiap koneksi. Yaitu, socket dapat digunakan secara bersamaan dalam beberapa sambungan. Proses penggabungan port ditangani secara mandiri oleh masing- masing host. 6. Byte stream. TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan jalur keluar TCP sebagai sebuah byte stream yang berdekatan (kontinyu). Nomor urut TCP dan nomor acknowlegment dalam setiap header TCP didefinisikan juga dalam bentuk byte.
Segmen-segmen
TCP
akan
dikirimkan
sebagai
datagram-datagram
IP
(datagram merupakan satuan protokol data unit pada lapisan internetwork). Sebuah segmen TCP terdiri atas sebuah header dan segmen data (payload), yang dienkapsulasi dengan menggunakan header IP dari protokol IP ditunjukkan pada gambar 11.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 11. Proses enkapsulasi data.
Sebuah segmen dapat berukuran hingga 65495 byte: 216 - (ukuran header IP terkecil (20 byte) + ukuran header TCP terkecil (20 byte)). Datagram IP tersebut akan dienkapsulasi lagi dengan menggunakan header protokol network interface (lapisan pertama dalam DARPA Reference Model) menjadi frame lapisan network interface. Gambar berikut mengilustrasikan data yang dikirimkan ke sebuah host. Di dalam header IP dari sebuah segmen TCP, field Source IP Address diatur menjadi alamat unicast dari sebuah interface host yang mengirimkan segmen TCP yang bersangkutan. Sementara itu, field Destination IP Address juga akan diatur menjadi alamat unicast dari sebuah interface host tertentu yang dituju. Hal ini dikarenakan, protokol TCP hanya mendukung transmisi one-to-one. Ukuran dari header TCP adalah bervariasi, yang terdiri atas beberapa field yang ditunjukkan dalam gambar 8. Ukuran TCP header paling kecil (ketika tidak ada tambahan opsi TCP) adalah 20 byte. Format header TCP ditunjukkan pada gambar 12. Penjelasan mengenai field pada format header TCP dapat dilihat pada RFC 793 IETF[16]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Gambar 12. Format header TCP.
Ketika koneksi berlangsung maka TCP akan melalui serangkaian proses. Proses itu adalah LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT, dan CLOSED. CLOSED berarti penutup yang berarti sudah tidak ada koneksi yang terjadi. Sambungan koneksi TCP akan berlangsung dari proses satu ke proses yang lain sebagai respon atas sebuah kejadian. Kejadian yang dilakukan oleh pengguna adalah OPEN, SEND, RECEIVE, CLOSE, ABORT dan STATUS, segmen yang masuk mengandung SYN, ACK, RST, dan FIN flags dan timeouts. Diagram proses TCP hanya berisi perubahan proses, pemicu kejadian dan hasil dari kejadian, tidak berhubungan dengan alamat dan kesalahan kondisi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
TCP Flow Control. Salah satu fungsi utama TCP adalah bertanggungjawab menyediakan layanan komunikasi yang sesuai antar lapisan application antara pengirim dengan penerima pada jaringan. Hal ini menjadi penting untuk sebuah transmisi agar mendapat kinerja yang baik, dan untuk melindungi kelebihan beban pada jaringan atau pada sisi penerima. Kolom 16 bit window pada TCP digunakan oleh penerima untuk memberitahu pengirim berapa banyak data (byte) yang dapat diterima oleh penerima. Karena kolom window mempunyai batas maksimum 16 bit, maka ukuran window yang tersedia adalah 65.535 byte. Ukuran window akan diberitahukan oleh penerima kepada pengirim tentang banyaknya data, yang dimulai dari posisi saat ini hingga TCP data byte stream dapat dikirim tanpa menunggu acknowledgements lebih lanjut. Data yang dikirim oleh pengirim akan di acknowledged oleh penerima, dan window slides bergeser ke depan supaya lebih banyak data yang bisa dikirim. Konsep ini dikenal sebagai “sliding windows” seperti ditunjukkan pada gambar 14.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Gambar 14. Sliding Windows.
Pada gambar diatas (b), data di dalam kotak window sudah memenuhi syarat untuk dikirim oleh pengirim. Kemudian byte pada aliran dibelakang kotak window sudah dikirim dan sudah di acknowledge oleh penerima. Kemudian byte pada aliran didepan kotak window belum dikirim dan harus menunggu window untuk bergeser ke depan sebelum ditransmisikan oleh pengirim. Penerima akan menyesuaikan window size setiap kali dengan cara mengirimkan acknowledgement kepada pengirim. Batas transmisi maksimum pada akhirnya akan bergantung kepada kemampuan penerima untuk menerima dan memproses data.
Retransmissions, RTT, Timeouts and Duplicate Acknowledgement. Pada jalur komunikasi end-to-end koneksi TCP, segmen dapat hilang di sepanjang jalur komunikasi. Hal ini sering kali diakibatkan oleh congestion pada router jaringan yang mengalami kelebihan beban sehingga paket harus dibuang. TCP harus dapat memperbaiki situasi ini dan mempelajari kondisi jaringan. Setiap kali TCP mengirimkan sebuah segmen, pengirim akan memulai menghitung waktu untuk mengetahui berapa lama waktu yang dibutuhkan untuk acknowledgement segmen yang dikirim tadi. Waktu ini dikenal dengan retransmissions timer. Jika acknowledgement diterima sebelum waktu habis, secara default akan diset menjadi 1,5 detik, waktu akan di-reset tanpa konsekuensi. Jika acknowledgement tidak diterima dalam batas waktu,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
maka pengirim akan mengirim ulang segmen dan nilai retransmissions timer adalah 2 kali lipat untuk setiap batas waktu berturut – turut sampai nilai maksimum yaitu 64 detik. Jika terdapat masalah pada jaringan, segmen akan memakan waktu beberapa menit untuk
berhasil dikirimkan sebelum
pengirim mengalami timeout
dan
menyimpulkan terjadi error serta memberi informasi ke lapisan appliaction pengirim. Yang menjadi permasalahan timeout dan retransmission strategy pada TCP adalah mengukur round trip time antara 2 host TCP yang berkomunikasi. Waktu round trip time dapat bervariasi bergantung pada lalu lintas di jaringan dan ketersediaan jalur. Untuk menghitung waktu RTT maka dapat digunakan rumus Exponentially Weighted Moving Average (EWMA) :
RTTi = α * RTTi-1 + (1 – α) * rtti dimana :
- rtti adalah waktu saat paket ke-i mulai dikirim hingga acknowledgement paket ke-i diterima. - RTTi adalah waktu estimasi rata – rata round trip time setelah paket ke-i. - diasumsikan nilai RTT0 = 0 - nilai α = 0.875 (menurut algoritma Jacobson).
TCP akan mulai menghitung saat data dikirim dan saat mendapatkan acknowledgement dari data yang dikirimkan. TCP menggunakan informasi ini untuk menghitung perkiraan waktu round trip time. Setelah paket dikirim dan di acknowledgement, TCP akan melakukan estimasi waktu round-trip-time dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
menggunakan informasi ini untuk menetapkan waktu timeout atas paket yang dikirimkan. Untuk menghitung waktu timeout dapat digunakan rumus sebagai berikut :
RTOi = RTTi-1 + 4 * MDEVi-1 dimana :
- RTTi adalah waktu estimasi rata – rata round trip time setelah paket ke-i. - MDEVi-1 adalah rata – rata deviasi yang dihitung dengan rumus : MDEVi = (1-ρ) * MDEVi-1 + ρ * | rtti – RTTi-1 | - nilai rekomendasi untuk ρ = 0.25
Jika acknowledgement diterima dengan cepat, maka waktu round trip time akan pendek dan retransmissions time akan di set ke nilai yang lebih rendah. Hal ini memungkinkan TCP untuk melakukan retransmit data saat waktu respon jaringan baik, maka akan mengurangi delay pada segmen yang hilang. Jika segmen data TCP hilang di jaringan, penerima akan tahu bahwa segmen pernah dikirim. Namun, pengirim akan menunggu acknowledgement untuk segmen yang dikirim tadi. Jika acknowledgement tidak diterima, maka waktu retransmissions time pengirim akan habis dan menyebabkan retransmissions segmen. Namun, jika pengirim telah melakukan retransmissions kembali dan diterima oleh penerima, maka penerima tidak akan mengirimkan acknowledgement selanjutnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
TCP Congestion. Dalam jaringan dengan sumber daya yang dipakai secara bersama, dimana beberapa pengirim bersaing untuk penggunaan bandwith, maka perlu disesuaikan kecepatan data yang digunakan oleh masing – masing pengirim agar tidak terlalu membebani jaringan. Paket yang tiba di router dan tidak dapat diteruskan maka akan dibuang, sehingga paket yang datang pada jaringan yang mengalami bottleneck akan lebih banyak dibuang. Paket yang dibuang tersebut kemungkinan sudah melewati perjalananan yang panjang dalam jaringan dan memakan sumber daya yang cukup banyak. Selain itu, paket yang hilang akan memicu retransmissions yang berarti bahwa beberapa paket akan dikirimkan kembali ke dalam jaringan. Dan network congestion akan membuat throughput jaringan mengalami penurunan. Jika tidak ada kontrol terhadap congestion, maka akan membuat jaringan lumpuh dimana hampir tidak ada data yang berhasil dikirimkan. Pada internet, congestion control merupakan tanggung jawab dari lapisan transport yaitu Transmission Control Protocol (TCP). TCP mengkombinasikan congestion control dan mekanisme yang handal. Kombinasi ini memungkinkan untuk melakukan kontrol congestion tanpa perlu explicit feedback tentang jaringan yang sedang mengalami congestion dan tanpa partisipasi dari node perantara. Untuk mendeteksi network congestion, TCP hanya mengamati jika terjadi hilangnya paket. Sejak internet mengalami hilangnya paket yang selalu disebabkan oleh congestion, maka hilangnya paket ditafsirkan sebagai tanda terjadinya congestion pada jaringan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
TCP pada node penerima selalu meng-acknowledge setiap segmen baru yang diterima. Jika segmen yang diterima tidak urut yaitu beberapa data hilang antara yang sudah diketahui dan yang baru tiba, maka acknowledgement yang terakhir akan dikirimkan lagi. Pada TCP , window berdasarkan additive increase, dan multiplicative decrease digunakan untuk mengurangi. Window size akan meningkat satu segmen setiap RTT. Pada saat menerima duplikat acknowledgement, TCP pada node pengirim akan mengasumsikan beberapa paket yang mengalami penyusunan ulang pada jaringan. Tetapi, ketika menerima duplikat acknowledgement yang keempat, maka akan diasumsikan terjadi congestion. Dalam hal ini, segmen yang hilang akan dikirim ulang dan window size diset menjadi setengah (multiplicative decrease). Selain itu, TCP menggunakan timeout yang didasarkan pada perhitungan koneksi RTT. Jika transmisi mengalami timeout tanpa acknowledgement
maka TCP
akan
menyimpulkan terjadi congestion yang parah. Lalu window size akan dikurangi menjadi satu dan segmen yang belum di-acknowledgement akan dikirim ulang. Timeout akan berlanjut hingga retransmissions selanjutnya, jika masih belum mendapatkan acknowledgement maka nilai timeout akan menjadi dua kali lipat. Lalu akan bertambah secara exponentially. Fase pertama dari koneksi dan setelah mekanisme timeout dinamakan slow start. Pada slow start, window size akan meningkat secara exponentially untuk setiap acknowledgement. Sejumlah ekstensi dan modifikasi dari TCP telah banyak diusulkan untuk pendekatan congestion control pada MANET. Ketika acknowledgement tertunda maka
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
opsi yang digunakan adalah acknowledgement dikirim hanya untuk setiap dua segmen, bukan untuk
setiap
acknowledgement.
satu
segmen.
Kemudian
Hal ini akan
selective
mengurangi jumlah
acknowledgement
(SACK)
paket yang
memungkinkan untuk mengirimkan feedback yang lebih halus untuk segmen yang hilang. Hal ini berguna jika beberapa segmen hilang pada satu periode RTT. TCP congestion control bekerja sangat baik di internet. Tetapi MANET mempunyai beberapa sifat unik yang mempengaruhi protokol dan lapisan protokol pada umumnya, dan mekanisme congestion control pada khususnya. Lingkungan yang berbeda pada MANET membuat TCP mengalami berbagai kendala. Sifat – sifat khusus dari MANET adalah node mobility, berbagi dan wireless multihop channel. Perubahan jalur karena mobilitas node serta media yang tidak handal akan menyebabkan keterlambatan dalam pengiriman paket dan hilangnya paket. Keterlambatan dan hilangnya paket tidak bisa dicerminkan sebagai efek dari congestion. Penggunanaan wireless multihop channel dengan interferensi
node memungkinkan hanya satu
transmisi data pada satu waktu. Router pada internet biasanya terhubung dengan bandwith yang besar. Ketika terjadi congestion, biasanya terpusat pada satu router tunggal. Sebaliknya, congestion di MANET akan mempengaruhi seluruh jaringan karena media digunakan bersama. Bukan karena beban node yang berlebih, tetapi karena kondisi dari jaringan. Hilangnya paket yang disebabkan oleh congestion terjadi lebih sering pada jaringan nirkabel. Hal ini dapat memberikan respon yang salah dari TCP congestion
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
control. Selain itu, mengamati hilangnya paket adalah hal yang susah, karena waktu pengiriman dan RTT sangat bervariasi. Selanjutnya bandiwth yang terbatas pada MANET, juga menjadi salah satu sebab terjadinya congestion. Dengan demikian, jaringan nirkabel multihop jauh lebih rentan terhadap masalah yang berhubungan dengan masalah pada jaringan kabel di internet. Oleh karena itu, congestion control merupakan hal penting untuk stabilitas jaringan dan kinerja yang baik.
Standart TCP Congestion Control Algorhytm. 1. Slow Start dan Congestion Avoidance. Slow start merupakan salah satu fase dari congestion control pada TCP. Slow start digunakan bersama dengan fase yang lain untuk menghindari pengiriman data yang
melebihi
kemampuan
transmisi
jaringan,
yaitu
menghindari
terjadinya
congestion. Fase ini juga dikenal dengan exponential growth phase. Fase slow start akan memulai ukuran congestion window (cwnd) dari 1, 2, atau 8. Nilai dari ukuran congestion window akan bertambah untuk setiap acknowledgement yang diterima, secara efektif akan menggandakan window size setiap round trip time (tidak persis eksponential, karena penerima dapat menunda ACK nya, biasanya mengirim 1 ACK untuk 2 segmen yang diterima). Transmission rate akan meningkat sesuai dengan fase slow start, sampai terdeteksi paket yang hilang atau receiver’s advertised window (rwnd) yang terbatas, atau slow start threshold (sshthresh) telah tercapai. Nilai awal dari sshthresh ditetapkan dengan nilai yang besar, dan nilai sshthresh akan dikurangi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
jika terjadi congestion. Jika terjadi paket yang hilang, maka TCP akan mengasumsikan bahwa telah terjadi congestion dan akan mengambil langkah – langkah untuk mengurangi beban dari jaringan. Langkah yang diambil ini bergantung pada fase congestion avoidance TCP. Setelah sshthresh tercapai, TCP akan berubah dari algoritma slow start ke phase congestion avoidance (linear growth). Pada point ini, window size akan meningkat sebesar 1 segmen untuk setiap RTT. Meskipun algoritma ini disebut dengan slow start, tetapi peningkatan congestion window cukup agresif, lebih agresif dari phase congestion avoidance.
Slow start
Congestion avoidance
Gambar 15. Slow start dan congestion avoidance pada TCP yang umum.
2. Fast Retransmit. Fast Retransmit
merupakan peningkatan terhadap TCP
dalam rangka
mengurangi waktu tunggu oleh pengirim sebelum me-retransmit segmen yang loss. TCP pengirim akan menggunakan pencatat waktu untuk mengetahui segmen yang hilang. Jika acknowledgement tidak diterima untuk segmen tertentu dalam jangka
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
waktu tertentu (fungsi yang menentukan estimasi round trip delay time), maka pengirim akan menggangap segmen tersebut hilang dalam jaringan dan akan dilakukan retransmit untuk segmen yang hilang. Duplikat acknowledgement merupakan dasar untuk mekanisme fast retransmit, yang akan bekerja sebagai berikut : setelah menerima paket (misalnya paket dengan sequence number 1), maka penerima akan mengirimkan acknowledgement dengan menambahkan 1 pada sequence number (yaitu sequence number 2), yang berarti bahwa penerima sudah menerima paket dengan sequence number 1 dan mengharapkan paket dengan sequence number 2 dari pengirim. Kemudian diasumsikan bahwa ketiga paket selanjutnya hilang. Sementara itu, penerima akan menerima paket dengan sequence number 5 dan 6. Setelah menerima paket dengan sequence number 5, penerima akan mengirimkan acknowledgement tapi hanya untuk paket dengan sequence number 2. Ketika penerima menerima paket dengan sequence number 6, penerima akan mengirimkan acknowledgement tapi hanya untuk paket dengan sequence number 2. Karena pengirim menerima lebih dari 1 acknowledgement untuk paket dengan sequence number yang sama (dalam hal ini paket dengan sequence number 2). Hal ini disebut dengan duplikat acknowledgement. Peningkatan pada fast retransmit akan bekerja sebagai berikut : jika pengirim TCP menerima sejumlah acknowledgement tertentu yang sama sebanyak 3 kali, pengirim dapat mengasumsikan bahwa paket dengan sequence number yang lebih
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
tinggi akan di-drop dan bukan tiba karena rusak. Pengirim akan melakukan retransmit paket yang diduga di-drop sebelum menunggu batas retransmission timer berakhir.
Gambar 16. Fast Retransmit pada TCP.
2.3.1. TCP Reno. TCP Reno dikembangkan oleh Van Jacobsen pada tahun 1990. TCP Reno merupakan pengembangan dari TCP Tahoe, dengan penambahan fase Fast Recovery. Mempunyai empat fase utama untuk TCP Congestion Control :
Slow Start (SS).
Congestion Avoidance (CA).
Fast Retransmit.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Fast Recovery. Ssthresh atau slow start threshold digunakan untuk menentukan masuk
phase slow start atau congestion avoidance. Diasumsikan terjadi paket yang hilang karena congestion.
1. Slow start. Tujuan dari fase slow start adalah menggunakan semua sumber daya jaringan yang ada. Fase slow start akan mulai pada setiap awal sambungan koneksi dan setiap kali paket yang hilang terdeteksi. Proses dalam fase slow start : -Pengirim akan menetapkan congestion window (cwnd) = 1 segmen pada awal sambungan koneksi. -Congestion window (cwnd) akan bertambah 1 segmen untuk acknowledgement yang diterima pengirim, kemudian cwnd akan bertambah secara double untuk setiap RTT (eksponensial) hingga cwnd telah mencapai sshthresh (lalu akan masuk phase congestion avoidance). -Dan akan melakukan eksponensial backoff setiap terjadi timeout, RTO = 2 x RTO (hingga batas 64 sec).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
2. Congestion avoidance. Tujuan dari fase congestion avoidance adalah mencegah kelebihan kapasitas jaringan. Proses dalam fase congestion avoidance : -Ketika acknowledgement diterima dan cwnd ≥ ssthresh, maka cwnd akan bertambah menjadi cwnd = cwnd + 1/cwnd. -Kemudian cwnd akan bertambah satu (secara linear) untuk setiap RTT (cwnd = cwnd + 1).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
-Ketika congestion terjadi karena timeout atau duplikat acknowledgement maka sshthresh akan ditetapkan sshthresh = 0.5 x cwnd. Dan masuk ke fase slow start (cwnd = 1) pada varian TCP Tahoe.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
3. Fast retransmit. Tujuan dari fase fast retransmit adalah respon yang cepat jika terjadi paket yang hilang. -Setelah 3 duplikat acknowledgement diterima, retransmission untuk segmen yang hilang segera dilakukan tanpa menunggu batas waktu RTO berakhir sampai diterima non duplikat acknowledgement. -Ssthresh akan berubah. flightsize : merupakan jumlah data yang telah dikirim tapi belum diacknowledgement. advertised window (awnd) : ukuran window penerima yang diberitahukan flightsize = min (awnd, cwnd) ssthresh ← max (flightsize/2, 2) -Ketika terjadi timeout kembali, maka nilai timeout = dua kali RTO. -Akan terus melakukan fast retransmit setiap terjadi loss retransmission. -Exponential back-off -Maksimal timeout 64 seconds. -Maksimal 12 restransmits. -Kemudian akan masuk fase fast recovery.
4. Fast recovery.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Tujuan dari fase fast recovery adalah tetap menjaga throughput tinggi saat terjadi congestion yang kecil dan sedang. -Setelah fase fast retransmit, maka akan menetapkan -ssthresh ← max (flightsize / 2, 2) -Melakukan retransmit paket yang hilang. -cwnd ← ssthresh + ndup (window inflation) -Akan menunggu sampai W = min (awnd, cwnd) cukup besar; mengirimkan paket baru. -pada non-duplikat acknowledgement (1 RTT kemudian), cwnd ← ssthresh (window deflation) -Kemudian masuk ke fase congestion avoidance.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
2.4.
OMNET ++ OMNET ++ adalah extensible, modular, komponen kerangka dan library
simulasi berbasis C ++, paling utama digunakan untuk simulator membangun jaringan. Jaringan yang dimaksud dalam arti yang luas mencakup jaringan komunikasi kabel dan nirkabel, jaringan on-chip, antrian jaringan, dan sebagainya. Fungsi spesifik dari OMNET ++ adalah mendukung jaringan sensor, jaringan ad-hoc nirkabel, protokol internet, pemodelan kinerja, jaringan fotonik, dan lain lain yang disediakan oleh kerangka model yang dikembangkan sebagai proyek independen. OMNET ++ menyediakan komponen arsitektur sebagai modelnya. Komponen (modul) diprogram dalam bahasa C ++, kemudian dirakit menjadi komponen yang lebih besar dan dimodelkan menggunakan bahasa tingkat tinggi (NED). Penggunaan model dilakukan secara gratis. OMNET ++ memiliki dukungan GUI yang luas, dan karena arsitektur OMNET ++ modular, kernel simulasi (dan model) dapat tertanam dengan mudah ke dalam aplikasi kita. OMNET ++ bukan simulator jaringan saja, namun untuk saat ini OMNeT ++ lebih dikenal luas sebagai platform simulasi jaringan dalam komunitas ilmiah serta dalam pengaturan industri, dan membangun sebuah komunitas pengguna yang besar. OMNET ++ menawarkan IDE berbasis Eclipse, lingkungan graphical runtime, dan sejumlah alat-alat lain. Ada ekstensi untuk real-time simulasi, emulasi jaringan, bahasa pemrograman alternatif (Java, C #), integrasi database, integrasi SystemC, dan beberapa fungsi lainnya. OMNET ++ dirilis dengan full source code, dan bebas untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
digunakan, dimodifikasi dan didistribusikan di lembaga-lembaga akademik
dan
pendidikan di bawah lisensi sendiri (Academic Public License). Komponen OMNET ++ adalah : 1. Simulation kernel library. 2. NED topology description language. 3. OMNET ++ IDE berbasis Eclipse. 4. Tampilan pengguna untuk eksekusi simulasi dan link ke simulation executable (Tkenv). 5. Tampilan pengguna berupa baris perintah untuk eksekusi simulasi (Cmdenv). 6. Utilitas (makefile creation tool dan lain – lain). 7. Dokumentasi dan contoh simulasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III PERANCANGAN SIMULASI JARINGAN
3.1.
Parameter Simulasi. Pada penelitian ini, penulis sudah menentukan parameter - parameter jaringan
yang akan digunakan. Parameter jaringan ini bersifat konstan dan akan dipakai terus pada setiap simulasi yang dilakukan. Parameter jaringan yang dimaksud dapat dilihat pada tabel dibawah ini. Parameter
Nilai
Jumlah node
40, 60, 80 node
Banyak koneksi
1 TCP
Area simulasi
1000 x 1000 m
Waktu simulasi
1000 second
TCP Type
TCP Reno
Pola pergerakan node
Random Way Point
Protokol routing
OLSR
File size
500 MB
Protokol model
TCP
Kecepatan pergerakan node
2mps, 5mps
Pause time
2s
45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
Tabel 3.1.1. Parameter jaringan.
3.2.
Parameter Kinerja. Parameter kinerja yang digunakan pada penelitian ini adalah : 1. Congestion Window (CWND). CWND merupakan variable
tetap
milik
TCP
yang digunakan
untuk
menentukan jumlah byte yang akan dikirim setiap saat. CWND ini dikelola oleh pengirim. 2. Retransmission Time Out (RTO). RTO merupakan suatu tanda yang menandakan bahwa tidak ada pesan balasan yang diterima dalam standart kurun waktu yang ditentukan. RTO paling banyak disebabkan oleh kemacetan jaringan, gagal dalam ARP request, packet filtering, kesalahan dalam routing, atau paket dibuang diam – diam. 3. TCP Throughput. TCP Throughput adalah jumlah bit data yang dikirim melalui saluran kanal komunikasi per satuan waktu ke terminal tertentu dalam suatu jaringan, dari satu node ke node yang lain pada lapisan transport. Satuan throughput jaringan yaitu bps (bit per second). Nilai dari throughput tergantung pada lalu lintas data yang sedang terjadi pada jaringan. Nilai throughput akan semakin baik jika nilainya semakin besar. 4. Overhead Ratio.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
Overhead Ratio adalah perbandingan antara total bit control message dari protokol routing semua node dengan total TCP bit data yang diterima oleh node penerima. Rumus untuk menghitung overhead ratio : 𝑂𝑣𝑒𝑟ℎ𝑒𝑎𝑑 𝑟𝑎𝑡𝑖𝑜 =
total bit 𝑐𝑜𝑛𝑡𝑟𝑜𝑙 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 total TCP bit data yang diterima
5. Control messages. Control messages merupakan pesan yang di broadcast oleh suatu node secara berkala yang digunakan untuk
memulai mendeteksi hubungan dan menjaga
hubungan dengan node tetangganya yang berada disekitarnya (pada OLSR menggunakan hello messages dan topology control messages).
3.3.
Skenario Simulasi. Beberapa skenario digunakan untuk mengukur kinerja TCP Reno pada protokol
routing OLSR. Pertama – tama, skenario simulasi dibentuk dengan area 1000 x 1000 m, kecepatan pergerakan node 2 mps dengan 1 koneksi TCP, dan jumlah node 40 menggunakan Random Way Point Mobility. Selanjutnya jumlah node akan ditambah menjadi 60 dan 80. Pada simulasi ini penulis memilih satu koneksi TCP karena ingin mengetahui unjuk kerja dari TCP itu sendiri tanpa adanya gangguan. Sehingga hasil yang didapat adalah benar – benar unjuk kerja TCP murni dengan varian TCP Reno. Setiap skenario dijalankan sebanyak 3 kali dengan run id yang berbeda. Pada bagian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
ini akan dijelaskan mengenai skenario simulasi yang ditunjukkan pada tabel dibawah ini :
No
Area simulasi
Node
Kecepatan
Waktu simulasi
1
1000 x 1000 m
40
2 mps
1000 second
2
1000 x 1000 m
60
2 mps
1000 second
3
1000 x 1000 m
80
2 mps
1000 second
Tabel 3.2.1. Tabel skenario simulasi dengan penambahan jumlah node dan kecepatan pergerakan node 2mps.
Skenario selanjutnya menambahkan jumlah node dan kecepatan menjadi 5 mps. No
Area simulasi
Node
Kecepatan
Waktu simulasi
1
1000 x 1000 m
40
5 mps
1000 seconds
2
1000 x 1000 m
60
5 mps
1000 seconds
3
1000 x 1000 m
80
5 mps
1000 seconds
Tabel 3.2.2. Tabel skenario simulasi dengan penambahan jumlah node dan kecepatan pergerakan node 5mps.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
3.3.
Topologi Jaringan. Bentuk topologi jaringan ad-hoc tidak dapat diramalkan karena merupakan
karakteristik dari jaringan
ad-hoc tersebut, sehingga topologi jaringan
secara random. Dalam simulasi baik posisi node , pergerakan node
ini dibuat dan koneksi
yang terjadi tidak akan sama seperti yang direncanakan. Berikut adalah snapshot jaringan dengan jumlah node 40, 60 dan 80.
Gambar 3.3.1. Snapshot jaringan dengan jumlah node 40.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
Gambar 3.3.2. Snapshot jaringan dengan jumlah node 60.
Gambar 3.3.3. Snapshot jaringan dengan jumlah node 80.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV ANALISIS DATA
Simulator yang digunakan pada simulasi ini adalah OMNET++ versi 4.6 dengan framework inet versi 2.5.0. Modul protokol routing OLSR, TCP dan ad-hoc host sudah tersedia di dalam framework inet. Dalam simulasi ini, nilai attribute protokol routing OLSR dan TCP yang digunakan adalah nilai yang terdapat di framework inet. Simulasi OMNET++ dapat dijalankan pada 2 antarmuka yang berbeda yaitu Tkenv dan Cmdenv. Tkenv adalah antarmuka pengguna berbasis grapichal window. Tkenv mendukung untuk interaksi simulasi, tracing dan debugging. Cmdenv adalah antarmuka pengguna yang minim dan cepat yang berbasis batch. Pada Cmdenv, jika simulasi berhenti dengan suatu pesan kesalahan, maka urutan selanjutnya dalam file konfigurasi akan tetap dijalankan. Antarmuka yang digunakan pada simulasi ini adalah Tkenv. Ketika simulasi dijalankan maka akan dihasilkan file output dengan ektensi .vec, .vci, .rt, .sca dan .elog. Selain output yang dihasilkan, simulasi juga akan menampilkan event simulasi pada tab console (Cmdenv) dan tab event (Tkenv). File output hasil simulasi akan dianalisa pada IDE menggunakan sequence chart tool. Pengguna hanya perlu membuat file baru dengan ekstensi .anf pada folder results di project simulasi. Untuk dapat melihat data hasil simulasi, pengguna harus memasukkan
51
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
file dengan ekstensi .vec dan .sca pada wild card. Selanjutnya, pengguna tinggal memilih data yang ingin ditampilkan pada kolom filter.
4.1.
Hasil Simulasi. Berikut ditampilkan hasil simulasi TCP performance metrics, total control
messages OLSR dan delivery performance yang diambil dari rata – rata 3 kali pengujian per skenario. 4.1.1. Skenario 1 (area = 1000x1000m, node = 40, kecepatan = 2mps, waktu = 1000 s) Snapshot CWND.
Gambar 4.1.1.1. Grafik CWND node 40 dengan kecepatan 2mps.
A. TCP performance metrics :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Peformance metrics
Nilai
CWND
45.01629 kByte / cwnd
(Avg data transferred / cwnd) RTO
64.8333
(Num of RTO) Tabel 4.1.1.1. Tabel TCP performance metrics node 40 dengan kecepatan 2mps.
B. OLSR : Total control messages
78188.67578 kByte
(Overhead messages) Tabel 4.1.1.2. Tabel total control messages node 40 dengan kecepatan 2mps.
C. Delivery performance : -
TCP Throughput
: 211.8897142 kByte/sec
-
Overhead ratio
: 0.68211
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
4.1.2. Skenario 2 (area = 1000x1000m, node = 60, kecepatan = 2mps, waktu = 1000 s) Snapshot CWND.
Gambar 4.1.2.1. Grafik CWND node 60 dengan kecepatan 2mps.
A. TCP performance metrcis : Performance metrics
Nilai
CWND
33.78444 kByte / cwnd
(Avg data transferred / cwnd) RTO
94.0000
(Num of RTO) Tabel 4.1.2.1. Tabel TCP performance metrics node 60 dengan kecepatan 2mps.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
B. OLSR : Total control messages
229545.33203 kByte
(Overhead messages) Tabel 4.1.2.2. Tabel total control messages node 60 dengan kecepatan 2mps.
C. Delivery performance : -
TCP Throughput
: 210.8990112 kByte/sec
-
Overhead ratio
: 2.23146
4.1.3
Skenario 3 (Area = 1000x1000m, node = 80, kecepatan = 2mps, waktu = 1000 s)
Snapshot CWND.
Gambar 4.1.3.1. Grafik CWND node 80 dengan kecepatan 2mps.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
A. TCP performance metrics : Performance metrics
Nilai
CWND
29.58113 kByte / cwnd
(Avg data transferred / cwnd) RTO
102.8333
(Num of RTO) Tabel 4.1.3.1. Tabel TCP performance metrics node 80 dengan kecepatan 2mps.
B. OLSR : Total control messages
518220.15495 kByte
(Overhead messages)
Tabel 4.1.3.2. Tabel total control messages node 80 dengan kecepatan 2mps.
C. Delivery performance : -
TCP Throughput
: 208.5503391 kByte/sec
-
Overhead ratio
: 6.5630
4.1.4. Skenario 4 (Area = 1000x1000m, node = 40, kecepatan = 5mps, waktu = 1000 s) Snapshot CWND.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
Gambar 4.1.4.1. Grafik CWND node 40 dengan kecepatan 5mps.
A. TCP performance metrics : Performance metrics CWND
Nilai 24.80714 kByte / cwnd
(Avg data transferred / cwnd) RTO
69.5000
(Num of RTO) Tabel 4.1.4.1. Tabel TCP performance metrics node 40 dengan kecepatan 5mps. B. OLSR : Total control messages
87298.60026 kByte
(Overhead messages) Tabel 4.1.4.2. Tabel total control messages node 40 dengan kecepatan 5mps.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
C. Delivery performance : -
TCP Throughput
: 199.5757132 kByte/sec
-
Overhead ratio
: 3.84765
4.1.5. Skenario 5 (Area = 1000x1000m, node = 60, kecepatan = 5mps, waktu = 1000 s) Snapshot CWND.
Gambar 4.1.5.1. Grafik CWND node 60 dengan kecepatan 5mps.
A. TCP performance metrics : Performance metrics CWND (Avg data transferred / cwnd)
Nilai 19.48351 kByte / cwnd
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
RTO
80.6667
(Num of RTO) Tabel 4.1.5.1. Tabel TCP performance metics node 60 dengan kecepatan 5mps.
B. OLSR : Total control messages
266681.60938 kByte
(Overhead messages) Tabel 4.1.5.2. Tabel total control messages node 60 dengan kecepatan 5mps.
C. Delivery performance : -
TCP Throughput
: 194.6042079 byte/sec
-
Overhead ratio
: 18.6102
4.1.6. Skenario 6 (Area = 1000x1000m, node = 80, kecepatan = 5mps, waktu = 1000 s) Snapshot CWND.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
Gambar 4.1.6.1. Grafik CWND node 80 dengan kecepatan 5mps.
A. TCP performance metrics : Performance metrics
Nilai
CWND
16.52993 kByte / cwnd
(Avg data transferred / cwnd) RTO
95.3333
(Num of RTO) Tabel 4.1.6.1. Tabel TCP performance metrics node 80 dengan kecepatan 5mps.
B. OLSR : Total control messages
619080.74089 kByte
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
(Overhead messages)
Tabel 4.1.6.2. Tabel total control messages node 80 dengan kecepatan 5mps.
C. Delivery performance :
4.2. -
-
TCP Throughput
: 189.6020452 kByte/sec
-
Overhead ratio
: 32.0266
Analisis perbandingan unjuk kerja dari semua skenario. CWND Rata – rata data transfer per CWND (kByte/CWND) Node
Kecepatan 2mps
Kecepatan 5mps
40
45.01629
24.80714
60
33.78444
19.48351
80
29.58113
16.52993
Tabel 4.2.1 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata data transfer per cwnd
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
Rata-rata data transfer (kB)/cwnd 50 45.01629 45
kByte / cwnd
40 33.78444
35
29.58113
30 25
2mps 5mps
24.80714 19.48351
20
16.52993
15
40
60
80
node
Gambar 4.2.1 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata byte transfer per cwnd Pada gambar 4.2.1 menunjukkan bahwa penambahan jumlah node pada area simulasi yang tetap (node density naik) akan membuat byte transfer per cwnd mengalami penurunan. Hal ini terjadi karena semakin banyak jumlah node dalam jaringan, maka semakin bertambah jumlah control messages yang di-broadcast dalam jaringan (mengacu pada gambar 4.2.5) sehingga penggunanan bandwith lebih banyak terpakai oleh control messages daripada untuk transfer data. Ketika kecepatan pergerakan node bertambah, maka akan membuat byte transfer per cwnd mengalami penurunan juga. Karena dengan bertambahnya kecepatan pergerakan node, maka topologi jaringan akan berubah semakin cepat sehingga akan lebih banyak terjadi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
update informasi topologi jaringan yang berakibat pada meningkatnya jumlah control messages.
RTO Rata - rata RTO Node
Kecepatan 2mps
Kecepatan 5mps
40
64.83
69.50
60
94.00
116.67
80
102.83
133.50
Tabel 4.2.3 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata RTO
Rata-rata RTO 140.00
rata-rata jumlah timeout / simulasi
-
133.50
130.00 116.67
120.00 110.00
102.83
100.00
94.00
2mps
90.00
5mps
80.00
70.00
69.50 64.83
60.00 40
60
node
80
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
Gambar 4.2.3 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata RTO Pada gambar 4.2.3 menunjukkan bahwa penambahan jumlah node pada area simulasi yang tetap (node density naik) akan membuat nilai RTO meningkat. Nilai RTO meningkat dikarenakan semakin banyak jumlah node dalam jaringan, maka jumlah control messages yang di-broadcast dalam jaringan juga semakin bertambah, sehingga bandwith lebih banyak dipakai oleh broadcast control messages. Selain itu, nilai RTO meningkat juga disebabkan oleh perubahan jalur routing akibat dari topologi jaringan yang berubah karena pergerakan node. Hal ini akan menyebabkan jumlah control messages meningkat dan mengakibatkan beban jaringan meningkat, sehingga aliran data menjadi lambat dan terjadi delay acknowledgement atas paket yang telah diterima. Jika delay acknowledgement melebihi batas waktu yang ditentukan, maka TCP akan mengasusmsikan terjadinya timeout. Banyaknya timeout yang terjadi tersebut dikarenakan round trip time TCP bervariasi sehingga perhitungan timeout menjadi tidak akurat. Ketika kecepatan pergerakan node bertambah, maka timeout yang terjadi akan semakin meningkat. Hal ini disebabkan oleh topologi jaringan yang berubah cepat. Topologi jaringan yang berubah cepat akan menyebabkan jalur routing mengalami perubahan dengan cepat. Jika protokol routing tidak dapat menyediakan jalur dengan cepat untuk keperluan TCP, maka akan terjadi timeout pada ranah TCP. Supaya TCP tidak terlalu lama menunggu, maka protokol routing harus bekerja keras
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
untuk menyediakan jalur kembali. Sehingga akan dibutuhkan lebih banyak control messages, untuk menyediakan jalur.
Control messages Rata - rata control messages (kByte) Node
Kecepatan 2mps
Kecepatan 5mps
40
78188.67578
87298.60026
60
229545.33203
266681.60938
80
518220.15495
619080.74089
Tabel 4.2.5 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata control messages
Rata - rata control messages 619080.74089
630000
560000
518220.15495
490000 420000
kByte
-
350000
2mps
266681.60938 229545.33203
280000
5mps
210000
140000
87298.60026 78188.67578
70000 40
60
node
80
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
Gambar 4.2.5 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata control messages Pada gambar 4.2.5 menunjukkan bahwa penambahan jumlah node pada area simulasi yang tetap (node density naik) akan membuat control messages mengalami kenaikan. Hal ini terjadi karena jaringan menjadi lebih padat, sehingga semakin banyak node yang melakukan broadcast control messages. Dan control messages akan lebih terlihat kenaikan yang signifikan ketika kecepatan pergerakan node bertambah, dimana update informasi topologi jaringan akan lebih sering terjadi dan akan lebih banyak control messages yang digunakan untuk menangani topologi jaringan yang berubah dengan cepat.
-
TCP Throughput Rata - rata TCP throughput (kByte/sec) Node
Kecepatan 2mps
Kecepatan 5mps
40
211.8897142
199.5757132
60
210.8990112
194.6042079
80
208.5503391
189.6020452
Tabel 4.2.6 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata throughput
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
Rata-rata TCP throughput 215
211.8897142
210.8990112
208.5503391
210
kByte/sec
205 200
199.5757132 2mps
194.6042079
195
5mps 189.6020452
190 185 180 40
60
80
node
Gambar 4.2.6 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata TCP throughput Pada gambar 4.2.6 menunjukkan bahwa penambahan jumlah node pada area simulasi yang tetap (node density naik) akan membuat nilai throughput mengalami penurunan. Penurunan terjadi karena jumlah control messages mengalami kenaikan seiring dengan penambahan jumlah node, sehingga bandwith lebih banyak terpakai oleh control messages. Selain itu, nilai RTO juga mengalami peningkatan. Penurunan throughput juga terlihat ketika kecepatan pergerakan node bertambah. Penurunan ini terjadi karena topologi jaringan berubah dengan cepat sehingga dibutuhkan control messages yang lebih banyak untuk menangani perubahan topologi jaringan. Selain itu, nilai RTO juga mengalami peningkatan ketika kecepatan pergerakan node bertambah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
-
Overhead ratio Rata - rata overhead ratio Node
Kecepatan 2mps
Kecepatan 5mps
40
0.6821116
3.8476484
60
2.2314590
18.6102318
80
6.5630406
32.0266334
Tabel 4.2.7 Tabel pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata overhead ratio
Rata-rata overhead ratio 35
32.02663342
30 25 18.61023177
20
2mps
15
5mps 10
5
6.563040645 3.847648424
0.682111571
2.231458998
0 40
60
80
node
Gambar 4.2.7 Grafik pengaruh penambahan jumlah node dan kecepatan terhadap rata – rata overhead ratio
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
Pada gambar 4.2.7 menunjukkan bahwa penambahan jumlah node pada area simulasi yang tetap (node density naik) akan membuat overhead ratio mengalami kenaikan. Overhead ratio mengalami kenaikan karena semakin banyak jumlah node dalam jaringan, maka
jumlah control messages yang di-broadcast ke semua node
dalam jaringan juga akan semakin bertambah. Selain itu jumlah data yang diterima oleh penerima mengalami penurunan, hal ini dikarenakan jumlah data yang di-transfer per CWND mengalami penurunan dan nilai RTO yang mengalami peningkatan. Ketika kecepatan pergerakan node bertambah, maka overhead ratio akan mengalami kenaikan yang signifikan karena akan lebih sering terjadi update informasi topologi jaringan. Update informasi topologi jaringan ini terjadi karena topologi jaringan berubah dengan cepat, sehingga dibutuhkan jumlah control messages yang lebih banyak untuk menangani topologi jaringan yang berubah cepat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB V KESIMPULAN DAN SARAN 5.1.
Kesimpulan. Dari hasil simulasi yang dilakukan, kesimpulan yang didapatkan adalah sebagai
berikut : 1. OLSR adalah protokol routing proaktif yang didesain untuk MANET. Jumlah control messages dari OLSR mengalami kenaikan seiring dengan penambahan jumlah node dan kecepatan pergerakan node pada area simulasi yang tetap (node density naik). Kenaikan jumlah control messages dari OLSR menyebabkan overhead
routing
tinggi sehingga
akan
membebani jaringan dan berakibat pada pemakaian bandwith yang lebih banyak oleh control messages daripada untuk transfer data. 2. Ketika TCP bekerja diatas OLSR, TCP mengalami banyak timeout. Banyaknya timeout terlihat dari nilai RTO yang mengalami kenaikan seiring dengan penambahan jumlah node dan kecepatan pada area simulasi yang tetap (node density naik). Timeout terjadi karena perubahan topologi jaringan sehingga jumlah control messages mengalami kenaikan dan menyebabkan beban jaringan meningkat. Hal ini berdampak pada aliran TCP data dan acknowledgement menjadi terlambat untuk diterima. 3. TCP congestion control mengasumsikan bahwa hilangnya paket terjadi karena congestion. Tetapi hilangnya paket pada MANET bukan disebabkan 70
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
oleh congestion, melainkan disebabkan oleh node mobility. Node mobility akan menyebabkan perubahan topologi jaringan sehingga protokol routing harus bekerja lebih keras untuk menangani perubahan topologi jaringan. Perubahan topologi jaringan menyebabkan byte in flight (data yang berada di
perjalanan)
akan
hilang
sehingga
paket
yang
dikirim
atau
acknowledgement tidak sampai dan akan mempengaruhi perhitungan Round Trip Time (RTT). Perhitungan RTT tersebut akan mempengaruhi perhitungan Retransmission Time Out (RTO) menjadi tidak akurat.
5.2.
Saran. Untuk pengembangan lebih lanjut, beberapa hal yang dapat digunakan sebagai
bahan penelitian adalah : 1. Membandingkan dengan TCP Reno yang menggunakan SACK option. 2. Melakukan pengujian terhadap varian TCP yang lain. 3. Melakukan pengujian terhadap attribute – attribute yang ada di dalam routing protokol OLSR dan TCP Reno.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR PUSTAKA
[1] http://ietd.inflibnet.ac.in/bitstream/10603/4106/10/10_chapter%202.pdf [2] Drs. Baruch Awerbuch & Amitabh Mishra, “ Introduction to Ad hoc Networks “, 2008, Department of Computer Science Johns Hopkins University. [3] Wahyu Edy Seputra, Sukiswo, S.T., M.T., Ajub Ajulian Zahra, S.T., M.T., “ PERBANDINGAN KINERJA PROTOKOL AODV DENGAN OLSR PADA MANET “, Jurusan Teknik Elektro, Fakultas Teknik, Universitas Diponegoro. [4] Anuj K Gupta, Harsh Sadarwati, Anil Kumar Verma., “ Review of Various Routing Protocols for MANETs “, International Journal of Information and Electronics Enggineering. [5] http://www2.ensc.sfu.ca/~ljilja/ENSC835/Spring09/News/Kurose_Ross/Powe rPoint_Slides/Chapter3_4th_ed_June_8_2007.pdf [6] https://technet.microsoft.com/en-us/library/cc958821.aspx [7] http://www.tcpipguide.com/free/t_TCPCharacteristicsHowTCPDoesWhatItD oes.htm [8] www.cs.virginia.edu/~itlab/.../module14-tcp2V9.... [9] Eric Law, “ Transport Layers for Mobile Ad-Hoc Networks “, March 2005, University of California.
72
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
[10] Ahmad Al Hanbali, Eitan Altman, Philippe Nain., “ A Survey of TCP over Mobile Ad Hoc Networks “.,23 May 2006., inria-00071406. [11] Ghassan A. QasMarrogy, Aous Y. Ali, Dr. Emmanuel S. QasMarrogy, Adil H. M. Aldlawie., “ PERFORMANCE ANALYSIS OF ROUTING PROTOCOLS AND TCP VARIANTS UNDER HTTP AND FTP TRAFFIC IN MANETS “,Vol.6, No.6, November 2014., International Journal of Computer Networks & Communications (IJCNC). [12] Paul D. Amer, Professor, “ TCP Variations : Tahoe, Reno, New Reno, Vegas, Sack “, Computer & Information Sciences University of Delaware. [13] Sajjad Ali & Asad Ali, “ Performance Analysis of AODV, DSR and OLSR in MANET “,Sweden 2009, Department of Electrical Engineering with emphasis on Telecommunication Blekinge Institute of Technology. [14] Jagdeep Singh, Dr. Rajiv Mahajan., “ Performance Analysis Of AODV And OLSR Using OPNET “,volume 5 number 3 –Nov 2013, International Journal of Computer Trends and Technology (IJCTT). [15] Ramin Hekmat, “ Ad-Hoc Networks Part 7: Routing in ad-hoc and sensor networks “,First semester 2006, Delft University of Technology Electrical Engineering, Mathematics and Computer Science. [16] https://tools.ietf.org/html/rfc793
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
A. Listing Program. 1. Omnetpp.ini [General] network = olsrnetwork cmdenv-express-mode = true record-eventlog = false sim-time-limit = 1000s num-rngs = 3 repeat = 30 tkenv-plugin-path = ../../../etc/plugins **.scalar-recording = true **.vector-recording = true
# channel physical parameters **.tcpType = "TCP"
# mobility **.mobility.constraintAreaMinZ = 0m **.mobility.constraintAreaMaxZ = 0m **.mobility.constraintAreaMinX = 0m **.mobility.constraintAreaMinY = 0m
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
# nic settings **.wlan[*].typename = "IdealWirelessNic" **.wlan[*].bitrate = 2Mbps **.wlan[*].mgmt.frameCapacity = 10 **.wlan[*].mac.address = "auto" **.wlan[*].mac.maxQueueSize = 14 **.wlan[*].mac.rtsThresholdBytes = 3000B **.wlan[*].mac.retryLimit = 7 **.wlan[*].mac.cwMinData = 7 **.wlan[*].mac.cwMinMulticast = 31 **.wlan[*].mac.headerLength = 10B **.wlan[*].radio.transmissionRange = 250m
# lifecycle **.hasStatus = true **.hasTcp = true
# ip settings **.ip.procDelay = 0s
# ARP settings **.arp.retryTimeout = 1s **.arp.retryCount = 3 **.arp.cacheTimeout = 100s
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
# tcp settings **.tcp.tcpAlgorithmClass = "TCPReno"
#
TCPReno/TCPTahoe/TCPNewReno/TCPNoCongestionControl/DumbTCP
**.host[*].mobility.initFromDisplayString = false
#tcp app host 0 **.host[0].numTcpApps = 1 **.host[0].mobilityType = "StationaryMobility" **.host[0].tcpApp[*].typename = "TCPSessionApp" **.host[0].tcpApp[*].sendBytes = 500MiB **.host[0].tcpApp[*].active = true **.host[0].tcpApp[*].localAddress = "host[0]" **.host[0].tcpApp[*].localPort = 1234 **.host[0].tcpApp[*].connectAddress = "host[1]" **.host[0].tcpApp[*].connectPort = 4567
#tcp app host 1 **.host[1].numTcpApps = 1 **.host[1].mobilityType = "StationaryMobility" **.host[1].tcpApp[*].typename = "TCPSinkApp" **.host[1].tcpApp[*].active = true **.host[1].tcpApp[*].localAddress = "host[1]" **.host[1].tcpApp[*].connectAddress = "host[0]" **.host[1].tcpApp[*].connectPort = 1234
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
**.host[1].tcpApp[*].localPort = 4567
[Config Density_Node_40_2mps] *.numHosts = 40 **.host[2..40].mobilityType = "RandomWPMobility" **.host[2..40].mobility.speed = 2mps **.host[2..40].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
[Config Density_Node_40_5mps] *.numHosts = 40 **.host[2..40].mobilityType = "RandomWPMobility" **.host[2..40].mobility.speed = 5mps **.host[2..40].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[Config Density_Node_60_2mps] *.numHosts = 60 **.host[2..60].mobilityType = "RandomWPMobility" **.host[2..60].mobility.speed = 2mps **.host[2..60].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
[Config Density_Node_60_5mps] *.numHosts = 60 **.host[2..60].mobilityType = "RandomWPMobility" **.host[2..60].mobility.speed = 5mps **.host[2..60].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[Config Density_Node_80_2mps] *.numHosts = 80 **.host[2..80].mobilityType = "RandomWPMobility" **.host[2..80].mobility.speed = 2mps **.host[2..80].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
[Config Density_Node_80_5mps] *.numHosts = 80 **.host[2..80].mobilityType = "RandomWPMobility" **.host[2..80].mobility.speed = 5mps **.host[2..80].mobility.waitTime = 2s **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.host[0].mobility.initialX = 125m **.host[0].mobility.initialY = 500m **.host[1].mobility.initialX = 875m **.host[1].mobility.initialY = 500m
2. Olsrnetwork.ned
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
package scenario1.simulations;
import inet.base.LifecycleController; import inet.networklayer.autorouting.ipv4.IPv4NetworkConfigurator; import inet.networklayer.ipv4.RoutingTableRecorder; import scenario1.olsrhost; import inet.world.radio.IdealChannelModel; import inet.world.scenario.ScenarioManager;
network olsrnetwork { parameters: int numHosts; //
@display("bgb=827,363"); submodules:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
channelControl: IdealChannelModel { parameters: @display("p=50,50"); } configurator: IPv4NetworkConfigurator { parameters: config = xml("
"); @display("p=50,100"); } routingTableRecorder: RoutingTableRecorder { parameters: @display("p=50,150"); } lifecycleController: LifecycleController { parameters: @display("p=50,200"); } scenarioManager: ScenarioManager { parameters: script = default(xml ("<scenario/>")); @display("p=50,250"); } host[numHosts]: olsrhost { parameters: @display("i=device/pocketpc_s;r=,,#707070");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
} connections allowunconnected: }
3. Olsrhost.ned
package scenario1;
import inet.networklayer.manetrouting.OLSR; import inet.nodes.inet.WirelessHost; import inet.util.ThruputMeter;
module olsrhost extends WirelessHost
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
{ parameters: @display("i=device/cellphone"); IPForward = true; wlan[*].mgmtType = default("Ieee80211Mg mtAdhoc"); submodules: olsr: OLSR { @display("p=558,307"); } thruputMeterRcvd: ThruputMeter { @display("p=465,261"); } connections: olsr.to_ip --> networkLayer.transportIn++; networkLayer.transportOut++ --> thruputMeterRcvd.in; olsr.from_ip <-- thruputMeterRcvd.out; }
4. Wirelesshost.ned
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
package inet.nodes.inet;
module WirelessHost extends StandardHost { @display("i=device/wifilaptop"); numRadios = default(1); }
5. Standarthost.ned
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
package inet.nodes.inet;
import inet.applications.IPingApp; import inet.applications.ISCTPApp; import inet.applications.ITCPApp; import inet.applications.IUDPApp; import inet.transport.ISCTP; import inet.transport.ITCP; import inet.transport.IUDP; import inet.util.ThruputMeter;
module StandardHost extends NodeBase
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
{ parameters: @display("i=device/pc2"); int numTcpApps = default(0); // no of TCP apps. Specify the app types in INI file with tcpApp[0..1].typename="TCPEchoApp" syntax int numUdpApps = default(0); // no of UDP apps. Specify the app types in INI file with udpApp[0..1].typename="UDPVideoStreamCli" syntax int numSctpApps = default(0); // no of SCTP apps. Specify the app types in INI file with sctpApp[0..1].typename="SCTPServer" syntax int numPingApps = default(0); // no of PING apps. Specify the app types in INI file with pingApp[0..1].typename="PingApp" syntax bool hasTcp = default(numTcpApps>0); bool hasUdp = default(numUdpApps>0); bool hasSctp = default(numSctpApps>0); string tcpType = default(firstAvailable("TCP", "TCP_lwIP", "TCP_NSC", "TCP_None")); // tcp implementation (e.g. ~TCP, ~TCP_lwIP, ~TCP_NSC) or ~TCPSpoof string udpType = default(firstAvailable("UDP","UDP_ None")); string sctpType = default(firstAvailable("SCTP","SCTP_None")); IPForward = default(false); // disable routing by default networkLayer.proxyARP = default(false); submodules: tcpApp[numTcpApps]: <> like ITCPApp { parameters: @display("p=147,54,row,60"); } tcp:
like ITCP if hasTcp {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
parameters: @display("p=147,141"); } udpApp[numUdpApps]: <> like IUDPApp { parameters: @display("p=329,54,row,60"); } udp: like IUDP if hasUdp { parameters: @display("p=329,141"); } sctpApp[numSctpApps]: <> like ISCTPApp { parameters: @display("p=527,54,row,60"); } sctp: <sctpType> like ISCTP if hasSctp { @display("p=527,141"); } pingApp[numPingApps]: <default("PingApp")> like IPingApp { parameters: @display("p=635,141,row,60"); } thruputMeter: ThruputMeter { @display("p=178,226"); } connections allowunconnected:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
for i=0..numTcpApps-1 { tcpApp[i].tcpOut --> tcp.appIn++; tcpApp[i].tcpIn <-- tcp.appOut++; } //
tcp.ipOut --> networkLayer.transportIn++ if hasTcp;
//
tcp.ipIn <-- networkLayer.transportOut++ if hasTcp;
tcp.ipOut --> networkLayer.transportIn++ if hasTcp; thruputMeter.in <-- networkLayer.transportOut++ if hasTcp; tcp.ipIn <-- thruputMeter.out if hasTcp;
for i=0..numUdpApps-1 { udpApp[i].udpOut --> udp.appIn++; udpApp[i].udpIn <-- udp.appOut++; }
udp.ipOut --> networkLayer.transportIn++ if hasUdp; udp.ipIn <-- networkLayer.transportOut++ if hasUdp;
for i=0..numSctpApps-1 { sctpApp[i].sctpOut --> sctp.from_appl++; sctp.to_appl++ --> sctpApp[i].sctpIn; } sctp.to_ip --> networkLayer.transportIn++ if hasSctp; networkLayer.transportOut++ --> sctp.from_ip if hasSctp;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
for i=0..numPingApps-1 { networkLayer.pingOut++ --> pingApp[i].pingIn; networkLayer.pingIn++ <-- pingApp[i].pingOut; } }
B. Rata – rata hasil pengujian simulasi. CWND Kecepata Node
n
CWND
Rata - rata CWND
40 2mps
46334.51409
46867.37242
45088.15242
46096.67964
5mps
23725.00616
25554.09075
26928.44352
25402.51347
60 2mps
33346.21672
34629.01675
35810.56463
34595.26603
5mps
21900.04017
18009.38071
19943.92338
19951.11475
80 2mps
31501.35385
28645.80065
30726.06609
30291.07353
5mps
15917.76294
17070.86010
17791.31527
16926.64610
RTO Node
Kecepatan
NumRTO
Rata - rata NumRTO
40 2mps
66.50
66.50
61.50
64.83
5mps
33.00
101.50
74.00
69.50
60 2mps
107.00
94.00
81.00
94.00
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5mps
110.00
117.00
123.00
116.67
80 2mps
105.50
85.00
118.00
102.83
5mps
134.00
141.00
126.00
133.50
Throughput node
kecepatan
Throughput
Rata - rata throughput
40 2mps
1731938.28475
1738376.36652
1737086.96506
1735800.53878
5mps
1636731.07412
1639540.29748
1628501.35682
1634924.24281
60 2mps
1725524.95330
1725331.02114
1732198.12487
1727684.69977
5mps
1616710.29346
1599099.97364
1566782.74526
1594197.67079
80 2mps
1706791.55103
1701349.54509
1717192.03868
1708444.37827
5mps
1560125.35490
1530628.63597
1568905.87261
1553219.95449
Overhead ratio Node
Kecepatan
Overhead ratio
Rata - rata overhead ratio
40 2mps
0.75836371
0.59672132
0.69124969
0.68211157
5mps
6.59061174
1.74200171
3.21033182
3.84764842
60 2mps
2.32706613
2.06763347
2.29967739
2.23145900
5mps
10.01327738
15.74634095
30.07107697
18.61023177
80 2mps
6.52771623
8.23249791
4.92890779
6.56304064
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5mps
24.04655636
52.94809888
19.08524503
32.02663342
Control messages Kecepata Node n
control messages
Rata - rata control messages
40 2mps
86140604.00
77161084.00
76893924.00
80065204.00
5mps
87549660.00
87873224.00
92758416.00
89393766.67
60 2mps
240478716.00
224085120.00
240599424.00
235054420.00
5mps
276131464.00
279914452.00
263199988.00
273081968.00
80 2mps
531789868.00
521912772.00
538269676.00
530657438.67
5mps
607677496.00
624965896.00
669172644.00
633938678.67