Этап 2. Новый модуль обратного канала

This commit is contained in:
Maxim
2026-07-16 11:21:14 +03:00
parent b5bf0c7b18
commit 341a5555ab
10 changed files with 428 additions and 9 deletions

View File

@@ -83,6 +83,23 @@ echo "--- FDD-ридбэк ---"
"${SSH[@]}" "root@$A" "grep 'FDD ридбэк' /tmp/tx_fdd.log 2>/dev/null | sed 's/^/A: /'" || true
"${SSH[@]}" "root@$B" "grep 'FDD ридбэк' /tmp/rx_fdd.log 2>/dev/null | sed 's/^/B: /'" || true
# Обратный канал (этап 2): сколько STATUS B отправил и сколько A декодировал.
# Доля доставки — метрика gate самоглушения (§10 п.7).
echo "--- Обратный канал STATUS (B→A) ---"
SENT=$("${SSH[@]}" "root@$B" "grep -o 'отправлено STATUS: [0-9]*' /tmp/rx_fdd.log 2>/dev/null | grep -o '[0-9]*'" || echo "")
RECV=$("${SSH[@]}" "root@$A" "grep -o 'принято STATUS: [0-9]*' /tmp/tx_fdd.log 2>/dev/null | grep -o '[0-9]*'" || echo "")
SENT=${SENT:-0}; RECV=${RECV:-0}
if [ "$SENT" -gt 0 ]; then
echo "B отправил: $SENT | A принял: $RECV | доставка ≈ $(( RECV * 100 / SENT ))%"
else
echo "B отправил: $SENT | A принял: $RECV"
fi
# Итоговая RX-статистика — источник PER (Потери seq / Байт), нужна каждый прогон,
# особенно при GROUPFEC=0 (сырой PER без маскировки групповым FEC).
echo "--- RX-статистика (PER) ---"
"${SSH[@]}" "root@$B" "grep '^Кадров:' /tmp/rx_fdd.log 2>/dev/null | tail -1" || true
if [ "$MD5_SRC" = "$MD5_DST" ]; then
echo "РЕЗУЛЬТАТ: OK — форвард-линк под FDD цел (FBGAIN=$FBGAIN)"
else