• Tidak ada hasil yang ditemukan

BAB III PERANCANGAN SIMULAS

5.2. Saran

Beberapa saran dari penulis agar peneliti selanjutnya dapat memperhatikan hal-hal di bawah ini, guna perbaikan ke arah yang lebih baik. Adapun saran tersebut adalah:

1. Ukuranbuffer yang diuji dalam penelitian ini hanya ukuran 10, 25, 50, 75 dan 100. Sebaiknya untuk mendapatkan sampel yang lebih akurat, selisih ukuran buffer lebih rapat lagi.

2. Pengujian berikutnya diharapkan dapat menguji parameter-parameter QoS yang lain selain average delay router, packet loss router, dan throughput router yang sudah diuji dalam penelitian ini agar perbandingan manajemen antrian DT dan FQ semakin akurat.

56

DAFTAR PUSTAKA

[1] R. Jain and K. K. Ramakrishnan, “Congestion Avoidance in Computer Networks with a Connectionless Network Layer, Part I-Concepts, Goals, and

Alternatives”, DEC Technical Report TR-507, Digital Equipment Corporation, April 1987.

[2] Nurhayati, Oky Dwi. ____, Sistem komunikasi multimedia, [pdf], http://eprints.undip.ac.id/20121/1/Persyaratan_Layanan_dan_Protokol_pert9.pd f, diakses tanggal 8Juli 2012 )

[3] Hendrawan, ____, Congestion Control dan Resource Allocation, [ppt], (telecom.ee.itb.ac.id/~hend/ET5043/CongestionControl_05.ppt, diakses tanggal 4 Maret 2012 )

[4] Pratama, Randi. 2011. Analisis Perbandingan Manajemen Antrian Random

Early Detection Dan Fair Queuing Pada Ns-2. Sumber

:http://library.gunadarma.ac.id/repository/view/16131/analisis-perbandingan- manajemen-antrian-random-early-detection-dan-fair-queuing-pada-ns-2.html. Diakses : 14 Maret 2012.

[5] Agoes, Suhartati & Adi Putranto. 2007. SIMULASI KUALITAS LAYANAN VOIP MENGGUNAKAN METODE ANTRIAN PAKET CBQ DENGAN

MEKANISME LINK SHARING, [pdf]. Sumber :

http://blog.trisakti.ac.id/jetri/files/2010/01/13.4-Suhartati-SimulasiKualitas- hal41-64.pdf. Diakses : 21 Mei 2012.

[6]Wirawan, bayu & eka indarto. 2004. Mudah membangun simulasi dengan network simulator 2. Yogyakarta : Andi.

[7] Rizaldhi. 2010. KOMUNIKASI DATA dan TEORI ANTRIAN, [pdf].Sumber : http://repository.usu.ac.id/bitstream/123456789/21077/4/Chapter%20II.pdf. Diakses : 21 Mei 2012.

[8] Nagle, John. 1987. "On packet switches with infinite storage." IEEE Transactions on Communications, 35(4):435–438, April 1987.

[9] Rasmus. 2012. Round robin scheduling - a survey, [pdf]. Sumber :mat.gsia.cmu.edu/trick/survey.pdf. Diakses : 8 Juli 2012.

[10] politeknik telkom._____. KUALITAS LAYANAN PADA SISTEM

TELEKOMUNIKASI, [doc].Sumber

:ibuku.zxq.net/smster4/sistel/Bab%204%20(QOS).doc. Diakses : 21 Mei 2012. [11] Sukardi, Ardi. 2011. MAKALAH QoS ( Quality Of Service ) SISTEM

MULTIMEDIA, [docx]. Sumber : http:

smil34u.files.wordpress.com/2011/08/makalah-qos.docx. Diakses : 8 Juli 2012. [12] Fatoni. _____. ANALISIS KUALITAS LAYANAN JARINGAN INTRANET,

[pdf]. Sumber blog.binadarma.ac.id/fatoni/wp-content/uploads/.../Jurnal- QoS.pdf.Diakses : 21 Mei 2012.

[13] Zidni Ilma, Urida. 2011. RANCANG BANGUN DAN ANALISA QUALITY OF SERVICES (QoS) PADA SISTEM VOICE OVER INTERNET PROTOCOL (VoIP) MENGGUNAKAN OPEN SOURCE ELASTIX , [pdf]. Sumber http://uridadotzidni.blogdetik.com/.Diakses : 14 Juni 2012.

[14] ______. ______. BAB II LANDASAN TEORI , [pdf]. Sumber :http://library.binus.ac.id/eColls/eThesis/Bab2/2009-1-00205-

IF%20Bab%202.pdf.Diakses :8 Juli 2012.

[15] ______. _____. The Network Simulator - ns-2, [online].Sumber :www.isi.edu/nsnam/ns/. Diakses : 21 Mei 2012.

[16] ______. 2010. Transport Layer: Protocol UDP dan Protocol TCP, [online]. Sumber :http://www.slideshare.net/materikuliah/transport-layer-protocol-udp- dan-protocol-tcp.Diakses : 15 Juli 2012.

[17] J. Postel. 1980. RFC 768 User Datagram Protocol, [online]. Sumber :http://tools.ietf.org/html/rfc768. Diakses : 15 Juli 2012.

[18] J. Postel. 1981. RFC 793 TRANSMISSION CONTROL PROTOCOL, [online]. Sumber :http://tools.ietf.org/html/rfc793. Diakses : 15 Juli 2012.

[19] ______. ______. Chapter II.pdf, [pdf]. Sumber

:repository.usu.ac.id%2Fbitstream%2F123456789%2F27978%2F3%2FChapter %2520II.pdf Diakses : 13Februari2013.

58

LAMPIRAN

CONTOH LISTING PROGRAM

1. DT_TCP_max_10.tcl

# Create a simulator object set ns [new Simulator]

# Define different colors for data flows $ns color 1 Blue

$ns color 2 Red $ns color 3 Black $ns color 4 Green # Open the nam trace file set nf [open out.nam w]

set tf [open Trace_DT_TCP_max_10.tr w] $ns namtrace-all $nf

$ns trace-all $tf

#Define a 'finish' procedure proc finish {} {

global ns nf tf $ns flush-trace

#Close the trace file close $nf

close $tf

#Execute nam on the trace file exec nam out.nam & exit 0 } $ns at 5.0 "finish" #Create 6 nodes set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node]

#Create links between the nodes

$ns duplex-link $n0 $n4 1Mb 1ms DropTail $ns duplex-link $n1 $n4 1Mb 1ms DropTail $ns duplex-link $n2 $n4 1Mb 1ms DropTail $ns duplex-link $n3 $n4 1Mb 1ms DropTail

$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

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

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);

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;

} }

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;

} } 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");

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

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

Dokumen terkait