Analisis Kinerja Content Delivery Network yang Menggunakan Load Balancer

(1)

LAMPIRAN

SCRIPT PROGRAM SINGLE SERVER

1. Single Server Server

#Pembuatan jaringan CDN set ns [new Simulator] $ns color 0 blue $ns color 1 red $ns color 2 green $ns color 3 yellow $ns color 4 brown $ns color 5 purple $ns color 6 black $ns color 7 grey $ns color 8 maroon set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] set n6 [$ns node] set n7 [$ns node] set n8 [$ns node] set n9 [$ns node] set n10 [$ns node] set n11 [$ns node] set n12 [$ns node] set n13 [$ns node] set n14 [$ns node] set n15 [$ns node] set n16 [$ns node] set n17 [$ns node] set n18 [$ns node] set n19 [$ns node] set n20 [$ns node] set n21 [$ns node] set n22 [$ns node]


(2)

set f [open out.tr w] $ns trace-all $f

set nf [open out.nam w] $ns namtrace-all $nf

$ns duplex-link $n0 $n3 5Mb 2ms DropTail $ns duplex-link $n1 $n3 5Mb 2ms DropTail $ns duplex-link $n2 $n3 5Mb 2ms DropTail $ns duplex-link $n10 $n3 1.5Mb 10ms DropTail $ns duplex-link $n9 $n10 1.5Mb 10ms DropTail $ns duplex-link $n10 $n16 1.5Mb 10ms DropTail $ns duplex-link $n10 $n11 1.5Mb 10ms DropTail $ns duplex-link $n10 $n17 1.5Mb 10ms DropTail $ns duplex-link $n3 $n4 1.5Mb 10ms DropTail $ns duplex-link $n4 $n5 1.5Mb 10ms DropTail $ns duplex-link $n4 $n11 1.5Mb 10ms DropTail $ns duplex-link $n5 $n6 1.5Mb 10ms DropTail $ns duplex-link $n6 $n7 1.5Mb 10ms DropTail $ns duplex-link $n6 $n8 1.5Mb 10ms DropTail $ns duplex-link $n11 $n12 1.5Mb 10ms DropTail $ns duplex-link $n12 $n13 1.5Mb 10ms DropTail $ns duplex-link $n12 $n14 1.5Mb 10ms DropTail $ns duplex-link $n12 $n15 1.5Mb 10ms DropTail $ns duplex-link $n11 $n18 1.5Mb 10ms DropTail $ns duplex-link $n18 $n19 1.5Mb 10ms DropTail $ns duplex-link $n18 $n20 1.5Mb 10ms DropTail $ns duplex-link $n5 $n21 1.5Mb 10ms DropTail $ns duplex-link $n5 $n22 1.5Mb 10ms DropTail $ns duplex-link-op $n0 $n3 orient right-up $ns duplex-link-op $n1 $n3 orient right-down $ns duplex-link-op $n2 $n3 orient down $ns duplex-link-op $n10 $n3 orient up $ns duplex-link-op $n9 $n10 orient right-up $ns duplex-link-op $n10 $n11 orient right $ns duplex-link-op $n10 $n16 orient down $ns duplex-link-op $n10 $n17 orient right-down $ns duplex-link-op $n3 $n4 orient right

$ns duplex-link-op $n4 $n5 orient right-up $ns duplex-link-op $n4 $n11 orient down $ns duplex-link-op $n5 $n6 orient right


(3)

$ns duplex-link-op $n6 $n7 orient right-up $ns duplex-link-op $n6 $n8 orient right $ns duplex-link-op $n11 $n12 orient right $ns duplex-link-op $n12 $n13 orient right-up $ns duplex-link-op $n12 $n14 orient right $ns duplex-link-op $n12 $n15 orient right-down $ns duplex-link-op $n11 $n18 orient right-down $ns duplex-link-op $n18 $n19 orient left-down $ns duplex-link-op $n18 $n20 orient right-down $ns duplex-link-op $n5 $n21 orient right-up $ns duplex-link-op $n5 $n22 orient left-up $ns duplex-link-op $n2 $n3 queuePos 0.5 #Penambahan Background Traffic

set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0

set cbr0 [new Application/Traffic/CBR] $cbr0 attach-agent $udp0

set udp1 [new Agent/UDP] $ns attach-agent $n3 $udp1 $udp1 set class_ 1

set cbr1 [new Application/Traffic/CBR] $cbr1 attach-agent $udp1

set udp2 [new Agent/UDP] $ns attach-agent $n9 $udp2 $udp2 set class_ 2

set cbr2 [new Application/Traffic/CBR] $cbr2 attach-agent $udp2

set udp3 [new Agent/UDP] $ns attach-agent $n16 $udp3 $udp3 set class_ 3

set cbr3 [new Application/Traffic/CBR] $cbr3 attach-agent $udp3

set udp4 [new Agent/UDP] $ns attach-agent $n19 $udp4 $udp4 set class_ 4


(4)

set cbr4 [new Application/Traffic/CBR] $cbr4 attach-agent $udp4

set udp5 [new Agent/UDP] $ns attach-agent $n7 $udp5 $udp5 set class_ 5

set cbr5 [new Application/Traffic/CBR] $cbr5 attach-agent $udp5

set udp6 [new Agent/UDP] $ns attach-agent $n14 $udp6 $udp6 set class_ 6

set cbr6 [new Application/Traffic/CBR] $cbr6 attach-agent $udp6

set udp7 [new Agent/UDP] $ns attach-agent $n13 $udp7 $udp7 set class_ 7

set cbr7 [new Application/Traffic/CBR] $cbr7 attach-agent $udp7

set udp8 [new Agent/UDP] $ns attach-agent $n1 $udp8 $udp8 set class_ 8

set cbr8 [new Application/Traffic/CBR] $cbr8 attach-agent $udp8

set null0 [new Agent/Null] $ns attach-agent $n14 $null0 set null1 [new Agent/Null] $ns attach-agent $n13 $null1 set null2 [new Agent/Null] $ns attach-agent $n8 $null2 set null3 [new Agent/Null] $ns attach-agent $n20 $null3 set null4 [new Agent/Null] $ns attach-agent $n14 $null4


(5)

set null5 [new Agent/Null] $ns attach-agent $n20 $null5 set null6 [new Agent/Null] $ns attach-agent $n21 $null6 set null7 [new Agent/Null] $ns attach-agent $n22 $null7 set null8 [new Agent/Null] $ns attach-agent $n17 $null8 $ns connect $udp0 $null0 $ns connect $udp1 $null1 $ns connect $udp2 $null2 $ns connect $udp3 $null3 $ns connect $udp4 $null4 $ns connect $udp5 $null5 $ns connect $udp6 $null6 $ns connect $udp7 $null7 $ns connect $udp8 $null8 #Penambahan Traffic Video # creation trace traffic

set max_fragmented_size 1024

#add udp header(8 bytes) and IP header (20bytes) set packetSize 1052

set original_file_name trafik set trace_file_name video1.dat

set original_file_id [open $original_file_name r] set trace_file_id [open $trace_file_name w] set pre_time 0

while {[eof $original_file_id] == 0} { gets $original_file_id current_line

scan $current_line "%d%s%d%d%f" no_ frametype_ length_ tmp1_ tmp2_ set time [expr int(($tmp2_ - $pre_time)*1000000.0)]

if { $frametype_ == "I" } { set type_v 1

set prio_p 0 }


(6)

set type_v 2 set prio_p 0 }

if { $frametype_ == "B" } { set type_v 3

set prio_p 0 }

if { $frametype_ == "H" } { set type_v 1

set prio_p 0 }

puts $trace_file_id "$time $length_ $type_v $prio_p $max_fragmented_size" set pre_time $tmp2_

}

close $original_file_id close $trace_file_id set end_sim_time $tmp2_ puts "$end_sim_time" set trace_file [new Tracefile]

$trace_file filename $trace_file_name #Sistem Load Balancer

#Attach video to server #create source traffic

#Create a UDP agent and attach it to node n0 set udp_0 [new Agent/myUDP]

$udp_0 set_filename udpSend0 $udp_0 set packetSize_ 1052

$ns attach-agent $n2 $udp_0 ;#Server 2 set udp_1 [new Agent/myUDP]

$udp_1 set_filename udpSend1 $udp_1 set packetSize_ 1052

$ns attach-agent $n2 $udp_1 ;#Server 2 set udp_7 [new Agent/myUDP]

$udp_7 set_filename udpSend7 $udp_7 set packetSize_ 1052


(7)

set udp_8 [new Agent/myUDP] $udp_8 set_filename udpSend8 $udp_8 set packetSize_ 1052

$ns attach-agent $n2 $udp_8 ;#Server 2 set udp_9 [new Agent/myUDP]

$udp_9 set_filename udpSend9 $udp_9 set packetSize_ 1052

$ns attach-agent $n2 $udp_9 ;#Server 2 set udp_14 [new Agent/myUDP]

$udp_14 set_filename udpSend14 $udp_14 set packetSize_ 1052

$ns attach-agent $n2 $udp_14 ;#Server 2 set udp_15 [new Agent/myUDP]

$udp_15 set_filename udpSend15 $udp_15 set packetSize_ 1052

$ns attach-agent $n2 $udp_15 ;#Server 2 set udp_16 [new Agent/myUDP]

$udp_16 set_filename udpSend16 $udp_16 set packetSize_ 1052

$ns attach-agent $n2 $udp_16 ;#Server 2 set udp_19 [new Agent/myUDP]

$udp_19 set_filename udpSend19 $udp_19 set packetSize_ 1052

$ns attach-agent $n2 $udp_19 ;#Server 2 set udp_21 [new Agent/myUDP]

$udp_21 set_filename udpSend21 $udp_21 set packetSize_ 1052

$ns attach-agent $n2 $udp_21 ;#Server 2 # Attach video traffic source

set video0 [new Application/Traffic/myEvalvid] $video0 attach-tracefile $trace_file

$video0 attach-agent $udp_0


(8)

$video1 attach-tracefile $trace_file $video1 attach-agent $udp_1

set video2 [new Application/Traffic/myEvalvid] $video2 attach-tracefile $trace_file

$video2 attach-agent $udp_7

set video3 [new Application/Traffic/myEvalvid] $video3 attach-tracefile $trace_file

$video3 attach-agent $udp_8

set video4 [new Application/Traffic/myEvalvid] $video4 attach-tracefile $trace_file

$video4 attach-agent $udp_9

set video5 [new Application/Traffic/myEvalvid] $video5 attach-tracefile $trace_file

$video5 attach-agent $udp_14

set video6 [new Application/Traffic/myEvalvid] $video6 attach-tracefile $trace_file

$video6 attach-agent $udp_15

set video7 [new Application/Traffic/myEvalvid] $video7 attach-tracefile $trace_file

$video7 attach-agent $udp_16

set video8 [new Application/Traffic/myEvalvid] $video8 attach-tracefile $trace_file

$video8 attach-agent $udp_19

set video9 [new Application/Traffic/myEvalvid] $video9 attach-tracefile $trace_file

$video9 attach-agent $udp_21

# Create the Null agent to sink traffic set null_0 [new Agent/myEvalvid_Sink] $null_0 set_filename udpRec0

$ns attach-agent $n0 $null_0

set null_1 [new Agent/myEvalvid_Sink] $null_1 set_filename udpRec1


(9)

$ns attach-agent $n1 $null_1

set null_7 [new Agent/myEvalvid_Sink] $null_7 set_filename udpRec7

$ns attach-agent $n7 $null_7

set null_8 [new Agent/myEvalvid_Sink] $null_8 set_filename udpRec8

$ns attach-agent $n8 $null_8

set null_9 [new Agent/myEvalvid_Sink] $null_9 set_filename udpRec9

$ns attach-agent $n9 $null_9

set null_14 [new Agent/myEvalvid_Sink] $null_14 set_filename udpRec14

$ns attach-agent $n14 $null_14

set null_15 [new Agent/myEvalvid_Sink] $null_15 set_filename udpRec15

$ns attach-agent $n15 $null_15

set null_16 [new Agent/myEvalvid_Sink] $null_16 set_filename udpRec16

$ns attach-agent $n16 $null_16

set null_19 [new Agent/myEvalvid_Sink] $null_19 set_filename udpRec19

$ns attach-agent $n19 $null_19

set null_21 [new Agent/myEvalvid_Sink] $null_21 set_filename udpRec21

$ns attach-agent $n21 $null_21 # Attach the 2 agents

