From f005e8cf294c61ee23ce6dad6465c850262e935f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Mon, 13 Jul 2026 21:26:41 +0400 Subject: [PATCH] =?UTF-8?q?docs:=20=D0=BF=D1=80=D0=BE=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D1=8F=20ASCII-=D1=81=D1=85=D0=B5=D0=BC=D0=B0=20=E2=80=94=20?= =?UTF-8?q?=D1=80=D0=BE=D1=81=D1=82=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82=D0=B0?= =?UTF-8?q?=20vs=20=D0=B4=D0=B2=D0=B5=D1=80=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PROBLEM-AND-SOLUTION.md | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/PROBLEM-AND-SOLUTION.md b/PROBLEM-AND-SOLUTION.md index 254f5d3..231d89c 100644 --- a/PROBLEM-AND-SOLUTION.md +++ b/PROBLEM-AND-SOLUTION.md @@ -14,21 +14,20 @@ *Cilium — сетевая подсистема Kubernetes, отвечает за связь между подами на разных нодах. Geneve — протокол туннелирования, который Cilium использует чтобы «обернуть» обычный сетевой пакет для передачи через физическую сеть между серверами.* -```mermaid -flowchart LR - A["Под А
исходный пакет
1450 B"] --> G["Geneve-туннель
добавляет +50 B
итого 1500 B"] - G --> U["Underlay (канал)
реально 1450 B"] - U --> B["Под Б
пакет не доходит ✗"] - - style A fill:#e8f5e9 - style G fill:#fff3e0 - style U fill:#ffebee - style B fill:#ffebee +``` + Под А Geneve Канал +┌──────────┐ ┌─────────────────┐ ┌──────────┐ +│ │ │ │ │ │ +│ 1450 B │ ───► │ +50 B = 1500 B │ ───► │ 1450 B │ +│ │ │ │ │ │ +└──────────┘ └─────────────────┘ └────┬─────┘ + │ + ✗ НЕ ВЛАЗИТ ``` -> Ожидание Cilium: underlay = **1500** -> Реальность: underlay = **1450** ← провайдер дал меньше -> Geneve добавляет **50 байт** → **1500** не влазит в **1450** → TCP stall **51 секунда** +> Пакет вырос до **1500 B** — а дверь всего **1450 B**. +> ICMP «уменьши пакет» заблокирован — никто не предупредил. +> TCP ждёт ответа **51 секунду** и сдаётся. - Cilium соединяет ноды через **Geneve-туннель** - Geneve добавляет к каждому пакету **+50 байт** заголовков (Ethernet 14 + IP 20 + UDP 8 + Geneve 8)