TCP/IPTCP/IP
Historique de Historique de TCP/IP ?TCP/IP ?
1965 1970 1980 1985
ARPANETmis en service par
le département de la défense
américain (DOD)1969
1975
Telnet1972
FTP1973
TCP1974
IP1981
Suite de protocoles TCP/IP1982
DNS1984
Modèle DOD (Modèle DOD (Department Of Department Of DefenseDefense))
Se « confond » avec TCP/IP
Modèle en couches (4 couches)
◦ Application ◦ Transport (protocole TCP) ◦ Internet (protocole IP)◦ Accès réseau (hôte réseau,
Network Interface Layer…)
Basé sur des RFC (Request For Comments) .
Le modèle DOD (TCP/IP)Le modèle DOD (TCP/IP)
7 : Application
6 : Présentation
5 : Session
4 : Transport
3 : Réseau
2 : Liaison
1 : Physique
Application
Transport
Internet
Accès réseau
OSI DoD .
TCP/IP - GénéralitésTCP/IP - Généralités Suite de protocoles « de fait »
IP : Protocole routable
Autorise la connexion de systèmes hétérogènes
Méthode d'accès à Internet .
Définition des « standards » InternetDéfinition des « standards » Internet Les normes TCP/IP sont publiées dans les
RFC (Request for Comments) RFC 791, 792, 1918…
C’est une pile protocolaire◦ARP (Address Resolution Protocol)◦ ICMP (Internet Control Message Protocol)◦ IGMP (Internet Group Management
Protocol)◦TCP (Transmission Control Protocol)◦UDP (User Datagram Protocol)◦ IP (Internet Protocol) .
Suite de protocoles TCP/IPSuite de protocoles TCP/IP
Modèle OSI Modèle TCP/IP Suite de protocoles TCP/IP
7
6
5
4
3
21
ApplicationApplication
CoucheTransport
CoucheTransport
ApplicationApplication
PrésentationPrésentation
SessionSession
TransportTransport
RéseauRéseau
Liaison de données
Liaison de données
PhysiquePhysique
TelnetTelnet FTPFTP SMTPSMTP DNSDNS RIPRIP SNMPSNMP
TCPTCP UDPUDP
IPIPARPICMPIGMP
EthernetEthernet TokenRing
TokenRing
Relais de trames
Relais de trames ATMATM
RéseauRéseau
Liaison de données
Liaison de données
PhysiquePhysique
Adressage IPAdressage IP
Identifier un réseau et un hôteIdentifier un réseau et un hôte
Net Id Host Id
32 Bits
L'adresse IP est composée de 4 octets (32 bits)Elle doit permettre d’identifier :un réseau et un hôte
NotationNotation
L'adresse IP est composée de 4 octets
On note 4 entiers décimaux séparés par des points
10000000 00001010 00000010 00011110
128.10.2.30
3 classes d'adresses 3 classes d'adresses « standard »« standard »
Classe C
w x y z
Classe AIdentificateurde réseau
Identificateur d'hôte
0
Classe B
Identificateur de réseau Identificateur d'hôte
1 0
Identificateur de réseau Identificateurd'hôte
1 1 0
Identificateur réseau et Identificateur réseau et identificateur hôteidentificateur hôte
Identificateur de réseau Identificateur d'hôte
32 Bits
w. x. y. z.
131.107.3.24Exemple :
Classe B
Récapitulatif : Les classes IPRécapitulatif : Les classes IP
0 7 bit s
1
1 1 1 0 I dent ifi ant de gr oupe mult icast
E sapace r éser vé
1 0
1 0
1 1 1 1 0
Adr esse r éseau (N et I d )
Adr esse d' hôt e (H ost I d)
Adr esse r éseau Adr esse d' hôt e
Adr esse r éseau Adr esse d' hôt e
Classe A
Classe B
Classe C
Classe D
Classe E
Résumé des classes d'adressesRésumé des classes d'adresses
NombreNombrede réseauxde réseaux
NombreNombrede réseauxde réseaux
126126
16 38416 384
2 097 1522 097 152
Nombre d'hôtesNombre d'hôtespar réseaupar réseau
Nombre d'hôtesNombre d'hôtespar réseaupar réseau
16 777 21416 777 214
65 53465 534
254254
Classe AClasse AClasse AClasse A
Classe BClasse BClasse BClasse B
Classe CClasse CClasse CClasse C
Plage d'identificateursPlage d'identificateursde réseau de réseau
(premiers octets)(premiers octets)
Plage d'identificateursPlage d'identificateursde réseau de réseau
(premiers octets)(premiers octets)
1 – 1271 – 127
128 – 191128 – 191
192 – 223192 – 223
Directives d'adressageDirectives d'adressage
Le Net Id ne peut pas être 127◦ 127 est réservé aux fonctions de test
Le Host Id ne peut pas être 255 (ou ne comporter que des 1)◦ 255 est une adresse de diffusion
(broadcast)
Le Host Id ne peut pas être 0 (que des 0)◦ 0 signifie « ce réseau uniquement »
Le Host Id doit être unique dans le réseau .
AdressageAdressage IPIP
Quelques exemples typiques
Tout à zéro
0 248 16 31
Host-id
Tout à zéro
Tout à un
Net-id
Tout à un
127
N’importe quoi (souvent 127.0.0.1)
machine courante
machine Host-idsur le réseau courantdiffusion limitée auréseau courant
diffusion dirigée versle réseau Net-id
boucle test .
Qu'est-ce qu'un masque de sous-Qu'est-ce qu'un masque de sous-réseau ?réseau ?
Permet de « séparer » l'identificateur de réseau (Net Id) de l'identificateur d'hôte (Host Id)
Permet de définir si l‘@IP de destination est locale ou distante
Suite contigue de bits à 1◦ 11111111 masque valide,◦ 11111011 masque non valide .
Masques de sous-réseau « par Masques de sous-réseau « par défaut »défaut »
Bits utilisés pour le masque de sous-réseauBits utilisés pour le masque de sous-réseauClasseClassed'adressesd'adresses
NotationNotationdécimaledécimale
NotationNotationdécimaledécimale
Classe A
Classe B
Classe C
Classe A
Classe B
Classe C
11111111 00000000 00000000 00000000
11111111 11111111 00000000 00000000
11111111 11111111 11111111 00000000
11111111 00000000 00000000 00000000
11111111 11111111 00000000 00000000
11111111 11111111 11111111 00000000
255.0.0.0
255.255.0.0
255.255.255.0
255.0.0.0
255.255.0.0
255.255.255.0
Exemple de classe BExemple de classe B
16.200131.107.
0.0255.255.
131.107.
w.x.
Adresse IP
Masque de sous-réseau
Identificateur de réseau
Identificateur d'hôte 16.200
0.0
Déterminer la destination d'un Déterminer la destination d'un paquetpaquet
On fait un AND entre le masque de l’émetteur et les @IP de l‘émetteur et du destinataire
◦ 1 AND 1 = 1◦ Autres combinaisons = 0
Si les résultats du AND (masque source/@IP source et masque source/@IP destination) indiquent un même réseau, la destination est locale (remise directe) sinon le paquet doit être routé (remise indirecte).
10011111 11100000 00000111 10000001
11111111 11111111 00000000 00000000
10011111 11100000 00000111 10000001
11111111 11111111 00000000 00000000
Adresse IP
Masque
Adresse IP
Masque
10011111 11100000 00000000 0000000010011111 11100000 00000000 00000000RésultatRésultat
Sous-réseaux Sous-réseaux IPIP
Sous réseaux : PrincipesSous réseaux : Principes
Dans une classe donnée (A, B, C), on emprunte à la partie normalement réservée aux stations (Host id) pour définir des sous-réseaux
Sous réseaux : PrincipesSous réseaux : Principes
Net-id
Host-id
Net-id
Host-id
Sous réseau
Masque de sous réseau
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
• Le masque :• Joue le rôle de séparateur entre :
• la partie réseau• et la partie machine d’une @ IP.
• Un ET logique va déterminer l’adresse réseau.• Il est obligatoire d’avoir des bits à 1 contigus dans les masques.
Adressage de sous-réseauxAdressage de sous-réseaux
Comment procéder ?◦ Combien de sous-réseau sont requis ?
Un Net Id pour chaque sous-réseau
◦ Combien d'hôtes sont requis par sous-réseau Un Host Id pour chaque nœud (poste,
imprimante réseau…) Un pour chaque interface de routeur…
◦ Il faut alors définir le masque de sous-réseau en fonction des besoins .
Affectation des identificateurs de Affectation des identificateurs de réseauréseau
Routeur
11 22 33
124.x.y.z124.x.y.z 192.121.73.z192.121.73.z 131.107.y.z131.107.y.z
Routeur
Affectation des identificateurs d'hôteAffectation des identificateurs d'hôte
Routeur Routeur
124.0.0.27124.0.0.27
124.0.0.28124.0.0.28
124.0.0.29124.0.0.29
131.107.0.27131.107.0.27
131.107.0.28131.107.0.28
131.107.0.29131.107.0.29
192.121.73.1192.121.73.1
124.0.0.1124.0.0.1 192.121.73.2192.121.73.2
131.107.0.1131.107.0.1
124.x.y.z124.x.y.z 192.121.73.z192.121.73.z 131.107.0.z131.107.0.z
11 22 33
Masque de sous-réseau ?Masque de sous-réseau ?
Identificateur de réseau Identificateur d'hôte
1
Identificateurde
sous-réseau
Nombre de sous-réseaux : 0… 254… plus ?
0
Nombre d'hôtes :65534… 254… moins ?
Exemple en classe B
Utilisation d'un masque finUtilisation d'un masque fin
Exemple : on souhaite
Une adresse de réseau privé 10 (RFC 1918) - classe A
5 sous-réseaux (Administration, Labo, Commerciaux...)
100 stations (nœuds) maximum dans le plus grand de ces sous-réseaux .
Utilisation d'un masque finUtilisation d'un masque fin
5 sous-réseaux – 100 nœuds
◦ Pour identifier un sous-réseau il nous faut :
◦ 510 soit 1012 3 bits (101)
◦ avec 3 bits on peut réellement adresser 23 adresses soit 8
◦ Pour identifier un nœud il nous faut :
◦ 10010 soit 11001002 7 bits (1100100)
◦ avec 7 bits on peut réellement adresser 27-2 nœuds
soit 125 .
Utilisation d'un masque Utilisation d'un masque finfinDeux choix possibles :
32 bits
R é se a u So u s-ré se a u
No e u d
73in e xp lo ité s
32 bits
R é se a u
73 in e xp lo ité s
No e u d
So u s-ré se a u
Solution généralement retenue .
Utilisation d'un masque Utilisation d'un masque finfinQuel masque ?
◦ Avec un réseau de classe A, le masque « normal » devrait être 255.0.0.0
◦ Le nouveau masque doit s’appliquer à la partie « Réseau » et à la partie « Sous-réseau ». Toute cette zone doit donc être remplie avec des bits à 1
◦ La partie « Nœud » doit être remplie de 0
1.1. Figure 24.10 - Le masque de sous-réseau
Réseau SR Hôte 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
255 224 0 0
.
Utilisation d'un masque Utilisation d'un masque finfinAdresses exploitables sur le 1° sous-réseau
1.1. Figure 24.11 – Adresses exploitables sur le 1° sous-réseau
Réseau SR Hôte 1° sous-réseau 0 0 0 0 1 0 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 1 IP du 1° nœud 10 0 0 1
masque 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 224 0 0
0 0 0 0 1 0 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 Adresse réseau 10 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 0 0 0 0 1 Adresse du 1° nœud 0 0 0 1
Utilisation d'un masque Utilisation d'un masque finfinAdresses exploitables sur le 1° sous-réseau1.1. Figure 24.11 – Adresses exploitables sur le 1°
sous-réseau
Réseau SR Hôte 1° sous-réseau 0 0 0 0 1 0 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 1 IP du 1° nœud 10 0 0 1
masque 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 224 0 0
0 0 0 0 1 0 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 Adresse réseau 10 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 0 0 0 0 1 Adresse du 1° nœud 0 0 0 1
Quelle serait l’adresse IP du dernier nœud de ce 1° sous réseau ?
10.31.255.254 .
Utilisation d'un masque Utilisation d'un masque finfinAdresses exploitables sur le 5° sous-réseau
1.1. Figure 24.12 – Adresses exploitables sur le 5° sous-réseau
Réseau SR Hôte 5° sous-réseau 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 IP du 1° nœud 10 128 0 1
masque 1 1 1 1 1 1 1 1 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 1 0 1 0 1 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 10 128 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 0 0 0 1 Adresse du 1° nœud 0 0 0 1
Quelle serait l’adresse IP du dernier nœud de ce 5° sous réseau ?
10.159.255.254 .
Récapitulatif adresses IPRécapitulatif adresses IP
Hôte donné sur un réseau donné Numéro de réseau Numéro d’hôte
La machine courante Tout à 0
Hôte sur le réseau courant Tout à 0 Numéro d’hôte
Diffusion limitée au réseau courant Tout à 1
Diffusion dirigée sur un réseau donné Numéro de réseau Tout à 1
Adresse de test localhost 127 N’importe quoi (souvent 127.0.0.1)
Compléments Protocole IP
Paquet IPPaquet IP
Structure des datagrammes IP
Version : 0100IHL : Internet Header Length ou longueur d’en-tête, en multiples de 32 bits,TOS : spécifie le service – priorité du datagramme, demande de bande passante…TL : longueur du datagramme y compris l’en-tête,FO : Fragment Offset – le 1° bit M (More) indique si le fragment est suivi d’autres, le 2° bit désactive le mécanisme de fragmentation, le 3° est inutilisé,TTL : durée de vie du datagramme « choisie » par l’émetteur. Cette valeur est décrémentée à chaque traversée de routeur et utilisée par le destinataire pour gérer l’arrivée des datagrammes fragmentés,Protocole : type de protocole utilisant les services IP : 1 ICMP, 6 TCP, 17 UDP…
Time to liveTime to live
ttl=128
ttl=127
ttl=0• Le TTL est décrémenté à chaque
traversée de routeur ou de composant actif de niveau 3
• Le datagramme est détruit si le TTL est 0
• La valeur initiale du TTL dépend des couches supérieures.
FragmentationFragmentation
Les réseaux peuvent transporter des datagrammes IP avec une taille minimale et maximale possible selon le réseau (Ethernet, ATM…)
C’est la MTU (Maximum Transfer Unit)
Ce routeur doit fragmenter le paquet car le réseau de destination a une MTU=496
ident 0, taille 1500
ident 1500, taille 1500
ident 1500, offset 0, taille 496
ident 1500, offset 496 taille 496
ident 1500, offset 992, taille 496
ident 1500, offset 1488, taille 12
Champs utilisés pour la Champs utilisés pour la fragmentationfragmentation
identification
Défini par la couche transport (TCP) et utilisé pour ré-assembler les fragments (même id. pour plusieurs fragments d’un même paquet IP)
offset
Position du début de fragment
Drapeaux (champ FO)
Le champ FO (Fragment Offset) est de 3 bits mais seuls 2 bits sont utilisés
M (More) =1 pour tous les fragments du datagramme sauf pour le dernier
D (Don’t fragment) indique qu’il n’y a pas de fragmentation.
FragmentationFragmentation
DéfragmentationDéfragmentation
Sur-Réseaux IPSur-Réseaux IP
Sur-réseaux IPSur-réseaux IPPhénomène inverse des sous-
réseauxSous-réseaux : On emprunte à la partie réservée aux stations (Host id) pour définir des sous-réseaux
On emprunte à la partie réseaux (Net id) pour définir des sur-réseaux. On utilise dans la partie gauche du masque moins de bits que ne le prévoyait le masque « défaut » - on a donc plus de bits dans la partie hôtes (Host id) et donc plus d’adresses
Exemple: réseau de classe Cmasque défaut : 255.255.255.0
2^8 – 2 soit 254 adresses d’hôtes
masque : 255.255.240.0
2^12 - 2 soit 4 094 adresses !
Sur-réseaux IPSur-réseaux IP Intérêt ? Au niveau des routeurs !
Exemple : 256 réseaux de classe C - adresses contiguës (192.168.0.0 à 192.168.255.0)
Il faudrait 256 routes sur un routeur pour identifier tous ces réseaux
Avec les sur-réseaux, une seule route suffit
Il suffit d'adresser un réseau 192.168.0.0 en utilisant le masque 255.255.0.0.
Notation CIDRNotation CIDR
Notation CIDRNotation CIDR CIDR (Classless InterDomain Routing) supprime le
concept des classes IP. On manipule ainsi aussi bien des sur-réseaux que des sous-réseaux !
Exemple : 195.202.192.0 / 20
2^20 adresses de réseaux
2^12 – 2 adresses de nœuds
Souvent considéré comme une « autre » représentation du masque soit ici 255.255.240.0.