$ns connect $udp_0 $null_0 $ns connect $udp_1 $null_1 $ns connect $udp_7 $null_7 $ns connect $udp_8 $null_8 $ns connect $udp_9 $null_9 $ns connect $udp_14 $null_14 $ns connect $udp_15 $null_15


(10)

$ns connect $udp_16 $null_16 $ns connect $udp_19 $null_19 $ns connect $udp_21 $null_21 $ns at 1.0 "$cbr0 start"

$ns at 6.1 "$cbr1 start" $ns at 1.3 "$cbr2 start" $ns at 2.6 "$cbr3 start" $ns at 1.8 "$cbr4 start" $ns at 3.0 "$cbr5 start" $ns at 2.1 "$cbr6 start" $ns at 5.2 "$cbr7 start" $ns at 7.3 "$cbr8 start" $ns at 4.0 "$cbr5 stop" $ns at 5.1 "$cbr6 stop" $ns at 5.8 "$cbr7 stop"

#Evaluated traffics $ns at 2.0 "$video0 start" $ns at 2.5 "$video1 start" $ns at 3.0 "$video2 start" $ns at 3.5 "$video3 start" $ns at 4.0 "$video4 start" $ns at 4.5 "$video5 start" $ns at 5.0 "$video6 start" $ns at 5.5 "$video7 start" $ns at 6.0 "$video8 start" $ns at 6.5 "$video9 start" set tcp [new Agent/TCP] $tcp set class_ 2

set sink [new Agent/TCPSink] $ns attach-agent $n0 $tcp $ns attach-agent $n3 $sink $ns connect $tcp $sink

set ftp [new Application/FTP] $ftp attach-agent $tcp

$ns at 1.2 "$ftp start"


(11)

puts [$cbr0 set packetSize_] puts [$cbr0 set interval_] $ns at 500.0 "finish" proc finish {} {

global ns f nf $ns flush-trace close $f close $nf

puts "running nam..." exec nam out.nam & exit 0

} $ns run


(12)

LAMPIRAN

SCRIPT PROGRAM LEAST CONNECTION

set ns [new Simulator] $ns color 0 pink $ns color 1 red $ns color 2 green $ns color 3 yellow $ns color 4 brown $ns color 5 purple $ns color 6 black $ns color 7 grey $ns color 8 maroon set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] set n6 [$ns node] set n7 [$ns node] set n8 [$ns node] set n9 [$ns node] set n10 [$ns node] set n11 [$ns node] set n12 [$ns node] set n13 [$ns node] set n14 [$ns node] set n15 [$ns node] set n16 [$ns node] set n17 [$ns node] set n18 [$ns node] set n19 [$ns node] set n20 [$ns node] set n21 [$ns node] set n22 [$ns node] set f [open out.tr w] $ns trace-all $f

set nf [open out.nam w] $ns namtrace-all $nf


(13)

$ns duplex-link $n1 $n3 5Mb 2ms DropTail $ns duplex-link $n2 $n3 5Mb 2ms DropTail $ns duplex-link $n10 $n3 1.5Mb 10ms DropTail $ns duplex-link $n9 $n10 1.5Mb 10ms DropTail $ns duplex-link $n10 $n16 1.5Mb 10ms DropTail $ns duplex-link $n10 $n11 1.5Mb 10ms DropTail $ns duplex-link $n10 $n17 1.5Mb 10ms DropTail $ns duplex-link $n3 $n4 1.5Mb 10ms DropTail $ns duplex-link $n4 $n5 1.5Mb 10ms DropTail $ns duplex-link $n4 $n11 1.5Mb 10ms DropTail $ns duplex-link $n5 $n6 1.5Mb 10ms DropTail $ns duplex-link $n6 $n7 1.5Mb 10ms DropTail $ns duplex-link $n6 $n8 1.5Mb 10ms DropTail $ns duplex-link $n11 $n12 1.5Mb 10ms DropTail $ns duplex-link $n12 $n13 1.5Mb 10ms DropTail $ns duplex-link $n12 $n14 1.5Mb 10ms DropTail $ns duplex-link $n12 $n15 1.5Mb 10ms DropTail $ns duplex-link $n11 $n18 1.5Mb 10ms DropTail $ns duplex-link $n18 $n19 1.5Mb 10ms DropTail $ns duplex-link $n18 $n20 1.5Mb 10ms DropTail $ns duplex-link $n5 $n21 1.5Mb 10ms DropTail $ns duplex-link $n5 $n22 1.5Mb 10ms DropTail $ns duplex-link-op $n0 $n3 orient right-up $ns duplex-link-op $n1 $n3 orient right-down $ns duplex-link-op $n2 $n3 orient down $ns duplex-link-op $n10 $n3 orient up $ns duplex-link-op $n9 $n10 orient right-up $ns duplex-link-op $n10 $n11 orient right $ns duplex-link-op $n10 $n16 orient down $ns duplex-link-op $n10 $n17 orient right-down $ns duplex-link-op $n3 $n4 orient right

$ns duplex-link-op $n4 $n5 orient right-up $ns duplex-link-op $n4 $n11 orient down $ns duplex-link-op $n5 $n6 orient right $ns duplex-link-op $n6 $n7 orient right-up $ns duplex-link-op $n6 $n8 orient right $ns duplex-link-op $n11 $n12 orient right $ns duplex-link-op $n12 $n13 orient right-up $ns duplex-link-op $n12 $n14 orient right $ns duplex-link-op $n12 $n15 orient right-down $ns duplex-link-op $n11 $n18 orient right-down $ns duplex-link-op $n18 $n19 orient left-down $ns duplex-link-op $n18 $n20 orient right-down $ns duplex-link-op $n5 $n21 orient right-up $ns duplex-link-op $n5 $n22 orient left-up $ns duplex-link-op $n2 $n3 queuePos 0.5


(14)

set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0

set cbr0 [new Application/Traffic/CBR] $cbr0 attach-agent $udp0

set udp1 [new Agent/UDP] $ns attach-agent $n3 $udp1 $udp1 set class_ 1

set cbr1 [new Application/Traffic/CBR] $cbr1 attach-agent $udp1

set udp2 [new Agent/UDP] $ns attach-agent $n9 $udp2 $udp2 set class_ 2

set cbr2 [new Application/Traffic/CBR] $cbr2 attach-agent $udp2

set udp3 [new Agent/UDP] $ns attach-agent $n16 $udp3 $udp3 set class_ 3

set cbr3 [new Application/Traffic/CBR] $cbr3 attach-agent $udp3

set udp4 [new Agent/UDP] $ns attach-agent $n19 $udp4 $udp4 set class_ 4

set cbr4 [new Application/Traffic/CBR] $cbr4 attach-agent $udp4

set udp5 [new Agent/UDP] $ns attach-agent $n7 $udp5 $udp5 set class_ 5

set cbr5 [new Application/Traffic/CBR] $cbr5 attach-agent $udp5

set udp6 [new Agent/UDP] $ns attach-agent $n14 $udp6 $udp6 set class_ 6

set cbr6 [new Application/Traffic/CBR] $cbr6 attach-agent $udp6

set udp7 [new Agent/UDP] $ns attach-agent $n13 $udp7 $udp7 set class_ 7

set cbr7 [new Application/Traffic/CBR] $cbr7 attach-agent $udp7


(15)

set udp8 [new Agent/UDP] $ns attach-agent $n1 $udp8 $udp8 set class_ 8

set cbr8 [new Application/Traffic/CBR] $cbr8 attach-agent $udp8

set null0 [new Agent/Null] $ns attach-agent $n14 $null0 set null1 [new Agent/Null] $ns attach-agent $n13 $null1 set null2 [new Agent/Null] $ns attach-agent $n8 $null2 set null3 [new Agent/Null] $ns attach-agent $n20 $null3 set null4 [new Agent/Null] $ns attach-agent $n14 $null4 set null5 [new Agent/Null] $ns attach-agent $n20 $null5 set null6 [new Agent/Null] $ns attach-agent $n21 $null6 set null7 [new Agent/Null] $ns attach-agent $n22 $null7 set null8 [new Agent/Null] $ns attach-agent $n17 $null8 $ns connect $udp0 $null0 $ns connect $udp1 $null1 $ns connect $udp2 $null2 $ns connect $udp3 $null3 $ns connect $udp4 $null4 $ns connect $udp5 $null5 $ns connect $udp6 $null6 $ns connect $udp7 $null7 $ns connect $udp8 $null8 # creation trace traffic

set max_fragmented_size 1024

#add udp header(8 bytes) and IP header (20bytes) set packetSize 1052


(16)

set trace_file_name video1.dat

set original_file_id [open $original_file_name r] set trace_file_id [open $trace_file_name w] set pre_time 0

while {[eof $original_file_id] == 0} { gets $original_file_id current_line

scan $current_line "%d%s%d%d%f" no_ frametype_ length_ tmp1_ tmp2_ set time [expr int(($tmp2_ - $pre_time)*1000000.0)]

if { $frametype_ == "I" } { set type_v 1

set prio_p 0 }

if { $frametype_ == "P" } { set type_v 2

set prio_p 0 }

if { $frametype_ == "B" } { set type_v 3

set prio_p 0 }

if { $frametype_ == "H" } { set type_v 1

set prio_p 0 }

puts $trace_file_id "$time $length_ $type_v $prio_p $max_fragmented_size" set pre_time $tmp2_

}

close $original_file_id close $trace_file_id set end_sim_time $tmp2_ puts "$end_sim_time" set trace_file [new Tracefile]

$trace_file filename $trace_file_name #Attach video to server

#create source traffic

#Create a UDP agent and attach it to node n0 set udp_0 [new Agent/myUDP]

$udp_0 set_filename udpSend0 $udp_0 set packetSize_ 1052

$ns attach-agent $n2 $udp_0 ;#Server 2 set udp_1 [new Agent/myUDP]

$udp_1 set_filename udpSend1 $udp_1 set packetSize_ 1052


(17)

set udp_4 [new Agent/myUDP] $udp_4 set_filename udpSend7 $udp_4 set packetSize_ 1052

$ns attach-agent $n2 $udp_4 ;#Server 2 set udp_7 [new Agent/myUDP]

$udp_7 set_filename udpSend8 $udp_7 set packetSize_ 1052

$ns attach-agent $n2 $udp_7 ;#Server 2 set udp_2 [new Agent/myUDP]

$udp_2 set_filename udpSend9 $udp_2 set packetSize_ 1052

$ns attach-agent $n20 $udp_2 ;#Server 20 set udp_5 [new Agent/myUDP]

$udp_5 set_filename udpSend14 $udp_5 set packetSize_ 1052

$ns attach-agent $n20 $udp_5 ;#Server 20 set udp_8 [new Agent/myUDP]

$udp_8 set_filename udpSend15 $udp_8 set packetSize_ 1052

$ns attach-agent $n20 $udp_8 ;#Server 20 set udp_3 [new Agent/myUDP]

$udp_3 set_filename udpSend16 $udp_3 set packetSize_ 1052

$ns attach-agent $n22 $udp_3 ;#Server 22 set udp_6 [new Agent/myUDP]

$udp_6 set_filename udpSend19 $udp_6 set packetSize_ 1052

$ns attach-agent $n22 $udp_6 ;#Server 22 set udp_9 [new Agent/myUDP]

$udp_9 set_filename udpSend21 $udp_9 set packetSize_ 1052

$ns attach-agent $n22 $udp_9 ;#Server 22 # Attach video traffic source

set video0 [new Application/Traffic/myEvalvid] $video0 attach-tracefile $trace_file

$video0 attach-agent $udp_0

set video1 [new Application/Traffic/myEvalvid] $video1 attach-tracefile $trace_file


(18)

set video2 [new Application/Traffic/myEvalvid] $video2 attach-tracefile $trace_file

$video2 attach-agent $udp_2

set video3 [new Application/Traffic/myEvalvid] $video3 attach-tracefile $trace_file

$video3 attach-agent $udp_3

set video4 [new Application/Traffic/myEvalvid] $video4 attach-tracefile $trace_file

$video4 attach-agent $udp_4

set video5 [new Application/Traffic/myEvalvid] $video5 attach-tracefile $trace_file

$video5 attach-agent $udp_5

set video6 [new Application/Traffic/myEvalvid] $video6 attach-tracefile $trace_file

$video6 attach-agent $udp_6

set video7 [new Application/Traffic/myEvalvid] $video7 attach-tracefile $trace_file

$video7 attach-agent $udp_7

