Analisa unjuk kerja manajemen antrian drop tail dan fair queueing pada router

(1)

ANALISA UNJUK KERJA MANAJEMEN ANTRIAN DROP TAIL

DAN FAIR QUEUEING PADA ROUTER

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Disusun oleh :

VICTOR DIAN KURNIAWAN 085314052

JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA


(2)

i

ANALISA UNJUK KERJA MANAJEMEN ANTRIAN DROP TAIL

DAN FAIR QUEUEING PADA ROUTER

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Disusun oleh :

VICTOR DIAN KURNIAWAN 085314052

JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA


(3)

ii

PERFORMANCE ANALYSIS QUEUEING MANAGEMENT DROP

TAIL AND FAIR QUEUEING IN ROUTER

A THESIS

Presented as Partial Fulfillment of The Requirements to Obtain The Sarjana Komputer Degree

in Informatics Engineering Study Program

By :

VICTOR DIAN KURNIAWAN 085314052

INFORMATICS ENGINEERING STUDY PROGRAM

INFORMATICS ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2013


(4)

iii

SKRIPSI

ANALISA UNJUK KERJA MANAJEMEN ANTRIAN DROP TAIL

DAN FAIR QUEUEING PADA ROUTER

Dipersiapkan dan ditulis oleh : Victor Dian Kurniawan

NIM : 085314052

Telah disetujui oleh :


(5)

(6)

v

MOTTO

Kemenangan yang seindah-indahnya dan sesukar-sukarnya yang boleh

direbut oleh manusia ialah menundukan diri sendiri.(Ibu Kartini ).


(7)

vi

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sungguh-sungguh bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 20 Februari 2013

Penulis


(8)

vii

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:

Nama : Victor Dian Kurniawan

Nomor Mahasiswa : 085314052

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:

“ Analisa Unjuk Kerja Manajemen Antrian Drop Tail dan Fair Queueing pada

Router “

Beserta perangkat yang diperlukan (jika ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian ini pernyataan yang saya buat dengan sebenarnya. Dibuat di Yogyakarta

Pada tanggal: 20 Februari 2013

Yang menyatakan


(9)

viii

ABSTRAK

Perkembangan yang pesat baik dalam segi penggunaan maupun ukuran dari jaringan internet memicu minat baru dalam metode pengendalian kemacetan lalu lintas internet (congestion control). Pada router kemacetan dapat dikendalikan dengan manajemen antrian. Manajemen antrian mengendalikan urutan pengiriman paket dan penggunaan ruang buffer sehingga dapat membantu pengendalian kemacetan.Manajemen atrian yang sering digunakan adalah manajemen antrianDrop Tail dan Fair Queueing. Pada tugas akhir ini akan diuji kinerja antara manajemen antrian DT dan Fair FQ.

Penelitian menggunakan simulasi dengan bantuan Network Simulator 2 (NS-2). Pengambilan data didapat dari trace file hasil simulasi dan dihitung dengan menggunakan program .awk. Pengujian berdasarkan ukuran buffer yang berbeda-beda, ukuran paket maksimum dan minimum, dan protokol transport TCP dan UDP. Pengujian kinerja antara manajemen antrian DT dan FQ berdasarkan parameter

Average delay router, packet loss router, dan throughput router.

Dari analisa yang diambil dari penelitian, maka secara keseluruhan dapat diambil kesimpulan bahwa manajemen antrian DT lebih baik dari pada manajemen antrian FQ pada parameter average delay router, paket loss router, dan throughput router pada pengujian dengan ukuran buffer 10, 25, 50, 75, dan 100 menggunakan paket TCP danUDP dengan ukuran paket maksimum dan minimum.

Kata kunci :router

, buffer, Drop Tail, Fair Queueing, average delay router, paket loss router, throughput router


(10)

ix

ABSTRACT

Development both in use aspect and size aspect of internet network trigger new interest in method of controlling internet congestion (congestion control). The congestion could be controlled by queuing management. Queuing management control the order of sending packet and the use of buffer space so that it helps congestion control. Queuing management which are frequently used are algorithm Drop Tail and Fair Queuing. In this paper, the performance between algorithm Drop Tail and Fair Queuing would be tested.

The paper used simulation assisted with Network Simulator 2 (NS-2). The data were obtained from trace file, result of simulation and counted using .awk. Program. Testing based on different buffer measurement, maximum and minimum packet measurement, and protocol transport TCP and UDP. The testing of performance between algorithm DT and FQ based on parameter Average delay router, packet loss router, and throughput router.

The analysis shows that algorithm DT is better than algorithm FQ in parameter average delay router, packet loss router, and throughput router.to test with buffer size 10, 25, 50, 75, and 100 using TCP danUDP packets with the minimum and maximum packet size.

Keyword :

router , buffer, Drop Tail, Fair Queueing, average delay router, paket loss router, throughput router


(11)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa yang telah melimpahkan berkat dan rahmatNya, sehingga penulis skripsi dengan judul “Analisa

Unjuk Kerja Manajemen Antrian Drop Tail dan Fair Queueing pada Router” ini dapat diselesaikan dengan baik oleh penulis. Skripsi ini ditulis sebagai salah satu syarat untuk memperoleh gelar sarjana komputer di Program Studi Teknik Informatika, Fakultas Sains dan Teknologi, Universitas Sanata Dharma Yogyakarta.

Selama penulisan skripsi ini, banyak pihak yang telah membantu dan membimbing penulis. Oleh sebab itu melalui kesempatan ini penulis mengucapkan terima kasih atas selesainya penyusunan skripsi ini, kepada:

1. Tuhan Yesus dan Bunda Maria selaku “dosen pembimbing” dalam kehidupanku. 2. Kedua orang tuaku, pak Kris dan bu Giyarti, serta saudara dan keluargaku yang

telah memberi dukungan baik berupa doa, semangat, nasihat dan materi, sehingga penulis dapat menyelesaikan skripsi ini.

3. Bapak Damar Widjaja, S.T., M.T selaku dosen pembimbing yang telah bersedia memberi saran, kritik, meluangkan waktu, tenaga dan pikiran untuk membimbing dan mengarahkan penulis.

4. Ibu Ridowati Gunawan S.Kom., M.T. selakuKaprodi Teknik Informatika. 5. Bapak Eko Hari Parmadi S.Si., M.Kom.selaku dosen pembimbing akademik.


(12)

xi

6. Bapak dan Ibu dosen serta staf dan karyawan Teknik Informatika Universitas Sanata Dharma.

7. Lenny Arinta Helena (tercinta) yang selalu menjadi bintang hidupku. Tak lupa pak Sukandar dan ibu Iwik yang selalu memberi semangat dengan kata-katanya,

“mas Victor kapan lulus..?”.

8. Teman – teman TI angkatan 2008 yang meluangkan waktu untuk memberi saran dalam penyusunan tugas akhir ini.

9. Adi kiting, Edward item, Yudi Simbah, Apin, Hendra, Dias, Colox, Shuit, Deti dan teman-teman yang masih berjuang, “ayo gasssss pooollllll....!!!”.

10.Untuk pihak – pihak yang tidak dapat penulis sebutkan satu per satu. Penulis mengucapkan terima kasih atas bantuannya sehingga penulis dapat menyelesaikan karya ilmiah ini.

Akhir kata, penulis berharap karya ilmiah ini dapat bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan.

Yogyakarta, 20 Februari 2013


(13)

xii

DAFTAR ISI

LEMBAR JUDUL ... i

HALAMAN PERSETUJUAN PEMBIMBING ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERSEMBAHAN ... v

PERNYATAAN KEASLIAN HASIL KARYA ... vi

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vii

ABSTRAK ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR GAMBAR ... xiv

DAFTAR TABEL ... xv

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ... 1

1.2 Rumusan Masalah ... 2

1.3 Batasan Masalah ... 3

1.4 Tujuan ... 3

1.5 Manfaat Penelitian ... 3

1.6 Metodologi Penelitian ... 3

1.7 Sistematika Penulisan ... 4

BAB II LANDASAN TEORI 2.1 Antrian ... 6

2.2 Drop Tail ... 8

2.3 Fair Queueing ... 9

2.4 Quality of Service ... 10

2.4.1 Parameter-parameter QoS ... 13

2.4.1.1 Delay ... 14

2.4.1.2 Packet Loss ... 15

2.4.1.3 Throughput... 16

2.5 Simulasi Jaringan ... 17


(14)

xiii

2.5.2 Network Simulator 2 ... 18

2.5.2.1 Trace File ... 20

2.5.3 Transport Protocol ... 22

2.5.3.1 User Datagram Protocol ... 22

2.5.3.2 Transmission Control Protocol ... 23

2.6 Router ... 24

BAB III PERANCANGAN SIMULASI 3.1 Perancangan Simulasi ... 26

3.2 Topologi Jaringan ... 28

3.3 Konfigurasi Sistem ... 29

3.4 Pengukuran Parameter Kinerja ... 30

3.4.1 Menghitung packet loss router ... 31

3.4.2 Menghitung average delay router ... 32

3.4.3 Menghitung throughput ... 34

BAB IVPENGUJIAN DAN ANALISIS 4.1 Penjelasan Program dan Contoh Pengambilan Nilai dari Trace File.. 35

4.2 Pengambilan nilai dari trace file ... 41

4.3 Penghitungan dan Analisis ... 45

4.3.1 Average Delay Router ... 45

4.3.2 Packet Loss Router ... 48

4.3.2 Throughput Router ... 51

BAB VKESIMPULAN DAN SARAN 5.1. Kesimpulan ... 54

5.2. Saran ... 55

DAFTAR PUSTAKA ... 56


(15)

xiv

DAFTAR GAMBAR

Gambar 2.1 Antrian ... 6

Gambar 2.2 FIFO ... 8

Gambar 2.3 Drop Tail ... 8

Gambar 2.4 Fair Queueing RR ... 9

Gambar 2.5 Tampilan NS-2 ... 18

Gambar 2.6 Contoh trace file ... 20

Gambar 3.1 Flowchart Perancangan Simulasi ... 25

Gambar 3.2 Topologi Jaringan ... 27

Gambar 3.3 Flowchat packet loss router ... 31

Gambar 3.4 Flowchataverage delay router... 32

Gambar 3.5 Flowchatthroughput... 33

Gambar 4.1 potongan trace file Average delay router ... 41

Gambar 4.2 potongan trace file Packet loss router ... 43

Gambar 4.3 potongan trace file Throughput router ... 44

Gambar 4.4 contoh output Average_delay_router.awk ... 46

Gambar 4.5 Grafik average delay router ... 46

Gambar 4.6 contoh output packetLossRouter.awk ... 49

Gambar 4.7 Grafik paket loss router ... 49

Gambar 4.8 contoh output throughput_router.awk ... 51


(16)

xv

DAFTAR TABEL

Tabel 2.1 Klasifilasi Delay ... 15

Tabel 2.2 Klasifikasi Packet Loss ... 16

Table 3.1 Skenario Simulasi ... 26

Tabel 3.2 Record Trace File ... 29

Tabel 3.2 (lanjutan) Record Trace File ... 30

Tabel 4.1 Average delay router (ms) ... 47

Tabel 4.2 Paket loss router (%) ... 49


(17)

1

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan yang pesat baik dalam segi penggunaan maupun ukuran dari jaringan internet memicu minat baru dalam metode pengendalian kemacetan lalu lintas internet (congestion control) [1].Metode ini mempunyai dua point dalam implementasinya.Pertama adalah pada sumber pengirim paket, dimana mempunyai pengendalian aliran (flow control) yang bervariasi.Point yang kedua ada pada

gatewayataurouter, dimana kemacetan dapat dikendalikan dengan routing protocol

dan manajemen antrian.Routing protocol jika diimplementasikan dengan benar maka akan mengurangi kemacetan. Begitu juga dengan manajemen antrian, manajemen antrian mengendalikan urutan pengiriman paket dan penggunaan ruang buffer

sehingga dapat membantu pengendalian kemacetan.

Suatu jaringan internet mempunyaimanajemen antrian yang biasanya terdapat pada router. Antrian tersebut dapat mempengaruhi besarnya delay pada suatu jaringan [2]. Jika buffer pada router terlalu kecil sedangkan paket yang melewati dan antri di router jauh lebih besar dari buffer, maka akanterjadidelay yang besar dan juga akan terjadipacket loss pada antrian semakin besar.

Pada antrian, delay disebabkan karena waktu tunggu pemprosesan suatu paket yang datang ke router sampai melewati router untuk dikirimkan ke router lain atau komputer tujuan. Sedangkan packet loss disebabkan karena jumlah paket yang datang melebihi dari kapasitas buffer.Selain itu, antrian juga mempengaruhi throughput yang yang dapat ditentukan dengan tingkat rata-rata pengiriman pesan berhasil melalui saluran komunikasi.

Ada beberapa manajemen antrian yang bisa diterapkan pada jaringan internet, antara lain First In First Out(FIFO) yang juga disebutDrop-Tail(DT), Fair


(18)

Queuing(FQ), Weighted Fair Queuing (WFQ), Random Early Detection

(RED), dan Explicit Congestion Notification (ECN) [3]. Masing-masing manajemen antrian tersebut mempunyai kelebihan dan kekurangan.

Sudah banyak penelitian untuk menentukan manajemen antrian yang lebih baik di antara manajemen antrian yang sudah ada.Salah satunya adalah membandingkan manajemen antrian RED dengan FQ [4].Kesimpulan dari penelitian tersebut adalah manajemen antrian FQ lebih baik dari pada manajemen antrian RED berdasarkan analisa throughput, delay, dan packetloss.Throughput pada manajemen antrian FQ lebih besar dari pada manajemen antrian RED setra delay dan packetloss

manajemen antrian FQ lebih kecil dibanding manajemen antrian RED.

Untuk menentukan manajemen antrian lainnya yang lebih handal, akan dibandingkan manajemen antrianDT dan FQ dengan parameter delay, packet loss, dan throughput. Pengujian tersebut akan disimulasikan dengan menggunakan

Network Simulator 2 (NS2). Pengujian juga dilakukan berdasarkan besarnya buffer

pada setiap manajemen antrian.

1.2 Rumusan Masalah

Perumusan masalah pada penelitian ini adalah :

1. Bagaimana merancang dan mensimulasikan manajemen antrianDT dan FQ dengan menggunakan NS2?

2. Bagaimana mengolah data pada tracefile hasil simulasi manajemen antrianDT dan FQ yang telah dibuat?

3. Bagaimana menguji kinerja manajemen antrianDT dan FQ yang telah dibuat? Parameter apa saja yang akan diuji?


(19)

1.3 Batasan Masalah

Batasan Masalah tugas akhir yang dibuat adalah sebagai berikut : 1. Simulasi dibangun dengan perangkat lunak NS2.

2. Jenis antrian yang diterapkan pada simulasi adalah DT dan FQ.

3. JumlahNode yang dibuat adalah 6 buah, 4 node sebagai komputer sumber (source), 1 node sebagai computer tujuan (destination), dan 1 node sebagai

router.

4. Transport protocol yang digunakan adalah TCP dan UDP.

5. Ukuran paket yang diuji adalah ukuran paket terkecil dan terbesar. Paket TCP adalah 20 byte dan 65495 byte dan Paket UDP adalah 8 byte dan 65507 byte.

6. Ukuran bufferrouterpada setiap pengujian masing-masing manajemen antrian adalah 10, 25, 50, 75, 100.

7. Parameter yang diukur adalah packet loss router, average delay router, dan

throughput router.

1.4 Tujuan

Tujuan tugas akhir yang dibuat adalah untuk menunjukkan hasil perbandingan unjuk kerja antara manajemen antrianDT dan FQ.

1.5 Manfaat Penelitian

Secara umum, hasil penelitian tugas akhir ini diharapkan dapat memberikan referensi untuk penelitian lebih lanjut mengenaimanajemen antrian DT dan FQ.

1.6 Metodologi Penelitian

Metodologi dan langkah-langkah yang digunakan dalam pelaksanaan tugas akhir ini adalah sebagai berikut :


(20)

1. Studi Literatur

Pada tahap ini, penulis mengumpulkan referensi-referensi yang digunakan untuk mendukung pengerjaan tugas akhir ini.

2. Perancangan

Pada tahap ini, penulis menentukan dan merancang simulasi yang akan dibangun, seperti jumlahnode, tipe antrian, bandwidth, ukuran buffer, dan lain – lain

3. Simulasi dan Pengumpulan data

Pada tahap ini, penulis membangun simulasi menggunakan NS-2 dan membuat script berekstensi „.tcl‟. Setelah simulasi dijalankan diperoleh file berekstensi „.tr‟, file tersebut berisi data-data dari simulasi. Untuk menghitung parameter-parameter pengujian dibuat scriptberekstensi „.awk‟.

4. Analisa Data

Pada tahap ini, penulis melakukan analisa hasil pengujian yang diperoleh dari

script „.awk‟.Analisa dilakukan dengan melakukan pengamatan dari hasil

pengujian sehingga dapat ditarik kesimpulan tentang unjuk kerja manajemen antrianDT dan FQ.

2.7 Sistematika Penulisan

I. PENDAHULUAN

Bab ini berisi latar belakang penulisan tugas akhir, rumusan masalah, tujuan penulisan, manfaat penulisan batasan masalah, metodologi penelitian, dan sistematika penulisan

II. LANDASAN TEORI

Bab ini menjelaskan mengenai teori yang berkaitan dengan judul/masalah tugas akhir ini


(21)

III. PERANCANGAN SIMULASI DROP TAIL & FAIR QUEUEING Bab ini berisi perencanaan simulasi manajemen antrianDrop Tail dan

Fair Queueing yang akan dibuat.

IV. IMPLEMENTASI DAN ANALISIS SIMULASI DROP TAIL &

FAIR QUEUEING

Bab ini berisi pelaksanaan simulasi dan hasil analisis data simulasi manajemen antrianDrop Tail dan Fair Queueing.

V. KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan yang didapat dan saran-saran berdasarkan hasil analisis manajemen antrianDrop Tail dan Fair Queueing.


(22)

6

BAB II

LANDASAN TEORI

2.1 ANTRIAN

Antrian adalah salah satu fungsi router yang menyimpan sementara paket-paket sebelum ditransmisikan. Jika paket-paket datang pada antrian paling akhir dari sebuah queue, maka paket-paket tersebut akan mengalami keterlambatan [5]. Secara umum skema antrian dapat diterangkan seperti pada Gambar 2.1.

Gambar 2.1 Antrian [6].

Paket yang akan dikirimkan oleh suatu node akan masuk ke dalam antrian (queue). Saat link kosong, paket yang berada di antrian terdepanakan ditransmisikan melalui link tersebut. Di sini seolah-olah link berperan sebagai

Server / Pelayan [6].

Manajemen antrian umumnya dianggap sebagai sebuah cabang dari riset operasi karena sering digunakan ketika membuat keputusan yang dibutuhkan untuk menyediakan layanan.Manajemen antrian menentukan bagaimana paket ditampung pada buffer, paket mana yang ditandai (marked) atau dibuang (dropped), paket mana yang ditransmisikan (Scheduler), dan secara tidak langsung menentukan delay pada router.


(23)

Secara teoritis ada beberapa mekanisme penjadwalan pada antrian paket [6]:

a) First In First Out

