diff --git a/PROBLEM-AND-SOLUTION.md b/PROBLEM-AND-SOLUTION.md index 109a245..970e696 100644 --- a/PROBLEM-AND-SOLUTION.md +++ b/PROBLEM-AND-SOLUTION.md @@ -33,6 +33,7 @@ flowchart LR - Cilium соединяет ноды через **Geneve-туннель** - Geneve добавляет к каждому пакету **+50 байт** заголовков (Ethernet 14 + IP 20 + UDP 8 + Geneve 8) - Cilium ожидает что underlay (физический канал между нодами) = **1500 байт** + > *Стандартный Ethernet MTU — 1500. Все сетевые интерфейсы, драйверы и протоколы по умолчанию исходят из этого. Cilium честно опрашивает интерфейс ноды, видит 1500 и верит ему. Проблема в том что хостинг-провайдер (VMware/VCD) отдаёт виртуалке интерфейс с MTU 1500, но реальный путь между физическими серверами уже — из-за собственной инкапсуляции провайдера.* - Cilium считает: **1500 − 50 = 1450** — такой MTU назначает туннелю и подам - Реальный underlay (измерен `ping -M do`): **1450 байт**, а не 1500 - Пакет из пода = **1450 байт**