Saat Anda membuka sebuah halaman web, data yang Anda terima tidak datang lewat satu kabel lurus. Ia melewati Wi-Fi rumah, jaringan operator seluler atau ISP, kabel laut, lalu jaringan pusat data tempat website itu disimpan. Semua jaringan itu dimiliki pihak berbeda, memakai perangkat berbeda, dan tidak ada yang menjamin datanya selamat. Paket bisa tertunda, datang tidak berurutan, bahkan hilang di tengah jalan.
Meski begitu, halaman yang tampil di layar Anda tetap utuh. Yang membuat hal ini mungkin adalah TCP/IP, aturan komunikasi bersama yang dipakai seluruh perangkat di internet. Di dalamnya ada TCP, protokol yang bertugas memastikan data tiba lengkap dan berurutan. Artikel ini membahas apa itu TCP/IP, bagaimana TCP dan IP berbagi tugas, empat lapisannya, cara kerjanya, serta kapan UDP lebih tepat dipakai daripada TCP.
Apa Itu TCP/IP? Satu Nama untuk Sekumpulan Protokol
TCP/IP adalah keluarga protokol (protocol suite) yang mengatur cara perangkat di internet mengalamatkan, mengirim, dan menerima data. Namanya diambil dari dua anggota terpentingnya. Kepanjangan TCP/IP adalah Transmission Control Protocol dan Internet Protocol.
Protokol sendiri berarti kesepakatan tentang format dan urutan pesan. Dua perangkat hanya bisa saling memahami kalau keduanya mengikuti kesepakatan yang sama, seperti dua orang yang berbicara dalam bahasa yang sama. Laptop Windows, iPhone, router rumah, dan server Linux bisa saling bertukar data karena semuanya "berbicara" TCP/IP.
Perlu diperhatikan bahwa TCP/IP bukan hanya dua protokol. Di dalam keluarga ini ada puluhan anggota lain. Contohnya UDP untuk pengiriman cepat, ICMP yang dipakai perintah ping, DNS untuk menerjemahkan alamat website menjadi IP, dan HTTP untuk halaman web. Karena itu, kalau ada soal yang menanyakan "internet bekerja dengan protokol komunikasi yang disebut apa", jawabannya adalah TCP/IP.
Fungsi TCP/IP dan Contohnya Sehari-hari
Secara ringkas, fungsi TCP/IP bisa dibagi menjadi lima tugas yang dikerjakan bersamaan setiap kali Anda memakai internet:
- Memberi alamat: setiap perangkat mendapat alamat IP, sehingga paket tahu ke mana harus pergi.
- Mencari rute antarjaringan: router meneruskan paket dari satu jaringan ke jaringan berikutnya sampai tiba di tujuan.
- Memecah dan menyusun ulang data: fungsi TCP yang memotong berkas besar menjadi segmen, lalu merakitnya kembali di tujuan.
- Menjamin data tiba utuh: TCP meminta konfirmasi, mengirim ulang yang hilang, dan menyesuaikan kecepatan kirim.
- Mengantar data ke aplikasi yang tepat: nomor port memisahkan data browser dari data WhatsApp di ponsel yang sama.
Contoh TCP/IP dalam keseharian mudah ditemukan. Membuka website memakai HTTPS di atas TCP, mengirim email memakai SMTP, dan mengunggah berkas ke server bisa memakai FTP. Panggilan video juga berjalan di atas TCP/IP, tetapi umumnya memilih UDP.
Apa Itu TCP dan Apa Bedanya dengan IP?
Kunci memahami TCP/IP adalah melihatnya sebagai pembagian kerja. IP mengurus perjalanan paket dari satu alamat ke alamat lain. TCP mengurus agar isi kiriman tiba lengkap di tujuan.
IP (Internet Protocol) hanya berusaha sebaik mungkin, tanpa janji apa pun. Setiap paket IP membawa alamat asal dan alamat tujuan, yaitu IP address. Router di sepanjang jalan membaca alamat itu lalu meneruskan paket ke arah yang dianggap paling dekat. Dokumen standar RFC 1122 menyebut terang-terangan bahwa paket IP bisa tiba rusak, terduplikasi, tidak berurutan, atau tidak tiba sama sekali. Tugas menjamin keandalan diserahkan ke lapisan di atasnya.
TCP adalah protokol yang menanggung keandalan itu di kedua ujung koneksi. Kepanjangannya Transmission Control Protocol. TCP memberi nomor urut pada setiap potongan data, meminta konfirmasi terima, mengirim ulang potongan yang hilang, dan menyusunnya kembali sesuai urutan. TCP juga mengatur kecepatan kirim supaya penerima tidak kewalahan, sementara router di tengah jalan tidak perlu tahu apa pun soal TCP.
Bayangkan Anda pindah rumah dan mengirim 40 kardus lewat jasa ekspedisi. Kurir hanya membaca alamat di tiap kardus, dan kardus bisa tiba lewat truk berbeda di hari berbeda. Anda menomori setiap kardus "1 dari 40" sampai "40 dari 40". Penerima mencocokkan nomornya, lalu meminta kiriman ulang kalau kardus nomor 17 belum datang. Kurir berperan seperti IP, sedangkan sistem penomoran dan konfirmasi Anda berperan seperti TCP.
Desain ini sengaja dibuat. Jaringan di tengah cukup meneruskan paket secepat mungkin, sehingga router bisa sederhana dan murah. Kecerdasan ditaruh di perangkat ujung, yaitu komputer Anda dan server.
Sejarah Singkat: Dari Satu Protokol Menjadi Dua
Rancangan awal TCP/IP diterbitkan Vint Cerf dan Bob Kahn pada Mei 1974 lewat makalah A Protocol for Packet Network Intercommunication. Awalnya, pengalamatan dan keandalan masih berada di satu protokol bernama TCP. Rancangan itu kemudian dipecah menjadi IP yang hanya mengurus alamat dan penerusan paket, serta TCP yang mengurus pemulihan paket hilang dan pengaturan aliran. UDP ditambahkan untuk aplikasi yang ingin memakai layanan dasar IP secara langsung.
Pada 1 Januari 1983, seluruh ARPANET beralih ke TCP/IP secara serentak. Rincian linimasanya bisa Anda baca di artikel sejarah dan cara kerja internet. Spesifikasi TCP sendiri terus diperbarui. Versi terbarunya adalah RFC 9293 yang terbit Agustus 2022, menggantikan RFC 793 dari tahun 1981 beserta sejumlah revisinya.
4 Layer TCP/IP dan Tugas Tiap Lapisannya
TCP/IP disusun berlapis, dan susunan ini disebut model TCP/IP. Setiap lapisan atau layer punya tugas sendiri dan hanya berurusan dengan lapisan tepat di atas dan di bawahnya. Menurut rujukan resmi IETF, RFC 1122, empat layer TCP/IP adalah aplikasi, transport, internet, dan link:
| Layer | Tugas | Contoh protokol |
|---|---|---|
| Aplikasi | Bahasa antaraplikasi | HTTP, DNS, SMTP |
| Transport | Antarujung, antaraplikasi | TCP, UDP |
| Internet | Alamat dan rute | IP, ICMP |
| Link | Satu jaringan lokal | Ethernet, Wi-Fi |
Setiap kali data turun satu lapisan, ia dibungkus dengan header (kepala berisi informasi kendali) milik lapisan tersebut. Proses ini disebut enkapsulasi. Pesan HTTP dibungkus header TCP menjadi segmen, lalu dibungkus header IP menjadi paket, lalu dibungkus header Ethernet atau Wi-Fi menjadi frame. Di sisi penerima, bungkus itu dibuka satu per satu dengan urutan terbalik.