Manajemen antrianyang juga disebutDT ini adalah manajemen antrian yang paling sederhana. Prinsip dari manajemen antrian ini adalah seperti prinsip antrian (antrian tak berprioritas), paket yang masuk lebih dulu akan keluar lebih dulu juga.

b) Fair Queuing

Manajemen antrian FQ mengelompokkan paket ke dalam class-class

yang kemudian akan memproses sebuah paket pada tiap class secara bergiliran dengan adil.

c) Weighted Fair Queuing

Weighted Fair Queuing (WFQ) merupakan bentuk yang lebih umum dari FQ. Pada WFQ, masing-masing class mendapat bobot service yang berbeda pada tiap siklusnya sehingga jumlah paket yang ditransmisikan akan berbeda-beda pada setiap siklus sesuai dengan bobot tiap class.

d) Priority Queuing

Priority Queuing (PQ) memberikan prioritas kepada paket dan mengirimkan paket tersebut sesuai prioritasnya. Paket yang memiliki prioritas tertinggi akan didahulukan. Priority Queuing pada dasarnya akan memilih class

dengan prioritas tertinggi sampai antrian milik class tersebut kosong, baru diikuti dengan pemilihan class dengan prioritas tertinggi berikutnya.


(24)

2.2 DROP TAIL

Manajemen antrian DT merupakan bagian dari penjadwalan FIFO. Pada FIFO paket yang pertama masuk antrian akan keluar terlebih dahulu [2]. Paket dikirimkan dengan urutan yang sesuai dengan urutan kedatangan.Model antrian FIFO dapat dilihat pada Gambar 2.2.

Gambar 2.2 FIFO [7]

Gambar 2.2 menunjukkan kedatangan beberapa paket data yang berbeda waktu, paket pertama yang tiba lebih awal dikeluarkan ke port terlebih dahulu oleh antrian FIFO.Teknik antrian FIFO sangat cocok untuk jaringan dengan

bandwidth menengah 64kbps tetapi cukup menghabiskan sumber daya prosessor

dan memori [2].

