awesome-everything EN
↑ Обратно к восхождению

Сети и протоколы

Физический канал: чтение кода и трасс

Суть Прочитай расчёт BDP, дамп счётчиков ethtool, конфиг SQM-шейпинга и сумму переподписки leaf — затем выбери прочтение, которое сделал бы senior.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 14 min

Проблемы физического канала диагностируются в счётчиках, конфигах и прикидках на салфетке — не в прозе. Прочитай каждый артефакт, предскажи поведение и выбери ход, который senior делает первым.

Цель

Потренируй цикл, который запускаешь на каждом инциденте линка: прочитай число или конфиг, реши, борешься ли ты с физикой или с неверной конфигурацией, и возьми верный рычаг.

Сниппет 1 — приёмное окно на толстой трубе

# Межконтинентальное волокно: канал 10 Гбит/с, RTT 160 мс (NYC -> Sydney)
bandwidth_bps = 10_000_000_000
rtt_s         = 0.160
bdp_bytes     = bandwidth_bps * rtt_s / 8       # байт в полёте при насыщении

rcv_window    = 64 * 1024                        # legacy-дефолт, без window scaling
print(bdp_bytes)                                 # 200_000_000  -> 200 МБ
print(bdp_bytes / rcv_window)                    # ~3125

Сниппет 2 — счётчики интерфейса

$ ethtool -S eth0 | grep -E 'rx_crc|rx_errors|link'
     rx_crc_errors: 48213
     rx_errors:     48213
$ ethtool eth0 | grep -E 'Speed|Duplex'
     Speed: 1000Mb/s
     Duplex: Full

Сниппет 3 — конфиг SQM-шейпинга

# tc / CAKE на WAN-egress домашнего роутера с аплинком 40 Мбит/с
tc qdisc replace dev wan root cake bandwidth 36Mbit docsis
#                                            ^^^^^^^ зашейплено НИЖЕ line rate 40 Мбит/с

Сниппет 4 — сумма переподписки leaf

# Один leaf-свитч в GPU-pod
downlinks_to_servers = 8 * 200e9      # 8 серверов x 200 Гбит/с RoCE NIC
uplinks_to_spines    = 2 * 400e9      # 2 x 400 Гбит/с до spine

oversub = downlinks_to_servers / uplinks_to_spines
# = 1.6 Тбит/с / 0.8 Тбит/с = 2.0   ->  2:1
Итог

Каждый артефакт указывал на одно и то же разделение: окно 64 КБ на пути с BDP 200 МБ — это баг throughput (подними окно, а не кабель); растущий rx_crc_errors — испорченный сигнал (замени кабель/SFP, никогда не игнорируй); CAKE, зашейпленный ниже line rate, переносит bottleneck-очередь туда, где ты можешь её дисциплинировать; а leaf 2:1 режет all-to-all-коллектив вдвое. Прочитай число, реши физика-против-конфига, затем возьми соответствующий рычаг.

Продолжить восхождение ↑Физический канал: аудит и укрощение реального линка
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.