Difference between revisions of "MOOC:Verb22"
From Livre IPv6
(→Encapsulation de protocoles) |
(→22.1 Principe du routage) |
||
Line 15: | Line 15: | ||
Ce petit commutateur relaie les trames Ethernet de manière transparente: | Ce petit commutateur relaie les trames Ethernet de manière transparente: | ||
− | Avant que A puisse émettre le paquet IPv6 à destination de B, il doit vérifier que le préfixe réseau du destinataire est accessible grâce à un test d’adjacence | + | Avant que A puisse émettre le paquet IPv6 à destination de B, il doit vérifier que le préfixe réseau du destinataire est accessible grâce à un test d’adjacence, qui détermine si on utilise une remise directe ou indirecte: |
− | Si le préfixe de B est identique au sien, A peut communiquer directement avec B en utilisant son interface | + | Si le préfixe de B est identique au sien, A peut communiquer directement avec B en utilisant son interface : c'est le cas de la remise directe |
+ | la table de routage de A et B est très simple, voyons cela de plus prêt ! | ||
+ | ==22.2 Cas de la remise directe == | ||
− | + | le destinataire B est positionné sur le même préfixe réseau que la source A, | |
+ | Une remise directe est symbolisée dans la table de routage par un Next Hop avec une adresse nulle :: | ||
− | + | Le mécanisme de découverte du voisin ICMPv6 NDP: Neighbor Discovery Protocol | |
+ | permettra à A et B d'obtenir l'adresse mac du destinataire au niveau 2, avant de pouvoir échanger directement des paquets IPv6 encapsulés dans les trames, qui elles seront commutées grâce au microswitch vers les machines hôtes correspondantes. | ||
− | |||
− | + | ||
+ | ==22.3 Cas de la remise directe == | ||
+ | |||
+ | Sur la machine A, nous activons maintenant un réseau WiFi | ||
+ | A peut joindre C sur un autre préfixe réseau fourni par un Point d’accès WiFi | ||
+ | Ce Point d’accès relaie les trames WiFi de manière transparente, | ||
+ | Sur ce nouveau préfixe A et C vérifie leur connectivité avec un test d’adjacence comme précédemment, | ||
+ | |||
+ | Pour l'instant A peut communiquer avec B et C, | ||
+ | Par contre B et C sont bien connectés sur des préfixe réseaux différents, et en l’état ne peuvent pas échanger des paquets directement ! | ||
+ | |||
+ | il va bien falloir proposer un relai entre B et C, voyons comment faire : | ||
+ | |||
+ | ==22.4 Cas de la remise indirecte == | ||
== Couches basses == | == Couches basses == |
Revision as of 09:20, 22 September 2021
Contents
Acheminer des paquets
-Dans cette deuxième activité, Nous allons passer en revue les principes du routage des paquets IPv6
Mais comment deux nœuds IPv6 peuvent–ils communiquer entre eux, soit directement sur un même lien, ou bien dans un réseau local segmenté, voire grâce à des routeurs à travers un réseau plus étendu ?
Hé bien les notions de réseau, de sous réseau et les mécanismes de routages permettent de répondre à cela !
22.1 Principe du routage
Tout d'abord, vous observez dans cette topologie simplifiée 2 machines hôtes connectées entre elle grâce à un ou microswitch Ethernet :
Ce petit commutateur relaie les trames Ethernet de manière transparente:
Avant que A puisse émettre le paquet IPv6 à destination de B, il doit vérifier que le préfixe réseau du destinataire est accessible grâce à un test d’adjacence, qui détermine si on utilise une remise directe ou indirecte:
Si le préfixe de B est identique au sien, A peut communiquer directement avec B en utilisant son interface : c'est le cas de la remise directe
la table de routage de A et B est très simple, voyons cela de plus prêt !
22.2 Cas de la remise directe
le destinataire B est positionné sur le même préfixe réseau que la source A, Une remise directe est symbolisée dans la table de routage par un Next Hop avec une adresse nulle ::
Le mécanisme de découverte du voisin ICMPv6 NDP: Neighbor Discovery Protocol permettra à A et B d'obtenir l'adresse mac du destinataire au niveau 2, avant de pouvoir échanger directement des paquets IPv6 encapsulés dans les trames, qui elles seront commutées grâce au microswitch vers les machines hôtes correspondantes.
22.3 Cas de la remise directe
Sur la machine A, nous activons maintenant un réseau WiFi A peut joindre C sur un autre préfixe réseau fourni par un Point d’accès WiFi Ce Point d’accès relaie les trames WiFi de manière transparente, Sur ce nouveau préfixe A et C vérifie leur connectivité avec un test d’adjacence comme précédemment,
Pour l'instant A peut communiquer avec B et C, Par contre B et C sont bien connectés sur des préfixe réseaux différents, et en l’état ne peuvent pas échanger des paquets directement !
il va bien falloir proposer un relai entre B et C, voyons comment faire :
22.4 Cas de la remise indirecte
Couches basses
Revenons sur une partie très sensible de cet édifice, les couches basses.
Au niveau physique, nous allons disposer d'un canal de transmission qui nécessite un codage adapté au support fourni.
Comme il peut s'agir d'un support câblé ou sans fil, on utilise des techniques de codage qui fiabilisent les échanges tout en améliorant, autant que faire se peut, le débit de la liaison.
Au niveau 2, le rôle de la couche liaison de données est entre autres de transformer la couche physique en une liaison a priori exempte d'erreur de transmission pour la couche réseau.
Après avoir réalisé le décodage, cette couche est capable d'écarter le trafic nécessaire à la synchronisation et de reconnaître le début et la fin des trames.
Toujours au niveau liaison de données, en cas de réception erronée, elle peut écarter les trames, en cas de non-respect du format défini ou d'erreur de transmission.
La vérification du champ CRC ou "checksum", situé en fin de trame, aide à faire ce tri.
Dans notre exemple, l'en-tête Ethernet dispose des champs "adresse", "MAC destination", puis "MAC source", et du champ "EtherType", qui nous permettra de reconnaître le format du protocole encapsulé au niveau supérieur.
Notons que la taille des différents champs nécessaires à l'encapsulation alourdit d'autant plus les messages lors de la transmission effective sur le support.
On parlera de "débit nominal" pour définir le débit constant fourni au niveau physique.
Et lorsqu'on observe le résultat effectif du transfert de données au niveau applicatif, c'est le débit utile que perçoit l'utilisateur dans ces usages : il est moindre.
Au niveau de la couche liaison de données, les différents standards de protocoles disponibles au niveau liaison imposent des tailles de charge utile variées.
Cette taille est appelée "MTU" : Maximum Transmission Unit.
Cette contrainte imposera d'ajuster la découpe des différents blocs de protocoles pour améliorer le débit utile.
Couches intermédiaires
Au niveau réseau, le rôle de la couche réseau est de gérer l'acheminement des paquets à travers une topologie réseau locale ou étendue.
Etant donné que la taille minimum de l'en-tête IPv6 est de 40 octets, le MTU résiduel d'une trame Ethernet classique est donc de 1 500-40 : 1 460 octets.
Sachant que ces 1 460 octets de données seront probablement encore amputés d'en-têtes au niveau transport. Par exemple, 20 octets minimum pour TCP, 8 octets pour UDP.
À ce niveau, rappelons qu'aucun champ CRC n'a été retenu, car nous en avons déjà au niveau liaison.
Et les couches supérieures vont s'en charger.
Au niveau 4, le rôle de la couche transport est de préparer l'envoi et le traitement des segments acheminés.
Avec IPv6, les modifications apportées au protocole de niveau 4, UDP et TCP, sont minimes.
La principale adaptation pour IPv6 concerne le calcul de checksum au niveau transport.
Ce calcul englobe le pseudo en-tête.
Donc, pour UDP, ce calcul de checksum, qui était facultatif en IPv4, est devenu obligatoire.
Conclusion
Dans cette animation, nous remarquons que le tri des paquets permet d'écarter toute erreur potentielle.
Aussi, pour résumer en quoi consiste l'encapsulation de protocoles, cela permet aux équipements intermédiaires de se focaliser sur les couches de protocoles qui les concernent. L'introduction d'IPv6 permet d'optimiser ces traitements dans les routeurs ou les commutateurs de niveau 3 compatibles IPv6.
Tandis qu'aux extrémités, la sécurité des échanges repose en grande partie sur l'étude des champs et extensions de protocoles proposés dans chacune des couches.
Quelques champs étudiés dans des access-lists, les pare-feu, proxys.
Au niveau 2, on trouvera les adresses MAC, champs EtherType, VLAN, Qos.
Au niveau 3, les adresses IP, DiffServ, Flow Label, Next Header.
Au niveau 4, les numéros de port, et les drapeaux.