Manajemen antrian DT adalah manajemen antrian sederhana yang

digunakan oleh router untuk memutuskan kapan untuk

menjatuhkan paket . Dalam DT semua lalu lintas tidak dibedakan, setiap paket diperlakukan secara identik [2].Manajemen antrian DT dapat diilustrasikan pada Gambar 2.3.

Gambar 2.3 Drop Tail [6]

1 2

3 4

5 6 7

8 9 10


(25)

Manajemen antrian ini menggunakan struktur data stack. Apabila tidak ada buffer kosong saat terjadi antrian penuh, maka paket yang dibuang adalah paket yang berada di antrian paling akhir, yaitu paket yang terakhir masuk buffer.

2.3 F AIR QUEUEING

FQ diusulkan oleh John Nagle pada tahun 1985 [8].FQ adalah manajemen antrian yang digunakan dalam jaringan komputer dan telekomunikasi. Manajemen antrian FQ mengelompokkan paket ke dalam class-class yang kemudian akan bergiliran memproses sebuah paket pada tiap class

dengan adil. Pada manajemen antrian FQ, tidak ada class yang mendapat prioritas yang lebih tinggi dari class lainnya [2].Manajemen antrian FQ dengan implementasi Round-Robin (RR) diilustrasikan pada Gambar 2.4.

Gambar 2.4 Fair Queueing RR[2]

Manajemen antrian FQ biasa digunakan pada router dan switch yang meneruskan paket dari sebuah buffer. Buffer bekerja sebagai sistem antrian.Paket data disimpan sementara sampai bisa ditransmisikan.Ruang buffer dibagi menjadi banyak antrian yang masing-masing digunakan untuk menyimpan paket


(26)

dari satu aliran, yang didefinisikan misalnya dengan alamat IP sumber dan tujuan.

FQ dapat mengontrol congestion dengan memonitoring aliran dan memungkinkan aliran paket ganda untuk berbagi kapasitas link.Fair queueing

biasanya menggunakan RR sebagai implementasinya [9].

Bentuk RR paling sederhana terdiri atas 2 class. Di sini paket dari classA akan ditransmisikan diikuti paket dari class B, diikuti paket dari class A lagi, diikuti paket dari class B lagi dan seterusnya.

2.4 QUALITY OF SERVICE

Quality of Service (QoS) didefinisikan sebagai suatu pengukuran tentang seberapa baik jaringan dan merupakan suatu usaha untuk mendefinisikan karakteristik dan sifat suatu layanan. QoS mengacu pada kemampuan suatu jaringan untuk menyediakan layanan yang baik dengan menyediakan bandwith, mengatasi jitterdan delay[10]. QoS sangat ditentukan oleh kualitas jaringan yang digunakan.

Qos dibutuhkan untuk meminimalkan packet loss, delay, latency dan

delay variation (jitter), mengukur Performance, mencampur paket data dan suara pada jaringan yang padat, dan dapat mengoptimalkan antrianuntuk memproritaskan layanan. Layanan yang diprioritaskan misalnya traffic voice,

traffic shaping / buffering pada jaringan WAN. Layanan tersebut menjadi tambahan treatment untuk pengaturan paket data, memungkinkan membuat alur

aggregate, memungkinkan traffic jaringan smooth pada alur jaringan dan mengkonfigurasi prioritas traffic melewati jaringan

QoS didesain untuk membantu end user (client) menjadi lebih produktif dengan memastikan bahwa user mendapatkan performansi yang handal dari aplikasi-aplikasi berbasis jaringan.QoS mengacu pada kemampuan jaringan


(27)

untuk menyediakan layanan yang lebih baik pada traffic jaringan tertentu melalui teknologi yang berbeda-beda.QoS merupakan suatu tantangan yang besar dalam jaringan berbasis IP dan internet secara keseluruhan. Tujuan dari QoS adalah

untuk memenuhi kebutuhan-kebutuhan layanan yang berbeda, yang

menggunakan infrastruktur yang sama. QoS menawarkan kemampuan untuk mendefinisikan atribut-atribut layanan yang disediakan, baik secara kualitatif

maupun kuantitatif.

Dalam usaha menjaga dan meningkatkan nilai QoS, dibutuhkan teknik untuk menyediakan utilitas jaringan, yaitu dengan mengklasifikasikan dan memprioritaskan setiap informasi sesuai dengan karakteristiknya masing-masing.Contohnya, terdapat paket data yang bersifat sensitif terhadap delay

tetapi tidak sensitif terhadap packet loss seperti VoIP, ada juga paket yang bersifat sensitif terhadap packet loss tetapi tidak sensitif terhadap delay seperti

transfer data.Untuk itu perlu dilakukan klasifikasi paket dan pengurutan prioritas paket dari yang paling tinggi sampai terendah.

Terdapat 3 tingkat QoS yang umum dipakai, yaitu best-effortservice, integrated service, dan differentiated service [11].

1) Best-Effort Service

Best-effort service digunakan untuk melakukan semua usaha agar dapat mengirimkan sebuah paket ke suatu tujuan. Penggunakan best-effortservice tidak akan memberikan jaminan agar paket dapat sampai ke tujuan yang dikehendaki. Sebuah aplikasi dapat mengirimkan data dengan besar yang bebas kapan saja tanpa harus meminta ijin atau mengirimkan pemberitahuan ke jaringan.

Beberapa aplikasi dapat menggunakan best-effort service, sebagai contohnya FTP dan HTTP yang dapat mendukung best-effort service tanpa mengalami permasalahan.Untuk aplikas-iaplikasi yang sensitif terhadap network delay,fluktuasi bandwidth, dan perubahan kondisi jaringan, penerapan best-effort


(28)

service bukanlah suatu tindakan yang bijaksana. Contohnya aplikasi telephony

pada jaringan yang membutuhkan besar bandwidth yang tetap, agar berfungsi dengan baik; dalam hal ini penerapan best-effort akan mengakibatkan panggilan telepon gagal atau terputus.

2) Integrated Service

Model integrated service menyediakan aplikasi dengan tingkat jaminan layanan melalui negosiasi parameter-parameter jaringan secara end-to-end. Aplikasi-aplikasi akan meminta tingkat layanan yang dibutuhkan untuk dapat beroperasi dan bergantung pada mekanisme QoS untuk menyediakan sumber daya jaringan yang dimulai sejak permulaan transmisi dari aplikasi-aplikasi tersebut. Aplikasi tidak akan mengirimkan traffic, sebelum menerima tanda bahwa jaringan mampu menerima beban yang akan dikirimkan aplikasi dan juga mampu menyediakan QoS yang diminta secara end-to-end. Untuk itulah suatu jaringan akan melakukan suatu proses yang disebut admission control.

Admission control adalah suatu mekanisme yang mencegah jaringan mengalami over-loaded. Jika QoS yang diminta tidak dapat disediakan, maka jaringan tidak akan mengirimkan tanda ke aplikasi agar dapat memulai untuk mengirimkan data. Jika aplikasi telah memulai pengiriman data, maka sumber daya pada jaringan yang sudah dipesan aplikasi tersebut akan terus dikelola secara end-to-end sampai aplikasi tersebut selesai.

3) Differentiated Service

Model terakhir dari QoS adalah model differentiated service.

Differentiated service menyediakan suatu set perangkat klasifikasi dan mekanisme antrian terhadap protokolprotokol atau aplikasi-aplikasi dengan prioritas tertentu di atas jaringan yang berbeda. Differentiated service bergantung pada kemampuan edge router untuk memberikan klasifikasi dari paket-paket yang berbeda tipenya yang melewati jaringan.Traffic jaringan dapat diklasifikasikan berdasarkan alamat jaringan, protocol dan port, ingressinterface,


(29)

atau klasifikasi lainnya selama masih didukung oleh standard atau extended access.

2.4.1PARAMETER-PARAMETER QoS

Performansi mengacu ke tingkat kecepatan dan keandalan penyampaian berbagai jenis beban data di dalam suatu komunikasi. Performansi merupakan kumpulan dari beberapa parameter besaran teknis, yaitu [10] :

1)Delay

Delay adalah waktu tunda suatu paket yang diakibatkan oleh proses transmisi dari satu titik ke titik lain yang menjadi tujuannya.

2) Jitter

Jitter dapat didefinisikan sebagai variasi delay antara blok-blok yang berurutan. Besarnya nilai jitterakan sangat dipengaruhi oleh variasi beban traffic

dan besarnya tumbukan antar paket (congestion) yang ada dalam jaringan. 3) Packet Loss

Packet loss didefinisikan sebagai kegagalan transmisi paket data mencapai tujuannya.

4) Noise

Noise merupakan sinyal gangguan yang tidak diinginkan, gangguan ini yang menyebabkan proses penyampaian pesan tidak berjalan sebagaimana mestinya sinyal asli yang dikirim.

5) Bandwitdh

Bandwitdh merupakan ukuran kecepatan aliran data yang menyatakan banyaknya informasi yang dapat mengalir dari suatu tempat ke tempat lain dalam suatu waktu tertentu.


(30)

Throughput merupakan besaran yang menunjukkan laju bit informasi data sebenarnya dari laju bit pada suatu jaringan telekomunikasi.

Parameter QoS yang dipakai pada tugas akhir ini adalah delay,

packetloss, dan throughput.

2.4.1.1DELAY

Delay adalah waktu tunda suatu paket yang diakibatkan oleh proses transmisi dari satu titik ke titik lain yang menjadi tujuannya. Delay dapat dipengaruhi oleh jarak, media fisik, kongesti, atau juga waktu proses yang lama [12].

Delay di dalam jaringan dapat digolongkan sebagai berikut : 1)Packetisasi delay

Delayyang disebabkan oleh waktu yang diperlukan untuk proses pembentukan paket IP dari informasi user. Delayini hanya terjadi sekali saja, yaitu di sourceinformasi.

2)Queuing delay

Delayini disebabkan oleh waktu proses yang diperlukan oleh routerdi dalam menangani transmisi paket di sepanjang jaringan. Umumnya delayini sangat kecil.

3)Delay propagasi

Proses perjalanan informasi selama di dalam media transmisi, misalnya

SDH, coaxatau tembaga, menyebabkan delayyang disebut dengan

delaypropagasi.


(31)

Tabel 2.1 Klasifilasi Delay [12].

Kategori Besar Delay

Sangat bagus < 150 ms

Bagus 150 s/d 300 ms

Jelek 300 s/d 450 ms

Tidak dapat diterima > 450 ms

Rumus untuk menghitung averagequeueingdelay(rata-rata delay antrian) adalah [13]:

(2.1)

Dengan t1 adalahwaktu kedatangan packet di router dan t2 adalahwaktu

packet keluar/ dikirim dari router.

2.4.1.2PACKET LOSS

