🖥️ Section 04 — Votre Domaine

Infrastructure IT & Réseau

Vous avez le CFC informatique — c'est votre terrain. Cette section fait le pont entre vos connaissances réseau et les spécificités de l'environnement simulateur : protocoles temps réel, synchronisation précise, redondance et dépannage réseau militaire.

DIS / IEEE 1278.1 HLA / IEEE 1516 UDP Multicast PTP IEEE 1588 VLANs Subnetting RTOS Wireshark
🌐

Architecture Réseau d'un Simulateur

Un simulateur de vol militaire n'est pas un PC connecté à Internet. C'est un réseau d'équipements spécialisés avec des exigences très strictes de latence, de déterminisme et de sécurité.

ℹ️ Votre atout CFC Info — Ce que vous savez déjà

TCP/IP, subnetting, VLANs, routage, switching, Wireshark — vous connaissez tout ça. Dans un simulateur, ces concepts s'appliquent, mais avec des contraintes supplémentaires : le temps réel est non négociable, la sécurité est militaire (classification), et les protocoles sont spécialisés (DIS, HLA). Mettez en avant votre background et montrez que vous comprenez les différences.

Segmentation réseau — Les 3 réseaux principaux

RéseauRôleCaractéristiquesExemples de trafic
Réseau Temps Réel (RT) Données de simulation critiques Latence <1 ms, déterministe, dédié, 1–10 Gbps, isolé physiquement PDUs DIS (position, état), commandes actionneurs, modèle de vol → IG
Réseau de Gestion Administration, monitoring, IOS Latence tolérable (<100 ms), VLAN séparé, accès contrôlé Commandes IOS, logs système, SNMP, accès SSH/RDP maintenance
Réseau de Maintenance Mises à jour, diagnostics, sauvegardes Séparé physiquement ou logiquement (VLAN), accès restreint Transfert de base de données terrain, MàJ logicielles, sauvegardes

Architecture VLAN détaillée

Les VLANs (Virtual Local Area Networks) permettent de segmenter logiquement un réseau physique unique en plusieurs réseaux isolés. En simulateur militaire :

  • VLAN 100 — Temps réel DIS/HLA : trafic simulation uniquement. QoS priorité maximale (DSCP EF — Expedited Forwarding). Aucun autre trafic autorisé.
  • VLAN 200 — Gestion IOS : accès instructeur, monitoring en temps réel des paramètres, injection de pannes.
  • VLAN 300 — Maintenance : accès restreint par liste de contrôle d'accès (ACL). Journaux d'accès obligatoires.
  • VLAN 400 — Voix/Interphone : communications radio simulées, interphone cockpit-IOS, audio de simulation.

Les switches doivent être managés (configuration VLAN, QoS, spanning tree). Des switches industriels à faible latence sont utilisés (ex : Cisco Industrial, Hirschmann, Belden). Le temps de traversée d'un switch doit être <5 µs (microseconde) pour le trafic temps réel.

# Exemple de config VLAN (Cisco IOS)
interface GigabitEthernet0/1
 description Calculateur_RT_1
 switchport mode access
 switchport access vlan 100
 spanning-tree portfast
 no shutdown

interface GigabitEthernet0/10
 description IOS_Station
 switchport mode access
 switchport access vlan 200

interface GigabitEthernet0/24
 description Trunk_vers_core
 switchport mode trunk
 switchport trunk allowed vlan 100,200,300,400

! QoS : priorité VLAN RT
class-map match-all REALTIME
 match vlan 100
policy-map SIM-QOS
 class REALTIME
  priority percent 60

Adressage IP recommandé pour un simulateur

VLANRéseauMasquePlage hôtesHôtes max
100 — RT10.100.0.0/2410.100.0.1 – .254254
200 — Gestion10.200.0.0/2810.200.0.1 – .1414
300 — Maint.10.200.0.16/2810.200.0.17 – .3014
400 — Audio10.200.0.32/2910.200.0.33 – .386
Multicast DIS239.0.0.1Groupe multicast DIS
📡