Keuntungan susunan berlapis ini terasa sehari-hari. Browser Anda tidak perlu tahu apakah laptop sedang memakai Wi-Fi atau kabel LAN. Sebaliknya, kartu Wi-Fi tidak perlu tahu apakah data yang dibawanya berupa halaman web atau email.
Kenapa Ada yang Menyebut TCP/IP Lima Layer?
Di buku pelajaran maupun internet, Anda mungkin menemukan model TCP/IP lima lapisan: Aplikasi, Transport, Network, Data Link, dan Physical. Versi ini berasal dari buku ajar jaringan populer, misalnya Computer Networking karya Kurose dan Ross. Buku tersebut memisahkan lapisan fisik (kabel, sinyal radio) dari lapisan link supaya lebih mudah diajarkan.
Kedua versi menggambarkan hal yang sama. Versi empat lapisan menggabungkan fisik dan link menjadi satu, karena TCP/IP memang tidak mengatur urusan kabel dan sinyal. Kalau Anda sedang menjawab soal ujian, ikuti versi yang dipakai buku atau guru Anda. Kalau Anda membaca dokumen standar IETF, yang dipakai adalah empat lapisan.
Cara Kerja TCP/IP: Mengikuti Satu Permintaan Halaman Web
Cara kerja TCP/IP paling mudah dipahami dengan mengikuti satu kejadian nyata. Misalkan Anda mengetik alamat sebuah website di browser dan menekan Enter.
- Alamat website diterjemahkan menjadi alamat IP: browser bertanya ke server DNS, biasanya lewat UDP, lalu mendapat alamat IP server tujuan.
- Koneksi TCP dibuka dengan three-way handshake: laptop mengirim segmen berflag SYN, server membalas SYN-ACK, lalu laptop menjawab ACK. Pada tahap ini kedua pihak juga menyepakati nomor urut awal.
- Data dipecah menjadi segmen bernomor: permintaan HTTP dan halaman balasannya dipotong menjadi segmen-segmen, masing-masing membawa nomor urut.
- IP meneruskan paket lewat banyak router: setiap segmen dibungkus menjadi paket IP. Paket-paket dari satu halaman yang sama bisa menempuh rute berbeda.
- Penerima mengurutkan dan mengonfirmasi: TCP di sisi penerima menyusun segmen sesuai nomor urut dan mengirim ACK. Segmen yang tidak dikonfirmasi dalam batas waktu tertentu dikirim ulang oleh pengirim.
- Koneksi ditutup: setelah selesai, kedua pihak saling mengirim flag FIN. Kalau salah satu pihak memutus paksa, ia mengirim flag RST, yang di browser muncul sebagai ERR_CONNECTION_RESET.
Handshake di langkah kedua memakan satu kali perjalanan pulang-pergi (round-trip time) sebelum data pertama boleh dikirim. Kalau server berada di Jakarta dan Anda di Surabaya, biayanya belasan milidetik. Kalau servernya di Amerika Serikat, biayanya bisa lebih dari 200 milidetik.

