STP (Spanning Tree Protocol)
Masalah Loop di Jaringan Switch
Dalam jaringan yang memiliki redundant links (link cadangan) antar switch, broadcast frame bisa berputar tanpa henti - disebut loop. Contoh kasus:
- Switch A mengirim broadcast ke Switch B.
- Switch B meneruskan ke Switch C.
- Switch C meneruskan kembali ke Switch A.
- Siklus terus berulang, frame berlipat ganda setiap putaran.
Broadcast Storm
Akibat loop adalah broadcast storm - broadcast frame memenuhi bandwidth dan membuat jaringan tidak bisa dipakai. CPU switch menjadi 100%, MAC table menjadi tidak stabil karena MAC address terus berubah antar port (MAC flapping).
Fungsi STP
STP (Spanning Tree Protocol - IEEE 802.1D) adalah protokol yang mencegah loop dengan cara:
- Menemukan topologi logis tanpa loop secara otomatis.
- Menonaktifkan (block) salah satu redundant link.
- Jika link aktif putus, STP secara dinamis mengaktifkan link yang tadinya diblokir.
Dengan STP, jaringan tetap memiliki redundancy tanpa risiko loop.
BPDU (Bridge Protocol Data Units)
Switch saling bertukar informasi melalui BPDU yang dikirim setiap 2 detik (default). BPDU berisi:
- Bridge ID - prioritas (2 byte) + MAC address switch (6 byte)
- Root Path Cost - jarak ke root bridge
- Port ID - prioritas port + nomor port
- Message Age, Max Age, Hello Time, Forward Delay
Root Bridge
Root bridge adalah acuan topologi STP - switch dengan Bridge ID terendah (prioritas paling kecil → MAC paling kecil). Proses pemilihan:
- Semua switch mengaku sebagai root bridge pada awalnya.
- Switch mengirim BPDU dengan Bridge ID sendiri.
- Switch menerima BPDU dari neighbor. Jika Bridge ID neighbor lebih rendah, switch berhenti mengaku sebagai root dan meneruskan BPDU dengan Bridge ID yang lebih rendah.
- Proses konvergen hingga satu switch menjadi root bridge.
Port Roles
STP menetapkan peran untuk setiap port switch:
| Port Role | Fungsi |
|---|---|
| Root Port (RP) | Port dengan path cost terendah menuju root bridge. Setiap non-root switch memiliki tepat satu RP. |
| Designated Port (DP) | Port pada segmen yang memiliki path cost terendah ke root bridge. Setiap segmen (link) memiliki satu DP. |
| Alternate / Blocking Port | Port yang diblokir untuk mencegah loop - berfungsi sebagai cadangan jika link utama putus. |
Port States
| State | Fungsi |
|---|---|
| Blocking | Tidak meneruskan frame, hanya menerima BPDU. |
| Listening | Transisi - mendengarkan BPDU, belum meneruskan frame (15 detik). |
| Learning | Mempelajari MAC address, belum meneruskan frame (15 detik). |
| Forwarding | Meneruskan frame secara normal. |
| Disabled | Port dimatikan secara administratif. |
Total waktu konvergensi STP klasik bisa mencapai 30 - 50 detik (Blocking → Listening → Learning → Forwarding).
RSTP (Rapid Spanning Tree Protocol - 802.1w)
RSTP adalah pengembangan STP yang mempercepat konvergensi menjadi beberapa detik:
- Port roles ditambah: alternate port (pengganti root port) dan backup port (pengganti designated port).
- Edge port - port yang terhubung ke end device (bukan switch), bisa langsung ke forwarding.
- Link type - point-to-point (full-duplex) bisa fast transition.
- Propagasi BPDU lebih cepat - switch bisa mengirim BPDU usul (proposal) dan jawaban (agreement) tanpa menunggu timer.
RSTP kompatibel dengan STP klasik - jika switch neighbor hanya mendukung 802.1D, RSTP akan fallback ke mode STP.
Kesimpulan: STP adalah protokol fundamental untuk mencegah loop di jaringan switch dengan redundant links. RSTP (802.1w) memberikan konvergensi yang jauh lebih cepat dan merupakan standar modern yang direkomendasikan untuk jaringan enterprise.