Résumé du réseau informatique - Couche de liaison de données

3.1 Présentation de la couche liaison de données

  • Lien : Une ligne physique d'un nœud à un nœud adjacent sans aucun autre nœud entre les deux.

  • Liaison de données : fait référence à l'ajout du matériel et des logiciels qui implémentent le protocole de communication au lien pour former une liaison de données.

  • Les paquets de données transmis par la couche liaison de données sont appelés trames et la couche liaison de données transmet et traite les données en unités de trames.

Questions à discuter au niveau de la couche liaison de données :

(1) Pour la couche liaison de données utilisant des canaux point à point, il y a trois problèmes importants dans la couche liaison de données :

  • Encapsulation et tramage : La couche liaison de données ajoute un en-tête et une fin de trame à l'unité de données de protocole réseau délivrée par la couche réseau.Cette opération est appelée encapsulation et tramage.

Voici le format de trame MAC pour Ethernet version 2 :

image-20210529234625851
  • Détection d'erreur : l'expéditeur envoie la trame encapsulée au support de transmission via la couche physique. Une fois que la trame rencontre des interférences pendant la transmission, une erreur de bit peut se produire, c'est-à-dire que le bit 0 peut devenir le bit 1, ou vice versa. Certaines mesures doivent donc être prises pour résoudre ce problème.

Avant d'envoyer la trame, l'expéditeur calcule le code de détection d'erreur en fonction des données à envoyer et de l'algorithme de détection d'erreur , et le scelle à la fin de la trame, comme le champ FCS dans la trame Ethernet MAC ci-dessus. Après avoir reçu les données, le récepteur peut utiliser le code de détection d'erreur et l'algorithme de détection d'erreur pour déterminer si la trame présente une erreur de code lors de la transmission.

  • Transmission fiable : Le récepteur rejette une trame erronée et prend d'autres mesures pour s'assurer qu'il reçoit à nouveau une copie correcte de la trame.

La transmission fiable ici signifie que même si j'ai jeté la trame d'erreur, je vous avertirai toujours de la renvoyer, et je ne la laisserai pas partir de manière irresponsable.

L'encapsulation dans le tramage, la détection des erreurs et la fiabilité de la transmission sont les problèmes les plus fondamentaux et les plus importants de la couche liaison de données.

(2) Pour la couche liaison de données utilisant le canal de diffusion (LAN partagé), en plus des trois problèmes ci-dessus, la couche liaison de données a d'autres problèmes qui doivent être résolus :

image-20210530000435844

Problème d'adressage : comme indiqué sur la figure, ABCDE est interconnecté via un bus. L'hôte A souhaite envoyer des données à l'hôte C. Le signal représentant la trame sera transmis à tous les hôtes du bus via le bus. L'hôte C doit savoir que la trame est envoyée à lui-même et l'hôte BDE doit savoir que la trame ne s'est pas envoyée à lui-même. L'hôte A ajoutera l'adresse de destination à l'en-tête de la trame et la transmettra ensemble, comme le champ d'adresse de destination de la trame Ethernet MAC ci-dessus.

image-20210530001049478

Problème de collision : Lorsque plusieurs hôtes sur le bus utilisent le bus pour transmettre des trames en même temps, le signal de transmission entre en collision. La méthode de coordination adoptée par Ethernet est la suivante : utiliser un protocole spécial CSMA/CD (carrier sense multipoint access/collision detection).

(3) Avec le développement de la technologie et la maturité de la technologie de commutation et la réduction des coûts, le réseau local commuté utilisant une liaison point à point et un commutateur de couche de liaison a des performances plus élevées, ce qui a complètement remplacé le réseau local partagé ci-dessus dans le domaine du réseau local câblé.

image-20210530001819149

À ce stade, il est nécessaire de discuter de la manière dont le commutateur transmet la trame ?

(4) Les réseaux locaux sans fil utilisent toujours la technologie des canaux partagés. Par exemple, les réseaux locaux 802.11 utilisent le protocole de contrôle d'accès aux médias CSMA/CA (Carrier Sense Multipoint Access/Collision Avoidance). Quel est son principe de fonctionnement ?

image-20210530002207656

3.2 Encapsulation et cadrage

(1) Encapsulation et cadrage

  • L'encapsulation dans une trame signifie que la couche liaison de données ajoute un en-tête de trame et une queue de trame à l'unité de données de protocole réseau délivrée par la couche supérieure pour en faire une trame.

  • L'en-tête et la fin de la trame contiennent de nombreuses informations de contrôle importantes.

Par exemple, l'en-tête de trame d'une trame MAC Ethernet contient l'adresse de destination, l'adresse source et le type, et la queue de trame contient le champ FCS

image-20210530102153764

Le format de trame du protocole point à point PPP, l'en-tête de trame comprend les champs drapeau, adresse, contrôle et protocole, et la queue de trame comprend les champs FCS et drapeau.

image-20210530102333036
  • L'une des fonctions de l'en-tête de trame et de la fin de trame est la délimitation de trame, par exemple, les bits d'indicateur dans l'en-tête de trame et la fin de trame dans la trame PPP sont utilisés pour la délimitation de trame.

image-20210530102844946

De cette manière, la couche liaison de données du récepteur peut extraire une à une des trames du flux binaire délivré par la couche physique selon la marque de délimitation de trame.

Il convient de noter que toutes les trames de la couche liaison de données n'incluent pas un indicateur de délimitation de trame , par exemple, une trame MAC Ethernet n'inclut pas de bit d'indicateur de délimitation de trame.

En fait, Ethernet délivre la trame encapsulée à la couche physique, et la couche physique ajoute un préambule de 8 octets devant la trame MAC , puis convertit le flux binaire en un signal électrique pour la transmission.

Les 7 premiers octets du préambule sont le préambule, qui est utilisé pour synchroniser l'horloge du récepteur. Le dernier octet est le délimiteur de début de trame, indiquant qu'il est suivi de la trame MAC.

image-20210530104104215

De plus, Ethernet stipule également que le temps d'intervalle inter-trames est un temps de transmission de 96 bits, de sorte que la trame MAC n'a pas besoin d'un délimiteur de fin de trame.

image-20210530104014230

(2) Transmission transparente :

La transmission transparente signifie que la couche liaison de données n'a aucune restriction sur les données fournies par la couche supérieure, comme si la couche liaison de données n'existait pas.

  1. Les liaisons physiques orientées octets utilisent le bourrage d'octets (ou bourrage de caractères) pour réaliser une transmission transparente.

Avant d'émettre une trame, la couche liaison de données va scanner l'unité de données protocolaire délivrée par la couche supérieure, ajouter un caractère d'échappement devant chaque délimiteur de trame apparaissant dans les données de la couche supérieure , et la couche liaison de données du récepteur va extraire la trame du flux binaire délivré par la couche physique . De cette manière, la couche liaison de données n'a aucune restriction sur les données délivrées par la couche supérieure, on parle alors de transmission transparente.

Le caractère d'échappement est un caractère de contrôle spécial d'une longueur de 1 octet et d'une valeur décimale de 27.

  1. Les liaisons physiques orientées bits utilisent le bourrage de bits pour réaliser une transmission transparente.

En prenant une trame de protocole point à point comme exemple, lorsqu'une chaîne de bits similaire au délimiteur de trame apparaît dans l'unité de données de protocole délivrée par la couche supérieure, la méthode de remplissage à zéro bit peut être utilisée pour balayer la partie de données avant l'envoi, et un bit 0 est inséré après chaque 5 bits 1 consécutifs, assurant ainsi l'unicité du délimiteur de trame dans toute la trame. Cela permet une transmission transparente.

image-20210530113538970

Lorsque la couche liaison de données du récepteur extrait des trames du flux binaire délivré par la couche physique, elle supprime le bit 0 suivant tous les 5 bits 1 consécutifs.

Questions pratiques :

image-20210530113831789

Afin d'améliorer l'efficacité de transmission de la trame, la longueur de la partie de données de la trame doit être rendue aussi grande que possible.

Cependant, compte tenu de facteurs tels que le contrôle des erreurs, chaque protocole de couche liaison de données spécifie la longueur maximale de la partie données de la trame, appelée unité de transfert maximale MTU (unité de transfert maximale).

3.3 Détection d'erreur

La liaison de transmission réelle n'est pas idéale et des erreurs peuvent se produire lors de la transmission de bits, appelées erreurs de bits.

Sur une période de temps, le rapport entre le nombre de bits erronés transmis et le nombre total de bits transmis est appelé taux d'erreur sur les bits (BER).

Un code de détection d'erreur est utilisé pour détecter si une erreur se produit pendant la transmission de données.Par exemple, la queue de trame d'une trame MAC Ethernet contient un champ FCS de séquence de contrôle de trame de 4 octets.

(1) Contrôle de parité

Ajoutez un bit de parité après les données à envoyer, de sorte que le nombre de bits 1 dans l'ensemble des données (y compris le bit de parité) soit pair (parité paire) ou impair (parité impaire).

Si un nombre impair de bits est erroné, la parité change et des erreurs de bit peuvent être détectées.

S'il y a un nombre pair d'erreurs sur les bits, la parité ne change pas et les erreurs sur les bits ne peuvent pas être détectées (détection manquée).

En raison du taux d'échec élevé du test de parité, la couche liaison de données du réseau informatique n'utilise généralement pas cette méthode de test.

