From 82b5cb440231f9ce0cb3073ca607e40f2988a156 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Mon, 13 Jul 2026 21:53:15 +0400 Subject: [PATCH] =?UTF-8?q?docs:=20=D1=81=D1=85=D0=B5=D0=BC=D0=B0=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=B9=D0=B4=D0=B5=D1=80=D1=81=D0=BA?= =?UTF-8?q?=D0=BE=D0=B9=20=D0=B8=D0=BD=D0=BA=D0=B0=D0=BF=D1=81=D1=83=D0=BB?= =?UTF-8?q?=D1=8F=D1=86=D0=B8=D0=B8=20+=20=D1=82=D0=B0=D0=B1=D0=BB=D0=B8?= =?UTF-8?q?=D1=86=D0=B0=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PROBLEM-AND-SOLUTION.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/PROBLEM-AND-SOLUTION.md b/PROBLEM-AND-SOLUTION.md index 927d697..2be9e5e 100644 --- a/PROBLEM-AND-SOLUTION.md +++ b/PROBLEM-AND-SOLUTION.md @@ -86,14 +86,22 @@ kubectl patch svc -n ingress shturval-ingress-controller-controller \ ### Почему 1450 -Физический интерфейс ноды (`eth0`) докладывает MTU **1500** — стандартное значение. Однако эмпирически установлено: +Физический интерфейс ноды (`eth0`) показывает MTU **1500** — стандартное значение, выставленное провайдером. Однако между физическими серверами провайдер добавляет собственную инкапсуляцию (VXLAN/GRE, ~50 байт overhead), поэтому реальный path MTU = **1450**. -- `ping -M do -s 1422` из пода → «Message too large» (pod MTU = 1450, Cilium выставил 1500−50) -- ICMP с DF-флагом между нодами блокируется файрволлом → прямой замер невозможен -- Фикс `mtu: 1450` в cilium-config устранил TCP stall — загрузка файлов идёт без 51-секундной паузы -- Возврат на заводское `mtu: 1500` воспроизводит проблему +``` +Ваша VM Сеть провайдера Другая VM +eth0: 1500 ──── [VXLAN/GRE +50 overhead] ──── eth0: 1500 + реальный path MTU = 1450 +``` -**Вывод:** узкое место — в сетевом пути между нодами (инфраструктура провайдера), а не на интерфейсе ноды. Точное значение underlay MTU определено experimentally через работающий фикс. +| Параметр | Значение | Почему | +|---------|----------|--------| +| `eth0` (видит VM) | 1500 | Провайдер выставил интерфейс | +| Реальный path MTU | **1450** | Провайдер добавляет инкапсуляцию | +| `cilium-config mtu:` | **1450** | Сообщить Cilium реальный path | +| Pod/tunnel MTU | 1400 | Cilium вычитает 50 на Geneve | + +Подтверждено: фикс устранил stall, загрузка файлов идёт без задержки. ### Почему это безопасно