Apa Itu MTU?

MTU (Maximum Transmission Unit) adalah ukuran paket data terbesar (dalam satuan byte) yang dapat dikirimkan melalui sebuah interface jaringan dalam satu kali transmisi tanpa perlu dipecah (fragmented).

Secara default, MTU pada jaringan Ethernet adalah 1500 bytes. Angka ini sudah menjadi standar de facto sejak era awal Ethernet (IEEE 802.3).

Penting: MTU dihitung dari Layer 3 ke atas (IP Header + Payload). Ia tidak termasuk Ethernet Header (14 bytes) dan FCS/CRC (4 bytes).

Struktur Frame Ethernet

image.png


Analogi Sederhana: MTU = Lebar Pintu Truk

Bayangkan jaringan sebagai jalan raya, dan paket data sebagai barang yang dikirim lewat truk.

  • MTU = lebar pintu truk (ukuran maksimum barang yang bisa masuk)
  • Paket data = kardus barang
  • Router = pos pemeriksaan di sepanjang jalan

Skenario:

Situasi Yang Terjadi
Kardus pas masuk pintu (packet ≤ MTU) Barang langsung lewat tanpa masalah ✅
Kardus terlalu besar (packet > MTU) Kardus harus dipotong-potong (fragmented) ✂️
Kardus dipotong tapi ada label "jangan potong" (DF bit = 1) Truk menolak barang, kirim balik notifikasi ❌

Tip: Fragmentasi menyebabkan overhead. Setiap potongan butuh header baru, sehingga bandwidth efektif menurun.


MTU Standar vs Jumbo Frame

MTU Standar (1500 bytes)

  • Default pada semua perangkat Ethernet
  • Kompatibel universal
  • Cocok untuk traffic campuran (web, email, VoIP)
  • Overhead header relatif tinggi pada transfer data besar

Jumbo Frame (9000+ bytes)

  • MTU diperbesar hingga 9000 bytes (atau lebih, tergantung vendor)
  • Mengurangi jumlah paket yang dikirim untuk volume data yang sama
  • Menurunkan CPU load karena lebih sedikit paket yang diproses
  • Meningkatkan throughput pada transfer data besar (storage, backup, VM migration)

Perbandingan Efisiensi

Transfer 1 GB data:

MTU 1500:
  Total paket  = ~700.000 paket
  Overhead     = ~700.000 × 54 bytes = ~37 MB overhead

MTU 9000 (Jumbo Frame):
  Total paket  = ~116.000 paket
  Overhead     = ~116.000 × 54 bytes = ~6 MB overhead

→ Pengurangan overhead: ~83%

Warning: Jumbo Frame harus di-enable di SEMUA perangkat pada jalur (end-to-end), termasuk switch, router, dan NIC. Jika ada satu perangkat yang tidak mendukung, akan terjadi packet drop atau fragmentasi.


Mekanisme Fragmentasi & PMTUD

Fragmentasi IP

Ketika sebuah router menerima paket yang lebih besar dari MTU interface keluar:

  1. Jika DF bit = 0 → Router memecah paket menjadi fragmen-fragmen yang sesuai MTU
  2. Jika DF bit = 1 → Router men-drop paket dan mengirim ICMP Type 3, Code 4 (Destination Unreachable, Fragmentation Needed) ke pengirim

Path MTU Discovery (PMTUD)

PMTUD adalah mekanisme otomatis untuk menemukan MTU terkecil di seluruh jalur (path) antara sumber dan tujuan.

Iklan

