AccueilđŸ‡«đŸ‡·Chercher

IPv4

IPv4 (Internet Protocol version 4) est la premiÚre version d'Internet Protocol (IP) à avoir été largement déployée, et qui forme encore en 2023 la base de la majorité des communications sur Internet, par rapport à l'IPv6. Elle est décrite dans la RFC 791[1] de , remplaçant la RFC 760[2], définie en .

Chaque interface d'un hĂŽte IPv4 se voit attribuer une ou plusieurs adresses IP codĂ©es sur 32 bits. Au maximum 4 294 967 296, soit 232 adresses peuvent donc ĂȘtre attribuĂ©es simultanĂ©ment en thĂ©orie (en pratique, un certain nombre ne sont pas utilisables).

L'épuisement des adresses IPv4 a conduit au développement d'une nouvelle version d'IP, IPv6, et à la transition d'IPv4 vers IPv6 afin d'adopter cette nouvelle version. Le manque d'adresse IPv4 est dans un premier temps contourné grùce à l'utilisation de techniques de traduction d'adresses (NAT) ainsi que par l'adoption du systÚme CIDR. Le nombre d'adresses IP Version 4 publiques est arrivé officiellement à saturation le .

Représentation d'une adresse IPv4

Une adresse IPv4 est reprĂ©sentĂ©e sous la forme de quatre nombres entiers sĂ©parĂ©s par des points comme 193.43.55.67. Chacun des nombres reprĂ©sente un octet. La plage d'attribution s'Ă©tend de 0.0.0.0 Ă  255.255.255.255, sachant qu'il existe des contraintes empĂȘchant l'utilisation de certaines adresses (rĂ©servĂ©e, masque, broadcast, etc.)

Adresse IPv4

En-tĂȘte IPv4

En-tĂȘte IPv4
01234567 891011121314151617 181920 2122232425262728293031
Version d'IP Longueur de l'en-tĂȘte Type de service Longueur totale
Identification Indicateur Fragment offset
DurĂ©e de vie Protocole Somme de contrĂŽle de l'en-tĂȘte
Adresse source
Adresse destination
Option(s) + remplissage

Version (4 bits) :

Version d'IP utilisée. Ici, 4.

Longueur de l'en-tĂȘte ou IHL (pour Internet Header Length) (4 bits) :

Ce champ indique en binaire sur 4 bits la longueur totale de l'en-tĂȘte et cette longueur est donnĂ©e, non pas en bit, ni en octet, mais en mots de 32 bits (=4 octets). La longueur donnĂ©e correspondrait au nombre de lignes du schĂ©ma prĂ©cĂ©dent. La valeur est comprise entre 5 et 15, car il y a 20 octets minimum et on ne peut dĂ©passer 40 octets d'option. La longueur maximale d'un en-tĂȘte est donc de 15*4 octets soit 60 octets.

Type de service ou ToS (pour Type of Service) (8 bits) :

Ce champ permet de distinguer diffĂ©rentes qualitĂ©s de service diffĂ©renciant la maniĂšre dont les paquets sont traitĂ©s. ComposĂ© de 3 bits de prioritĂ© (donc 8 niveaux) et trois indicateurs permettant de diffĂ©rencier le dĂ©bit, le dĂ©lai ou la fiabilitĂ©.
Il se décline au fil des RFC. Au départ (RFC 791[1]) nous avions :
Bits 0-2:  Precedence.
Bit    3:  0 = Normal Delay, 1 = Low Delay.
Bits   4:  0 = Normal Throughput, 1 = High Throughput.
Bits   5:  0 = Normal Reliability, 1 = High Reliability.
Bit  6-7:  Reserved for Future Use.
Le champ DSCP généralise ensuite le champ TOS (RFC 2474[3], ) :
Bits 0-5:   DSCP (Differentiated Services Code Point)
Bits 6-7:   CU (Currently Unused)
En (RFC 3168[4]) le champ CU est utilisé pour la gestion des congestions[5] :
Bits 0-5:   DSCP (Differentiated Services Code Point)
Bits 6-7:   ECN (Explicit Congestion Notification)

Longueur totale en octets ou Total Length (16 bits) :

Nombre total d'octets du datagramme, en-tĂȘte IP comprise. Donc, la valeur maximale est 216−1 octets.

Identification (16 bits) :

NumĂ©ro permettant d'identifier les fragments d'un mĂȘme paquet.

Indicateurs ou Flags (3 bits) :

  1. (Premier bit [bit de poids fort]) actuellement inutilisé.
  2. (DeuxiĂšme bit) DF (Don't Fragment) : lorsque ce bit est positionnĂ© Ă  1, il indique que le paquet ne peut pas ĂȘtre fragmentĂ©. Si le routeur ne peut acheminer ce paquet (taille du paquet supĂ©rieure Ă  la MTU), il est alors rejetĂ©.
  3. (TroisiÚme bit) MF (More Fragments) : quand ce bit est positionné à 1, on sait que ce paquet est un fragment de données et que d'autres doivent suivre. Quand il est à 0, soit le fragment est le dernier (et dans ce cas le fragment offset est différent de 0), soit le paquet n'a pas été fragmenté.

Fragment offset (13 bits) :

Position du fragment par rapport au paquet de dĂ©part, en nombre de mots de 8 octets. Lorsque la valeur indiquĂ©e est 0, il s'agit du premier fragment.

DurĂ©e de vie ou TTL (pour Time To Live) (8 bits) :

Initialisé par l'émetteur, ce champ est décrémenté d'une unité généralement à chaque saut de routeur. Quand TTL = 0, le paquet est abandonné et un message ICMP est envoyé à l'émetteur pour information.

Protocole (8 bits) :

Numéro du protocole au-dessus de la couche réseau : TCP = 6, UDP = 17, ICMP = 1.
Ce champ permet d'identifier le protocole utilisé par le niveau supérieur :

Somme de contrĂŽle de l'en-tĂȘte ou Header Checksum (16 bits) :

ComplĂ©ment Ă  un de la somme complĂ©mentĂ©e Ă  un de tout le contenu de l'en-tĂȘte afin de dĂ©tecter les erreurs de transfert. Si la somme de contrĂŽle est invalide, le paquet est abandonnĂ© sans message d'erreur.

Adresse source (32 bits) :

Adresse IP de l'Ă©metteur sur 32 bits.

Adresse destination (32 bits) :

Adresse IP du rĂ©cepteur 32 bits.

Options (0 Ă  40 octets par mots de 4 octets) :

Facultatif.

Remplissage ou Padding :

Champ de taille variable comprise entre 0 et 7 bits. Il permet de combler le champ option afin d'obtenir un en-tĂȘte IP multiple de 32 bits. La valeur des bits de bourrage est 0.

Fragmentation

Sur une interface dĂ©terminĂ©e, une trame a une taille maximale, appelĂ©e Maximum Transmission Unit ou MTU. Lorsque la longueur du paquet (datagramme) est supĂ©rieure, l'information sera fragmentĂ©e. La taille maximum supportĂ©e par IPv4 (car codĂ©e sur 16 bits) est de 65 535 octets mais les rĂ©seaux ne prennent gĂ©nĂ©ralement pas en charge de trames de telles longueurs, en gĂ©nĂ©ral on trouve des MTU de l'ordre de 1 500 octets (Ethernet).

Notes et références

Voir aussi

Articles connexes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.