set video8 [new Application/Traffic/myEvalvid] $video8 attach-tracefile $trace_file

$video8 attach-agent $udp_8

set video9 [new Application/Traffic/myEvalvid] $video9 attach-tracefile $trace_file

$video9 attach-agent $udp_9

# Create the Null agent to sink traffic set null_0 [new Agent/myEvalvid_Sink] $null_0 set_filename udpRec0

$ns attach-agent $n0 $null_0

set null_1 [new Agent/myEvalvid_Sink] $null_1 set_filename udpRec1

$ns attach-agent $n1 $null_1

set null_7 [new Agent/myEvalvid_Sink] $null_7 set_filename udpRec7

$ns attach-agent $n7 $null_7

set null_8 [new Agent/myEvalvid_Sink] $null_8 set_filename udpRec8


(19)

$ns attach-agent $n8 $null_8

set null_9 [new Agent/myEvalvid_Sink] $null_9 set_filename udpRec9

$ns attach-agent $n9 $null_9

set null_14 [new Agent/myEvalvid_Sink] $null_14 set_filename udpRec14

$ns attach-agent $n14 $null_14

set null_15 [new Agent/myEvalvid_Sink] $null_15 set_filename udpRec15

$ns attach-agent $n19 $null_15

set null_16 [new Agent/myEvalvid_Sink] $null_16 set_filename udpRec16

$ns attach-agent $n19 $null_16

set null_19 [new Agent/myEvalvid_Sink] $null_19 set_filename udpRec19

$ns attach-agent $n19 $null_19

set null_21 [new Agent/myEvalvid_Sink] $null_21 set_filename udpRec21

$ns attach-agent $n21 $null_21 # Attach the 2 agents

$ns connect $udp_0 $null_0 $ns connect $udp_1 $null_1 $ns connect $udp_2 $null_7 $ns connect $udp_3 $null_8 $ns connect $udp_4 $null_9 $ns connect $udp_5 $null_14 $ns connect $udp_6 $null_15 $ns connect $udp_7 $null_16 $ns connect $udp_8 $null_19 $ns connect $udp_9 $null_21 $ns at 1.0 "$cbr0 start" $ns at 6.1 "$cbr1 start" $ns at 1.3 "$cbr2 start" $ns at 2.6 "$cbr3 start" $ns at 1.8 "$cbr4 start" $ns at 3.0 "$cbr5 start" $ns at 2.1 "$cbr6 start" $ns at 5.2 "$cbr7 start" $ns at 7.3 "$cbr8 start"


(20)

$ns at 4.0 "$cbr5 stop" $ns at 5.1 "$cbr6 stop" $ns at 5.8 "$cbr7 stop"

#Evaluated traffics $ns at 2.0 "$video0 start" $ns at 2.5 "$video1 start" $ns at 3.0 "$video2 start" $ns at 3.4 "$video3 start" $ns at 3.8 "$video4 start" $ns at 4.0 "$video5 start" $ns at 4.5 "$video6 start" $ns at 5.0 "$video7 start" $ns at 5.5 "$video8 start" $ns at 6.0 "$video9 start" set tcp [new Agent/TCP] $tcp set class_ 2

set sink [new Agent/TCPSink] $ns attach-agent $n0 $tcp $ns attach-agent $n3 $sink $ns connect $tcp $sink

set ftp [new Application/FTP] $ftp attach-agent $tcp

$ns at 1.2 "$ftp start"

$ns at 1.35 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink" puts [$cbr0 set packetSize_]

puts [$cbr0 set interval_] $ns at 500.0 "finish" proc finish {} {

global ns f nf $ns flush-trace close $f close $nf

puts "running nam..." exec nam out.nam & exit 0

} $ns run


(21)

LAMPIRAN

SCRIPT PROGRAM ROUND ROBIN

set ns [new Simulator] $ns color 0 pink $ns color 1 red $ns color 2 green $ns color 3 yellow $ns color 4 brown $ns color 5 purple $ns color 6 black $ns color 7 grey $ns color 8 maroon set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] set n6 [$ns node] set n7 [$ns node] set n8 [$ns node] set n9 [$ns node] set n10 [$ns node] set n11 [$ns node] set n12 [$ns node] set n13 [$ns node] set n14 [$ns node] set n15 [$ns node] set n16 [$ns node] set n17 [$ns node] set n18 [$ns node] set n19 [$ns node] set n20 [$ns node] set n21 [$ns node] set n22 [$ns node] set f [open out.tr w] $ns trace-all $f

set nf [open out.nam w] $ns namtrace-all $nf


(22)

$ns duplex-link $n1 $n3 5Mb 2ms DropTail $ns duplex-link $n2 $n3 5Mb 2ms DropTail $ns duplex-link $n10 $n3 1.5Mb 10ms DropTail $ns duplex-link $n9 $n10 1.5Mb 10ms DropTail $ns duplex-link $n10 $n16 1.5Mb 10ms DropTail $ns duplex-link $n10 $n11 1.5Mb 10ms DropTail $ns duplex-link $n10 $n17 1.5Mb 10ms DropTail $ns duplex-link $n3 $n4 1.5Mb 10ms DropTail $ns duplex-link $n4 $n5 1.5Mb 10ms DropTail $ns duplex-link $n4 $n11 1.5Mb 10ms DropTail $ns duplex-link $n5 $n6 1.5Mb 10ms DropTail $ns duplex-link $n6 $n7 1.5Mb 10ms DropTail $ns duplex-link $n6 $n8 1.5Mb 10ms DropTail $ns duplex-link $n11 $n12 1.5Mb 10ms DropTail $ns duplex-link $n12 $n13 1.5Mb 10ms DropTail $ns duplex-link $n12 $n14 1.5Mb 10ms DropTail $ns duplex-link $n12 $n15 1.5Mb 10ms DropTail $ns duplex-link $n11 $n18 1.5Mb 10ms DropTail $ns duplex-link $n18 $n19 1.5Mb 10ms DropTail $ns duplex-link $n18 $n20 1.5Mb 10ms DropTail $ns duplex-link $n5 $n21 1.5Mb 10ms DropTail $ns duplex-link $n5 $n22 1.5Mb 10ms DropTail $ns duplex-link-op $n0 $n3 orient right-up $ns duplex-link-op $n1 $n3 orient right-down $ns duplex-link-op $n2 $n3 orient down $ns duplex-link-op $n10 $n3 orient up $ns duplex-link-op $n9 $n10 orient right-up $ns duplex-link-op $n10 $n11 orient right $ns duplex-link-op $n10 $n16 orient down $ns duplex-link-op $n10 $n17 orient right-down $ns duplex-link-op $n3 $n4 orient right

$ns duplex-link-op $n4 $n5 orient right-up $ns duplex-link-op $n4 $n11 orient down $ns duplex-link-op $n5 $n6 orient right $ns duplex-link-op $n6 $n7 orient right-up $ns duplex-link-op $n6 $n8 orient right $ns duplex-link-op $n11 $n12 orient right $ns duplex-link-op $n12 $n13 orient right-up $ns duplex-link-op $n12 $n14 orient right $ns duplex-link-op $n12 $n15 orient right-down $ns duplex-link-op $n11 $n18 orient right-down $ns duplex-link-op $n18 $n19 orient left-down $ns duplex-link-op $n18 $n20 orient right-down $ns duplex-link-op $n5 $n21 orient right-up $ns duplex-link-op $n5 $n22 orient left-up $ns duplex-link-op $n2 $n3 queuePos 0.5


(23)

set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0

set cbr0 [new Application/Traffic/CBR] $cbr0 attach-agent $udp0

set udp1 [new Agent/UDP] $ns attach-agent $n3 $udp1 $udp1 set class_ 1

set cbr1 [new Application/Traffic/CBR] $cbr1 attach-agent $udp1

set udp2 [new Agent/UDP] $ns attach-agent $n9 $udp2 $udp2 set class_ 2

set cbr2 [new Application/Traffic/CBR] $cbr2 attach-agent $udp2

set udp3 [new Agent/UDP] $ns attach-agent $n16 $udp3 $udp3 set class_ 3

set cbr3 [new Application/Traffic/CBR] $cbr3 attach-agent $udp3

set udp4 [new Agent/UDP] $ns attach-agent $n19 $udp4 $udp4 set class_ 4

set cbr4 [new Application/Traffic/CBR] $cbr4 attach-agent $udp4

set udp5 [new Agent/UDP] $ns attach-agent $n7 $udp5 $udp5 set class_ 5

set cbr5 [new Application/Traffic/CBR] $cbr5 attach-agent $udp5

set udp6 [new Agent/UDP] $ns attach-agent $n14 $udp6 $udp6 set class_ 6

set cbr6 [new Application/Traffic/CBR] $cbr6 attach-agent $udp6

set udp7 [new Agent/UDP] $ns attach-agent $n13 $udp7 $udp7 set class_ 7

set cbr7 [new Application/Traffic/CBR] $cbr7 attach-agent $udp7


(24)

set udp8 [new Agent/UDP] $ns attach-agent $n1 $udp8 $udp8 set class_ 8

set cbr8 [new Application/Traffic/CBR] $cbr8 attach-agent $udp8

set null0 [new Agent/Null] $ns attach-agent $n14 $null0 set null1 [new Agent/Null] $ns attach-agent $n13 $null1 set null2 [new Agent/Null] $ns attach-agent $n8 $null2 set null3 [new Agent/Null] $ns attach-agent $n20 $null3 set null4 [new Agent/Null] $ns attach-agent $n14 $null4 set null5 [new Agent/Null] $ns attach-agent $n20 $null5 set null6 [new Agent/Null] $ns attach-agent $n21 $null6 set null7 [new Agent/Null] $ns attach-agent $n22 $null7 set null8 [new Agent/Null] $ns attach-agent $n17 $null8 $ns connect $udp0 $null0 $ns connect $udp1 $null1 $ns connect $udp2 $null2 $ns connect $udp3 $null3 $ns connect $udp4 $null4 $ns connect $udp5 $null5 $ns connect $udp6 $null6 $ns connect $udp7 $null7 $ns connect $udp8 $null8 # creation trace traffic

set max_fragmented_size 1024

#add udp header(8 bytes) and IP header (20bytes) set packetSize 1052


(25)

set trace_file_name video1.dat

set original_file_id [open $original_file_name r] set trace_file_id [open $trace_file_name w] set pre_time 0

while {[eof $original_file_id] == 0} { gets $original_file_id current_line

scan $current_line "%d%s%d%d%f" no_ frametype_ length_ tmp1_ tmp2_ set time [expr int(($tmp2_ - $pre_time)*1000000.0)]

if { $frametype_ == "I" } { set type_v 1

set prio_p 0 }

if { $frametype_ == "P" } { set type_v 2

set prio_p 0 }

if { $frametype_ == "B" } { set type_v 3

set prio_p 0 }

if { $frametype_ == "H" } { set type_v 1

set prio_p 0 }

puts $trace_file_id "$time $length_ $type_v $prio_p $max_fragmented_size" set pre_time $tmp2_

}

close $original_file_id close $trace_file_id set end_sim_time $tmp2_ puts "$end_sim_time" set trace_file [new Tracefile]

$trace_file filename $trace_file_name #Attach video to server

#create source traffic

#Create a UDP agent and attach it to node n0 set udp_0 [new Agent/myUDP]

$udp_0 set_filename udpSend0 $udp_0 set packetSize_ 1052

$ns attach-agent $n2 $udp_0 ;#Server 2 set udp_3 [new Agent/myUDP]

$udp_3 set_filename udpSend1 $udp_3 set packetSize_ 1052


(26)

set udp_6 [new Agent/myUDP] $udp_6 set_filename udpSend7 $udp_6 set packetSize_ 1052

$ns attach-agent $n2 $udp_6 ;#Server 2 set udp_9 [new Agent/myUDP]

$udp_9 set_filename udpSend8 $udp_9 set packetSize_ 1052

$ns attach-agent $n2 $udp_9 ;#Server 2 set udp_1 [new Agent/myUDP]

$udp_1 set_filename udpSend9 $udp_1 set packetSize_ 1052

$ns attach-agent $n20 $udp_1 ;#Server 20 set udp_4 [new Agent/myUDP]

$udp_4 set_filename udpSend14 $udp_4 set packetSize_ 1052

$ns attach-agent $n20 $udp_4 ;#Server 20 set udp_7 [new Agent/myUDP]

$udp_7 set_filename udpSend15 $udp_7 set packetSize_ 1052

