fix(core): NAT entries expire exactly at their age, not at Java's next one-second check

Java's GatewayFirmware.checkNAT and SwitchFirmware.checkSAT look every
second from the start, so an entry goes up to a second late. The engine
expires both exactly at their age: better than Java where Java only
samples, as long as saved files stay compatible (decided 01.10.2026).
The switch did so already; its departure is now named in the code.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-01 14:06:55 +00:00
co-authored by Claude Opus 5.5
parent 088b62469f
commit 739deafbf4
4 changed files with 22 additions and 19 deletions
+5 -2
View File
@@ -415,7 +415,8 @@ Threads zwischen Karte und Ethernet-Schicht sitzen):
LAN-Adresse von außen verschwindet.
* Dynamische Einträge verfallen nach 300 s mal Javas Verzögerungsfaktor
(bei 90 % 55 Minuten), geprüft jede Sekunde, aufgefrischt nur von
eingehenden Paketen (aus dem Code, nicht gemessen).
eingehenden Paketen (aus dem Code, nicht gemessen). Der Kern verfällt sie
seit 01.10.2026 genau in diesem Alter statt beim nächsten Sekundentakt.
## WLAN zur Laufzeit
@@ -468,4 +469,6 @@ nach 5 s gehen dort nur noch Broadcasts.
Javas Switch prüft seine Tabelle einmal je Sekunde ab dem Start
(`SwitchFirmware.checkSAT`), ein Eintrag verfällt also bis zu einer Sekunde
nach der Lernzeit; der Kern genau bei ihr. Noch nicht gemessen.
nach der Lernzeit; der Kern genau bei ihr. Das ist gewollt und wird nicht
gemessen: Wo Java nur in einem Takt nachsieht, macht der Kern es genauer
(Entscheidung 01.10.2026; dasselbe für die NAT-Einträge des Heimrouters).