Сіз LAN-да 9000 байттық кадрларды қостыңыз және VPN жылдамырақ болады деп күттіңіз. Ол баяулады немесе үлкен тасымалдарды мүлде өткізуді тоқтатты. Jumbo кадрлар — жергілікті буын келісімі; олар туннель кесіп өтетін жолды кеңейтпейді.

Пайдалануға болатын бюджетті маршруттағы ең кіші шекара анықтайды, оның ішінде туннель қосатын инкапсуляция да бар.

Jumbo кадрлар шын мәнінде нені өзгертеді

MTU — бір интерфейстің қасиеті. Оны серверде және оның свитчінде көтеру сол екеуі фрагментациясыз үлкенірек кадрлармен алмаса алатынын білдіреді. Бұл свитчтен кейінгі маршрутизатор, провайдер немесе туннельдің арғы жағы туралы ештеңе айтпайды. Бұл құрылғылардың өз шектері бар, ал солардың біреуінен асатын пакет сіз белгілемеген ережелер бойынша тасталады немесе фрагменттеледі.

Жергілікті келісім, ғаламдық салдар. Бүкіл шатасу осында.

Инкапсуляция салығы

Туннель пакетіңізді басқа пакеттің ішіне орайды. IPv4 UDP үстіндегі WireGuard шамамен 60 байт үстеме қосады; OpenVPN-ның UDP режимі де сол ауқымда, ал IPsec режим мен алгоритмдерге қарай өзгереді. Бұл байттар сыртқы жол бюджетінен шығады, ауадан емес.

Сондықтан 1500 байттық сыртқы буын туннель тақырыбы қосылғаннан кейін 1500 байттық ішкі пакетті тасымалдай алмайды.

Арифметиканы бір рет жасаған жөн. 1500 байттық жолда WireGuard интерфейсі инкапсуляцияланған пакет сыюы үшін шамамен 1420 MTU қалайды. Ішкі интерфейсті 9000-ға қойыңыз, сонда әрбір үлкен пакетке туннель орындай алмайтын фрагментация қажет болады немесе ол тасталады.

Жолдағы ең кіші буынды табыңыз

Маршрутты жүріп өтіп, ең төмен MTU-ды табыңыз. LAN әдетте 1500 немесе 9000, WAN әдетте 1500, ал ұялы немесе PPP буын одан да төмен болуы мүмкін. Содан кейін туннель үстемесін алып тастаңыз. Егер нәтиже ішкі интерфейстің MTU-ынан кіші болса, жауабыңыз сол. Жолдың MTU-ын анықтау мұны автоматты түрде таба алады, бірақ ол тәуелді ICMP хабарлары өткізілген жағдайда ғана.

Сүзілген ICMP — үлкен тасымалдың ілініп қалуының, ал кіші сұраныстардың жақсы жұмыс істеуінің классикалық себебі.

Өзгерісті кеңейтпей өлшемге тәуелділікті тексеріңіз

Өкілдік тасымалды қолданыңыз және бастапқы мәндерді сақтап қойыңыз, сонда кейін қайтара аласыз. ping -M do -s 1472 DF биті қосылған 1500 байттық пакетті тексереді; өтпейінше өлшемді азайтыңыз. Тек үлкен пакеттер сәтсіз болса, маршруттау емес, өлшем мәселесі бар.

Түсірілімдерді оқығанда хост жағындағы offload-тан сақ болыңыз. Сегментациялық offload сымнан нақты өткеннен әлдеқайда үлкен кадрларды көрсете алады, бұл жұмыс істеп тұрған жолды бұзылған, ал бұзылғанды дұрыс көрсетеді.

Қашан үлкен MTU дұрыс дизайн болады

Бақыланатын жеке желі үлкенірек кадрларды ұшынан ұшына заңды түрде жүргізе алады, тек жолдағы әрбір құрылғы келіссе және туннель үстемесі есепке алынса. Бұл әр буын үшін құжатталған мәні бар келісілген дизайн, клиентке терумен енгізілген бір үлкен сан емес.

Кәдімгі жалпыға ашық шығу үшін 1500 немесе одан аз деп есептеңіз және туннельге қауіпсіз ішкі MTU таңдауға мүмкіндік беріңіз. RFC 8201 IPv6 жағдайы үшін жолдың MTU-ын анықтауды қамтиды және кері байланыс қалай жұмыс істеуі керектігі туралы пайдалы анықтама.

Қатысты мақалалар