$ns attach-agent $n20 $udp_7 ;#Server 20 set udp_2 [new Agent/myUDP]

$udp_2 set_filename udpSend16 $udp_2 set packetSize_ 1052

$ns attach-agent $n22 $udp_2 ;#Server 22 set udp_5 [new Agent/myUDP]

$udp_5 set_filename udpSend19 $udp_5 set packetSize_ 1052

$ns attach-agent $n22 $udp_5 ;#Server 22 set udp_8 [new Agent/myUDP]

$udp_8 set_filename udpSend21 $udp_8 set packetSize_ 1052

$ns attach-agent $n22 $udp_8 ;#Server 22 # Attach video traffic source

set video0 [new Application/Traffic/myEvalvid] $video0 attach-tracefile $trace_file

$video0 attach-agent $udp_0

set video1 [new Application/Traffic/myEvalvid] $video1 attach-tracefile $trace_file


(27)

$video1 attach-agent $udp_1

set video2 [new Application/Traffic/myEvalvid] $video2 attach-tracefile $trace_file

$video2 attach-agent $udp_2

set video3 [new Application/Traffic/myEvalvid] $video3 attach-tracefile $trace_file

$video3 attach-agent $udp_3

set video4 [new Application/Traffic/myEvalvid] $video4 attach-tracefile $trace_file

$video4 attach-agent $udp_4

set video5 [new Application/Traffic/myEvalvid] $video5 attach-tracefile $trace_file

$video5 attach-agent $udp_5

set video6 [new Application/Traffic/myEvalvid] $video6 attach-tracefile $trace_file

$video6 attach-agent $udp_6

set video7 [new Application/Traffic/myEvalvid] $video7 attach-tracefile $trace_file

$video7 attach-agent $udp_7

set video8 [new Application/Traffic/myEvalvid] $video8 attach-tracefile $trace_file

$video8 attach-agent $udp_8

set video9 [new Application/Traffic/myEvalvid] $video9 attach-tracefile $trace_file

$video9 attach-agent $udp_9

# Create the Null agent to sink traffic set null_0 [new Agent/myEvalvid_Sink] $null_0 set_filename udpRec0

$ns attach-agent $n0 $null_0

set null_1 [new Agent/myEvalvid_Sink] $null_1 set_filename udpRec1

$ns attach-agent $n1 $null_1

set null_7 [new Agent/myEvalvid_Sink] $null_7 set_filename udpRec7


(28)

set null_8 [new Agent/myEvalvid_Sink] $null_8 set_filename udpRec8

$ns attach-agent $n8 $null_8

set null_9 [new Agent/myEvalvid_Sink] $null_9 set_filename udpRec9

$ns attach-agent $n9 $null_9

set null_14 [new Agent/myEvalvid_Sink] $null_14 set_filename udpRec14

$ns attach-agent $n14 $null_14

set null_15 [new Agent/myEvalvid_Sink] $null_15 set_filename udpRec15

$ns attach-agent $n19 $null_15

set null_16 [new Agent/myEvalvid_Sink] $null_16 set_filename udpRec16

$ns attach-agent $n19 $null_16

set null_19 [new Agent/myEvalvid_Sink] $null_19 set_filename udpRec19

$ns attach-agent $n19 $null_19

set null_21 [new Agent/myEvalvid_Sink] $null_21 set_filename udpRec21

$ns attach-agent $n21 $null_21 # Attach the 2 agents

$ns connect $udp_0 $null_0 $ns connect $udp_1 $null_1 $ns connect $udp_2 $null_7 $ns connect $udp_3 $null_8 $ns connect $udp_4 $null_9 $ns connect $udp_5 $null_14 $ns connect $udp_6 $null_15 $ns connect $udp_7 $null_16 $ns connect $udp_8 $null_19 $ns connect $udp_9 $null_21 $ns at 1.0 "$cbr0 start" $ns at 6.1 "$cbr1 start" $ns at 1.3 "$cbr2 start" $ns at 2.6 "$cbr3 start" $ns at 1.8 "$cbr4 start" $ns at 3.0 "$cbr5 start" $ns at 2.1 "$cbr6 start" $ns at 5.2 "$cbr7 start"


(29)

$ns at 7.3 "$cbr8 start" $ns at 4.0 "$cbr5 stop" $ns at 5.1 "$cbr6 stop" $ns at 5.8 "$cbr7 stop"

#Evaluated traffics $ns at 2.0 "$video0 start" $ns at 2.5 "$video1 start" $ns at 3.0 "$video2 start" $ns at 3.4 "$video3 start" $ns at 3.8 "$video4 start" $ns at 4.0 "$video5 start" $ns at 4.5 "$video6 start" $ns at 5.0 "$video7 start" $ns at 5.5 "$video8 start" $ns at 6.0 "$video9 start" set tcp [new Agent/TCP] $tcp set class_ 2

set sink [new Agent/TCPSink] $ns attach-agent $n0 $tcp $ns attach-agent $n3 $sink $ns connect $tcp $sink

set ftp [new Application/FTP] $ftp attach-agent $tcp

$ns at 1.2 "$ftp start"

$ns at 1.35 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink" puts [$cbr0 set packetSize_]

puts [$cbr0 set interval_] $ns at 500.0 "finish" proc finish {} {

global ns f nf $ns flush-trace close $f close $nf

puts "running nam..." exec nam out.nam & exit 0

} $ns run


(30)

LAMPIRAN

SCRIPT PROGRAM WEIGHTED ROUND ROBIN

set ns [new Simulator] $ns color 0 pink $ns color 1 red $ns color 2 green $ns color 3 yellow $ns color 4 brown $ns color 5 purple $ns color 6 black $ns color 7 grey $ns color 8 maroon set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] set n6 [$ns node] set n7 [$ns node] set n8 [$ns node] set n9 [$ns node] set n10 [$ns node] set n11 [$ns node] set n12 [$ns node] set n13 [$ns node] set n14 [$ns node] set n15 [$ns node] set n16 [$ns node] set n17 [$ns node] set n18 [$ns node] set n19 [$ns node] set n20 [$ns node] set n21 [$ns node] set n22 [$ns node] set f [open out.tr w] $ns trace-all $f

set nf [open out.nam w] $ns namtrace-all $nf

$ns duplex-link $n0 $n3 5Mb 2ms DropTail $ns duplex-link $n1 $n3 5Mb 2ms DropTail


(31)

$ns duplex-link $n2 $n3 5Mb 2ms DropTail $ns duplex-link $n10 $n3 1.5Mb 10ms DropTail $ns duplex-link $n9 $n10 1.5Mb 10ms DropTail $ns duplex-link $n10 $n16 1.5Mb 10ms DropTail $ns duplex-link $n10 $n11 1.5Mb 10ms DropTail $ns duplex-link $n10 $n17 1.5Mb 10ms DropTail $ns duplex-link $n3 $n4 1.5Mb 10ms DropTail $ns duplex-link $n4 $n5 1.5Mb 10ms DropTail $ns duplex-link $n4 $n11 1.5Mb 10ms DropTail $ns duplex-link $n5 $n6 1.5Mb 10ms DropTail $ns duplex-link $n6 $n7 1.5Mb 10ms DropTail $ns duplex-link $n6 $n8 1.5Mb 10ms DropTail $ns duplex-link $n11 $n12 1.5Mb 10ms DropTail $ns duplex-link $n12 $n13 1.5Mb 10ms DropTail $ns duplex-link $n12 $n14 1.5Mb 10ms DropTail $ns duplex-link $n12 $n15 1.5Mb 10ms DropTail $ns duplex-link $n11 $n18 1.5Mb 10ms DropTail $ns duplex-link $n18 $n19 1.5Mb 10ms DropTail $ns duplex-link $n18 $n20 1.5Mb 10ms DropTail $ns duplex-link $n5 $n21 1.5Mb 10ms DropTail $ns duplex-link $n5 $n22 1.5Mb 10ms DropTail $ns duplex-link-op $n0 $n3 orient right-up $ns duplex-link-op $n1 $n3 orient right-down $ns duplex-link-op $n2 $n3 orient down $ns duplex-link-op $n10 $n3 orient up $ns duplex-link-op $n9 $n10 orient right-up $ns duplex-link-op $n10 $n11 orient right $ns duplex-link-op $n10 $n16 orient down $ns duplex-link-op $n10 $n17 orient right-down $ns duplex-link-op $n3 $n4 orient right

$ns duplex-link-op $n4 $n5 orient right-up $ns duplex-link-op $n4 $n11 orient down $ns duplex-link-op $n5 $n6 orient right $ns duplex-link-op $n6 $n7 orient right-up $ns duplex-link-op $n6 $n8 orient right $ns duplex-link-op $n11 $n12 orient right $ns duplex-link-op $n12 $n13 orient right-up $ns duplex-link-op $n12 $n14 orient right $ns duplex-link-op $n12 $n15 orient right-down $ns duplex-link-op $n11 $n18 orient right-down $ns duplex-link-op $n18 $n19 orient left-down $ns duplex-link-op $n18 $n20 orient right-down $ns duplex-link-op $n5 $n21 orient right-up $ns duplex-link-op $n5 $n22 orient left-up $ns duplex-link-op $n2 $n3 queuePos 0.5


(32)

set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0

set cbr0 [new Application/Traffic/CBR] $cbr0 attach-agent $udp0

set udp1 [new Agent/UDP] $ns attach-agent $n3 $udp1 $udp1 set class_ 1

set cbr1 [new Application/Traffic/CBR] $cbr1 attach-agent $udp1

set udp2 [new Agent/UDP] $ns attach-agent $n9 $udp2 $udp2 set class_ 2

set cbr2 [new Application/Traffic/CBR] $cbr2 attach-agent $udp2

set udp3 [new Agent/UDP] $ns attach-agent $n16 $udp3 $udp3 set class_ 3

set cbr3 [new Application/Traffic/CBR] $cbr3 attach-agent $udp3

set udp4 [new Agent/UDP] $ns attach-agent $n19 $udp4 $udp4 set class_ 4

set cbr4 [new Application/Traffic/CBR] $cbr4 attach-agent $udp4

set udp5 [new Agent/UDP] $ns attach-agent $n7 $udp5 $udp5 set class_ 5

set cbr5 [new Application/Traffic/CBR] $cbr5 attach-agent $udp5

set udp6 [new Agent/UDP] $ns attach-agent $n14 $udp6 $udp6 set class_ 6

set cbr6 [new Application/Traffic/CBR] $cbr6 attach-agent $udp6

set udp7 [new Agent/UDP] $ns attach-agent $n13 $udp7 $udp7 set class_ 7

set cbr7 [new Application/Traffic/CBR] $cbr7 attach-agent $udp7


(33)

$ns attach-agent $n1 $udp8 $udp8 set class_ 8

set cbr8 [new Application/Traffic/CBR] $cbr8 attach-agent $udp8

set null0 [new Agent/Null] $ns attach-agent $n14 $null0 set null1 [new Agent/Null] $ns attach-agent $n13 $null1 set null2 [new Agent/Null] $ns attach-agent $n8 $null2 set null3 [new Agent/Null] $ns attach-agent $n20 $null3 set null4 [new Agent/Null] $ns attach-agent $n14 $null4 set null5 [new Agent/Null] $ns attach-agent $n20 $null5 set null6 [new Agent/Null] $ns attach-agent $n21 $null6 set null7 [new Agent/Null] $ns attach-agent $n22 $null7 set null8 [new Agent/Null] $ns attach-agent $n17 $null8 $ns connect $udp0 $null0 $ns connect $udp1 $null1 $ns connect $udp2 $null2 $ns connect $udp3 $null3 $ns connect $udp4 $null4 $ns connect $udp5 $null5 $ns connect $udp6 $null6 $ns connect $udp7 $null7 $ns connect $udp8 $null8 # creation trace traffic

set max_fragmented_size 1024

#add udp header(8 bytes) and IP header (20bytes) set packetSize 1052

set original_file_name st_a01 set trace_file_name video1.dat


(34)

set original_file_id [open $original_file_name r] set trace_file_id [open $trace_file_name w] set pre_time 0

while {[eof $original_file_id] == 0} { gets $original_file_id current_line

scan $current_line "%d%s%d%d%f" no_ frametype_ length_ tmp1_ tmp2_ set time [expr int(($tmp2_ - $pre_time)*1000000.0)]

if { $frametype_ == "I" } { set type_v 1

set prio_p 0 }

if { $frametype_ == "P" } { set type_v 2

set prio_p 0 }

if { $frametype_ == "B" } { set type_v 3

set prio_p 0 }

if { $frametype_ == "H" } { set type_v 1

set prio_p 0 }

puts $trace_file_id "$time $length_ $type_v $prio_p $max_fragmented_size" set pre_time $tmp2_

}

