ANALISIS UNJUK KERJA TCP TAHOE CONGESTION … · didapat dari papper, materi kuliah Analisa Unjuk...
Transcript of ANALISIS UNJUK KERJA TCP TAHOE CONGESTION … · didapat dari papper, materi kuliah Analisa Unjuk...
i
ANALISIS UNJUK KERJA TCP TAHOE CONGESTION
CONTROL PADA ANTRIAN RED DAN DROPTAIL
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh :
Emanuel Prihmardoyo
115314054
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2016
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
PERFORMANCE ANALYSIS OF TCP CONGESTION
CONTROL IN QUEUE RED AND DROPTAIL
A THESIS
Presented as Partial Fulfillment of the Requirements
to Obtain Sarjana Komputer Degree
in Informatics Engineering Study Program
By :
Emanuel Prihmardoyo
115314054
INFORMATICS ENGINEERING STUDY PROGRAM
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2016
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
HALAMAN PERSETUJUAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN MOTTO
“Spread your wings, across the universe
It's your time to, it's your time to shine”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIS
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
ABTRAK
Pada umumnya, internet menggunakan protokol TCP sebagai protokol
transport untuk mengirimkan data. Lalu lintas data yang besar, diperlukan sebuah
mekanisme untuk meminimalisir kemacetan salah satunya dengan menerapkan
antrian. Model Antrian yang biasa dipakai yakni model antrian droptail. Trafik lalu
lintas yang besar tentunya diperlukan ruang antrian yang besar untuk dapat
mengakomodasi paket-paket yang datang. Tentunya hal tersebut akan menimbulkan
delay yang besar dan akan berpengaruh terhadap metric performance yang lain.
Sally Floyd dan Van Jacobson membuat sebuah manajemen antrian RED.
RandomEarly Detection (RED) merupakan sebuah manajemen antrian yang mana
model antrian ini dikembangkan untuk menangani lalulintas data dalam jumlah
besar. Gateway akan memberikan notifikasi secara acak terhadap koneksi tertentu
untuk menurunkan ukuran window. RED mendeteksi jaringan sibuk berdasarkan
rerata bergerak. Apabila rerata bergerak melebihi batas threshold maka paket yang
masuk dibuang ataupun ditandai berdasarkan probabilitas.
Hasil penelitian menunjukkan bahwa RED memiliki rata-rata throughput,
rata-rata end to end delay lebih baik dibandingkan droptail walaupun RED
memiliki rata-rata byte percongestion window lebih kecil. Dari sisi jumlah packet
drop RED memiliki packet drop yang lebih sedikit dibandingkan droptail
Kata kunci : RED, Random Early Drop, Random Early Detection, Droptail,
Congestion Avoidance.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
In general, the Internet using TCP as the transport protocol for sending data.
If data traffic high, we need a mechanism to minimize congestion either by
applying the queue. Queues are commonly used models that droptail queuing
models. Traffic volume which are certainly needed a room large queue to
accommodate packets coming. Of course, it will cause a high delay and will affect
other performance metrics. Sally Floyd and Van Jacobson develop a RED queue
management. Random Early Detection (RED) is a management queue which the
queue model is developed to handle large amounts of data traffic. Gateway will
provide notification randomly against a particular connection to reduce the size of
the window. RED detects a busy network is based on moving averages. If the
moving average exceeds the threshold level then the incoming packet discarded or
marked based on probability.
The results showed that RED has an average throughput, average end to end
delay is better than droptail although RED has a small average byte percongestion
window than droptail. In terms of the number of packet drop packet drop RED has
fewer than droptail.
Keywords: RED, Random Early Drop, Random Early Detection, Droptail,
Congestion Avoidance.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yang Maha Esa atas segala karunia, rahmat,
bimbingan, dan segala keperluan yang telah diberikan sehingga penulis dapat
menyelesaikan skripsi “Analisis Unjuk Kerja TCP Tahoe Congestion Control
Pada Antrian Red dan Droptail”.
Dalam menyelesaikan skripsi ini, banyak bantuan, dukungan, dan
bimbingan dari sejumlah pihak, oleh sebab itu penulis mengucapkan terimakasih
kepada :
1. Bapak Henricus Agung Hernawan, S.T, M.Kom., selaku dosen pembimbing
yang selalu siap untuk membantu proses pengerjaan skripsi ini.
2. Bapak Bambang Soelistijanto, Ph.D dan Bapak Puspaningtyas Sanjoyo Adi,
S.T., M.T., selaku panitia penguji yang memberikan saran dan masukan
yang berguna dalam skripsi ini.
3. Bapak Yohanes Sutardi dan Ibu Yasentha Suyatmi selaku orangtua yang
memberikan dukungan dan kepercayaan kepada saya dalam melalui masa-
masa sulit pengerjaan skripsi.
4. R.B. Ignasius Satryo Husodo Fahik Moruk Male yang membantu penulis
ketika penulis mengalami hambatan.
5. Rosa Chryse Sutomo yang membantu memberikan pencerahan, memberikan
semangat, serta meluangkan waktu untuk membantu penulis dalam melalui
proses demi proses untuk menyelesaikan skripsi.
6. Rossalia Hanna Agustina, Clara Skivo Ganita Anjani, Maria Rossari Putri
Kinanti, Dominikus Prayitno, dan teman-teman OMK paroki St. Ignatius
Danan yang telah memberikan support, memberikan suasana ceria, dan
tentunya yang selalu menanyakan kabar skripsi saya.
7. Teman-teman TI angkatan 2011 yang telah berbagi suka dan duka dalam
mengerjakan skripsi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
ANALISIS UNJUK KERJA TCP TAHOE CONGESTION CONTROL PADA ANTRIAN RED DAN
DROPTAIL ................................................................................................................................ i
PERFORMANCE ANALYSIS OF TCP CONGESTION CONTROL IN QUEUE RED AND DROPTAIL
............................................................................................................................................... ii
HALAMAN PERSETUJUAN .................................................................................................... iii
HALAMAN PENGESAHAN ..................................................................................................... iv
PERNYATAAN KEASLIAN KARYA ........................................................................................... v
HALAMAN MOTTO ............................................................................................................... vi
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH................................................... vii
UNTUK KEPENTINGAN AKADEMIS ...................................................................................... vii
ABTRAK ............................................................................................................................... viii
ABSTRACT ............................................................................................................................. ix
KATA PENGANTAR ................................................................................................................. x
DAFTAR ISI ........................................................................................................................... xii
DAFTAR GAMBAR ................................................................................................................ xv
DAFTAR TABEL ................................................................................................................... xvii
BAB I ....................................................................................................................................... 1
PENDAHULUAN .................................................................................................................. 1
1.1. Latar Belakang .................................................................................................... 1
1.2. Rumusan Masalah .............................................................................................. 2
1.3. Tujuan ................................................................................................................ 2
1.4. Batasan Masalah ................................................................................................ 3
1.5. Metodologi Penelitian ........................................................................................ 3
1.6 Sistematika Penulisan .............................................................................................. 4
BAB II...................................................................................................................................... 6
LANDASAN TEORI ............................................................................................................... 6
2.1. Model Antrian .................................................................................................... 6
2.2. Antrian Droptail ................................................................................................. 8
2.3. Antrian Random Early Drop (RED) ..................................................................... 9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
2.4. Transmission Control Protocol (TCP) ............................................................... 10
2.5. Fase Congestion Control Pada TCP Tahoe........................................................ 11
BAB III .................................................................................................................................. 15
PERANCANGAN ................................................................................................................ 15
3.1. Diagram Alur Penelitian ........................................................................................ 15
3.3. Topologi Simulasi ............................................................................................. 17
3.4. Parameter Simulasi .......................................................................................... 18
3.5. Sekenario Pengujian ......................................................................................... 19
3.6. Parameter Pengujian........................................................................................ 22
BAB IV .................................................................................................................................. 23
IMPLEMENTASI DAN ANALISIS ......................................................................................... 23
4.1. Hasil Simulasi.................................................................................................... 23
4.2. Data Hasil Simulasi ........................................................................................... 27
4.3. Analisis Performance Metric Dari Semua Sekenario ........................................ 28
BAB V ................................................................................................................................... 46
KESIMPULAN DAN SARAN ................................................................................................ 46
5.1. Kesimpulan ....................................................................................................... 46
5.2. Saran ................................................................................................................ 47
DAFTAR PUSTAKA ................................................................................................................ 48
LAMPIRAN ........................................................................................................................... 50
Konfigurasi sekenario. ...................................................................................................... 50
1. Sekenario1.tcl ........................................................................................................... 50
2. Sekenario2.tcl ........................................................................................................... 53
3. Sekenario3.tcl ........................................................................................................... 56
4. Sekenario4.tcl ........................................................................................................... 58
Konfigurasi file awk .......................................................................................................... 61
1. Rata-rata byte percongestion window .................................................................... 61
2. Paket drop ................................................................................................................ 62
3. Rata-rata end to end delay ...................................................................................... 63
4. Rata-rata throughput ............................................................................................... 64
5. Filter untuk mendapatkan data mentah yang harus di eksport ke file .xg dan
digrafikkan.................................................................................................................... 65
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
6. Filter untuk mendapatkan data mentah sebelum di grafikkan status end to end
delay. ............................................................................................................................ 65
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Gambar 2.1. Antrian ................................................................................................ 6
Gambar 2.2.1. Ilustrasi antrian FIFO ...................................................................... 8
Gambar 2.2.2. Mekanisme antrian droptail kondisi ruang buffer tidak penuh ....... 8
Gambar 2.2.3. Antrian droptail kondisi buffer penuh dan melakukan drop paket . 8
Gambar 2.4.1. 3-way handshake ............................................................................. 10
Gambar 2.5.1. Penambahan jumlah cwnd .............................................................. 12
Gambar 2.5.2. Penambahan cwnd sebesar 1 ........................................................... 13
Gambar 2.5.3. Sebuah mekanisme ketika terjadi congestion.................................. 13
Gambar 2.5.4 Grafik congestion control berbagai fase .......................................... 14
Gambar 3.1.1. Diagram Alur Penelitian.................................................................. 15
Gambar 3.2.1. Topologi Simulasi ........................................................................... 17
Gambar 3.4.1.1. Sekenario 1 ................................................................................... 19
Gambar 3.4.2.1. Sekenario 2 ................................................................................... 20
Gambar 3.4.3.1. Sekenario 3 ................................................................................... 21
Gambar 3.4.4.1. Sekenario 4 ................................................................................... 21
Gambar 4.3.1.1. Grafik total paket drop. ................................................................ 29
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 4.3.1.2. Total paket drop pada model antrian RED sekenario 1 dan
sekenario 2 .............................................................................................................. 30
Gambar 4.3.1.3. Perbandingan rerata bergerak (moving average) dengan varian
min.threshold 10 dan 30 .......................................................................................... 31
Gambar 4.3.1.4. Total paket drop pada model antrian droptail sekenario 3 dan
sekenario 4 .............................................................................................................. 34
Gambar 4.3.1.5. Ilustrasi ukuran ruang buffer yang berbeda pada model antrian
droptail ................................................................................................................... 35
Gambar 4.3.2.1. Grafik rata-rata byte percongestion window ................................ 36
Gambar 4.3.2.2. Grafik keterkaitan jumlah paket drop terhadap jumlah
terbentuknya window. ............................................................................................. 38
Gambar 4.3.3.1. Grafik rata-rata end to end delay .................................................. 40
Gambar 4.3.3.2. Status antrian sekenario 1 dan antrian sekenario 2 ..................... 41
Gambar 4.3.4.1. Grafik rata-rata throughput .......................................................... 43
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Tabel 3.3.1. Parameter Simulasi ........................................................................... 19
Tabel 4.2.1.1. Performance metric value pada sekenario 1 dan 2 ...................... 27
Tabel 4.2.2.1. Performance metric value pada sekenario 3 dan 4 ...................... 28
Tabel 4.3.2.1. Tabel rata-rata total byte yang dikirim, jumlah window yang
terbentuk, dan byte percongestion control ............................................................ 37
Tabel 4.3.4.1. Tabel throughput, durasi, dan rata-rata throughput setiap sekenario ........ 44
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Kemajuan teknologi komunikasi memberikan kemudahan dalam melakukan
akses data dari komputer satu menuju komputer yang lain. Untuk dapat
melakukan akses data, perangkat yang digunakan dan perangkat yang dituju harus
terhubung dalam sebuah jaringan.
Banyak tempat-tempat seperti perkantoran, sekolah, gedung perkuliahan, cafe,
bahkan tempat-tempat perbelanjaan telah memiliki dan memanfaatkan
infrasturuktur jaringan. Pengguna yang terhubung dengan jaringan tersebut
menginginkan koneksi jaringan yang lancar dan setabil, disisi lain dengan
pengguna jaringan yang banyak dapat mengakibatkan kemacetan lalulintas
jaringan. Untuk mengatasi hal tersebut harus ada kontrol jaringan sehingga
kemacetan jaringan dapat diminimalisir, salah satunya dengan menerapkan
manajemen antrian pada router.
Ada beberapa manajemen antrian yang dapat diterapkan dalam jaringan,
antaara lain First In First Out (FIFO) yang juga disebut Droptail, Fair Queuing
(FQ), Random Early Drop (RED), Weighted Fair Queuing (WFQ), dan Explicit
Congestion Notification (ECN).
Sebagian besar pengguna dalam melakukan komunikasi data menggunakan
protokol TCP. Dalam proses komunikasi data diperlukan sebuah congestion
control yang berfungsi untuk mengatur jalannya transaksi data dan bertindak jika
terjadi sebuah congestion. Ada beberapa varian TCP diantaranya TCP Tahoe,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
TCP Vegas, TCP Reno, TCP New Reno, TCP Cubic, dan lain sebagainya. Setiap
Varian TCP memiliki congestion control yang berbeda sehingga penanganan
ketika terjadi congestion juga berbeda.
Pada tugas akhir ini, penulis akan melakukan simulasi menggunakan protokol
TCP Tahoe dan menggunakan model antrian RED dan droptail. Penulis
menggunakan kedua model antrian tersebut karena dari kedua model antrian
tersebut memiliki manajemen antrian yang sangat berbeda, terlebih pada pola
packet drop. Packet drop merupakan salah satu penyebab terjadinya congestion.
Dari kedua model antrian yang digunakan, penulis ingin melihat unjuk kerja TCP
Tahoe congestion control pada anrian RED dan droptail.
1.2.Rumusan Masalah
Berdasarkan latar belakang diatas, didapatkan rumusan masalah berikut :
- Bagaimana kinerja congestion control TCP tahoe pada antrian RED dan
Droptail.
1.3.Tujuan
Mengetahui kinerja congestion control TCP Tahoe pada antrian RED
dan Droptail.
Mengetahui pengaruh antrian RED dan Droptail terhadap packet drop,
rata-rata throughput, rata-rata byte percongestion window, dan rata-rata
end to end delay
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
1.4.Batasan Masalah
Protokol yang digunakan TCP Tahoe.
Menggunakan Network Simulator 2 (NS2).
Antrian yang digunakan RED dan Droptail.
TCP 2 difungsikan sebagai pengganggu jaringan.
Memiliki nilai link delay yang sama untuk setiap sekenario.
Memiliki kondisi yang sama untuk source node dan destination node.
1.5.Metodologi Penelitian
Metodologi dan langkah-langkah yang digunakan dalam pelaksanaan
pengerjaan tugas akhir ini sebagai berikut :
a. Studi Literatur
Pada tahap ini penulis melakukan pendalaman materi yang menjadi topik
pengerjaan tugas akhir. Penulis juga melakukan pendalaman materi yang
memiliki keterkaitan dengan topik yang penulis angkat. Referensi materi
didapat dari papper, materi kuliah Analisa Unjuk Kerja, buku
pendukung, dan internet.
b. Wawancara
Dalam hal ini penulis juga melakukan wawancara dan diskusi kepada
dosen, teman, dan forum guna mendapatkan informasi tambahan dan
sebagai tempat bertukar informasi sehingga dengan demikian penulis
lebih mantap dalam melakukan pengerjaan tugas akhir ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
c. Analisis Kebutuhan
Pada tahapan ini penulis melakukan anilisis kebutuhan apa saja yang
diperlukan demi terlaksananya penelitian ini, baik analisis kebutuhan
perangkat lunak maupun perangkat keras.
d. Simulasi dan Pengumpulan Data
Pada tahapan ini, penulis melakukan simulasi menggunakan NS2,
membuat file log “out.tr”, membuat xgraph “.xg” sebagai output untuk
menampilkan grafik congestion window, membuat file awk dan hasil
akhir dari file-file tersebut akan digunakan untuk keperluan analisis.
e. Analisis Data
Dari hasil simulasi yang diperoleh, penulis akan melakukan analisis
sehingga dapat menarik sebuah kesimpulan.
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Bab ini berisi latar belakang, rumusan masalah, tujuan, batasan masalah,
metodologi penelitian, dan sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini berisi teori-teori yang memiliki keterkaitan dengan topik yang
penulis angkat.
BAB III PERANCANGAN
Bab ini berisi topologi jaringan, sekenario pengujian, dan konfigurasi
sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB IV IMPLEMENTASI DAN ANALISIS
Bab ini berisi tentang pelaksanaan pengujian dan analisa hasil dari
pengujian.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dan saran yang diperoleh setelah pelaksanaan
pengujian dan analisis hasil pengujian selesai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
BAB II
LANDASAN TEORI
2.1. Model Antrian
Antrian merupakan sebuah deretan/unit yang sedang menunggu giliran
untuk dilayani ( Kamus Besar Bahasa Indonesia). Antrian pada router yakni
sederetan paket data yang masuk kedalam ruang buffer yang menunggu
giliran untuk diproses dan kemudian ditransmissikan kembali. Secara umum
antrian dapat digambarkan seperti dibawah ini.
Gambar 2.1. Antrian
Pada gambar diatas, paket yang dikirimkan oleh node akan masuk ke
dalam sebuah antrian. Ketika status link kosong, maka antrian paling depan
akan dilayani oleh link dan kemudian ditransmisikan.
Manajemen antrian menentukan paket mana yang akan ditampung pada
buffer, dibuang (drop) , ditandai (marked) dan paket yang mana yang akan
ditransmisikan.
Link Kedatangan
Antrian
Keberangkatan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
Secara umum ada beberapa mekanisme penjadwalan, diantaranya
a. First In First Out (FIFO)
Manajemen antrian ini cara kerjanya sederhana. Paket yang masuk
terlebih dahulu akan dilayani dan keluar lebih dulu. Manajemen ini
digunakan pada droptail dimana mekanisme antrian FIFO dan jika
antrian penuh maka paket yang masuk/datang akan dibuang.
b. Fair Queuing
Majemen antrian ini prinsip kerjanya yakni melakukan pengelompokan
paket kedalam clas-clas kemudian akan memproses untuk setiap paket
pada setiap class secara bergantian secara merata.
c. Random Early Drop
Manajemen antrian ini prinsip kerjanya menggunakan kalkulasi .
Manajemen antrian ini juga menggunakan konsep penandaan paket.
Manajemen antrian ini mencoba untuk menjaga kestabilan jumlah rata-
rata queue.
d. Priority Queuing
Cara kerja manajeman antrian ini berdasarkan prioritas dari paket yang
datang. Paket yang memiliki proritas paling tinggi didalam antrian akan
didahulukan, ketika paket dengan prioritas tertinggi dalam antrian
sudah habis, maka paket yang memiliki prioritas tertinggi setelahnya
akan diproses.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
2.2.Antrian Droptail
Antrian droptail merupakan bagian dari penjadwalan FIFO dimana data
yang datang terlebih dahulu akan keluar terlebih dahulu juga. Penjadwalan
FIFO dapat diilustrasikan dengan gambar dibawah ini.
Gambar 2.2.1. Ilustrasi antrian FIFO
Dapat dilihat bahwa paket yang datang terlebih dahulu akan keluar
terlebih dahulu. Manajemen antrian droptail menggunakan penjadwalan
FIFO, dimana paket yang datang terlebih dulu akan masuk ke ruang antrian,
diproses dan ditransmisikan, namun ketika ruang antrian penuh, paket yang
datang akan dibuang.
Gambar 2.2.2. Mekanisme antrian droptail kondisi ruang buffer tidak penuh
Gambar 2.2.3. Antrian droptail kondisi buffer penuh dan melakukan drop paket
Dalam manajemen antrian droptail ini, tidak ada perlakuan kusus
terhadap paket. Semua paket dianggap sama dan tidak ada prioritas untuk
9 8 7 6 5 4 3 2 1
Laju antrian
Paket datang
Paket Keluar
4 3 1 2 5 4 3 1 2 5
Paket datang
Paket keluar Laju Paket
4 3 1 2 5 4 3 1 2 5 6
Paket datang
Paket keluar Laju Paket
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
paket tertentu. Jadi ketika ruang antrian ada yang kosong paket dapat
mengantri, diproses dan kemudian ditransmisikan, jika antrian penuh, paket
yang datang tidak dapat masuk ke ruang antian dan paket tersebut akan
dibuang.
2.3. Antrian Random Early Drop (RED)
Random Early Drop merpakan sebuah model antrian yang terdapat pada
router yang bertugas untuk memanajemen paket-paket yang terdapat pada
ruang antrian (buffer). Pada dasarnya, RED mempertahankan rerata bergerak
(moving average) serendah mungkin. Bila pada droptail, paket akan dibuang
(drop) setelah ruang antrian penuh namun tidak demikian pada RED. Pada
antrian RED, paket akan didrop tanpa menunggu ruang antrian penuh. Ketika
rerata bergerak (moving average) dibawah min.threshold, semua paket yang
masuk tidak ditandai. Apabila rerata bergerak (moving average) diantara
min.threshold dan max.threshold, maka semua paket yang masuk akan
ditandai. Dari paket-paket yang ditandai tersebut akan dibuang secara acak.
Apabila rerata bergerak (moving average) diatas batas max.threshold, maka
semua paket yang datang dibuang (drop).
Antrian RED memiliki 2 kalkulasi utama, yakni kalkulasi untuk
menghitung rata rata antrian dalam buffer dan kalkulasi untuk menentukan
seberapa besar probabilitas sebuah paket yang telah ditandai untuk didrop.
Dalam melakukan kalkulasi berapa rerata bergerak (moving average) pada
ruang antrian, RED memiliki 2 parameter yakni min.threshold dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
max.threshold. Hasil dari kalkulasi rerata bergerak (moving average) tersebut
digunakan untuk menghitung probabilitas paket dibuang.
2.4. Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP), merupakan sebuah protokol yang
bersifat connection oriented dan reliable. Maksud dari connection oriented
yakni adanya negosiasi antara dua host untuk membuka sebuah sesi
komunikasi sebelum melakukan pertukaran data. Reliable yakni data dikirim
melalui jaringan secara terurut. Dengan adanya penomoran pada setiap data
yang dikirim, diharapkan paket yang diterima dijawab dengan
acknowledgment. Acknowledgement merupakan sebuah indikasi bahwa data
yang dikirim telah diterima. Karakteristik lain yang dimiliki TCP yakni
flowcontrol dan congestion control.
Pada protokol TCP, terdapat mekanisme 3-way handshake. 3-way
handshake ini merupakan sebuah bentuk dari connection oriented yang
berfungsi untuk melakukan negosiasi untuk membuka sebuah sesi sebelum
melakukan pertukaran data.
Gambar 2.4.1. 3-way handshake
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Alur 3-way handshake sebagai berikut :
a. Host pertama yang akan membuat koneksi mengirimkan segmen
tcp dengan flag SYN kepada host kedua
b. Host kedua merespon dengan mengirimkan segmen dengan
acknowledgment dan SYN
c. Host pertama menerima SYN dan ACK dari host kedua, kemudian
mengirimkan acknowledgment ke host 2
d. Status kedua host established dan siap untuk bertukar data.
Ketika akan mengakiri sebuah koneksi, maka tcp akan melakukan
pengiriman flag FIN
2.5. Fase Congestion Control Pada TCP Tahoe
TCP Tahoe adalah algoritma yang paling sederhana dari TCP varian
lainnya. TCP Tahoe didasarkan pada tiga algoritma kongesi kontrol, yaitu
Slow Start (SS), Congestion Avoidance (CA), dan fast retransmit. TCPtahoe,
ketika mendapatkan timeout, maka cwnd akan diatur ulang menjadi cwnd=1.
TCP memiliki kebijakan dalam mengendalikan dan untuk menangani
kemacetan lalulintas jaringan didasarkan pada 3 fase yakni slow-start,
congestion avoidance, dan congestion detection.
a. Fase Slow-start
Pada fase ini, congestion window akan diinisialisasi = 1 Maximum
Segment Size (MSS) kemudian pengirim akan mengirimkan maksimal 1
segment saja ke penerima. Setelah mendapatkan acknowledgment,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
congestion window bertambah menjadi 2 kemudian pengirim dapat
mengirim maksimal 2 segment. Setelah mendapatkan acknoledgment
lagi, congestion window akan bertambah 1 untuk setiap ack yang
diterima.
Gambar 2.5.1. Penambahan jumlah cwnd
Fase ini akan berhenti ketika pengirim telah mencapai batas threshold.
Perlu diingat, TCP merupakan connection oriented, ketika akan
melakukan koneksi ada sebuah negosiasi (3-way handshake). Pada saat
mereka melakukan 3-way handshake sisi penerima memberikan
informasi kepada pengirim berapa window yang tersedia. Dari situ
threshold awal dapat ditentukan dimana threshold = ½*cwnd.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
b. Congestion Avoidance
Fase ini merupakan fase lanjutan setelah fase Slow Start. Pada fase
ini setiap kali seluruh window yang telah di ack (dalam 1 putaran) ukuran
congestion window akan bertambah 1. Hal ini untuk menghindari
congestion.
Gambar 2.5.2. Penambahan cwnd sebesar 1
c. Congestion Detection
Pada TCP Tahoe, congestion terjadi dikarenakan timeout ataupun
menerima duplikasi ack . Sebuah paket yang hilang karena drop.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Gambar 2.5.3. Sebuah mekanisme ketika terjadi congestion
Gambar 2.5.4 Grafik congestion control berbagai fase
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
BAB III
PERANCANGAN
3.1. Diagram Alur Penelitian
Mulai
Menentukan topologi
Menentukan parameter simulasi
Menentukan sekenario simulasi
Pembuatan script dan menjalankan
simulasi
Berfungsi
Data hasil
simulasi
Pengolahan data
Analisis
Selesai
ya
tidak
Gambar 3.1.1. Diagram Alur Penelitian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
3.2. Penjelasan Diagram Alur Penelitian
Menentukan Topologi
Untuk memulai penelitian ini, penulis memulai dengan menentukan
topologi. Topologi yang dipilih haruslah sesuai dengan kebutuhan
pengujian. Topologi yang digunakan penulis yakni topologi “dumb-
bell”. Topologi simulasi akan dibahas pada bub bab 3.2.
Menentukan Parameter Simulasi
Setelah menentukan topologi yang akan digunakan, selanjutnya
menentukan parameter simulasi. Parameter yang akan digunakan
haruslah sesuai dengan kajian dan mendukung penelitian dari topik
yang diangkat.
Menentukan Sekenario Simulasi
Untuk mendapatkan hasil penelitian yang baik, diperlukan penentuan
sekenario. Sekenario yang bervariasi akan lebih membantu dalam
melakukan analisis hasil dengan membandingkan antar sekenario.
Pembuatan Script dan Menjalankan Simulasi
Setelah menentukan topologi simulasi, parameter simulasi, dan
sekenario simulasi kemudian menjalankan simulasi. Penulis
menggunakan simulator Network Simulator 2 (NS2). Untuk
menjalankan simulasi, terlebih dahulu membuat script yang
berekstensi .tcl. Script tersebut memuat konfigurasi yang memuat
bentuk topologi jaringan, protokol yang dijalankan, model antrian,
ukuran link, arah koneksi node, dan konfigurasi untuk mendapatkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
output dari simulasi yang dijalankan. Setelah konfigurasi terbentuk,
maka file konfigurasi (.tcl) dijalankan.
Pengolahan Data
Setelah script dijalankan, maka akan diperoleh file output yakni out.tr,
cwnd.xg, dan queue.tr. Data yang dihasilkan merupakan data mentah
sehingga perlu diolah ataupun difilter dengan menggunakan script
awk, dimana penulis memiliki beberapa script diantaranya untuk
mendapatkan nilai rata-rata throughput, rata-rata byte percongestion
window, rata-rata delay, dan paket yang terbuang.
Analisis
Setelah file diolah kemudian melakukan analisis dari hasil data yang
diperoleh.
3.3. Topologi Simulasi
Topologi dibawah ini merupakan topologi sederhana yang bernama dumb-
bell. Topologi ini pada umumnya digunakan untuk mengamati, mempelajari
efek penyempitan bandwidth dimana 1 jalur digunakan 2 node atau lebih.
n0
n1
n2 n3
n4
n5
Gambar 3.2.1. Topologi Simulasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
Pada gambar topologi diatas, terdapat 6 node. Node n0 dan n1 merupakan
source node. Node n2 dan n3 merupakan node yang bertindak sebagai router
dan node n4 dan n5 merupakan node sink. Pada topologi diatas, n1 akan
dikoneksikan dengan n4 dan n5 akan dikoneksikan dengan n5.
3.4. Parameter Simulasi
Pada penelitian ini, penulis menggunakan simulator dalam melakukan
pengujian. Simulator yang digunakan adalah Network Simulator2 (NS2).
Parameter yang digunakan dalam pengujian dan penelitian ini sebagai berikut :
Parameter Simulasi Nilai
Link Node n0-n2, n1-n2 Bandwidth : 10 Mbps
Delay Propagation : 10 ms
Link Node n2-n3 Bandwidth : 5 Mbps
Delay Propagation : 10 ms
Link Node n3-n4, n3-n5 Bandwidth : 5Mbps
Delay Propagation : 10 ms
Protokol Transport TCP Tahoe
Model Antrian - Random Early Drop (RED)
Weight queue = 0.002
Linterm = 10
Min.Threshold = 10 dan 30
Max.Threshold = 60
- Droptail
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Ukuran Buffer 30 (sekenario 4), 60 (sekenario 1-3)
Aplikasi / Sumber Trafik FTP
Durasi Simulasi 500 detik
Tabel 3.3.1. Parameter Simulasi
3.5. Sekenario Pengujian
3.5.1. Sekenario 1
Pada sekenario pertama ini, pengujian akan dilakukan dengan
menjalankan 2 trafik TCP secara bersamaan mulai detik ke 0.1 hingga
berakhir pada detik ke 500.1. Trafik TCP1 berasal dari n0 dan trafik
TCP2 berasal dari n1. Node n2 dalam hal ini bertindak sebagai router
yang menjalankan mekanisme pengaturan dan manajemen antrian.
Pada node n2 akan diaplikasikan model antrian RED (Random Early
Drop) dengan nilai min.threshold 10 dan max.threshold 60.
n0
n1
n2 n3
n4
n5
TCP1
TCP2
RED
Min,threshold 10
Max.Threshold 60
SINK 1
SINK 2
Gambar 3.4.1.1. Sekenario 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
3.5.2. Sekenario 2
Pada sekenario 2 ini, topologi yang digunakan tidak berbeda
dengan topologi sekenario 1. Hal yang membedakan pada sekenario
ini adalah parameter dari RED. Bila pada sekenario 1 min.threshold
10, pada sekenario 2 ini min.threshold menjadi 30. Dengan menaikkan
nilai min.threshold ini ingin mengetahui seberapa besar pengaruhnya
terhadap byte percongestion window dan throughput dibandingkan
dengan sekenario 1.
n0
n1
n2 n3
n4
n5
TCP1
TCP2
RED
Min,threshold 30
Max.Threshold 60
SINK 1
SINK 2
Gambar 3.4.2.1. Sekenario 2
3.5.3. Sekenario 3
Pada sekenario ke 3 ini, model antrian akan diganti dengan
droptail dengan ukuran buffer 60. Untuk sekenario ini, juga akan
dijalankan 2 trafik TCP secara bersamaan mulai dari detik 0.1 hingga
berhenti pada detik 500.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
n0
n1
n2 n3
n4
n5
TCP1
TCP2
Droptail
SINK 1
SINK 2
Gambar 3.4.3.1. Sekenario 3
3.5.4. Sekenario 4
Pada sekenario ke 4 ini, model antrian tetap menggunakan Droptail
namun ukuran buffer 30. Sekenario ini dibuat dan dijalankan bertujuan
sebagai pendukung analisis parameter yang diuji.
n0
n1
n2 n3
n4
n5
TCP1
TCP2
Droptail
SINK 1
SINK 2
Gambar 3.4.4.1. Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
3.6. Parameter Pengujian
3.6.1. Rata-Rata Byte Percongestion Window
Byte percongestion window adalah ukuran sebuah window dalam byte.
Pengukuran sebuah window dimulai dari awal slow-start hingga titik
drop. Dari setiap pengujian yang dijalankan, terdapat congestion
window dengan jumlah tertentu, dari total data yang dikirim, akan
dibagi dengan total congestion window yang terbentuk dan didapatkan
nilai rata-rata dari sebuah window yang dinyatakan dalam satuan byte.
3.6.2. Paket Drop
Paket drop, adalah paket yang dikirim oleh source node dan paket
tersebut terbuang (drop) karena adanya manajemen antrian pada
router.
3.6.3. Rata-Rata End to End delay
Dalam pengiriman setiap paket dari source node menuju destination
node, memerlukan waktu. Setiap paket memerlukan waktu yang
bervariasi untuk sampai tujuan. Nilai rata-rata end to end delay
didapat dari total waktu yang dibutuhkan dalam satu sesi pengiriman
dibagi jumlah paket yang sampai di tujuan kemudian hasil tersebut
dinyatakan dalam satuan waktu.
3.6.4. Rata-Rata Throughput
Rata-rata throughput adalah banyaknya data yang diterima oleh
penerima dibagi dengan waktu yang dibutuhkan untuk mengirimkan
data tersebut dan dinyatakan dalam byte persecond (bps).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
BAB IV
IMPLEMENTASI DAN ANALISIS
Simulator yang digunakan pada simulasi ini adalah Network Simulator 2
(NS2). Untuk menjalankan simulasi jaringan, terlebih dahulu membuat
konfigurasi dengan ekstensi file .tcl yang memuat bentuk topologi jaringan, model
antrian yang digunakan, delay pada link, bandwidth dan jumlah node. Selain
membuat konfigurasi tersebut, untuk mendapatkan hasil dari simulasi juga
dibutuhkan file trace yang digunakan untuk keperluan analisis data. File trace
tersebut berekstensi .tr, .nam, .q, .xg, dan .a.
Data yang didapatkan dari file trace kemudian diolah menggunakan script
berekstensi .awk sehingga didapatkan rata-rata throughput, rata-rata byte
percongestion window, rata-rata end to end delay, dan total packet drop.
Pada pengujian ini, data yang dianalisis fokus ke TCP1, sedangkan TCP 2
berperan sebagai trafik pengganggu.
4.1. Hasil Simulasi
Setelah melakukan simulasi sesuai sekenario yang telah ditentukan,
didapatkan snapshoot congestion window.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
4.1.1. Sekenario 1 (model antrian = RED, min.threshold = 10, max.threshold
= 60, ruang buffer = 60)
Snapshot Congestion Window sekenario 1
4.1.2. Sekenario 1 (model antrian = RED, min.threshold = 30, max.threshold
= 60, ruang buffer = 60)
Snapshot Congestion Window sekenario 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
4.1.3. Sekenario 3 (model antrian = droptail, ruang buffer = 60)
Snapshot Congestion Window sekenario 3
4.1.4. Sekenario 4 (model antrian = droptail, ruang buffer = 30)
Snapshot Congestion Window sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Pengujian ini mensimulasikan 4 sekenario dengan 2 model antrian
yang berbeda yakni RED dan droptail. Masing-masing model antrian
memiliki varian yang berbeda dalam setiap sekenario.
Pada gambar snapshot grafik congestion window mulai dari
sekenario 1 sampai sekenario 4 terdapat perbedaan yang sangat jelas,
perbedaan tersebut terletak pada garis grafik congestion window yang
mana sekenario dengan model antrian RED grafik cwnd TCP1 tinggi
tidak sama rata. Namun berbeda pada sekenario 3 dan 4 dengan model
antrian droptail. Pada snapshot terlihat jelas bahwa grafik cwnd
TCP1 tinggi grafik hampir sama dan merata.
Pada RED paket akan ditandai kemudian paket yang ditandai
tersebut dibuang secara acak tanpa menunggu ruang antrian penuh.
Paket mulai ditandai ketika rerata bergerak (moving average) pada
RED telah mencapai batas min.threshold. Apabila pada antrian RED
terjadi pembuangan paket (diasumsikan paket TCP1), maka pengirim
pada TCP1 mendapatkan duplikasi ack dan kemudian menurunkan
jumlah pengiriman. Adanya penurunan jumlah pengiriman
mengakibatkan rerata bergerak (moving average) juga ikut turun.
Untuk model antrian droptail baik pada sekenario 3 maupun 4,
pada snapshot grafik congestion window menunjukkan bahwa cwnd
TCP1 memiliki tinggi dan ukuran cwnd yang hampir sama rata. Hal
ini terjadi karena pada model antrian droptail paket akan dibuang
setelah ruang antrian penuh. Pada simulasi ini, TCP1 dan TCP2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
melakukan pengiriman pada saat yang sama. Kedua source node akan
mengirimkan paket dengan jumlah yang sama hingga akhirnya ruang
buffer penuh. Setelah ruang buffer penuh akan terjadi pembuangan
paket baik paket TCP1 dan TCP2 sehingga kedua pengirim akan
menurunkan jumlah paket yang dikirimkan dan kemudian melakukan
pengiriman kembali.
4.2. Data Hasil Simulasi
4.2.1. Model Antrian RED
Sekenario
Performance Metric
Sekenario 1 Sekenario 2
Rata-rata byte per cwnd 543,177 kB 839,099 kB
Paket drop 312 256
Rata-rata end to end delay 0,0557146 detik 0,0789848 detik
Rata-rata throughput 2, 21868 Mbps 2,27724 Mbps
Tabel 4.2.1.1. Performance metric value pada sekenario 1 dan 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
4.2.2. Model Antrian Droptail
Sekenario
Performance Metric
Sekenario 3 Sekenario 4
Rata-rata byte per cwnd 1035,42 kB 521,406 kB
Paket drop 224 540
Rata-rata end to end delay 0,0948442 detik 0,0592452 detik
Rata-rata throughput 2,26143 Mbps 2,06891 Mbps
Tabel 4.2.2.1. Performance metric value pada sekenario 3 dan 4
4.3. Analisis Performance Metric Dari Semua Sekenario
Pada TCP, pengiriman data dilakukan dari fase slow start dan congestion
avoidance. Dalam proses pengiriman data diperlukan congestion control.
Congestion control pada TCP bertugas untuk mengontrol jalannya proses
pengiriman data dari source node dan bertugas untuk mengambil tindakan jika
terjadi packet drop, time out, dan duplikasi ack.
Dalam simulasi ini, model antrian yang digunakan akan berpengaruh
terhadap performance metric yang diuji karena kedua model antrian yang
digunakan memiliki pola drop yang berbeda. Maka dari itu, pembahasan akan
dimulai dari paket drop.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
4.3.1. Paket Drop
Gambar 4.3.1.1. Grafik total paket drop.
Pada gambar 4.3.1.1 menunjukkan total paket drop yang terjadi
disetiap sekenario. Pada sekenario 1 dan 2 yang mana menggunakan
model antrian RED dengan varian min.threshold berbeda, terlihat bahwa
sekenario 1 memiliki jumlah paket drop lebih banyak dibandingkan
sekenario 2. Pada sekenario 3 dan 4 menggunakan model antrian droptail
dengan varian ukuran ruang buffer yang berbeda dan sekenario 4 memiliki
jumlah paket drop yang lebih banyak daripada sekenario 3. Untuk
pembahasan lebih lanjut akan diuraikan sesuai dengan model antrian yang
digunakan.
312
256 224
540
0
100
200
300
400
500
600
Tota
l pak
et
dro
p
Paket Drop
Sekenario 1
Sekenario 2
Sekenario 3
Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
RED
Pada simulasi ini, model antrian RED menggunakan varian yakni
nilai min.threshold yang berbeda. Efek dari pemberian nilai
min.threshold ini ditunjukkan dari jumlah paket drop.
Gambar 4.3.1.2. Total paket drop pada model antrian RED
sekenario 1 dan sekenario 2
Model antrian RED, paket akan dibuang secara acak tanpa
menunggu ruang antrian penuh. Penandaan dan pembuangan paket
dilakukan ketika rerata bergerak (moving average) telah mencapai
batas min.threshold.
Dibawah ini disimulasikan model antrian RED dengan nilai
min.threshold 10 dan 30. Pada masing-masing simulasi, semua trafik
koneksi TCP1 dan TCP2 dihentikan pada detik 100 dan dimulai lagi
pada detik 110. Hal ini dilakukan untuk mengetahui perbandingan
rerata bergerak (moving average) pada RED dengan nilai
min.threshold yang berbeda
312
256
0
50
100
150
200
250
300
350
Tota
l pak
et
dro
p
Paket Drop RED
Sekenario 1
Sekenario 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Snap Shot grafik rerata bergerak (moving average)
Gambar 4.3.1.3. Perbandingan rerata bergerak (moving average)
dengan varian min.threshold 10 dan 30
Pada gambar 4.3.1.3 menunjukkan bahwa:
a. Dari sisi waktu, simulasi dengan nilai min.threshold 10 lebih
cepat untuk mencapai batas min.threshold dibandingkan
simulasi dengan nilai min.threshold 30, karena rerata bergerak
(moving average) dalam mencapai min.threshold 10
membutuhkan paket yang lebih sedikit dibandingkan simulasi
dengan nilai min.threshold 10. sehingga penandaan paket
terjadi lebih dini dan kemungkinan untuk terjadi drop lebih
cepat
b. Ketika rerata bergerak (moving average) turun dibawah
min.threshold, simulasi dengan nilai min.threshold 10 lebih
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
mudah untuk mencapai min.threshold 10 daripada simulasi
dengan nilai min.threshold 30.
c. “Peak” simulasi dengan nilai min.threshold 10 lebih luas jika
dibandingkan dengan “Peak” simulasi dengan nilai
min.threshold 30. Luas area “Peak” semakin besar, potensi
untuk terjadi pembuangan paket juga lebih besar.
Hal diatas berlaku untuk sekenario 1 dan 2. Pada sekenario 1
dengan nilai min.threshold=10, rerata bergerak (moving average) akan
lebih cepat untuk mencapai kembali min.threshold setelah terjadi
congestion. Ketika terjadi congestion, pengirim akan menurunkan
jumlah pengiriman paket dan dari hal tersebut, rerata bergerak (moving
average) juga akan turun karena antrian yang ada pada ruang buffer
berkurang.
Berbeda dengan sekenario 2 yang mana nilai min.threshold=30.
Ketika terjadi congestion, pengirim menurunkan jumlah pengiriman
dan akan berpengaruh terhadap nilai rerata bergerak (moving average)
dan jumlah antrian pada ruang buffer. Turunnya nilai rata-rata dibawah
nilai min.threshold, untuk kembali menuju titik min.threshold
membutuhkan waktu yang lebih lama daripada sekenario 1 seperti
pada snap shot dibawah ini
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Snap shot rerata bergerak (moving average)
Semakin rendah nilai min.threshold, rerata bergerak (moving
average) akan lebih cepat dan mudah untuk mencapai batas
min.threshold sehingga terjadi penandaan paket dan pembuangan paket
secara acak. Melalui snap shot diatas, area Peak sekenario 1 lebih luas
daripada sekenario 2, sehingga potensi paket yang terbuang pada
sekenario 1 lebih besar.
Droptail
Sekenario 3 dan 4 menggunakan varian ukuran ruang antrian yang
berbeda dimana masing-masing memiliki ukuran ruang antrian 60 dan
30.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Gambar 4.3.1.4. Total paket drop pada model antrian droptail
sekenario 3 dan sekenario 4
Pada gambar 4.3.1.4 menunjukkan bahwa sekenario 4 memiliki
jumlah paket drop yang lebih banyak daripada sekenario 3. Hal ini
terjadi karena kemampuan daya tampung antrian yang berbeda. Pada
kondisi trafik yang sama, semakin besar ukuran ruang buffer, daya
tampung paket yang masuk kedalam ruang antrian semakin besar
sehingga terjadinya paket drop berkurang.
224
540
0
100
200
300
400
500
600
Tota
l pak
et
dro
p
Paket Drop Droptail
Sekenario 3
Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Gambar 4.3.1.5. Ilustrasi ukuran ruang buffer yang berbeda pada
model antrian droptail
Mengacu pada gambar ilustrasi diatas, jika kedua sekenario
memiliki isi antrian yang sama sebanyak 30, pada sekenario 3 masih
memiliki sisa daya tampung sebesar 30, sedangkan untuk sekenario 4
sudah penuh, akibatnya jika ada paket yang masuk, pada sekenario 4
akan terjadi paket drop.
Kesimpulan dari simulasi yang telah dijalankan, pada model
antrian RED, pemberian nilai min.threshold memiliki pengaruh yang
besar terhadap terjadinya drop. Semakin kecil nilai min.threshold
frekuensi terjadinya drop semakin banyak dibandingkan dengan
pemberian nilai min.threshold yang lebih besar. Sedangkan pada
model antrian droptail, hal yang mempengaruhi terjadinya drop adalah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
kapasitas ruang buffer. Kapasitas ruang buffer yang kecil membuat
frekuensi terjadinya paket drop lebih banyak dibandingkan dengan
antrian dengan kapasitas ruang buffer yang lebih besar.
4.3.2. Rata-Rata Byte Percongestion Window
Gambar 4.3.2.1. Grafik rata-rata byte percongestion window
Gambar 4.3.2.1 menunjukkan rata-rata byte percongestion window
pada masing-masing sekenario dalam satuan kilobyte (kB). Rata-rata byte
percongestion window ini didapatkan dari total byte yang dikirim dibagi
dengan jumlah window yang terbentuk. Pada grafik tersebut, sekenario 3
memiliki nilai rata-rata byte percongestion window paling besar diantara
semua sekenario.
Dalam pengujian ini, frekuensi terjadinya paket drop sangat
berpengaruh terhadap terbentuknya sebuah window. Manajemen antrian
yang diterapkan memiliki pola drop yang menyebabkan paket terbuang
dan terjadi congestion. Karena terjadi congestion, pengirim menurunkan
543,177
839,099
1.035,420
521,406
0,000
200,000
400,000
600,000
800,000
1.000,000
1.200,000
kByt
e /
cw
nd
Rata-Rata Byte perCWND (kB)
Sekenario 1
Sekenario 2
Sekenario 3
Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
jumlah pengiriman. Penurunan jumlah pengiriman ini ditandai dengan
mengatur ulang nilai cwnd=1 dan melakukan pengiriman kembali.
Di bawah ini merupakan tabel yang memuat total paket yang
dikirim, jumlah window yang terbentuk, dan rata-rata byte percongestion
window pada masing-masing sekenario.
Sekenario Total paket yang
dikirim
(kB)
Jumlah window
yang terbentuk
Rata-rata byte
percongestion
window (kB)
Sekenario 1 142312 262 543,177
Sekenario 2 146003 174 839.099
Sekenario 3 144959 140 1,035,420
Sekenario 4 132959 255 521,406
Tabel 4.3.2.1. Tabel rata-rata total byte yang dikirim, jumlah window yang
terbentuk, dan byte percongestion control
Mengacu pada paket drop pada pembahasan 4.2, bahwa terjadinya
paket drop akan berpengaruh terhadap terbentuknya sebuah window. Hal
ini ditunjukan pada gambar grafik dibawah ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Gambar 4.3.2.2. Grafik keterkaitan jumlah paket drop terhadap jumlah
terbentuknya window.
Pada model antrian RED melalui gambar grafik diatas, terlihat
bahwa sekenario 1 memiliki total window lebih banyak dibandingkan
sekenario 2. Dalam durasi pengujian yang sama, sekenario 1 terbentuk
window sejumlah 262 sedangkan window pada sekenario 2 terbentuk
sejumlah 174. Dari hal tersebut terlihat jelas bahwa window pada
sekenario 1 lebih sering jatuh. Semakin banyak window yang terbentuk,
ukuran setiap window akan semakin kecil karena byte percongestion
window dilihat dari banyak data yang dikirim dibagi dengan total window
yang terbentuk.
Pada gambar 4.3.2.1 bahwa sekenario 3 memiliki ukuran rata-rata
byte percongestion window lebih besar daripada sekenario 4. Sekenario 4
memiliki jumlah window sebanyak 255, sedangakan pada sekenario 3
window yang terbentuk sejumlah 140. Hal tersebut mengindikasikan
312 256
224
540
262
174 140
255
0
100
200
300
400
500
600
700
800
1 2 3 4
Tota
l
Sekenario
Keterkaitan Jumlah Paket Drop Terhadap Jumlah Terbentuknya Window
Total paket Drop
Total window yangterbentuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
bahwa window pada sekenario 4 lebih sering jatuh daripada sekenario 3.
Dalam waktu durasi pengujian yang sama dan jumlah terbentuknya
window semakin banyak, maka ukuran window juga semakin kecil,
akibatnya data yang dikirim juga lebih sedikit dibanding dengan sekenario
3. Apabila byte yang dikirim dijumlahkan dan dibagi dengan jumlah
window yang terbentuk, maka akan mendapatkan rata-rata byte
percongestion window.
Dari simulasi yang telah dijalankan baik pada model antrian RED
maupun droptail, rata-rata byte percongestion window dipengaruhi berapa
banyak kejadian “congestion” yang terjadi. Semakin banyak congestion
yang terjadi window yang terbentuk juga semakin banyak sehingga hasil
bagi dari total byte yang dikirim dengan window yang terbentuk akan
semakin kecil. Maka untuk mendapatkan rata-rata congestion window
yang besar, diperlukan pengaturan lebih lanjut pada model antrian untuk
meminimalisir terjadinya congestion. Pada RED salah satunya dengan
memberikan nilai min.threshold yang tidak terlalu rendah, sedangkan pada
model antrian droptail, ukuran ruang buffer diperbesar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
4.3.3. Rata-Rata End to End Delay
Gambar 4.3.3.1. Grafik rata-rata end to end delay
Pada gambar 4.3.3.1 menunjukkan rata-rata end to end delay yang
terjadi dalam setiap sekenario. Simulasi yang dijalankan menggunakan
topologi dan nilai link delay yang sama untuk setiap sekenario.
Berdasarkan grafik diatas, setiap sekenario memiliki rata-rata end to end
delay yang berbeda. Hal tersebut terjadi karena efek penggunaan model
antrian yang diterapkan pada masing-masing sekenario karena model
antrian yang digunakan turut memberikan kontribusi delay. Delay tersebut
terjadi karena paket harus masuk menuju ruang antrian dan menunggu
untuk kemudian ditransmisikan.
Grafik tersebut menunjukkan bahwa sekenario 3 dengan model
antrian droptail varian buffer = 60 memiliki rata-rata end to end delay
paling besar, sedangkan rata-rata end to end delay paling kecil yakni
0,0557146
0,0789848
0,0948442
0,0592452
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
De
tik
Rata-Rata End to End Delay
Sekenario 1
Sekenario 2
Sekenario 3
Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
sekenario 1 dengan model antrian RED varian min.threshold = 10 dan
ruang buffer = 60.
Gambar 4.3.3.2. Status antrian sekenario 1 (merah) dan antrian sekenario 2
(hijau)
Pada gambar 4.3.3.2 menunjukkan status antrian yang terjadi di
dalam ruang antrian sekenario 1 dan 2. Sekenario 1 dan sekenario 2 memiliki
ukuran ruang buffer yang sama, namun berdasarkan gambar diatas, sekenario
2 memiliki panjang antrian yang lebih banyak daripada sekenario 1.
Pemberian nilai min.threshold memiliki pengaruh terhadap panjang antrian
pada ruang buffer , hal ini berkaitan pada terjadinya drop. Pada pembahasan
“Paket Drop” pemberian nilai min.threshold yang rendah mengakibatkan
terjadinya drop lebih cepat karena rerata bergerak (moving average) dari sisi
waktu lebih cepat untuk mencapai batas min.threshold dan terjadi penandaan
paket dan secara acak akan dilakukan pembuangan paket yang telah ditandai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Ketika paket dibuang, pengirim akan mendapatkan duplikasi ack sehingga
pengirim menurunkan ukuran window beserta jumlah pengirimannya. Dalam
kalkulasi rerata bergerak (moving average) pada sekenario 1 dan 2, untuk
mencapai rata-rata min.threshold diperlukan jumlah paket yang berbeda, untuk
mencapai rerata bergerak (moving average) menuju min.threshold 10
dibutuhkan jumlah paket yang lebih sedikit dibandingkan untuk mencapai
rerata bergerak (moving average) menuju min.threshold 30. Maka dari itu,
jumlah penggunaan ruang buffer pada sekenario 2 lebih banyak daripada
sekenario 1. Dari hal tersebut, penggunaan ruang antrian yang lebih banyak
menyebabkan antrian juga semakin panjang. Hal ini berdampak pada rata-rata
end to end delay.
Antrian yang panjang menyebabkan bertambahnya delay yang dihasilkan
dari waktu tunggu setiap paket dalam antrian untuk kemudian ditransmisikan.
Model antrian RED akan membuang paket secara acak tanpa menunggu ruang
buffer penuh namun dalam transmisi paket dalam antrian tetap menggunakan
algoritma First In First Out (FIFO). Dengan demikian, dapat disimpulkan
bahwa sekenario 2 memiliki rata-rata end to end delay lebih besar daripada
sekenario 2 karena jumlah antrian paket sekenario 2 dalam ruang buffer lebih
panjang daripada sekenario 1.
Untuk sekenario 3 dan 4 menggunakan model antrian droptail dengan
varian ukuran ruang buffer masing-masing 60 dan 30. Berdasarkan gambar
4.3.3.1, sekenario 3 dengan ukuran ruang buffer 60 memiliki rata-rata end to
end delay lebih besar daripada sekenario 4. Pada model antrian droptail ruang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
buffer digunakan secara maksimal hingga penuh. Seperti halnya pada model
antrian RED, semakin panjang antrian nilai delay juga akan bertambah.
Sekenario 3 dengan ruang buffer 60 jika digunakan secara penuh maka delay
yang terbentuk akan lebih besar dibandingkan dengan sekenario 3 yang
memiliki ukuran ruang buffer 30.
Hasil dari simulasi yang telah dijalankan, untuk rata-rata end to end delay
baik pada model antrian RED maupun droptail memiliki kesamaan yakni
semakin panjang antrian yang terjadi, maka nilai rata-rata end to end delay
juga akan semakin besar. Pada RED yang mempengaruhi panjang dan
pendeknya sebuah antrian terletak pada pemberian nilai min.threshold.
Semakin nilai min.threshold tersebut rendah, nilai rata-rata end to end delay
semakin rendah. Sedangkan pada model antrian droptail, ukuran ruang buffer
semakin kecil, maka nilai rata-rata end to end delay juga semakin kecil.
4.3.4. Rata-Rata Throughput
Gambar 4.3.4.1. Grafik rata-rata throughput
2,21868
2,27724 2,26143
2,06891
1,95
2
2,05
2,1
2,15
2,2
2,25
2,3
Mb
ps
Rata-rata throughput
Sekenario 1
Sekenario 2
Sekenario 3
Sekenario 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
Gambar 4.3.4.1 menunjukkan rata-rata throughput pada setiap
sekenario. Terlihat jelas bahwa sekenario 2 memiliki nilai rata-rata throughput
paling besar daripada sekenario yang lain. Throughput merupakan total data
yang diterima dalam sekali sesi pengiriman. Throughput merupakan
perpaduan antara dari rata-rata byte percongestion window dengan rata-rata
end to end delay. Perpaduan tersebut pada akhirnya akan menghasilkan
throughput. Nilai rata-rata byte percongestion window yang besar tidak
menjamin memiliki throughput yang besar, begitu pula apabila memiliki rata-
rata end to end delay yang rendah tidak menjamin bahwa throughput yang
besar.
Rata-rata throughput didapatkan dari hasil bagi antara jumlah data yang
diterima dengan durasi waktu dalam 1 sesi pengiriman. Pada seluruh
sekenario memiliki durasi transmisi selama 500 detik.
Dibawah ini merupakan tabel throughput dan rata-rata throughput pada
setiap sekenario.
Sekenario Throughput Durasi transmisi Rata-rata throughput
Sekenario 1 1109,34 Mb 500 detik 2,21868 Mbps
Sekenario 2 1138,62 Mb 500 detik 2,27724 Mbps
Sekenario 3 1130,72 Mb 500 detik 2,26143 Mbps
Sekenario 4 1034,45 Mb 500 detik 2,06891 Mbps
Tabel 4.3.4.1. Tabel throughput, durasi, dan rata-rata throughput setiap sekenario
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
Pada tabel 4.3.4.1 terdapat kolom throughput. Masing masing
sekenario memiliki throughput yang berbeda sehingga jika dibagi dengan
durasi transmisi akan mendapatkan nilai rata-rata throughput yang berbeda
juga untuk setiap detiknya.
Seperti yang diuraikan di atas, ukuran byte percongestion window
yang besar tidak menjamin throughput yang besar. Hal ini tergambar pada
sekenario 2 dan 3. Pada sekenario 3 memiliki nilai rata-rata byte
percongestion window lebih besar dibandingkan sekenario 2, namun sekenario
2 memiliki nilai rata-rata end to end delay yang lebih baik daripada sekenario
3 terbukti bahwa sekenario 2 memiliki rata-rata throughput yang lebih baik
dibandingkan sekenario 3.
Setelah simulasi dijalankan, rata-rata throughput merupakan hasil bagi
antara total throughput dengan durasi pengiriman. Throughput sendiri
merupakan perpaduan antara byte percongestion window dan end to end delay.
Throughput akan lebih optimal jika nilai rata-rata byte percongestion window
besar dan nilai rata-rata end to end delay rendah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dari hasil simulasi yang telah dilakukan, kesimpulan yang dapat
diambil sebagai berikut :
1. Congestion control TCP Tahoe yang dijalankan pada model
antrian RED menunjukkan bahwa tinggi grafik congestion window
tidak sama rata. Hal ini disebabkan karena model antrian RED
membuang paket secara acak tanpa menunggu ruang antrian penuh
sehingga window dapat jatuh sewaktu-waktu. Mekanisme
pembuangan paket secara acak ini berdampak terhadap ukuran
setiap window (dalam byte) yang mana ukuran setiap window tidak
sama, namun dari sisi end to end delay manajemen antrian RED
memiliki delay yang relatif rendah karena ruang antrian tidak
digunakan secara penuh dalam transmissi paket TCP sehingga
waktu antri setiap paket lebih singkat. Dengan waktu tunggu pada
antrian yang singkat, maka throughput dapat terjaga.
2. Pada model antrian droptail, congestion control TCP Tahoe
melalui grafik congestion window menunjukkan bahwa tinggi
grafik sama rata. Penggunaan model antrian ini, pembuangan paket
akan terjadi apabila ruang antrian penuh. Pada dasarnya TCP akan
memaksimalkan penggunaan jaringan yang ada secara terkontrol.
TCP akan berusaha meng-adjust pengiriman paket hingga
mendapatkan titik kesetimbangan hingga akhirnya grafik
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
congestion window akan memiliki ukuran yang sama. Namun disisi
lain dengan penggunaan ruang antrian yang penuh, akan
mengakibatkan waktu tunggu antrian yang lebih lama
dibandingkan model antrian RED sehingga delay bertambah.
5.2. Saran
Untuk pengembangan lebih lanjut, terdapat beberapa saran dari penulis
diantaranya :
1. Melakukan pengujian lebih lanjut menggunakan model antrian
pengembangan dari RED (ARED, WRED, FRED).
2. Menggunakan protokol UDP sebagai pengganggu.
3. Melakukan pengujian dengan varian protokol TCP yang lain.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
DAFTAR PUSTAKA
[1] Floyd, Sally & V. Jacobson. (1993). Random Early Detection Gateways
for Congestion Avoidance
[2] Kurniawan, Victor Dian. (2013). Analisa Unjuk Kerja Manajemen Antrian
Droptail dan Fair Queuing Pada Router
[3] TCP Connection Establishment Process: The "Three-Way Handshake".
[online].
Tersedia :
www.tcpipguide.com/free/TCPConnectionEstablishmentProcessTh
eThreeWayHandsh-3.html
[4] Forouzan : CHAPTER 24-Congestion Control and Quality of Service
[online]
Tersedia :
http://novellaqalive2.mheducation.com/sites/dl/free/007000000x/216445/C
hap24.pdf
[5] Rastogi, Shubhangi & Samir Srivastava. (2014). Comparison Analysis of
Different Queuing Mechanisms Droptail, RED and NLRED in Dumb-bell
Topology
[6] Kumar, Ashish, Ajay K Sharma, & Arun Singh. (2012). Comparison and
Analysis of Drop Tail and RED Queuing Methodology in PIM-DM
Multicasting Network
[7] Susanto, Abe & I Wayan Warmada. (2001). Modul Pelatihan Gnuplot
Untuk Orang Lugu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
[8] Ziegler, Thomas, C. Brandauwer, & S. Fdida. (2001). Stability Criteria of
RED with TCP Traffic
[9] Network Simulator 2. [online]
Tersedia : http://www.isi.edu/nsnam/ns/ [1 Juli 2015]
[10] Rohan, Sai, S. Suman, & P.Viswanathan. (2014). Comparison of TCP
Congestion Control Algorithms using NetSim
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
LAMPIRAN
Konfigurasi sekenario.
1. Sekenario1.tcl
set ns [new Simulator]
$ns color 1 Red
$ns color 2 Blue
set nf [open bottlen.nam w]
$ns namtrace-all $nf
set nd [open out.tr w]
$ns trace-all $nd
#cwndtcp1
#$ns namtrace-all $nf
#set cwnd1 [open cwnd1.tr w]
#cwndtcp2
#$ns namtrace-all $nf
#set cwnd2 [open cwnd2.tr w]
#**************************************
#prosedur "finish"
proc finish {} {
global tchan_
set awkCode {
{
if ($1 == "Q" && NF>2) {
print $2, $3 >> "temp.q";
set end $2
}
else if ($1 == "a" && NF>2)
print $2, $3 >> "temp.a";
}
}
set f [open temp.queue w]
puts $f "TitleText: red"
puts $f "Device: Postscript"
if { [info exists tchan_] } {
close $tchan_
}
exec rm -f temp.q temp.a
exec touch temp.a temp.q
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
exec awk $awkCode all.q
puts $f \"queue
exec cat temp.q >@ $f
puts $f \n\"ave_queue
exec cat temp.a >@ $f
close $f
exec xgraph -bb -bg white -tk -x time -y queue temp.queue &
exit 0
}
#*****************************************************
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]
#kapasitas link dan mekanisme antrian
$ns duplex-link $n0 $n2 10Mb 10ms DropTail
$ns duplex-link $n1 $n2 10Mb 10ms DropTail
$ns duplex-link $n2 $n3 5Mb 10ms RED
$ns duplex-link $n3 $n4 5Mb 10ms DropTail
$ns duplex-link $n3 $n5 5Mb 10ms DropTail
#orientasi node
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
$ns duplex-link-op $n3 $n4 orient right-up
$ns duplex-link-op $n3 $n5 orient right-down
#batasan jumlah ruang antrian
$ns queue-limit $n2 $n3 60
$ns duplex-link-op $n2 $n3 queuePos 0.5
#setting antrian RED
set redq [[$ns link $n2 $n3] queue]
set tchan_ [open all.q w]
$redq set bytes_ false
$redq set queue_in_bytes_ false
$redq trace curq_
$redq trace ave_
$redq attach $tchan_
$redq set thresh_ 10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
$redq set maxthresh_ 60
$redq set q_weight_ 0.002
$redq set linterm_ 10
#Agent TCP dan aplikasi FTP
#TCP1
set tcp [new Agent/TCP]
$tcp set class_ 1
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n4 $sink
$ns connect $tcp $sink
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTP
$tcp set window_ 1000
#tcp trace
$tcp attach $nd
$tcp tracevar cwnd_
#TCP2
set tcp2 [new Agent/TCP]
$tcp2 set class_ 2
$ns attach-agent $n1 $tcp2
set sink2 [new Agent/TCPSink]
$ns attach-agent $n5 $sink2
$ns connect $tcp2 $sink2
set ftp2 [new Application/FTP]
$ftp2 attach-agent $tcp2
$ftp2 set type_ FTP
$tcp2 set window_ 1000
#tcp trace
$tcp2 attach $nd
$tcp2 tracevar cwnd_
#Pengeplotan data cwnd dengan file akhir .xg
proc plotWindow {tcpSource outfile} {
global ns
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
puts $outfile "$now $cwnd"
$ns at [expr $now+0.1] "plotWindow $tcpSource $outfile"
}
set outfile [open "cwndtcp1.xg" w]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
$ns at 0.0 "plotWindow $tcp $outfile"
set outfile [open "cwndtcp2.xg" w]
$ns at 0.0 "plotWindow $tcp2 $outfile"
#****************************************
$ns at 0.1 "$ftp start"
$ns at 0.1 "$ftp2 start"
$ns at 500.1 "$ftp stop"
$ns at 500.1 "$ftp2 stop"
$ns at 502.0 "finish"
$ns run
2. Sekenario2.tcl
set ns [new Simulator]
$ns color 1 Red
$ns color 2 Blue
set nf [open bottlen.nam w]
$ns namtrace-all $nf
set nd [open out.tr w]
$ns trace-all $nd
#cwndtcp1
#$ns namtrace-all $nf
#set cwnd1 [open cwnd1.tr w]
#cwndtcp2
#$ns namtrace-all $nf
#set cwnd2 [open cwnd2.tr w]
#**************************************
#prosedur "finish"
proc finish {} {
global tchan_
set awkCode {
{
if ($1 == "Q" && NF>2) {
print $2, $3 >> "temp.q";
set end $2
}
else if ($1 == "a" && NF>2)
print $2, $3 >> "temp.a";
}
}
set f [open temp.queue w]
puts $f "TitleText: red"
puts $f "Device: Postscript"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
if { [info exists tchan_] } {
close $tchan_
}
exec rm -f temp.q temp.a
exec touch temp.a temp.q
exec awk $awkCode all.q
puts $f \"queue
exec cat temp.q >@ $f
puts $f \n\"ave_queue
exec cat temp.a >@ $f
close $f
exec xgraph -bb -bg white -tk -x time -y queue temp.queue &
exit 0
}
#*****************************************************
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]
#kapasitas link dan mekanisme antrian
$ns duplex-link $n0 $n2 10Mb 10ms DropTail
$ns duplex-link $n1 $n2 10Mb 10ms DropTail
$ns duplex-link $n2 $n3 5Mb 10ms RED
$ns duplex-link $n3 $n4 5Mb 10ms DropTail
$ns duplex-link $n3 $n5 5Mb 10ms DropTail
#orientasi node
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
$ns duplex-link-op $n3 $n4 orient right-up
$ns duplex-link-op $n3 $n5 orient right-down
#batasan jumlah ruang antrian
$ns queue-limit $n2 $n3 60
$ns duplex-link-op $n2 $n3 queuePos 0.5
#setting antrian RED
set redq [[$ns link $n2 $n3] queue]
set tchan_ [open all.q w]
$redq set bytes_ false
$redq set queue_in_bytes_ false
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
$redq trace curq_
$redq trace ave_
$redq attach $tchan_
$redq set thresh_ 30
$redq set maxthresh_ 60
$redq set q_weight_ 0.002
$redq set linterm_ 10
#Agent TCP dan aplikasi FTP
#TCP1
set tcp [new Agent/TCP]
$tcp set class_ 1
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n4 $sink
$ns connect $tcp $sink
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTP
$tcp set window_ 1000
#tcp trace
$tcp attach $nd
$tcp tracevar cwnd_
#TCP2
set tcp2 [new Agent/TCP]
$tcp2 set class_ 2
$ns attach-agent $n1 $tcp2
set sink2 [new Agent/TCPSink]
$ns attach-agent $n5 $sink2
$ns connect $tcp2 $sink2
set ftp2 [new Application/FTP]
$ftp2 attach-agent $tcp2
$ftp2 set type_ FTP
$tcp2 set window_ 1000
#tcp trace
$tcp2 attach $nd
$tcp2 tracevar cwnd_
#Pengeplotan data cwnd dengan file akhir .xg
proc plotWindow {tcpSource outfile} {
global ns
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
puts $outfile "$now $cwnd"
$ns at [expr $now+0.1] "plotWindow $tcpSource $outfile"
}
set outfile [open "cwndtcp1.xg" w]
$ns at 0.0 "plotWindow $tcp $outfile"
set outfile [open "cwndtcp2.xg" w]
$ns at 0.0 "plotWindow $tcp2 $outfile"
#****************************************
$ns at 0.1 "$ftp start"
$ns at 0.1 "$ftp2 start"
$ns at 500.1 "$ftp stop"
$ns at 500.1 "$ftp2 stop"
$ns at 502.0 "finish"
$ns run
3. Sekenario3.tcl
set ns [new Simulator]
$ns color 1 Red
$ns color 2 Blue
set nf [open bottlen.nam w]
$ns namtrace-all $nf
set nd [open out.tr w]
$ns trace-all $nd
#cwndtcp1
#$ns namtrace-all $nf
#set cwnd1 [open cwnd1.tr w]
#cwndtcp2
#$ns namtrace-all $nf
#set cwnd2 [open cwnd2.tr w]
proc finish {} {
global ns nf
$ns flush-trace
close $nf
exit 0
}
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]
#kapasitas link dan parameter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
$ns duplex-link $n0 $n2 10Mb 10ms DropTail
$ns duplex-link $n1 $n2 10Mb 10ms DropTail
$ns duplex-link $n2 $n3 5Mb 10ms DropTail
$ns duplex-link $n3 $n4 5Mb 10ms DropTail
$ns duplex-link $n3 $n5 5Mb 10ms DropTail
#orientasi/letak node
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
$ns duplex-link-op $n3 $n4 orient right-up
$ns duplex-link-op $n3 $n5 orient right-down
#limitasi queue
$ns queue-limit $n2 $n3 60
$ns duplex-link-op $n2 $n3 queuePos 0.5
#TCP 1 Source agent dan aplikasi || sink
set tcp [new Agent/TCP]
$tcp set class_ 1
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n4 $sink
$ns connect $tcp $sink
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTP
$tcp set window_ 1000
#tcp trace
$tcp attach $nd
$tcp tracevar cwnd_
#TCP 2 Source agent dan aplikasi || sink
set tcp2 [new Agent/TCP]
$tcp2 set class_ 2
$ns attach-agent $n1 $tcp2
set sink2 [new Agent/TCPSink]
$ns attach-agent $n5 $sink2
$ns connect $tcp2 $sink2
set ftp2 [new Application/FTP]
$ftp2 attach-agent $tcp2
$ftp2 set type_ FTP
$tcp2 set window_ 1000
#tcp trace
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
$tcp2 attach $nd
$tcp2 tracevar cwnd_
proc plotWindow {tcpSource outfile} {
global ns
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
puts $outfile "$now $cwnd"
$ns at [expr $now+0.1] "plotWindow $tcpSource $outfile"
}
#PLOT WINDOW DEGAN XGRAPH
set outfile [open "cwndtcp1.xg" w]
$ns at 0.0 "plotWindow $tcp $outfile"
set outfile [open "cwndtcp2.xg" w]
$ns at 0.0 "plotWindow $tcp2 $outfile"
set qfile [$ns monitor-queue $n2 $n3 [open queue.tr w] 0.031131312]
[$ns link $n2 $n3] queue-sample-timeout;
$ns at 0.1 "$ftp start"
$ns at 0.1 "$ftp2 start"
$ns at 500.1 "$ftp stop"
$ns at 500.1 "$ftp2 stop"
$ns at 502.0 "finish"
$ns run
4. Sekenario4.tcl
set ns [new Simulator]
$ns color 1 Red
$ns color 2 Blue
set nf [open bottlen.nam w]
$ns namtrace-all $nf
set nd [open out.tr w]
$ns trace-all $nd
#cwndtcp1
#$ns namtrace-all $nf
#set cwnd1 [open cwnd1.tr w]
#cwndtcp2
#$ns namtrace-all $nf
#set cwnd2 [open cwnd2.tr w]
proc finish {} {
global ns nf
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
$ns flush-trace
close $nf
exit 0
}
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]
#kapasitas link dan parameter
$ns duplex-link $n0 $n2 10Mb 10ms DropTail
$ns duplex-link $n1 $n2 10Mb 10ms DropTail
$ns duplex-link $n2 $n3 5Mb 10ms DropTail
$ns duplex-link $n3 $n4 5Mb 10ms DropTail
$ns duplex-link $n3 $n5 5Mb 10ms DropTail
#orientasi/letak node
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
$ns duplex-link-op $n3 $n4 orient right-up
$ns duplex-link-op $n3 $n5 orient right-down
#limitasi queue
$ns queue-limit $n2 $n3 30
$ns duplex-link-op $n2 $n3 queuePos 0.5
#TCP 1 Source agent dan aplikasi || sink
set tcp [new Agent/TCP]
$tcp set class_ 1
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n4 $sink
$ns connect $tcp $sink
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTP
$tcp set window_ 1000
#tcp trace
$tcp attach $nd
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
$tcp tracevar cwnd_
#TCP 2 Source agent dan aplikasi || sink
set tcp2 [new Agent/TCP]
$tcp2 set class_ 2
$ns attach-agent $n1 $tcp2
set sink2 [new Agent/TCPSink]
$ns attach-agent $n5 $sink2
$ns connect $tcp2 $sink2
set ftp2 [new Application/FTP]
$ftp2 attach-agent $tcp2
$ftp2 set type_ FTP
$tcp2 set window_ 1000
#tcp trace
$tcp2 attach $nd
$tcp2 tracevar cwnd_
proc plotWindow {tcpSource outfile} {
global ns
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
puts $outfile "$now $cwnd"
$ns at [expr $now+0.1] "plotWindow $tcpSource $outfile"
}
#PLOT WINDOW DEGAN XGRAPH
set outfile [open "cwndtcp1.xg" w]
$ns at 0.0 "plotWindow $tcp $outfile"
set outfile [open "cwndtcp2.xg" w]
$ns at 0.0 "plotWindow $tcp2 $outfile"
set qfile [$ns monitor-queue $n2 $n3 [open queue.tr w] 0.031131312]
[$ns link $n2 $n3] queue-sample-timeout;
$ns at 0.1 "$ftp start"
$ns at 0.1 "$ftp2 start"
$ns at 500.1 "$ftp stop"
$ns at 500.1 "$ftp2 stop"
$ns at 502.0 "finish"
$ns run
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
Konfigurasi file awk
1. Rata-rata byte percongestion window
bpc.awk
if ($2=="0" && $4=="4" && $6=="cwnd_" && $7=="1.000") {
css1=css1+1;
}
if ($1 =="+" && $3 =="0"){
sizetcp1=sizetcp1+$6;
}
if ($2=="1" && $4=="5" && $6=="cwnd_" && $7=="1.000") {
css2=css2+1;
}
if ($1 =="+" && $3 =="1"){
sizetcp2=sizetcp2+$6;
}
};
END {
print "css = " css1 " " css2;
print "tcp 1 total " sizetcp1/1024" kB";
print "Rata-rata byte per cwnd tcp1= " (sizetcp1/1024)/css1 "kB";
print "Rata-rata byte per cwnd tcp1= " (sizetcp2/1024)/css2 "kB";
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
2. Paket drop
drop.awk
BEGIN {
fsDrops = 0;
numFs = 0;
sent_1 = 0;
drop_tcp1 =0;
sent_2 = 0;
drop_tcp2 =0;
}
{
action = $1;
time = $2;
from = $3;
to = $4;
type = $5;
pktsize = $6;
flow_id = $8;
src = $9;
dst = $10;
seq_no = $11;
packet_id = $12;
if (from==2 && to==3 && action == "+")
numFs++;
if (type=="tcp" && action == "d")
fsDrops++;
if (from==0 && to==2 && action == "+")
sent_1++;
if (flow_id==1 && action == "d")
drop_tcp1++;
if (from==1 && to==2 && action == "+")
sent_2++;
if (flow_id==2 && action == "d")
drop_tcp2++;
}
END {
printf("Total Paket terkirim:%d drop:%d\n", numFs, fsDrops);
printf("TCP 1 terkirim:%d drop:%d\n", sent_1, drop_tcp1);
printf("TCP 2 terkirim:%d drop:%d\n", sent_2, drop_tcp2);
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
3. Rata-rata end to end delay
avgeted.awk
BEGIN {
fromNode=0; toNode=4;
p_id=0;
num_sample = 0;
total_delay = 0;
fromNode_2=1; toNode_2=5;
p_id_2=1;
num_sample_2 = 0;
total_delay_2 = 0;
}
/^\+/&&$1=="+"&&$3==fromNode&&$5=="tcp"{
t_arr[$12] = $2;
p_id==$12;
};
/^r/&&$1=="r"&&$4==toNode&&$5=="tcp"{
if (p_id = $12){
num_sample++;
delay = $2 - t_arr[$12];
total_delay += delay;
};
};
#-------------------------------------------------------------
/^\+/&&$1=="+"&&$3==fromNode_2&&$5=="tcp"{
t_arr_2[$12] = $2;
p_id_2==$12;
};
/^r/&&$1=="r"&&$4==toNode_2&&$5=="tcp"{
if (p_id_2 = $12){
num_sample_2++;
delay_2 = $2 - t_arr_2[$12];
total_delay_2 += delay_2;
};
};
END{
avg_delay = total_delay/num_sample;
print "Rata-rata end to end delay " avg_delay " seconds";
print "Detail :";
print " - Dari node " fromNode;
print " - Menuju node " toNode;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
avg_delay_2 = total_delay_2/num_sample_2;
print "Rata-rata end to end delay " avg_delay_2 " seconds";
print "Detail:";
print " - Dari node " fromNode_2;
print " - Menuju node " toNode_2;
};
4. Rata-rata throughput
Avgthroughput.awk
BEGIN {
tcp1=0;
tcp2=0
}
{ if ($1=="r" && $
4==4){
tcp1=tcp1+$6;
}
if ($1=="r" && $4==5){
tcp2=tcp2+$6;
}
}
END{
print "-------------------------------------------------------"
print "throughput tcp 1 = " tcp1*8/1024/1024 " Mbit";
print "avg throughput tcp 1= " tcp1*8/1024/1024/500 " Mbps";
print "-------------------------------------------------------"
print "throughput tcp 2 = " tcp2*8/1024/1024 " Mbit";
print "avg throughput tcp 1= " tcp2*8/1024/1024/500 " Mbps";
print "-------------------------------------------------------"
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
5. Filter untuk mendapatkan data mentah yang harus di eksport ke file .xg
dan digrafikkan
Queuedroptail.awk
BEGIN{}
{
print $1 "\t" $5
}
END{}
6. Filter untuk mendapatkan data mentah sebelum di grafikkan status end to
end delay.
BEGIN {
fromNode=0; toNode=4;
p_id=0;
num_sample = 0;
total_delay = 0;
fromNode_2=1; toNode_2=5;
p_id_2=1;
num_sample_2 = 0;
total_delay_2 = 0;
}
/^\+/&&$1=="+"&&$3==fromNode&&$5=="tcp"{
t_arr[$12] = $2;
p_id==$12;
};
/^r/&&$1=="r"&&$4==toNode&&$5=="tcp"{
if (p_id = $12){
num_sample++;
delay = $2 - t_arr[$12];
total_delay += delay;
print $2 "\t" delay*200;
};
};
/^\+/&&$1=="+"&&$3==fromNode_2&&$5=="tcp"{
t_arr_2[$12] = $2;
p_id_2==$12;
};
/^r/&&$1=="r"&&$4==toNode_2&&$5=="tcp"{
if (p_id_2 = $12){
num_sample_2++;
delay_2 = $2 - t_arr_2[$12];
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
total_delay_2 += delay_2;
};
};
END{
};
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI