Modèle TCP/IP et INTERNET
description
Transcript of Modèle TCP/IP et INTERNET
1
Les RESEAUX
Yonel GRUSSON 2
Mod
èle
TC
P/I
Pet
IN
TE
RN
ET
Yonel GRUSSON 3
Présentation générale De TCP/IP
OSI et TCP/IPPile de protocoles TCP/IP
Des organismes de gestion. L’adressage
Avec la norme IPv4 Aperçu de la norme IPv6
Plan
Yonel GRUSSON 4
Le protocole réseau IP Présentation Structure du Datagramme IP Le Routage IP
Le protocole de transport TCP Structure du message TCP La connexion TCP
Plan
Yonel GRUSSON 5
Modèle OSI et protocoles TCP/IP
(Transport Control Protocol / Internet Protocol)
Couche Physique
2
3
1
4
Couche Liaison
Couche Transport
Couche Réseau IP
TCP
TCP/IP
Yonel GRUSSON 6
TCP/IPDans ce contexte, on parlera d'une pile de protocoles du modèle TCP/IP.Par exemple :
5 à 7
Couche Physique
TCP
IPCouche Liaison2
3
1
4
HTTPTELNET, FTP
UDP
SNMP SMTP
ARPRARP
Yonel GRUSSON 7
Il existe en fait une famille de protocoles liés à TCP/IP (quelques exemples) :
• TELNET pour les connexion à distance en émulation VT (Virtual Terminal)
• FTP (File Transfer Protocol) pour le transfert de fichiers.
• SMTP (Simple Mail Transfer Protocol) pour la messagerie électronique.
• SNMP : (Simple Network Management Protocol) pour l'administration à distance.
TCP/IP
Yonel GRUSSON 8
• ARP (Adress Resolution Protocol)
Permet de faire la correspondance entre les adresses logiques et les adresses physique (MAC) - Type = 806
• RARP (Reverse Adress Resolution Protocol)
Correspondance Adresse physique / adresse logique - Type = 8035
TCP/IP
Yonel GRUSSON 9
UDP (User Datagram Protocol)
Protocole équivalent à TCP mais en mode non connecté (Datagramme). Livraison non fiabilisée (pas de garantie d'arrivée, pas de contrôle de flux ni du séquencement…)
TCP/IP
Yonel GRUSSON 10
Le réseau Internet est géré par l'ICANN (Internet Corporation for Assigned Names and Numbers) organisation de droit privé (droit californien) à but non lucratif créé en 1998.
De par ses statuts elle doit :• Coordonner les éléments techniques pour
préserver la connectivité universelle des réseaux.
La Gestion d'Internet
Yonel GRUSSON 11
De par ses statuts elle doit :• Allouer et gérer l'espace des adresses IP• Attribuer des identificateurs de protocole• Gérer les noms de domaine de premier
niveau pour les codes génériques (.com, .net, etc.) et nationaux (.fr, .it, etc.)
• Superviser et garantir le fonctionnement du système racine DNS.
La Gestion d'Internet
Yonel GRUSSON 12
L'ICANN remplace et assume maintenant les fonctions assurée précédemment par l'IANA (Internet Assigned Number Authority).
L'ICANN est dirigé par un comité directeur de 19 membres élus.
Les principales composantes de l'ICANN :• Le DNSO (Domain Name Supporting Organization)
qui traite des noms de domaines.
La Gestion d'Internet
Yonel GRUSSON 13
Les principales composantes de l'ICANN :• L'ASO (Address Supporting Organization) qui
s'occupe des adresses IP. Elle délègue la gestion des adresses IP à divers organismes :RIPE NCC (Réseaux IP Européens - Network
Coordination Center) pour l'Europe, Moyen-Orient, Afrique du Nord
APNIC (Asia-Pacific NetWork Information
Center) pour l'Asie et le Pacifique
La Gestion d'Internet
Yonel GRUSSON 14
ARIN (American Registry for Internet Numbers) pour les États-Unis et le reste du monde
Ces organisme délèguent à leur tour (en France, l’AFNIC -au sein de l’INRIA- gère le domaine .fr).
• Le PSO (Protocol Supporting Organization) travaille sur les protocoles utilisés dans les communication sur l'Internet. PSO collabore avec les organismes qui ont définis ou fait évolués les standards (IETF, W3C, etc.) et les organismes de télécommunication
La Gestion d'Internet
Yonel GRUSSON 15
Quelques adresses :• http://www.icann.org• http://www.dnso.org• http://www.pso.icann.org• http://www.aso.icann.org• http://www.ietf.org (Internet Engineering Task
Force)• http://www.afnic.fr• Pour obtenir les RFC :
• ftp://ftp.inria.fr• http://abcdrfc.free.fr (traduction française)
La Gestion d'Internet
Yonel GRUSSON 16
Les Adresses IP (IPv4)• Une adresse IP est codée sur 32 bits (4 octets)
traditionnellement exprimée à l'aide de 4 nombres (0 à 255) séparés par des points
• Exemple d'adresse : 192.48.92.2• Décomposition d'une adresse IP :
Adresse IP
Adresse du réseau Numéro de la machine sur le réseau local
Attribuée par l'ICANN Attribué par l'Administrateur
Yonel GRUSSON 17
Les réseaux sont catalogués en 5 classes :
7 0 7 0 7 0 7 0
Classe A 0 N° Réseau N° Machine sur 24 bits
Classe B 10N° Réseau N° Machine sur 16 bits
Classe C 110N° Réseau N° Machine
Classe D 1110Adresse Multicast
Classe E 1111Adresses Réservées pour des usages futurs
Les Adresses IP (IPv4)
Yonel GRUSSON 18
• Classe A• 126 Réseaux possibles (00 à 7F) + 16 millions
de machines (000000 à FFFFFF).• Adresses attribuées aux grands organismes
(Défense US, MIT, etc.). Actuellement plus attribué.
• Classe B• 16384 réseaux (8000 à BFFF) et 65535
machines.• Adresses allouées aux grands sites
industriels, centres de recherche, universités, etc.).
Les Adresses IP (IPv4)
Yonel GRUSSON 19
• Classe C
2097152 réseaux (C00000 à DFFFFF) avec 254 machines sur chaque réseau.
• Classe D
Ces adresses ne désignent pas une machine mais un groupe de machines voulant partager la même adresse. La diffusion sur le groupe s'appelle MULTICAST
Les Adresses IP (IPv4)
Yonel GRUSSON 20
Récapitulation
Classe d'adresse
Classe AClasse BClasse CClasse DClasse E
Minimum
0128192224240
Maximum
126191223239247
Les Adresses IP (IPv4)
Yonel GRUSSON 21
• Adresses Particulières :– 0.0.0.0 Adresse utilisée par une machine
pour connaître son adresse Internet durant une procédure d'initialisation (cf DHCP).
– 255.255.255.255 message envoyé à toutes les machines du réseau mais pas vers les autres réseaux (broadcast limité).
– <réseau>.255 message envoyé à toutes les machines du réseau <réseau> (broadcast dirigé). Par exemple : 193.16.255.255.
Les Adresses IP (IPv4)
Yonel GRUSSON 22
• Adresses Particulières :– <réseau>.0 Adresse utilisée pour désigner
le réseau <réseau>. Par exemple : 193.16.0.0.
– 0.<machine> Adresse du poste <machine> sur "ce réseau". Par exemple : 0.0.12.45
– 127.x.x.x Adresse de boucle. Le paquet envoyé avec cette adresse revient à l'émetteur. La valeur de 'x' est indifférente. On utilise généralement 127.0.0.1
Les Adresses IP (IPv4)
Yonel GRUSSON 23
• Adresses Particulières :
Le RFC 1597 fournit des adresses pour les réseaux privés (Adresses non routables sur l'Internet) :
10.0.0.0 1 réseau de classe A
de 172.16.0.0 à 172.31.0.0 16 réseaux
de classe B
de 192.168.0.0 à 192.168.0.0 256 réseaux
de classe C
Les Adresses IP (IPv4)
Yonel GRUSSON 24
• Réseaux IP:Un réseau IP se défini comme un ensemble de machines (hôtes) interconnectées ayant la même adresse réseau (202.187.0.0 par exemple). Les réseaux IP sont séparés par des routeurs
Les Adresses IP (IPv4)
Réseau IP 1
Réseau IP 2
RouteurRouteur
Yonel GRUSSON 25
Réseaux IP :On constitue des réseaux IP pour :• des raisons d’optimisation du trafic : Un
réseau IP formera au moins un domaine de collision. La diffusion ARP et DHCP se fait sur le réseau IP de l’émetteur.
• des raisons de sécurité : La fonction routage peut être associé à des fonctions de filtrage (proxy, firewall, filtre,…)
Les Adresses IP (IPv4)
Yonel GRUSSON 26
• Sous-réseaux :Dans le cadre d’un réseau local, on parlera souvent de sous-réseau pour désigner un réseau IP
Les Adresses IP (IPv4)
Sous-réseau 1
Sous-réseau 2
RouteurRouteur
Yonel GRUSSON 27
Sous-réseau• L'administrateur d'un LAN est maître de
sa codification. Il peut s'il le désire créer des sous-réseaux. L'adresse IP d’un hôte sera alors l’association de 3 adresses :
– Adresse du réseau– Adresse du Sous-réseau (Optionnel)– Adresse de la machine sur le sous-réseau
Les Adresses IP (IPv4)
Yonel GRUSSON 28
Sous-réseau
Donc deux problèmes peut se poser à l’administrateur :• Définir son plan d’adressage donc
définir un masque de réseau• Retrouver grâce au masque de réseau,
les éléments constitutifs d’une adresse (réseau, sous-réseau et hôte).
Les Adresses IP (IPv4)
Yonel GRUSSON 29
Les Adresses IP (IPv4)
Adresse IP
Adresse du réseau Partie gérée par l'administrateur
N° Sous réseau N° de la machine
BITS POSITIONNES A 1 BITS POSITIONNES A 0
Construction du masque
Yonel GRUSSON 30
Le masque de réseau doit permettre de séparer la partie réseau (+ sous-réseau éventuellement) d'avec la partie numéro de machine.
Exemples :• Sans sous-réseau
Classe A : 255.0.0.0 - Classe B : 255.255.0.0
Classe C : 255.255.255.0
Calcul :<Adresse-IP> ET <Masque> = <Adresse-réseau>.0
Les Adresses IP (IPv4)
Yonel GRUSSON 31
Exemples :
Avec sous-réseau (Adresse de la classe B)
L'administrateur A peut choisir :
8 bits pour coder le sous-réseau et 8 bits pour les machines : Masque de réseau : 255.255.255.0
Ainsi avec l'adresse IP = 142.12.42.145
Calcul :
<142.12.42.145> ET <255.255.255.0> = <142.12.42.0>
Comme nous sommes en présence d'une classe B (1er octet = 142), il y a un sous réseau, et son adresse 42 est extrait du 3ème octet.
Les Adresses IP (IPv4)
Yonel GRUSSON 32
Exemples :L'administrateur B peut choisir :
4 bits pour coder le sous-réseau et 12 bits pour les machines : Masque de réseau : 255.255.240.0 car (240)10 = (11110000)2
Ainsi avec l'adresse IP = 153.121.219.14 Calcul :
<153.121.219.14> ET <255.255.240.0>=<153.121.208.0>Comme nous sommes en présence d'une classe B
(1er octet = 153), l’adresse du sous-réseau 13 est extrait du 3ème octet 219 (4 premiers bits = 1101).
Les Adresses IP (IPv4)
Yonel GRUSSON 33
Une convention d'écriture des adresses IP
On trouve parfois l'écriture suivante des adresses IP :
142.12.42.145 / 24
153.121.219.14 / 20Dans cette écriture les nombres 24 et 20 représentent le nombre de bits consacré à la codification du réseau (et sous réseau). C'est une autre façon de donner le masque.
Les Adresses IP (IPv4)
Yonel GRUSSON 34
SurréseauxProblème : Une organisation désire 2000 adresses.
Un réseau de classe B lui procurera 65534 hôtes (63534 adresses perdues). Un réseau de classe C lui procurera seulement 254 hôtes.
Pour une bonne gestion du stock d'adresses, l'organisation obtiendra 8 réseaux de classe C (254*8 = 2032 adresses) par exemple les ID de réseau 220.78.16.0 à 220.78.23.255 (ID contiguës)
Mais cette multiplicité de réseaux implique une surcharge des tables de routage car pour 1 organisation 8 lignes sont nécessaires alors qu'une seule devrait suffire.
Les Adresses IP (IPv4)
Yonel GRUSSON 35
Surréseaux
La technique du CIRD (Classless Internet Domain Routing – Routage de domaine Internet sans classe ) va permettre de remplacer ces 8 lignes par une seule. Cette entrée dans la table de routage sera :[ID Réseau la plus basse – Masque de réseau_CIDR]
Entre d'autres termes, cette méthode fixe une adresse de départ et une étendue.
Les Adresses IP (IPv4)
Yonel GRUSSON 36
Surréseaux
220.78.16.0 à 220.78.23.255
11011100 01001110 00010 000 00000000
Jusqu'à…
11011100 01001110 00010 111 11111111
Les Adresses IP (IPv4)
Soit le masque CIDR :
11111111 11111111 11111 000 00000000
220.78.16.0 - 255.255.248.0 ou220.78.16.0 / 21 (notation normalisée CIDR)
Yonel GRUSSON 37
Surréseaux
Récapitulatif :• Le nombre de réseaux de classe C doit être une
puissance N de 2 (pour 16 réseaux N = 4, par exemple)
• La première adresse de classe C se termine par N zéros. De cette façon la numérotation des réseaux va de 00..0 à 11..1 (de 0000 à 1111 pour N = 4)
• Le masque CIRD contient des 1 pour le préfixe commun à toutes les adresses de classe C et des 0 sur les autres positions.
Les Adresses IP (IPv4)
Yonel GRUSSON 38
• L'adressage 32 bits va se révéler insuffisant avec le développement d'Internet.
• IPv6 (ou Ipng - ng pour "Next Génération") prévoit des adresses sur 128 bits (1 milliard de réseaux).
• IPv6 pourra contenir un adresse IPv4 sur les 32 bits de poids faibles + un préfixe sur les bits de poids forts.
Les Adresses IP (IPv6)
Yonel GRUSSON 39
• Une adresse IPv6 s'exprime en notation
hexadécimal avec le séparateur "deux-points".
• Exemple d'adresse :
5800:10C3:E3C3:F1AA:48E3:D923:D494:AAFF
Le principe de numérotation des réseaux et des
hôtes est maintenue avec des améliorations.
Cf. cours IPV6
Les Adresses IP (IPv6)
Yonel GRUSSON 40
Le protocole IP offre une couche d'abstraction par rapport aux caractéristiques physiques et matériels du réseau
Le Protocole IP
IP
ContraintesPhysiques LAN Ethernet
WAN
Token Ring
Yonel GRUSSON 41
Un réseau IP est : En mode DATAGRAMME. Sans connexionLa couche IP ne tente pas d'assurer
"une livraison fiable à la destination".La fiabilité et le problème du
séquencement sont traités par un protocole de couche supérieure comme TCP.
Le Protocole IP
Yonel GRUSSON 42
Le DATAGRAMME IP sera encapsulé dans "la zone de donnée" de la trame du niveau inférieur.
Le Protocole IP
Yonel GRUSSON 43
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Bourrage
Adresse IP Source
Adresse IP Destination
Protocole
Drapeau Place du fragment
Durée de vie
Identification
CheckSum
Options
Données
Version Long. En-tête Type de service Longueur totale du datagramme
Le Protocole IP
Yonel GRUSSON 44
Version : 4 bits pour la version ( 4 pour IPv4 -
actuellement utilisé- ou 6 pour IPv6). Internet Header Length (IHL) : 4 bits pour
donner la longueur de l'en-tête IP exprimée en mot de 32 bits. Avec un bourrage dans le champs option pour s'aligner sur un multiple de 32 bits. Sans le champs options la longueur minimum de l'en-tête IP est de 20 octets soit 5 mots de 32 bits.
Le DATAGRAMME IP
Yonel GRUSSON 45
Type de Service (ToS :Type Of Service)
8 bits qui se décomposent ainsi
-délai
+fiabilité
+débit
-coût
Type de ServicePriorité
0
210 3 654 7
Zone utilisée par les algorithmes de routage
Le DATAGRAMME IP
Yonel GRUSSON 46
Longueur totale du Datagramme :
16 bits pour la longueur totale (En-tête + Données).
Longueur théorique maximale : 65535 octets.
Quand le datagramme est encapsulé par une trame Ethernet ce champ permet de distinguer la partie information utile des bits de bourrage
Les Datagrammes dont la longueur dépasse la zones de données (MTU : Maximum Transmission Unit) du réseau sous-jacent doivent être fragmentés (rappel : MTU Ethernet 1500 octets).
Le DATAGRAMME IP
Yonel GRUSSON 47
La Fragmentation : La fragmentation recouvre les champs identification, drapeau et place du fragment. Identification : Chaque émetteur numérote
le datagramme (0 à 65535). Champs utilisé pour réassembler un datagramme fragmenté.
Drapeau : 3 bits
Toujours à 0 DF : Don't Fragment MF : More Fragment
0 1 2
Le DATAGRAMME IP
Yonel GRUSSON 48
La Fragmentation Drapeau (suite) :
DF = 0 Fragmentation possible. DF = 1 Fragmentation interdite. MF = 0 Dernier fragment. MF = 1 Ce n'est pas le dernier fragment.
Place du fragment : 13 bits pour indiquer la position des données du fragment par rapport au début du datagramme originel (en mot de 8 octets).
Le DATAGRAMME IP
Yonel GRUSSON 49
La Durée de Vie (TTL : Time To Live)
Temps maximal pendant lequel le paquet peut rester dans le système.
Valeur = 0 Le paquet est détruit
En principe TTL est exprimé en Seconde. Mais les durées de propagation sont difficilement évaluables par les routeurs. En pratique TTL contient le nombre de routeurs maximal qu'un paquet peut traverser. Chaque routeur décrémente de 1.
Le DATAGRAMME IP
Yonel GRUSSON 50
Protocole Ce champ indique le protocole de couche
supérieur qui recevra les données IP TCP=6 - UDP = 17
ETHERNET
IP ARP RARP
TCP
Couche 2
Couche 3
Couche 4
Type 0835 Type 0806 Type 0800
Protocole = 6
Le DATAGRAMME IP
Yonel GRUSSON 51
CheckSum : Égal au complément à 1 de la somme des mots de 16 bits (excepté le checksum). Cette somme est recalculée par chaque routeur (modification du champs TTL)
Adresse Source (cf Adressage IP)
Adresse Destination (cf Adressage IP)
Le DATAGRAMME IP
Yonel GRUSSON 52
Options : Ce champ est de longueur variable et peut être nul.
La description d'une option est la suivante :
Longueur est un multiple de mots de 32 bits (bourrage éventuel avec des 0)
Le DATAGRAMME IP
Paramètre(s)LongueurOption
Yonel GRUSSON 53
Le DATAGRAMME IP
Classe2 Bits
Nombre - 5 Bits pournuméroter l'optiondans la classe
0 0 : Contrôle1 0 : Débogage et mesures0 1 et 11 réservé à un usage ultérieur
Paramètre(s)LongueurOption
Copie de cette option
dans les fragmentssi Bit = 1
Yonel GRUSSON 54
Les réseaux IP sont interconnectés entre eux pour former un vaste réseau dont l'étendue peut être mondial (INTERNET).
Les réseaux IP sont reliés entre eux à l'aide de périphériques : Les ROUTEURS.
La transmission des datagrammes IP vers leurs destinataires s'appelle le ROUTAGE.
(Le routage ne s'entend que dans un environnement interconnecté de réseaux ou de sous-réseaux.)
Le ROUTAGE IP
Yonel GRUSSON 55
Dans chaque routeur un logiciel de routage IP à l'aide d'une table de routage achemine l'information de proche en proche vers le destinataire
Les hôtes -station d'un réseau- peuvent avoir aussi une table de routage.
Schéma simplifié d'une table de Routage :
Pour se rendre à :XXXXXXX YYYYYYYY
Prendre la direction de :
Le ROUTAGE IP
Yonel GRUSSON 56
Routeur
xxx xxx
Logiciel deRoutage
Table de routage
BalayagePort
Entrant
PortSortant
Chaque PORT est connecté sur un RESEAU
Le ROUTAGE IP
Yonel GRUSSON 57
Types de Routage Routage Statique : La table de routage est
créée manuellement. Routage Dynamique : Le routeur intègre
dynamiquement de nouvelles informations grâce à des protocoles de routage (Routing Information Protocol - RIP par exemple).
Même dynamique le routeur doit parfois être configuré manuellement.
Le ROUTAGE IP
Yonel GRUSSON 58
196.10.55.0
154.203.0.0 132.96.0.0
222.127.12.0
R1
R2
R4
R3
R5
154.203.0.6
196.10.55.8
196.10.55.4 222.127.12.9
154.203.0.11 132.96.0.4
132.96.0.6
222.127.12.21
154.203.0.10
222.127.0.2
154.203.0.12
Exemple de réseau d'entreprise IP
Le ROUTAGE IP
Yonel GRUSSON 59
Exemple de table de Routage d'un hôte
202.10.1.0 203.5.25.0 204.23.10.0R1 R5
R2 R4R3
205.6.12.2
205.6.12.5
205.6.12.1 205.6.12.3
205.6.12.0Destination
205.6.12.0202.10.1.0203.5.25.0204.23.10.0
Routeur deprochain pas
Connexion directe205.6.12.1205.6.12.2205.6.12.3
Le ROUTAGE IP
Yonel GRUSSON 60Exemple de table de routage pour un Routeur
Destination InterfaceRouteur prochain pas
202.10.1.0198.110.4.0197.18.6.0203.15.8.0
Connexion directeConnexion directe
198.110.4.3198.110.4.6
P2P1P1P1
202.10.1.0
197.18.6.0
203.15.8.0
198.110.4.0
R3
R2
202.10.1.5 R1 198.110.4.1
197.18.6.12 198.110.4.3
198.110.4.6
203.15.8.4P2
P1
Le ROUTAGE IP
Yonel GRUSSON 61
D'une façon générale une table de routage contient des numéros de réseau comme destination.
Il y a cependant deux autres destinations possibles : Des adresses spécifiques La destination par défaut
Le ROUTAGE IP
Yonel GRUSSON 62
Exemple de table de
Routage avec des adresses spécifiques
204.23.10.0
205.6.12.0202.10.1.4203.5.25.8202.10.1.0203.5.25.0204.23.10.0
Connexion directe205.6.12.2205.6.12.3205.6.12.1205.6.12.2205.6.12.3
202.10.1.0 203.5.25.0R1 R5
R2 R4R3
205.6.12.2
205.6.12.5
205.6.12.1 205.6.12.3
205.6.12.0 Destination Routeur
202.10.1.4 203.5.25.8
Le ROUTAGE IP
Yonel GRUSSON 63
R1 R2
195.23.5.0216.39.8.0214.56.3.0204.23.12.0
196.139.5.0196.139.5.5 196.139.5.6
Le ROUTAGE IP
Routeur de prochain pasDestination
196.139.5.0204.23.12.0
0.0.0.0
Connexion directe196.139.5.5196.139.5.6
Yonel GRUSSON 64
L’exploitation d’une table de routage commence avec l’adresse IP de destination d’un hôte.
Pour atteindre cet hôte il faut d’abord atteindre le réseau auquel il appartient et traverser les réseaux qui le précèdent.
Les adresses des réseaux ne peuvent être obtenu qu’avec l’aide du masque de réseau.
La table de routage doit donc présenter ce masque
Exploitation des tables de routage
Yonel GRUSSON 65
Une table de routage contiendra donc les quatre colonnes suivantes :
Adresse de destination (pour joindre telle adresse IP)
Masque de réseau (dont le réseau est …)
Adresse du Routeur ou passerelle (passer par ce routeur…)
Interface ou Port (pour joindre ce routeur passer par…)
Exploitation des tables de routage
Yonel GRUSSON 66
Exploitation des tables de routage
132.12.0.0
132.12.1.0 132.12.2.0
198.25.30.0166.1.0.0
R2
R1P1
P2 P3
P4
132.12.1.1 132.12.2.1
166.1.0.1
156.15.0.1
156.15.0.2
156.15.0.0
Yonel GRUSSON 67
Adresse dedestination
Masque deréseau
Passerelle Interface
166.1.0.0
132.12.1.0
132.12.2.0
156.15.0.0
198.25.30.0
255.255.0.0
255.255.255.0
255.255.255.0
255.255.0.0
255.255.255.0
Connexion Directe
Connexion Directe
Connexion Directe
Connexion Directe
156.15.0.2
P4
P3
P2
P1
P4
Exploitation des tables de routageVersion 1
Yonel GRUSSON 68
Exploitation des tables de routageVersion 2
Adresse dedestination
Masque deréseau
Passerelle Interface
166.1.0.0
132.12.1.0
132.12.2.0
156.15.0.0
198.25.30.0
255.255.0.0
255.255.255.0
255.255.255.0
255.255.0.0
255.255.255.0
132.12.1.1
156.15.0.2
166.1.0.1166.1.0.1
132.12.1.1
132.12.2.1 132.12.2.1
156.15.0.1
156.15.0.1
156.15.0.1
Yonel GRUSSON 69
Exploitation des tables de routage
• Dans cette seconde version, la mention "Connexion directe" (le réseau de destination connecté sur le même routeur) est remplacé par l'adresse IP de l'interface du routeur.
• Un cinquième colonne "Métrique" est possible. Elle indique le nombre de pas pour atteindre la destination. Le nombre de pas correspond au nombre de réseaux qu'il faut traverser pour atteindre le réseau de destination.
Yonel GRUSSON 70
Début PasTrouve := Vrai
Tant que PasTrouve ET Non(Fin de la table) faire N=Adresse de destinataire ET Masque de réseau Si N = Adresse de destination (colonne 1 de la table)
Alors PasTrouve :=Faux Si Passerelle = "Connexion directe " alors Recherche de l'Ad. MAC dans le cache ARP Si Pas de correspondance dans la table ARP alors Émission d'une trame ARP
Remise de la trame IP à la couche 4 Terminé
sinon Remise de la trame IP à la couche 4 Terminé
Fin du si
Exploitation des tables de routage
Yonel GRUSSON 71
sinon Router vers la passerelle
Terminé
Fin du si
Fin du si
Fin du Tant que
Si PasTrouvé
Alors
Message d ’erreur
Fin du si
Fin
Exploitation des tables de routage
D'autres algorithmes sont possibles
Yonel GRUSSON 72
LES ALGORITHMES DE ROUTAGE
Il existe deux classes d’algorithmes :
Les algorithmes Vector-Distance (Utilisés par RIP).
Les algorithmes Link-State (Utilisés par OSPF).
Yonel GRUSSON 73
Algorithme de Belman-Ford : Un routeur diffuse régulièrement à ses voisins les
routes qu’il connaît. Une route est composée d’une adresse destination,
d’une adresse de passerelle et d’un métrique indiquant le nombre de sauts nécessaires pour atteindre la destination.
Une passerelle qui reçoit ces informations compare les routes reçues avec ses propres routes connues et met à jour sa propre table de routage : si une route reçue comprend un chemin plus court
(nombre de prochains sauts +1 inférieur), si une route reçue est inconnue.
LES ALGORITHMES DE ROUTAGE
Yonel GRUSSON 74
A B
D E
1 2
6 5
43
C
C 2 1
B L 0E 4 1
Vector-Distance : Exemple de mise à jour
B L 0E 4 1C 2 1
B 1 1Reste inchangé
C 3 3DevientC 1 2
Car 1+1 < 3
E 3 2Reste inchangé
A L 0B 1 1C 3 3E 3 2D 3 1
Donc :
A L 0B 1 1C 1 2E 3 2D 3 1
Yonel GRUSSON 75
Vector-Distance : construction des tables
4
A B
D E
1 2
6 5
A L 0 B L 0
E L 0
C L 0
3
D L 0
C
A
L
0
A L 0A L 0
A 1 1
A 3 1
A 1 1B L 0
A 1 1B L 0
A 1 1B L 0A 3 1
D L 0
A 3 1D L 0
B 2 1A 2 2D 3
B 1 11
D 6 1A 6 2B 4 1
D 6 1A 6 2B 4 1
E L 0
B 2 1A 2 2
C L 0
D 6 1A 6 2B 4 1
E L 0
D 6 1A 6 2B 4 1
E L 0
B 2 1A 2 2
C L 0
E 6 1A 1 1B 6 2
C 5 1
C 2 1
E 4 1D 4 2
E 5 1D 5 2
Yonel GRUSSON 76
A 1 1B L 0
C 2 1
E 4 1D 4 2
Vector-Distance : la convergence
4
A B
D E
1 2
6 5
3
C
A L 0B 1 1D 3 1
A 3 1D L 0
E 6 1A 1 1B 6 2
E L 0D 6 1A 6 2B 4 1C 5 1
C L 0B 2 1A 2 2
E 5 1D 5 2
A 1 1B L 0
C 2 1
E 4 1D 4 2
A 1 1B L 0
C 2 1
E 4 1D 4 2
A 1 1B L 0
C 2 1
E 4 1D 4 2
C 1 2E 1 2
C 6 2
A L 0
D 3 1B 1 1
C 1 2E 1 2
A L 0
D 3 1B 1 1
C 1 2E 1 2
AC
ED
E L 0D 6 1A 6 2B 4 1C 5 1
AC
ED
E L 0D 6 1A 6 2B 4 1C 5 1
AC
ED
E L 0D 6 1A 6 2B 4 1C 5 1
Convergence !
Yonel GRUSSON 77
ALGORITHME LINK STATEBasé sur la technique Shortest Path First (SPF) : les passerelles maintiennent une carte complète
du réseau et calculent les meilleurs chemins localement en utilisant cette topologie.
les passerelles ne communiquent pas la liste de toutes les destinations connues (cf. Vector-Distance),
une passerelle basée sur l’algorithme SPF, teste périodiquement l’état des liens qui la relient à ses routeurs voisins, puis diffuse périodiquement ces états (Link-State) à toutes les autres passerelles du domaine.
Yonel GRUSSON 78
ALGORITHME LINK STATEBasé sur la technique Shortest Path First (SPF) : Les messages diffusés ne spécifient pas des
routes mais simplement l’état (up, down) entre deux passerelles.
Lorsque un message parvient à une passerelle, celle-ci met à jour la carte de liens et recalcule localement pour chaque lien modifié, la nouvelle route selon l’algorithme de Dijkstra shortest path algorithm qui détermine le plus court chemin pour toutes les destinations à partir d’une même source.
Yonel GRUSSON 79
On trouve typiquement au dessus du protocole IP (couche réseau - 3), les protocoles de transport (couche 4) suivants :
UDP (User Datagramme Protocol)Protocole sans connexionLivraison non fiabilisée (pas de garantie
d'arrivée, pas de contrôle de flux ni du séquencement…)
TCP (Transmission Control Protocol)
Les Protocoles de transport
Yonel GRUSSON 80
Caractéristiques du protocole TCP
Un contrôle des données transférées (données endommagées, perdues et/ou dupliquées) et un reséquencement si la couche IP ne les délivre pas dans l'ordre.
Un niveau de priorité. Les données transmises dans un message peuvent être traitées avec plus ou moins de priorité.
LE MESSAGE TCP
Yonel GRUSSON 81
Caractéristiques du protocole TCP Un contrôle du flux grâce à un
mécanisme de "fenêtre".
LE MESSAGE TCP
Yonel GRUSSON 82
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
UR
G
AC
K
PS
H
RS
T
SYN
FINRéservé
Bourrage
Port source Port destination
Numéro de séquence
Fenêtre
Acquittement
Déplacement
Pointeur message UrgentCheckSum
Options
Données
LE MESSAGE TCP
Yonel GRUSSON 83
Port Source - Port Destination L'adresse IP, au niveau 3, permet de situer une
machine. Une fois la machine trouvée, il faut pouvoir
déterminer l'application qui doit traiter les données.
L'application est désignée par un NUMERO DE PORT.
Le RFC 1700 donne l'affectation des numéros de port aux applications connues
LE MESSAGE TCP
Yonel GRUSSON 84
Exemples de numéro de PORT (extrait du RFC 1700)
Services Numéro du Port
TELNET 23
HTTP 80
Port Données FTP 20
Port Contrôle FTP 21
Kerberos 88
LE MESSAGE TCP
Yonel GRUSSON 85
Les numéros de port compris entre 0 et 1023 sont réservés pour les ports usuels.
L'association :
[Adresse IP + Numéro de port]
s'appelle un Socket. Numéro de séquence et Acquittement
Principe : Pour la fiabilité de la transmission les octets sont numérotés.
LE MESSAGE TCP
Yonel GRUSSON 86
Champ des bits de contrôle (Flag) 6 Bits pour définir la fonction des message
et la validité de certains champs : URG : Message urgent - Les données
doivent être traitées sans attendre que le récepteur ait traité les octets envoyés dans le flux.
ACK : Indique la validité du champ acquittement.
LE MESSAGE TCP
Yonel GRUSSON 87
Champ des bits de contrôle (Flag)
PSH : Les données reçues doivent être immédiatement remises à la couche supérieure.
RST (Reset) : Réinitialisation de la connexion suite à une erreur irrécupérable.
SYN : Indique l'ouverture d'une connexion.
FIN : Fermeture normale d'une connexion
LE MESSAGE TCP
Yonel GRUSSON 88
Champ réservé Pour un usage futur et
positionné à 0.
Déplacement
Nombre de mots de 32 bits qui constitue
l'entête TCP car le champ Option est de
longueur variable. Avec aucune option,
déplacement = 5 (20 octets).
LE MESSAGE TCP
Yonel GRUSSON 89
Champ fenêtreCe champ est une implémentation du contrôle de flux.Nombre d'octets qu'il est possible de recevoir par rapport au numéro d'acquittement (cf. plus loin).Il est calculé par le récepteur en fonction de la taille encore disponible dans son buffer d'entrée.
LE MESSAGE TCP
Yonel GRUSSON 90
CheckSum Pointeur message Urgent
Pointe sur les octets qui doivent être traités en priorité.
OptionsChamp de longueur variable avec un bourrage pour s'aligner sur un multiple de 32 bits (voir déplacement)
LE MESSAGE TCP
Yonel GRUSSON 91
Options (suite)
00000000
Type A : 1 seul octet :
Fin des options
00000001 Pas d'opération
Type B :
LE MESSAGE TCP
00000010 Longueur Données de l'option
Yonel GRUSSON 92
Options (suite)L'option principalement utilisée est la
détermination du MSS (Maximum Segment Size) lors de la connexion. MSS fixe la taille maximum des données qu'il est possible de mettre dans un message.
Type B Long = 4 MSS
LE MESSAGE TCP
00000010 00000010 4 octets
Yonel GRUSSON 93
Gestion d'une connexion TCPLes champs numéro de séquence,
acquittement et flags sont utilisés par le protocole TCP à gérer la communication de bout en bout (couche 4)
LA CONNEXION TCP
Yonel GRUSSON 94
Une application qui appelle le moduleTCP utilise les appels systèmes suivants :
OPEN pour ouvrir la connexion. On distingue :OPEN PASSIF qui est un open type serveur. Il
reste à l'écoute et accepte les requêtes qui lui arrive.
OPEN ACTIF qui est un open type client qui après une connexion sur un open passif enverra des données.
LA CONNEXION TCP
Yonel GRUSSON 95
CLOSE pour fermer la connexion SEND pour envoyer les données
après un OPEN RECEIVE pour recevoir des données STATUS pour obtenir des
informations sur la connexion.
LA CONNEXION TCP
Yonel GRUSSON 96
L'ouverture d'un connexion TCP se négocie en 3 temps à l'aide des flags SYN et ACK :
SYN = 1 ACK = 0 Demande d'ouverture
SYN = 1 ACK = 1 Acceptation de l'ouverture
SYN = 0 ACK = 1 Données
LA CONNEXION TCP
Yonel GRUSSON 97
Le contrôle de flux se fait à l'aide des champs numéro de séquence (noté #SEQ) et acquittement (noté #ACK). La valeur initiale de #SEQ est produite à partir d'une horloge et d'un compteur incrémenté toutes les 4 ms. Il permet de numéroter les octets de données.
Avec ces éléments un schéma d'une connexion TCP sera le suivant (il existe d'autres
séquences de protocole) :
LA CONNEXION TCP
Yonel GRUSSON 98
LA CONNEXION TCPACTIVE OPEN
Demande d'ouverture de connexion par le
client PASSIVE OPENPar le serveur
#ACK = 0
#SEQ = 55
SYN=1 ACK=0
#ACK = 56
#SEQ = 202
SYN=1 ACK=1
#ACK = 203
#SEQ = 56
SYN=0 ACK=1
#ACK = 67 (56+10+1)
#SEQ = 203
SYN=0 ACK=1
Envoi de 10 octets
Envoi de 20 octets
Quand SYN=0 et ACK=1 : • #SEQ reprend le #ACK reçu
• #ACK = #SEQ reçu + Nombre d'octets reçu + 1
• #ACK donne le numéro du prochain octet attendu
Yonel GRUSSON 99
LA CONNEXION TCP
Envoi de 10 octets #ACK = 224 (203+20+1)
#SEQ = 67
SYN=0 ACK=1
#ACK = 78
#SEQ = 224
SYN=0 ACK=1
Envoi de 30 octets
Panne de réseau
#ACK = 78
#SEQ = 224
SYN=0 ACK=1
t =Time Out
Copie du message dans une file d'attente. Reprise de l'envoi si aucun ACK n'est reçu avant le temps "t".
Yonel GRUSSON 100
LA CONNEXION TCP
#ACK = 255
#SEQ = 78
SYN=0 ACK=1
Réexpédition des 30 octets
Envoi de n octets#ACK = 78
#SEQ = 224
SYN=0 ACK=1
Etc.
Envoi de n octets
Yonel GRUSSON 101
Mod
èle
TC
P/I
Pet
IN
TE
RN
ET
Yonel GRUSSON 102
A B
D E
1 2
6 5
43
C
A
DCB
L
E
0
A
DCB
LE 0DA
CB
L
E
0
B
DCA
L
E
0 C
DB
L
E
0AL 0
L 0 L 0
L 0
L 0
L 0