close $original_file_id close $trace_file_id set end_sim_time $tmp2_ puts "$end_sim_time" set trace_file [new Tracefile]

$trace_file filename $trace_file_name #Attach video to server

#create source traffic

#Create a UDP agent and attach it to node n0 set udp_0 [new Agent/myUDP]

$udp_0 set_filename udpSend0 $udp_0 set packetSize_ 1052

$ns attach-agent $n2 $udp_0 ;#Server 2 set udp_1 [new Agent/myUDP]

$udp_1 set_filename udpSend1 $udp_1 set packetSize_ 1052


(35)

set udp_4 [new Agent/myUDP] $udp_4 set_filename udpSend7 $udp_4 set packetSize_ 1052

$ns attach-agent $n2 $udp_4 ;#Server 2 set udp_5 [new Agent/myUDP]

$udp_5 set_filename udpSend8 $udp_5 set packetSize_ 1052

$ns attach-agent $n2 $udp_5 ;#Server 2 set udp_8 [new Agent/myUDP]

$udp_8 set_filename udpSend9 $udp_8 set packetSize_ 1052

$ns attach-agent $n2 $udp_8 ;#Server 2 set udp_9 [new Agent/myUDP]

$udp_9 set_filename udpSend14 $udp_9 set packetSize_ 1052

$ns attach-agent $n2 $udp_9 ;#Server 2 set udp_2 [new Agent/myUDP]

$udp_2 set_filename udpSend15 $udp_2 set packetSize_ 1052

$ns attach-agent $n20 $udp_2 ;#Server 20 set udp_6 [new Agent/myUDP]

$udp_6 set_filename udpSend16 $udp_6 set packetSize_ 1052

$ns attach-agent $n20 $udp_6 ;#Server 20 set udp_3 [new Agent/myUDP]

$udp_3 set_filename udpSend19 $udp_3 set packetSize_ 1052

$ns attach-agent $n22 $udp_3 ;#Server 22 set udp_7 [new Agent/myUDP]

$udp_7 set_filename udpSend21 $udp_7 set packetSize_ 1052

$ns attach-agent $n22 $udp_7 ;#Server 22 # Attach video traffic source

set video0 [new Application/Traffic/myEvalvid] $video0 attach-tracefile $trace_file

$video0 attach-agent $udp_0

set video1 [new Application/Traffic/myEvalvid] $video1 attach-tracefile $trace_file


(36)

set video2 [new Application/Traffic/myEvalvid] $video2 attach-tracefile $trace_file

$video2 attach-agent $udp_2

set video3 [new Application/Traffic/myEvalvid] $video3 attach-tracefile $trace_file

$video3 attach-agent $udp_3

set video4 [new Application/Traffic/myEvalvid] $video4 attach-tracefile $trace_file

$video4 attach-agent $udp_4

set video5 [new Application/Traffic/myEvalvid] $video5 attach-tracefile $trace_file

$video5 attach-agent $udp_5

set video6 [new Application/Traffic/myEvalvid] $video6 attach-tracefile $trace_file

$video6 attach-agent $udp_6

set video7 [new Application/Traffic/myEvalvid] $video7 attach-tracefile $trace_file

$video7 attach-agent $udp_7

set video8 [new Application/Traffic/myEvalvid] $video8 attach-tracefile $trace_file

$video8 attach-agent $udp_8

set video9 [new Application/Traffic/myEvalvid] $video9 attach-tracefile $trace_file

$video9 attach-agent $udp_9

# Create the Null agent to sink traffic set null_0 [new Agent/myEvalvid_Sink] $null_0 set_filename udpRec0

$ns attach-agent $n0 $null_0

set null_1 [new Agent/myEvalvid_Sink] $null_1 set_filename udpRec1

$ns attach-agent $n1 $null_1

set null_7 [new Agent/myEvalvid_Sink] $null_7 set_filename udpRec7

$ns attach-agent $n7 $null_7


(37)

$null_8 set_filename udpRec8 $ns attach-agent $n8 $null_8

set null_9 [new Agent/myEvalvid_Sink] $null_9 set_filename udpRec9

$ns attach-agent $n9 $null_9

set null_14 [new Agent/myEvalvid_Sink] $null_14 set_filename udpRec14

$ns attach-agent $n14 $null_14

set null_15 [new Agent/myEvalvid_Sink] $null_15 set_filename udpRec15

$ns attach-agent $n19 $null_15

set null_16 [new Agent/myEvalvid_Sink] $null_16 set_filename udpRec16

$ns attach-agent $n19 $null_16

set null_19 [new Agent/myEvalvid_Sink] $null_19 set_filename udpRec19

$ns attach-agent $n19 $null_19

set null_21 [new Agent/myEvalvid_Sink] $null_21 set_filename udpRec21

$ns attach-agent $n21 $null_21 # Attach the 2 agents

$ns connect $udp_0 $null_0 $ns connect $udp_1 $null_1 $ns connect $udp_2 $null_7 $ns connect $udp_3 $null_8 $ns connect $udp_4 $null_9 $ns connect $udp_5 $null_14 $ns connect $udp_6 $null_15 $ns connect $udp_7 $null_16 $ns connect $udp_8 $null_19 $ns connect $udp_9 $null_21 $ns at 1.0 "$cbr0 start" $ns at 6.1 "$cbr1 start" $ns at 1.3 "$cbr2 start" $ns at 2.6 "$cbr3 start" $ns at 1.8 "$cbr4 start" $ns at 3.0 "$cbr5 start" $ns at 2.1 "$cbr6 start" $ns at 5.2 "$cbr7 start" $ns at 7.3 "$cbr8 start"


(38)

$ns at 4.0 "$cbr5 stop" $ns at 5.1 "$cbr6 stop" $ns at 5.8 "$cbr7 stop"

#Evaluated traffics $ns at 2.0 "$video0 start" $ns at 2.5 "$video1 start" $ns at 3.0 "$video2 start" $ns at 3.4 "$video3 start" $ns at 3.8 "$video4 start" $ns at 4.0 "$video5 start" $ns at 4.5 "$video6 start" $ns at 5.0 "$video7 start" $ns at 5.5 "$video8 start" $ns at 6.0 "$video9 start" set tcp [new Agent/TCP] $tcp set class_ 2

set sink [new Agent/TCPSink] $ns attach-agent $n0 $tcp $ns attach-agent $n3 $sink $ns connect $tcp $sink

set ftp [new Application/FTP] $ftp attach-agent $tcp

$ns at 1.2 "$ftp start"

$ns at 1.35 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink" puts [$cbr0 set packetSize_]

puts [$cbr0 set interval_] $ns at 20.0 "finish" proc finish {} {

global ns f nf $ns flush-trace close $f close $nf

puts "running nam..." exec nam out.nam & exit 0

} $ns run


(39)

DAFTAR PUSTAKA

[1] Konsep dan Aplikasi Pemorograman Client Server dan Sistem Terdistribusi, Budi Sutedjo Dharma Oetomo, S.Kom.,MM, Penerbit Andi, Yogyakarta.2006

[2] James F. Kurose1, Keith W. Ross2, “Computer Networking” A Top-Down Approach, 2008

[3] Mohammad Johan Rajabi. “Analisa Pemanfaatan Content Delivery Network” FASILKOM UI, 2008.

[4] Spiridon Bakiras, “Approximate Server Selection Algorithms in Content Distribution Networks” IEEE,2005. [Online]. Tersedia: 2016]

[5] V. Cardellini, M. Colajanni, P.S. Y

June 1999.

[6] YU SHENGSHENG, YANG LIHUI, LU SONG, ZHOU JINGLI,” Least-Connection Algorithm based on variable weight for multimedia Transmission” Huazhong University of Science & Technology, China. [7] Mustafa ElGili Mustafa,dkk.”Load Balancing Algorithms Round-Robin

(RR), Least-Connection and Least Loaded Efficiency”.International

Journal of Computer and Information Technology. March 2015.

[8] Teerawat Issariyakul, Ekram Hossain. “Introduction to Network Simulator NS2 (Second Edition)”. Springer Science+Business Media, LLC 2012.


(40)

[9] Jirka Klaue, “EvalVid - A Video Quality Evaluation Tool-set” [Online]. Tersedia:

[10] Chih-Heng Ke, Ce-Kuen Shieh, Wen-Shyang Hwang, Artur Ziviani, “An Evaluation Framework for More Realistic Simulations of MPEG Video Transmission”, Journal of Information Science and Engineering (accepted) (SCI, EI), 2006 [Online]. Tersedia:

Februari 2016]

[11] Muhammad Mulia Maulana, Suherman, “Analisis Kualitas Transmisi Video dengan Decodable Frame Rate” [Online]. Tersedia 2016]

[12] European Telecommunications Standards Institute (ETSI). Telecommunications and Internet Protocol Harmonization Over Networks (TIPHON). “In General aspects of Quality of Service (QoS) (pp. 24-27)”. France, 1998

[13] Yanto, “Analisis QoS (Quality Of Service) pada Jaringan Internet” [Online].

Tersedia:http://download.portalgaruda.org/articel.php?article=32511&val= 2313. [Diakses 5 Febuari 2016]


(41)

BAB 3

PERANCANGAN SIMULASI

3.1. Perancangan Alur Penelitian

Guna mencapai tujuan penelitian, perancangan alur penelitian dilakukan sesuai alur pada Gambar 3.1.Perancangan terlebih dahulu melakukan instalasi dan pengujian perangkat yang digunakan, yaitu network simulator NS-2.Kemudian dibangunlah model jaringan CDN, pemilihan server, client dan background

traffic.


(42)

Untuk menguji penggunaan multimedia pada jaringan CDN, maka piranti lunak evaluasi video Evalvid diintegrasikan ke NS-2 pada sistem operasi ubuntu. Trafik dipilih berdasarkan kerangka Evalvid dengan mengubah kecepatan atau bit rate video.

Penerapan model CDN dilakukan dengan Load Balancer dengan menganalisis penerimaan data (download). Analisis dilakukan dengan menghitung kinerja dari hasil simulasi dengan membandingkan jaringan tanpa CDN atau

single server dengan jaringan setelah dilakukan penerapan CDN.

3.2. Spesifikasi Perangkat Penelitian 3.2.1 Perangkat Keras

Perangkat keras yang digunakan untuk menjalankan simulasi pada Tugas Akhir ini adalah satu buah laptop Hp Pavilion G4-1311AU dengan spesifikasi sebagai berikut:

- Processor AMD Dual-Core A4-3305M

- Kecepatan Prosessor (1,9 GHz, 2MB L3 cache) - Memory 4 GB DDR3

- HDD 500 GB 3.2.2 Perangkat Lunak

Spesifikasi perangkat lunak yang digunakan adalah: - Sistem operasi Ubuntu 14.04 LTS.

- Network simulator NS-2.35


(43)

3.3. Spesifikasi Trafik Simulasi CDN

Tugas akhir ini dilakukan dengan menggunakan softwareNS-2 (Network Simulator-2) yang merupakan perangkat lunak yang digunakan untuk mensimulasikan jaringan berbasis TCP/IP dengan berbagai jenis medianya. Adapun spesifikasi trafik video yang digunakan pada simulasi ditunjukkan pada Tabel 3.1, dimana kecepatan video memiliki bit rate:286435,406 bps.

Tabel 3.1: Spesifikasi Trafik Video

Parameter Keterangan

Nama video Kecepatan frame Tipe frame Codec bit rate (bps)

akiyo_cif.yuv 30fps

IPP MPEG4

286435 bps

Video memiliki kecepatan frame 30 frame setiap detik dengan codec mpeg4 berframe IPP.

3.4. Spesifikasi Fisik Simulasi CDN

Konfigurasi jaringan yang disimulasikan menirukan jaringan CDN seperti ditunjukkan pada Gambar 3.2, dimana jaringan CDN yang dimodelkan dengan jaringan CDN terdiri dari 3 server dan 19 client dimana dari 19 client yangmelakukan permintaan layanan ada 10 client. Sementara 9 client lain dijadikan background traffic.


(44)

Gambar 3.4Network Configuration

3.5. Implementasi Sistem Load Balancer

Implementasi sistem Load Balancer pada jaringan CDN ditempatkan diantara client dan server seperti yang ditunjukkan pada Gambar 3.3. Ketika ada