Protocoles Spécifiques à la Simulation Distribuée

DIS — Distributed Interactive Simulation (IEEE 1278.1)

DIS est le standard de simulation distribuée interopérable. Il permet à des simulateurs de constructeurs différents d'interagir en réseau comme si les entités simulées évoluaient dans le même espace.

Principe : chaque simulateur publie l'état de ses entités (avions, véhicules, missiles) sous forme de PDUs (Protocol Data Units) diffusés en multicast UDP sur le réseau.

PDUs principaux

  • Entity State PDU : position (X,Y,Z), orientation (psi, theta, phi), vitesse, accélération, état de l'entité. Émis toutes les 5 secondes ou à chaque changement significatif (Dead Reckoning).
  • Fire PDU : événement de tir (qui tire, quelle cible, quel armement, depuis quelle position).
  • Detonation PDU : impact ou explosion (résultat d'un tir).
  • Collision PDU : collision entre entités.
  • Signal PDU : transmission radio simulée.
  • Electromagnetic Emission PDU : émissions radar, brouillage.
📦 Structure d'une Entity State PDU
PDU Header (12 octets)
├─ Protocol Version : DIS 6 / DIS 7
├─ PDU Type : 1 (Entity State)
├─ Length : longueur totale
└─ Timestamp : 32 bits

Entity Identifier
├─ Site ID, Application ID
└─ Entity ID (unique)

Entity Type
├─ Kind (avion, missile…)
├─ Domain (air, terre, mer…)
├─ Country (STANAG)
└─ Category, Subcategory

Location (World Coordinates)
├─ X, Y, Z (géocentrique ECEF)
└─ Double précision (64 bits)

Velocity : vx, vy, vz
Orientation : psi, theta, phi
Dead Reckoning (extrapolation)
Entity Appearance (état)

DIS utilise UDP port 3000 par défaut, groupe multicast 224.0.0.1 (ou configurable). Pas de garantie de livraison — les pertes de paquets sont tolérées (la suivante arrive dans 5ms).

Dead Reckoning — Comment DIS gère la bande passante

Sans optimisation, un simulateur avec 100 entités émettrait 100 × 60 fps = 6 000 PDUs/seconde. Le Dead Reckoning résout ce problème :

  • Chaque nœud extrapole la position des entités distantes entre les mises à jour, en utilisant la vitesse et l'accélération reçues dans la dernière PDU.
  • Une PDU n'est envoyée que si l'erreur d'extrapolation dépasse un seuil (position threshold = 1 m, orientation threshold = 3°) ou toutes les 5 secondes au minimum.
  • Résultat : réduction de 90% du trafic réseau tout en maintenant une précision suffisante.

HLA — High Level Architecture (IEEE 1516)

HLA est le successeur de DIS pour les simulations complexes de grande échelle (armée entière, exercice multinational). Plus flexible et plus riche que DIS.

Concepts clés :

  • Fédération : ensemble de simulateurs (fédérés) collaborant dans un exercice.
  • Fédéré : un simulateur individuel (ex : simulateur Rafale, simulateur radar sol, simulateur logistique).
  • RTI — Runtime Infrastructure : middleware qui gère les communications entre fédérés. Équivalent HLA du réseau DIS. Ex : Pitch pRTI, VT MAK RTI.
  • FOM — Federation Object Model : schéma XML définissant les classes d'objets échangés (avion, missile, radar, météo…) et leurs attributs.
  • Time Management : HLA gère la synchronisation temporelle des fédérés, permettant des simulations plus lentes ou plus rapides que le temps réel.
CritèreDISHLA
StandardIEEE 1278.1IEEE 1516
TransportUDP MulticastVia RTI (TCP/UDP)
Modèle donnéesPDUs fixesFOM extensible
ScalabilitéLimitée (~100 entités)Milliers d'entités
Gestion du tempsTimestamp simpleTime Management avancé
Usage typiqueSimulateur unique ↔ salle de tirExercice multinational
ComplexitéFaible (simple à déboguer)Élevée (RTI, FOM)

UDP Multicast — Le transport de DIS

Le multicast IP permet d'envoyer un paquet à un groupe de destinataires simultanément, sans dupliquer le trafic sur le lien source (contrairement au broadcast ou à l'unicast répété).

  • Plage multicast IPv4 : 224.0.0.0 à 239.255.255.255
  • Multicast local (lien) : 224.0.0.x (non routé)
  • Multicast administratif (simulateur) : 239.0.0.0/8 (administrativement scopé, routable en interne)
  • Inscription au groupe : protocole IGMP (IGMPv3 recommandé)
  • Switch multicast : IGMP Snooping activé pour éviter d'inonder tous les ports
