TCP Flow control Round Trip Time dan Timeout

30 satu arah tetapi pada arah lain tidak. Host B dapat mengirim data ke A.  Ketika B selesai mengirimkan datanya, B mengirim sebuah FIN segmen untuk menandakan bahwa host ingin memutuskan koneksi.  A menjawab permintaan B dengan mengirim sebuah ACK segmen. Gambar 2.9 TCP ConnectionTermination

2.4.2 TCP Flow control

Field window size pada TCP header berfungsi untuk mekanisme Flow control koneksi. Tujuan dari field window size tersebut adalah memastikan komputer pengirim tidak mengirim data 31 terlalu banyak dan terlalu cepat yang bisa menyebabkan hilangnya data pada komputer penerima karena tidak terproses. Metode Flow control yang digunakan TCP ini ada dua biasa disebut stop and wait dan sliding window. Stop and Wait Flow Control Proses kerja atau prinsip kerja dari stop and wait adalah sebagai berikut: Transmitter mengirimkan deretan data dalam bentuk frame ke reciver. Setelah receiver telah menerima frame yang dikirmkan tadi, maka receiver akan mengirimkan balasan ke transmitter bahwa frame sudah diterima di receiver dan receiver siap menerima deretan frame selanjutnya. Transmitter tidak akan mengirimkan deretan frame berikutnya jika receiver belum memberikan balasan ACK. Receiver dapat menghentikan pengiriman frame dengan cara tidak memberikan balasan, maka transmitter juga tidak akan mengirimkan deretan frame lagi pada receiver. Sliding Window Flow Control Sliding window adalah sebuah mekanisme pengiriman paket- paket data dalam suatu ukuran window secara terus-menerus dimana 32 transmitter dapat mengirimkan blok-blok frame lebih banyak lalu setelah beberapa frame telah terkirim, barulah receiver memberikan balasan, tidak seperti stop and wait blok-blok data dikirimkan satu persatu dan mengirimkannya menunggu balasan jika blok data tersebut sudah sampai di receiver dan receiver sudah memberikan balasan. Konsep umumnya window ini akan bergeser secara otomatis sesuai dengan ack yang diterimanya. Pada sliding window terdapat dua algoritma, yakni go back n dan selective repeat. Perbedaan mendasar dari algoritma ini adalah pada pengiriman paket yang loss. Gambar 2.10 Ilustrasi Go Back N 33 Gambar 2.11 Ilustrasi Selective Repeat

2.4.3 Round Trip Time dan Timeout

Round Trip Time adalah waktu yang dibutuhkan oleh client untuk mengirimkan request dan sebuah server untuk mengirimkan balasan respon melalui jaringan. Segmen pada TCP yang dikirim dapat hilang di sepanjang jalur komunikasi hal tersebut dikarenakan terjadinya congestion. TCP harus dapat memperbaiki situasi ini dan mempelajari kondisi jaringan. Setiap TCP mengirimkan segmen, pengirim akan menghitung waktu untuk mengetahui berapa lama waktu yang dibutuhkan untuk mendapatkan ack dari segmen yang dikirim tadi. Waktu ini dikenal dengan retransmissions timer. Jika acknowledgement diterima melebihi waktu yang ditentukan maka akan terjadi timeout. Waktu round trip time bergantung pada lalu lintas di jaringan dan ketersediaan jalur. Perhitungan RTT : 34 RTT i = α RTT i-1 + 1 – α rtt i Keterangan :  RTT i adalah waktu estimasi rata – rata round trip time setelah paket ke-i.  Nilai α = 0.875 menurut algoritma Jacobson.  rtt i adalah waktu saat paket ke-i mulai dikirim hingga acknowledgement paket ke-i diterima. Ketika sebuah RTT baru selesai di kalkulasi maka akan dimasukan perhitungan diatas untuk mendapatkan rata-rata RTT pada koneksi tersebut dan prosedur itu akan terus dilakukan tiap kali ada kalkulasi RTT baru. Pengkalkulasian ini digunakan untuk menetapkan waktu timeout atas paket yang dikirimkan. Perhitungan timeout : RTO i = RTT i-1 + 4 MDEV i-1 Keterangan :  MDEVi-1 adalah rata – rata deviasi yang dihitung dengan rumus : MDEVi = 1- ρ MDEVi-1 + ρ | rtti – RTTi-1 | dimana nilai ρ = 0.25  RTT i adalah waktu estimasi rata – rata round trip time setelah paket ke-i.

2.4.4 Additive-Increase, Multiplicative-Decrease