client yang ingin terhubung ke server maka Load Balancer akan memilih server

mana yang akan melayani client tersebut dengan salah satu dari tiga algoritma yaitu Least Connection (LC), Round Robin (RR), dan Weighted Round Robin (WRR).

Load Balancer dengan algoritma least connection menghubungkan client ke

server berdasarkan jumlah client paling sedikit yang terhubung ke server. Jadi ketika ada client yang merequest situs maka Load Balancer akan mendeteksi

Server1

Server2 Server3


(45)

server mana yang memiliki koneksi paling sedikit dan kemudian menghubungkannya.

Gambar 3.3 Implementasi Load Balancer pada Jaringan CDN

Load Balancer dengan algoritma round robin menghubungkan client

dengan server berdasarkan waktu kedatangan dan urutan server yang ada. Ketika

client pertama melakukan request maka Load Balancer akan menghubungkan client tersebut ke server1. Request dari client kedua Load Balancer akan

menghubungkannya ke server2. Reqest dari client ketiga Load Balancerakan menghubngkannya ke server3. Request dari client keempat Load Balancer akan menghubungkannya kembali ke server1. Begitu seterusnya setiap ada request dari


(46)

Load Balancer dengan algoritma weighted round robin menghubungkan client dengan server berdasarkan waktu kedatangan dan urutan server yang ada

tetapi urutannya dibebankan ke salah satu server yang terbaik. Ketika client pertama melakukan request maka Load Balancer akan menghubungkan client tersebut ke server1. Request dari client kedua Load Balancer akan menghubungkannya ke server1 juga. Reqest dari client ketiga Load Balancerakan menghubngkannya ke server2. Request dari client keempat Load Balancer akan menghubungkannya ke server3. Begitu seterusnya setiap ada request dari client.

3.6. Parameter Evaluasi 3.6.1. Delay

Delay adalah waktu tunda yang dibutuhkan packet data dari pengirim ke

penerima, Rumus mencari dekay ditunjukkan oleh Persamaan 1. [11]

����� =(����� ������������ −���������������� )

����� ℎ������ (1)

Delay juga dapat dipengaruhi oleh jarak, media fisik, kongesti atau juga

waktu proses yang lama. Menurut versi TIPHON (Telecommunications and Internet Protocol HarmonizationOverNetworks), besarnya delay dapat diklasifikasikan pada Tabel 3.2 [12].

Tabel 3.2One-Way Delay (Letency) versi TIPHON[12] Kategori Delay (Letency) Besar Delay (Letency)

Sangat bagus < 150 ms


(47)

3.6.2. Packet Loss

Packet Loss merupakan suatu parameter yang menggambarkan suatu

kondisi yang menunjukkan jumlah paket, dapat terjadi karena collision dan

congestion pada jaringan.[11]

Rumus dari Packet Loss ditunjukkan pada Pers. 2 [11]

���������� =(��ℎ���������������� −��ℎ����������������� )

��ℎ���������������� �100%(2)

Menurut versi TIPHON (Telecommunications and Internet Protocol

HarmonizationOverNetworks), besarnya paketlossdapat diklasifikasikan pada

Tabel 3.2 [12].

Tabel 3.3 Paket Loss versi TIPHON[12] Kategori Packet

Loss

Packet Loss Sangat Bagus 0%

Bagus 3%

Sedang 15%

Jelek 25%

3.6.3. Throughput

Throughput adalah kecepatan (rate) transfer data efektif, yang diukur

dalam bps. Throughput merupakan jumlah total kedatangan paket yang sukses yang diamati pada tujuan selama interval waktu tertentu dibagi oleh durasi interval waktu tersebut. Persamaan Throughput ditunjukkan pada Pers. 3. [13]

�ℎ����ℎ���= ��������� ��������


(48)

3.7. Langkah Pelaksanaan Simulasi

Urutan langkah pelaksanaan simulasi dapat dilihat pada Gambar 3.4.


(49)

Pada Gambar 3.4 dapat dilihat diagram alir pelaksanaan simulasi, dimana langkah pertama yang dilakukan menginisilalisasi konfigurasi jaringan CDN, setelah jaringan CDN dikonfigurasi maka jaringan diimplementasikan ke CDN agar dapat disimulasikan.

Sebelum melakukan simulasikan CDN terlebih dahulu melakukan pengaturan (setting) pada bit rate video, setelah itu akan melakukan proses simulasi dengan salah satu algoritma. Kemudian simulasi diulang sampai 20 kali percobaan, sesudah simulasi selesai dijalankan maka akan dihasilkan output proses simulasi berformat .txt yang merekam semua kejadian selama simulasi berlangsung.

Pada simulasi ini, Load Balancer menggunakan 3 algoritma, yaitu: Least

Connection, Round Robin, dan Weighted Round Robin. Setelah salah satu

algoritma dilakukan 20 kali percobaan, maka akan diulangi ke algoritma yang lain sampai ketiga algoritma dilakukan semuanya sebanyak 20 kali percobaan.


(50)

BAB 4

HASIL SIMULASI DAN ANALISIS DATA

4.1 Umum

Bab ini menganalisis output yang dihasilkan dari 20 kali percobaan pada simulasi di NS-2. Analisis data output tersebut diklasifikasikan untuk mengetahui hasil penggunaan beberapa algoritma pada teknik Load Balancer. Parameter kinerja yang diperoleh antara laindelay, packet loss, throughtput, dan jitter.

4.2 Hasil Pengujian

4.2.1 Pengujian Jaringan Tanpa CDN

Pada subbab ini, akan ditunjukkan hasil pengujian jaringan tanpa CDN(Single Server), dimana hanya ada 1 server yang melayani permintaan

downling video oleh 10 client.

4.2.1.1 Delay

Data percobaan dari singleserver dapat kita lihat pada Tabel 4.1. Dari Tabel 4.1 dapat dilihat bahwa nilai rata-rata delay dari 20 kali percobaan untuk single

server paling besar di server2 yaitu sebesar 0.416722 detik dan yang paling kecil

di server1 yaitu sebesar 0.112162 detik. Sedangkan server3 memiliki delay sebesar 0.281631 detik. Grafik perubahan setiap percobaan dapat dilihat pada Gambar 4.1. Dari Gambar 4.1 dapat dilihat bahwa perubahan setiap percobaan terhadap nilai rata-rata delay tidak terlalu berubah atau stabil setiap percobaannya.


(51)

Tabel 4.1 Data Delay Tanpa CDN (Single Server)

Percobaan Delay (s)

Server1 Server2 Server3 1 0.1099322 0.3921887 0.2909992 2 0.1122998 0.4195775 0.3091178 3 0.1120770 0.4192706 0.3097415 4 0.1128405 0.4178899 0.3098287 5 0.1119700 0.4180505 0.3109928 6 0.1122763 0.4177114 0.3092474 7 0.1117363 0.4179326 0.3094052 8 0.1124550 0.4193903 0.3090790 9 0.1123683 0.4178714 0.3108748 10 0.1126332 0.4183929 0.3095861 11 0.1122535 0.4190800 0.3097842 12 0.1128767 0.4177008 0.3108304 13 0.1114728 0.4175245 0.3088737 14 0.1119828 0.4191586 0.3099724 15 0.1125740 0.4181406 0.3101293 16 0.1126670 0.4175157 0.3095538 17 0.1131148 0.4187423 0.3090414 18 0.1119567 0.4174677 0.3101206 19 0.1115251 0.4180761 0.3093305 20 0.1124168 0.4183835 0.3077867 Rata-Rata 0.1121714 0.4170033 0.3087148

Gambar 4.1 KarateristikDelay Single Server

0,000 0,050 0,100 0,150 0,200 0,250 0,300 0,350 0,400 0,450

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

D ela y (s ) Urutan Percobaan Server1 Server2 Server3


(52)

Gambar 4.3 menunjukkan perbandingan nilai rata-rata 20 kali percobaan dari sistem jaringan Single Server.

Gambar 4.2 Karateristik Rata-Rata Delay Single Server

4.2.1.2 Packet Loss

Untuk Grafik data packet loss untuk single server dapat dilihat pada Tabel 4.2. Dari Tabel 4.2 dapat dilihat bahwa packet loss paling rendah terdapat pada server1 yaitu sebesar 35.41% dan paling tinggi pada server2 yaitu sebesar 55.82%. Sedangkan untuk server3 packet loss sebesar 49.38%.

Tabel 4.2 Data Packet Loss Tanpa CDN (Single Server)

Percobaan Packet Loss

Server1 Server2 Server3

1 34.00% 54.35% 39.83%

2 35.08% 55.73% 41.05%

3 35.24% 55.78% 40.65%

4 35.03% 55.87% 40.75%

5 34.76% 55.79% 40.83%

6 35.15% 55.77% 40.84%

7 35.45% 55.58% 40.80%

8 34.91% 55.68% 40.70%

0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45

1 2 3

Single Server

D

el

a

y