# Rejoindre un groupe multicast DIS (Python)
import socket, struct

MCAST_GRP = '239.0.0.1'
MCAST_PORT = 3000

sock = socket.socket(
    socket.AF_INET,
    socket.SOCK_DGRAM,
    socket.IPPROTO_UDP
)
sock.setsockopt(
    socket.SOL_SOCKET,
    socket.SO_REUSEADDR, 1
)
sock.bind(('', MCAST_PORT))

# Rejoindre le groupe multicast
mreq = struct.pack(
    '4sL',
    socket.inet_aton(MCAST_GRP),
    socket.INADDR_ANY
)
sock.setsockopt(
    socket.IPPROTO_IP,
    socket.IP_ADD_MEMBERSHIP,
    mreq
)

while True:
    data, addr = sock.recvfrom(65535)
    # Parser le PDU DIS reçu
    pdu_type = data[2]
    print(f"PDU type {pdu_type} de {addr}")

PTP — Precision Time Protocol (IEEE 1588)

La synchronisation temporelle est vitale en simulation distribuée. Sans heure commune précise, les PDUs DIS ne peuvent pas être corrélés dans le temps, et la simulation dégénère.

  • NTP (Network Time Protocol) : précision ~1 ms sur LAN. Insuffisant pour les simulateurs haute fidélité (jitter perceptible).
  • PTP/IEEE 1588 : précision sub-microseconde (<100 ns sur LAN avec hardware timestamping). Standard pour la simulation militaire.
  • Modes PTP : BC (Boundary Clock), TC (Transparent Clock), OC (Ordinary Clock). Les switches doivent supporter PTP pour éviter l'accumulation de latence.
  • Implémentations : linuxptp (Linux), Windows Time Service (moins précis), cartes NI avec hardware PTP.
Précision NTP
~1 ms
Insuffisant simulation
Précision PTP (software)
~1 µs
Acceptable simulation
Précision PTP (hardware)
<100 ns
Excellent, standard militaire
Cycle modèle de vol
1 ms
1 kHz → besoin PTP
🖥️

Gestion des Serveurs — Architecture Matérielle

Serveurs de calcul temps réel