Isi Header TCP yang Membuat Semua Itu Mungkin
Semua langkah di atas dijalankan lewat informasi di header TCP. Ukuran minimumnya 20 byte dan bisa bertambah sampai 60 byte kalau memakai opsi. Bagian yang paling penting untuk dipahami adalah:
- Port asal dan port tujuan: menunjukkan aplikasi mana yang mengirim dan menerima, misalnya port 443 untuk HTTPS.
- Sequence number: nomor urut byte pertama dalam segmen, dipakai untuk menyusun ulang data.
- Acknowledgment number: nomor byte berikutnya yang ditunggu penerima, sekaligus konfirmasi bahwa data sebelumnya sudah diterima.
- Flag: penanda satu bit seperti SYN (buka koneksi), ACK (konfirmasi), FIN (tutup), dan RST (putus paksa).
- Window: jumlah data yang sanggup diterima penerima saat itu. Inilah mekanisme flow control (pengaturan aliran) yang mencegah penerima kewalahan.
- Checksum: angka pemeriksa untuk mendeteksi segmen yang rusak di perjalanan.
Perbedaan TCP dan UDP: Kapan Kecepatan Lebih Penting
TCP dan UDP sama-sama berada di lapisan transport, tetapi dirancang untuk kebutuhan yang berlawanan. UDP (User Datagram Protocol) mengirim data tanpa membuka koneksi, tanpa nomor urut, dan tanpa kiriman ulang. Perbandingan TCP vs UDP berikut merangkum bedanya:
| Aspek | TCP | UDP |
|---|---|---|
| Koneksi | Handshake dulu | Langsung kirim |
| Urutan data | Dijamin | Tidak dijamin |
| Data hilang | Dikirim ulang | Dibiarkan hilang |
| Ukuran header | 20โ60 byte | 8 byte |
| Contoh pemakaian | Web, email, SSH | Panggilan video, game, DNS |
Pertanyaannya, kenapa ada yang memilih protokol tanpa jaminan? Jawabannya ada pada data yang nilainya habis dimakan waktu. Dalam panggilan video, potongan suara yang terlambat setengah detik sama tidak bergunanya dengan potongan yang hilang. Menunggu kiriman ulang justru membuat percakapan tersendat. Lebih baik satu potongan dilewati dan panggilan tetap berjalan.

