Les réseaux sous TCP/IP
Objestifs:
-Architecture TCP/IP
-Niveau Réseau
-Niveau transport
Introduction
• Internet: interconnexion de réseaux physiques indépendants.
• TCP/IP: Combinaison des protocoles qui définissent L’échange de
données a travers l’Internet. Son nom vient de ses deux protocoles les
plus populaires,TCP et IP.
• TCP/IP considère que les stations sont connectés à un grand réseau
virtuel, l’architecture hardware sous-jacente reste caché et obsolète.
Réseau réel Réseau vu par TCP/IP
Introduction
• Succès de Internet (des OS disposant du protocole TCP/IP, invention
duWWW …).
• Les comités de recherche: IETF (Internet Engineering Task Force) et
IRTF (Internet Research Task Force) se chargent de la recherche et de
l’amélioration des protocoles utilisés dans Internet.
RFC ("Request For Comments"): série numérotée de documents
électroniques documentant les aspects techniques d‘Internet(IETF).
Une RFC est caractérisée par:
– Un niveau de maturité traduisant sa position dans le chemin de standardisation.
– Un rang traduisant l’importance du standard.
Architecture TCP/IP en couches
OSI TCP/IP
Architecture TCP/IP: encapsulation
Niveau réseau
Le protocole IP (RFC 791)
• IP « Internet Protocol »:
– Assure un service non fiable, sans connecion (best effort):
– Un transfert de paquets en mode datagramme:
• Pas de détection de perte de paquets.
• Ni reprise sur erreur.
• Deux versions d’IP: IPv4 et IPv6. Limites de la version 4 de l’IP :
– épuisement des adresses,
– explosion des tables de routage,
– absence de types de données,
– variabilité des délais d’acheminement.
Nouvelle version IPv6 (nouvelles fonctionnalités: sécurité, mobilité …)
• Le protocole IP définit l’dressage, le format de datagramme, la fragmentation des
données et le routage.
L’adressage IP
• Sur Internet, on repère les différents ordinateurs connectés grâce à
une adresse IP.
• L’adresse IP est codée sur 32 bits (IPv4) et composée de 2 éléments:
–Le réseau dans lequel évolue la machine (net-id)
–L’adresse de la machine au sein du réseau (host-id)
• @IP sont délivrées par des organismes nationaux (issus de l’organisme
mondial Network Information Center) chargés de gérer le bon
déploiement de ces adresses.
• 2 catégories d’adresses IP :
–Les adresses publiques visibles depuis Internet. Ces adresses doivent être uniques
–Les adresses privées visibles seulement à l’intérieur d’un réseau (plusieurs
réseaux peuvent donc utiliser la même adresse).
• 5 classes d’adresses IP publiques:
L’adressage IP
1 byte 1 byte 1 byte 1 byte
Classe 0 Net-id Host-id De [Link] à [Link]
A 126 réseaux -16,7 millions de
machines/réseau
Classe 1 0 Net-id Host-id De [Link] à [Link]
B 16 384 réseaux - 65534
machines/réseau
Classe 1 1 0 Net-id Host-id De [Link] à [Link]
C Adresser 254 machines
Classe 1 1 1 0 Adresse de groupe: multicast De [Link] à [Link]
D
Classe 1 1 1 1 0 Réservé pour un usage futur De [Link] à [Link]
E Classe non utilisée à ce jour
L’adressage IP
• Adresses spéciales:
Net-id Host-id Signification
127 quelconque Adresse de loopback
Tous à Host-id Identifie une hôte dans un réseau
‘0’
Net-id Tous à ‘1’ Broadcast dans le réseau indiqué Net-id
Net-id Tous à ‘0’ Adresse du réseau
Tous à ‘0’ Identifie l’hôte qui émet le datagramme
Tous à ‘1’ Broadcast dans chaque réseau
• Autres adresse réservés pour utilisation dans les réseaux locaux: adresses non routables (ne sont
pas routés sur Internet).
Classe Masque Plages d’adresses réserves
A [Link] [[Link] , [Link]]
B [Link] [[Link] , [Link] ]
C [Link] [[Link], [Link]]
L’adressage IP
• Si tous les hôtes d’un réseau sont sur le même sous-réseau, le réseau
serait très rapidement saturé Division d’un réseau en sous réseaux
séparés physiquement par des routeurs.
• Les réseaux de classe A, B ou C peuvent être divisés en sous-réseaux et
le masque de sous réseau (netmask) permet de les déterminer.
Le masque de sous-réseau doit être identique pour tous les sous-
réseaux dérivés d’un même numéro de réseau.
• Netmask: mettre tous les bits de net-id à 1 et ceux du host-id à 0.
• Netmask de réseau par défaut:
L’adressage IP
• Comment savoir dans une adresse IP quelle est la partie numéro de
réseau et numéro d’hôte? La partie correspondante aux 1 du
masque de sous-réseau (en binaire) correspond au numéro de réseau
et la partie correspondante au 0 correspond au numéro d’hôte.
Exemple: Soit l’adresse IP [Link]:
• avec un masque de [Link]:
@IP: 11000000.10101000.00000010.00110101
Masque: 11111111.11111111.11111111.00000000
hôte 53 du sous réseau [Link], On peut avoir 254 hôtes différents sur [Link]
• avec un masque de sous-réseau [Link]:
@IP: 11000000.10101000.00000010.00110101
Masque: 11111111.11111111.11111111.11100000
La partie numéro de réseau devient donc [Link] et le numéro d’hôte est 21.
Ainsi, avec le masque [Link], on peut diviser le réseau [Link] en 8
(=23) sous-réseaux différents.
L’adressage IP
• Un sous réseau est caractérisé par un masque qui réalise un ET
logique avec l ’@ machine.
• Exemple 1:
Obtenir l’identificateur de réseau et l’identificateur du host de l’adresse
IP suivante [Link]: (classe C)
L’adressage IP
• Le sous réseau (subnet) utilise les bits de poids fort de la partie hôte
de l'adresse IP, pour désigner un réseau. Le nombre de bits employés
est laissé à l'initiative de l'administrateur.
• Exemple:
• [Link] : @IP de classe C, avec id sous réseau sur 2 bits:
– 22 = 4 sous réseaux possibles
– Reste 6 bits pour les hôtes soient 64 adresses:
• 4 sous-réseaux Snet_id sur 2 bits Masque: [Link]
• 1er sous-réseau
@ sous-réseau : [Link]
@ hôte de192.44.77.1 à [Link]
@ diffusion [Link]
• 2ème sous-réseau
@ sous-réseau: [Link]
@ hôte de [Link] à [Link]
@ diffusion :192.44.77. 127
• 3ème sous-réseau
@ sous-réseau: [Link]
@ hôte de [Link] à [Link]
@ diffusion :192.44.77. 191
• 4ème sous-réseau
@ sous-réseau : [Link]
@ hôte de [Link] à [Link]
@ diffusion :192.44.77. 255
L’adressage IP
• Exemple:
• Soit l’adresse [Link], que sera l’adresse de broadcast du sous
réseau si le netmask est [Link] ?
L’adressage IP
@Subnet: [Link] , mask: [Link]
[Link]
H1
[Link] R1
[Link]
@Subnet: [Link] , mask: [Link]
[Link]
R2 H2 [Link]
[Link] [Link]
H3
@Subnet: [Link] , mask: [Link]
Table de routage du routeur R1:
Destination masque Routeur suivant interface
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
Format d’un datagramme IPv4
PAD
Format d’un datagramme IPv4
• Version (4 bits) : indique le format de l'entête. Le format décrit est celui de la
version 4.
• Longueur de l'entête (4 bits) : en nombre de mots de 32 bits. Des bits de bourrage
sont rajoutés à l'entête pour que sa longueur soit multiple de 32.
• Type de service (8 bits) : ce champ est utile pour le routage. Il indique la qualité de
service requise (RFC1349).
• Bits 0-2 : priorité,
• Bit 3 : s'il est à 1 les routeurs doivent minimiser le délai de transmission (ex.éviter les
liaisons satellite),
• Bit 4 : s'il est à 1 les routeurs doivent maximiser le débit,
• Bit 5 : s'il est à 1 les routeurs doivent suivre un chemin fiable,
• Bit 6 : s'il est à 1 les routeurs doivent minimiser les coûts,
• Bit 7 à 0.
• Longueur totale du datagramme (16 bits) : exprimé en octets (<65535).
• Identificateur commun aux fragments (16 bits) : tous les fragments d'un même
datagramme portent un même numéro.
Format d’un datagramme IPv4
• Drapeau (3 bits) : le premier bit est toujours à 0. Le deuxième bit indique,
s'il est à 0, que le datagramme peut être fragmenté par un routeur. Le
troisième bit indique s'il est à 0 que c'est le dernier fragment d'un
datagramme, par défaut la valeur est 000.
• Déplacement fragment (13 bits) : indique la position du premier octet d'un
fragment dans le datagramme initial avant fragmentation. Ce déplacement
s'exprime en multiple de 8 octets.
• Durée de vie (8 bits) : indique le temps maximum pendant lequel le
datagramme peut rester dans le réseau. A la valeur 0 le datagramme est
détruit. Chaque routeur par lequel passe un datagramme réduit la durée de
vie, d'une unité ou plus, proportionnellement à la durée passée dans le
routeur.
• Protocole : indique le protocole suivant dont le paquet se trouve dans la
partie donnée (ip : 0, icmp : 1, tcp : 6, udp : 17, voir RFC 1340).
Format d’un datagramme IPv4
• checksum (16 bits) :le checksum est la somme en
complément à 1 des mots de 16 bits de l'en-tête. Il est
recalculé par chaque routeur puisque le champ durée
vie est modifié.
• Adresses IP source, destination.
• option (longueur variable), ce champ est utile pour :
– gérer des problèmes de sécurité et de confidentialité,
– fournir aux routeurs des informations de routage par
exemple un chemin désigné par une suite d'adresses,
– connaître le chemin suivi par un datagramme,
• bourrage pour que l’entête soit multiple de 32 bits.
Fragmentation
• Les datagrammes se transmettent à travers les réseaux physiques.
• Tous les réseaux physique imposent des limitations à la longueur
maximale de données (MTU, Maximum Transfer Unit):
– Si long_datagramme > MTU FRAGMENTATION nécessaire
– Si long_datagramme ≤ MTU FRAGMENTATION inutile
• Les routeurs sont responsable de la fragmentation.
• La source n’intervient pas dans le processus de fragmentation.
• Le destinataire rassemble les fragments du datagramme.
• Les champs de l’entête qui interviennent:
– Identification
– Deplacement du fragment (offset)
– Flags
Fragmentation
• ID: identification du datagramme (16bits)
– Fixer par l’émetteur pour identifier le datagramme : le même pour des fragments d’un
datagramme d’origine
– Utilisé pour sécuriser le réassemblage des fragments
• • Flags: Drapeaux pour la fragmentation (3bits)
– 001: il y a encore des fragments (MF)
– 000: dernier fragment
– 01X: ne pas fragmenter (DF)
• FO: Fragment Offset, place du fragment (13bits)
– Indique la position du premier octet dans le datagramme total (non fragmenté)
– S’il y a fragmentation, indique le déplacement du fragment dans le datagramme
d’origine (en bloc de 8 octets)
– 1er fragment = 0
– Le destinataire récupère tout les fragments et si un est perdu tout le datagramme est
rejeté
Fragmentation
•Exemple: Envoi d’un datagramme de 1420 bytes de A à B:
1 3
2
3
Routage IP
• On distingue deux niveaux de routage:
Routage interne
concerne les paquets relatifs à des communications à l’intérieur d’un
même domaine AS (Autonomous System):(IGP: Interior Gateway
Protocol)
Exemple: RIP, IGRP, OSPF
Routage externe
Entre différents domaines AS (EGP: Exterior Gateway Protocol)
Exemple: EGP, BGP
Routage IP
• Routage RIP (RFC 1058) : Routing Information Protocol
– est le plus utilisé dans l'environnement TCP/IP.
– routage distribué basé sur l'échange d'informations entre routeurs adjacents (toutes les
30 secondes).
– Chaque routeur a une connaissance de ses voisins
– utilisé sur des réseaux de petites tailles. Une route ne doit pas dépasser 15 noeuds
intermédiaires.
– Utilise le protocole UDP pour transporter ses données (port 520)
• Routage OSPF (RFC 1247) : Open Shortest Path First
– plus complexe que le routage RIP
– adapté aux réseaux de grandes tailles.
– chaque routeur a une connaissance complète de l'état des liens du réseau
– Utilise le protocole IP pour encapsuler ses données (avec le numéro de protocole 89)
N. Ben Azzouna Réseaux locaux - ENSI 26
Le protocole ICMP (Internet Control
Message protocol, RFC 792)
• permet de rendre compte de certaines anomalies de fonctionnement.
• Messages ICMP sont encapsulés dans des paquets IP (type = 0,
protocole = 1)
– issus de routeurs ou de stations.
• Un message ICMP est soit une demande d'information soit une
indication d'erreur.
– comporte au niveau des deux premiers octets un champ type et
un champ code.
• Exemple:TTL expiré
– type = 11
– Code = 0 : died in transit ; Code = 1 : died during reassembly
Le protocole ARP (address resolution
protocol, RFC 826)
• Si une station émet sur un autre réseau que le sien, elle envoie le
datagramme vers le routeur.
• Si une station émet sur son réseau, elle doit trouver l’adresse physique
(MAC) pour acheminer le datagramme
– ARP consiste à envoyer en diffusion (niveau MAC et IP) sur le réseau un
datagramme d’interrogation à toutes les autres stations (Qui a cette adresse IP ?)
– La station qui se reconnaît renvoie un datagramme d’identification avec son adresse
MAC
– Le datagramme à envoyer est alors encapsulé dans la trame avec les bonnes adresses
MAC (destination et source)
– Pour éviter de recommencer à chaque trame, les stations mémorisent dans un «
cache MAC » l’information.
– Les entrées dans le cache sont généralement temporisées et rafraîchies.
Le protocole RARP (Reverse ARP)
• Le protocole RARP ("Reverse ARP“) permet de déduire l’adresse IP à
partir de l’adresse MAC. Ce protocole est utile pour les stations sans
disque qui, au moment de l’amorçage, ne connaissent pas leurs
adresses IP. A cet effet une requête RARP est diffusée et est traitée par
un serveur bien déterminé.
Niveau Transport
Notion de port
• Au niveau 3, l’adresse IP permet de désigner de manière unique une
machine située n’importe où sur le réseau
• Une fois la machine trouvée, il faut pouvoir déterminer l’application
qui doit traiter les données cette désignation se fait par le numéro
de port
• Chaque Port identifie une application (un service)
• Les ports de 0 à 1023 sont réservés à des services bien connus
(RFC1700) Port service
• Les numéros supérieur à 1024 peuvent être 15 Netstat
23 Telnet
attribués à n’importe quelle application.
53 DNS
21 FTP
80 HTTP
UDP (User Datagram Protocol, RFC 768)
• fournit un service non fiable, en mode non connecté.
• Identifié par le champ proto = 17 dans le paquet IP
• Envoi de données sans contrôle d’erreur, ni de flux, ni
retransmission…
– Protocole de transport non fiable.
– N’ajoute rien au service d’IP.
• Protocole à faible coût : peu d’overhead
• Pour applications locales (NFS, DHCP, …)
• Pour applications temps-réel (voix sur IP, vidéo sur IP, ..)
TCP(Transmission Control Protocol, RFC
793)
• Transport de données fiable: résout tous les problèmes de
perte de paquets dans les niveaux inférieurs
• Protocole orienté connexion
• Identifié par le champ proto = 6 dans le paquet IP
• Détection des erreurs
• Correction d’erreur par retransmission des trames erronées
• Séquencèrent Réordonner les paquets si IP ne délivre pas
les paquets dans l’ordre
• Contrôle de flux par fenêtre d’anticipation dynamique (taille
de la fenêtre variable)
• Contrôle d’erreur par Checksum
Structure d’un segment TCP
Segment TCP
• Le champ numéro de séquence: indique le
numéro du premier octet transmis dans le segment.
• Le champ acquittement: contient le numéro de la séquence du prochain
octet attendu par l’émetteur de ce message
• Le champ déplacement (4bits): indique la taille en mots de 32 bits de
l’entête
• Les bits de contrôle :
URG (urgent) la valeur du champ pointeur message urgent est significative
ACK (acknowledgment) la valeur du champ acquittement peut être prise en compte
PSH (push) Les données reçue doivent être immédiatement transmise à la couche
supérieure
RST (reset) réinitialisation de la connexion à cause d’une erreur Irrécupérable
SYN (synchronize) ouverture de connexion (synchroniser les numéros de séquences)
FIN (finish) fermeture de connexion
Segment TCP
• Le champ fenêtre: Nombres d’octets que l’émetteur peut sans
recevoir l’acquittement (espace libre dans le buffer de réception)
– Ce champ permet de gérer le contrôle de flux
• Le champ checksum:
– Fonction sur l’entête et les données
Contrôle d’erreur.
S’il y a erreur, TCP fait comme si le segment avait été perdu, il ne
l’acquitte pas
• Le champ pointeur message urgent:
– Ce champ indique les octet qui doivent être traités en priorité
• Le champ option: ce champ permet de définir, par exemple, la
taille maximale d’un segment
Etablissement d’une connexion TCP
• L’établissement d’une
connexion TCP s’effectue
en trois temps (three hand
check)
• SYN=1 ; ACK = 0
connection_request
• SYN=1 ; ACK = 1
connection_accepted
Terminaison d’une connexion TCP
• la clôture d’une connexion
TCP s’effectue en quatre
temps.
• FIN=1 ; ACK = 0
disconnection_request
• FIN=1 ; ACK = 1
disconnection_accepted
Désignation symbolique
Les serveurs de noms
DNS (Domain Name Server)
• Un ordinateur connecté à Internet possède une adresse unique, son
numéro IP ;
– Pour s'adresser à cet ordinateur, il faudrait utiliser son numéro IP.
– On préfère lui attribuer un nom sumbolique plus facile à retenir:
[Link].
• Connectés au réseau Internet, des ordinateurs disposent de tables
établissant la correspondance entre une @IP et un nom : ce sont des
serveurs DNS.
• Il s'agit d'un service transparent :
– Non initié explicitement par l'utilisateur,
– Le résultat ne produit rien de particulièrement visible sur son écran
RL : Réseaux sous TCP/IP 41
Les serveurs de noms
DNS
• Un client adresse au serveur une requête DNS à laquelle il
répondra
• Protocole fondamental d'Internet, DNS utilise une base de
données répartie : les correspondances nom_machine -
@IP sont enregistrées dans différents serveurs.
• La requête d'un client est soumise à un premier serveur ;
– si elle ne peut être traitée par le premier serveur contacté, elle est
transmise par ce serveur à un autre serveur
RL : Réseaux sous TCP/IP 42
Translation d’adresses
Translation d’adresses
• La pénurie d’adresses IP est à l’origine du besoin de translation des
adresses:
– Les adresses publiques visibles depuis Internet. Ces adresses doivent être
uniques.
– 3 blocs d’adresses IP privées dont l’usage est libre à l’intérieur d’un réseau
local (plusieurs réseaux peuvent donc utiliser la même adresse).
– Mais, les machines ayant des adresses IP privées ne peuvent pas communiquer
directement avec l'Internet public.
NAT
• La fonction NAT (Network Adress Resolution) d’un routeur:
• Il s'agit de réaliser, au niveau de la passerelle, une translation
(traduction) à la volée des paquets provenant du réseau interne vers le
réseau externe.
• Ainsi, lorsqu'une machine du réseau effectue une requête vers
Internet, la passerelle effectue la requête à sa place, reçoit la réponse,
puis la transmet à la machine ayant fait la demande.
Les routeurs modernes ont la fonction de translation d’adresses
incluse dans leurs fonctionnalités standards.
Pour la machine A: Pour la machine B:
– La machine A s’adresse directement à la – La machine B voit une connexion arriver en
machine [Link] en utilisant son provenance de “ NAT ”.
routeur par défaut. – La machine B n’a pas connaissance de la
– L’utilisateur de la machine A “ voit ” la machine A, elle dialogue avec le routeur NAT
connexion soit la forme : selon :
{tcp, IP A, port A, IP B, port B} {tcp, IP B, port B, IP NAT, port A}
Proxy
• Le serveur proxy: un mandataire pour une application donnée:
– Il concentre le trafic réseau via une seule machine.
la NAT est souvent indispensable pour qu'un proxy fonctionne, vu qu'il est
censé être un intermédiaire.
• Un proxy travaille au niveau 7 du modèle OSI,
il est capable d'interpréter et de modifier les informations du protocole sur
lequel il travaille.
il peut vérifier le contenu de ce qui est reçu de la part du serveur et en
interdire ou modifier le contenu selon la politique choisie.
L'utilisation d'un proxy pour des protocoles critiques est donc souvent utile si
on veut avoir une bonne vision de ce qui se passe.
• Exemple: SQUID pour HTTP
.
NAT vs Proxy
• NAT ou proxy?
un proxy est dédié à un protocole (une application) particulier. Ainsi,
il est capable d'interpréter le trafic et notamment de cacher les
informations (diminue ainsi le trafic et augmente la bande passante).
On peut aussi mettre en place des règles d’accès à certaines partie
d'un site, à certaines fonctionnalités, etc. On a donc un bon contrôle
de ce qui transite sur le réseau, et on sait quels protocoles peuvent
circuler.
Contrairement au proxy, la NAT est indépendante des applications
utilisées. On peut donc faire passer la plupart des protocoles que l'ont
veut.
Remarque: Beaucoup de proxys sont en fait des multi-proxys qui sont
capables de comprendre la plupart des applications courantes.
EXEMPLE
Dialogue entre deux machines
Dialogue entre deux machines du même réseau
Niveau application
Serveur serverX
Un utilisateur à l’aide de
son navigateur (Internet
Explorer) demande
d’accéder au serveur
serverX pour y déposer
un article…
Il entre dans la barre
d’adresse l’adresse du
site auquel il veut
accéder.
[Link]
Dialogue entre deux machines du même réseau
Niveau TCP
Serveur serverX •L’application envoie des informations à la
couche transport (TCP):
Get [Link]
•Si nécessaire, TCP fractionne les
informations en de multiples paquets.
•La couche transport (TCP) ajoute ses
informations :
Le port de destination: 80 pour identifier
l’application de destination (protocole http
serveur Web)
Le port source: 10351 pour identifier
l’application source
En tête TCP Données
applicatives
Port source Port destination Autres Get [Link]
10351 80 infos TCP
La couche transport transmet alors l’ensemble à la couche internet (IP)
Dialogue entre deux machines du même réseau
Niveau IP
Serveur serverX Constatant que le serveur serverX est
sur le même réseau (172.31) – obtenu
grâce au masque de sous réseau- la
couche IP va devoir obtenir l’adresse
MAC du serveur serverX.
Pour cela, elle va lancer en broadcast
une requête ARP.
Autrement dit, elle va envoyer une
requête demandant à tous les
ordinateurs : quelle est l’adresse MAC
de la machine ayant l’adresse IP
[Link] ?
Seule la machine dont l’adresse IP est
[Link] va répondre:
Adresse MAC 00:10:DC:0A:B6:E9
Dialogue entre deux machines du même réseau
Niveau IP
Serveur serverX • La couche IP dispose à présent de
toutes les informations nécessaires.
• Elle va ajouter ses propres
informations au datagramme TCP et
transmettre le tout à la couche hôte-
réseau
En tête IP En tête TCP Données
applicatives
IP source IP Autres Port source Port Autres Get
[Link]
destination infos IP 10351 destination infos
[Link] [Link] 80 TCP
Dialogue entre deux machines du même réseau
Niveau Hôte-réseau
Serveur serverX • La couche hôte-réseau reçoit le
datagramme IP et va ajouter ses
propres informations.
• Le paquet d’information peut-
être expédié sur le câble (ou
autre média)
En tête Ethernet En tête IP En tête TCP Données
applicatives
Adresse MAC Adresse Mac Autres info IP source IP Autres Port source Port Autre Get
source Destination Ethernet destination infos IP 10351 destination s [Link]
00:10:DC:0A:B6: [Link] [Link] 80 infos
E9 TCP
Dialogue entre deux machines du même réseau
Serveur serverX
La carte réseau expédie alors la
trame Ethernet sur le réseau
La trame arrive au switch.
Il examine l’adresse MAC de
destination et cherche dans sa table si
cette adresse est connectée à l’un de
ses ports.
Si c’est le cas, il retransmet la trame
sur le bon port.
Dialogue entre deux machines du même réseau
Serveur serverX Sur le serveur serverX:
• L’interface réseau transmet la
trame à la couche Hôte-réseau.
• Si l’adresse MAC correspond, les
informations sont envoyées à la
couche IP. Dans le cas contraire, la
trame est ignorée.
• La couche IP reçoit le datagramme
et lit l’entête IP. Si l’adresse IP est
celle de l’une des interfaces de la
machine, les informations sont
envoyées à la couche supérieure.
• La couche TCP va réassembler les
morceaux, puis transmettre le
message à la couche application.
• Grâce au port de destination, c’est
le serveur WEB qui va prendre en
charge le message
Dialogue entre deux machines de 2 réseaux différents
Niveau application
Un utilisateur à l’aide de son
Serveur serverY navigateur (Internet Explorer)
demande à accéder au serveur
serverY. pour y déposer un
article…...
Il entre dans la barre d’adresse
l’adresse du site auquel il veut
accéder.
[Link]
[Link]/[Link]
Dialogue entre deux machines de 2 réseaux différents
Niveau TCP
• L’application envoie des
informations à la couche transport
Serveur serverY (TCP):
•Get http:// [Link]
• Éventuellement, TCP fractionne
les informations en de multiples
paquets.
•La couche transport (TCP) ajoute
ses informations :
Le port de destination:
[Link]/[Link] 80 pour http
Le port source: 10351
En tête TCP Données
applicatives
Port source Port Autres Get [Link]
10351 destination infos TCP
80
Dialogue entre deux machines de 2 réseaux différents
Niveau IP
•Constatant que le serveur serverY. n’est pas sur le
même réseau– (obtenu grâce au masque de sous
Serveur serverY réseau)- la couche IP va devoir obtenir l’adresse
MAC du routeur qui sert de passerelle avec les
autres réseaux.
•Pour cela, elle va lancer en broadcast une requête
ARP.
Autrement dit, elle va envoyer une requête
demandant à tous les ordinateurs : quelle est
l’adresse MAC de la machine ayant l’adresse IP
[Link] ?
[Link]/[Link]
Seule la machine dont l’adresse IP est
[Link] va répondre:
Adresse MAC 00:10:DC:FF:B6:E8
Dialogue entre deux machines de 2 réseaux différents
Niveau IP
• La couche IP dispose à présent de
toutes les informations nécessaires.
Serveur serverY
• Elle va ajouter ses propres
informations au datagramme TCP et
transmettre le tout à la couche hôte-
réseau
[Link]/[Link]
En tête IP En tête TCP Données
applicatives
IP source IP destination Autres Port Port Autres Get
[Link]
infos IP source destination infos
[Link] [Link] 10351 80 TCP
Dialogue entre deux machines de 2 réseaux différents
Niveau Hôte-réseau
• La couche hôte-réseau reçoit le
datagramme IP et va ajouter ses
Serveur serverY propres informations.
•Le paquet d’information peut-être
expédié sur le câble (ou autre)
•La carte réseau expédie alors la
trame Ethernet sur le réseau
•La trame arrive au switch
•Il examine l’adresse MAC de
destination et cherche dans sa table si
cette adresse est connectée à l’un de
ses ports. Si c’est le cas, il retransmet
la trame sur le bon port.
[Link]/[Link]
En tête Ethernet En tête IP En tête TCP Données
applicatives
Adresse MAC Adresse Mac Autres info IP source IP destination Autres Port source Port Autre Get
Source Destination Ethernet infos 10351 destination s [Link]
00:10:DC:E1:F6 00:10:DC:FF:B6 [Link] [Link] IP 80 infos .72
:BC :E8 TCP
Dialogue entre deux machines de 2 réseaux différents
Niveau Routeur
En tête Ethernet En tête IP En tête TCP Données
applicatives
Adresse MAC Adresse Mac Autres info IP source IP destination Autres Port source Port Autre Get
Source Destination Ethernet infos 10351 destination s [Link]
00:10:DC:E1:F6 00:10:DC:FF:B6 [Link] [Link] IP 80 infos 5.72
:BC :E8 TCP
Le routeur va mettre en correspondance l’adresse IP source ainsi que le port source d’origine avec son adresse IP externe et un port qu’il aura choisi.
Adresse IP source >Adresse IP externe du routeur
[Link] > [Link]
Port source > Port source routeur
10351 >36253
Ces informations seront gardées dans une table
Il remplacera l’IP source par sa propre adresse externe. Il remplace également le port source
En tête IP En tête TCP Données
applicatives
IP source IP destination Autres Port source Port Autre Get
infos destinatio s [Link]
[Link] [Link] IP 36253 n infos 72
80 TCP
Dialogue entre deux machines de 2 réseaux différents
Niveau Routeur
En tête IP En tête TCP Données
applicatives
IP source IP destination Autres Port source Port Autre Blablabla
infos destinatio s
[Link] [Link] IP 36253 n infos
80 TCP
Adresse IP source >Adresse IP externe du routeur
[Link] > [Link]
Port source > Port source routeur
10351 >36253
Lorsqu’il recevra le paquet réponse, le routeur consultera la table et remplacera l’IP destination par l’IP source de machine cible ([Link]). Idem
pour le port.
En tête Ethernet En tête IP En tête TCP Données
applicatives
Adresse MAC Adresse Mac Autres IP source IP destination Autres Port source Port Autre Blablabla
Source Destination info infos destination s
Ethernet [Link] [Link] IP 10351 80 infos
TCP
• Les adresses suivantes peuvent-elles être attribuées à un hôte ?
• [Link]
NON 256 > 255
• [Link]
oui
• [Link]
NON 231 : classe D
• [Link]
NON adresse réseau
• [Link]
OUI
• [Link]
NON adresse de diffusion
• Comment interpréter les adresses suivantes:
• [Link] Un hôte inconnu
• [Link] Tous les hôtes
• [Link] L'hôte 52.1 du réseau [Link]
• [Link] Hôte 3 du réseau [Link]
• [Link] c’est le réseau [Link]
• [Link] Tous les hôtes du réseau [Link]
• [Link] @ d’un hôte non pas de diffusion
• [Link] @ de diffusion
• [Link] @ d’un hôte du réseau [Link]