(2) Code de redondance cyclique (CRC)

Il s'agit d'une méthode d'inspection avec une forte capacité de détection d'erreurs et le taux de détection manquée est très faible.

  • Les parties émettrice et réceptrice s'accordent sur un polynôme générateur G(x).
  • L'expéditeur calcule un code de détection d'erreur (code redondant) basé sur le polynôme générateur et les données à envoyer, et l'ajoute aux données à envoyer et les envoie ensemble.
  • Le récepteur calcule si une erreur s'est produite sur la base du polynôme générateur et des données reçues.
image-20210530121618649

image-20210530121741428

L'expéditeur génère un code de contrôle de redondance :

image-20210530150201998

Le récepteur juge si les données sont erronées :

image-20210530150629690

Le code de détection d'erreur ne peut détecter que des erreurs dans le processus de transmission de la trame, mais ne peut pas localiser l'erreur, il ne peut donc pas corriger l'erreur.

Pour corriger les erreurs, la correction d'erreurs directe peut être effectuée à l'aide de codes de correction d'erreurs avec des informations plus redondantes. Cependant, ce type de code de correction d'erreurs a une surcharge relativement importante et est rarement utilisé dans les réseaux informatiques.

Les codes de redondance cyclique ont de bonnes capacités de détection d'erreur.Bien que le calcul soit relativement compliqué, ils sont faciles à mettre en œuvre sur le matériel, ils sont donc largement utilisés dans la couche liaison de données.

3.4 Transmission fiable

3.4.1 Concept de base d'une transmission fiable

Le récepteur constate que les données ont une erreur de bit via le code de détection d'erreur, alors il y aura deux situations :

  • Si la couche liaison de données fournit un service de transmission non fiable pour la couche supérieure, elle rejettera directement la trame et ne fera rien d'autre.
  • Si la couche liaison de données fournit des services de transmission fiables pour la couche supérieure, elle trouvera un moyen de comprendre ce que l'expéditeur envoie et le destinataire accepte quoi. Par exemple, le récepteur peut envoyer une trame de notification à l'expéditeur, informant l'expéditeur qu'une erreur de code se produit dans les données et doit être renvoyée.

Des services de transport fiables doivent également résoudre d'autres problèmes :

  • La trame de notification était également erronée.
  • Du point de vue de l'ensemble du système informatique, **les erreurs de transmission comprennent également la perte de paquets, les paquets hors séquence et la duplication de paquets**, ces erreurs de transmission apparaissent généralement dans la couche supérieure de la couche de liaison de données.

Pour les liaisons câblées, le taux d'erreur sur les bits est relativement faible.Afin de réduire le surdébit, la couche liaison de données n'est pas tenue de fournir des services de transmission fiables pour la couche supérieure.Même si une erreur sur les bits se produit, le problème de la fiabilité de la transmission est traité par la couche supérieure.

Pour les liaisons sans fil, en raison de sa sensibilité aux interférences et de son taux d'erreur binaire élevé, la couche liaison de données doit être tenue de fournir des services de transmission fiables pour la couche supérieure.

Les services de transport fiables ne se limitent pas à la couche liaison de données, d'autres couches peuvent choisir de mettre en œuvre des services fiables.

image-20210530155321097

La mise en œuvre d'une transmission fiable est compliquée et coûteuse. L'utilisation d'un service de transmission fiable dépend des exigences de l'application.

3.4.2 Mécanisme de réalisation d'une transmission fiable - Stop Waiting Protocol SW

(1) Accusé de réception et refus : une fois que l'expéditeur a envoyé le paquet, il attend que le destinataire accepte le paquet. Une fois que le destinataire a accepté le paquet, il détecte s'il y a une erreur de bit dans les données.

Si aucune erreur de bit ne se produit , acceptez le paquet et envoyez le paquet de confirmation ACK à l'expéditeur, et l'expéditeur continuera à transmettre le paquet suivant après avoir reçu le paquet de confirmation ;

Si une erreur de code se produit , le paquet est rejeté et un paquet NAK est envoyé à l'expéditeur, et l'expéditeur retransmet le paquet après avoir reçu le paquet d'accusé de réception.

Par conséquent, l'expéditeur ne peut pas supprimer le paquet du cache immédiatement après avoir envoyé le paquet, mais ne peut supprimer le paquet du cache qu'après avoir reçu le paquet de confirmation.

image-20210530164543868

(2) Délai de retransmission :

Le paquet envoyé par l'expéditeur peut être perdu pendant le processus de transmission, ce qui fait que le destinataire ne reçoit jamais le paquet et n'enverra pas de paquet d'accusé de réception ou de paquet de refus à l'expéditeur, ce qui placera l'expéditeur dans un état d'attente. Afin de résoudre ce problème, vous pouvez démarrer un temporisateur après que l'expéditeur a envoyé un paquet de données. Lorsque le temps de retransmission défini est écoulé et que l'expéditeur ne reçoit pas de ACK ou NAK, le paquet est retransmis .

Ce temps de retransmission est généralement défini pour être légèrement supérieur au temps moyen d'aller-retour de l'émetteur au récepteur.

image-20210530165433617

(3) Confirmez la perte :

Si l'accusé de réception ou le paquet d'accusé de réception envoyé par le récepteur est perdu pendant la transmission, cela entraînera la retransmission de l'expéditeur au fil du temps et le récepteur recevra des paquets en double.

Afin d'éviter les erreurs de transmission telles que la duplication de paquets, l'expéditeur doit ajouter un numéro de séquence à chaque paquet avant d'envoyer le paquet.

Pour le protocole d'arrêt et d'attente, en raison de la fonction d'arrêt d'attente, il suffit de s'assurer que le numéro de séquence du paquet envoyé à chaque fois est différent du numéro de séquence du paquet envoyé la dernière fois, donc un seul bit est nécessaire pour la numérotation, c'est-à-dire le numéro de séquence 0 et le numéro de séquence 1.

Lorsque le récepteur constate que le paquet est répété, il le rejette et envoie en même temps un paquet de confirmation à l'expéditeur, de manière à empêcher l'expéditeur de retransmettre à nouveau le paquet.

image-20210530170513623

(4) Confirmation de retard :

Le récepteur envoie un paquet d'accusé de réception après avoir reçu le paquet 0 de l'expéditeur, mais pour une raison quelconque, le paquet d'accusé de réception est en retard, ce qui oblige l'expéditeur à expirer et à retransmettre le paquet 0. À ce moment, l'expéditeur reçoit le paquet d'accusé de réception en retard, il envoie donc le prochain paquet 1, et le récepteur rejette le paquet 0 retransmis et envoie un paquet d'accusé de réception, et ce paquet d'accusé de réception fait croire à l'expéditeur qu'il s'agit d'une réponse d'accusé de réception au paquet 1.

Par conséquent, afin de résoudre ce problème, le groupe de confirmation doit également être numéroté.

image-20210530171513396

Pour le canal point à point de la couche liaison de données, le temps d'aller-retour est relativement fixe et il n'y aura pas de problème de confirmation tardive.Par conséquent, le protocole d'arrêt et d'attente n'est mis en œuvre que sur la couche liaison de données et le numéro de groupe de confirmation n'a pas besoin d'être attribué.

Précautions:

image-20210530172010554

(5) Arrêtez d'attendre l'utilisation du canal du protocole :

image-20210530172525378

TD : Le délai de transmission de l'expéditeur pour envoyer le paquet de données.

RTT : Le temps aller-retour entre les parties émettrices et réceptrices.

TA : Le délai de transmission pour que le récepteur envoie le paquet d'accusé de réception.

image-20210530173038207

Lorsque le délai aller-retour RTT est bien supérieur au délai de transmission de trame de données TD (par exemple en utilisant des liaisons par satellite), l'utilisation du canal sera très faible.

Si une retransmission se produit, le taux d'utilisation du canal sera inférieur pour des informations utiles.

Afin de pallier l'inconvénient du faible taux d'utilisation des canaux du protocole d'arrêt et d'attente, deux autres protocoles sont produits : le protocole de repli N trames et le protocole de retransmission sélective.

Questions pratiques :

image-20210530173934457 image-20210530174243569

3.4.3 Mécanisme de réalisation d'une transmission fiable - Fallback N Frame Protocol GBN

Dans le même temps, un seul paquet peut être envoyé à l'aide du protocole stop-and-wait, tandis que plusieurs paquets peuvent être envoyés à l'aide de la transmission par pipeline.

image-20201012190027828

Sur la base d'une transmission par pipeline, le protocole de secours à N trames utilise la fenêtre d'envoi pour limiter le nombre de paquets que l'expéditeur peut envoyer en continu.

image-20210530201853476

(1) Aucune condition d'erreur :

Les paquets de données 0 à 4 dans la fenêtre d'envoi de l'expéditeur sont correctement transmis au côté réception, c'est-à-dire qu'il n'y a pas d'erreur dans l'ordre ou sur les bits. Le côté réception les accepte dans l'ordre. Chaque fois qu'un est reçu, la fenêtre de réception glisse vers l'avant d'une position et envoie un paquet de confirmation pour le paquet reçu à l'expéditeur. Chaque fois que l'expéditeur reçoit un paquet de confirmation, la fenêtre d'envoi glisse vers l'avant d'une position, de sorte qu'un nouveau numéro de séquence tombe dans la fenêtre d'envoi.

