• Aucun résultat trouvé

Description des éléments AFDX

1.4 Le réseau de communication AFDX

1.4.1 Description des éléments AFDX

Architecture physique. Le réseau AFDX se compose d’un ensemble de terminaux (end systems) et des commutateurs connectés par des câbles en cuivre bidirectionnels.

Dans sa version initiale, le débit maximal de 100 Mbps est offert pour chaque direction. Les end systems sont des cartes réseau qui fournissent une interface entre les différents modules IMA et non-IMA asynchrones et le support de communication AFDX. Deux réseaux indépendants et redondants, A et B, sont utilisés en parallèle pour assurer la transmission des données dans le cas d’une panne d’un lien ou d’un commutateur du réseau. Chaque end system est donc connecté à un commutateur sur chacun des deux réseaux redondants. La Figure 1.10 présente un exemple d’architecture physique d’un des deux réseaux AFDX.

Figure 1.10 Architecture physique d’un réseau AFDX inter-connectant des modules IMA et LRU

1.4 Le réseau de communication AFDX 21

Architecture logique. Sur un lien physique, plusieurs liens virtuels sont multiplexés pour partager la bande passante disponible. Un lien virtuel, appelé Virtual Link (VL), permet de simplement mettre en oeuvre la communication spécifiée dans un canal APEX. Autrement dit, un VL permet le transfert de messages entre deux applications exécutées par des partitions distantes.

La communication des applications avioniques est réalisée par la lecture et l’écriture des données sur des ports APEX en mode sampling et queueing spécifiés par ARINC 653. Ces ports APEX sont mis en correspondance avec des ports logiques AFDX configurés en mode sampling et queueing au niveau de l’end system. La norme ARINC 664 définit un troisième type de port, Service Access Point (SAP), qui est utilisé pour la communication avec des composants non-AFDX. La Figure 1.11 décrit la correspondance des ports logiques APEX et AFDX sur un scénario de communication entre des partitions des modules distants à travers des VLs .

Pile protocolaire UDP/TCP - IP - Ethernet. Pour associer les messages aux ports de communication AFDX, User Datagram Protocol (UDP) a été choisi. UDP est un protocole de transport sans connexion et sans acquittement qui assure aux VLs le même comportement que les liens du bus ARINC 429. Un port UDP est associé à chaque VL. Les ports SAP peuvent utiliser Transmission Control Protocol (TCP) également.

La couche Internet Protocol (IP) gère la fragmentation des messages dans des paquets en émission et leur ré-assemblage en réception. Conformément à la norme ARINC 664, la fragmentation n’est pas autorisée sur des messages provenant des ports en mode sampling. Ces messages sont directement encapsulés dans des paquets IP. Chaque partition d’un module est configurée avec une adresse IP unicast pour émission et/ou réception. Une adresse IP multicast peut être également utilisée, mais seulement pour les ports en réception.

Au niveau de la couche Medium Access Control (MAC), les paquets IP en émission sont encapsulés dans des trames Ethernet pour être envoyées à travers le réseau AFDX. La taille des trames AFDX est comprise entre 64 et 1518 octets (cf. Figure 1.12).

Figure 1.12 Format de trame AFDX minimale et maximale spécifié par ARINC 664-7

Des adresses MAC de source et de destination sont insérées dans chaque trame transmise. La norme ARINC 664 spécifie l’utilisation des adresses MAC conformes à IEEE 802.3, mais laisse le choix de l’algorithme d’attribution à l’administrateur de réseau. Les adresses sources sont des adresses unicast. Les adresses destination sont des adresses multicast avec une partie constante qui spécifie l’adresse de groupe et une partie variable qui contient l’identifiant de VL. En réception, la couche MAC filtre les trames reçues en ne gardant que celles qui lui sont destinées, en vérifiant leur adresse MAC de destination. La correspondance entre adresse IP et adresse MAC est réalisée par l’identifiant de VL qui se trouve dans le paquet IP, mais également dans l’adresse MAC de destination.

