diff --git a/PROBLEM-AND-SOLUTION.md b/PROBLEM-AND-SOLUTION.md index 3ed5848..eee61bb 100644 --- a/PROBLEM-AND-SOLUTION.md +++ b/PROBLEM-AND-SOLUTION.md @@ -15,23 +15,22 @@ *Cilium — сетевая подсистема Kubernetes, отвечает за связь между подами на разных нодах. Geneve — протокол туннелирования, который Cilium использует чтобы «обернуть» обычный сетевой пакет для передачи через физическую сеть между серверами.* ```mermaid -graph TD - subgraph packet["Пакет с шапкой = 1500 B"] +graph LR + subgraph tower[" "] direction TB - hat["Geneve +50 B"] - body["Пакет 1450 B"] - hat --- body + top["Geneve 50 B"]:::orange + bot["Пакет 1450 B"]:::green end - packet -->|"???"| door{Дверь 1450 B} - door -->|"✗"| stall["STALL 51с"] + tower --> door{Дверь
1450 B}:::red + door --> stall[STALL 51с]:::dark - style hat fill:#ff9800,color:#fff - style body fill:#4caf50,color:#fff - style door fill:#f44336,color:#fff - style stall fill:#b71c1c,color:#fff + classDef orange fill:#ff9800,color:#fff,stroke:#e65100 + classDef green fill:#4caf50,color:#fff,stroke:#2e7d32 + classDef red fill:#f44336,color:#fff,stroke:#c62828 + classDef dark fill:#b71c1c,color:#fff ``` -> **1450** + шапка **50** = **1500**. В дверь **1450** не лезет. +> Снизу **1450**, сверху шапка **50** = итого **1500**. Дверь **1450** — не пускает. - Cilium соединяет ноды через **Geneve-туннель** - Geneve добавляет к каждому пакету **+50 байт** заголовков (Ethernet 14 + IP 20 + UDP 8 + Geneve 8)