Туннель чоң өткөрүүлөрдү таштайт, бирок ping өткөрөт, ошондуктан кеңеш тез келет: MTUны төмөндөтүңүз. Оңдоо кээде иштейт, анан ал ар бир тармактагы ар бир профилге колдонулат. Так ошол жерде максаттуу оңдоо туруктуу өндүрүмдүүлүк салыгына айланат. Жасалуучу салыштыруу — жолдун реалдуу чеги менен анын астында ар бир пакетти кичирейтүүнүн баасынын ортосунда.

MTUну төмөндөткөндө чындыгында эмне кичирейет

Ар бир пакет сиздин маалыматыңызды ташыганга чейин аталыштарды ташыят. 1500 байттык Ethernet жолунда IPv4 жана TCP 40 байт алып, пайдалуу жүккө 1460 калтырат; инкапсуляция үстүнө тышкы IP, UDP жана туннель аталыштарын кошот, ошондуктан ички жүк бюджети дагы төмөндөйт. Интерфейстин MTUсун төмөндөтүү ошол бюджетти атайылап кичирейтет.

Чыгым байт санына эмес, пакет санына пропорционалдуу. Ошол эле файл көбүрөөк пакетке бөлүнсө, жол боюндагы ар бир түзмөктө көбүрөөк үзгүлтүк, көбүрөөк маршруттоо чечими жана пакетке көбүрөөк иштетүү талап кылынат. Секундасына пакет чегине мурун эле жакындаган маршрутизатордо бул тегеректөө катасы эмес, чыныгы басаңдоо. Чыгым өткөрүүнүн өзү ийгиликтүү болгондо да көрүнөт.

Ошондуктан кичирээк MTU — чектөөнү айланып өтүү, жалпы оптималдаштыруу эмес. Ал чоңураак фреймди көтөрө албаган жолго каршы ишенимдүүлүктү сатып алат жана кичирейтүүнү талап кылбаган ар бир пакетке кошумча чыгым жүктөйт.

Кичирээк MTU качан туура оңдоо болот

Классикалык симптом так: TCP кол алышуу бүтөт, кичине жооптор келет, ал эми чоң жүктөө токтойт же кайра коюлат. 1472 байтта «бөлүштүрбө» бити менен ping ийгиликсиз болот, ал эми 1400 байттык ping ийгиликтүү болот, бул толук өлчөмдүү пакетти көтөрө албаган жана жиберүүчүгө кичирейтүүнү айта турган ICMP билдирүүсүн жеткирбеген жолду көрсөтөт.

Жолдун MTUсун аныктоо ошол ICMP бөлүштүрүү-керек билдирүүлөрүнө көз каранды. Тармак тосмо аларды таштаганда, жиберүүчү чоң пакетти кайра-кайра аракет кылат жана байланыш илинип тургандай көрүнөт. Туннелдин жагында MTUну төмөндөтүү кайталоодон качат, жана бул ошол тармак үчүн мыйзамдуу оңдоо.

Жетүү технологиялары да өз чектерин коюшат: PPPoE адатта 1492де чектелет, кээ бир мобилдик жана DSL жолдор төмөнүрөөк, ал эми ичине салынган туннелдер чыгымды эки жолу кемитет. Нускамадан сан көчүрбөстөн реалдуу жолду өлчөңүз жана IPv6 аны ташыган ар бир байланышта жок дегенде 1280 байт MTU талап кылаарын унутпаңыз, RFC 8200 аныктагандай.

Бирөөнү өзгөртүүдөн мурун үч башкарууну салыштырыңыз

MTU, MSS жана бөлүштүрүү — ар кайсы катмардагы ар башка башкаруулар, ал эми туура эмесин өзгөртүү симптомду ордунда калтырат.

ControlLayerWhat it changesWhere it misleads
Interface MTUIP linkLargest frame the interface will sendPenalizes every protocol, not just the one that failed
TCP MSS clampTCPSegment size advertised in the handshakeLeaves UDP and QUIC untouched
DF and fragmentationIPWhether a router may split a packetCan break path MTU discovery and security assumptions
Tunnel overheadEncapsulationInner MTU after outer headersMismatch shows up only for large inner packets

MSSти чектөө көбүнчө эң аз кийлигишүүчү оңдоо, анткени ал TCPге гана таасир этет жана интерфейсти башка трафикке бош калтырат. Төмөнүрөөк интерфейс MTUсу кененирээк жана ойлонууга жеңилирээк, ошондуктан үй маршрутизаторлорунда кеңири таралган, бирок бир протоколдун көйгөйүн бардык протоколго жүктөйт.

«Бөлүштүрбө» жүрүм-турумун өчүрүү бөлүштүрүүгө жол берип симптомду жашырат жана адатта кечигүүнү начарлатат, ошол эле учурда туура өлчөмдү таба турган кайтарым байланышты бузат. Аны туруктуу чечим катары колдонбоңуз.

Бир сандын ордуна компромиссти өлчөңүз

Жолдун чегин «бөлүштүрбө» зонду менен табыңыз, бийиктен баштап жооп келгенге чейин төмөндөңүз:

ping -M do -s 1472 203.0.113.10
ping -M do -s 1400 203.0.113.10
tracepath 203.0.113.10

Анан реалдуу тапшырманы эки жөндөөдө салыштырыңыз: ошол эле файл өткөрүү, ошол эле акыркы чекит жана ошол эле тармак. Аяктоо убактысын жана кайра жиберүүлөрдү жазып алыңыз, мисалы nstat -az TcpRetransSegs менен, жана туннель кичине маршрутизатордо бүтсө түзмөктүн процессорун көзөмөлдөңүз. Кыска синтетикалык өткөрүү жөндөмдүүлүк сынагы бир нече мегабайттан кийин гана пайда болгон тыгызды өткөрүп жибериши мүмкүн.

Кичирейтүүдөн кийин пакет эсептегичтери көтөрүлөт, анткени ошол эле өткөрүү эми көбүрөөк пакет колдонот. Бул күтүлүүчү нерсе жана жогорураак өткөрүү жөндөмдүүлүгүнүн далили эмес. Бүткөн колдонмо маалыматтарын, кайра жиберүүлөрдүн санын жана жооп берүүчүлүктү салыштырыңыз, пакет ылдамдыгын гана эмес.

Өзгөртүүнү баскыч-баскычы менен киргизип, чектелүү кармаңыз

Баштапкы маанини жазып алыңыз, бир башкарууну өзгөртүңүз жана аны туруктуу кылганга чейин өлчөөнү кайталаңыз. Эгер далилдер пайда көрсөтпөсө, мурунку маанини аны коюу үчүн колдонгон ошол эле интерфейс буйругу менен калыбына келтириңиз:

ip link set dev wg0 mtu 1420
ip link set dev wg0 mtu 1500

Жыйынтыкты ага керек болгон тармак менен чектеңиз. Мейманкана Wi-Fi, мобилдик хотспот жана кеңсе LANда иштеши керек болгон профиль, кардар жолду аныктай албаса, алардын кайсынысы болбосун талап кылган эң төмөнкү маанини мураска албашы керек.

Туура маани — жолдо аман калган эң чоң MTU, симптомду жок кылган эң кичине эмес. Жолду, зонддун жыйынтыгын жана кайтарып алууну документтештириңиз, жана жетүү тармагы өзгөргөндө жөндөөнү кайра карап чыгыңыз.

Тектеш макалалар