• Aucun résultat trouvé

Exploitation de l’information de routage

5.4.2 Codage street-sign

Le codage street-sign utilise une liste d’instructions du type Nord, Sud, Est, Ouest et descendre, indiquant la direction à prendre à chaque routeur, ou à des routeurs identifiés. Une fois exécutée, l’instruction courante est supprimée et les instructions restantes sont décalées pour que la suivante prenne sa place en tête de liste. Ainsi, à la réception, les instructions ont toutes été supprimées. Conserver ces instructions ne serait pas suffisant pour identifier l’émetteur car ce type d’instruction ne permet de connaître que le port de sortie du routeur et pas le port par lequel le paquet est entré.

5.4.3 Analyse

Ces codages ne permettent pas au destinataire d’authentifier la provenance du paquet. Nous proposons donc l’approche suivante.

5.5 Exploitation de l’information de routage

5.5.1 Principe du codage relatif pour l’authentification

Nous expliquons ici comment nous pouvons utiliser l’information de routage pour son utilisation au niveau de la destination.

Nous avons vu qu’avec les techniques classiques, les informations de routage ne sont pas conservées ou sont inexploitables au niveau de la destination.

Notre technique de codage des instructions de chemin doit offrir une clef unique à destination permettant d’identifier l’émetteur. Nous proposons une technique de codage avec des perfectionnements qui permettent de tirer parti de cette information pour deux objectifs, la sécurité et la reconfiguration.

