Pelajari dasar-dasar TCP/IP dari nol — model OSI, protokol TCP dan UDP, IP addressing, subnetting, port number, dan quiz interaktif untuk menguji pemahamanmu
TCP/IP (Transmission Control Protocol / Internet Protocol) adalah kumpulan protokol komunikasi yang menjadi fondasi dari internet dan jaringan komputer modern. Protokol ini memungkinkan perangkat dengan sistem operasi dan arsitektur berbeda untuk saling berkomunikasi.
TCP/IP dikembangkan pada tahun 1970-an oleh Department of Defense (DoD) Amerika Serikat melalui proyek ARPANET. Tujuannya adalah membuat jaringan yang dapat bertahan meskipun sebagian infrastruktur mengalami kerusakan — konsep yang disebut fault tolerance.
Mengapa TCP/IP Penting?
Aspek
Penjelasan
Standar Global
Digunakan oleh seluruh internet — miliaran perangkat saling terhubung via TCP/IP
Interoperabilitas
Berbagai OS (Windows, Linux, macOS) dan perangkat bisa saling berkomunikasi
Skalabilitas
Dari jaringan kecil (rumah) hingga jaringan global (internet)
Layered Architecture
Pisahkan fungsi di setiap layer, memudahkan troubleshooting dan pengembangan
Open Standard
Dikembangkan secara terbuka, siapa bisa mengimplementasikannya
Diagram: Posisi TCP/IP dalam Komunikasi Jaringan
Sejarah Singkat TCP/IP
Tahun
Peristiwa
1969
ARPANET diluncurkan — cikal bakal internet
1974
Vint Cerf dan Bob Kahn mempublikasikan desain TCP
1978
TCP dipisah menjadi TCP dan IP (sebelumnya satu protokol)
1983
ARPANET secara resmi beralih ke TCP/IP
1989
Tim Berners-Lee mengusulkan World Wide Web
1995
Internet tersedia secara komersial untuk publik
2. Model OSI (7 Layer)
OSI (Open Systems Interconnection) adalah model referensi yang dikembangkan oleh ISO pada tahun 1984. Model ini membagi proses komunikasi jaringan menjadi 7 layer, masing-masing dengan fungsi spesifik. Meskipun TCP/IP lebih populer dalam praktik, model OSI sangat penting untuk memahami konsep networking secara teori.
7 Layer OSI Model
Layer
Nama
Fungsi
Contoh Protokol/Perangkat
7
Application
Interface pengguna dengan jaringan
HTTP, FTP, SMTP, DNS
6
Presentation
Enkripsi, kompresi, translasi data
SSL/TLS, JPEG, ASCII
5
Session
Menjaga sesi komunikasi
NetBIOS, RPC, PPTP
4
Transport
Transmisi data end-to-end, flow control
TCP, UDP, SCTP
3
Network
Routing dan logical addressing
IP, ICMP, Router
2
Data Link
Framing, error detection, MAC address
Ethernet, Switch, ARP
1
Physical
Transmisi bit melalui media fisik
Kabel, WiFi, Hub
Diagram: OSI 7-Layer Model
Encapsulation dan De-encapsulation
Saat data dikirim dari atas ke bawah (layer 7 → 1), setiap layer menambahkan header sendiri ke data. Proses ini disebut encapsulation. Saat data diterima dari bawah ke atas (layer 1 → 7), header dihapus satu per satu — proses ini disebut de-encapsulation.
Layer
Unit Data
Proses
7-5 (Application, Presentation, Session)
Data
Data dibuat oleh aplikasi
4 (Transport)
Segment (TCP) / Datagram (UDP)
Header TCP/UDP ditambahkan
3 (Network)
Packet
Header IP ditambahkan (src/dst IP)
2 (Data Link)
Frame
Header MAC + trailer FCS ditambahkan
1 (Physical)
Bits
Dikonversi ke sinyal listrik/optik/radio
3. Model TCP/IP (4 Layer)
Model TCP/IP (juga disebut DoD model atau Internet Protocol Suite) adalah model yang benar-benar digunakan dalam praktik. Model ini memiliki 4 layer yang lebih sederhana dibanding OSI.
Perbandingan OSI vs TCP/IP
Layer TCP/IP
Setara OSI
Fungsi Utama
Protokol
Application
Layer 5, 6, 7
Aplikasi, presentasi, sesi
HTTP, DNS, FTP, SSH, SMTP
Transport
Layer 4
Transmisi end-to-end
TCP, UDP
Internet
Layer 3
Addressing dan routing
IP, ICMP, ARP, IGMP
Network Access
Layer 1, 2
Transmisi fisik dan framing
Ethernet, WiFi, PPP
Diagram: TCP/IP vs OSI Model
Model TCP/IP lebih populer karena merupakan model yang benar-benar diimplementasikan. OSI hanyalah model referensi teoritis. Namun, untuk keperluan belajar dan sertifikasi networking, kedua model ini wajib dipahami.
4. Protokol TCP (Transmission Control Protocol)
TCP adalah protokol transport yang bersifat connection-oriented dan reliable. TCP menjamin bahwa data sampai ke tujuan secara utuh, berurutan, dan tanpa error. Protokol ini cocok untuk aplikasi yang membutuhkan keandalan tinggi.
Karakteristik TCP
Karakteristik
Penjelasan
Connection-oriented
Membuat koneksi melalui 3-way handshake sebelum transfer data
Reliable
Menjamin data sampai dengan mekanisme ACK dan retransmission
Ordered
Data disusun ulang sesuai urutan nomor sequence
Flow Control
Mencegah pengirim mengirim data terlalu cepat (windowing)
Error Checking
Menggunakan checksum untuk mendeteksi data yang rusak
Full-Duplex
Data bisa dikirim dan diterima secara bersamaan
3-Way Handshake
Sebelum data ditransfer, TCP melakukan proses 3-way handshake untuk membangun koneksi:
Diagram: TCP 3-Way Handshake
TCP Header
Header TCP berisi informasi penting yang ditambahkan ke setiap segment:
Field
Ukuran
Fungsi
Source Port
16 bit
Port pengirim
Destination Port
16 bit
Port tujuan
Sequence Number
32 bit
Nomor urut byte pertama dalam segment
Acknowledgment Number
32 bit
Nomor sequence berikutnya yang diharapkan
Window Size
16 bit
Jumlah data yang bisa diterima tanpa ACK
Checksum
16 bit
Error detection untuk header dan data
Flags (SYN, ACK, FIN, RST)
6 bit
Menandai fungsi segment
Contoh Aplikasi yang Menggunakan TCP
HTTP/HTTPS — browsing web, mengunduh file
FTP — transfer file
SMTP — mengirim email
SSH — remote server
Database — koneksi MySQL, PostgreSQL
5. Protokol UDP (User Datagram Protocol)
UDP adalah protokol transport yang bersifat connectionless dan unreliable. UDP tidak membuat koneksi terlebih dahulu dan tidak menjamin data sampai ke tujuan. Namun, UDP lebih cepat dan efisien karena overhead yang lebih kecil.
TCP vs UDP
Aspek
TCP
UDP
Koneksi
Connection-oriented (3-way handshake)
Connectionless
Keandalan
Reliable (ACK, retransmission)
Unreliable (tidak ada ACK)
Urutan
Dijamin berurutan
Tidak dijamin
Kecepatan
Lebih lambat (overhead tinggi)
Lebih cepat (overhead rendah)
Flow Control
Ada (windowing)
Tidak ada
Header Size
20-60 byte
8 byte
Contoh
HTTP, FTP, SSH, SMTP
DNS, DHCP, VoIP, Streaming
Kapan Menggunakan UDP?
UDP cocok untuk aplikasi yang membutuhkan kecepatan dan bisa mentolerir kehilangan beberapa data:
VoIP / Video Call — delay rendah lebih penting dari keandalan
Online Gaming — latency rendah kritis
Live Streaming — data lama tidak berguna, lebih baik lewati
DNS Query — permintaan dan respons kecil, cepat selesai
DHCP — konfigurasi awal jaringan
SNMP — monitoring jaringan
💡 Tips Memilih TCP vs UDP
Gunakan TCP jika data harus sampai 100% (file transfer, email, web). Gunakan UDP jika kecepatan lebih penting dan kehilangan beberapa paket tidak masalah (video call, gaming, streaming). Beberapa protokol modern seperti QUIC (digunakan oleh HTTP/3) membangun keandalan di atas UDP untuk mendapatkan kecepatan UDP dengan keandalan TCP.
6. IP Addressing
IP Address adalah alat pengenal unik yang diberikan ke setiap perangkat dalam jaringan. IP address memungkinkan perangkat saling menemukan dan berkomunikasi. Saat ini ada dua versi: IPv4 dan IPv6.
IPv4
IPv4 menggunakan 32-bit address yang ditulis dalam format desimal bertitik (dotted decimal), terdiri dari 4 oktet:
Komponen
Contoh
Penjelasan
IP Address
192.168.1.100
Alamat unik perangkat
Subnet Mask
255.255.255.0
Memisahkan network ID dan host ID
Default Gateway
192.168.1.1
Router yang menghubungkan ke jaringan lain
DNS Server
8.8.8.8
Menerjemahkan nama domain ke IP
Kelas IP Address
Kelas
Rentang
Default Mask
Jumlah Host
Penggunaan
A
1.0.0.0 - 126.255.255.255
/8 (255.0.0.0)
16.777.214
Jaringan sangat besar
B
128.0.0.0 - 191.255.255.255
/16 (255.255.0.0)
65.534
Jaringan menengah
C
192.0.0.0 - 223.255.255.255
/24 (255.255.255.0)
254
Jaringan kecil
D
224.0.0.0 - 239.255.255.255
-
-
Multicast
E
240.0.0.0 - 255.255.255.255
-
-
Reserved/Experimental
Private vs Public IP
Tipe
Rentang
Fungsi
Private Class A
10.0.0.0 - 10.255.255.255
Jaringan internal enterprise besar
Private Class B
172.16.0.0 - 172.31.255.255
Jaringan internal menengah
Private Class C
192.168.0.0 - 192.168.255.255
Jaringan rumah / kantor kecil
Loopback
127.0.0.0 - 127.255.255.255
Testing internal (localhost)
APIPA
169.254.0.0 - 169.254.255.255
Otomatis saat DHCP gagal
IPv6
IPv6 menggunakan 128-bit address untuk mengatasi keterbatasan IPv4 (hanya ~4.3 miliar address). Format IPv6 ditulis dalam heksadesimal dengan 8 kelompok, dipisahkan oleh titik dua:
Contoh IPv6 Address
Format IPv6:
2001:0db8:85a3:0000:0000:8a2e:0370:7334
Bisa disingkat (hilangkan leading zero):
2001:db8:85a3:0:0:8a2e:370:7334
Bisa disingkat lagi (ganti blok nol dengan ::):
2001:db8:85a3::8a2e:370:7334
Special addresses:
::1 = localhost (loopback)
:: = all zeros (unspecified)
fe80:: = link-local address
7. Subnetting
Subnetting adalah proses membagi jaringan besar menjadi sub-jaringan (subnet) yang lebih kecil. Subnetting membantu mengelola IP address secara efisien, meningkatkan keamanan, dan mengurangi broadcast domain.
Cara Kerja Subnetting
Subnetting bekerja dengan mengambil bit dari bagian host dan menjadikannya bagian network. Semakin banyak bit yang dipinjam, semakin banyak subnet yang terbentuk tetapi semakin sedikit host per subnet.
CIDR
Subnet Mask
Jumlah Subnet
Host per Subnet
Total Host
/24
255.255.255.0
1
254
254
/25
255.255.255.128
2
126
252
/26
255.255.255.192
4
62
248
/27
255.255.255.224
8
30
240
/28
255.255.255.240
16
14
224
/29
255.255.255.248
32
6
192
/30
255.255.255.252
64
2
128
Contoh Praktis Subnetting
Contoh: Subnetting 192.168.1.0/24 menjadi 4 subnet
Port number adalah nomor logis yang digunakan untuk mengidentifikasi proses atau layanan tertentu pada perangkat. Kombinasi IP address dan port number disebut socket, yang unik mengidentifikasi koneksi jaringan.
Kategori Port
Kategori
Rentang
Penjelasan
Well-Known Ports
0 - 1023
Port standar untuk layanan umum (butuh akses admin)
Registered Ports
1024 - 49151
Port yang didaftarkan oleh aplikasi/software
Dynamic/Private Ports
49152 - 65535
Port sementara yang digunakan client secara otomatis
Port yang Sering Digunakan
Port
Protokol
Layanan
Fungsi
20/21
TCP
FTP
Transfer file
22
TCP
SSH
Remote access terenkripsi
23
TCP
Telnet
Remote access (tidak aman)
25
TCP
SMTP
Kirim email
53
TCP/UDP
DNS
Resolusi nama domain
67/68
UDP
DHCP
Konfigurasi IP otomatis
80
TCP
HTTP
Web (tidak terenkripsi)
443
TCP
HTTPS
Web (terenkripsi TLS/SSL)
3306
TCP
MySQL
Database MySQL
3389
TCP
RDP
Remote Desktop Windows
5432
TCP
PostgreSQL
Database PostgreSQL
8080
TCP
HTTP Proxy
Proxy server / alternate web
⚠️ Keamanan Port
Port yang terbuka dan tidak digunakan adalah potensi keamanan. Gunakan firewall untuk membuka hanya port yang diperlukan. Hindari menggunakan port well-known untuk layanan non-standar. Selalu nonaktifkan layanan yang tidak digunakan (misalnya Telnet port 23 — gunakan SSH port 22).
9. DHCP dan Konfigurasi Otomatis
DHCP (Dynamic Host Configuration Protocol) adalah protokol yang secara otomatis memberikan IP address dan konfigurasi jaringan ke perangkat yang baru terhubung. Tanpa DHCP, setiap perangkat harus dikonfigurasi manual.
Proses DHCP (DORA)
Diagram: DHCP 4-Step Process (DORA)
DHCP vs Static IP
Aspek
DHCP (Dynamic)
Static IP
Konfigurasi
Otomatis
Manual
Kemudahan
Mudah untuk banyak perangkat
Perlu konfigurasi satu per satu
Konsistensi
IP bisa berubah
IP tetap
Cocok untuk
Client (laptop, HP, printer)
Server, router, perangkat jaringan
Troubleshooting
Lebih sulit (IP berubah)
Lebih mudah (IP tetap)
10. NAT dan Routing
NAT (Network Address Translation) adalah teknik yang digunakan router untuk menerjemahkan IP private ke IP public dan sebaliknya. NAT memungkinkan banyak perangkat di jaringan lokal berbagi satu IP public untuk mengakses internet.
Jenis-jenis NAT
Jenis NAT
Penjelasan
Penggunaan
Static NAT
Mapping 1:1 antara private dan public IP
Server yang perlu diakses dari luar
Dynamic NAT
Pool IP public dibagi ke beberapa perangkat
Jaringan dengan banyak user
PAT (Port Address Translation)
Banyak private IP → 1 public IP dengan port berbeda
Router rumah/kantor (paling umum)
Dasar-dasar Routing
Routing adalah proses menentukan jalur terbaik agar paket data sampai ke tujuan. Router menggunakan routing table untuk membuat keputusan:
Jenis Routing
Penjelasan
Contoh
Static Routing
Rute ditentukan manual oleh admin
Jaringan kecil dengan topologi tetap
Dynamic Routing
Rute ditentukan otomatis oleh protokol routing
OSPF, BGP, EIGRP, RIP
Default Route
Rute fallback jika tidak ada rute spesifik
0.0.0.0/0 → gateway
11. Network Diagnostic Tools
Untuk troubleshooting jaringan, terdapat berbagai tool yang sangat berguna. Berikut adalah tool yang wajib dikuasai oleh setiap network engineer:
1. Ping
Tool untuk menguji konektivitas antara dua perangkat menggunakan protokol ICMP.
Perintah
Fungsi
ping google.com
Test konektivitas ke Google
ping 8.8.8.8
Test konektivitas ke DNS Google
ping -t 192.168.1.1
Ping terus-menerus (Windows)
ping -c 4 192.168.1.1
Ping 4 kali (Linux/Mac)
2. Traceroute
Menampilkan jalur (hop) yang dilalui paket dari sumber ke tujuan.
Perintah
Fungsi
tracert google.com
Windows traceroute
traceroute google.com
Linux/Mac traceroute
3. nslookup / dig
Query DNS untuk mencari informasi tentang domain.
Perintah
Fungsi
nslookup google.com
Cari IP dari domain
dig google.com
DNS lookup detail (Linux)
dig MX google.com
Cari mail server domain
4. ipconfig / ifconfig
Melihat dan mengelola konfigurasi jaringan perangkat.
Perintah
Fungsi
ipconfig
Lihat IP address (Windows)
ipconfig /all
Lihat semua detail jaringan
ipconfig /release
Lepaskan IP DHCP
ipconfig /renew
Minta IP baru dari DHCP
ipconfig /flushdns
Bersihkan cache DNS
ifconfig
Lihat IP address (Linux/Mac)
ip addr
Lihat IP address (Linux modern)
5. Netstat dan ss
Melihat koneksi jaringan aktif dan port yang terbuka.
Perintah
Fungsi
netstat -an
Semua koneksi dan port listening
netstat -tlnp
Port TCP yang sedang listening
ss -tlnp
Alternatif netstat (Linux modern)
12. Quiz: Uji Pemahamanmu!
Setelah membaca tutorial di atas, jawablah 5 pertanyaan berikut untuk menguji pemahamanmu tentang TCP/IP:
Pertanyaan 1: Berapa jumlah layer pada model OSI?
a) 4 layer
b) 5 layer
c) 7 layer
d) 6 layer
Pertanyaan 2: Berapa banyak langkah pada TCP 3-Way Handshake?
a) 2 langkah (SYN, ACK)
b) 3 langkah (SYN, SYN-ACK, ACK)
c) 4 langkah (SYN, ACK, FIN, FIN-ACK)
d) 5 langkah
Pertanyaan 3: Berapa jumlah host yang tersedia pada subnet /26?
a) 30 host
b) 62 host
c) 126 host
d) 254 host
Pertanyaan 4: Port berapa yang digunakan oleh HTTPS?