Transmission Control Protocol (TCP) dan User Datagram Protocol (UDP) adalah dua lapisan transport standar yang digunakan dengan protokol internet (IP) .
TDP dan UDP menggunakan header sebagai bagian dari pengemasan data pesan untuk transfer melalui koneksi jaringan. Header TCP dan header UDP masing-masing berisi satu set parameter yang disebut field yang didefinisikan oleh spesifikasi teknis protokol.
Format Header TCP
Setiap header TCP memiliki sepuluh bidang yang diperlukan dengan total 20 byte (160 bit ) dalam ukuran. Mereka juga bisa opsional termasuk bagian data tambahan hingga 40 byte dalam ukuran.
Ini adalah tata letak header TCP:
- Nomor port TCP sumber (2 byte)
- Nomor port TCP tujuan (2 byte)
- Nomor urut (4 byte)
- Nomor pengakuan (4 byte)
- Transfer data TCP (4 bit)
- Data yang dicadangkan (3 bit)
- Bendera kontrol (hingga 9 bit)
- Ukuran jendela (2 byte)
- TCP checksum (2 byte)
- Penunjuk urgen (2 byte)
- Data opsional TCP (0-40 byte)
TCP menyisipkan bidang tajuk ke dalam aliran pesan dalam urutan yang tercantum di atas.
- Sumber dan tujuan nomor port TCP adalah titik akhir komunikasi untuk mengirim dan menerima perangkat.
- Pengirim pesan menggunakan nomor urut untuk menandai pemesanan sekelompok pesan. Baik pengirim dan penerima menggunakan bidang nomor pengakuan untuk mengkomunikasikan nomor urut pesan yang baru saja diterima atau diharapkan untuk dikirim.
- Bidang mengimbangi data menyimpan ukuran total header TCP dalam kelipatan empat byte. Sebuah header yang tidak menggunakan bidang TCP opsional memiliki offset data sebesar 5 (mewakili 20 byte), sementara header yang menggunakan bidang opsional berukuran maksimum memiliki offset data sebesar 15 (mewakili 60 byte).
- Data yang dicadangkan dalam header TCP selalu memiliki nilai nol. Bidang ini melayani tujuan menyelaraskan ukuran header total sebagai kelipatan dari empat byte (penting untuk efisiensi pemrosesan data komputer).
- TCP menggunakan seperangkat enam standar dan tiga flag kontrol diperpanjang (masing-masing bit individu yang mewakili on atau off ) untuk mengelola aliran data dalam situasi tertentu. Satu bit flag, misalnya, memulai logika reset koneksi TCP. Operasi rinci bidang-bidang ini berada di luar cakupan artikel ini.
- Pengirim TCP menggunakan nomor yang disebut ukuran jendela untuk mengatur berapa banyak data yang mereka kirim ke penerima sebelum meminta balasan sebagai imbalan. Jika ukuran jendela menjadi terlalu kecil, transfer data jaringan akan menjadi terlalu lambat, sementara jika ukuran jendela menjadi terlalu besar, tautan jaringan dapat menjadi jenuh (tidak dapat digunakan untuk aplikasi lain) atau penerima mungkin tidak dapat memproses data yang masuk dengan cepat cukup (juga menghasilkan kinerja yang lambat). Algoritma Windowing yang dibangun ke dalam protokol secara dinamis menghitung nilai ukuran dan menggunakan bidang header TCP ini untuk mengoordinasikan perubahan antara pengirim dan penerima.
- Nilai checksum di dalam header TCP dihasilkan oleh pengirim protokol sebagai teknik matematika untuk membantu penerima mendeteksi pesan yang rusak atau dirusak.
- Bidang pointer mendesak sering diatur ke nol dan diabaikan, tetapi dalam hubungannya dengan salah satu bendera kontrol, itu dapat digunakan sebagai offset data untuk menandai bagian dari pesan sebagai membutuhkan pemrosesan prioritas.
- Penggunaan data TCP opsional melampaui lingkup artikel ini tetapi termasuk dukungan untuk pengenalan khusus dan algoritma penskalaan jendela.
Format Header UDP
Karena UDP secara signifikan lebih terbatas dalam kemampuan daripada TCP, headernya jauh lebih kecil. Header UDP berisi 8 byte, dibagi ke dalam empat bidang wajib berikut:
- Nomor port sumber (2 byte)
- Nomor port tujuan (2 byte)
- Panjang data (2 byte)
- UDP checksum (2 byte)
UDP menyisipkan kolom tajuk ke dalam aliran pesannya dalam urutan yang tercantum di atas.
- Sumber dan tujuan Nomor port UDP adalah titik akhir komunikasi untuk mengirim dan menerima perangkat.
- Bidang panjang dalam UDP mewakili ukuran total setiap datagram termasuk header dan data. Kolom ini berkisar dalam nilai dari minimal 8 byte (ukuran header yang diperlukan) ke ukuran di atas 65.000 byte.
- Serupa dengan TCP, checksum UDP memungkinkan penerima untuk memeriksa secara silang data yang masuk untuk setiap bit pesan yang rusak.