Un punct de fricțiune recurent în operațiunile comune și de coaliție este insula TAK deconectată: Unitatea Alpha are propriul TAK Server care rulează în zona înaintată, Unitatea Bravo are un server separat cu două eșaloane mai sus, iar niciuna nu poate vedea urmele celeilalte pe hartă. Federația TAK Server este protocolul conceput pentru a rezolva această problemă — conectează două sau mai multe instanțe TAK Server independente, astfel încât fluxurile de evenimente CoT să circule bidirecțional prin graniță, oferind fiecărui operator o imagine operațională comună (COP) unificată fără a colaps serverele separate într-un singur punct de eșec. Acest ghid acoperă întregul traseu de federație: decizii arhitecturale, configurarea API REST CloudTAK, configurarea XML pentru TAK Server moștenire, filtre de grupuri și tipuri CoT, securitate TLS mutual și o procedură sistematică de testare pentru verificarea propagării corecte a urmelor.
Ce este federația TAK Server și de ce contează
Federația este un protocol server-la-server care rulează pe portul TCP 9000 cu TLS mutual. Când două servere TAK sunt federate, fiecare transmite evenimentele CoT selectate celuilalt — oferind operatorilor de pe ambele servere o imagine operațională comună fără modificări de configurare pe partea clientului.
- Desfășurări multi-eșalon — serverul companiei înaintate și serverul batalionului din spate partajează conștientizarea situațională fără a fuziona.
- Operațiuni de coaliție — autorități administrative separate partajează urme selectate peste granițele organizaționale.
- Reziliență — federația se restabilește automat când conectivitatea revine după o pană de server.
- Gestionarea lățimii de bandă — filtrele lasă să treacă doar tipurile CoT relevante operațional pe legăturile constrânse.
Arhitectura federației: peer-to-peer vs. hub-and-spoke
Peer-to-peer creează O(n²) legături între toate serverele. Hub-and-spoke conectează toate serverele la un hub central, necesitând doar o singură legătură per spoke. Hub-and-spoke este de obicei preferat pentru trei sau mai multe servere — mai simplu de configurat, mai ușor de depapat, cu costul unui salt de federație suplimentar.
Configurarea federației CloudTAK
curl -s -X POST https://tak.yourdomain.com:8443/api/federation \
-H "Authorization: Bearer $ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "BN-TAK-Server",
"address": "tak.battalion.mil",
"port": 9000,
"protocol": "tls",
"ca_cert": "/ssl/remote-ca.pem",
"bidirectional": true,
"enabled": true
}'
Alternativ, definiți legăturile declarativ în federation.json montat la /app/config/federation.json.
Configurarea federației TAK Server moștenire
Activați listener-ul de federație în CoreConfig.xml cu v2Enabled="true" pe portul 9000. Definiți conexiunile peer de ieșire în federation-server.xml. Importați CA-ul remote în truststore-ul JKS de federație cu keytool -import și reporniți serviciul.
Filtrare: controlul a ceea ce traversează granița de federație
Permiteți a-f- (prietenos), a-n- (neutru) și t-x-m-c (chat) în mod implicit; blocați b- (fluxuri de senzori). Aplicați filtre de grup pentru a controla urmele echipelor care traversează granița.
Securitate: TLS mutual, fixarea certificatelor și revocare
Linie de bază de securitate: Fiecare legătură de federație operațională trebuie să utilizeze TLS mutual. Nu implementați niciodată federația cu certificate auto-semnate dacă calea de rețea nu este fizic izolată.
CloudTAK activează mTLS automat când este furnizat un ca_cert. TAK Server moștenire necesită clientAuth="need". Fixați amprenta CA-ului remote: openssl x509 -in remote-ca.pem -noout -fingerprint -sha256.
Testarea federației
Injectați un eveniment CoT sintetic a-f-G-U-C în Serverul A și verificați că callsign-ul apare pe un client conectat la Serverul B în 2–3 secunde. Confirmați valori nenule pentru events_forwarded via GET /api/federation.
Probleme frecvente
„Connecting" la nesfârșit: verificați portul 9000 cu openssl s_client -connect remote-server:9000.
Conectat dar fără urme: un decalaj de ceas de peste 5 minute face evenimentele CoT să sosească ca expirate. Sincronizați NTP pe ambele servere.
Nepotrivire de versiune de protocol: asigurați-vă că TAK Server moștenire 4.8+ cu Federația v2 activată.
Deconectări NAT: setați "keepalive_seconds": 60 în definiția peer-ului de federație CloudTAK.