Sebagian layanan memakai keduanya. DNS menjawab kueri pendek lewat UDP, tetapi beralih ke TCP untuk jawaban berukuran besar dan untuk menyalin data zona antar server DNS. Web juga mulai bergeser. HTTP/3 berjalan di atas QUIC yang memakai UDP. QUIC membangun sendiri keandalan ala TCP, tetapi menggabungkan handshake koneksi dan enkripsi agar halaman mulai termuat lebih cepat.
Perbedaan OSI Layer dan TCP/IP: Mana yang Dipakai?
Selain TCP/IP, Anda akan sering menemukan model OSI (Open Systems Interconnection) yang berisi tujuh lapisan. Model OSI diterbitkan ISO sebagai standar rujukan pada 1984. Berikut pemetaan kasarnya:
| Lapisan OSI | Lapisan TCP/IP |
|---|---|
| 7 Application, 6 Presentation, 5 Session | Aplikasi |
| 4 Transport | Transport |
| 3 Network | Internet |
| 2 Data Link, 1 Physical | Link |
Perbedaan utamanya terletak pada peran. OSI adalah model konseptual yang dipakai untuk belajar dan berdiskusi. Istilah seperti "load balancer layer 4" atau "firewall layer 7" memakai penomoran OSI layer. Sementara itu, protokol yang benar-benar berjalan di internet adalah keluarga TCP/IP. Sebagian besar protokol asli rancangan OSI tidak pernah dipakai luas di internet.
Kelebihan TCP/IP
Ada alasan kenapa TCP/IP bertahan lebih dari 40 tahun dan menjadi fondasi internet:
- Standar terbuka: spesifikasinya diterbitkan IETF dan bisa dibaca siapa saja secara gratis, tanpa lisensi dari satu vendor.
- Tidak bergantung pada media: protokol yang sama berjalan di atas kabel tembaga, serat optik, Wi-Fi, jaringan seluler, hingga satelit.
- Tahan terhadap gangguan: kalau satu jalur putus, router bisa memilih rute lain, dan TCP akan mengirim ulang paket yang hilang.
- Skalanya luas: aturan yang sama dipakai di jaringan komputer rumah berisi tiga perangkat maupun internet global berisi miliaran perangkat.
- Pilihan sesuai kebutuhan: aplikasi bisa memilih TCP kalau butuh keutuhan data, atau UDP kalau butuh jeda sekecil mungkin.
Kelemahan TCP/IP yang Perlu Anda Pertimbangkan
TCP/IP dirancang ketika internet masih berupa jaringan riset kecil yang penggunanya saling percaya. Beberapa asumsi awal itu kini membawa konsekuensi:
- Tidak ada enkripsi bawaan: TCP menjamin data tiba utuh, bukan data tetap rahasia. Siapa pun di jalur yang sama bisa membaca isi segmen TCP. Enkripsi dikerjakan protokol lain di atasnya, yaitu TLS, yang menjadi dasar HTTPS.
- Handshake bisa disalahgunakan: server menyisihkan memori untuk setiap SYN yang masuk. Serangan SYN flood membanjiri server dengan SYN palsu sampai antrean koneksinya penuh.
- Ada biaya sebelum data mengalir: handshake TCP butuh satu kali pulang-pergi, lalu TLS 1.3 menambah satu kali lagi. Pada koneksi berlatensi 200 milidetik, halaman baru mulai terkirim setelah sekitar 400 milidetik.
- Head-of-line blocking: karena TCP menjamin urutan, satu segmen yang hilang menahan seluruh data di belakangnya sampai kiriman ulangnya tiba. Masalah ini salah satu alasan HTTP/3 pindah ke QUIC.
- Alamat IPv4 sudah habis: IPv4 hanya menyediakan sekitar 4,3 miliar alamat, dan cadangan globalnya habis dibagikan pada 2011. Penggantinya, IPv6, sudah tersedia tetapi adopsinya berjalan bertahap.
Cara Melihat Koneksi TCP di Komputer Anda
Anda bisa melihat TCP bekerja di perangkat sendiri. Buka beberapa website di browser, lalu jalankan salah satu perintah berikut.
Di Windows, buka Command Prompt atau PowerShell lalu jalankan:
netstat -an | findstr ESTABLISHEDDi macOS, buka Terminal lalu jalankan:
netstat -an -p tcp | grep ESTABLISHEDDi Linux, perintah modern yang lebih ringkas adalah:
ss -tnSetiap baris adalah satu koneksi TCP yang sedang terbuka. Kolom alamat lokal dan alamat tujuan berisi pasangan IP dan port. Di macOS, pemisahnya berupa titik, misalnya 192.168.1.5.50797 dan 44.252.232.225.443. Angka terakhir adalah port, jadi baris tersebut adalah koneksi HTTPS ke port 443.
Saat kami mencobanya di sebuah MacBook dengan beberapa aplikasi terbuka, tercatat 148 koneksi berstatus ESTABLISHED. Cara membaca kolom lainnya, termasuk status seperti TIME_WAIT, dibahas di artikel netstat.
Pertanyaan yang Sering Diajukan
Internet bekerja dengan protokol komunikasi yang disebut apa?
Protokol TCP/IP. Semua perangkat yang terhubung ke internet, apa pun sistem operasinya, memakai keluarga protokol ini untuk mengalamatkan dan mengirim data.
Apa kepanjangan TCP/IP?
TCP singkatan dari Transmission Control Protocol, sedangkan IP singkatan dari Internet Protocol. Dalam bahasa Indonesia, TCP kadang disebut Protokol Kendali Transmisi.
Apa perbedaan TCP dan IP?
IP mengantarkan paket ke alamat tujuan tanpa jaminan tiba. TCP berjalan di atas IP dan memastikan data tiba lengkap, tidak rusak, dan berurutan. Singkatnya, IP mengurus rute, TCP mengurus keutuhan.
Apakah TCP/IP sama dengan alamat IP?
Tidak. Alamat IP adalah nomor identitas perangkat, misalnya 192.168.1.10. TCP/IP adalah seperangkat aturan yang memakai alamat itu untuk mengirim data.
Apakah TCP membuat data yang dikirim menjadi aman?
TCP membuat data tiba utuh, tetapi tidak merahasiakannya. Kerahasiaan datang dari TLS. Itu sebabnya website yang masih memakai HTTP biasa tetap berjalan di atas TCP, tetapi isinya bisa dibaca pihak di jalur yang sama.
Kalau membuka firewall untuk website, cukup TCP 443 saja?
Untuk HTTPS biasa, cukup TCP port 80 dan 443. Namun, kalau server Anda melayani HTTP/3, tambahkan juga UDP port 443. Tanpa aturan UDP itu, browser akan diam-diam kembali ke HTTP/2 lewat TCP.
Kesimpulan
TCP/IP adalah keluarga protokol yang menjalankan internet, dengan pembagian kerja yang jelas. IP mengantar paket dari alamat ke alamat tanpa janji. TCP di kedua ujung memastikan data tiba lengkap dan berurutan lewat handshake, nomor urut, dan konfirmasi. Model resminya terdiri dari empat lapisan: aplikasi, transport, internet, dan link.
Pakai TCP ketika setiap byte harus sampai, seperti halaman web, email, dan berkas. Pilih UDP ketika data yang terlambat sudah tidak berguna, seperti panggilan suara dan game. Untuk keamanan, jangan mengandalkan TCP saja, karena enkripsinya dikerjakan TLS.
Semoga artikel ini membantu.

