CCNA1 : Chapitre 3

Protocoles et communications réseau

Les bases de la commutation

La communication entre deux hôtes sur un réseau commence par l'envoi d'un message ou d'informations depuis une source vers une destination. Cet envoi est régi par des règles appelées "protocoles". Chaque protocole est propre à son mode de communication.

L'envoi du message passe donc par la source, l'encodeur, l'émetteur, le support de transmission, le recepteur, le décodeur et la destination du message. Avant d'envoyer le message, il doit être codé. Le codage est un processus de conversion des informations vers un format acceptable pour la transmission. Le décodage c'est l'inverse ! Les messages sur le réseau sont donc convertis en bits par l'émetteur (Il peut être codé en sons, impulsions électriques, ondes lumineuses...) et décodés par le recepteur !


Encapsulation

Nous, pauvres humains, lorsque nous envoyons une lettre via la poste pour demander à mamy comment elle va... On prend une feuille et on marque dessus :

Salut mamy, comment ça va ? Bisous

Ensuite on plie la feuille, on la met dans une enveloppe, on marque l'adresse de mamy, notre adresse à nous, on colle un timbre et on ferme l'enveloppe. Ensuite on emmène tout ça à la poste. Et ben dans un réseau c'est pareil :

    Identification du destinataire
  • l'adresse de mamy

  • Salutations
  • "Salut mamy"

  • Contenu du message
  • "Comment ça va ?"

  • Conclusion
  • "Bisous"

  • Identification de l'expéditeur
  • Notre adresse à nous !

  • Mettre la lettre dans l'enveloppe
  • Encapsulation

Le format ainsi que le contenu de la trame sont déterminés par le type de message envoyé et par le canal utilisé. Les messages pas correctement formulés sont rejetés ! La taille est également importante. Un message trop gros est rejeté par le destinataire. Donc, lorsque le message est trop important, il est décomposé en plusieurs petites parties. Les règles régissant la taille des trames sont très strictes et peuvent être différentes selon le canal utilisé. Une trame trop longue ou trop courte n'est pas livrée.


La Synchronisation des Messages

Il existe 3 règles pour la synchronisation des messages.

    Méthode d'accès
  • La méthode d'accès va permettre aux ordinateurs de savoir quand est-ce qu'ils peuvent envoyer un message sur le réseau. Si deux ordinateurs parlent en même temps, il y a une collision. Il faut donc attendre avant de pouvoir parler :3

  • Contrôle de flux
  • Le contrôle de flux va permettre d'établir une communication claire pour l'emetteur et le destinataire. L'emetteur ne doit pas envoyer trop d'informations trop rapidement ! La quantité d'informations envoyées ainsi que la vitesse de livraison sont donc contrôlées.

  • Délai d'attente de la réponse
  • Si un ordinateur ne répond pas à une requette dans un délai acceptable, l'hôte emetteur a le choix entre répéter la requette ou continuer à en envoyer.

Options de remise des messages

Il existe plusieurs manières de transmettre un message. Imaginez une classe de 24 élèves avec un professeur. Cette classe est divisée en deux groupes de 12 élèves.

Le professeur fait son cours normalement et explique à tout le monde comment calculer une équation. Il s'agit d'une diffusion.

Ensuite ce même professeur remarque qu'un élève perturbe le cours, il le remet donc en place en lui faisant une remarque. Le professeur communique donc avec un seul élève : il s'agit d'une monodiffusion.

Pour terminer, le professeur décide de donner un devoir maison pour le groupe 1 de la classe. Il explique donc le sujet de l'exercice à 12 élèves sur 24. Il s'agit d'une multidiffusion.


Les Protocoles

Un groupe de protocole, qu'est-ce que c'est ? C'est une suite de protocoles ! Et une suite de protocole, qu'est-ce donc ?

    Suite de protocoles
  • Des protocoles associés entre eux
  • Des protocoles nécessaires pour remplir une fonction de communication

Ces suites de protocoles sont mises en oeuvre par les hôtes et les périphériques réseau dans le logiciel ou le matériel... voire les deux !

Afin que les périphériques puissent correctement communiquer, la suite de protocoles réseau doit décrire les exigence et les intéractions très précisément. Les protocoles réseau définissent un format et des règles d'échange pour les messages qui circulent entre chaque périphérique. Les protocoles réseau les plus courant sont : HTTP, TCP, IP.