(s


(53)

9 34.93% 55.82% 45.08%

10 35.07% 55.85% 40.92%

11 35.10% 55.58% 40.79%

12 34.95% 55.97% 40.86%

13 35.44% 55.66% 40.75%

14 35.16% 55.62% 40.78%

15 35.13% 55.84% 40.78%

16 35.26% 55.59% 40.68%

17 34.86% 55.72% 40.80%

18 35.45% 55.77% 40.81%

19 35.53% 56.11% 40.65%

20 40.68% 58.72% 49.27%

Rata-Rata 35.36% 55.84% 41.38%

Perubahan nilai rata-rata packet losssetiap percobaan tidak terlalu signifikan, hanya pada percobaan ke-20 ketiga Single Server mengalami peningkatan yang ditunjukkan Gambar 4.3 yang menunjukkan perubahan nilai rata-rata tiap percobaan pada tiga Single Server.

Gambar 4.3 KarateristikPacket Loss Single Server

0,00% 10,00% 20,00% 30,00% 40,00% 50,00% 60,00% 70,00%

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

P

ac

ke

t L

os

s

Urutan Percobaan

Server1 Server2 Server3


(54)

Untuk perbandingan nilai rata-rata packet loss 20 kali percobaan dapat dilihat pada Gambar 4.4.

Gambar 4.4 Karateristik Rata-Rata Packet Loss Single Server

4.2.1.3 Throughput

Nilai throughput yang dihasilkan pada pengujian single server paling tinggi pada server1 yaitu 189274.875 bps dan terendah pada server2 yaitu 130256.078 bps. Sedangkan server3 memiliki throughput sebesar 172152.600 bps.Nilai throughput ini berbanding terbalik dengan nilai packet loss.Karena nilai

throughput berpengaruh pada besarnya packet yang berhasil terkirim.Grafik throughput dapat dilihat pada Tabel 4.3.

Tabel 4.3 Data Throughput Tanpa CDN (Single Server) Percobaan Throughput (bps)

Server1 Server2 Server3 1 192719.400 134696.433 166113.593 2 190155.100 130402.567 160544.852 3 190188.333 130787.967 160500.852

0,00% 10,00% 20,00% 30,00% 40,00% 50,00% 60,00%

1 2 3

P

ac

ke

t L

os

s


(55)

4 190787.767 130511.167 513913.567 5 189199.900 130426.600 144157.467 6 189809.333 130537.600 160130.185 7 188265.400 130488.300 160337.667 8 190858.000 130280.433 160556.000 9 189921.000 130278.933 159639.963 10 190407.533 130655.800 144944.333 11 190066.333 130779.933 160351.037 12 190864.767 129995.000 144057.467 13 188967.367 130962.067 144448.167 14 189747.533 130586.333 144330.667 15 190521.700 130527.500 144276.100 16 189995.967 130703.100 144673.433 17 191257.467 130519.700 160200.815 18 189295.600 130345.200 144075.400 19 188625.333 130127.100 160809.593 20 173843.667 121509.833 164990.852 Rata-Rata 189274.875 130256.078 172152.600

Untuk melihat perubahan tiap perobaan dapat dilihat pada Gambar 4.5.Dari Gambar 4.5 dapat dilihat bahwa pada Single Server1 dan Single Server3 perubahan nilai throughtput lebih stabil daripada Single Server2 yang nilainya lebih bervariasi.

Gambar 4.5 KarateristikThroughput Single Server

0 50000 100000 150000 200000 250000

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

T h ro u g h p u t (b p s) Urutan Percobaan Server1 Server2 Server3


(56)

Perbandingan nilai rata-rata 20 kali percobaan untuk parameter throughput dapat dilihat pada Gambar 4.6.

Gambar 4.6 Karateristik Rata-Rata Throughput Single Server

4.2.2 Penerapan Jaringan CDN

Setelah dilakukan pengujian jaringan dengan single server dan jaringan CDN, maka dilakukan analisis perbandingan antara hasil pengujian dengan single

server dan setelah pengimplementasian jaringan CDN yang sudah dirancang pada

BAB 3.

4.2.2.1 Delay

Data perbandingan nilai rata-rata delay single server dan jaringan CDN dari 20 kali percobaan dapat dilihat pada Tabel 4.4. Gambar 4.7 menunjukkan perubahan pada setiap percobaan single server dan jaringan CDN. Dimana delay rata-rata yang ditampilkan adalah nilai rata-rata dari ketiga single server. Dari tabel dan grafik dapat dilihat bahwa besar delay dari single server lebih besar dibandingkan dengan setelah penerapan CDN. Karena dengan menggunakan

0 50000 100000 150000 200000

Server1 Server2 Server3

T

hr

o

g

hp

ut

(bps

)


(57)

jaringan CDN maka kerja single server akan terbagi dan tidak hanya diberatkan ke satu server saja.

Tabel 4.4 PerbandinganDelay Single Server dan Jaringan CDN

Percobaan Delay (s)

Single Server LC RR WRR

1 0.2643734 0.0746518 0.1308019 0.0867261 2 0.2803317 0.0753887 0.1332597 0.0873026 3 0.2803630 0.0754475 0.1329682 0.0873266 4 0.2801863 0.0754226 0.1324716 0.0875090 5 0.2803377 0.0754603 0.1312684 0.0874620 6 0.2797450 0.0755161 0.1343835 0.0873571 7 0.2796914 0.0754689 0.1344546 0.0875764 8 0.2803081 0.0753665 0.1341323 0.0872529 9 0.2803715 0.0753349 0.1322128 0.0875321 10 0.2802040 0.0753718 0.1333128 0.0878038 11 0.2803726 0.0753445 0.1313691 0.0875302 12 0.2804693 0.0753225 0.1258215 0.0876810 13 0.2792903 0.0749631 0.1352767 0.0873321 14 0.2803713 0.0753554 0.1358861 0.0871902 15 0.2802813 0.0753685 0.1338490 0.0872989 16 0.2799121 0.0753075 0.1332214 0.0874576 17 0.2802995 0.0754791 0.1324805 0.0873271 18 0.2798484 0.0753961 0.1326009 0.0875185 19 0.2796439 0.0754741 0.1346084 0.0876176 20 0.2795290 0.0760313 0.1473450 0.0882532 Rata-Rata 0.2792965 0.0753736 0.1335862 0.0874527

Gambar 4.7 KarateristikDelay Single Server dan Jaringan CDN 0,000 0,050 0,100 0,150 0,200 0,250 0,300

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

D ela y (s ) Urutan Percobaan Single Server LC RR WRR


(58)

Gambar 4.7 menunjukkan delay pada setiap percobaan ketiga algoritma

Load Balancer lebih baik dibandingkan dengan rata-rata ketiga single server.

Rata-rata nilai total delay pada jaringan CDN dan single server ditunjukkan pada Gambar 4.8.

Gambar 4.8 PerbandinganDelaySingle Server dan Jaringan CDN

Menurut standard TIPHON (Telecommunicationsand Internet Protocol

HarmonizationOverNetworks), maka delay pada ketiga algoritma CDN masuk ke

kategori sangat bagus (<150 ms), dan nilai delaysingle server masuk ke kategori bagus (150 s/d 300 ms).

4.2.2.2 Packet Loss

Perbandingan hasil simulasi dari single server dan jaringan CDN untuk parameter packet loss dapat dilihat pada Tabel 4.5.Dari Tabel 4.5 dapat dilihat bahwa kinerja jaringan CDN untuk parameter packet loss jauh lebih baik daripada

single server.Hal ini juga disebabkan kinerja tunggal single server terlalu berat

untuk melayani permintaan downling video dari 10 client secara bersama-sama. Dengan jaringan CDN kinerja akan lebih baik karena tugas server utama akan

0,00 0,05 0,10 0,15 0,20 0,25 0,30

D

ela

y

(s

)

Single Server Jaringan CDN

Single Server Algoritma LC Algoritma RR Algoritma WRR


(59)

lebih ringan dengan membagi tugas dengan server bayangan pada jaringan CDN yang telah dibangun.

Tabel 4.5 PerbandinganPacket Loss Single Server dan Jaringan CDN

Percobaan Packet Loss

Single Server LC RR WRR

1 42.72% 2.25% 12.54% 14.68% 2 43.95% 2.48% 13.53% 13.72% 3 43.89% 2.52% 13.26% 13.50% 4 43.88% 2.42% 13.26% 13.62% 5 43.79% 2.40% 13.40% 13.70% 6 43.92% 2.58% 13.51% 13.78% 7 43.95% 2.30% 13.58% 14.07% 8 43.76% 2.50% 13.52% 13.85% 9 45.28% 2.56% 13.58% 13.81% 10 43.95% 2.48% 13.26% 13.79% 11 43.82% 2.54% 12.98% 13.68% 12 43.93% 2.49% 12.51% 13.53% 13 43.95% 2.51% 13.71% 13.72% 14 43.85% 2.40% 13.55% 13.91% 15 43.92% 2.31% 13.31% 13.84% 16 43.84% 2.45% 13.55% 13.52% 17 43.79% 2.49% 13.42% 13.76% 18 44.01% 2.32% 13.28% 13.49% 19 44.10% 2.56% 13.49% 13.70% 20 49.56% 10.25% 20.16% 20.14% Rata-Rata 44.19% 2.84% 13.67% 14.09%

Untuk melihat pergerakan perubahan packet loss pada seetiap percobaan dapat dilihat pada Gambar 4.9 yang menunjukkan bahwa perubahan pada single

server dan ketiga algoritma Load Balancer stabil.Tetapi Grafik menunjukkan

bahwa besarnya nilai packet loss dari Single Server jauh lebih besar daripada jaringan CDN.


(60)

Gambar 4.9 KarateristikPacket Loss Single Server dan Jaringan CDN

Gambar 4.10 PerbandinganPacket Loss Single Server dan jaringan CDN

Menurut standard TIPHON (Telecommunicationsand Internet Protocol

HarmonizationOverNetworks) besar nilai rata-rata dari 20 kali percobaan single server masuk dalam kategori jelek/buruk (>25%). Sedangkan jaringan CDN untuk

algoritma Least Connection (LC) masuk dalam kategori bagus (<3%) dan untuk dua algoritma lainnya Round Robin (RR) dan Weighted Round Robin (WRR) masuk dalam kategori sedang (<15%).

0% 10% 20% 30% 40% 50% 60%

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

P

ac

ke

t L

os

s

Urutan Percobaan

LC RR WRR Single Server

0,00% 10,00% 20,00% 30,00% 40,00% 50,00%

P

ac

ke

t L

os

s

Single Server Jaringan CDN

Single Server Algoritma LC Algoritma RR Algoritma WRR


(61)

4.2.2.3 Throughput

Nilai perbandingan throughput dari 20 kali percobaanSingle Server dan jaringan CDN ditunjukkan pada Tabel 4.6.

Tabel 4.6 PerbandinganThroughput Single Server dan Jaringan CDN

Percobaan Throughput (bps)

Single Server LC RR WRR

1 164509.809 281036.167 253021.033 250925.400 2 160367.506 280361.367 250547.000 249443.600 3 160492.384 271078.000 251187.967 250129.100 4 146886.398 280532.133 250932.733 249870.900 5 154594.656 280970.400 250541.667 249427.400 6 160159.040 280150.767 250467.633 249657.033 7 159697.122 280792.267 246542.533 248756.800 8 160564.811 280110.833 247307.500 249474.933 9 159946.632 280046.567 249940.867 249601.067 10 155335.889 280215.300 251406.200 249725.900 11 160399.101 280173.833 251726.000 250564.500 12 154972.411 280384.867 253235.000 250367.867 13 154792.533 280321.900 249307.967 249985.167 14 154888.178 280545.567 250235.600 249315.800 15 155108.433 280665.633 250680.200 249042.700 16 155124.167 254785.739 250275.067 249894.300 17 160659.327 280420.433 250594.967 249595.567 18 154572.067 280672.000 251065.167 250291.967 19 159854.009 279955.400 250593.567 249471.467 20 153448.117 258499.800 231759.100 230527.033 Rata-Rata 157318.629 277585.949 249568.388 248803.425

Dari Tabel 4.6 dapat dilihat bahwa dengan menggunakan jaringan CDN maka nilai throughput akan semakin tinggi dan dengan demikian besarnya packet yang berhasil dikirim juga akan semakin bagus. Dapat dilihat bahwa besar nilai


(62)

rata-rata throughput setelah 20 kali percobaan diatas 200000 bps, dibandingakan dengan single server yang memiliki nilai throughput lebih kecil dari 200000 bps.

Gambar 4.11 menunjukkan perubahan nilai throughput dalam 20 kali percobaan.Dapat dilihat bahwa nilai throughput 20 kali percobaan pada single

server dibawah jaringan CDN.

Gambar 4.11Karateristik Perbandingan ThroughputSetiap Percobaan

Gambar 4.12 menunjukkan perbandingan throughput antara single server dan jaringan CDN.

Gambar 4.12 PerbandinganThroughput Single Server dan jaringan CDN 0 50000 100000 150000 200000 250000 300000

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

T hr o ug hp ut (bps ) Urutan Percobaan Single Server LC RR WRR 0 50000 100000 150000 200000 250000 300000 T hr o ug hp ut (bps )

Single Server Jaringan CDN

Single Server Algoritma LC Algoritma RR Algoritma WRR


(63)

Nilaithroughput jaringan CDN lebih tinggi daripada jaringan Single Server. Ini berarti dengan jaringan CDN maka kemampuan jaringan akan lebih meningkat dalam mentransmisikan bit-bit video.

Dari simulasi yang sudah dilakukan, nilai delay, packet loss, dan throughput dari algoritma least connection lebih baik daripada algorima round robin dan


(64)

BAB 5

KESIMPULAN DAN SARAN

5.1.Kesimpulan

Berdasarkan simulasi dan analisa data, adapun beberapa kesimpulan pada Tugas Akhir ini adalah sebagai berikut:

1. Dari hasil simulasi single server dan jaringan CDN, penggunaan jaringan CDN akan meningkatkan QoS dari jaringan internet, ini dibuktikan dengan nilai parameter delay, packet loss, dan throughtput yang semakin membaik dengan menggunakan algoritma jaringan CDN.

2. Nilai rata-rata 20 kali percobaan delay pada single server yaitu0.279 detik. Setelah penerapan jaringan CDN dengan Load Balancer ketiga algoritma maka delay yang diperoleh lebih baik. Dengan algoritma LC diperoleh delay 0,075 detik atau turun 0.204 detik. Dengan algoritma RR diperoleh delay 0,134 detik atau turun 0,145 detik. Dengan algoritma WRR diperoleh delay 0,087 detik atau turun 0,192 detik.

3. Nilai rata-rata 20 kali percobaan packet loss pada single server yaitu44,19%. Setelah penerapan CDN dengan Load Balancer ketiga algoritma diperoleh

packet loss yang lebih baik. Dengan algoritma LC diperoleh packet loss2.82% atau turun 41,35%. Dengan algoritma RR diperoleh packet loss13.95% atau turun 30,52%. Dan dengan algoritma WRR diperoleh packet loss14,09% atau turun 30,1%.

4. Nilai rata-rata 20 kali percobaan throughput pada single server yaitu157319 bps. Setelah penerapan jaringan CDN dengan Load Balancer ketiga algoritma


(65)

maka delay yang diperoleh lebih baik. Dengan algoritma LC diperoleh

throughput 277586 bps atau naik 43,33%. Dengan algoritma RR diperoleh

throughput 249568 bps atau naik 36,96%. Dan dengan algoritma WRR diperoleh throughput248803 bps atau naik 36,77%.

5. Dari ketiga algoritma Load Balancer least connection, round robin (RR), dan

weighted round robin (WRR) yang memiliki nilai rata-rata dari parameter

yang lebih baik adalah algoritma least connection.

5.2. Saran

Adapun saran untuk tugas akhir ini adalah:

1. Untuk tugas akhir selanjutnya dapat dilakukan dengan penambahan jumlah

client dan server.

2. Untuk tugas akhir selanjutnya dapat dilakukan penerapan Load Balancer dengan algoritma lain.


(66)

BAB 2

TINJAUAN PUSTAKA

2.1. Content Delivery Network (CDN)

CDN adalah sebuah sistem jaringan server untuk mendistribusikan konten yang ada dalam sebuah aplikasi/web ke berbagai pengakses/pengguna di berbagai belahan dunia agar data/konten yang dikirim dan diterima lebih cepat. CDN diperuntukkan untuk website atau aplikasi yang pengaksesnya dari berbagai belahan dunia. [1]

Server jaringan CDN terdistribusi secara global dengan tujuan untuk melayani konten ke pengguna dengan ketersediaan yang besar dan performa tinggi. CDN melayani sebagian besar konten di internet saat ini, termasuk objek web (teks, grafis dan script), obyek download (file media, software), aplikasi

(e-commerce, portal), media live streaming, on-demand streaming media, dan

jaringan sosial. [2]

Konsep CDN adalah dengan meletakkan beberapa server pada belahan dunia, sehingga server utama (asli) tidak akan langsung melayani permintaan web

request secara langsung melainkan melalui server-server pada jaringan CDN.

Keuntungannya, server asli tidak akan mengalami drop akibat banyaknya permintaan dari pengguna internet, dan efisiensi terhadap delay dan packet loss juga akan semakin baik [1]. Konsep dasarCDNdapat dilihat pada Gambar 2.1 [2].


(67)

Gambar 2.1 Konsep Dasar Content Delivery Network (CDN) [2]

2.2. Teknik-Teknik Pembagian Tugas CDN

Ada beberapa teknik pembagian tugas CDN, seperti GEO DNS, web

mapper , packet redirection, load balancer dan lain-lain.

2.2.1. GEO DNS

GEO DNS adalah salah satu penghantar kinerja CDN, sistem kerja dari GEO DNS dengan memetakan pengguna internet menurut wilayahnya. Kemudian akan dibangun CDN pada setiap wilayah yang telah dipetakan. Dengan pemetaan wilayah maka setiap client yang melakukan request akan dilayani oleh server terdekat dengan client tersebut. [3]

Original Server in North America

CDN distribution node

CDN Server in

South America CDN Server in Europe

CDN Server in Asia


(68)

2.2.2. Web Mapper

Sistem kerja dari Web Mapper pada CDN adalah dengan melakukan record atau rekam jejak client. Ketika clientmelakukan request website, maka DNS server akan melihat history dari client tersebut pada setiap server. Kemudian DNS server akan menghubungkan client dengan server terbaik untuk client yang melakukan request web menurut history.[4]

2.2.3. Packet Redirection

Prinsip kerja packet redirection adalah ketika client 1yang melakukan

request website telah terhubung dengan server 1 dan melakukan upload atau download fileakan terjadi delay. Ketika proses request website, jikadelay dianggap

terlalu tinggi, maka server dapat meminta server lain melanjutkan transaksi packet yang sedang di download, sehingga kinerja pengiriman paket dapat lebih baik. Masing-masing server akan melakukan pertukaran informasi terkait kinerja server, baik secara langsung maupun melalui pihak ketiga serper DNS server. [4]

2.3. Load Balancer

Load balancer merupakan sebuah perangkat untuk mendistribusikan beban

pekerjaan secara merata melalui beberapa node.Peran yang paling penting dari

Load Balancer yaitu untuk menyediakan sebuah layanan dari beberapa kumpulan

server yang berada sebagai back-end dari layanan servernya.Untuk layanan internet, Load Balancer biasanya merupakan sebuah program perangkat lunak yang terhubung pada port dimana client eksternal tersambung untuk mengakses layanan.Load Balancer meneruskan request dari salah satu server dari backend


(69)

server, yang biasanya di-replay kembali ke load balancer.Hal ini memungkinkan

Load Balancer untuk me-replay request dari client tanpa client tersebut

mengetahui tentang pemisahan fungsi internal dari layanan server yang ada.Hal ini juga dapat mencegah client berhubungan langsung dengan server backend, yang mungkin memiliki manfaat keamanan dengan menyembunyikan struktur jaringan internal dan mencegah serangan pada jaringan.[5]

Ada beberapa algoritma yang digunakan pada Load Balancer , antara lain: [6]

1. Round Robin (rr), yaitu algoritma penjadwalan yang memperlakukan semua real server sama menurut jumlah koneksi atau waktu respon.

2. Weighted Round Robin (wrr), penjadwalan ini memperlakukan real server

dengan kapasitas proses yang berbeda. Masing-masing real server dapat diberi bobot bilangan integer yang menunjukkan kapasitas proses, dimana bobot awal adalah 1.

3. Least Connection (lc), merupakan algoritma penjadwalan yang mengarahkan

koneksi jaringan pada server aktif dengan jumlah koneksi yang paling sedikit. Penjadwalan ini termasuk salah satu algoritma penjadwalan dinamik, karena memerlukan perhitungan koneksi aktif untuk masing masing real server secara dinamik. Metode penjadwalan ini baik digunakan untuk melancarkan pendistribusian ketika request yang datang banyak.

4. Weighted Least Connection (wlc), merupakan sekumpulan penjadwalan least connection dimana dapat ditentukan bobot kinerja pada masing-masing real server. Server dengan nilai bobot yang lebih tinggi akan menerima persentase


(1)

KATA PENGANTAR

Puji dan syukur kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan Tugas Akhir ini dengan baik dan tepat waktu.

Tugas Akhir ini berjudul ”ANALISIS KINERJA KONTEN DELIVERY NETWORK YANG MENGGGUNAKAN LOAD BALANCER”. Tugas Akhir ini merupakan salah satu syarat untuk memperoleh gelar kesarjanaan pada Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.

Dalam menyelesaikan Tugas Akhir ini penulis tidak terlepas dari perhatian dan dukungan keluarga oleh karena itupenulis mempersembahkan Tugas Akhir ini kepada kedua orang tua tersayang Benar barus dan Ruslina br. Sembiring sebagai orang tua dan kedua abang John Barus, Anton Barus, ST. Dan kakak tercinta Dewi Barus, SE. Dalam kesempatan ini juga penulis menyampaikan rasa terimakasih yang sebesar – besarnya kepada :

1. Bapak Suherman, Ph.D selaku dosen pembimbing Tugas Akhir atas

bimbingan, dukungan dan motivasi kepada penulis.

2. Bapak Ir. Kasmir Tanjung selaku Dosen Pembimbing Akademik selama

mengikuti perkuliahan.

3. Bapak Ir. Surya Tarmizi Kasim, M.Si selaku Ketua Departemen Teknik

Elektro Fakultas Teknik Universitas Sumatera Utara.

4. Bapak Rahmad Fauzi, ST, MT selaku Sekretaris Departemen Teknik


(2)

5. Bapak Ir. M. Zulfin, MT selaku dosen pembanding yang membantu dalam penyempurnaan Tugas Akhir ini.

6. IbuNaema Mubarakah, ST, MT selaku dosen pembanding yang membantu

dalam penyempurnaan Tugas Akhir ini.

7. Seluruh staf pengajar di Departemen Teknik Elektro Fakultas Teknik

Universitas Sumatera Utara yang telah mengajar dan mendidik penulis.

8. Seluruh karyawan di Departemen Teknik Elektro Fakultas Teknik Elektro

Universitas Sumatera Utara.

9. Teman – teman Ekstensi Teknik Telekomunikasi angkatan 2013

10. Semua pihak yang tidak dapat disebutkan satu persatu oleh penulis, yang selalu membantu dalam menyelesaikan Tugas Akhir ini.

Penulis menyadari bahwa Tugas Akhir ini masih sangat jauh dari sempurna, baik dari segi materi maupun cara penyajiannya. Oleh karena itu, penulis menerima saran dan kritik dari pembaca yang sifatnya membangun demi kesempurnaan Tugas Akhir ini.Akhir kata, penulis berharap agar Tugas Akhir ini dapat bermanfaat bagi pembaca dan penulis.

Medan, Maret 2016 Penulis,


(3)

DAFTAR ISI

ABSTRAK ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... v

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... viii

I. PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 2

1.3 Tujuan Penelitian ... 3

1.4 Manfaat Penelitian ... 3

1.5 Batasan Masalah ... 3

1.6 Metode Penelitian ... 4

1.7 Sistematika Penulisan ... 4

II. TINJAUAN PUSTAKA ... 6

2.1 Content Delivery Network (CDN) ... 6

2.2 Teknik-Teknik Pembagian Tugas CDN ... 7

2.2.1 GEO DNS ... 8

2.2.2 Web Mapper ... 8

2.2.3 Packet Redirection ... 8

2.3 Load Balancer ... 8

2.3.1 Algoritma Least Connection ... 10

2.3.2 Algoritma Round Robin ... 11

2.3.3 Algoritma Weighted Round Robin ... 12

2.4 Network Simulator 2 (NS-2) ... 13


(4)

III. PERANCANGAN SIMULASI ... 17

3.1 Perancangan Alur Penelitian ... 17

3.2 Spesifikasi Perangkat ... 18

3.2.1 Perangkat Keras ... 18

3.2.2 Perangkat Lunak ... 18

3.3 Spesifikasi Trafik Simulasi CDN ... 19

3.4 Spesifikasi Fisik Simulasi CDN ... 19

3.5 Implementasi Sistem Load Balancer ... 20

3.6 Parameter Evaluasi ... 22

3.6.1 Delay (Letency) ... 22

3.6.2 Packet Loss ... 23

3.6.3 Throughput ... 23

3.7 Langkah Pelaksanaan Simulasi ... 24

IV. HASIL SIMULASI DAN ANALISIS DATA ... 26

4.1 Umum ... 26

4.2 Hasil Pengujian ... 26

4.2.1 Pengujian Jaringan Tanpa CDN ... 26

4.2.2.1 Delay ... 26

4.2.2.2 Packet Loss ... 28

4.2.2.3 Throughput ... 30

4.2.2 Penerapan Jaringan CDN ... 32

4.2.2.1 Delay ... 32

4.2.2.2 Packet Loss ... 34

4.2.2.3 Throughput ... 37

V. KESIMPULAN DAN SARAN ... 40

5.1 Kesimpulan ... 40

5.2 Saran ... 41

DAFTAR PUSTAKA LAMPIRAN


(5)

DAFTAR GAMBAR

Gambar 2.1 Konsep Dasar Content Delivery Network (CDN) ... 7

Gambar 2.2 Arsitektur dasar NS-2 ... 13

Gambar 2.3 Struktur framework EvalVid ... 14

Gambar 3.1 Diagram Alir Rancangan Penelitian ... 17

Gambar 3.1Network Configuration ... 20

Gambar 3.2Implementasi Load Balancer pada Jaringan CDN ... 21

Gambar 3.4 Urutan Pelaksanaan Simulasi ... 24

Gambar 4.1 Karateristik Delay Single Server ... 27

Gambar 4.2 Karateristik Rata-Rata Delay Single Server ... 28

Gambar 4.3 Karateristik Packet Loss Single Server ... 29

Gambar 4.4 Karateristik Rata-Rata Packet Loss Single Server ... 30

Gambar 4.5 Karateristik Throughput Single Server ... 31

Gambar 4.6 Karateristik Rata-Rata Throughput Single Server ... 32

Gambar 4.7KarateristikDelay Single Server dan Jaringan CDN ... 33

Gambar 4.8Perbandingan DelaySingle Server dan Jaringan CDN ... 34

Gambar 4.9KarateristikPacket Loss Single Server dan Jaringan CDN ... 36

Gambar 4.10Perbandingan Packet Loss Single Server dan jaringan CDN ... 36

Gambar 4.11KarateristikThroughputSingle Server dan Jaringan CDN ... 38


(6)

DAFTAR TABEL

Tabel 3.1: Spesifikasi Trafik Video ... 19

Tabel 3.2One-Way Delay (Letency) versi TIPHON ... 22

Tabel 3.3 Paket Loss versi TIPHON ... 23

Tabel 4.1 Data Delay Tanpa CDN (Single Server) ... 27

Tabel 4.2 Data Packet Loss Tanpa CDN (Single Server) ... 28

Tabel 4.3 Data Throughput Tanpa CDN (Single Server) ... 30

Tabel 4.4Perbandingan Delay Single Server dan Jaringan CDN ... 33

Tabel 4.5Perbandingan Packet Loss Single Server dan Jaringan CDN ... 35