Transmission Control Protocol TCP

18

2.6. TCPIP

TCPIP adalah suatu protokol yang memungkinkan terjadinya komunikasi antar komputer yang memiliki perbedaan karakteristik dari segi hardware ataupun software . TCPIP merupakan protokol yang paling sering digunakan dalam operasi jaringan. TCPIP terdiri dari dua protokol utama, yaitu Transmission Control Protocol dan Internet Protocol[26].

2.6.1. Transmission Control Protocol TCP

TCP Transmission Control Protocol adalah protokol process-to- process program-to-program. TCP seperti halnya UDP, juga menggunakan port number. Tidak seperti UDP, TCP termasuk dalam protokol connection oriented, yang menciptakan koneksi virtual antara dua Gambar 2. 9 Lapisan Protokol TCPIP[26] 19 TCP untuk mengirim data. TCP juga menggunakan mekanisme flow dan error control di level transport[28]. Karateristik TCP Meskipun software TCP selalu melihat segment yang di kirim maupun diterima, tidak ada field yang berisi nomor segment di header segment . Namun ada dua field yang disebut sequence number dan acknowledgement number . Dua field tersebut merujuk pada byte number dan bukan segment number. TCP memberi nomor pada setiap byte data yang dikirim dalam sebuah koneksi. Penomoran tersebut bebas dilakukan pada setiap arah. Ketika TCP menerima byte data dari proses, data tersebut akan dimasukkan ke dalam sending buffer dan penomoran data dimulai. Penomoran tidak harus dimulai dari 0. TCP membuat nomor secara acak antara 0 sampai 2 32 -1 untuk penomoran pertama pada byte data. Sebagai contoh, jika nomor acak yang dipilih adalah 1057 dan total data yang dikirim adalah 6000 byte, byte tersebut akan diberi nomor dari 1057 sampai 7056. Penomoran tersebut nantinya akan digunakan untuk flow dan error control[28]. Setelah semua byte diberi nomor, TCP membuat sequence number pada setiap segment yang dikirim. Sequence number pada setiap segment adalah nomor dari byte pertama yang dibawa segment tersebut. 20 Flow Control Perbedaan TCP dengan UDP adalah pada TCP terdapat flow control. Penerima receiver data akan mengontrol jumlah data yang akan dikirim oleh pengirim. Hal ini dilakukan untuk mencegah penerima mengalami kebanjiran data. Penomoran yang dilakukan TCP memungkinan TCP untuk menggunakan flow control berorientasi byte[28]. Error Control Untuk menyediakan layanan yang baik, TCP menggunakan mekanisme error control. Error control terdiri dari sebuah segment sebagai unit data untuk mendeteksi kesalahan. Error control merupakan byte- oriented [28]. Congestion Control Tidak seperti UDP, TCP memperhitungkan kongesi pada jaringan. Jumlah data yang dikirim oleh pengirim tidak hanya dikendalikan oleh penerima flow control, tetapi juga ditetapkan oleh tingkat kongesi pada jaringan[28]. Congestion Policy Kebijakan umum TCP untuk menangani congestion didasarkan pada tiga tahap : slow start, congestion avoidance, and congestion detection. Slow Start : Algoritma ini didasarkan pada gagasan bahwa ukuran kemacetan window cwnd dimulai dengan satu ukuran segmen maksimum 21 MSS. MSS adalah ditentukan selama pembentukan koneksi dengan menggunakan opsi dengan nama yang sama. Congestion avoidance : Untuk menghindari kemacetan sebelum itu terjadi, seseorang harus memperlambat pertumbuhan eksponensial ini. TCP mendefinisikan algoritma lain disebut congestion avoidance. Bila ukuran jendela kemacetan mencapai slow-start ambang batas, lambat-start fase berhenti dan fase aditif dimulai. Dalam algoritma ini, setiap kali seluruh window segmen diakui satu putaran. Congestion detection : Multiplicative turun ketika congestion terjadi dan congestion window size must be decreased. Satu-satunya cara pengirim dapat menebak kemacetan yang memiliki terjadi adalah dengan kebutuhan untuk memancarkan kembali segmen. Terjadinya Congestion control ketika : - Adanya time out, ini adalah alasan yang kuat terjadinya congestion. Kemungkinan segment di drop pada jaringan tersebut, dan tidak ada berita tentan segmen yang dikirim - If three ACKs are received, adalah kemungkinan yang rendah. Segmen mungkin telah drop, tetapi beberapa segment telah tiba. Hal ini disibut dengan fast transmission and fast recovery. 22 Gambar 2. 10 Congestion Control Sebagai contoh maksimum window size adalah 32 segment. threshold dibuat 16 segment setengah dari maksimum window size. Dalam fase slow start, window size dimulai dari 1 dan bertambah dengan cepat sampai mencapai threshold. setelah mencapai threshold, prosedur congestion avoidance mengijinkan window size bertambah secara teratur sampai sampai waktu habis atau maximum window size tercapai. Pada gambar 2.10, time out terjadi ketika window size 20. Pada saat ini, prosedur multiplicative decrease mengambil alih dan mengurangi threshold sampai setengah dari window size sebelumnya. window size sebelumnya adalah 20 saat time out terjadi jadi threshold yang baru adalah 10. TCP kembali ke slow start dan dimulai dengan window size 1, dan TCP akan melakukan prosedur congestion avoidance ketika threshold yang baru tercapai. ketika window size 12 , 3 ACK terjadi. Prosedur multiplicative decrease akan mengambil alih kembali. threshold kemudian akan berubah menjadi 6 dan TCP akan mengalami fase additive 23 increase. TCP akan tetap pada fase ini sampai time out atau 3 ACK yang lain terjadi.

2.6.2. IP