Transcript Le protocole TCP/IP Bouabid Amine TRANSFER ALGER 21-26 septembre 2002
Le protocole TCP/IP
Bouabid Amine TRANSFER ALGER 21-26 septembre 2002
Le protocole TCP/IP
TCP/IP: caractéristiques
1.
C'est un protocole ouvert, et indépendant de toute architecture particulière, d'un système d'exploitation particulier, ou d'une structure commerciale propriétaire. 2.
Ce protocole est indépendant du support physique du réseau. Cela permet TCP/IP d'être véhiculé par des supports et des technologies différentes 3.
Le mode d'adressage est commun à tous les utilisateurs de TCP/IP quelle que soit la plate-forme qu’ils utilisent.
TCP/IP: l’interconnexion
Internet est une : • interconnexion universel de réseaux différents , où chaque machine est universellement identifiée par un identifiant unique (adresse IP).
• Interconnexion d'égal à égal n'y a pas de machines prioritaires (en opposition à une structure hiérarchique).
(peer to peer systems) : il • Ceci est mis en oeuvre par une couche réseau masquant les détails de la couche physique à l’utilisateur.
TCP/IP : l’interconnexion
Reseau A
P1
Reseau B
P2
Reseau C •Les données transitent depuis un réseau vers un autre réseau par des noeuds spécialisés appelés passerelles (
gateway
) ou routeurs (
router
).
•Chaque routeur a une vu « local » du réseau global.
•Exemple: le routeur p1 sait comment atteindre directement les réseaux A et B, mais pour atteindre le réseau C il envoi les données au routeur p2.
• • • • •
Caractéristiques d’IP
Implémente la couche réseaux par rapport au modèle OSI.
Définit l’adressage logique des machine ainsi que le routage des données entre les nœuds.
C’est un protocole non fiable car il ne garanti pas la remise des données à la destination final.
C’est un protocole sans connexion car il n’y a pas de circuit établi au préalable et les paquets sont acheminés indépendamment les uns des autres.
C’est un protocole de transmission pour le mieux (best effort) car il compte sur la technologie physique sous-jacente pour l’acheminement des paquets.
L’adressage IP
But :
Une machine doit être identifiée par : – Une adresse qui doit être un identificateur universel de la machine.
– Une route précisant comment la machine peut être atteinte.
– Un nom (mnémotechnique pour les utilisateurs) réalisé a un autre niveau (le DNS)
L’adressage IP
Solution :
adressage binaire efficace. compact assurant un routage
Adressage "à plat" par opposition à un adressage hiérarchisé permettant la mise en oeuvre de l'interconnexion d'égal à égal.
Une adresse IP Address" est un entier sur 32 bits paire hostid dite « Internet Address" ou "IP (netid, hostid) où netid constituée d'une identifie un réseau et identifie une machine sur ce réseau.
Structure d’une adresse IP
0 31
Identifiant Réseau Identifiant Machine
La partie réseau: est un identifiant commun pour un groupe de machines connecté sur le même réseau physique et/ou logique.
La partie host : identifie une machine donné dans le réseau physique et/ou logique, identifié par l’identifiant réseau.
Cette paire est structure d’une manière à définir 5 classes d’adresses IP.
Les classes d’adresses IP
Classe
A
0 1 0
Net Part
8
Host Part
31 Classe
B
0 1 2 0 1
Net Part
16
Net Part
31 Classe
C
0 1 2 3 0 0 1
Net Part
24 31
Net Part
Les classes d’adresses IP
La notation décimal d’une adresse IP: Une adresse IP est noté par 4 chiffres séparés par des points, chaque chiffre représente un octet de l’adresse IP.
Par exemple l’adresse IP suivante est noté par:
1100 0001 1100 0010 0100 0000 0100 0111 193 .
194 .
64 .
71
Les classes d’adresses IP
• • • La notion de masque: Le masque est un entier sur 32 bits, constitué d’une suite de 1 suivi d’une suite de 0.
En appliquant un and logique entre une adresse IP quelconque et le masque associé on obtient la partie réseau de l’adresse (l’adresse réseau).
Par exemple le masque associé à une adresse de classe A est: 1111 1111 0000 0000 0000 0000 0000 0000 Ce qui correspond en notation décimal à 255.0.0.0
Les classes d’adresses IP
• • • La notion de masque (suite): Une autre notation du masque d’une adresse: Puisque le masque est constitué d’une suite contiguë de 1 suivi d’une suite de 0, l’information utile donc est le nombre de 1 dans le masque.
Une autre notation consiste a faire suivre une adresse donné par le nombre de bits égal 1 dans le masque.
Exemple : 193.194.64.0 avec le masque 255.255.255.0
correspond a 193.194.64.0/24
Les classes d’adresses IP
La notion de masque (suite): Les masques associés aux 3 classes d’adresses IP sont respectivement: Pour la classe A: 255.0.0.0 ou bien /8 Pour la classe B: 255.255.0.0 ou bien /16 Pour la classe C: 255.255.255.0 ou bien /24
Les classes d’adresses
Résumé:
Classe d’adresse Classe A Nombre d’octets pour la partie réseau 1 octet (8 bits) Nombre d’octets pour la partie host Nombre d’adresses valides par réseau 3 octets (24 bits) 2^24 –2 Classe B Classe C 2 octets (16bits) 2 octets (16 bits) 2^16 - 2 3 octets (24 bits) 1 octet (8 bits) 2^8 - 2
Les classes d’adresses IP
Résumé:
Classe Classe A Classe B Classe C Adresses réseaux valides Nombre d’adresses réseau pour cette classe 1.0.0.0 à 126.0.0.0
2^7 128.0.0.0 à 191.254.0.0
192.0.0.0 à 223.255.254.0
2^14 2^21
Adresses particulières
L’adresse réseau: la partie host =0 1100 0001 1100 0010 0100 0000 0000 0000 193.194.64
.0
L’adresse de la machine local: la partie réseau = 0 0000 0000 0000 0000 0000 0000 0100 0111 0.0.0.
71 L’adresse de diffusion dirigé: la partie machine = 1 1100 0001 1100 0010 0100 0000 1111 1111 193.194.64
.255
Adresses particulières
Adresse de diffusion limité: tout les bits à 1 255.255.255.255.
Adresse local au démarrage : tout les bits à 0 0.0.0.0
L’adresse de boucle locale: toutes les adresses commençant par 127.
127.
X.X.X
Le sous adressage (subnetting)
• • Le sous-adressage est une extension du plan d’adressage initial qui permet de mieux gérer les adresses.
Le principe est qu’une adresse de réseau d’une classe A, B ou C peut être découpé en plusieurs sous-réseaux.
0
Partie Réseau Partie hôte
31 0
Partie Réseau Partie sous-réseau Partie hôte
31
Le sous-adressage
• • • • Une adresse IP comporte désormais 3 partie: l’identifiant réseau : il a la même signification que celui du plan d’adressage initial.
l’identifiant du sous-réseau ou un sous-réseaux.
: identifie un segment l’identifiant de la machine : identifie la machine sur le segment ou le sous-réseaux.
La somme des longueurs de l’identifiant sous réseau et l’identifiant de la machine doit toujours donner la longueur de la partie hôte dans l’adressage classique
Le sous-adressage
Le sous adressage avec les différentes classes d’adresses.
8 Réseau 24-N Sous-réseau N Hôte 16 Réseau 16-N Sous-réseau N Hôte Classe A Classe B 24 Réseau 8-N Sous-réseau N Hôte Classe C
Sous Adressage Calcule des adresses avec le sous adressage
• • •
Le sous-adressage consiste à déterminer : Le masque adéquat pour le sous-réseau.
Le calcule des sous-réseaux correspondants:
• • •
Deux méthodes existent pour le calcule:
• • Calculer l’adresse du sous-réseau.
Calculer l’adresse de diffusion correspondante.
Déterminer les adresses utilisables.
Le calcule binaire.
Le calcule décimal.
Le sous-adressage
• • Exemple de calcule des sous-réseaux d’une adresse réseau donnée: Étant donné une adresse IP avec un masque donné, retrouver les adresses de sous-réseaux et le masque associé, l’adresse broadcast ainsi que les adresses utilisables.
Prenant l’adresse de réseau 192.168.64.0 (classe C) avec le masque 255.255.255.0 selon le plan d’adressage initial.
Le sous adressage
Quelque rappel sur le calcule binaire: Une adresse IP est un entier sur 32 bit, et donc elle est décomposé en une somme de puissances de 2: 1 1 0 1 1 0 1 1 2^0 + 2^1 + 2^3 + 2^4 + 2^6 + 2^7 = 219 Le nombre de réseaux possible par adresse = 2^nombre de bits de la partie réseau Le nombre de machines par réseau = 2^nombre de bits de la partie hôte -2
•
Le sous adressage
Les masques qu’on peut utiliser sont donc: Dernier octet du Masque 0 128 192 224 240 248 252 254 254 Écriture binaire 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
Le sous adressage
Algorithme de calcule des sous-réseau: 1.
Déterminer le nombre de bits dans la partie sous réseau qui permet d’avoir le nombre de sous-réseaux voulu.
2.
3.
4.
5.
6.
7.
Déterminer le nombre de bits dans la partie machine qui permet d’avoir le nombre de machines.
Déterminer le masque qui va être utilisé pour ses sous-réseaux.
Écrire sous forme binaire l’adresse IP initial.
Écrire sous forme binaire le masque initial.
Écrire sous forme binaire le nouveau masque.
Déduire les adresses de sous-réseaux en incrémentant la partie de sous-réseau dans l’adresse initial.
8.
9.
Le sous adressage
Déduire l’adresse du broadcast en remplaçant par des 1 tous les bits de la partie machine de l’adresse IP.
Enfin déduire les adresses utilisables.
Exemple: Nous voulons découper le réseau de classe C 192.168.64.0/24 en 8 réseaux de 32 machines pour chaque réseau.
Le sous adressage
• Le nombre de réseaux doit être une puissance de 2, or 8=2^3 donc nous avons 3 bits dans la partie sous-réseau.
• Le nombre de machines doit être une puissance de 2 également, 32 = 2^5, donc nous avons 5 bits dans la partie hôte.
Le sous adressage
Adresse initial Nouveau Masque Réseau N°=1
Notation décimal 0 24 27 31 192.168.64.0
255.255.255.224
192.168.64.0
1100 0000 1010 1000 010 0 0000 0 0 0 0 0 0 0 0 1111 1111 1111 1111 1111 1111 0 0 0 0 0 0 0 0 1111 1111 1111 1111 1111 1111 1 1 1 0 0 0 0 0 1100 0000 1010 1000 010 0 0000 0 0 0 0 0 0 0 0
Réseau N°=2
192.168.64.32
1100 0000 1010 1000 010 0 0000 0 0 1 0 0 0 0 0
Réseau N°=3
192.168.64.64
Réseau N°=4 Réseau N°=5 Réseau N°=6
192.168.64.160
Réseau N°=7
192.168.64.96
192.168.64.128
192.168.64.192
Réseau N°=8
192.168.64.224
1100 0000 1010 1000 010 0 0000 0 1 0 1100 0000 1010 1000 010 0 0000 0 1 1 1100 0000 1010 1000 010 0 0000 1 0 0 1100 0000 1010 1000 010 0 0000 1 0 1 1100 0000 1010 1000 010 0 0000 1 1 0 1100 0000 1010 1000 010 0 0000 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Adresse réseau Adresse broadcast
192.168.64. 000 00000 (192.168.64.0) 192.168.64. 001 00000 (192.168.64.32) 192.168.64. 010 00000 (192.168.64.64) 192.168.64. 011 00000 (192.168.64.96) 192.168.64. 100 00000 (192.168.64.128) 192.168.64. 101 00000 (192.168.64.160) 192.168.64. 110 00000 (192.168.64.192) 192.168.64. 111 00000 (192.168.64.224) 192.168.64.000
11111 (192.168.64.31) 192.168.64.001
11111 (192.168.64.63) 192.168.64.010
11111 (192.168.64.95) 192.168.64.011
11111 (192.168.64.127) 192.168.64.100
11111 (192.168.64.159) 192.168.64.101
11111 (192.168.64.191) 192.168.64.110
11111 (192.168.64.223) 192.168.64.111
11111 (192.168.64.255)
Adresses utilisable
192.168.64.000
0001 192.168.64.1
192.168.64.001
0001 192.168.64.33
192.168.64.010
0001 192.168.64.65
192.168.64.011
0001 192.168.64.97
192.168.64.100
0001 192.168.64.129
192.168.64.101
0001 192.168.64.161
192.168.64.110
0001 192.168.64.193
192.168.64.111
0001 192.168.64.225
192.168.64.000
1110 192.168.64.30
192.168.64.001
1110 192.168.64.62
192.168.64.010
1110 192.168.64.96
192.168.64.011
1110 192.168.64.126
192.168.64.100
1110 192.168.64.158
192.168.64.101
1110 192.168.64.190
192.168.64.110
1110 192.168.64.222
192.168.64.111
1110 192.168.64.254
Le sous adressage
• • • • •
Calcule décimal: Déterminer l’octet qui va contenir le numéro du sous réseau.
Déterminer le nombre de bits dans la partie machine N, ce qui nous intéresse c’est 2^N qui est le nombre d’adresses possibles dans le sous-réseau.
Déterminer la première adresse de sous-réseaux (dont la partie sous-réseau doit être égale a 0).
Pour obtenir la prochaine adresse IP de sous-réseau incrémenter de 2^N la première adresse.
Pour obtenir la prochaine adresse augmenter de 2^N la dernière adresse obtenue et ainsi de suite.
Le sous adressage
N=5 , le nombre d’adresses possible= 2^5=32 Adresse réseau initial 192.168.64.0
Masque initial 255.255.255.0
Nouveau Masque 255.255.255.224
Première adresse réseau 192.168.64.0 +0 2eme adresse réseau 3eme adresse réseau 192.168.64.0 + 32 192.168.64.32 + 32 4eme adresse réseau 5eme adresse réseau 6eme adresse réseau 7eme adresse réseau 6eme adresse réseau 192.168.64.64 + 32 192.168.64.96 +32 192.168.64.128 + 32 192.168.64.160 + 32 192.168.64.192 +32 192.168.64.0
192.168.64.16
192.168.64.64
192.168.64.96
192.168.64.128
192.168.64.160
192.168.64.192
192.168.64.224
Le sous adressage
Calcule de l’adresse de diffusion et les adresses utilisables: L’adresse de broadcast = adresse sous-réseau + 2^N –1 Les adresses utilisables = adresse sous-réseau +1 jusqu’à adresse broadcast -1
Le sous adressage
Adresse sous réseau 192.168.64.0
192.168.64.32
192.168.64.64
192.168.64.96
192.168.64.128
Adresse broadcast 192.168.64.15
192.168.64.31
192.168.64.95
192.168.64.127
192.168.64.159
192.168.64.160
192.168.64.191
192.168.64.192
192.168.64.223
192.168.64.224
192.168.64.255
Les adresse valides 192.168.64.1 192.168.64.30
192.168.64.33 192.168.64.62
192.168.64.65 192.168.64.94
192.168.64.49 192.168.64.62
192.168.64.129 192.168.64.158
192.168.64.161 192.168.64.190
192.168.64.193 192.168.64.222
192.168.64.241 192.168.64.254
CIDR
• CIDR = C lassless I nter D omain R outing Le besoin: Au début de l’Internet, Les adresses IP allouées pour les Grands FAI et les Grandes firmes étaient des adresses de classe B.
Au début des années 90 ce types d’adresses commençaient à devenir rares, et les adresses de classe C étaient insuffisantes pour ce type d’organisations.
CIDR
• • • • La solution: L’introduction par l’IETF de la notion de CIDR RFC 1338-1518-1519.
ça consiste a allouer exactement le nombre de classes C nécessaires pour un organisme donnée.
Les adresses de classes C doivent être contiguë, en parle alors de super réseaux .
Par exemple les adresses de classe C qui commencent de 192.168.64.0 jusqu’à 192.168.95.0 forment un seul bloc d’adresses de 32 classe C contiguë.
CIDR
• • • • On note ce bloc par 192.168.64.0/19 car le nombre de bits commun pour toutes les classes d’adresse qui forment ce bloc est 19.
Un réseau de 4 classe C consécutif est souvent appelé « slash 22 ».
Au niveau des routeurs une seule entrée dans la table de routage désigne tout le bloc d’adresses.
On parle alors d’agrégation des adresses, et ça représente l’avantage de soulager la table de routage au niveau des routeurs.
CIDR
• Exemples: Le bloc 192.168.1.0/23 permet d’assigner 2 classes C a l’utilisateur.
192.168.1.0/23 0 23 24 31 1100 0000 10101000 0000 0001 0 000 0000 1111 1111 11111111 1111 1111 1 000 0000 1111 1111 11111111 1111 1111 0 000 0000 192.168.1.0
1111 1111 11111111 1111 1111 1 000 0000 192.168.128.0
CIDR
Le bloc 193.194.64.0/19 regroupe les adresses de 192.168.64.0 jusqu’à 192.168.64.95.
0 8 16 19 24 31 1100 0001 1100 0010 010 0 0000 0000 0000
:
193.194.64.0
1100 0001 1111 1111 111 0 0000 0000 0000
:
255.255.224.0
1100 0001 1100 0010 010 0 0000 0000 0000 : 193.194.64.0
1100 0001 1100 0010 010 0 0001 0000 0000 : 193.194.65.0
1100 0001 1100 0010 010 0 0010 0000 0000 : 193.194.66.0
1100 0001 1100 0010 010 0 0011 0000 0000 : 193.194.67.0
1100 0001 1100 0010 010 0 0100 0000 0000 : 193.194.68.0
1100 0001 1100 0010 010 0 0101 …………… 0000 0000 : 193.194.69.0
1100 0001 1100 0010 010 1 1111 0000 0000 : 193.194.95.0
CIDR:
un exemple pratique
Les réseaux 193.194.64.0 et 193.194.64.128
sont notés seulement avec le NetId, les machines seulement avec le Hostid ; exemple IP(F) = 193.194.64.2
192.168.64.0
.1
.2
.3
.4
Internet
P
.1
A 192.168.64.128
.6
B C .2
.9
192.168.64.0/23 D E F Un site avec deux réseaux physiques utilisant le super adressage de manière à ce que ses deux réseaux soient couverts par une seule adresse IP. La passerelle P accepte tout le trafic destiné au réseau l’adresse destination.
193.194.64.0/23 et sélectionne le sous-réseau en fonction du troisième octet de
• • •
Le routage des datagrammes
Le routage est le processus permettant à un paquet d’être acheminé vers le destinataire lorsque celui-ci n’est pas sur le même réseau physique que l’émetteur. Le chemin parcouru est le résultat du processus de routage qui effectue les choix nécessaires afin d’acheminer le datagramme.
Les routeurs forment une structure coopérative de telle manière qu’un datagramme transite de passerelle en passerelle jusqu’à ce que l’une d’entre elles le délivre à son destinataire.
Le routage
• Un routeur possède deux ou plusieurs connexions réseaux tandis qu’une machine possède généralement qu’une seule connexion.
• Machines et routeurs participent au routage : • les machines doivent déterminer si le datagramme doit être délivré sur le réseau physique sur lequel elles sont connectées (routage direct) ou bien si le datagramme doit être acheminé vers une passerelle; dans ce cas (routage indirect), elle doit identifier la passerelle appropriée.
• les passerelles effectuent le choix de routage vers d’autres passerelles afin d’acheminer le datagramme vers sa destination finale.
M2
Le routage
P2
M
• •
Le routage directe :consiste a remettre les paquets directement à la destination lorsque celle ci est connecté au même réseau physique.
Le routage indirecte: repose sur une table de routage IP, présente sur toute machine et passerelle, indiquant la manière d’atteindre un ensemble de destinations.
La route par défaut
• La route par défaut est l’adresse d’un routeur a qui on va remettre les paquets lorsque aucune entrée dans la table de routage n’indique la destination voulu.
• Utilisé par les machine pour pouvoir accéder a tout les réseaux de l’Internet.
• Utilisé également par les routeurs lorsque ceux ci ne possèdent qu’un seul connexion vers Internet..
La table de routage
•
Les tables de routage IP, renseignent seulement les adresses réseaux et non pas les adresses machines.
•
Typiquement, une table de routage contient des couples (R, P) où R est l’adresse IP d’un réseau destination et P est l’adresse IP de la passerelle correspondant au prochain saut dans le cheminement vers le réseau destinataire
.
•
La passerelle ne connaît pas le chemin complet pour atteindre la destination.
20.0.0.1
30.0.0.5
40.0.0.1
Reseau 10.0.0.0
10.0.0.1
F Reseau 20.0.0.0
20.0.0.2
G Reseau 30.0.0.0
30.0.0.1
H Reseau 40.0.0.0
Pour atteindre les machines du réseau Router vers 10.0.0.0
20.0.0.1
20.0.0.0
direct Table de routage de G 30.0.0.0
direct 40.0.0.0
30.0.0.1