1.4 Le réseau de communication AFDX 23

pondant à leur identifiant de VL.

Gestion des liens virtuels. Un lien virtuel permet de réserver une bande passante pour chaque flux de données émis. Un VL est paramétré par un identifiant unique, le Bandwidth Allocation Gap (BAG) et la longueur maximale (Lmax) et minimale (Lmin)

des trames qui peuvent être émises. Le BAG représente l’intervalle de temps minimal (en ms) qui sépare deux émissions de trames consécutives. La valeur de BAG est une puissance de 2 parmi les valeurs suivantes : 1, 2, 4, 8, 16, 32, 64, 128. Un VL peut émettre au plus une trame de longueur maximale tous les BAG. Par conséquent, la bande passante maximale réservée pour un VL est donnée par la formule suivante (en bits/seconde) :

β = Lmax BAG

Pour s’assurer que cette bande passante est respectée sur chaque VL, l’end system dispose d’un régulateur de trafic qui permet de maintenir l’intervalle minimal inter-trame. La régulation de flux pour deux VLs est illustrée dans la Figure 1.13.

Figure 1.13 Régulation des flux des VLs

A la sortie du régulateur, deux types de flux peuvent être obtenus : — Flux périodique avec un intervalle inter-trame égal à la durée de BAG

— Flux sporadique avec un intervalle inter-trame supérieur ou égal à la durée de BAG. Ensuite, les trames de différents flux sont multiplexées pour être transmises vers le support physique. Il est possible que les trames de plusieurs VLs arrivent en même temps en sortie du régulateur. Un ordonnancement est donc mis en place pour décider l’ordre de transmission des trames. La politique d’ordonnancement appliquée par l’end system est laissée au choix du fabricant de l’équipement. Toutefois une contrainte de gigue en sortie de l’end système est spécifiée par le standard ARINC 664 dans le but de maintenir la durée minimale inter-trame proche du BAG. Cette spécification sera discutée en détail dans la section 1.5.2.

Redondance. Les trames sont dupliquées pour être transmises sur les deux réseaux indépendants et redondants, A et B. Un numéro de séquence est attribué à chaque trame AFDX, qui permet d’identifier chacun des deux réseaux (champ SN sur la Figure 1.12). En réception, seule la première copie reçue de chaque trame est gardée par l’end system. La vérification d’intégrité permet de détecter et d’éliminer les trames invalides ou dupliquées.

Commutation. Un chemin unidirectionnel unicast ou multicast doit être fixé pour chaque VL pour spécifier les commutateurs à traverser. Une table de commutation est configurée de manière statique pour associer chaque VL avec son port de sortie sur chaque commutateur traversé.

Les commutateurs AFDX fonctionnent en mode store and forward, selon lequel les trames sont traitées en deux étapes : la première consiste en la réception des trames sur les ports d’entrée et leur traitement, suivi de l’émission des trames par les ports de sortie. Si l’émission d’une trame n’est pas possible, elle est enregistrée dans une file d’attente au niveau du port de sortie.

Une fonction de filtrage et de contrôle de trafic doit être effectuée pour vérifier que les trames arrivées respectent le format de trame, la bande passante autorisée du VL ou que les adresses de destination sont valides. Les trames non-conformes sont rejetées.

Sur chaque port de sortie, des trames provenant de plusieurs ports d’entrées sont classifiées en fonction de leur priorité. Deux niveaux de priorité sont spécifiés par le standard ARINC 664 : haut et bas. Une file FIFO est associée à chaque niveau. Les trames de la file d’attente de priorité haute sont toujours envoyées en premier. La préemption d’une trame n’étant pas autorisée, l’arrivée d’une trame de priorité haute ne peut donc pas interrompre une trame de priorité basse en cours de transmission (ce qui peut introduire un délai de non-préemption pour les trames de priorité haute). L’ordre des trames d’un même VL établi par la source doit être conservé également au niveau du commutateur.