Bosh sahifa Wiki Path MTU Discovery

Path MTU Discovery

Path MTU Discovery — IP paket source’dan destinationgacha fragmentation qilinmasdan o‘ta oladigan eng katta packet hajmini aniqlash jarayoni. Path MTU yo‘ldagi linklar MTU qiymatlarining eng kichigiga teng. To‘g‘ri aniqlanmasa katta paketlar yo‘qolib, kichik paketlar ishlaydigan “PMTU black hole” holati yuzaga kelishi mumkin.

IPv4 mexanizmi

Klassik IPv4 PMTUD source paketda Don’t Fragment bitini o‘rnatadi. Paket keyingi link MTUsidan katta bo‘lsa router uni fragment qilmay, ICMP Destination Unreachable — Fragmentation Needed xabarini yuboradi. Source ko‘rsatilgan next-hop MTUga mos kichik paket bilan qayta urinadi.

Agar router MTUni xabarda bermasa host tarixiy plateau qiymatlaridan foydalanishi mumkin. IPv4 fragmentationga ruxsat berish muammoni vaqtincha yashiradi, ammo fragment loss va reassembly xarajatini keltiradi.

IPv6 mexanizmi

IPv6 routerlari paketni yo‘lda fragment qilmaydi. Paket juda katta bo‘lsa ICMPv6 Packet Too Big xabari source’ga qaytadi. Fragment zarur bo‘lsa uni source Fragment extension header bilan bajaradi. Shu sabab ICMPv6ni to‘liq bloklash IPv6 ishlashiga jiddiy zarar beradi.

Black hole sabablari

Firewall zarur ICMP xabarlarni filtrlasa source MTUni kamaytirmaydi. Tunnel, VPN, PPPoE yoki encapsulation outer header qo‘shib effective MTUni pasaytiradi. Asymmetric routingda ICMP boshqa policy yo‘lidan qaytishi mumkin. Natijada TCP handshake va kichik request ishlaydi, katta TLS record yoki file transfer esa osilib qoladi.

PLPMTUD va TCP

Packetization Layer PMTUD ICMPga to‘liq tayanmay, transport yoki application probe orqali xavfsiz hajmni topadi. Probe yo‘qolsa kichikroq hajm sinanadi. Bu congestion loss bilan MTU lossni ajratish uchun ehtiyotkor algoritm talab qiladi.

TCP MSS clamping tunnel ingressida SYN paketdagi maximum segment sizeni kamaytiradi. Bu TCP uchun foydali workaround, ammo UDP va boshqa transportlarni tuzatmaydi. MSS IP hamda TCP headerlarini hisobga oladi va MTU bilan aynan bir qiymat emas.

Tashxis

ping kabi vositada DF va turli payload size bilan sinov, packet captureda ICMP xabarlar, interface MTU va tunnel overhead tekshiriladi. Load balancer va container overlay ham yo‘lga qo‘shimcha encapsulation qo‘shishi mumkin. Yechim ICMPni xavfsiz ruxsatlash, tunnel MTUni moslash yoki PLPMTUDni qo‘llashdan iborat; barcha hostlarda ko‘r-ko‘rona juda kichik MTU tanlash throughputni pasaytiradi.

Dinamik yo‘llar

Path routing o‘zgarsa oldin topilgan MTU endi katta bo‘lishi mumkin. Host destination cache’dagi PMTU qiymatini ma’lum vaqt saqlab, yangi Packet Too Big xabarida kamaytiradi va keyin kattaroq probe bilan qayta tekshiradi. Faqat monoton kamaytirish uzoq muddat suboptimal packet size qoldiradi.

Anycast, load balancer yoki ECMP turli flowlarni boshqa yo‘ldan olib o‘tishi mumkin. Bitta diagnostic ping applicationning besh-tuple yo‘lini aynan takrorlamasligi ehtimol. UDP protocol application-level fragmentation qilsa har fragment uchun ID, checksum va timeout talab etiladi; IP fragmentationdan qochish bilan yangi reassembly complexity paydo bo‘ladi. QUIC kabi transportlar probe va datagram size boshqaruvini transport qatlamida bajaradi.

Security policy ICMP type va code bo‘yicha zarur xabarlarni ruxsatlab, rate limit qilishi mumkin. Faqat echo requestni bloklash bilan barcha ICMPni bloklash bir xil emas; PMTUD control xabarlari data pathning funksional qismidir.

Bog‘liq tushunchalar

MTU, ICMP, ICMPv6, IP fragmentation, TCP MSS, PLPMTUD, Tunnel overhead, Packet loss