Les protocoles intéragissent donc entre eux : Un serveur WEB qui communique avec un client WEB en est l'exemple le plus classique. Dans cet exemple, on distingue 4 protocoles :

    HTTP
  • Il s'agit du protocole d'application qui régit la manière dont le client et le serveur vont intéragir. Ce protocole va décrire le contenu et la mise en forme des requêtes échangées. Les logiciels du client ET du serveur WEB adaptent / implémentent le protocole HTTP dans le cadre de l'application. Mais ce protocole dépend d'autres protocoles pour gérer le transport des message entre le client et le serveur.

  • TCP
  • Il s'agit d'un protocole de transport qui gère les conversations individuelles. Dans notre exemple, le protocole TCP va diviser les messages HTTP en petites parties appelées "segments". Ce protocole sert également de controleur de la taille

  • IP
  • Ce protocole récupère les segments formatés à partir du protocole TCP, il encapsule ensuite les segments pour en faire des "paquets", il affecte des adresses appropriées et remet les paquets au(x) destinataire(s)

  • Ethernet
  • Ce protocole permet, pour commencer, de communiquer sur une liaison de données. Ensuite il donne aux données, la capacité physique de naviguer sur le réseau (via les supports).

Suite de protocoles TCP/IP

Le modèle TCP/IP compte 4 couches avec, dans chaque couche, de nombreux protocoles :

    Couche Application
  • DNS : Résolution de noms
  • BOOTP : Boot sur le réseau
  • DHCP : Attribution d'IP dynamique
  • SMTP : Serveur sortant de messagerie
  • POP : Serveur entrant de messagerie (Pas de sauvegarde sur le serveur)
  • IMAP : Serveur entrant de messagerie (Sauvegarde sur le serveur)
  • FTP : Échange de fichiers
  • TFTP : Échange de fichiers simple et sans connexion, sans accusé de réception
  • HTTP : Échange de textes, images, sons, vidéos, graphiques et autres via le WEB

  • Couche Transport
  • TCP : Communications fiables et accusé de réception (plus lourd que le UDP)
  • UDP : Pas de confirmation de réception. Envoie les données sans savoir si elles vont être reçues

  • Couche Internet
  • IP : Reçoit des segments de la couche transport, regroupe les messages en paquets, indique l'adresse de destination
  • NAT : Convertit les IP privées en IP globale et publique
  • ICMP : Signale les erreurs
  • OSPF : Protocole de routage dynamique
  • EIGRP : Protocole de routage dynamique propriétaire (Cisco)

  • Couche d'Accès Réseau
  • ARP : Fait le lien entre chaque adresse IP et l'adresse MAC qui correspond
  • PPP : Encapsulation des paquets pour une transmission via une connexion série
  • Ethernet : Définit les règles de câblage et de signalisation sur une couche d'accès réseau
  • Pilotes d'interface : Fournit les instructions à un ordinateur permettant de contrôler une interface déterminée sur un périphérique réseau

Processus de communication TCP/IP

Lorsqu'un client charge une page WEB, le serveur lui envoie des données. Les données sont converties en données HTTP (une en-tête est ajoutée à l'avant des données HTML) qui précisent la version HTTP utilisée par le serveur et aussi un code d'état indiquant qu'il dispose d'informations pour le client WEB qui a fait la demande.