Packet loss didefinisikan sebagai kegagalan transmisi paket IPmencapai tujuannya. Kegagalan paket tersebut mencapai tujuan, dapat disebabkan oleh beberapa kemungkinkan, diantaranya yaitu [12]:

1) Terjadinya overload traffic didalam jaringan, 2) Tabrakan (congestion) dalam jaringan, 3) Error yang terjadi pada media fisik,

4) Kegagalan yang terjadi pada sisi penerima antara lain bisa disebabkan karena overflow yang terjadi pada buffer.

Di dalam implementasi jaringan IP, nilai packet loss ini diharapkan mempunyai nilai yang minimum.Secara umum terdapat empat kategori


(32)

penurunan performansi jaringan berdasarkan nilai packet loss sesuai dengan [12], yaitu seperti tampak pada Tabel 2.2.

Tabel 2.2 Klasifikasi Packet Loss [12].

Kategori Persentase Packet Loss

Sangat bagus 0 %

Bagus 3 %

Sedang 15 %

Jelek 25 %

Rumus untuk menghitung packet loss router adalah [13]:

(2.2)

Denagan Pd adalah jumlah packet yang mengalami dropdi routerdan Ps

adalah jumlah packet yang diterima .

2.4.1.3THROUGHPUT

Throughput, yaitu kecepatan (rate) transfer data efektif, yang diukur dalam bps. Troughput merupakan jumlah total kedatangan paket yang sukses yang diamati pada destination selama interval waktu tertentu dibagi oleh durasi interval waktu tersebut.

Aspek utama throughput yaitu berkisar pada ketersediaan bandwidth

yang cukup untuk suatu aplikasi.Hal ini menentukan besarnya traffic yang dapat diperoleh aplikasi saat melewati jaringan. Aspek penting lainnya adalah error


(33)

(pada umumnya berhubungan dengan link error rate) dan losses (pada umumnya berhubungan dengan kapasitas buffer) [12].

Rumus untuk menghitung throughput adalah [13] :

(2.3)

2.5 SIMULASI JARINGAN

Simulasi jaringan adalah teknik pemodelan perilaku jaringan dengan menghitung interaksi antar entitas jaringan yang berbeda (host / router , data link , paket , dll) dengan menggunakan rumus matematika guna mengamati perilaku jaringan tersebut. Perilaku jaringan dan berbagai aplikasi serta layanan yang mendukung akan diamati dengan simulasi. Berbagai atribut lingkungan juga dapat dimodifikasi dengan cara yang terkontrol untuk menilai bagaimana jaringan akan berperilaku dalam kondisi yang berbeda [14].

2.5.1NETWORK SIMULATOR

Sebuah network simulator adalah bagian dari perangkat lunak atau perangkat keras yang memprediksi perilaku suatu jaringan dan meniru kinerja dari jaringan yang nyata tanpa menghadirkan jaringan yang nyata tersebut. Dalam simulator, jaringan komputer biasanya dimodelkan dengan perangkat, lalu lintas dan aplikasi.Biasanya pengguna menyesuaikan simulatornya dengan spesifikasi yang mereka butuhkan.network simulatormenyediakan dukungan besar untuk simulasi TCP,routing, dan multicastprotocol baik dalam sebuah jaringan berkabel ataupunjaringan nirkabel, seperti satelit misalnya. Selain TCP, kita juga bisa membangunsebuah skenario jaringan dengan menggunaka STCP, FTP, ataupun denganlalu lintas HTTP [15].


(34)

Berbagai jenis teknologi seperti UDP, TCP, ATM, IP serta topologi seperti Local Area Network (LAN), Ethernet , Wide Area Network (WAN), dan lain-lain dapat disimulasikan dengan simulator dan pengguna dapat menguji, menganalisa berbagai standar hasil selain merancang beberapa protokol baru atau strategi untuk routing.

2.5.2NETWORK SIMULATOR 2

Network Simulator (NS) pertama kali dibangun sebagai varian dari REAL NS pada tahun 1989 di University of California Berkeley (UCB). Pada tahun 1995, pembangunan NS didukung oleh Defense Advance Research Project Agency (DARPA) melalui Virtual Internet Testbed (VINT) Project, yaitu sebuah tim riset gabungan yang beranggotakan tenaga ahli dari Lawrence Berkeley of National Laboratory (LBNL) Xerox PARC, UCB dan University of Southern California School of Engineering/Information Science Institute

(USC/ISI) [6]. Tim gabungan ini membangun sebuah perangkat lunak simulasi jaringan internet untuk kepentingan riset. Tampilan NS-2 dapat dilihat pada Gambar 2.5.

Gambar 2.5 Tampilan NS-2 [6].

Interaksi antar protokol dalam konteks pengembangan protokol internet pada saat ini dan masa yang akan datang. Ada beberapa keuntungan


(35)

menggunakan NS sebagai perangkat lunak simulasi pembantu analisis dalam riset atau sewaktu mengerjakan tugas perkuliahan, di antaranya [15]:

1. NS dilengkapi dengan tool validasi. Tool validasi digunakan untuk menguji validitas pemodelan yang ada pada NS. Secara default, semua pemodelan pada NS akan dapat melewati proses validasi ini.

2. Pembuatan simulasi dengan menggunakan NS jauh lebih mudah daripada menggunakan software developer seperti Delphi atau C++. Pengguna hanya tinggal membuat topologi dan skenario simulasi sesuai dengan riset. Pemodelan media, protokol dan network component lengkap dengan perilaku jaringan sudah tersedia pada library NS.

3. NS bersifat open source di bawah Gnu Public License (GPL), sehingga NS dapat di Download dan digunakan gratis melalui web site NS

http://www.isi.edu/nsnam/dist. Sifat open source juga mengakibatkan pengembangan NS menjadi lebih dinamis. Pemodelan media, protokol,

network component dan perilaku traffic cukup lengkap bila dibandingkan dengan software sejenis lain. Ini disebabkan pengembangan NS dilakukan oleh banyak periset dunia.

NS2 mensimulasikan jaringan berbasis TCP/IP dengan berbagai macam medianya. Protokol jaringan yang dapat disimulasikan [15], diantaranya TCP/UDP/RTP, Traffic behaviour (FTP, Telnet, CBR, dll), Queue management

(RED, FIFO, CBQ), Algoritma routing unicast (Distance vector, Link state) dan

multicast, PIM SM, PIM DM, DVMRP, Shared Tree dan Bi directional Shared Tree, Aplikasi multimedia yang berupa layered video, danQoS video-audio dan

transconding. NS2 juga mengimplementasikan MAC (IEEE 802.3, 802.11), Media jaringan kabel (LAN, WAN, point to point), dan Nirkabel (Mobile IP,

Wireless LAN). 2.5.2.1TRACE F ILE


(36)

Data hasil simulasi yaitu data berbentuk file trace. File trace digunakan untuk proses analisis numerik. Contoh tampilan file trace dapat dilihat pada Gambar 2.6.

Gambar 2.6 Contoh trace file.

Trace file tersebut terdiri dari kolom-kolom hasil record yang dapat dijelaskan berikut.

1. Event

Kejadian yang dicatat oleh Ns, yaitu : r: receive (paket diterima oleh To Node)

+: enqueue (paket keluar dari From Node dan masuk ke dalam antrian )

–: dequeue (paket keluar dari antrian) d: drop (paket dibuang dari antrian )

2. Time

Event Time From

Node To Node

Packet Type

Packet

Size Flags

Flow id

Source Address

Dest. Address

Sequence Number

Packet id


(37)

Mengindikasikan waktu terjadinya suatu event, dalam hitungan detik setelah

start.

3. From NodedanTo Node

From node dan to node menyatakan keberadaan paket.Saat suatu kejadian dicatat, paket sedang berada pada link di antara From Node dan To Node 4. Packet Type

Menginformasikan tipe paket yang dikirim.Seperti udp, tcp, ack, atau cbr.

5. Packet Type

Ukuran paket dalam byte.

6. Flag

Flag digunakan sebagai penanda. Pada data diatas flag tidak digunakan. Macam-macam flag yang digunakan antara yaitu:

E untuk mengindikasikan terjadinya kongesti (Congestion Experienced

(CE)).

N untuk mengindikasikan ECN-Capable-Transport pada header IP. C untuk mengindikasikan ECN-Echo.

Auntuk mengindikasikan pengurangan window kongesti pada header

TCP.

P untuk mengindikasikan prioritas. F untuk mengindikasikan TCP fast start.

7. Flow id

Memberi nomor unik untuk mengidentifikasikan tiap aliran data.

8. Source Address

Alamat asal paket dengan format node.port.Misalnya 2.0 berarti node ke 2

port 0.


(38)

Alamat tujuan paket dengan format node.port. contoh 0.1 berarti node ke 0

port 1.

10.Sequence Number

Nomor urut paket.

11.Packet id

Nomor unik untuk tiap paket.

2.5.3TRANSPORT PROTOCOL

Dalam arsitektur jaringan komputer, terdapat suatu lapisan-lapisan (layer) yang memiliki tugas spesifik serta memiliki protokol tersendiri.International Standard Organization (ISO) telah mengeluarkan suatu standard untuk arsitektur jaringan komputer yang dikenal dengan namaOpen System Interconnection (OSI). Standard ini terdiri dari 7 lapisan protokol yang menjalankan fungsi komunikasi antara 2 komputer.Dalam TCP/IP hanya terdapat 5 lapisan.User Datagram Protocol (UDP) dan Transmission Control Protocol (TCP) berada pada transport layer yang berada pada arsitek TCP/IP [16].

2.5.3.1User Datagram Protocol

User Datagram Protocol (UDP) adalah salah satu lapisan

protocol transport TCP/IP yang mendukung komunikasi yang tidak andal (unreliable) karena pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Karakteristik UDP lainnya adalah tanpa koneksi (connectionless) karena pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi. UDP menyediakan penghitungan checksum berukuran


(39)

16-bitterhadap keseluruhan pesan UDP.Pesan UDP dapat memiliki besar maksimum 65507 byte[17].

UDP sering digunakan dalam berbagai tugas, antara lain protokol yang ringan (lightweight) untuk menghemat sumber daya memory dan processor, protokol yang tidak membutuhkan keandalan, dan transmisi broadcast

karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu [17].

Koneksi dengan menggunakan UDP pada NS dilakukan dengan menggunakan agent UDP sebagai pengirim dan agentnull sebagai penerima. Aplikasi yang dipakai pada transport protocol UDP adalah Constant Bit Rate

(CBR) yang biasanya sering digunakan untuk menggambarkan aplikasi yang sifatnya real time atau memiliki tingkat sensitivitas terhadap delay yang cukup tinggi. Fungsi CBR ini membangkitkan data secara kontinu dengan bit rate yang konstan [6].

