Avec l'augmentation des besoins en bande passante, de nouvelles normes et topologies de réseau ont été mises en œuvre dans l'automobile. Ceci a conduit à la multiplication des technologies et normes de communication entre les calculateurs, notamment CAN, CAN-FD, FlexRay, LIN, MOST, et d'autres encore comme USB et LVDS. L'échange de données des capteurs s'effectue de manière ad hoc via différentes méthodes de réseau de bus. Les méthodes courantes, telles que CAN et LIN, fonctionnent sur un bus partagé sans commutation (transmission) au niveau du dispositif. Ces cinq dernières années, l'évolution vers des fonctions embarquées plus sophistiquées, impulsée par les systèmes avancés d'aide à la conduite (ADAS), a exigé des niveaux de connectivité plus élevés. L'augmentation significative du débit de communication des données, visant à réduire la latence sur le réseau, a conduit à une réévaluation de l'approche réseau à adopter
Avec le développement des systèmes d'infodivertissement embarqués, l'augmentation de la capacité des réseaux Wi-Fi et la prise en charge future des systèmes V2X, il n'est guère surprenant qu'Ethernet soit devenu le protocole de réseau de facto pour les nouvelles plateformes automobiles. Les protocoles réseau existants resteront probablement utilisés pendant un certain temps ; il est donc important d'intégrer leur prise en charge au sein de l'écosystème Ethernet. La norme IEEE 1722 spécifie une méthode permettant d'intégrer les communications existantes, telles que CAN et LIN, dans des paquets Ethernet, afin de faire d'Ethernet le principal protocole de réseau pour les applications automobiles. Fort d'une longue expérience éprouvée en dehors du secteur automobile, Ethernet possède des atouts considérables et contribuera à simplifier la complexité des réseaux automobiles.
Les faisceaux de câbles figurent parmi les cinq composants les plus coûteux et les plus lourds d'une voiture. L'utilisation d'un réseau unique et éprouvé contribue donc à réduire ces deux facteurs. Les normes Ethernet automobiles de 100 Mbit/s et 1 Gbit/s ont été définies pour une utilisation avec une seule paire de fils de cuivre non blindés.
L'augmentation de la connectivité Internet dans les voitures accroît les surfaces d'attaque et les points d'entrée potentiels, rendant la vigilance primordiale. Elle offre également la possibilité d'offrir davantage de fonctionnalités réseau au sein du commutateur Ethernet grâce à l'analyse du flux de données. Pour les développeurs de systèmes embarqués, la nécessité d'effectuer une analyse en temps réel et à la vitesse du câble de toutes les données entrantes, sans introduire de latence, tout en utilisant des ressources de calcul limitées, peut s'avérer complexe. Obtenir la protection nécessaire ou des fonctionnalités supplémentaires requiert l'inspection des paquets selon un ensemble de règles prédéfinies. Cette inspection est effectuée en fonction de certaines valeurs de données ou conditions rencontrées. On peut citer comme exemples une large gamme de nouvelles applications audio/visuelles et des exigences réseau critiques ou sensibles au temps.
Dans un commutateur Ethernet traditionnel, les décisions concernant le port de destination d'un paquet sont prises à la couche 2 (L2) du modèle OSI. Voir la figure 1.
Dans la figure 1, si l'adresse source (SA) de la trame entrante n'a pas été rencontrée précédemment, elle est ajoutée à la base de données d'adresses avec le numéro de port d'entrée de la trame. Si l'adresse de destination (DA) est déjà présente dans la table de correspondance du pont, le paquet est acheminé en conséquence ; sinon, la trame est diffusée. Au fil des années, les normes IEEE régissant les protocoles de couche 2, tels que le pontage MAC 802.1, les VLAN et les normes de contrôle d'accès réseau par port, se sont concentrées sur les 16 premiers octets d'une trame Ethernet. Elles ont évolué de manière constante, avec des ajouts récents comme les normes de transmission audio/vidéo sensibles au temps (AVB), telles que 802.1AS. En particulier, le besoin d'un réseau déterministe dans l'environnement automobile devient de plus en plus crucial pour garantir une transmission fiable et ponctuelle sur le réseau. La synchronisation de tous les calculateurs sur une seule horloge maître et le maintien de la qualité du contenu audio/vidéo en sont deux exemples. Des fonctionnalités améliorées ont également été introduites pour faciliter l'inspection des informations de la couche 3 du modèle OSI, telles que la priorisation des paquets IPv4/IPv6 et l'écoute clandestine IPv4/IPv6.
Si les techniques susmentionnées étaient initialement suffisantes pour les applications automobiles basées sur Ethernet, une plus grande flexibilité est nécessaire pour inspecter les paquets en temps réel, à la vitesse du réseau, afin de permettre la mise en œuvre de fonctions avancées de classification, de débogage/diagnostic et de sécurité. Cependant, la possibilité de réaliser une inspection approfondie des paquets (DPI) doit être mise en balance avec les contraintes d'espace et de budget propres aux applications automobiles. Historiquement, une telle classification des paquets à la vitesse du réseau nécessitait l'utilisation de nombreux dispositifs gourmands en ressources de calcul, occupant un espace supplémentaire sur la carte et impactant le coût des composants. Toutefois, les nouveaux dispositifs offrent désormais cette fonctionnalité dans un format compact grâce à un moteur DPI, une approche empruntée au monde des réseaux d'entreprise.
Le moteur DPI du commutateur intégré 88Q5050 de Marvell utilise une technique appelée TCAM (mémoire ternaire adressable par contenu). La TCAM traite les données du paquet et compare leur contenu à un filtre prédéfini afin de détecter les correspondances. Selon le résultat (correspondance ou non), le moteur DPI détermine l'action à entreprendre. Cette approche offre trois possibilités (d'où le terme « ternaire ») pour la correspondance des données binaires : l'état de chaque bit peut être 0, 1 ou « X » (indifférent). La règle « indifférent » est particulièrement utile pour configurer des masques facilitant la vérification des plages de données. Implémentée avec un grand nombre de ports parallèles situés dans le pont, la TCAM prend en charge la classification à vitesse filaire et la modification des données sur plusieurs ports. Selon l'implémentation, la TCAM peut agir sur un nombre précis d'octets dans l'en-tête et la charge utile du paquet. Le DPI peut effectuer des actions telles que la modification du port de destination du paquet, la suppression d'une trame, la duplication d'une trame vers un autre port ou la modification de la priorité ou de la file d'attente des trames.
Examinons trois cas d'utilisation de l'inspection approfondie des paquets (DPI) dans le secteur automobile, le premier étant le débogage et le diagnostic. Les systèmes de diagnostic Ethernet embarqués (OBD) sont généralement conçus avec un port 100BASE-TX offrant un débit de 100 Mbit/s. Bien que cela semble suffisant pour la plupart des applications, en pratique, les taux de contention dans les configurations de commutateurs pleinement utilisées entraînent un débit de données supérieur à 100 Mbit/s, rendant impossible la duplication de toutes les trames sur le commutateur sans impacter le flux de données. Il en résulte une perte de paquets et une duplication incomplète. L'alternative consiste à utiliser la DPI pour identifier et classer uniquement les trames pertinentes. Reportez-vous à la figure 2. Dans cet exemple, pour résoudre un problème avec les trames du protocole PTP (Precision Time Protocol), une règle DPI peut être configurée afin de rediriger tous les ports transportant des messages PTP vers le port OBD. Ceci peut être réalisé à l'aide de l'EtherType (0x88F7) ou de l'ID de message (MSG ID), par exemple. Toutes les trames liées au PTP seront alors redirigées vers le port OBD, même si le commutateur fonctionne à pleine capacité.
Une autre application de l'inspection approfondie des paquets (DPI) concerne la sécurité. L'identification des paquets Ethernet valides peut consommer une quantité importante de ressources de calcul pour un processeur situé sur le chemin des données. Par conséquent, une classification en temps réel à faible latence exigerait des capacités de traitement supérieures à celles de la plupart des environnements automobiles, compte tenu de leur taille, de leur nomenclature et de leurs capacités. Cependant, la mémoire TCAM permet de vérifier que chaque paquet entrant dans un commutateur Ethernet est au format requis par le réseau.
Dans l'exemple illustré par la figure 3, les masques TCAM sont configurés pour autoriser uniquement les paquets entrants dont les adresses MAC de destination (DA), d'association de sécurité (SA) et d'identifiant de VLAN (ID VLAN) se situent dans une plage définie. Les adresses de destination sont de type 00:01:02:XX:XX:XX (correspondant à toutes les adresses MAC DA comprises entre 00:01:02:00:00:00 et 00:01:02:FF:FF:FF), les adresses sources de type 00:11:22:XX:XX:XX (correspondant à toutes les adresses MAC SA comprises entre 00:11:22:00:00:00 et 00:11:22:FF:FF:FF) et l'ID VLAN est 0x0XX (correspondant à tous les ID VLAN compris entre 0x000 et 0x0FF).
Cet exemple utilise uniquement les informations de couche 2 du paquet ; toutefois, selon l'implémentation TCAM, les informations de couche 3, 4 ou de couches supérieures peuvent être utilisées pour la correspondance TCAM.![]()
TCAM représente la seule méthode économique, à faible latence et peu gourmande en ressources pour vérifier chaque paquet entrant dans un commutateur. Les paquets qui échouent aux tests peuvent être rejetés ou faire l'objet d'un traitement supplémentaire.
Dans le dernier exemple d'utilisation, l'inspection approfondie des paquets (DPI) est employée pour prendre des décisions de routage pour les paquets Ethernet encapsulés. Comme mentionné précédemment, l'objectif est d'intégrer de nombreux protocoles de réseau automobile existants, tels que LIN et CAN, à Ethernet, dans le but à long terme de réduire la complexité et les coûts des réseaux automobiles. Bien que des passerelles existent pour effectuer cette encapsulation, les décisions de routage doivent être prises après l'encapsulation. Or, l'utilisation de la DPI offre une méthode permettant de prendre des décisions de routage basées sur les données encapsulées. Le format des paquets étant déjà défini selon la norme IEEE 1722-2016, TCAM peut être utilisé pour classifier le type de paquet (CAN, par exemple) et utiliser CAN_BUS_ID et CAN_IDENTIFIER pour créer des actions de routage appropriées.
L'intégration des techniques DPI basées sur la TCAM au sein d'un réseau automobile ouvre la voie à de nombreuses applications, normes et fonctionnalités inédites, auparavant non viables commercialement. Avec l'avènement du véhicule connecté, les constructeurs doivent relever le défi d'intégrer toujours plus de dispositifs de sécurité tout en simplifiant la complexité de l'environnement réseau. Le DPI offre une solution pour concilier ces deux impératifs.
Auteur : Christopher Mash, directeur principal des applications et de l’architecture automobile