Notre codage fonctionne sur le modèle du codage street-sign, mais de manière relative. Le port de sortie d’un routeur est indiqué relativement au port par lequel le paquet est entré. Ainsi, dans le routeur, comme cela peut se faire dans le cas d’un rond point, la sortie est indiquée par son occurrence à partir de l’entrée par laquelle le paquet est arrivée. Comme le montre la figure 5.8, nous avons choisi arbitrairement de compter le numéro des sorties dans le sens inverse des aiguilles d’une montre dans le cas d’une topologie 2D. Le paquet sortira par la neme` sortie. De plus, les instructions doivent être préservées. Ainsi, les instructions ne sont plus supprimées après avoir été exécutées, mais décalées de façon circulaire.

Le champ des instructions de chemin du paquet indique ainsi de façon unique l’identité de l’émetteur. L’émetteur ne peut se faire passer pour un autre auprès d’un destinataire car en mentant sur ses instructions de chemin, il n’arriverait pas à ce destinataire.

Aucun champ supplémentaire n’est utilisé. C’est donc une façon simple et sans surcoût de disposer d’une trace indiquant la provenance d’un paquet, une sorte de passeport ou certificat d’identité.

Propriété 1 : Le champ des instructions de chemin du paquet constitue un certificat permettant au destinataire de vérifier l’identité de la NI

émet-82technique de codage des chemins pour la sécurité et la reconfiguration

Fig. 5.8 – Le codage des instructions de chemin selon un codage relatif à la source

trice.

5.5.2 Le complément automatique du chemin (SCP)

Notre technique de codage peut aussi permettre de construire le chemin inverse de façon automatique. Nous appelons cela le codage SCP (Self Complemented Path). En effet, le chemin retour peut être déduit du chemin aller et de l’arité (nombre de ports) de chacun des routeurs traversés.

Le nombre de ports de chaque routeur n’est pas connu du récepteur, en revanche chaque routeur est bien placé pour connaître son nombre de ports. Ainsi, le rempla-cement des instructions aller par les instructions retour est fait au fil de la traversée des routeurs (figure 5.9).

Fig. 5.9 – Les instructions de chemin aller et retour

Propriété 2 : À chaque routeur, la somme de l’instruction courante dans le sens aller et de l’instruction correspondante dans le sens retour est égale à l’arité du routeur.

5.5 exploitation de l’information de routage 83 donne que les instructions aller. Lorsqu’ils s’échangent des paquets, chaque routeur traversé exécute l’instruction de chemin courante et la complémente en fonction de son arité et décale les instructions de façon circulaire comme expliqué dans la figure 5.9. La restriction que nous nous fixons ici est que les paquets aller et retour empruntent exactement les mêmes chemins mais dans des directions opposées.

Propriété 3 : Les instructions d’un chemin, une fois complémentées et organisées dans l’ordre inverse, sont identiques aux instructions de chemin dans le sens opposé. Nous notons ceci de la façon suivante :

R(AtoB) = BtoA

Ainsi, chaque NI vérifie la propriété 3, pour authentifier l’identité de l’émetteur. Si nous voulons nous prémunir des livelocks, il existe deux solutions.

– Un champ supplémentaire dans l’entête du paquet réalise un comptage du nombre de sauts effectués (nombre de liens traversés) et permet aux routeurs de suppri-mer ce paquet quand ce nombre dépasse une limite fixée.

– Une instruction de fin de chemin peut être utilisée (égale à 0 dans la figure 5.9).

Propriété 4 : Dans la liste des instructions de chemin, une instruction de fin de chemin signale que le paquet est arrivé à destination.

Dans le cas d’un transfert correct, l’instruction de fin de chemin ne devient l’instruction courante que lorsque le paquet arrive à la NI destinatrice. Cette dernière vérifie alors que cela est bien le cas. Si ce n’est pas le cas le paquet est considéré incorrect et est supprimé. De plus, chaque routeur vérifie deux choses. Premièrement il vérifie que l’instruction courante n’est pas l’instruction de fin de chemin. Deuxièmement, il vérifie que l’instruction fin de chemin est bien présente parmi les instructions. Si l’une de ces deux conditions n’est pas respectée, alors le routeur supprime le paquet.

La figure 5.10 montre un exemple. B autorise uniquement A à lui émettre des paquets. C tente d’envoyer un paquet à B. Lorsque la NI de B reçoit le paquet, elle vérifie le champ des instructions de chemin et le compare à ceux autorisés, elle détecte ainsi l’émission non autorisée.

De plus, le champ des instructions de chemin du paquet reçu est celui nécessaire pour répondre par le même chemin excepté le fait que l’ordre des instructions est inversé. Le coût mineur dû à l’opération de complément dans les routeurs est contre balancé par l’économie en mémoire et communication, car le CCM ne fournit que les instructions de chemin pour émettre et un bit de statut par chemin pour indiquer si le sens réception est autorisé.

Notons que dans le contexte de la sécurité l’opération de complément n’est pas obligatoire. Cependant, elle est intéressante puisqu’elle rend l’authentification dépen-dante du chemin emprunté et de l’arité des routeurs traversés.

Cette technique est efficace en termes de délai et d’intégration puisque l’instruction complémentée est codée en parallèle de l’étape de décodage de l’instruction et que la soustraction optimisée pour l’arité du routeur peut être facilement câblée.

Le champ d’instructions de chemin pour répondre au CCM est stocké dans toutes les NIs, de sorte qu’elles puissent l’identifier et que l’on ne puisse usurper son identité.

84technique de codage des chemins pour la sécurité et la reconfiguration

Fig. 5.10 – Exemple d’authentification par le chemin

5.5.3 Utilisation pour la reconfiguration

Notons que la propriété 2 a un autre grand intérêt que nous appelons Trusted

Boome-rang Path (TBP). Si la sécurité n’est pas le but recherché, la propriété de transformer

le chemin aller en chemin retour est utile pour permettre à un bloc IP esclave de répondre à une requête de lecture émise depuis n’importe quel bloc IP maître. Ainsi, aucune table de chemin n’est nécessaire pour indiquer le chemin des esclaves vers les maîtres, ce qui revêt un intérêt majeure en termes de configuration et d’économie de taille mémoire. Le paquet reçu par l’esclave fournit directement les instructions de chemin nécessaires pour répondre au maître en question. Ainsi, le grand avantage de cette technique est que l’esclave peut ignorer la localisation du maître, ce qui permet la mobilité des IPs dans un système reconfigurable [79].

Une transaction entre un maître et un esclave est décrite sur la figure 5.11. Le maître NIa utilise l’authentification SPA alors que l’esclave NIb utilise le TBP pour répondre. La technique SCP réalise le complément des instructions de chemin.