2.5.3.2Transmission Control Protocol

Transmission Control Protocol (TCP) adalah suatu protokol yang berada di lapisan transport (baik itu dalam tujuh lapis model OSI atau model DARPA) yang berorientasi sambungan (connection-oriented) karena sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. TCP dapat diandalkan (reliable) karena data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Sebuah segmen TCP dapat berukuran hingga 65495 byte [18].

Karakteristik dari TCP adalah memiliki layanan flow control untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat macet jaringan. TCP mengimplementasikan layanan flow control yang


(40)

dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Karakteristik lainnya adalah full-duplex, 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, data pun dapat secara simultan diterima dan dikirim [18].

Simulasi koneksi pada one way TCP dilakukan dengan menggunakan 2

agents yang berpasangan, yaitu TCP sender dan TCP sink. TCP sender berfungsi sebagai pengirim dan TCP sink bertugas mengirim ACK per paket yang diterima pada TCP sender pasangannya. Aplikasi yang dipakai pada TCP adalah File Transfer Protocol (FTP) yang biasanya sering digunakan untuk mengambarkan aplikasi yang sifatnya connection oriented yaitu dengan mengirim ulang paket yang hilang dan adanya flow control [6].

2.6ROUTER

Router adalah peralatan yang bekerja pada layer 3 Open System Interconnection (OSI) dan sering digunakan untuk menyambungkan jaringan luas

Wide Area Network (WAN) atau untuk melakukan segmentasi layer 3 di LAN [19]. WAN seperti halnya LAN juga beroperasi di layer 1, 2 dan 3 OSI sehingga

router yang digunakan untuk menyambungkan LAN dan WAN harus mampu mendukung.

Router memiliki kemampuan melewatkan paket IP dari satu jaringan ke jaringan lain yang mungkin memiliki banyak jalur diantara keduanya. Router-router yang saling terhubung dalam jaringan internet turut serta dalam sebuah

algoritma routing terdistribusi untuk menentukan jalur terbaik yang dilalui paket IP dari system ke sistem lain. Proses routing dilakukan secara hop by hop. IP tidak mengetahui jalur keseluruhan menuju tujuan setiap paket. IP routing hanya


(41)

menyediakan IP address dari router berikutnya yang menurutnya lebih dekat ke

host tujuan.

Menghubungkan komputer dengan komputer lain dapat dilakukan dengan cara langsung menggunakan kabel jaringan ataupun dengan peralatan tambahan. Jika ingin menyambungkan beberapa komputer di dalam satu ruangan sudah pasti memerlukan peralatan penyambung seperti hub atau switch.

Hub ataupun switch mempunyai kemampuan untuk menyambungkan pada jarak yang berdekatan berkapasitas bandwith mulai dari 10Mbps sampai 1000Mbps. Namun sayang kecepatan tinggi tersebut hanya dapat dinikmati di dalam satu ruangan saja Local Areal Network (LAN) .Untuk menyambungkan jaringan dalam satu ruangan ke jaringan yang lebih luas memerlukan peralatan yang disebut router.

Berhubungan dengan jaringan yang lebih luas atau internet berarti akan menghadapi internetworking yang memiliki prinsip dasar sebgai berikut:

a. Pengalamatan secara konsisten

b. Memiliki topologi jaringan mewakili pengalamatan.

c. Pemilihan jalur pengiriman data (terestial, gelombang mikro, satelit, fiber optic dan lainnya).

d. Penggunaan router statik maupun dinamik.

e. Menyambungkan berbagai tempat secara online tanpa keterbatasan waktu penyambungan.


(42)

26

BAB III

PERANCANGAN SIMULASI

3.1PERANCANGAN SIMULASI

Perancangan simulasi manajemen antrian Drop Tail dan Fair Queueing ini memerlukan perencanaan yang baik agar hasil yang didapat sesuai dengan teori yang ada. Tahap – tahap dalam perancangan simulasi ini akan dijelaskan dengan flow chat

pada Gambar 3.1.

mulai

Instalasi NS-2

Inisialisasi jumlah node, link, agent, set

parameter, ukuran paket

Membangun node

Pembentukan link antar node dan

tipe antrian

Transport agent dan pasangannya

Membuat aplikasi/ sumber trafik

Mengolah data Trace untuk mendapatkan data Throughput, delay, dan

Packet Loss

Hasil olah data trace

Selesai Menjalankan

simulasi

Hasil simulasi

Gambar 3.1 Flowchart Perancangan Simulasi

Simulasi menggunakan Network Simulator 2 versi 2.30 yang diinstal pada sistem operasi Windows XP dengan aplikasi Cygwin.Pada perancangan simulasi ini antrian DT dan FQ dibuat pada router dengan besar buffer yang berbeda pada masing–masing pengujian simulasi.


(43)

Sistem yang akan dibuat terdiri dari 2 skenario. Skenario pertama menunjukkan simulasi menggunakan antrian DT pada router dan skenario kedua menggunakan antrian FQ pada router. Rancangan sistem yang akan dibuat dijelaskan pada Table 3.1.

Table 3.1 Skenario Simulasi

Kondisi Skenario 1 Skenario 2

Jumlah Node 6 6

Router Antrian : Drop Tail

Buffer : 10, 25, 50, 75, 100

Antrian : Fair Queueing

Buffer : 10, 25, 50, 75, 100

Transport protocol & Paket

TCP

Ukuran : 20 byte

: 65495 byte

Interval pengiriman : 0.05s

TCP

Ukuran : 20 byte

: 65495 byte

Interval pengiriman : 0.05s UDP

Ukuran : 8 byte

: 65507 byte

Interval pengiriman : 0.05s

UDP

Ukuran : 8 byte

: 65507 byte

Interval pengiriman : 0.05s

Link Comp 1 - Router Delay propagation : 1 ms

Bandwidth : 1 Mbps

Delay propagation : 1 ms

Bandwidth : 1 Mbps

Link Comp 2 - Router Delay propagation : 1 ms

Bandwidth : 1 Mbps

Delay propagation : 1 ms

Bandwidth : 1 Mbps

Link Comp 3 - Router Delay propagation : 1 ms

Bandwidth : 1 Mbps

Delay propagation : 1 ms

Bandwidth : 1 Mbps

Link Comp 4 - Router Delay propagation : 1 ms

Bandwidth : 1 Mbps

Delay propagation : 1 ms

Bandwidth : 1 Mbps

Link Comp 5 - Router Delay propagation : 1 ms

Bandwidth : 2 Mbps

Delay propagation : 1 ms


(44)

3.2TOPOLOGI JARINGAN

Topologi sistem yang akan dibuat dapat dimodelkan seperti Gambar 3.2.

` `

`

router

komputer 5

komputer 3 komputer 2

`