Cara kerja:

  1. Pengirim mengirim paket dengan DF bit = 1 (Don't Fragment)
  2. Jika router di jalur memiliki MTU lebih kecil, ia mengirim ICMP Fragmentation Needed yang berisi MTU interface-nya
  3. Pengirim memperkecil ukuran paket sesuai informasi ICMP tersebut
  4. Proses diulang hingga paket berhasil sampai tujuan

image.png

Warning: Banyak firewall atau ACL yang memblokir ICMP secara agresif, menyebabkan PMTUD gagal. Ini disebut PMTUD Black Hole — paket besar di-drop tanpa notifikasi, koneksi hang. Pastikan ICMP Type 3 tidak diblokir!


MSS vs MTU

Jangan bingung antara MTU dan MSS (Maximum Segment Size):

Parameter Lapisan Definisi Nilai Default
MTU Layer 3 (Network) Ukuran maksimum paket IP (header + payload) 1500 bytes
MSS Layer 4 (Transport/TCP) Ukuran maksimum payload TCP (tanpa IP+TCP header) 1460 bytes

Rumus:

MSS = MTU - IP Header (20 bytes) - TCP Header (20 bytes)
MSS = 1500 - 20 - 20 = 1460 bytes

Pada tunnel (PPPoE, VPN, GRE, VXLAN), MSS perlu disesuaikan karena ada overhead tambahan:

Tunnel Type Overhead Effective MTU MSS
PPPoE 8 bytes 1492 1452
GRE 24 bytes 1476 1436
IPSec (Transport) ~50-60 bytes ~1440-1450 ~1400-1410
VXLAN 50 bytes 1450 1410
WireGuard 60 bytes 1440 1400

Penerapan MTU di Jaringan: Core → Distribution → Access → End Devices

Arsitektur Jaringan

image.png

Tip: Pada jaringan ISP/enterprise, Jumbo Frame biasanya hanya di-enable di segmen core dan distribution (antar-switch L3, inter-router link). Access layer dan end devices tetap menggunakan MTU 1500 standar.


Contoh Konfigurasi

1. Juniper (Core / Distribution Router)

# Interface core/uplink - Jumbo Frame
set interfaces xe-0/0/0 mtu 9192
set interfaces xe-0/0/0 unit 0 family inet mtu 9192

# Interface ke customer/access - Standar
set interfaces ge-0/0/1 mtu 1500
set interfaces ge-0/0/1 unit 0 family inet mtu 1500

# Verifikasi
show interfaces xe-0/0/0 | match mtu
show interfaces ge-0/0/1 | match mtu

2. Cisco Nexus 3000 (NX-OS) — Core / Distribution Switch

Pada Nexus 3000, MTU dikonfigurasi melalui QoS policy-map secara global dan bisa di-override per-interface.

! =============================================
! CARA 1: Global — via QoS Policy (Recommended)
! =============================================
! Nexus 3K menggunakan policy-map network-qos
! untuk mengatur MTU per class-of-service

policy-map type network-qos jumbo-policy
  class type network-qos class-default
    mtu 9216

system qos
  service-policy type network-qos jumbo-policy

! Setelah apply, SEMUA interface L3 akan support
! frame hingga 9216 bytes

! =============================================
! CARA 2: Per-Interface — MTU pada L3 Interface
! =============================================
! Uplink ke core router - Jumbo Frame
interface Ethernet1/1
  description UPLINK-TO-CORE
  no switchport
  mtu 9216
  ip address 10.0.0.1/30
  no shutdown

! Downlink ke access layer - MTU standar
interface Ethernet1/48
  description DOWNLINK-TO-ACCESS-SW
  no switchport
  mtu 1500
  ip address 10.1.0.1/24
  no shutdown

! =============================================
! VERIFIKASI
! =============================================
show system mtu
show queuing interface ethernet 1/1 | include MTU
show interface ethernet 1/1 | include MTU
show policy-map type network-qos

! Test PMTUD dari Nexus
ping 10.0.0.2 df-bit packet-size 9000

Catatan Nexus 3K: Pada beberapa model N3K (3048, 3064), MTU hanya bisa diatur secara global via network-qos policy-map, bukan per-interface. Pastikan cek dokumentasi model spesifik kamu.

3. Huawei CloudEngine S6730 / S6720 (Core / Distribution Switch)

Pada Huawei S6700 series yang menggunakan VRP (Versatile Routing Platform), MTU dikonfigurasi per-interface. Jumbo Frame di-enable dengan mengatur nilai jumboframe enable pada interface.

# =============================================
# Interface uplink ke core - Jumbo Frame
# =============================================
interface 10GE1/0/1
  description UPLINK-TO-CORE-ROUTER
  undo portswitch                    # Set sebagai L3 interface
  ip address 10.0.0.2 255.255.255.252
  jumboframe enable 9216             # Enable Jumbo Frame, max 9216
  undo shutdown
#

# =============================================
# Interface trunk antar-distribution switch
# =============================================
interface 10GE1/0/2
  description TRUNK-TO-DIST-SW-02
  port link-type trunk
  port trunk allow-pass vlan 100 200 300
  jumboframe enable 9216
  undo shutdown
#

# =============================================
# Interface downlink ke access - MTU standar
# =============================================
interface GE1/0/24
  description DOWNLINK-TO-ACCESS-SW
  port link-type trunk
  port trunk allow-pass vlan 10 20 30
  jumboframe enable 1500             # Atau biarkan default
  undo shutdown
#

# =============================================
# Konfigurasi MTU pada VLANIF (SVI)
# =============================================
interface Vlanif 100
  ip address 192.168.100.1 255.255.255.0
  mtu 9000
#

# =============================================
# VERIFIKASI
# =============================================
display interface 10GE1/0/1 | include jumboframe
display interface 10GE1/0/1 | include MTU
display current-configuration interface 10GE1/0/1

# Test PMTUD
ping -s 8972 -f 10.0.0.1    # -f = don't fragment

Catatan Huawei S6700: Perintah jumboframe enable <size> mengatur ukuran frame Layer 2 maksimum (termasuk header). Nilai default biasanya 9216 pada port 10GE. Untuk interface GE, pastikan hardware mendukung ukuran yang diinginkan dengan cek display interface <if> | include jumboframe.

4. MikroTik RouterOS (Router / Access)

# Set MTU pada interface (umumnya tetap 1500 untuk akses)
/interface ethernet set ether1 mtu=1500 l2mtu=1598

# Jika butuh Jumbo Frame (misal trunk ke core)
/interface ethernet set ether1 mtu=9000 l2mtu=9124

# Cek L2MTU maksimum yang didukung hardware
/interface ethernet print detail

# MSS Clamping untuk PPPoE / tunnel
/ip firewall mangle
add chain=forward protocol=tcp tcp-flags=syn action=change-mss \
    new-mss=1452 passthrough=yes comment="MSS Clamp PPPoE"

# Verifikasi
/interface print detail where name=ether1
/ping 8.8.8.8 size=1472 do-not-fragment

Tip MikroTik: Gunakan perintah /ping <IP> size=1472 do-not-fragment untuk menemukan MTU optimal di jalur. Mulai dari 1472 (1500 - 28 byte IP+ICMP header), lalu kurangi jika timeout.

5. Windows

# Cek MTU saat ini
netsh interface ipv4 show subinterfaces

# Set MTU
netsh interface ipv4 set subinterface "Ethernet" mtu=1500 store=persistent

# Test Path MTU Discovery
ping 8.8.8.8 -f -l 1472

# Jika reply → MTU 1500 OK
# Jika "Packet needs to be fragmented" → kurangi ukuran

6. Linux

# Cek MTU saat ini
ip link show eth0 | grep mtu

# Set MTU sementara
ip link set dev eth0 mtu 1500

# Set MTU permanen (Netplan - Ubuntu)
# Edit /etc/netplan/01-netcfg.yaml:
# network:
#   ethernets:
#     eth0:
#       mtu: 1500

# Test PMTUD
ping -M do -s 1472 8.8.8.8

Troubleshooting MTU

Gejala Umum Masalah MTU

Gejala Kemungkinan Penyebab
Website tidak loading tapi ping OK MTU terlalu besar, PMTUD gagal
VPN lambat atau putus-putus MTU/MSS tidak disesuaikan dengan overhead tunnel
Transfer file besar gagal, file kecil OK Fragmentasi di jalur
SSH/Telnet lancar tapi SCP/SFTP hang Paket besar di-drop oleh MTU mismatch
Game online lag, voice call choppy Fragmentasi menyebabkan latency tambahan

Langkah Diagnostik

# 1. Temukan MTU optimal dengan binary search
#    Mulai dari 1500, kurangi jika gagal
ping -M do -s 1472 target_ip    # Linux
ping -f -l 1472 target_ip       # Windows

# 2. Tracepath (Linux) - otomatis detect PMTU
tracepath target_ip

# 3. Cek di MikroTik
/tool traceroute address=target_ip protocol=icmp

# 4. Packet capture untuk melihat fragmentasi
#    Cari paket dengan MF (More Fragments) flag atau Fragment Offset > 0
tcpdump -i eth0 'ip[6:2] & 0x3fff != 0'

Best Practice

  1. Jangan ubah MTU sembarangan. pastikan semua perangkat di jalur mendukung nilai yang sama
  2. Core / Distribution: Gunakan Jumbo Frame (9000–9216) untuk link antar-switch/router
  3. Access / End Device: Tetap gunakan MTU 1500 standar
  4. Tunnel (PPPoE, VPN, VXLAN): Selalu sesuaikan MSS Clamping
  5. Jangan blokir ICMP Type 3 Code 4. ini vital untuk PMTUD
  6. Test sebelum deploy: Gunakan ping dengan flag do-not-fragment untuk validasi
  7. Dokumentasikan: Catat MTU setiap interface di diagram jaringan

Ringkasan

Layer Perangkat MTU Rekomendasi
Core Router / L3 Switch 9000 – 9216 (Jumbo Frame)
Distribution L3 Switch 9000
Access L2 Switch 1500 (default)
End Device PC / Server / AP 1500 (default)
Tunnel (PPPoE) CPE Router 1492 (MSS 1452)
Tunnel (VPN/GRE) VPN Gateway 1400–1476 (sesuaikan)

Tip: MTU adalah salah satu parameter yang "invisible" — jarang diperhatikan sampai ada masalah. Memahami MTU akan membantu kamu mendiagnosis masalah jaringan yang membingungkan dengan lebih cepat.