Accusé de réception cumulatif : le récepteur n'a pas à envoyer des paquets d'accusé de réception un par un pour les paquets reçus, mais peut envoyer un accusé de réception au dernier paquet qui arrive en séquence après avoir reçu plusieurs paquets de données (déterminés par l'implémentation spécifique).

Exemple : l'expéditeur envoie des paquets de données numérotés de 0 à 4 et parvient correctement au destinataire via la ligne de transmission. Après avoir reçu 0 et 1, le destinataire envoie le paquet de confirmation ACK1, et après avoir reçu 2, 3 et 4, envoie le paquet de confirmation ACK4. Si ACK1 est perdu pendant la transmission, l'expéditeur ne reçoit que ACK4, et l'expéditeur peut déterminer que les paquets de données avec le numéro de séquence 4 et avant ont été correctement acceptés, de sorte que la fenêtre d'envoi avance de 5 positions.

Ainsi, même si le paquet d'accusé de réception est perdu, l'expéditeur peut ne pas avoir à retransmettre.

Les avantages de la confirmation cumulative : elle peut réduire l'overhead du récepteur, réduire l'occupation des ressources du réseau, etc. ;

Inconvénient : Il ne peut pas refléter l'information que le destinataire a correctement accepté le paquet à temps comme l'expéditeur.

(2) En cas d'erreur :

image-20210530203911483

L'expéditeur a envoyé des paquets de données avec les numéros de série 5, 67, 0, 1. Pendant le processus d'envoi, une erreur de code s'est produite dans le paquet n° 5. Le récepteur a trouvé l'erreur via le code de détection d'erreur, il a donc rejeté le paquet, et le numéro de séquence du paquet arrivant suivant était incohérent avec le numéro de séquence dans la fenêtre de réception, il a donc également été rejeté et a confirmé le dernier paquet reçu dans l'ordre, c'est-à-dire l'envoi d'ACK4. Chaque fois qu'un paquet de données était rejeté, un ACK4 était envoyé. le temporisateur expire.

Quant à la retransmission immédiatement après avoir reçu plusieurs confirmations répétées, elle est déterminée par l'implémentation spécifique.

image-20210530204821818

Dans cet exemple, on suppose que l'expéditeur ne déclenchera pas la retransmission après avoir reçu 4 paquets d'accusé de réception en double. Lorsque le délai d'attente atteint le délai spécifié, l'expéditeur renverra les paquets dans la fenêtre. Bien que les paquets avec les numéros de séquence 6, 7, 0 et 1 soient tous arrivés correctement au récepteur, les paquets avec le numéro de séquence 5 ne sont pas acceptés en raison d'erreurs de code, ils sont donc également impliqués et non acceptés. L'expéditeur doit retransmettre ces paquets. C'est ce qu'on appelle Go-back-N (image N arrière).

On peut voir que lorsque la qualité de la ligne de communication n'est pas bonne, le taux d'utilisation du canal du protocole de repli à N trames n'est pas supérieur à celui du protocole d'arrêt et d'attente.

(3) Lorsque la taille WT de la fenêtre d'envoi dépasse la limite supérieure de la plage de valeurs

WT dépasse la limite supérieure de la plage de valeurs et WT est réglé sur 8

image-20210530205742458

L'expéditeur envoie correctement les paquets de données de 0 à 7 au destinataire via la ligne de transmission, et le destinataire envoie le paquet de confirmation ACK7 après l'avoir reçu, mais ACK7 est perdu pendant le processus d'envoi, ce qui déclenchera le mécanisme de retransmission du délai d'expiration de l'expéditeur, et l'expéditeur renvoie les paquets 0 à 7. À ce stade, le destinataire ne peut pas distinguer s'il s'agit d'un nouveau paquet ou d'un ancien paquet, puis une erreur de transmission telle qu'une répétition de paquet se produit.
image-20210530210224827

La taille de la fenêtre d'envoi ne peut donc pas dépasser sa limite supérieure.

Le protocole de repli N frame utilise la fenêtre d'envoi pour limiter le nombre de paquets envoyés consécutivement sur la base de la transmission en pipeline, et est un protocole ARQ continu.

Pendant le processus de fonctionnement du protocole, la fenêtre d'envoi et la fenêtre de réception avancent constamment, ce type de protocole est donc également appelé protocole de fenêtre glissante.

résumé:

image-20201012202222138

pratique:

image-20210530211234933

3.4.4 Mécanisme de réalisation d'une transmission fiable - Protocole de retransmission sélective SR

La taille de la fenêtre de réception WR du protocole de trame N de secours n'est que de 1, de sorte que le récepteur ne peut accepter que les paquets de données correctement arrivés dans l'ordre, et une erreur de bit dans un paquet de données entraînera la retransmission des paquets de données suivants, ce qui est évidemment un grand gaspillage de ressources de communication.

Afin d'améliorer encore les performances, il est possible d'essayer de ne retransmettre que les paquets de données erronés . Par conséquent, la taille WR de la fenêtre de réception du récepteur doit être supérieure à 1 , de sorte que le récepteur accepte d'abord les paquets de données qui arrivent dans le désordre mais n'ont pas de codes d'erreur et dont les numéros de séquence se situent dans la fenêtre de réception , et les transmettent ensemble à la couche supérieure après que tous les paquets manquants ont été collectés.C'est le protocole de retransmission sélective .

Remarque : Afin de sélectionner le protocole de retransmission, afin que l'émetteur ne retransmette que les paquets de données erronés, le récepteur ne peut plus utiliser l'acquittement cumulatif , mais doit confirmer chaque paquet correctement reçu un par un .

(1) Sélectionnez le principe de fonctionnement du protocole de retransmission :

image-20210530222002057

L'expéditeur envoie les paquets 0 à 3, mais le paquet 2 est perdu pendant le processus de transmission. Les paquets 0, 1 et 3 arrivent correctement au destinataire. Le destinataire reçoit les paquets 0 et 1 et envoie les paquets de confirmation 0 et 1. La fenêtre de réception glisse vers l'avant de deux positions. Le destinataire accepte le paquet 3 et envoie le paquet de confirmation 3, mais la fenêtre de réception ne peut pas avancer car le paquet de données 3 est un paquet de données qui n'est pas arrivé dans l'ordre.

image-20210530222718503

Chaque fois que l'expéditeur reçoit un paquet d'accusé de réception, la fenêtre d'envoi glisse vers l'avant d'une position. L'expéditeur accepte les paquets de confirmation n° 0 et n° 1, et la fenêtre d'envoi glisse de deux positions vers l'avant. Après avoir reçu le paquet de confirmation n° 3, l'expéditeur enregistre que le paquet de données n° 3 a été confirmé, de sorte que le paquet de données ne sera pas renvoyé au fil du temps. L'expéditeur envoie les paquets de données n° 4 et n° 5 et le destinataire envoie un paquet de confirmation après l'avoir reçu. Après avoir reçu le paquet de confirmation, l'expéditeur enregistre que les n° 4 et n° 5 ont reçu la confirmation. Lorsque le délai d'expiration du paquet n° 2 atteint l'heure, l'expéditeur retransmet le délai d'expiration, et le récepteur accepte le paquet n° 2 et envoie un paquet de confirmation. À ce moment, la fenêtre de réception peut avancer de 4 positions ; l'expéditeur accepte le paquet de confirmation. À ce moment, la fenêtre d'envoi peut avancer de 4 positions.

image-20210530223105319

image-20210530223921359

(2) La taille de la fenêtre d'envoi et de la fenêtre de réception :

image-20210530224156353

Que se passe-t-il si la taille de la fenêtre dépasse la plage de valeurs ?

image-20210530224513291

Définissez la taille de la fenêtre d'envoi et de la fenêtre de réception à plus de la moitié du numéro de séquence total, ici elle est définie sur 5.

L'expéditeur envoie 0, 1, 2, 3, 4 paquets de données et le destinataire envoie les paquets de confirmation un par un après avoir reçu les paquets, mais le numéro de paquet 0 est perdu pendant le processus de transmission, ce qui entraînera l'expiration du délai de l'expéditeur et retransmettra le paquet 0.

image-20210530224921101

Le côté réception ne peut pas dire si le paquet n° 0 est un nouveau ou un ancien paquet. S'il l'accepte toujours, une erreur de transmission de duplication de paquet se produira.

Ainsi, la taille de la fenêtre d'envoi et de la fenêtre de réception ne peut être que la moitié du nombre total de numéros de séquence.

résumé:

image-20201012205133924

3.5 Protocole PPP point à point

Le protocole point à point PPP (Point-to-Point Protocol) est actuellement le protocole de couche liaison de données point à point le plus utilisé.

Si un utilisateur souhaite accéder à Internet, il doit se connecter à un FAI qui fournit des services Internet avant de pouvoir accéder à Internet.

Ces FAI ont demandé un lot d'adresses IP à l'agence de gestion Internet, et l'ordinateur de l'utilisateur ne peut devenir un hôte sur Internet qu'après avoir obtenu l'adresse IP légale attribuée par le FAI.

Lorsque l'ordinateur de l'utilisateur communique avec le FAI, le protocole de couche liaison de données utilisé est généralement le protocole PPP.

Publié en 1999, le protocole PPP fonctionnant sur Ethernet est appelé PPP over Ethernet, ou PPPoE en abrégé.

image-20210531000017038

Le protocole PPP a été formulé par l'Internet Engineering Task Force IETF en 1992. Après des révisions en 1993 et ​​1994, le protocole PPP actuel est devenu une norme formelle d'Internet [RFC1661, RFC1662]. ,

Les composantes de l'accord PPP :

Le protocole PPP fournit une méthode standard pour transmettre divers datagrammes de protocole sur des liaisons point à point et se compose principalement des trois parties suivantes :

  • Méthodes d'encapsulation pour divers datagrammes de protocole (encapsulation dans des trames)

  • Link Control Protocol LCP : Connexions pour établir, configurer et tester des liaisons de données

  • Un ensemble de NCP de protocoles de contrôle réseau : chacun prenant en charge différents protocoles de couche réseau

    image-20210531001011719

Le format de trame du protocole PPP :

image-20201012211826281

Transmission transparente du protocole PPP :

(1) Liens asynchrones orientés octets : bourrage d'octets (insertion de "caractères d'échappement")

image-20201012212148803

(2) Liaison synchrone orientée bits : méthode de bourrage de bits (insérer "bit 0")

image-20201012212255550

Détection d'erreur:

image-20201012212558654

La couche liaison de données utilisant le protocole PPP n'assure pas une transmission fiable vers le haut.

Statut de travail:

image-20201012213021860

On peut voir que le protocole PPP n'est pas un pur protocole de couche liaison de données, il inclut également le contenu de la couche physique et de la couche réseau.

3.6 Contrôle d'accès aux médias

Afin de mieux adapter la couche liaison de données aux différentes normes LAN, le comité IEEE 802 a divisé la couche liaison de données du LAN en deux sous-couches :

  1. Sous-couche Logical Link Control LLC (Logical Link Control)
  2. Sous-couche MAC (Medium Access Control) de contrôle d'accès au support

Le contenu lié à l'accès au support de transmission est placé dans la sous-couche MAC, tandis que la sous-couche LLC n'a rien à voir avec le support de transmission.

Quel que soit le protocole LAN, il est transparent pour la sous-couche LLC.

image-20201013201133903

3.6.1 Concepts de base du contrôle d'accès aux médias

Si plusieurs appareils envoient des informations sur le canal partagé en même temps, les signaux entreront en collision sur le support partagé, ce qui empêchera l'envoi des informations.

image-20210531191752119

Un problème à considérer dans le canal partagé est de savoir comment coordonner l'occupation du canal partagé par plusieurs stations, c'est-à-dire, le contrôle d'accès au support (MAC).

image-20201013152453425

Avec le développement de la technologie, la maturité de la technologie de commutation et la réduction des coûts, le réseau local commuté avec des performances plus élevées utilisant des liaisons point à point et des commutateurs de couche de liaison a complètement remplacé le réseau local partagé dans le domaine câblé, mais en raison de la nature de diffusion du canal sans fil, le réseau local sans fil utilise toujours la technologie des médias partagés.

3.6.2 Contrôle d'accès au support - Allocation de canal statique

Multiplexage des canaux :

Multiplexage : transmettre simultanément les signaux de plusieurs utilisateurs via une seule ligne physique.

Lorsque la capacité de transmission du support de transmission dans le réseau est supérieure au trafic total transmis par plusieurs canaux uniques, la technologie de multiplexage de canaux peut être utilisée pour établir plusieurs canaux de communication sur une ligne physique afin d'utiliser pleinement la bande passante du support de transmission.

image-20210531200100957

Si un multiplexeur est utilisé côté émetteur et un démultiplexeur côté récepteur, plusieurs utilisateurs peuvent communiquer sur la même ligne physique.

Techniques courantes de multiplexage des canaux :

  • Multiplexage par répartition en fréquence FDM
  • GDT
  • WDM
  • multiplexage par répartition en code CDM

(1) Multiplexage par répartition en fréquence FDM :

image-20210531201612211

Les ressources de bande de fréquence de la ligne de transmission sont divisées en plusieurs sous-bandes pour former plusieurs sous-canaux, et des bandes de fréquence d'isolation doivent être réservées entre les sous-canaux pour éviter les interférences entre les sous-canaux.

Lorsque plusieurs signaux sont entrés dans un multiplexeur, ce multiplexeur module chaque signal sur une porteuse d'une fréquence différente, et l'extrémité de réception sépare chaque signal par filtrage par un démultiplexeur correspondant, et restaure le signal multiplexé synthétisé au signal multiple d'origine.

Tous les utilisateurs du multiplexage par répartition en fréquence occupent en même temps différentes ressources de bande de fréquence et communiquent en parallèle.

(2) Multiplexage temporel TDM :

image-20210531201542553

La technologie de multiplexage temporel alloue des ressources de bande passante sur la ligne de transmission à différents utilisateurs à tour de rôle en fonction de tranches de temps, et chaque paire d'utilisateurs n'utilise la ligne que pour transmettre des données dans les tranches de temps allouées.

La technologie de multiplexage temporel divise le temps en trames de multiplexage temporel de longueur égale, et chaque utilisateur du multiplexage temporel occupe un intervalle de temps avec un numéro de séquence fixe dans chaque trame de multiplexage temporel.

Tous les utilisateurs du multiplexage temporel occupent la même largeur de bande de fréquence à des moments différents.

(3) Multiplexage en longueur d'onde WDM :

image-20210531202149379

Le multiplexage en longueur d'onde est le multiplexage en fréquence de la lumière.

Comme le montre la figure ci-dessus, il s'agit de 8 porteuses optiques avec un taux de transmission de 2,5 Gb/s et leurs longueurs d'onde sont toutes de 1310 nm. Après avoir été modulée par le modulateur optique, la longueur d'onde est convertie en 1550-1561.2nm respectivement, et chaque porteuse optique est séparée de 1.6nm.Ces 8 porteuses optiques avec des longueurs d'onde très proches traversent le multiplexeur optique (ou combineur) et sont transmises sur la même fibre optique.Par conséquent, le débit total de transmission de données est de 8*2.5Gb/s = 20G/s.

Les signaux optiques s'atténueront après avoir été transmis sur une certaine distance, des amplificateurs sont donc nécessaires pour les amplifier afin de poursuivre la transmission, comme l'amplificateur à fibre dopée à l'erbium sur la figure.

(4) CDM de multiplexage par répartition en code :

Étant donné que cette technologie est principalement utilisée pour l'accès multiple, le terme le plus couramment utilisé est l'accès multiple par répartition en code (CDMA).

Le multiplexage par répartition en fréquence FDM et le multiplexage par répartition dans le temps TDM peuvent également être utilisés pour un accès multiple, et les termes correspondants sont FDMA à accès multiple par répartition en fréquence et TDMA à accès multiple par répartition dans le temps.

Multiplexage et accès multiple :

image-20210531204554072

Le multiplexage est pour les lignes de transmission et l'accès multiple est pour les utilisateurs.

L'accès multiple doit être multiplexé, et le multiplexage n'est pas nécessairement pour l'accès multiple.

Différent du multiplexage par répartition en fréquence et du multiplexage par répartition dans le temps, chaque utilisateur du multiplexage par répartition en code peut occuper la même ressource de bande de fréquence pour la communication dans le même temps.

Étant donné que chaque utilisateur utilise un modèle de code différent spécialement sélectionné, il n'y a aucune interférence entre les utilisateurs.

Le multiplexage par répartition en code était à l'origine utilisé dans les communications militaires, car le signal envoyé par ce système a une forte capacité anti-interférence et son spectre est similaire au bruit blanc, qui n'est pas facile à détecter par l'ennemi.

Avec les progrès de la technologie, le prix et le volume de l'équipement CDMA ont considérablement baissé, il a donc été largement utilisé dans les communications mobiles civiles.

ébrécher:

En CDMA, chaque temps de bit est en outre divisé en m intervalles courts, appelés puces (Chip). Habituellement, la valeur de m est 64 ou 128.

Pour plus de simplicité, l'exemple ici suppose que m vaut 8.

Chaque station utilisant CDMA se voit attribuer une séquence de puces unique de m bits (séquence de puces).

  • Si une station veut envoyer le bit 1, elle envoie sa propre séquence de m bits.

  • Une station qui veut envoyer un bit 0 envoie le complément à un de sa propre séquence de m bits.

image-20210531210903243

Cette méthode de communication est appelée Direct Sequence Spread Spectrum DSSS.

Le principe de sélection de la séquence de puces est le suivant :

  1. La séquence de puces de code attribuée à chaque station doit être différente, et une séquence de code pseudo-aléatoire est souvent utilisée dans la pratique.
  2. Les séquences de puces attribuées à chaque station doivent être mutuellement orthogonales, c'est-à-dire que le produit interne normalisé est égal à 0.

image-20210531212421922

image-20210531212849737

Exemples d'applications à accès multiple par division de code :

image-20210531213244947

Questions pratiques :

image-20210531223536390

Analyse :

image-20210531223655487

Le résultat est 1, donc A a envoyé le bit 1.

image-20210531223737807

Le résultat est -1, donc B a envoyé le bit 0.

image-20210531223813910

Le résultat est 0, donc C n'a envoyé aucun bit.

image-20210531223913879

Le résultat est 1, donc la station D envoie le bit 1.

image-20210531224015294

Analyse :

image-20210531224332724

3.6.3 Contrôle d'accès aux médias - Contrôle d'accès dynamique

  • Ethernet est une technologie de réseau local.L'Ethernet précédent était une structure de bus, mais maintenant Ethernet est connecté au réseau via des commutateurs, il est donc devenu une structure en étoile.

Mais logiquement, Ethernet adopte toujours la topologie de bus et la technologie de bus CSMA/CD.

(1) Accès aléatoire - protocole CSMA/CD

concept de base:
image-20201013211620687

Multiple Access MA : Plusieurs sites sont connectés au même bus et se font concurrence pour utiliser le bus.

Carrier Sense CS : Chaque station détecte d'abord si d'autres stations envoient des trames sur le bus lors de l'envoi de trames.

  • Cette trame est envoyée si le bus est détecté comme inactif pendant 96 temps de bit .
  • S'il est détecté que le bus est occupé, continuez à détecter et attendez que le bus passe à un temps d'inactivité de 96 bits, puis envoyez cette trame.

Le temps de 96 bits fait référence au temps nécessaire pour envoyer du temps de 96 bits, également appelé intervalle minimum entre les trames.

Détection de collision : Chaque station qui émet une trame détecte une collision lors de l'émission, et arrête d'émettre si une collision est détectée.

Ethernet adopte également une mesure appelée collision améliorée Une fois qu'une station envoyant une trame détecte une collision, en plus d'arrêter immédiatement d'envoyer des trames, elle envoie également un signal d'interférence artificielle de 32 ou 48 bits , de sorte qu'il y ait suffisamment de signaux de collision pour que toutes les stations puissent détecter la collision.

Période de contention :

image-20210601211513664

image-20210601211604129

Ce n'est que lorsque l'expéditeur n'a pas détecté de collision après la période de contention qu'il peut être sûr qu'il n'y a pas de collision dans cette transmission.

Plus il y a d'hôtes qui envoient des trames dans Ethernet, plus le délai de propagation aller-retour de bout en bout est grand et plus la probabilité de collision est grande. Par conséquent, l'Ethernet partagé ne peut pas connecter trop d'hôtes, et le bus utilisé ne peut pas non plus être trop long.

10Mb/s Ethernet définit la période de contention comme un temps de transmission de 512 bits , c'est-à-dire 51,2 us, de sorte que la longueur du bus ne peut pas dépasser 5120 m, mais d'autres facteurs tels que l'atténuation du signal doivent également être pris en compte. Ethernet stipule que la longueur du bus ne peut pas dépasser 2500 m .

Longueur minimale du cadre :

image-20210602000947266

Supposons que l'hôte A envoie une trame très courte à l'hôte D et détecte les collisions lors de l'envoi. L'hôte A finit bientôt d'envoyer la trame, puis n'effectue plus la détection de collision sur la trame. Pendant la transmission de cette trame, l'hôte C envoie également des trames. L'hôte C envoie des trames immédiatement après avoir détecté le temps d'inactivité de 96 bits sur le bus. Renvoyez la trame.

La longueur de trame de l'Ethernet utilisant le protocole CSMA/CD ne peut pas être trop courte.

Ethernet stipule que la longueur de trame minimale est de 64 octets, c'est-à-dire 512 bits, et le temps de 512 bits est la période de contention.

  • Si les données à envoyer sont très petites, certains octets de remplissage doivent être ajoutés pour que la longueur de la trame ne soit pas inférieure à 64 octets.

La longueur de trame minimale d'Ethernet garantit que l'hôte peut détecter si une trame est entrée en collision pendant la transmission avant que la trame ne soit envoyée.

  • Si aucune collision ne se produit pendant la période de contention (un total de 64 octets sont envoyés), les données envoyées par la suite ne seront certainement pas en collision.
  • Si une collision se produit pendant la période de conflit, la transmission sera immédiatement interrompue. À ce moment, les données qui ont été envoyées doivent être inférieures à 64 octets, de sorte que toute trame inférieure à 64 octets est une trame non valide terminée anormalement en raison d'une collision, et le récepteur la rejettera.
Longueur de trame maximale :
image-20210602001051373

Si la trame est très longue, l'expéditeur occupera les ressources du bus tout le temps, même si d'autres hôtes ont des trames à envoyer, il n'y a aucun moyen. De plus, comme la trame est très longue, le tampon du récepteur peut ne pas être en mesure de retenir la trame et déborder. Par conséquent, il devrait y avoir une limite à la longueur maximale d'une trame.

image-20210601231720786

Par exemple, dans la figure ci-dessus, le champ de données utiles maximum de la trame MAC Ethernet version 2 est de 1 500 octets, plus 18 octets pour l'en-tête et la fin, et la longueur de trame maximale est de 1 518 octets. La longueur minimale du champ de données utiles est de 46 octets, plus 18 octets pour l'en-tête et la fin, et la longueur minimale de la trame est de 64 octets.

image-20210601231950049

Il en est de même pour la photo ci-dessus

Méthode de calcul du temps d'attente :

Algorithme de backoff exponentiel binaire tronqué :

image-20210602000833474

Si des collisions se produisent en continu, cela indique qu'il y a plus d'hôtes en compétition pour le canal. L'algorithme mentionné ci-dessus peut faire augmenter le temps de retard moyen de retransmission avec le nombre de retransmissions , réduisant ainsi la probabilité de collision.

Lorsque le nombre de retransmissions atteint 16 et échoue toujours, cela indique qu'il y a trop d'hôtes ayant l'intention d'envoyer des trames en même temps, de sorte que des collisions se produisent en continu, et la trame est rejetée et signalée à la couche supérieure.

Utilisation du canal :

image-20210602001440670

Par conséquent, le temps moyen d'envoi d'une trame est = plusieurs périodes de contention + une expérience d'envoi de trame T0 + un délai de propagation de bout en bout unidirectionnel t.

Considérons la situation idéale suivante :

  • Les trames envoyées par chaque hôte n'entreront pas en collision.
  • Le maître envoie des trames dès que le bus est libre.

Ainsi, le temps nécessaire pour envoyer une trame est T0 + t, et le délai d'envoi d'une trame est T0, donc

image-20210602002008649

Afin d'améliorer l'utilisation du canal, la valeur de a doit être aussi petite que possible, alors,

  • La valeur de t doit être aussi petite que possible, indiquant que la distance de bout en bout d'Ethernet doit être limitée et ne doit pas être trop longue ;
  • La valeur de T0 doit être aussi grande que possible, indiquant que la longueur de trame Ethernet doit être aussi grande que possible, mais comme mentionné ci-dessus, une trame trop longue n'est pas bonne.
Processus d'envoi de trame :

image-20210602002525167

Processus d'acceptation des cadres :

image-20210602002630132

Questions pratiques :

image-20210602003609977

(2) Accès aléatoire - protocole CSMA/CA

Protocole utilisé par le bus LAN : CSMA/CD

Protocole utilisé par le LAN sans fil : CSMA/CA

concept de base:

Accès multipoint à détection de porteuse/évitement des collisions :

Pourquoi CSMA/CD ne peut-il pas être utilisé dans un LAN sans fil ?

Réponse : Dans le WLAN, la détection de porteuse et l'accès multiple CSMA peuvent toujours être utilisés, mais la détection de collision ne peut pas être utilisée pour les raisons suivantes :

  • En raison des conditions de transmission spéciales du canal sans fil, la plage dynamique de la force de son signal est très large et la force du signal reçu par la carte réseau sans fil est souvent bien inférieure à la force du signal envoyé (peut être un million de fois différente). Si la détection de collision doit être mise en œuvre sur un canal sans fil, les exigences matérielles sont très élevées .
  • En raison de la particularité de la propagation des ondes radio, se pose le problème des stations cachées , et l'importance de la détection des collisions n'est pas grande.

Par conséquent, le WLAN 802.11 utilise le protocole CSMA/CA pour implémenter la fonction d'évitement de collision au lieu de la fonction de détection de collision.

Puisqu'il est impossible d'éviter toutes les collisions et que le taux d'erreur binaire du canal sans fil est élevé, la norme 802.11** implémente également le mécanisme de confirmation (protocole d'arrêt et d'attente)** de la couche liaison de données pour garantir l'exactitude des données.

La norme de couche MAC 802.11 définit deux méthodes différentes de contrôle d'accès au support :

  • Fonction de coordination distribuée DCF : En mode DCF, il n'y a pas de station de contrôle centrale et chaque station utilise la norme de protocole CSMA/CA pour obtenir le droit de transmission en se faisant concurrence pour le canal, qui est la méthode par défaut de 802.11.
  • Fonction de coordination de point PCF : La méthode PCF utilise un algorithme d'accès de contrôle centralisé et est une méthode facultative pour 802.11, mais elle est rarement utilisée dans la pratique.
Intervalle intertrame IFS (InterFrame Space):

La norme 802.11 stipule que toutes les stations doivent continuer à détecter que le canal est inactif pendant une période de temps spécifiée avant d'envoyer des trames.Cette période de temps est appelée l'intervalle inter-trame.

La longueur de l'espace intertrame dépend de la priorité des trames à émettre :

  • Les trames hautement prioritaires doivent attendre moins longtemps pour pouvoir être envoyées en premier.
  • Les trames de faible priorité doivent attendre plus longtemps.

Deux intervalles intertrame couramment utilisés :

  • Espace inter-trame court SIFS : La longueur est de 28us, qui est l'intervalle de temps le plus court et est utilisé pour séparer les trames appartenant à une conversation. Une station doit pouvoir passer du mode émission au mode réception pendant ce temps. Les types de trames qui utilisent SIFS incluent les trames ACK, les trames CTS, les trames de données trop longues et fragmentées, et toutes les trames qui répondent aux demandes AP et toutes les trames envoyées par le point d'accès AP en mode PCF.
  • Intervalle intertrame DCF DIFS : La longueur est de 128us, ce qui est plus long que l'intervalle intertrame court SIFS, et est utilisé pour envoyer et gérer des trames de données en mode DCF.
principe de fonctionnement:

image-20210603215150279

Lorsque l'expéditeur détecte que le canal est inactif, il envoie la première trame après l'intervalle DIFS, et le récepteur envoie une trame de confirmation ACK après avoir reçu les données après l'intervalle SIFS.

Réflexion : Pourquoi l'expéditeur attend-il l'intervalle inter-trame DIFS avant d'envoyer une trame de données après avoir détecté que le canal est inactif ?

Réponse : C'est parce que d'autres stations peuvent avoir des trames de haute priorité à envoyer. Si c'est le cas, autorisez l'envoi des trames de haute priorité en premier.

Réflexion : Pourquoi le récepteur doit-il attendre l'intervalle inter-trames SIFS avant d'envoyer une trame de confirmation après avoir correctement reçu la trame de données ?

Réponse : SIFS est utilisé pour diviser chaque trame d'une conversation, et l'expéditeur passe du mode envoi au mode réception pendant cette période.

image-20210603223810502

Lorsque le canal passe de l'état occupé à l'état inactif, et après l'intervalle inter-trame DIFS, les autres stations sans fil qui souhaitent envoyer des données doivent reculer pendant une période de temps aléatoire avant l'envoi.

Réflexion : après que le canal est passé d'occupé à inactif et que l'intervalle DIFS entre les trames s'est écoulé, pourquoi devons-nous reculer pendant une période d'événements aléatoires avant d'envoyer des données ?

Réponse : évitez les collisions causées par plusieurs stations qui envoient des données en même temps.

Alors, quand utiliser l'algorithme de backoff ?

  • Le canal est détecté comme étant occupé avant l'envoi de la trame de données
  • Chaque fois qu'une trame de données est retransmise
  • Lorsque la trame suivante doit être envoyée en continu après chaque transmission réussie (ceci afin d'éviter qu'une station occupe un canal pendant une longue période)

En d'autres termes : lorsqu'une station détecte que le canal est inactif et que les trames de données envoyées ne sont pas des trames de données envoyées en continu après l'envoi d'une trame, il n'est pas nécessaire d'utiliser l'algorithme de backoff.

Algorithme d'interruption :

Lors de l'exécution de l'algorithme de temporisation, la station définit une heure aléatoire pour le temporisateur de temporisation

  • Commencer à envoyer des données après que le temporisateur d'interruption a été décrémenté à zéro
  • Lorsque le temps du temporisateur de temporisation n'a pas été réduit à zéro et que le canal est détecté comme étant occupé à partir de l'état inactif, le temps du temporisateur de temporisation est gelé, le canal redevient inactif et, après l'intervalle DIFS, le temporisateur de temporisation est redémarré.

Lors de l'exécution de la ième interruption, sélectionnez au hasard l'un des numéros de tranche de temps {0, 1..., 2 2 +i -1} pour la durée d'interruption, puis multipliez-le par la durée d'interruption de base (c'est-à-dire la longueur d'une tranche de temps) pour obtenir une durée d'interruption aléatoire. Ceci est fait pour réduire la probabilité que différentes stations choisissent le même temps d'attente. Après avoir atteint le 6e temps de retraite, il n'augmentera plus.

image-20210603225359546

Réservation de canal et détection de porteuse virtuelle :
  1. Réservation de chaîne :

image-20210603232431476

Afin de réduire au maximum la probabilité de collision et l'impact des collisions, la norme 802.11 permet aux stations d'envoyer des données vers des canaux réservés .

(1) La station source envoie une courte trame de contrôle avant d'émettre la trame de données, appelée RTS (Request To Send), qui comprend l'adresse source, l'adresse destination, et la durée nécessaire à cette communication.

(2) Si la station destinataire accepte correctement la trame RTS envoyée par la station source, et que le média est inactif, elle envoie une trame de contrôle de réponse appelée CTS (Clear To Send), qui comprend également le temps nécessaire à cette communication (copier cette durée de la trame RTS vers le CTS).

(3) Après réception de la trame CTS, la station source attend un intervalle inter-trame SIFS avant d'émettre des données.

(4) Après que la station destinataire a correctement reçu la trame de données envoyée par la station source, après avoir attendu le temps SIFS, elle envoie une trame d'acquittement ACK à la station source.

Les autres stations , à l'exception de la station de destination et de la station source , après réception de la trame CTS, retardent l'accès au WLAN , garantissant ainsi que la communication entre la station source et la station de destination ne recevra pas d'interférences d'autres stations.

Si la trame RTS entre en collision et que la station source ne peut pas recevoir la trame CTS, elle doit exécuter l'algorithme de temporisation pour retransmettre la trame RTS.

Étant donné que la trame RTS et la trame CTS sont très courtes, la probabilité d'envoyer une collision, le surdébit causé par la collision et le surdébit lui-même sont très faibles.

Pour les trames de données générales, le délai de transmission est souvent supérieur au délai de propagation et la probabilité de collision est élevée.Une fois que la trame de données doit être retransmise après la collision, plus de temps et de ressources seront gaspillés.Par conséquent, il vaut la peine de réserver le canal à moindre coût.

La norme 802.11 spécifie 3 situations parmi lesquelles les utilisateurs peuvent choisir :

  • Utiliser la trame RTS et la trame CTS
  • Non applicable à la trame RTS et à la trame CTS
  • Ce n'est que lorsque la longueur de la trame de données dépasse une certaine valeur que la trame RTS et la trame CTS sont utilisées
  1. Détection de porteuse virtuelle :

En plus de la trame RTS et de la trame CTS transportera le temps nécessaire à la communication, la trame de données transportera également le temps nécessaire à la communication, qui est appelé le mécanisme de détection de porteuse virtuelle de 802.11.

En raison de l'utilisation du mécanisme de détection de porteuse virtuelle, les autres stations n'ont besoin de surveiller que l'une des trames RTS, trame CTS ou trame de données pour connaître l'heure à laquelle le canal est occupé, sans réellement surveiller le signal sur le canal. le mécanisme de détection de porteuse virtuelle peut réduire le problème de collision causé par les stations cachées.

image-20210603233820484 image-20210603233844487

Questions pratiques :

image-20210603234308971 image-20210603234500720

3.7 Adresse MAC, adresse IP et protocole ARP

  • L'adresse MAC est l'adresse utilisée par la sous-couche MAC d'Ethernet et appartient à la couche liaison de données
  • L'adresse IP est l'adresse utilisée par la couche Internet de l'architecture TCP/IP et appartient à la couche Internet
  • Le protocole ARP peut obtenir son adresse MAC via l'adresse IP attribuée à l'appareil, qui appartient à la couche Internet

Adresse Mac

1. Introduction de base :

image-20210604001716590 image-20210604002055581

Les trames envoyées par chaque hôte dans le canal partagé doivent porter des adresses identifiant l'hôte émetteur et l'hôte récepteur, appelées adresses MAC.

L'adresse MAC est généralement solidifiée dans l'EEPROM de la carte réseau (adaptateur réseau), de sorte que l'adresse MAC est également appelée adresse matérielle.

image-20210604002405162

Généralement, l'hôte de l'utilisateur contiendra deux adaptateurs réseau : un adaptateur LAN filaire (carte réseau filaire) et un adaptateur LAN sans fil (carte réseau sans fil).

Chaque adaptateur réseau a une adresse MAC unique au monde, et les commutateurs et routeurs ont souvent de nombreuses interfaces réseau, ils ont donc de nombreuses adresses MAC.

Par conséquent, à proprement parler, l'adresse MAC est un identifiant unique pour chaque interface sur le réseau , plutôt qu'un identifiant unique pour chaque appareil sur le réseau.

2. Format d'adresse MAC du LAN IEEE 802 :

image-20210604183029045

Il y a 48 bits au total, divisés en 6 octets.

Lorsque b0 est défini sur 0, il indique que l'adresse est une adresse unicast, et lorsqu'il est défini sur 1, il indique que l'adresse est une adresse multicast, également appelée adresse multicast.

Lorsque b1 vaut 0, cela signifie que l'adresse est gérée globalement, c'est-à-dire qu'elle est globalement unique ; lorsqu'il vaut 1, cela signifie que l'adresse est gérée localement.

image-20210604184145979

3. L'ordre d'envoi de l'adresse MAC dans le LAN IEEE 802 :

image-20210604184519178

Ordre d'envoi des octets : premier octet -> sixième octet

Ordre de transmission des bits dans un octet : b0 -> b7

4. Adresse MAC de monodiffusion, adresse MAC de multidiffusion et adresse MAC de diffusion :

(1) Adresse MAC monodiffusion :

image-20210604185425500

La carte réseau de l'hôte A trouve que l'adresse MAC de destination de la trame de monodiffusion n'est pas sa propre adresse MAC et la rejette.

La carte réseau de l'hôte C trouve que l'adresse MAC de destination de la trame unicast correspond à sa propre adresse MAC, l'accepte et la soumet à la couche supérieure pour traitement.

(2) Adresse MAC de diffusion :

image-20210604185717443

L'hôte A et l'hôte C découvrent qu'il s'agit d'une trame de diffusion, tous deux l'acceptent et la transmettent à la couche supérieure pour traitement.

(3) Adresse MAC multidiffusion :

image-20210604190600969

Les adresses de multidiffusion standard partagées ne doivent pas être utilisées lors de la configuration des listes de groupes de multidiffusion pour les hôtes.

adresse IP

1. Introduction de base :

image-20201015104441580

2. Changements d'adresse IP et d'adresse MAC pendant le transfert de datagramme :

image-20210605000041432

L'adresse IP source et l'adresse IP de destination ne changeront pas pendant le transfert de paquets de données.

Pendant le transfert de paquets de données, l'adresse MAC source et l'adresse MAC de destination changent liaison par liaison ou réseau par réseau.

image-20201015105619301

Comment trouver l'adresse MAC correspondante à partir de l'adresse IP nécessite l'utilisation du protocole ARP.

Protocole ARP

Protocole de résolution d'adresse Protocole ARP

image-20201015114052206

Lorsque l'hôte B veut envoyer un paquet de données à l'hôte C, il recherche dans sa propre table de cache ARP s'il existe une adresse MAC correspondant à l'adresse CIP de l'hôte, mais il ne la trouve pas. À ce moment, l'hôte B envoie un message de requête ARP (diffusion) pour obtenir l'adresse MAC de l' hôte C.

image-20210605001838702

Tous les hôtes sur le bus peuvent recevoir la trame de diffusion. Après avoir reçu la trame de diffusion, la carte réseau de l'hôte A la transmet à la couche supérieure pour traitement. Le processus ARP de la couche supérieure analyse le message de requête ARP et constate que l'adresse IP demandée n'est pas sa propre adresse IP, donc ignorez-la.

image-20201015114811501

Une fois que l'hôte C l'a reçu, il sera traité par la couche supérieure.Lorsqu'il constate que l'adresse IP demandée est sa propre adresse IP, il enregistre d'abord l'adresse IP et l'adresse MAC de l'hôte B transportées dans le message de demande dans sa propre table de cache ARP, puis envoie un message de réponse ARP (monodiffusion ) .

De cette manière, l'hôte B met à jour la table de cache ARP après avoir reçu le message de réponse ARP, puis peut envoyer des données.

Chaque enregistrement de la table a son type, qui est divisé en type dynamique et type statique :

  • Type dynamique : obtenu automatiquement par l'hébergeur, avec un cycle de vie de deux minutes. A la fin du cycle de vie, l'enregistrement est automatiquement supprimé.
  • Type statique : configuré manuellement par les utilisateurs ou le personnel de maintenance du réseau. La période de déclaration est différente selon les différents systèmes d'exploitation.

Le protocole ARP ne peut être utilisé que sur une liaison ou un réseau et ne peut pas être utilisé sur plusieurs réseaux.

3.8 La différence entre un concentrateur et un commutateur

1. Moyeu

image-20201015144628691

  • L'Ethernet traditionnel utilisait des câbles coaxiaux épais, puis a évolué pour utiliser des câbles coaxiaux fins, et a finalement évolué pour utiliser des câbles à paires torsadées.

  • L'Ethernet utilisant le concentrateur reste logiquement une structure de bus, et utilise toujours le protocole CSMA/CD pour coordonner les hôtes, il ne peut fonctionner qu'en communication semi-duplex, et l'émission et la réception de trames ne peuvent pas s'effectuer en même temps.

Utilisez un concentrateur pour étendre Ethernet au niveau de la couche physique :

image-20210605154643851

2. Commutateur

image-20210605155613930

Lorsqu'un hôte envoie une trame monodiffusion, le commutateur envoie la trame monodiffusion à l'hôte de destination au lieu de tous les hôtes du réseau.

Un commutateur possède généralement plusieurs interfaces, chacune pouvant être directement connectée à un hôte ou à un autre commutateur, et fonctionnant généralement en mode full-duplex.

Le commutateur est parallélisé et peut connecter plusieurs paires d'interfaces en même temps, de sorte que plusieurs paires d'hôtes peuvent communiquer en même temps, sans collision, sans utiliser le protocole CSMA/CD.

Les commutateurs ont généralement des interfaces à plusieurs débits, par exemple : diverses combinaisons d'interfaces 10 Mb/s, 100 Mb/s, 1 Gb/s et 10 Gb/s.

Une fois que le commutateur a reçu la trame, il recherche dans la table de commutation de trames le numéro d'interface correspondant à l'adresse MAC de destination de la trame, puis transmet la trame via l'interface.

Un commutateur est un dispositif plug-and-play, et sa table de commutation de trame interne est automatiquement établie grâce à un algorithme d'auto-apprentissage.

Il existe deux méthodes de transfert pour le passage à la trame :

  • stocker et transmettre
  • Commutation directe : utilisez une matrice d'interconnexion basée sur le matériel (le délai de commutation est très faible, mais ne vérifie pas si la trame contient des erreurs)

3. Comparaison des concentrateurs et des commutateurs

conditions préalables:

  1. ignorer le processus ARP
  2. Supposons que la table de commutation de trame du commutateur a été apprise

(1) Pour la monodiffusion :

image-20210605165652623 image-20210605165720666

  • Concentrateur : les trames de monodiffusion sont envoyées à d'autres hôtes du réseau et les cartes réseau de chaque hôte sont identifiées.
  • Commutateur : après réception de la trame unicast, le commutateur transmet la trame unicast à l'hôte de destination en fonction de la table de commutation de trames et de l'adresse MAC de destination.
  • Résumé : Il y a une différence

(2) Pour les trames de diffusion :

image-20210605165752747 image-20210605165805394

  • Hub : la trame de diffusion sera envoyée à chaque hôte du réseau et la carte réseau de chaque hôte la recevra après avoir détecté qu'il s'agit d'une trame de diffusion.
  • Commutateur : une fois que le commutateur a reçu la trame de diffusion, il détecte qu'il s'agit d'une trame de diffusion, puis la transmet via d'autres interfaces que celle dans laquelle la trame est entrée.
  • Résumé : pas de différence

(3) Lorsque plusieurs hôtes envoient des trames unicast à un hôte en même temps :

image-20210605165853002 image-20210605165913072

  • Hub : les collisions se produisent car elles sont envoyées en même temps et la trame en collision est propagée à chaque hôte sur le bus.
  • Commutateur : lorsque le commutateur reçoit plusieurs trames, il les met en mémoire tampon et les transmet à l'hôte de destination une par une sans collision.

(4) La différence entre l'utilisation d'un concentrateur pour étendre Ethernet et l'utilisation d'un commutateur pour étendre Ethernet :

Monodiffusion :

image-20201015155408692

diffuser:

image-20201015155440402 image-20201015155706698
  • hub : domaine de diffusion augmenté, domaine de collision augmenté
  • Les commutateurs peuvent isoler les domaines de collision

4. Résumé

image-20201015160146482

Les performances du commutateur Ethernet fonctionnant au niveau de la couche liaison de données dépassent de loin celles du concentrateur fonctionnant au niveau de la couche physique, et le prix n'est pas cher, ce qui fait que le concentrateur est progressivement éliminé par le marché.

3.9 Processus d'auto-apprentissage du commutateur Ethernet et de transmission de trame

1. Exemples de trames d'auto-apprentissage et de transmission :

Les exemples suivants supposent que chaque hôte connaît les adresses MAC des autres hôtes sur le réseau (aucun ARP requis)

A —> B

image-20201015161458528

  1. A envoie une trame à B, qui entre dans le commutateur 1 depuis l'interface 1

  2. Le commutateur 1 écrit l'adresse MAC source de la trame dans la table de commutation de trames et vérifie si la table de commutation de trames contient un enregistrement de l'adresse MAC de destination

  3. S'il n'est pas trouvé, diffuser la trame à toutes les interfaces sauf l'interface 1

  4. L'hôte C détecte que l'adresse MAC de destination n'est pas sa propre adresse et la rejette. L'hôte B détecte que l'adresse MAC de destination est sa propre adresse et accepte

  5. La trame est transmise de l'interface 4 à l'interface 2 du commutateur 2, le commutateur 2 écrit l'adresse MAC source A de la trame dans la table de commutation de trames et vérifie si la table de commutation de trames contient un enregistrement de l'adresse MAC de destination.

  6. S'il n'est pas trouvé, diffuser la trame à toutes les interfaces sauf l'interface 2

  7. Les hôtes D, E et F détectent que l'adresse MAC de destination n'est pas la leur et rejettent

B -> A

image-20201015162310922

  1. La trame unicast envoyée par l'hôte B entre dans le commutateur 1 via l'interface 3

  2. Le commutateur 1 enregistre l'adresse MAC source B et l'interface correspondante 3 dans la table de commutation de trames, et vérifie si la table de commutation de trames contient un enregistrement de l'hôte de destination

  3. trouvée, la trame est transmise directement depuis l'interface 1

E —> A

image-20201015162622462

  1. La trame unicast envoyée par E entre dans le commutateur 2 depuis l'interface 3,

  2. Le commutateur 2 enregistre l'adresse MAC source E et l'interface correspondante 3 dans la table de commutation de trames, et recherche s'il existe un enregistrement de l'hôte de destination dans la table de commutation de trames.

  3. Trouvé, le commutateur 2 transmet la trame de l'interface 2 à l'interface 4 du commutateur 1

  4. Le commutateur 1 enregistre l'adresse MAC source E et l'interface correspondante 4 dans la table de commutation de trames, et vérifie s'il existe un enregistrement de l'hôte de destination dans la table de commutation de trames

  5. trouvé, le commutateur 1 transmet la trame hors de l'interface 1

G —> A

L'hôte A et l'hôte G sont connectés par un concentrateur et partagent un bus

image-20201015163157140

  1. Lorsque l'hôte G envoie une trame de données, l'hôte A et l'interface 1 du commutateur 1 peuvent la recevoir.

  2. L'hôte A détecte que l'adresse MAC de destination est sa propre adresse après l'avoir reçue et la reçoit.

  3. La trame de données entre dans le commutateur 1 à partir de l'interface 1 et le commutateur vérifie s'il existe un enregistrement de l'hôte de destination dans la table de commutation de trame

  4. Trouvé, mais trouvé que l'interface de transfert est l'interface dans laquelle la trame est entrée, donc la trame a été rejetée.

Chaque enregistrement dans la table de commutation de trame a son heure effective et sera automatiquement supprimé après expiration, car la correspondance entre les adresses MAC et les interfaces n'est pas permanente. Par exemple, l'interface du commutateur est remplacée par l'hôte, ou la carte réseau de l'hôte est remplacée, ce qui rendra l'enregistrement invalide.

2. Résumé :

image-20201015170656500

image-20201015170739679

3.10 Spanning Tree Protocol STP pour les commutateurs Ethernet

1. Comment améliorer la fiabilité d'Ethernet

image-20210605203758537

Comme le montre la figure, lorsque la liaison entre A et B échoue, la communication entre A et B ne peut pas être effectuée. Il est donc nécessaire d' améliorer la fiabilité d'Ethernet en ajoutant des liaisons redondantes .

image-20201015171515481

Comme le montre la figure, un lien est ajouté entre les BC. Cependant, l'ajout de liens redondants peut entraîner certains problèmes, notamment la formation de boucles réseau .

Les boucles réseau peuvent causer certains problèmes :

  • Tempête de diffusion : les trames de données sont transmises en permanence sur le réseau , ce qui consomme beaucoup de ressources réseau, ce qui rend le réseau incapable de transmettre normalement d'autres trames de données.

  • L'hôte reçoit des trames de diffusion répétées : consomme beaucoup de ressources de l'hôte

  • La table d'échange de trames du commutateur fluctue (dérive) : Pendant la tempête de diffusion, les données de la table d'échange de trames sur le commutateur sont constamment rafraîchies.

image-20210605222216758

2. Le protocole Spanning Tree résout le problème de boucle

Afin d'augmenter les liaisons redondantes et d'améliorer la fiabilité du réseau tout en évitant l'impact des boucles de réseau, les commutateurs Ethernet utilisent le protocole Spanning Tree.

Quelle que soit la connexion physique entre les commutateurs, le commutateur peut automatiquement calculer et construire un réseau logique sans boucle, c'est-à-dire que sa topologie logique est en forme d'arbre.

L'arborescence logique finale doit garantir que l'ensemble du réseau peut être connecté.

image-20210605223248525

3.11 Réseau local virtuel

1. Présentation du réseau local virtuel (VLAN)

Au fur et à mesure que l'échelle de l'Ethernet commuté s'étend, le domaine de diffusion s'étend également en conséquence, et un domaine de diffusion énorme apportera de nombreux inconvénients :

  • tempête de diffusion
  • Difficile à gérer et à maintenir
  • problèmes de sécurité potentiels

De nombreux protocoles de la pile de protocoles TCP/IP utilisent la diffusion :

  • Protocole de résolution d'adresse ARP
  • Protocole d'informations de routage RIP
  • Protocole de configuration d'hôte dynamique DHCP

Méthodes de fractionnement des domaines de diffusion :

  • Les domaines de diffusion peuvent être isolés à l'aide de routeurs :

    • Les routeurs ne transfèrent pas les paquets de diffusion par défaut
    • Mais le routeur est très cher, il n'est pas pratique d'utiliser le routeur pour isoler
  • Technologie de réseau local virtuel (VALN) :

    • Technique permettant de diviser les périphériques d'un réseau local en groupes logiques indépendants de l'emplacement physique qui partagent des exigences communes.

    image-20210605224720717

2. Mécanisme de mise en œuvre du réseau local virtuel (VLAN)

Tout d'abord, le commutateur doit pouvoir implémenter les deux fonctions suivantes :

  • Capable de traiter des trames avec des balises VLAN, également appelées trames IEEE 802.1Q.
  • Chaque port d'un commutateur peut prendre en charge différents types de port, et différents types de port traitent les trames de différentes manières.

(1) Trame IEEE 802.1Q :

  • Également appelée trame Dot One Q, elle étend la trame Ethernet MAC et insère une balise VLAN de 4 octets.

  • Les 12 derniers bits de la balise VLAN sont appelés l'identifiant VLAN VID , qui marque de manière unique le VLAN auquel appartient la trame Ethernet.

  • La valeur de VID est 0-4095 (0-2 12 -1), où 0 et 4095 ne sont pas utilisés pour représenter le VLAN

  • Les trames 802.1Q sont gérées par le commutateur, pas par l'hôte.

    • Lorsque le commutateur reçoit une trame Ethernet ordinaire, il insère une balise VLAN de 4 octets dans une trame 802.1 Q, appelée "balisage".
    • Lorsqu'un commutateur transfère une trame 802.1Q, il peut supprimer sa balise VLAN de 4 octets et la convertir en une trame Ethernet normale, appelée "de-tag"

image-20210605225413940

(2) Le type de port du commutateur :

Il existe trois types de ports sur un commutateur :

  • Accès
  • Tronc
  • Hybride:

Les commutateurs Cisco n'ont pas de ports hybrides,

L'ID VLAN par défaut de chaque port du commutateur :

  • Il est appelé VLAN natif sur les commutateurs Cisco, c'est-à-dire VLAN intrinsèque, qui appartient par défaut au VLAN1.
  • Il s'appelle Port VLAN ID sur les commutateurs Huawei, c'est-à-dire Port VLAN ID ou PVID en abrégé.

Chaque port d'un commutateur possède un et un seul PVID.

Port d'accès :

  • Les ports d'accès sont généralement utilisés pour se connecter aux ordinateurs des utilisateurs

  • Le port d'accès ne peut appartenir qu'à un seul VLAN, c'est-à-dire qu'il ne peut recevoir et envoyer qu'une trame avec le même VLAN

  • La valeur PVID du port d'accès est identique à l'ID de VLAN auquel appartient le port (la valeur par défaut est 1)

  • Méthode de traitement de réception du port d'accès :

    • Généralement, seules les trames MAC Ethernet ordinaires "non traitées" sont acceptées et la trame est étiquetée en fonction de la valeur PVID du port qui accepte la trame, c'est-à-dire qu'un champ de balise VLAN de 4 octets est inséré et que la valeur VID dans le champ est identique à la valeur PVID du port.
  • Méthode de traitement de l'envoi du port d'accès :

    • Si la valeur VID dans la trame est égale à la valeur PVID du port, alors "retirez l'étiquette" et transférez la trame, sinon elle ne la transmettra pas.
    image-20210605232105821

    Après avoir divisé le LAN virtuel :

image-20210605233408625

Port de coffre :

  • Les ports de jonction sont généralement utilisés pour l'interconnexion entre les commutateurs ou entre les commutateurs et les routeurs.
  • Les ports de jonction peuvent appartenir à plusieurs VLAN, c'est-à-dire qu'ils peuvent envoyer et recevoir des trames de plusieurs VLAN
  • L'utilisateur peut définir la valeur PVID du port de jonction. Par défaut, la valeur PVID est 1.
  • Méthode de traitement d'envoi du port de jonction :
    • Pour les trames avec VID égal à PVID : "de-tag" et avant
    • Pour les trames dont le VID n'est pas égal au PVID : renvoi direct
  • Le port de jonction accepte la méthode de traitement :
    • Pour les trames "untagged", la trame est "tagged" en fonction de la valeur PVID du port recevant la trame
    • Pour les trames "marquées", la réception

A diffuse :

image-20210605234914957

C diffuse :

image-20210605235237356

Questions pratiques :

image-20201015210417695

Ports hybrides spécifiques à Huawei :

image-20210606001744495 image-20210606002636750

A ----> C:

image-20210606002623469

B —> C:

image-20210606003001758

A ----> B

image-20210606003446064

Il en est de même pour passer de B à A.

Je suppose que tu aimes

Origine blog.csdn.net/OYMNCHR/article/details/119113417
conseillé
Classement