19 poin oleh GN⁺ 2025-11-16 | Belum ada komentar. | Bagikan ke WhatsApp
  • TCP (Transmission Control Protocol) adalah protokol inti internet yang memungkinkan transmisi data yang andal dan berurutan bahkan di lingkungan jaringan yang tidak stabil
  • Sementara IP hanya bertugas mengirimkan data antar host, TCP menangani komunikasi antarproses berbasis port serta pemulihan kesalahan, retransmisi, dan pengendalian urutan
  • Melalui flow control dan congestion control, TCP menyesuaikan pengiriman agar tidak melampaui batas buffer penerima atau bandwidth jaringan
  • Dengan contoh server TCP sederhana dan server HTTP yang diimplementasikan dalam bahasa C, dijelaskan secara konkret proses pembuatan socket, bind, listen, penerimaan koneksi, serta kirim-terima data
  • Struktur internal TCP seperti nomor sequence·ACK, window, checksum, dan flag (SYN/ACK/FIN/RST) merupakan fondasi utama yang memungkinkan internet modern bekerja secara stabil

Kebutuhan dan Peran TCP

  • IP hanya menangani pengiriman paket antar host, sedangkan untuk komunikasi antarproses dibutuhkan lapisan transport seperti TCP/UDP
    • Alamat IP diibaratkan sebagai ‘gedung’, dan port sebagai ‘apartemen’, sehingga tiap aplikasi berkomunikasi dengan melakukan bind ke port
  • TCP menyembunyikan ketidakstabilan jaringan seperti kehilangan paket, duplikasi, dan perubahan urutan, lalu menjamin keandalan dengan retransmisi dan checksum
  • Router tetap sederhana, dan keandalan diproses di kedua ujung komunikasi, sehingga kompleksitas infrastruktur jaringan dapat dikurangi
  • Berkat struktur ini, layanan internet utama seperti HTTP, SMTP, dan SSH dapat berjalan dengan stabil

Flow Control dan Congestion Control

  • Pihak penerima menyimpan data sementara melalui receive buffer di kernel, dan ukuran buffer diatur dengan net.ipv4.tcp_rmem
  • Pihak pengirim menerima informasi jumlah data yang dapat diterima pihak penerima melalui field window, lalu menyesuaikan volume pengiriman
  • Untuk mencegah congestion akibat perbedaan bandwidth di seluruh jaringan, TCP mengadopsi algoritme congestion control
    • Mekanisme back-off ditambahkan setelah insiden congestion collapse pada tahun 1986

Contoh Server TCP dan Server HTTP

  • Server echo TCP dasar yang ditulis dalam bahasa C menerima input dari klien lalu mengirimkannya kembali dengan tambahan “you sent:”
    • Menggunakan Berkeley sockets API seperti socket(), bind(), listen(), accept(), send(), dan recv()
    • Saat server berada dalam sleep(), data dari klien menunggu di receive buffer dan kemudian diproses secara berurutan
  • Dalam contoh server HTTP/1.1 sederhana, server menerima permintaan melalui koneksi TCP lalu mengirim header HTTP/1.1 200 OK beserta isi respons
    • Jumlah permintaan dihitung dengan i, dan saat menjalankan curl localhost:8080, respons ditampilkan dalam bentuk “[1] Yo, I am a legit web server”

Struktur Segmen TCP dan Field Inti

  • Segmen TCP terdiri dari port sumber·tujuan, nomor sequence, nomor ACK, ukuran window, checksum, dan flag
    • Port dialokasikan masing-masing 16 bit sehingga dapat menggunakan hingga 64K port
    • Koneksi diidentifikasi dengan 5-tuple (protokol, IP sumber, port sumber, IP tujuan, port tujuan)
  • Nomor sequence menunjukkan rentang byte yang dikirim, sedangkan nomor ACK menunjukkan byte yang telah diterima
    • Jika ada data yang hilang, ACK akan berhenti pada titik tersebut lalu diperbarui menjadi cumulative ACK setelah retransmisi
  • Bit flag mengendalikan status koneksi
    • SYN/ACK membentuk koneksi melalui 3-way handshake
    • FIN mengakhiri koneksi melalui 4-way handshake
    • RST langsung memutus koneksi saat terjadi penghentian abnormal atau kesalahan
  • Field window menunjukkan jumlah data yang dapat diterima, dan status buffer seperti rb131072, tb16384 dapat diperiksa dengan perintah ss
  • Checksum melakukan deteksi kesalahan dengan penjumlahan per unit 16 bit di dalam segmen

Kesimpulan

  • TCP menjamin keandalan, urutan, dan integritas, serta membantu aplikasi tetap berjalan normal bahkan di lingkungan internet yang tidak stabil
  • Beberapa dekade lalu mengirim beberapa KB saja sulit, tetapi kini streaming 4K sudah menjadi hal biasa
  • Ketelitian desain dan implementasi TCP yang memungkinkan komunikasi stabil inilah yang menjadi dasar pertumbuhan internet yang berkelanjutan

Belum ada komentar.

Belum ada komentar.