` komputer 1

komputer 4

Gambar 3.2 Topologi Jaringan

Gambar 3.2 menjelaskan bahwa dalam sistem tersebut terdapar 5 buah komputer dan 1 buah router. Komputer 1, 2, 3, dan 4 akan mengirimkan paket TCP maupun UDP ke komputer 5 sebagai tujuan. Router bertugas sebagai perantara pengiriman paket sehingga dapat sampai tujuan.Pada router terdapat buffer atau besar antrian yang digunakan untuk menampung paket yang datang sebelum diteruskan ke tujuan.


(45)

3.3Konfigurasi Sistem

Pada sistem yang akan dibuat terdapat 6 node, 5 node sebagai komputer atau 1

node sebagai router dan 5 link sebagai media transmisi data. Node dan link tersebut akan dikonfigurasi sebagai berikut :

Link antara komputer 1 dan router memiliki besar bandwidth1 Mbps dan delay

sebesar 1 ms. Dengan sistem antrian DT pada pengujian pertama dan FQ pada pengujian kedua.

Link antara komputer 2 dan router memiliki besar bandwidth1 Mbps dan delay

sebesar 1 ms. Dengan sistem antrian DT pada pengujian pertama dan FQ pada pengujian kedua.

Link antara komputer 3 dan router memiliki besar bandwidth1 Mbps dan delay

sebesar 1 ms. Dengan sistem antrian DT pada pengujian pertama dan FQ pada pengujian kedua.

Link antara komputer 4 dan router memiliki besar bandwidth1 Mbps dan delay

sebesar 1 ms. Dengan sistem antrian DT pada pengujian pertama dan FQ pada pengujian kedua.

Link antara komputer 5 dan router memiliki besar bandwidth2 Mbps dan delay

sebesar 1 ms. Dengan sistem antrian DT pada pengujian pertama dan FQ pada pengujian kedua.

Dalam mendesain sistem ini, ada beberapa asumsi yang akandigunakan dalam melakukan simulasi. Berikut ini adalah asumsi-asumsi yangdipakai dalam perancangan sistem :

Ukuran buffer pada routersetiap pengujian masing-masing manajemen antrian adalah 10, 25, 50, 75, 100 yang ditempatkan pada link antara router dan komputer 5.


(46)

Paket yang dikirimkan oleh komputer 1 ,2 , 3 , dan 4 adalah paket TCP pada pengujian pertama dan paket UDP pada pengujian kedua.

Ukuran paket TCP pada pengujian adalah dengan ukuran paket terkecil yaitu 20

byte dan ukuran paket terbesar yaitu 65495 byte. Interval pengiriman paket adalah 0.05s.Sedangkan ukuran paket UDP pada pengujian adalah dengan ukuran paket terkecil yaitu 8 byte dan ukuran paket terbesar yaitu 65507 byte. Interval pengiriman paket adalah 0.05s.

Aplikasi yang dipakai pada transport protocol UDP adalah Constant Bit Rate

(CBR) yang biasanya sering digunakan untuk menggambarkan aplikasi yang sifatnya real time atau memiliki tingkat sensitivitas terhadap delay yang cukup tinggi.Sedangkan aplikasi yang dipakai pada transport protocol TCP adalah File Transfer Protocol (FTP) yang biasanya sering digunakan untuk mengambarkan aplikasi yang sifatnya connection oriented yaitu dengan mengirim ulang paket yang hilang dan adanya flow control.

3.4Pengukuran Parameter Kinerja

Setelah menjalankan simulasi yang telah dibuat, maka maka akan muncul

trace file. Trace fileberisi kronologis kejadian dalam simulasi yang dibuat.Trace filerecord dari simulasi yang dibuat tersusun dalam format yang sudah ditentukan seperti Table 3.2.

Tabel 3.2 Record Trace File

FORMAT KETERANGAN

$1 Event


(47)

Data - data trace file yang telah didapat digunakan untuk menghitung dan menganalisa throughput, average delay,dan packet lossdengan bantuan program awk. Program awk merupakan command line utility yang dikembangkan Unix dan Linux.

Dari analisa tersebut, nilai throughput, average delay router,dan packet loss routerakan dibandingkan pada manajemen antrian DT dan FQ, sehingga akan didapat manajemen antrian mana yang lebih baik.

Tabel 3.2 (lanjutan) Record Trace File

FORMAT KETERANGAN

$3 From

$4 To

$5 Packet Type

$6 Packet Size

$7 Flags

$8 Flow Id

$9 Source Address

$10 Destination Address

$11 Seq Num


(48)

3.4.1 Menghitung packet loss router

Packet loss router didapat dengan menghitung jumlah paket yang di-drop di

router dibagi jumlah paket yang diterima oleh router dikali 100%.Satuan packet lossrouter adalah %. Penghitungan packet loss router menggunakan program .awk

yang akan dibuat. Flowchatpacket loss router dapat dilihat pada gambar 3.3.

start

jml_drop = 0 jml_terima = 0

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10;

seq_no = $11; packet_id = $12;

action = d & node_1 = 4 &

node_2 = 5

jml_drop = jml_drop + 1 yes

action != d

action = r & node_1 = 4 &

src != ack

jml_terima = jml_terima + 1

Print : jml_drop jml_terima PAKET LOSS

ANTRIAN PAKET LOSS ANTRIAN = jml_drop / jml_terima * 100

break no no break

yes

yes

finish

break no


(49)

3.4.2 Menghitung average delay router

Average delay router didapat dengan menghitung total delay antrian di router

dibagi jumlah paket yang diterima oleh router. Satuan average delay routeradalah ms. Penghitungan average delay router menggunakan program .awk yang akan dibuat. Flowchataverage delay router dapat dilihat pada gambar 3.4.

start

highest_packet_id = 0; total_duration = 0;

num_out = 0; action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10; seq_no = $11; packet_id = $12;

start_time[packet_id] == 0 & action == "+" &

node_2=="4"

start_time[packet_id] = time

yes

action != "d" action != "r"

action == "-" & node_1=="4" & node_2=="5"

num_out = num_out + 1 end_time[packet_id] = time;

Print : Total Delay Total Packet out R AVERAGE DELAY start = start_time[packet_id];

end = end_time[packet_id]; packet_duration = end - start; break

end_time[packet_id] = -1; no no yes yes finish break no packet_id > highest_packet_id highest_packet_id = packet_id acket_id <= highest_packet_id

start < end

total_duration = total_duration + packet_duration; i++

AVERAGE DELAY = total_duration/num_out


(50)

3.4.3 Menghitung throughput

Throughput didapat dengan menghitung total paket yang keluar dari router

dibagi delay rata-rata yang terjadi pada antrian router. Satuan throughput adalah

packet per second (p/s).penghitunganthroughputmenggunakan program .awk yang akan dibuat. Flowchatthroughputdapat dilihat pada gambar 3.5.

start highest_packet_id = 0;

total_duration = 0; num_received = 0; paket_1st=0;

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10; seq_no = $11; packet_id = $12;

start_time[packet_id ] == 0

start_time[packet_id] = time yes

action != "d" action != "r"

action == "r" && node_2 =="5"

num_out = num_out + 1; end_time[packet_id] = time;

Print : Average Delay R Total Packet out R THROUGHPUT start = start_time[packet_id];

end = end_time[packet_id]; packet_duration = end - start;

break no no end_time[packet_id] = -1;

yes yes finish break no packet_id > highest_packet_id highest_packet_id = packet_id acket_id <= highest_packet_id

start < end

total_duration = total_duration + packet_duration; i++ num_out/(total_duration/ num_out) packet_id==0 paket_1st= start_time[packet_id]


(51)

35

BAB IV

PENGUJIAN DAN ANALISIS

Skenario simulasi jaringan dilakukan untuk pengujian unjuk kerja

manajemenantrian DT dan FQ.Setelah menjalankan simulasi dari setiap skenario,

trace filedidapat.Trace file tersebut diproses dengan fileawk untuk mendapat data parameter kinerja.

Potongan listingprogram dibawah ini menunjukkan parameter yang diatur pada setiap simulasi, diantaranya adalah jumlah node, jenis link, besar bandwidth,

delay, jenis antrian, dan posisi. Pengujian tersebut akan menghasilkan data yang disajikan dalam bentuk grafik dan tabel.

4.1Penjelasan Program dan Contoh Pengambilan Nilai dari Trace F ile

Program yang digunakkan dalam penelitian ini yaitu progam .awk yang berfungsi untuk mengambil data-data dari trace fileyang dibutuhkan untuk mengukur kinerja manajemen antrian yang diuji. Listing program .awk adalah sebagai berikut :

set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node]

$ns duplex-link $n0 $n4 1Mb 1ms DropTail / FQ $ns duplex-link $n1 $n4 1Mb 1ms DropTail / FQ $ns duplex-link $n2 $n4 1Mb 1ms DropTail / FQ $ns duplex-link $n3 $n4 1Mb 1ms DropTail / FQ $ns duplex-link $n4 $n5 2Mb 1ms DropTail / FQ $ns duplex-link-op $n0 $n4 orient down

$ns duplex-link-op $n1 $n4 orient right-down $ns duplex-link-op $n2 $n4 orient right-up $ns duplex-link-op $n3 $n4 orient up


(52)

1. Average Delay Router

BEGIN {

highest_packet_id = 0; total_duration = 0; num_out = 0;

} {

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8;

node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

if ( packet_id > highest_packet_id ) highest_packet_id = packet_id;

# mendapatkan waktu paket masuk ke antrian node 4 (router)

if ( start_time[packet_id] == 0 && action == "+" && node_2=="4"){ start_time[packet_id] = time;

}

# mendapatkan waktu ketika paket keluar dari antrian node 4 (router) # dan mengitung jumlah paket yang berhasil keluar dari node 4 tanpa drop.

if ( action != "d" || action != "r") {

if ( action == "-" && node_1=="4" && node_2=="5") { num_out = num_out + 1;

end_time[packet_id] = time; }

} else {

end_time[packet_id] = -1; }

}

END {

# menghitung delay tiap paket dan total delay

# dan menampilkan paket id, start time, end time, delay untuk setiap paket. for ( packet_id = 0; packet_id <= highest_packet_id; packet_id++ ) {

start = start_time[packet_id]; end = end_time[packet_id]; packet_duration = end - start; if ( start < end ) {

printf("packet id ="packet_id); printf(" Start ="start);

printf(" end ="end);

printf(" delay ="end-start); printf("\n")

total_duration = total_duration + packet_duration; }


(53)

Penjelasan dari listingprogram diatas adalah:

1) Untuk mengetahui start time paket ketika masuk ke antrian router yaitu dengan melihat pada trace file dengan ketentuan start_time[packet_id] == 0, action == "+", dan node_2=="4".

2) Untuk mengetahui jumlah paket dan end time paket ketika keluar dari router

yaitu dengan melihat pada trace file dengan ketentuan action != "d" || action != "r", action == "-", node_1=="4", node_2=="5".

3) Untuk menghitung delay adalah dengan end time start time untuk setiap paket. Untuk menghitung total delay adalah dengan total_duration = total_duration + packet_duration.

4) Menghitung total delay dalam ms yaitu dengan total_duration*1000 ms.

5) Menghitung average delay router dalam ms yaitu dengan

(total_duration*1000 ms)/num_out.

printf("\n--- \n");

# Menghitung dan menampilkan total delay, total paket keluar dari R, dan rata2 delay

printf("Total Delay = %.6f \n", (total_duration*1000)); printf("Total Packet out R = %f \n\n", num_out);

printf("AVERAGE DELAY = %.6f ms \n", (total_duration*1000)/num_out);

printf("==================================== \n"); }


(54)

2. Packet Loss Router

Penjelasan dari listingprogram diatas adalah:

1) Untuk menghitung jumlah paket drop pada antrian router yaitu dengan melihat pada trace file dengan ketentuan action =="d", node_1 == "4", node_2 == "5", dan menghitung denganjml_drop = jml_drop + 1.

BEGIN {

jml_drop = 0 jml_terima = 0 }

{

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8;

node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

# menghitung jumlah paket drop yang ada di antrian node 4 (router) if (action =="d" && node_1 == "4" && node_2 == "5") {

jml_drop = jml_drop + 1; }

# menghitung jumlah paket; kecuali ack yang diterima oleh node 4 (router) if ( action != "d") {

if (action == "r" && node_2 == "4" && src != "ack") { jml_terima = jml_terima + 1;

} }

}

END {

# menghitung paket loss pada router dalam satuan %

# dan menampilkan total paket drop, paket diterima, paket loss di router. printf("\n--- \n"); printf("Total Paket Drop di Router = %f ", jml_drop);

printf("\n");

printf("Total Paket Diterima Router = %f ", jml_terima); printf("\n\n");

printf("PAKET LOSS ANTRIAN = %f %", jml_drop/jml_terima*100); printf("\n");

printf("============================================== \n"); }


(55)

2) Untuk menghitung jumlah paket yang diterima router kecuali ack yaitu dengan melihat pada trace file dengan ketentuan action != "d", action == "r", node_2 == "4", src != "ack", dan menghitung dengan jml_terima = jml_terima + 1.

3) Untuk menghitung paket loss antrian router yaitu dengan

jml_drop/jml_terima*100 %.

3. Throughput Router

BEGIN {

highest_packet_id = 0; total_duration = 0; num_out = 0;

} {

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8;

node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

if ( packet_id > highest_packet_id ) highest_packet_id = packet_id;

# mendapatkan waktu paket masuk ke antrian node 4 (router)

if ( start_time[packet_id] == 0 && action == "+" && node_2=="4"){ start_time[packet_id] = time;

}

# mendapatkan waktu ketika paket keluar dari antrian node 4 (router) # dan mengitung jumlah paket yang berhasil keluar dari node 4 tanpa drop.

if ( action != "d" || action != "r") { #ketika aktion d dan r tidak di hitung

if ( action == "-" && node_1=="4" && node_2=="5") { num_out = num_out + 1;

end_time[packet_id] = time; }

} else {

end_time[packet_id] = -1; }


(56)

Penjelasan dari listingprogram diatas adalah:

1) Untuk mengetahui start time paket ketika masuk ke antrian router yaitu dengan melihat pada trace file dengan ketentuan start_time[packet_id] == 0, action == "+", dan node_2=="4".

2) Untuk mengetahui jumlah paket dan end time paket ketika keluar dari router

yaitu dengan melihat pada trace file dengan ketentuan action != "d" || action != "r", action == "-", node_1=="4", node_2=="5".

3) Untuk menghitung delay adalah dengan end time start time untuk setiap paket. Dan untuk menghitung totaldelay adalah dengan total_duration = total_duration + packet_duration.

4) Menghitung average delay router dalam ms yaitu dengan

total_duration*/num_out.

5) Untuk menghitung throughput yaitu dengan

num_out/(total_duration/num_out). END {

# Menghitung paket durasi / delay untuk setiap paket dan menghitung total delay for ( packet_id = 0; packet_id <= highest_packet_id; packet_id++ ) {

start = start_time[packet_id]; end = end_time[packet_id]; packet_duration = end - start; if ( start < end ) {

total_duration = total_duration + packet_duration; }

}

printf("\n--- \n");

# Menghitung dan menampilkan delay rata2 R, total paket keluar dari R dan throughput

printf("Average Delay R = %.6f s\n", total_duration/num_out); printf("Total Packet out R = %f \n\n", num_out);

printf("THROUGHPUT = %.6f p/s \n", num_out/(total_duration/num_out));

printf("==================================== \n"); }


(57)

4.2 Pengambilan nilai dari trace file

Dari simulasi yang dijalankan, akan menghasilkan trace file. Trace file

tersebut berisi pencatatan seluruh kejadian dari simulasi yang dibangun. Dari trace file tersebut dapat dijadikan acuan pengambilan nilai. Berikut adalah cara pengambilan nilai dari parameter-parameter yang diuji.

1. Average delay router

Potongan trace file pada Gambar 4.1 menampilkan contoh pengambilan nilai

average delay router dari trace file.

Gambar 4.1 potongan trace file Average delay router

a) Mengambil start time paket masuk ke antrian router.

Dengan ketentuan start_time[packet_id] == 0 && action == "+" && node_2=="4"

Maka didapat start time untuk paket dengan paket_id 1944 adalah 4.75456. + 0.2 0 4 tcp 40 --- 1 0.0 5.0 0 0

- 0.2 0 4 tcp 40 --- 1 0.0 5.0 0 0 r 0.20132 0 4 tcp 40 --- 1 0.0 5.0 0 0 + 0.20132 4 5 tcp 40 --- 1 0.0 5.0 0 0 - 0.20132 4 5 tcp 40 --- 1 0.0 5.0 0 0 r 0.20248 4 5 tcp 40 --- 1 0.0 5.0 0 0

...

+ 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76388 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 + 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76904 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 + 4.76904 5 4 ack 40 --- 1 5.0 0.0 56 1945 - 4.76904 5 4 ack 40 --- 1 5.0 0.0 56 1945 r 4.7702 5 4 ack 40 --- 1 5.0 0.0 56 1945 + 4.7702 4 0 ack 40 --- 1 5.0 0.0 56 1945 - 4.7702 4 0 ack 40 --- 1 5.0 0.0 56 1945 r 4.77152 4 0 ack 40 --- 1 5.0 0.0 56 1945

b a

e a

b e


(58)

b) Mengambil end time paket yang keluar dari antrian router.

Dengan ketentuan action != "d" || action != "r", action == "-" && node_1=="4" && node_2=="5".

Maka didapat end time untuk paket dengan paket_id 1944 adalah 4.76388. c) Menghitung delay setiap paket yaitu dengan rumus end time - start time. Pada

contoh diatas delay untuk paket_id 0 adalah 0.20132 - 0.2 = 0.00132 s Dan delay untuk paket_id 1944 adalah 4.76388 - 4.75456 = 0.00932 s

d) Menghitung total delay yaitu dengan menjumlahkan semua delay setiap paket. Pada contoh diatas total delay adalah 0.00132 + 0.00932 = 0.01064 s.

e) Menghitung total paket yang keluar dari router.

Dengan ketentuan action != "d" || action != "r", action == "-" && node_1=="4" && node_2=="5".

Sebagai contoh pada potongan trace file paket yang keluar dari router

berjumlah 2 yaitu paket dengan id 0 dan 1944.

Dengan rumus average delay router = ( total delay *1000 ms) / paket keluar dari router, maka dari potongan trace file tersebut dapat dihitung :

average delay router = 0.01064 s * 1000 ms / 2 = 10.64ms / 2

= 5.32 ms

2. Packet loss router

Potongan trace file pada Gambar 4.2 menampilkan contoh pengambilan nilai


(59)

Gambar 4.2 potongan trace file Packet loss router

a) Menghitung jumlah paket drop pada antrian router.

Dengan ketentuan action =="d" && node_1 == "4" && node_2 == "5". Dari contoh di atas didapat jumlah paket dropdi router adalah 2 untuk paket dengan paket_id 64 dan 69.

b) Menghitung jumlah paket yang diterima oleh router.

Dengan ketentuan action != "d", action == "r" && node_2 == "4" && src != "ack".

Dari contoh di atas didapat jumlah paket yang diterima oleh router adalah 3 untuk paket dengan paket_id 64, 69, dan 1944.

Dengan rumus packet loss router = jml_drop / jml_terima * 100, maka dari potongan trace file tersebut dapat dihitung :

packet loss router = 2 / 3 * 100 % = 0.6666667 * 100 % = 66.6667 %.

- 0.47984 0 4 tcp 1040 --- 1 0.0 5.0 34 64 ...

r 0.48916 0 4 tcp 1040 --- 1 0.0 5.0 34 64 + 0.48916 4 5 tcp 1040 --- 1 0.0 5.0 34 64 d 0.48916 4 5 tcp 1040 --- 1 0.0 5.0 34 64

...

- 0.48816 0 4 tcp 1040 --- 1 0.0 5.0 35 69 ...

r 0.49748 0 4 tcp 1040 --- 1 0.0 5.0 35 69 + 0.49748 4 5 tcp 1040 --- 1 0.0 5.0 35 69 d 0.49748 4 5 tcp 1040 --- 1 0.0 5.0 35 69

...

+ 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76388 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 + 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76904 4 5 tcp 1040 --- 1 0.0 5.0 56 1944

b a

a b


(60)

3. Throughput router

Potongan trace file pada Gambar 4.3 menampilkan contoh pengambilan nilai

throughput router dari trace file.

Gambar 4.3 potongan trace file Throughput router

a) Mengambil start time paket masuk ke antrian router.

Dengan ketentuan start_time[packet_id] == 0 && action == "+" && node_2=="4".

Maka didapat start time untuk paket dengan paket_id 1944 adalah 4.75456. b) Mengambil end time paket yang keluar dari antrian router.

Dengan ketentuan action != "d" || action != "r", action == "-" && node_1=="4" && node_2=="5".

Maka didapat end time untuk paket dengan paket_id 1944 adalah 4.76388. c) Menghitung delay setiap paket yaitu dengan rumus end time - start time. Pada

contoh diatas delay untuk paket_id 0 adalah 0.20132 - 0.2 = 0.00132 s Dan delay untuk paket_id 1944 adalah 4.76388 - 4.75456 = 0.00932 s + 0.2 0 4 tcp 40 --- 1 0.0 5.0 0 0

- 0.2 0 4 tcp 40 --- 1 0.0 5.0 0 0 r 0.20132 0 4 tcp 40 --- 1 0.0 5.0 0 0 + 0.20132 4 5 tcp 40 --- 1 0.0 5.0 0 0 - 0.20132 4 5 tcp 40 --- 1 0.0 5.0 0 0 r 0.20248 4 5 tcp 40 --- 1 0.0 5.0 0 0

...

+ 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.75456 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76388 0 4 tcp 1040 --- 1 0.0 5.0 56 1944 + 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 - 4.76388 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 r 4.76904 4 5 tcp 1040 --- 1 0.0 5.0 56 1944 + 4.76904 5 4 ack 40 --- 1 5.0 0.0 56 1945 - 4.76904 5 4 ack 40 --- 1 5.0 0.0 56 1945 r 4.7702 5 4 ack 40 --- 1 5.0 0.0 56 1945 + 4.7702 4 0 ack 40 --- 1 5.0 0.0 56 1945 - 4.7702 4 0 ack 40 --- 1 5.0 0.0 56 1945 r 4.77152 4 0 ack 40 --- 1 5.0 0.0 56 1945

b a

e a

b e


(61)

d) Menghitung total delay yaitu dengan menjumlahkan semua delay setiap paket. Pada contoh diatas total delay adalah 0.00132 + 0.00932 = 0.01064 s.

e) Menghitung total paket yang keluar dari router.

Dengan ketentuan action != "d" || action != "r", action == "-" && node_1=="4" && node_2=="5".

Sebagai contoh pada potongan trace file paket yang keluar dari router

berjumlah 2 yaitu paket dengan id 0 dan 1944.

Dengan rumus throughput router = num_out / (total_duration / num_out), maka dari potongan trace file tersebut dapat dihitung :

packet loss router = 2 / ( 0.01064 / 2 ) = 2 / 0.00532 = 375.9398 p/s

4.3 Penghitungan dan Analisis

Penghitungan dilakukan untuk mengukuraverage delay router, packet loss router, dan throughput routerdalam jaringan menggunakan manajemen antrian DT dan FQ. Dari hasil pengitungan tersebut selanjutnya peneliti akan melakukan analisis.

4.3.1 Average Delay Router

Average delay router adalah hasil rata-rata dari waktu paket dikirim oleh

router dikurangi waktu paket diterimaoleh router untuk setiap paket id dan dibagi jumlah paket yang dikirim / diproses oleh router. Kinerja manajemen antrian pada

routerakan lebih baik jika nilai delay antrian semakin kecil.

Hasil perhitungan average delay router didapat dari trace file setiap percobaan dan dihitung dengan program .awk. Dari program awk tersebut dapat diketahui start time dan end time semua paket di dalam antrian router, delay antrian setiap paket, total delay, total packet yang keluar dari router, dan average delay


(62)

router. Contoh output dari program delay_antrian.awk pada FQ-TCP-paket

MAX-buffer 10 dapat dilihat pada Gambar 4.4 berikut.

Gambar 4.4 contoh output Average_delay_router.awk

Hasil dari penghitungan average delay router dapat ditampilkan dalam bentuk tabel dan grafik. Tabel dan grafik tersebut memperlihatkan pengaruh ukuran

buffer, jenis paket, ukuran paket terhadap kinerja dari manajemen antrian DT dan FQ.Hasil dari average delay router ditampilkan dalam bentuk grafik pada Gambar 4.5 dan tabel dapat dilihat pada Tabel 4.1.

Gambar 4.5 Grafik average delay router 0 200 400 600 800 1000 1200

10 25 50 75 100

A V E RA G E D E LA Y R O U T E R ( m

s) TCP - MAX DT

TCP - MIN DT

TCP - MAX FQ

TCP - MIN FQ

UDP - MAX DT

UDP - MIN DT

UDP - MAX FQ

UDP - MIN FQ


(63)

Tabel 4.1Average delay router (ms)

QUEUE TCP - MAX TCP - MIN UDP - MAX UDP - MIN

DT FQ DT FQ DT FQ DT FQ

10 100.838 294.237 100.838 294.237 375.658 981.079 1.111 1.111 25 127.224 294.237 127.224 294.237 430.225 981.079 1.111 1.111 50 173.771 294.237 173.771 294.237 518.998 981.079 1.111 1.111 75 260.983 294.237 260.983 294.237 604.719 981.079 1.111 1.111 100 288.002 294.237 288.002 294.237 686.619 981.079 1.111 1.111

Dari grafik yang terlihat pada Gambar 4.5 dan dari Tabel 4.1, dapat diambil beberapa kesimpulan. Pertama, bahwa semakin besar ukuran buffer, average delay

yang terjadi di routerakan semakin besar pada manajemen antrian DT. Hal ini disebabkan karena semakin besar ukuran buffer, antrian paket akan semakin panjang. Hal ini mengakibatkan paket yang masuk pada antrian bufferakan semakin lama diproses.

Kedua, ukuran buffer tidak mempengaruhi average delay router pada manajemen antrian FQ.Hal ini disebabkan karena antrian buffer pada manajemen antrian FQ dibagi berdasarkan kelas-kelas dan diproses bergantian secara adil.Average delay router antrian pada manajemen antrian FQ cenderung stabil walaupun dengan ukuran buffer yang berbeda-beda.

Ketiga, nilai average delay router antrian pada manajemen antrian FQ lebih besar dari pada manajemen antrian DT.Hal ini disebabkan karena router pada manajemen antrian FQ memproses 4 kelas pada buffer secara bergantian satu demi satu dan mengakibatkan semakin lama paket menunggu di dalam antrian untuk diproses.

Keempat, ukuran paket pada TCP tidak mempengaruhi average delay router.Hal ini disebabkan karena TCP mempunyai congestion control dan flow


(64)

control jadi dapat mengatur aliran paket yang masuk ke router sehingga dapat berpengaruh juga pada delay.

Kelima, ukuran paket pada UDP mempengaruhi average delay router. Hal ini disebabkan karena UDP tidak mempunyai congestion control dan flow control

sehingga paket terus memenuhi buffer dan mengakibatkan delay antrian besar. Secara keseluruhan, menurut [12], nilai average delay router pada DT dikategorikan dalam sangat bagus karena kurang dari 150 ms, kecuali untuk paket UDP dengan ukuran maksimum dikategorikan dalam jelek dan tidak dapat diterima karena antara 300 - 450 ms dan diatas 450 ms. Sedangkan nilai average delay router

pada FQ dikategorikan bagus yaitu antara 150-300 ms, kecuali pada UDP dengan paket minimum yang dikategorikan sangat bagus karena kurang dari 150 ms dan dikategorikan tidak dapat diterima pada UDP dengan paket maksimum karena lebih dari 450 ms.

4.3.2 Packet Loss Router

Packet loss router adalah jumlah paket yang dibuang pada router dibagi jumlah paket yang diterima oleh router dan dikalikan 100 %.Jadi packet loss yang dihitung hanyalah packet loss yang ada di antrian router. Sama seperti delay, packet loss routerakan semakin buruk jika nilainya semakin besar dan akan semakin bagus bila nilainya semakin kecil.

Hasil penghitung packet loss router didapat dari trace file setiap percobaan dan dihitung dengan program .awk. Dari program awk tersebut dapat diketiahui jumlah paket yang dibuang di router, jumlah paket yang diterima di router, dan

packet loss router dalam satuan persen.

Contoh output dari program paketLossRouter.awk pada DT-TCP-paket


(1)

$ns duplex-link $n4 $n5 2Mb 1ms DropTail

$ns duplex-link-op $n0 $n4 orient down $ns duplex-link-op $n1 $n4 orient right-down $ns duplex-link-op $n2 $n4 orient right-up $ns duplex-link-op $n3 $n4 orient up $ns duplex-link-op $n4 $n5 orient right

#Monitor the queue for the link between node 4 and node 5 $ns duplex-link-op $n4 $n5 queuePos 0.5

$ns queue-limit $n4 $n5 10

#NODE 0

#Create a TCP agent and attach it to node n0 set tcp0 [new Agent/TCP]

$tcp0 set class_ 1

$ns attach-agent $n0 $tcp0

set sink0 [new Agent/TCPSink] $ns attach-agent $n5 $sink0

$ns connect $tcp0 $sink0

# Create a FTP traffic source and attach it to tcp0 set ftp0 [new Application/FTP]

$ftp0 set packetSize_ 65495 $ftp0 set interval_ 0.05 $ftp0 attach-agent $tcp0

#node 1

#Create a TCP agent and attach it to node n1 set tcp1 [new Agent/TCP]

$tcp1 set class_ 2

$ns attach-agent $n1 $tcp1

set sink1 [new Agent/TCPSink] $ns attach-agent $n5 $sink1

$ns connect $tcp1 $sink1

# Create a FTP traffic source and attach it to tcp1 set ftp1 [new Application/FTP]

$ftp1 set packetSize_ 65495 $ftp1 set interval_ 0.05 $ftp1 attach-agent $tcp1

#node 2

#Create a TCP agent and attach it to node n2 set tcp2 [new Agent/TCP]

$tcp2 set class_ 3


(2)

set sink2 [new Agent/TCPSink] $ns attach-agent $n5 $sink2

$ns connect $tcp2 $sink2

# Create a FTP traffic source and attach it to tcp2 set ftp2 [new Application/FTP]

$ftp2 set packetSize_ 65495 $ftp2 set interval_ 0.05 $ftp2 attach-agent $tcp2

#node 3

#Create a TCP agent and attach it to node n3 set tcp3 [new Agent/TCP]

$tcp3 set class_ 4

$ns attach-agent $n3 $tcp3

set sink3 [new Agent/TCPSink] $ns attach-agent $n5 $sink3

$ns connect $tcp3 $sink3

# Create a FTP traffic source and attach it to tcp3 set ftp3 [new Application/FTP]

$ftp3 set packetSize_ 65495 $ftp3 set interval_ 0.05 $ftp3 attach-agent $tcp3

#Schedule events for the FTP agents $ns at 0.2 "$ftp0 start"

$ns at 0.3 "$ftp1 start" $ns at 0.4 "$ftp2 start" $ns at 0.5 "$ftp3 start" $ns at 4.0 "$ftp0 stop" $ns at 4.0 "$ftp1 stop" $ns at 4.0 "$ftp2 stop" $ns at 4.0 "$ftp3 stop"

#Run the simulation $ns run


(3)

2. Program average_delay_antrian.awk

BEGIN {

highest_packet_id = 0; total_duration = 0; num_out = 0; }

{

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

if ( packet_id > highest_packet_id ) highest_packet_id = packet_id;

# mendapatkan waktu paket masuk ke antrian node 4 (router)

if ( start_time[packet_id] == 0 && action == "+" && node_2=="4"){ start_time[packet_id] = time;

}

# mendapatkan waktu ketika paket keluar dari antrian node 4 (router) # dan mengitung jumlah paket yang berhasil keluar dari node 4 tanpa drop.

if ( action != "d" || action != "r") {

if ( action == "-" && node_1=="4" && node_2=="5") { num_out = num_out + 1;

end_time[packet_id] = time; }

} else {

end_time[packet_id] = -1; }

}

END {

# menghitung delay tiap paket dan total delay

# dan menampilkan paket id, start time, end time, delay untuk setiap paket. for ( packet_id = 0; packet_id <= highest_packet_id; packet_id++ ) {

start = start_time[packet_id]; end = end_time[packet_id]; packet_duration = end - start; if ( start < end ) {

printf("packet id ="packet_id); printf(" Start ="start);


(4)

printf(" delay ="end-start); printf("\n")

total_duration = total_duration + packet_duration; }

}

printf("\n--- \n");

# Menghitung dan menampilkan total delay, total paket keluar dari R, dan rata2 delay

printf("Total Delay = %.6f \n", (total_duration*1000)); printf("Total Packet out R = %f \n\n", num_out);

printf("AVERAGE DELAY = %.6f ms \n", (total_duration*1000)/num_out);

printf("==================================== \n"); }

3. Program packet_loss_router.awk

BEGIN {

jml_drop = 0 jml_terima = 0 }

{

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

# menghitung jumlah paket drop yang ada di antrian node 4 (router) if (action =="d" && node_1 == "4" && node_2 == "5") {

jml_drop = jml_drop + 1; }

# menghitung jumlah paket; kecuali ack yang diterima oleh node 4 (router) if ( action != "d") {

if (action == "r" && node_2 == "4" && src != "ack") { jml_terima = jml_terima + 1;

} }


(5)

END {

# menghitung paket loss pada router dalam satuan %

# dan menampilkan total paket drop, paket diterima, paket loss di router. printf("\n--- \n"); printf("Total Paket Drop di Router = %f ", jml_drop); printf("\n");

printf("Total Paket Diterima Router = %f ", jml_terima); printf("\n\n");

printf("PAKET LOSS ANTRIAN = %f %", jml_drop/jml_terima*100);

printf("\n");

printf("============================================== \n");

}

4. Program throughput_router.awk

BEGIN {

highest_packet_id = 0; total_duration = 0; num_out = 0; }

{

action = $1; time = $2; node_1 = $3; node_2 = $4; src = $5; flow_id = $8; node_1_address = $9; node_2_address = $10; seq_no = $11;

packet_id = $12;

if ( packet_id > highest_packet_id ) highest_packet_id = packet_id;

# mendapatkan waktu paket masuk ke antrian node 4 (router)

if ( start_time[packet_id] == 0 && action == "+" && node_2=="4"){ start_time[packet_id] = time;

}

# mendapatkan waktu ketika paket keluar dari antrian node 4 (router) # dan mengitung jumlah paket yang berhasil keluar dari node 4 tanpa drop.

if ( action != "d" || action != "r") { #ketika aktion d dan r tidak di hitung

if ( action == "-" && node_1=="4" && node_2=="5") { num_out = num_out + 1;


(6)

} } else {

end_time[packet_id] = -1; }

} END {

# Menghitung paket durasi / delay untuk setiap paket dan menghitung total delay for ( packet_id = 0; packet_id <= highest_packet_id; packet_id++ ) {

start = start_time[packet_id]; end = end_time[packet_id]; packet_duration = end - start; if ( start < end ) {

total_duration = total_duration + packet_duration; }

}

printf("\n--- \n");

# Menghitung dan menampilkan delay rata2 R, total paket keluar dari R dan throughput

printf("Average Delay R = %.6f s\n", total_duration/num_out); printf("Total Packet out R = %f \n\n", num_out);

printf("THROUGHPUT = %.6f p/s \n", num_out/(total_duration/num_out));

printf("==================================== \n"); }