Ces serveurs exécutent le modèle de vol, le modèle moteur et l'avionique en temps réel strict. Ils sont au cœur du simulateur.

  • OS : VxWorks 7 (Wind River) ou QNX Neutrino 8. RTOS certifiés pour le temps réel strict. Pas de Windows ni Linux standard (latence non déterministe).
  • CPU : Intel Xeon haute fréquence (priorité à la fréquence pour les tâches single-thread temps réel), ~3.5–5 GHz.
  • RAM : ECC obligatoire (Error-Correcting Code) — une erreur mémoire non corrigée = panne simulation → ECC détecte et corrige.
  • Stockage : SSD NVMe pour le démarrage rapide. Les données temps réel sont en RAM (pas d'accès disque en boucle temps réel).
  • NIC temps réel : cartes réseau avec hardware timestamping PTP (Intel X710, Solarflare) et faible latence (<1 µs).
ℹ️ Pourquoi Windows ne convient pas

Windows et Linux standard utilisent des schedulers non déterministes : une tâche peut être interrompue pendant 10–100 ms par le système (garbage collector, interruption réseau, gestion mémoire virtuelle).

Un RTOS comme VxWorks garantit qu'une tâche de priorité haute sera exécutée dans une fenêtre temporelle garantie (<10 µs de jitter). C'est la définition du "temps réel" : pas forcément rapide, mais prévisible et déterministe.

Serveurs de génération d'images (Image Generation)

  • GPU : NVIDIA RTX A6000, A100, ou équivalents professionnels. Pas de GPU grand public (pilotes non certifiés, stabilité insuffisante).
  • Multi-GPU : plusieurs GPUs par serveur, chacun gérant un ou plusieurs canaux visuels (une "fenêtre" du dome de projection).
  • OS : Windows avec optimisations temps réel (RTSS), ou Linux avec CONFIG_PREEMPT_RT (kernel temps réel).
  • Synchronisation des trames (frame sync) : NVIDIA Quadro Sync II ou AMD FirePro avec genlock pour synchroniser les GPUs à la microseconde. Sans synchronisation, les images se décalent (tearing) sur le dome.
  • Débits : un serveur IG peut générer jusqu'à 4–8 canaux 4K à 120 fps. Débit GPU : centaines de Gbps de données pixels.

Redondance et haute disponibilité

ComposantStratégie de redondanceObjectif
Alimentation serveursDual PSU + UPS centralisé + groupe électrogèneZéro coupure — arrêt d'urgence contrôlé
StockageRAID 10 (miroir + bandes) + backup externe0 perte données, RTO < 1h
RéseauLink aggregation (LACP), switches redondants, chemins multiplesContinuité si un switch tombe
Calculateurs RTHot standby (calculateur de secours prêt, bascule <100ms)Continuité session de formation
Système hydrauliquePompe principale + pompe de secours électriqueRetour position neutre plateforme en cas de panne
Time Master (PTP)Grand Master primaire + Grand Master secondaireSynchronisation continue même en cas de panne d'un serveur temps
🔧

Subnetting Rapide & Dépannage Réseau

Référence subnetting rapide (IPv4)

Préfixe CIDRMasque décimalNb adressesHôtes utilisablesUsage typique
/30255.255.255.25242Liaison point-à-point
/29255.255.255.24886Petit segment (audio, IPMI)
/28255.255.255.2401614Segment gestion (IOS, maint.)
/27255.255.255.2243230Segment moyen
/26255.255.255.1926462Segment large
/25255.255.255.128128126Segment RT (beaucoup de nœuds)
/24255.255.255.0256254Réseau standard complet
💡 Astuce calcul rapide /28

/28 = 32-28 = 4 bits pour les hôtes. 2⁴ = 16 adresses. Moins réseau (.0) et broadcast (.15) = 14 hôtes utilisables. Les blocs se succèdent par pas de 16 : .0, .16, .32, .48, etc.

Commandes de dépannage réseau — Votre arsenal

📶
Diagnostic de connectivité de base CFC INFO
# Test de connectivité basique
ping 10.100.0.1                    # Tester si un hôte répond
ping -f -l 1400 10.100.0.1        # Test MTU (fragmentation)
ping -i 0.001 10.100.0.1          # Ping haute fréquence (Linux)

# Traceroute (latence par saut)
traceroute 10.100.0.1             # Linux
tracert 10.100.0.1                # Windows

# Résolution DNS
nslookup sim-rt-node-01           # Résolution par nom
dig sim-rt-node-01 @10.200.0.1   # DNS direct

# Ports et connexions
netstat -an | grep 3000            # Vérifier port DIS ouvert
ss -tnup                           # Sockets actifs (Linux)

# Route / ARP
ip route show                      # Table de routage Linux
arp -a                             # Table ARP (MAC → IP)
🔬
Analyse avancée avec Wireshark / tcpdump AVANCÉ

Captures ciblées pour la simulation

# Capturer tout le trafic DIS (port 3000 UDP)
tcpdump -i eth0 -w capture_dis.pcap \
  'udp port 3000'

# Capturer trafic multicast DIS spécifique
tcpdump -i eth0 -w capture_mcast.pcap \
  'host 239.0.0.1 and udp port 3000'

# Capturer et afficher en temps réel
tcpdump -i eth0 -n \
  'udp port 3000' -c 100

# Mesurer la latence réseau (Linux)
ping -D -i 0.001 10.100.0.5 | \
  awk '{print $1,$NF}'

Filtres Wireshark utiles pour DIS

# Filtre Wireshark pour DIS
udp.port == 3000
udp.dstport == 3000 and ip.dst == 239.0.0.1

# Analyser les PDUs DIS (avec plugin)
# Wireshark a un dissecteur DIS intégré
# Menu : Analyze → Decode As → DIS

# Mesurer le jitter (variance latence)
# Statistics → TCP Stream Graphs → Round Trip Time
# Pour DIS/UDP : Statistics → I/O Graph

Que chercher dans une capture DIS ?

  • Fréquence des Entity State PDUs : doivent arriver régulièrement (toutes les 5s au max, ou lors de changement). Un gap = perte de paquets ou nœud en panne.
  • Jitter : variation du délai entre PDUs. Doit être <2 ms sur le réseau RT. Un jitter élevé indique des problèmes réseau (congestion, switch surchargé).
  • Paquets fragmentés : un PDU DIS volumineux dépassant le MTU (1500 octets Ethernet) sera fragmenté → augmente la latence et le risque de perte. Vérifier le MTU path.
  • Paquets dupliqués : signe d'une boucle réseau (STP non configuré) ou multicast hors contrôle.
Tests de performance réseau PRATIQUE
# Test de bande passante (iPerf3)
# Côté serveur (nœud RT cible)
iperf3 -s -p 5201

# Côté client (nœud source)
iperf3 -c 10.100.0.1 -u \
  -b 100M -l 1000 -t 10
# -u : UDP (comme DIS)
# -b 100M : 100 Mbps objectif
# -l 1000 : taille paquet ~PDU DIS
# -t 10 : durée 10 secondes

# Résultat attendu sur réseau RT 1Gbps :
# Bandwidth: 100 Mbit/s
# Jitter: < 0.1 ms
# Lost: 0 / 0 (0%)

# Test latence précise (hping3)
hping3 --udp -p 3000 \
  --fast 10.100.0.1 -c 1000

Métriques cibles pour un réseau RT simulateur

  • Latence : <500 µs (microseconde) entre deux nœuds RT
  • Jitter : <100 µs (variation de latence)
  • Perte de paquets : 0% sur réseau local (tolérance zéro)
  • Bande passante : minimum 100 Mbps par nœud, 1–10 Gbps recommandé
🔒
Sécurité réseau en contexte militaire MILITAIRE

Un simulateur militaire contient des informations sensibles (modèles d'armes, bibliothèques de menaces, tactiques). La sécurité réseau est soumise à des réglementations strictes :

  • Isolation physique (Air-gap) : le réseau de simulation est physiquement isolé d'Internet et du réseau d'entreprise. Aucune connexion possible vers l'extérieur.
  • Contrôle des supports amovibles : clés USB et CD chiffrés et contrôlés. Tout support entrant passe par un scanner de sécurité (cross-domain solution).
  • Journalisation : tous les accès, modifications de configuration et interventions maintenance sont loggés et conservés (audit trail immuable).
  • Habilitation du personnel : accès au simulateur conditionné à une habilitation de sécurité correspondant à la classification des données traitées.
  • Patch management : les correctifs de sécurité sont testés en environnement de staging avant application. Pas de mise à jour automatique (WSUS contrôlé, offline).
  • Chiffrement : les données sensibles (bibliothèques de menaces, données de mission) sont chiffrées au repos (AES-256) et en transit (TLS 1.3 sur les réseaux de gestion).
⚠️ En entretien

Montrez que vous êtes conscient de la sensibilité de l'environnement militaire. Mentionnez les procédures de sécurité, le respect des classifications, et votre compréhension du fait que la sécurité n'est pas une option mais une obligation légale.

Méthode de dépannage réseau en simulateur

  1. Identifier le symptôme précis
    Quel nœud est affecté ? Depuis quand ? Est-ce intermittent ou permanent ? Y a-t-il eu une modification récente (câble, config, MàJ) ? Vérifier les logs système de tous les nœuds concernés.
  2. Vérification physique
    Câble connecté ? LED switch allumée (link) ? Quel débit négocié (100M/1G/10G) ? Câble endommagé ? Tester avec un autre câble (Cat6A minimum pour réseau RT simulateur). Vérifier SFP/transceiver si fibre optique.
  3. Couche 2 — VLAN et MAC
    Le port est-il dans le bon VLAN ? La table MAC du switch est-elle correcte ? Y a-t-il une boucle (STP convergence) ? show mac address-table / show spanning-tree sur le switch.
  4. Couche 3 — IP et routage
    Ping vers la passerelle. Traceroute pour identifier où ça bloque. Vérifier la table de routage (ip route) et la table ARP (arp -a). Vérifier les ACL (Access Control Lists) sur le switch/routeur.
  5. Couche Application — DIS/HLA
    Capture Wireshark/tcpdump sur le port DIS (3000/UDP). Les PDUs arrivent-ils ? Quelle est la fréquence ? Vérifier que le groupe multicast est bien rejoint (netstat -gn). Vérifier IGMP Snooping sur le switch (peut bloquer le multicast si mal configuré).
  6. Performance — Latence et jitter
    iPerf3 entre les nœuds concernés. Les métriques sont-elles dans les seuils ? Si jitter élevé : chercher la congestion (switch surchargé, QoS mal configurée, autre trafic sur le VLAN RT). Si latence élevée : vérifier le nombre de sauts, les temps de propagation des switches.
⚙️

RTOS — Temps Réel vs Temps Général

Comprendre la différence entre un OS classique et un RTOS est fondamental pour un technicien simulateur, surtout avec votre background informatique.

OS classique (Windows, Linux)

  • Scheduler best-effort : le CPU est alloué de façon "équitable" entre les processus.
  • Latences variables : une tâche peut être bloquée pendant 10–100 ms par le kernel (garbage collector, I/O, interruptions matérielles).
  • Mémoire virtuelle : swap vers disque possible → latence imprévisible (page fault).
  • Usage simulateur : IOS, bases de données, gestion (là où quelques ms de délai sont acceptables).

RTOS (VxWorks, QNX)

  • Scheduler prioritaire préemptif : une tâche haute priorité prend immédiatement le CPU, sans attendre.
  • Latence garantie : le délai maximal entre un événement et sa réponse est borné et prévisible (<10 µs typique).
  • Pas de swap : mémoire entièrement résidente (mlockall). Pas de page fault.
  • Tâches temps réel : chaque tâche a une priorité fixe. La tâche de modèle de vol tourne à la priorité la plus haute, jamais interrompue.
  • Usage simulateur : modèle de vol (1kHz), contrôle actionneurs, acquisition capteurs.
💡 En entretien — Valoriser votre CFC Info

Votre formation IT est un atout majeur pour ce poste. Dites : "Mon CFC m'a formé au réseau, à l'administration système et au dépannage. Je comprends les VLANs, le subnetting, et j'utilise des outils comme Wireshark au quotidien. Ce que j'ai appris en préparant cet entretien, c'est comment ces compétences s'appliquent dans un contexte temps réel strict, avec des protocoles comme DIS et HLA que je n'avais pas rencontrés mais que je comprends car ils sont basés sur UDP et le multicast que je maîtrise déjà."

← Section 03 : Aéronautique 📝 Quiz final →