Ensuite, on sort de la couche application pour arriver dans la couche transport. Ici, le protocole TCP intervient pour encapsuler (donc se mettre à l'avant) les données HTTP et les transformer en Segment TCP.

Puis les informations IP sont ajoutées à l'avant du segment TCP, (donc le protocole IP encapsule le segment TCP) on a donc atteint la couche Internet. Ces informations IP viennent attribuer les adresses IP source et destination pour indiquer ou sera acheminé le paquet. Parce que oui ! Le segment TCP est maintenant évolué en Paquet IP !

Et c'est pas fini ! Le paquet IP est maintenant encapsulé dans une Trame Ethernet ! On a donc atteint la couche d'accès réseau. Cette trame sera ensuite transmise au routeur le plus proche (se trouvant bien entendu sur le chemin du clien WEB, puisque c'est une trame envoyée par le serveur).

Ce serveur va virer l'en-tête Ethernet, il va analyser le Paquet IP pour regarder les adresses indiquées dedans, il va se dire "hmmm... le meilleur trajet pour arriver à cette destination, c'est par là !" il va refoutre ce Paquet IP dans une nouvelle trame et va l'envoyer au suivant. Et rebelotte jusque la destination ! Une fois la trame arrivée au client, le client en question va supprimer les couches, une par une, pour finalement retrouver les données cachées derrière la trame, le paquet, le segment, et l'en-tête HTTP ! Pfiou. En voilà un beau bordel !


Les trucs chiants : Les Normes

IEEE, IETF, IANA, ICANN, ITU, TIA... Eeeet oui ! Ce sont toutes les normes qui favorisent la compatibilité des équipements, la concurrence et l'innovation ! Be oui, si un produit monopolise le marché c'est pas top pour les autres :/ et la technologie ne ferait que stagner... Il faut A-VAN-CER ! D'où les normes.

Il n'existe pas qu'un seul appareil qui utilise les protocoles IPV4, DHCP, 802.3 (ethernet) et 802.11 (Wi-Fi) ! Y'en a plein ! Et ça permet AUSSI de pouvoir charger une page WEB sur n'importe quel système d'exploitation. Même sur MAC alors que le serveur tourne sur Linux ! Et même si c'est nul, MAC. Les systèmes d'exploitations mettent en oeuvre les mêmes protocoles !

Nous en avons besoin car, grâce à elles, Internet reste ouvert, les constructeurs peuvent librement mettre en oeuvre les protocoles. Aller, je vous en énumère quelques unes :

    ISOC (Internet Society)
  • Promouvoit le développement, les évolutions et la libre utilisation d'Internet :D

  • IAB (Internet Architecture Board)
  • Sert a gérer les développements des normes Internet !

  • IETF (Internet Engineering Task Force)
  • Développe, met à jour, gère les technologies Internet et TCP/IP. Ils gèrent les RFC aussi. (Request For Comments)

  • IRTF (Internet Research Task Force)
  • Recherche à long terme sur les protocoles Internet et TCP/IP.

  • ICANN (Internet Corporation for Assigned Names and Numbers)
  • Situé aux USA, ils coordonnent l'attribution des adresses IP et la gestion des noms de domaine !

  • IANA (Internet Assigned Numbers Authority)
  • Supervise et gère l'attribution des adresses IP, la gestion des noms de domaine (oui... eux aussi!) et les identificateurs de protocole je sais même pas ce que c'est ce truc mais osef.

Je vous énumère aussi les différents groupes d'étude IEEE 802.

  • 802.1 : Protocoles LAN de couche supérieure
  • 802.3 : Ethernet
  • 802.11: LAN sans fil
  • 802.15: Réseaux personnels sans fil (WPAN)
  • 802.16: Réseaux métropolitains sans fil
  • 802.18: Contrôle radio
  • 802.19: Coexistence des réseaux sans fil
  • 802.21: Services MIH (Media Independent Handover)
  • 802.22: Réseaux régionnaux sans fil
  • 802.24: Réseaux intelligents

Les modèles en couche

Il y a plusieurs avantages au fait d'utiliser des modèles en couches. Tout d'abord, ça aide à la conception d'un protocole. Ensuite, ça encourage la concurrence et permet d'éviter que des changements radicaux technologiques ou fonctionnels ne se répercutent sur les autres couches ! Et pour finir, ça fournit un langage commun pour décrire des fonctions / fonctionnalités réseau.


Le Modèle OSI

Le modèle OSI comporte 7 couches, chaque couche à ses fonctionnalités.

    Application (Couche 7)
  • Contient les protocoles utilisés pour les communications de processus à processus.

  • Présentation (Couche 6)
  • Fournit une représentation commune des données transférées entre des services de couche 7.

  • Session (Couche 5)
  • Fournit des services à la couche présentation afin d'organiser son dialogue et gérer l'échange de données.

  • Transport (Couche 4)
  • Définit les services pour segmenter, transférer et réassembler les données entre chaque périphérique.

  • Réseau (Couche 3)
  • Fournit des services pour échanger les parties de données individuelles sur le réseau entre les périphériques.

  • Liaison de Données (Couche 2)
  • Décrit les méthodes d'échange des trames entre les périphériques sur un support commun.

  • Physique (Couche 1)
  • Cette couche décrit les moyens mécaniques, électriques, fonctionnels et méthodologiques afin d'activer, de gérer et de désactiver des connexions physiques pour les communications entre chaque périphérique.
Un moyen débile de s'en rappeler : le PLR Tue la SPA (PLRTSPA = Physique Liaison Réseau Transport Session Présentation Application) c'est complètement con, je vous l'accorde, mais avec moi, ça marche. xD

Comparaison : OSI / TCP/IP


Segmentation des messages

Si le fait de regarder une vidéo envoyait un flux ininterrompu et volumineux de bits, personne d'autre ne pourrait communiquer sur le réseau ! Effectivement, une meilleure approche, qui consiste à diviser les données en parties plus petites, est appelée "Segmentation". La segmentation présente deux avantages majeurs.

  • Tout d'abord, l'envoie d'éléments plus petits permet d'entremêler plusieurs conversations ! Un coup le paquet qui vient du PC A, un coup le paquet qui vient du PC B ! Chacun son tour ! On entremêle :D Et cette méthode est appelée le "Multiplexage".
  • La segmentation peut aussi augmenter l'efficacité du réseau. Si jamais une partie d'un message ne parvient pas à destination (pour une raison X ou Y) il n'y aura besoin que de renvoyer cette partie là et non pas tout le message :D

Par contre, la segmentation et le multiplexage ajoutent un niveau de complexité au processus... Imaginez que vous devez envoyer une lettre de 100 pages ! Et que chaque enveloppe ne peut contenir qu'une seule lettre... Ben ce sera bien long et chiant. C'est ça la complexité en plus ! C'est chiant ! (non je déconne, c'est plus long.)

CCNA1 : Chapitre 3