Files
hpnn-proto/docs/CHANGE_SPLIT_DATAFLOW_DOCS_PLAN.md

3.6 KiB

План: разделение документа потоков данных

Дата: 2026-08-17 Итоги: CHANGE_SPLIT_DATAFLOW_DOCS_SUMMARY.md

Задача

docs/ROUTING_DATAFLOW.md после шага 3 описывает сразу два разных сценария балансировки — публичный и приватный — в одном наборе диаграмм. Читателю, которому нужен конкретный сценарий, приходится вычитывать его из общего конвейера и мысленно отбрасывать чужие ветки.

Разделить на два самостоятельных документа: по одному на каждый вид балансировки.

Что делаем

  1. docs/PUBLIC_LB_DATAFLOW.md — балансировка публичного трафика: клиент из 192.168.5.0/24, VIP 192.168.5.21:80, маршрутизируемый путь до члена пула и обратно. Сюда же — ARP- и ICMP-респондеры публичного сегмента, обучение adjacency клиента, обратный путь через ct, профиль A как условие возврата ответа.
  2. docs/PRIVATE_LB_DATAFLOW.md — балансировка приватного трафика: клиент внутри сегмента, VIP 10.20.0.100:80 / 10.30.0.100:80, два пути выдачи (коммутируемый для соседа по сегменту и маршрутизируемый для члена из другого сегмента), обратная трансляция в таблице 24, коммутация в таблице 25.
  3. Удалить docs/ROUTING_DATAFLOW.md — его содержимое целиком переходит в два новых документа.
  4. Обновить ссылки: README.md, docs/STEP3_IMPLEMENTATION_PLAN.md.

Принципы разделения

  • Каждый документ самодостаточен: своя топология портов, своя карта таблиц, свои точки обрыва потока и свои ограничения. Дублирование общих сведений допустимо — читатель не должен ходить между файлами.
  • В карте таблиц каждого документа перечислены только таблицы, участвующие в его сценарии, с пометкой о назначении именно в этом пути.
  • Общие подсистемы (health-check, транзит между сегментами, egress бэкендов) описываются в том документе, где они влияют на путь: health-check — кратко в обоих, транзит и коммутация сегмента — в приватном.
  • Диаграммы mermaid сохраняются, но каждая перерисовывается под свой сценарий без чужих ветвей.

Критерии приёмки

  • Ни в одном из двух документов нет диаграммы, смешивающей публичный и приватный путь.
  • В README есть ссылки на оба документа с пояснением, какой для чего.
  • Ссылок на удалённый ROUTING_DATAFLOW.md в репозитории не осталось.