04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 2 Plan Rappels sur les limites d’IPv4 Le subnetting Datagramme et fragmentation IP Les protocoles ARP, RARP, ICMP Les protocoles de niveau transport (TCP, UDP)
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 3 Rappels sur les limites d’IPv4 Espace d’adressage épuisé : => solutions : IPv6, Subnetting et Translation d’adresses (NAT) Problème de QoS (Quality of Service) : => mettre en place de outils d’administration (monitoring de bande passante, mesures et optimisations du débit, du délai et de la gigue) Problème de sécurité : => la couche application doit prendre en charge les mécanismes de sécurité
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 4 Le subnetting (découpage en sous-réseaux) ➢ Principe : on utilise une seule adresse IP pour créer d’autres sous réseaux. ➢ Le subnetting permet: de résoudre le problème de pénurie d’adresses IPv4; d’interconnecter des réseaux locaux distants; d’avoir un mélange de différents types de réseaux (Ethernet, Token ring); de réduire la congestion dans les réseaux.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 5 Caractéristiques du subnetting Un réseau IP de classe A, B ou C peut être découpé en sous-réseaux. Chaque sous-réseau peut être découpé en sous- sous-réseaux et ainsi de suite. Il y a de même notion pour le réseau et le sous- réseau. Chaque sous-réseau a un seul identifiant réseau unique et il exige un masque de réseau pour le sous-réseau. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 6 Préalable pour le subnetting Avant de faire le subnetting, il est nécessaire de bien déterminer les points suivants : ✓ le nombre d'identifiant réseau requises pour l'usage courant et également pour l'évolution dans le futur, ✓ le nombre maximum de machines de chaque sous- réseau, tenant compte encore de l’évolution future, ✓ un masque de réseau pour le sous-réseau entier, ✓ les identifiants de sous-réseau utilisables et ceux des machines valides. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 7 Exemple de découpage Soit le réseau de classe C, 192.168.1.0 avec le masque par défaut 255.255.255.0; On veut découper ce réseau en 2 sous-réseaux.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 8 Calcul du nombre de sous-réseau Si l'on utilise 1 bit => 2¹ = 2 sous-réseaux, mais le bit de haut et le bit de bas ne sont pas utilisés. Donc, il faut au moins 2 bits. Si l'on utilise 2 bits =>2² = 4 sous-réseaux, mais il n'y a que deux qui sont utilisables. Donc, on peut utiliser les 2 bits pour faire ce découpage.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 9 Calcul du masque de sous-réseau Le masque de chaque sous-réseau est obtenu en rajoutant 2 bits à 1 au masque initial;
Le masque de réseau par défaut est 255.255.255.0. Il
s’écrit en binaire : 11111111 11111111 11111111 00000000;
En ajoutant 2 bits au masque initial, on obtient
alors le nouveau masque en binaire : 11111111 11111111 11111111 11000000, soit 255.255.255.192 en décimal pointé. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 10 Calcul du NetID de chaque sous-réseau Le NetID de chaque sous-réseau sera constitué de 26 bits. Les 24 premiers bits seront ceux de l'écriture en binaire de 192.168.1 et les 2 bits suivants seront constitués du numéro du sous- réseau 00, 01, 10, 11(ensemble des combinaisons de 2 bits). Parmi les 4 numéros de sous-réseaux, 2 seront interdits (00 et 11) : bits de haut et bit de bas. Il reste donc 2 numéros de sous-réseau utilisables. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 11 Calcul des adresses des sous-réseau
192.168.1.00000000 => 192.168.1.0 => Non utilisable
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 12 Calcul des adresses de diffusion de chaque sous-réseau Sous-réseau 192.168.1.64 192.168.1.01000000 L’adresse de diffusion est obtenu en mettant tous les bites hôtes à 1, donc on a: 192.168.1.01111111 => 192.168.1.127
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 13 Sous-réseau 192.168.1.128 192.168.1.10000000 L’adresse de diffusion est obtenu en mettant tous les bites hôtes à 1, donc on a: 192.168.1.10111111 => 192.168.1.191
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 14 Calcul des adresses machines de chaque sous-réseau Adresse IP de Premier sous-réseau : 192.168.1.64
192.168.1.01000000 : Non utilisable
192.168.1.01000001 = 192.168.1.65 192.168.1.01000010 = 192.168.1.66 _ _ | | 62 machines | 192.168.1.01111110 = 192.168.1.126 _ _ _ 192.168.1.01111111 : Non utilisable (adresse de broadcast) Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 15 La plage d’adresses du premier sous-réseau est de 192.168.1.56 à 192.168.1.126
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 16 Adresses IP du deuxième sous-réseau : 192.168.1.128
192.168.1.10000000 : Non utilisable
192.168.1.10000001 = 192.168.1.129 192.168.1.10000010 = 192.168.1.130 _ _ _ | | 62 machines | 192.168.1.10111110 = 192.168.1.190 _ _ _ _ 192.168.1.10111111 : Non utilisable (adresse de broadcast) Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 17 La plage d’adresses du deuxième sous-réseau est de 192.168.1.129 à 192.168.1.190
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 18 Datagramme et fragmentation IP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 19 Datagramme IP Le datagramme IP (ou paquet IP) est l’unité de donné de la couche Internet (couche 3 du modèle OSI).
Il est composé d’un en-tête et d’un champ donnée qui
peut contenir un segment TCP, un message ICMP, ARP, RARP ou encore OSPF.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 20 Structure du datagramme IP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 21 Significations des champs Le numéro de version (VER) sur 4 bits, indique la version du protocole IP utilisé. La version actuelle est la version 4, cependant la version 6 (IPv6) est en cours de déploiement dans l’Internet.
Le champ longueur d’en-tête (IHL, Internet Head
Lenght) sur 4 bits indique, en multiple de mots de 32 bits, la longueur de l’en-tête. La valeur courante, lorsqu’aucune option n’est insérée, est 5 (32x 5 = 160/8 = 20 octets).
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 22 Le champ type de service (TOS, Type Of Service) sur 8 bits, spécifie à la passerelle inter- réseau, le type d’acheminement attendu (RFC 791). Les 4 critères d’acheminement sont : priorité, délai, débit, fiabilité et coût. La plupart des systèmes intermédiaires n’ont pas la possibilité de traiter ces données.
Le champ longueur totale (LEN, total LENgth field)
sur 16 bits, indique la longueur totale en octets du datagramme (y compris l’en-tête). La longueur maximale est de 65 536 octets. Cette longueur maximale est toute théorique, les applications limitent elles mêmes la taille des données utilisateurs. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 23 Le champ identification (ID) sur 16 bits est attribué par la source pour identifier le datagramme actuel. L’ID permet, à l’hôte destinataire, d’identifier les différents fragments d’un même datagramme, il facilite ainsi le réassemblage. Le champ suivant est composé de 3 bits dont le premier n’est pas utilisé. Le bit DF (Don’t Fragment) demande au système intermédiaire de ne pas fragmenter le datagramme (bit à 1). Ce bit est utilisé, par exemple, quand le système d’extrémité est incapable de réassembler les différents fragments. Le système intermédiaire qui reçoit un tel datagramme doit soit le router dans sa totalité sur un sous-réseau où le MTU est compatible soit le détruire. En cas de destruction, il en avertit la source par un message d’erreur ICMP. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 24 Le bit MF (More Fragment) est positionné à 1 dans tous les fragments d’un même datagramme d’origine pour indiquer qu’un fragment suit. Il est à 0 dans le dernier fragment ou lorsqu’un datagramme n’a pas subit de fragmentation.
Le champ offset, sur 13 bits indique, en cas de
fragmentation, la position du fragment dans le datagramme d’origine. Ce champ indique la position du premier bit du fragment dans le datagramme d’origine, en multiple de 8 octets. En conséquence, tous les fragments, sauf le dernier, ont une longueur multiple de 8 octets ou le multiple de 8 octets le plus proche du MTU. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 25 Le champ durée de vie (TTL, Time To Live), sur 8 bits détermine, en seconde, la durée de vie d’un datagramme. Cette valeur est décrémentée toutes les secondes ou à chaque passage à travers un routeur. Lorsque le TTL est égal à 0, le datagramme est détruit, ce qui empêche aux datagrammes d’être continuellement en boucle sur le réseau. Le routeur qui détruit le datagramme envoie un message d’erreur ICMP à l’émetteur.
Le champ protocole (Protocol), sur 8 bits, indique à
IP l’origine du champ données (protocole transporté, RFC 1700). Ce champ permet le multiplexage de flux.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 26 Le champ total de contrôle (Checksum), sur 16 bits, n’est calculé que sur l’en-tête IP. Le total de contrôle est le complément à 1 de la somme en complément à 1 des données de l’en-tête découpées en mots de 16 bits. Le total de contrôle est recalculé par chaque système intermédiaire (modification du champ TTL et fragmentation éventuelle). La RFC 1141 indique une méthode de calcul simplifiée qui ne tient compte que de la décrémentation de 1 du champ TTL. En cas de fragmentation, le total de contrôle est intégralement recalculé.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 27 Adresse IP source, sur 32 bits indique l’adresse IP de l’émetteur.
Adresse IP de destination, sur 32 bits indique l’adresse
IP du destinataire.
Le champ option (éventuelles), de longueur variable,
spécifie des options spéciales. Coûteux en termes de traitement pour les passerelles, le champ option est peu utilisé.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 28 Bourrage, de longueur variable : des zéros sont ajoutés à ce champ pour s'assurer que l'en-tête IP est toujours un multiple de 32 bits.
Champ données, de longueur variable, ce champ
contient des informations de couche supérieure (segment TCP,…).
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 29 La fragmentation IP ➢ Chaque réseau, en fonction de ses caractéristiques spécifiques admet des unités de données de taille plus ou moins grande (MTU, Maximum Transfer Unit).
➢ Pour certains réseaux, cette taille est normalisée. C’est
le cas, par exemple, pour les réseaux de type Ethernet où la MTU est fixée à 1500 octets. Dans les réseaux étendus (WAN), la taille est déterminée par l’opérateur en fonction des caractéristiques de ses éléments actifs (buffers...). Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 30 Fragmentation IP (suite) Un datagramme peut, pour atteindre sa destination, traverser plusieurs réseaux dont les MTU sont différentes.
Si le datagramme à transférer a une taille
supérieure à la MTU du réseau, le commutateur d’accès devra fractionner (segmenter) l’unité de données pour la rendre compatible avec les capacités de transport du réseau (figure suivante). Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 31 Exemple : principe de la fragmentation IP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 32 Le routage de chaque fragment étant indépendant du précédent et du suivant, aucun nœud n’a la certitude de recevoir tous les fragments, dans ces conditions, seul le destinataire a la capacité de réassembler les différents fragments.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 33 Les protocoles ARP, RARP et ICMP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 34 Les protocoles de résolution d’adresses (ARP et RARP)
Les applications ne connaissent que l’adresse logique
IP, alors que les données sont acheminées dans le réseau physique. Pour masquer aux applications l’adresse physique du réseau d’acheminement, la couche IP doit établir une correspondance entre l’adresse logique et l’adresse physique. Ce mécanisme s’appelle mécanisme de résolution d’adresses. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 35 Le protocole ARP
Le protocole ARP (Address Resolution Protocol) permet
à une machine ou à une passerelle d’obtenir l’adresse MAC du nœud d’un réseau local auquel il doit adresser des données.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 36 Fonctionnement de ARP Il émet une demande de résolution d’adresses sur le réseau physique à destination de la machine cible. Cette demande est encapsulée, dans une trame MAC (Ethernet, Token Ring...) dont le champ adresse destination est à FF-FF-FF-FFFF-FF (adresse de diffusion). Tous les nœuds connectés au réseau local, recevant cette requête ARP vont extraire l’adresse MAC source et l’adresse IP source dans la trame ARP. Seule, la machine qui a reconnu son adresse logique répond en fournissant son adresse physique. La réponse est stockée dans uncache dite cache ARP de la machine origine. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 37 Illustration du mécanisme ARP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 38 Commentaire Lorsqu’une machine doit envoyer un datagramme à une machine appartenant à un autre réseau (résolution inter-réseaux), la résolution s’effectue en deux temps. La machine origine réalise une première résolution d’adresses avec la passerelle, puis transmet les données à la passerelle qui elle-même émet une requête ARP sur le réseau destinataire pour connaître l’adresse MAC de la machine cible. Enfin, les données sont adressées à la machine cible.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 39 Format de la trame ARP
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 40 Le protocole RARP A l’inverse du protocole ARP, le protocole RARP (Reverse Address Resolution Protocol) permet à une station qui ne dispose pas d’adresse IP (station sans disque, imprimante...) de s’en voir attribuer une.
Le format du paquet RARP est identique à celui du
protocole ARP. Seule, la valeur du champ code opération est différente : 3 pour une requête et 4 pour la réponse. Une machine du réseau doit être configurée pour répondre à ces requêtes (serveur RARP). Le protocole RARP est aujourd’hui considéré comme obsolète. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 41 Le protocole ICMP Le protocole ICMP (Internet Control Message Protocol, RFC 792) permet d’informer d’une erreur réseau (message d’erreur) ou de formuler une demande d’état à un système (message d’information). Les messages ICMP sont encapsulés dans un datagramme IP (Protocole = 1).
La figure 11 suivante représente la structure du
message ICMP et fournit quelques exemples de codage des différents champs.
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 43 Remarque (1) Le protocole ICMP ne fiabilise pas IP, c’est un protocole d’information. Les différentes fonctions sont aussi utilisées par des utilitaires. Par exemple, la commande PING utilise les messages de demande de réponse d’écho (type 0, 8).
Le protocole NTP (Network Time Protocol) utilise la
commande ICMP Timestamp (type 13, 14) pour synchroniser les horloges du réseau. Les estampilles temporelles sont exprimées en milliseconde depuis minuit TU (Temps Universel).
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 44 Remarque (2) L’utilitaire PING (Packet INternet Groper) permet de tester l’accessibilité d’un système et d’évaluer le temps aller et retour entre le système source et le système cible. La commande PING envoie un message ICMP de demande d’écho vers la machine cible, celle-ci retourne une réponse d’écho. La commande PING permet de tester une liaison TCP/IP de bout en bout, et, ainsi, de déterminer un éventuel élément défaillant.
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 45 Les protocoles de niveau transport (TCP, UDP)
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 46 Le protocole TCP TCP est un protocole de transport de bout en bout en mode connecté. S’appuyant sur un protocole réseau non fiable (best effort), TCP doit assurer la délivrance en séquence des différents segments, contrôler la validité des données reçues, organiser les reprises sur erreur ou sur temporisation et réaliser le contrôle de flux.
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 48 Notion de port Afin que plusieurs communications puissent circuler en même temps, TCP utilisent des numéros de ports (numéro variant de 0 à 65535).
Un port identifie un ou plusieurs processus. La notion
de port autorise le multiplexage des connexions sur une même machine.
C’est la couche transport qui attribue, un numéro de
port, à une connexion. Les 1 024 premiers ports sont réservés, ils sont dits référencés (Well known ports).
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 49 Quelques exemples de ports référencés
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 50 Remarque ➢ Toute application n’ayant pas un numéro de port définit et reconnu se voient attribué un numéro de port aléatoire.
➢ Les ports ont été attribués de la manière suivante :
✓ 0 à 255 réservés aux applications publiques; ✓ 255 à 1023 attribué aux entreprises pour les applications commerciales; ✓ 1023 à + utilisés pour les attributions dynamiques. ➢ On peut visualiser les ports avec la commande /etc/services sous linux. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 51 Le protocole UDP ➢ Certaines applications, notamment les applications temps réel nécessitent des temps de traitement optimisés, d’autres n’ont que très peu de données à envoyer, comme, par exemple le service de noms (DNS), d’autres encore n’ont nullement besoin d’un service sécurisé comme l’offre TCP, comme les informations de gestion des réseaux (SNMP). Dans tous ces cas les mécanismes mis en œuvre par TCP s’avèrent lourds et pénalisent les performances. Aussi, un mode de transport allégé a-t-il été défini, ce mode est appelé UDP (User Datagram Protocol). Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 52 UDP est un protocole de transport en mode non connecté. Il envoie des datagrammes en utilisant une information complémentaire, le numéro de port.
L’application devra surveiller l’ordonnancement des
messages et les problèmes de contrôle de flux que UDP ne gère pas.
A part NFS (Network File System), UDP est utilisé par
des applications qui ne transfèrent que des petits messages,
Cours de Services Réseaux-L2 SRT-Semestre S3-
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 53 Les ports UDP Certains ports UDP sont prédéfinis, mais les programmeurs sont libres d’en utiliser d’autres. On peut voir cela sous le système Unix avec le fichier /etc/services sous un système.
04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 55 Remarque ➢ Finalement UDP se réduit une à une petite couche, gare d’aiguillage entre différentes applications. ➢ Ces applications auront du travail, si elles transfèrent de grosses informations sur de grands réseaux car les paquets vont arriver dé-séquencés. ➢ Pour éviter cela et éviter que chaque application se préoccupe du transport (chacun dans son coin, avec les problèmes de reprise, le contrôle de flux, etc..), TCP a été créé. C’est disons, un sous programme commun à certaines applications qui tourne dans le système d’exploitation de la machine. Cours de Services Réseaux-L2 SRT-Semestre S3- 04/02/2020 Année 2020-UFR SATIC-UADB-Dr. Diery NGOM 56 TD Conception réseau (étude de besoin, subnetting, place d’adressage logique, schéma de réseau).