37 tidak menerima ACK. Saat cwnd lebih besar atau sama dengan
nilai ssthresh, koneksi memasuki fase congestion avoidance. Jika kapasitas jaringan dapat dipenuhi sebelum cwnd lebih besar dari
ssthresh, makagateway akan memberi sinyal kongesti dengan membuang segmen yang tidak tertampung pada gateway dan
TCP akan memasuki fase retransmit setelah tiga ACK duplikat dikirimkan.Pada fase inisialisasi Slow start semacam ini terlihat
bahwa nilai CongWin meningkat dua kali lipat setiap RTT.
2.4.6 Congestion Avoidance
Transmission rate akan meningkat sesuai dengan fase slow start, sampai terdeteksi paket yang hilang atau receiver advertised
window rwnd yang terbatas, atau slow start threshold sshthresh telah tercapai. Nilai awal dari sshthresh ditetapkan dengan nilai yang
besar, dan nilai sshthresh akan dikurangi jika terjadi congestion. Jika terjadi paket yang hilang, maka TCP akan mengasumsikan bahwa
telah terjadi congestion dan akan mengambil langkah – langkah
untuk mengurangi beban dari jaringan. Langkah yang diambil ini bergantung pada fase congestion avoidance TCP. Setelah sshthresh
tercapai, TCP akan berubah dari algoritma slow start ke phase congestion avoidance linear growth. Pada point ini, window size
akan meningkat sebesar 1 segmen untuk setiap RTT. Meskipun algoritma ini disebut dengan slow start, tetapi peningkatan
38 congestion window cukup agresif, lebih agresif dari phase
congestion avoidance.
Gambar 2.14CongestionAvoidance Pada
fase congestion
avoidance prosesnya
dapat digambarkan seperti laju pertumbuhan linear, sedangkan pada fase
slow-start prosesnya dapat digambarkan seperti laju pertumbuhan eksponensial.
2.4.7 Fast Retransmit
Fast Retransmit merupakan peningkatan terhadap TCP dalam rangka mengurangi waktu tunggu oleh pengirim sebelum me-
retransmit segmen yang loss. TCP pengirim akan menggunakan pencatat waktu untuk mengetahui segmen yang hilang. Jika
acknowledgement tidak diterima untuk segmen tertentu dalam jangka waktu tertentu fungsi yang menentukan estimasi round trip
delay time, maka pengirim akan menggangap segmen tersebut
39 hilang dalam jaringan dan akan dilakukan retransmit untuk segmen
yang hilang. Duplikat acknowledgement merupakan dasar untuk
mekanisme fast retransmit, yang akan bekerja sebagai berikut : setelah menerima paket misalnya paket dengan sequence number 1,
maka penerima akan mengirimkan acknowledgement dengan menambahkan 1 pada sequence number yaitu sequence number 2,
yang berarti bahwa penerima sudah menerima paket dengan sequence number 1 dan mengharapkan paket dengan sequence
number 2 dari pengirim. Kemudian diasumsikan bahwa ketiga paket selanjutnya hilang. Sementara itu, penerima akan menerima paket
dengan sequence number 5 dan 6. Setelah menerima paket dengan sequence number 5, penerima akan mengirimkan acknowledgement
tapi hanya untuk paket dengan sequence number 2. Ketika penerima menerima paket dengan sequence number 6, penerima akan
mengirimkan acknowledgement tapi hanya untuk paket dengan sequence number 2. Karena pengirim menerima lebih dari 1
acknowledgement untuk paket dengan sequence number yang sama dalam hal ini paket dengan sequence number 2. Hal ini disebut
dengan duplikat acknowledgement. Peningkatan pada fast retransmit akan bekerja sebagai
berikut : jika pengirim TCP menerima sejumlah acknowledgement tertentu yang sama sebanyak 3 kali, pengirim dapat mengasumsikan
40 bahwa paket dengan sequence number yang lebih tinggi akan di-
drop dan bukan tiba karena rusak. Pengirim akan melakukan retransmit paket yang diduga di-drop sebelum menunggu batas
retransmission timer berakhir.
Gambar 2.15Fast Retransmit dan Fast Recovery
2.5 TCP RENO
TCP Reno merupakan TCP yang dirancang oleh Van Jacobson, TCP Reno ini memiliki empat fase untuk menangani congestion control :
2.5.1 Slow Start
Slow start merupakan fase pertama TCP pada setiap awal sambungan koneksi dan setiap kali packet terdeteksi loss.
Proses fase Slow start :