Vous êtes sur la page 1sur 9

SPECIALITE Développeur WEB et multimédia Leçon : N°8

MATIERE : Réseaux

TITRE Protocole TCP et IP

A la fin de la séance le stagiaire sera capable de :


- Connaitre le protocole TCP et le protocole IP
- Décrire les entêtes TCP , IPv4 et IPv6 correctement.

Plan de leçon :
I. Transmission Control Protocol .................................................................................................................................. 2
1) Exemple de transmission de données – TCP......................................................................................................... 2
2) Format de l’en-tête TCP ........................................................................................................................................ 2
3) La fiabilité de la transmission................................................................................................................................ 4
II. Le protocole IP : définition ........................................................................................................................................ 5
II.1. Le protocole IP : historique .................................................................................................................................... 5
II.2. Le rôle du protocole IP ........................................................................................................................................... 5
II.3. IPv4 et IPv6 : les différences entre ces deux numéros de version ......................................................................... 6
L’en-tête IP d’un datagramme : .................................................................................................................................... 6
1. Structure de l’en-tête IPv4 ............................................................................................................................ 6
2. Structure de l’en-tête IPv6 ............................................................................................................................ 7
Comment le protocole IP règle la fragmentation ................................................................................................... 8
Le protocole TCP/IP :......................................................................................................................................................... 9
I. Transmission Control Protocol
TCP (Transmission Control Protocol) est une norme qui définit comment établir et maintenir une
conversation réseau via laquelle les programmes d’application peuvent échanger des données.
Le protocole TCP fonctionne avec le protocole Internet (IP), qui définit la manière dont les ordinateurs se
transmettent des paquets de données.
Les deux, TCP et IP constituent les règles de base définissant Internet.
TCP est un protocole orienté connexion, ce qui signifie qu’une connexion est établie et maintenue jusqu’à
ce que les programmes de chaque extrémité aient fini d’échanger des messages.
 Il détermine comment diviser les données de la couche application en segment pouvant être
acheminés par les réseaux, ainsi il envoie les segments à la couche réseau
 Gère le contrôle de flux et il est conçu pour assurer une transmission de données sans erreur
 Gère la retransmission des paquets perdus ou tronqués. ainsi que l’accusé de réception(ACK) de
tous les paquets qui arrivent.

Dans le modèle de communication OSI (Open Systems Interconnection), TCP couvre des parties de la
couche 4(couche transport), et des parties de la couche 5(couche session).
Par exemple, lorsqu’un serveur Web envoie un fichier HTML à un client, il utilise le protocole HTTP pour le
faire. Le protocole HTTP de la couche application demande au protocole TCP de la couche transport de
configurer la connexion et d’envoyer le fichier. La pile TCP divise le fichier en paquets, les numérote, puis
les transmet individuellement à la couche réseau pour la livraison. Bien que chaque paquet a les
mêmes adresses IP source et destination, les paquets peuvent être envoyés sur plusieurs routes. La
couche transport de l’ordinateur client attend que tous les paquets soient arrivés, puis reconnaît ceux
qu’elle reçoit et demande la retransmission si elle ne le fait pas (en fonction des numéros de paquets
manquants), puis les assemble dans un fichier et envoie le fichier à la couche application de destinataire.

1) Exemple de transmission de données – TCP

Les segments TCP sont encapsulés dans le datagramme IP.

Segment TCP = en-tête TCP + bloc de données

2) Format de l’en-tête TCP


Port source (16 bits): Il identifie le port de l’application émettrice.
Le port de destination (16 bits): Il identifie le port de l’application de réception.
Numéro de séquence (32 bits):
 TCP attribue un numéro de séquence unique à chaque octet de données contenues dans le segment TCP.
 Ce champ contient le numéro de séquence du premier octet de données.
Numéro d’acquittement (32 bits):

 Il contient le numéro de séquence de l’octet que le destinataire s’attend à recevoir ensuite de l’expéditeur.
 C’est toujours le numéro de séquence du dernier octet reçu + 1.
Longueur de l’en-tête (Hlen – 4 bits) : Il contient la longueur de l’en-tête TCP.

Bits Réservés (6 bits) : Ces bits ne sont pas utilisés.

Bit URG : Le bit URG est utilisé pour traiter certaines données de manière urgente.

Bit ACK : Le bit ACK indique si le champ du numéro d’accusé de réception est valide ou non.

Bit PSH : Le bit PSH permet d’envoyer immédiatement l’ensemble du buffer à l’application réceptrice.

Le code PSH est l'abréviation de «pousser » Un paquet de données circulant sur un réseau peut être
stocké brièvement à un certain nombre de points , soit parce que le réseau est encombré , et le dispositif
de réseau est en attente de l'espace, soit parce que le paquet arrive hors de la séquence , et le récepteur
est en attente pour le paquet manquant . Le drapeau PSH dit tout envoyer sur le paquet sans mise en
mémoire tampon , ou d'arrêter de mémoire tampon. Ceci a deux utilisations possibles . La première
consiste à supprimer toutes tampon du système pour ce paquet particulier, ou pour indiquer au récepteur
d'arrêter tampon toutes les données qu'elle a reçues à ce jour , y compris le paquet PSH . Cela a pour effet
de dire le récepteur qu'il a reçu toutes les données pour le moment et devrait cesser tampon et commencer
le traitement .

Bit RST : Le bit RST est utilisé pour réinitialiser la connexion TCP.

Bit SYN : Le bit SYN est utilisé pour synchroniser les numéros de séquence.
Bit FIN : Le bit FIN est utilisé pour mettre fin à la connexion TCP.

La taille de la fenêtre(16 bits) : Il indique la quantité de données (en octets) que l’expéditeur peut recevoir
sans accusé de réception, et il est utilisée pour le contrôle de flux.

Checksum(16 bits) : Ce champ est utilisé pour le contrôle des erreurs. Il vérifie l’intégrité des données
dans la charge TCP. L’expéditeur ajoute la somme de contrôle CRC au champ de Checksum avant
d’envoyer les données.

Pointeur urgent (16 bits) :


Il indique combien de données du segment en cours comptant pour le premier octet de données sont
urgentes. Ce champ est considéré comme valide et évalué uniquement si le bit URG est défini sur 1.

Options :
Le champ options est utilisé à plusieurs fins. La taille du champ varie de 0 à 40 octets.

Padding : Pour s’assurer que l’en-tête est toujours un multiple de 32 bits, il est parfois nécessaire d’ajouter
du padding (bourrage)

3) La fiabilité de la transmission
La fiabilité de la transmission est assuré par un mécanisme baptisé « Positive Acknowledgement
with Re-transmission PAR »
L’émetteur démarre une alarme (timeout) à chaque envoi de segment :
Si alarme expire avant l’arrivée d’un acquittement
Alors retransmission des données du segment
Utilisation de la technique appelée piggybacking « porter sur le dos »
La communication TCP sera considérée comme fiable car elle est basée sur :

 La numérotation des octets (Sequence Number)


 La détection des erreurs (checksum)
 La détection des pertes (timeout et acquittements successifs)
 La récupération des pertes (par retransmission)

II. Le protocole IP : définition


Internet Protocol (IP) est un protocole sans connexion qui revêt (couvre) une importance pour l’échange de
messages dans les réseaux informatiques, en tant qu’élément central de la famille des protocoles Internet
(un ensemble d’environ 500 protocoles réseau)

IP est responsable de l’adressage et de la fragmentation des paquets de données dans les réseaux
numériques. Avec le protocole de transport TCP (Transmission Control Protocol), l’IP constitue la
base de l’Internet. Pour envoyer un paquet de l’expéditeur au destinataire, le protocole IP définit
une structure de paquets qui résume les informations envoyées.

Le protocole détermine la manière dont les informations sur la source et la destination des données sont
décrites et sépare ces informations des données informatives dans l’en-tête IP.

Ce type de format de paquet est également connu sous le nom de datagramme IP.

II.1. Le protocole IP : historique


En 1974, l‘Institute of Electrical and Electronics Engineers (IEEE) a publié un document de
recherche des informaticiens américains Robert Kahn et Vint Cerf qui décrivait un modèle de
protocole pour une connexion mutuelle de paquets de réseau. En plus du protocole de
contrôle de transmission TCP, le composant principal de ce modèle était le protocole IP, qui, en
plus d’une couche d’abstraction spéciale, permettait la communication à travers différents
réseaux physiques. Au cours des années suivantes, de plus en plus de réseaux de recherche
ont été consolidés sur la base de cette combinaison de protocoles « TCP/IP », qui a finalement
été spécifiée en 1981 comme standard dans le RFC 791.

II.2. Le rôle du protocole IP


Le protocole IP pour "Internet Protocol" permet aux ordinateurs reliés à Internet de dialoguer entre eux.
Plus précisément, l’Internet Protocol se charge du routage de chaque paquet vers sa
destination (c’est-à-dire de l’acheminement des données sur le réseau).

Comme pour un courrier postal, sur Internet, chaque message (c’est-à-dire chaque paquet de données)
s’accompagne de différentes informations :
- l'adresse de l'expéditeur
- l'adresse du destinataire
- des données supplémentaires.
Pour que les paquets parviennent à leur destination, une adresse IP unique est attribuée à
chaque Ordinateur connecté au réseau.
Cette Adresse IP se présente sous la forme de 4 nombres (entre 0 et 255) séparés par des points

Les paquets de données transitent par des dizaines d'ordinateurs jusqu'à atteindre leur destinataire.
Le protocole TCP/IP fait travailler ensemble IP et TCP pour que les paquets IP ne se perdent pas ou
n’arrivent pas en double exemplaire et pour s’assurer que le paquet est bien arrivé à destination.

II.3. IPv4 et IPv6 : les différences entre ces deux numéros de version
IPv4 est la première version officielle d’Internet Protocol, alors que le numéro de version est
uniquement dû au fait que la quatrième version du protocole TCP est utilisée.
IPv6 est le successeur direct d’IPv4, le développement du protocole IPv5 a été interrompu
prématurément pour des raisons économiques.

L’en-tête IP d’un datagramme :


Le protocole IP garantit que chaque paquet de données soit précédé des propriétés structurelles
importantes dans l’en-tête et assigné au protocole de transport (TCP). La zone des données d’en-tête a
été fondamentalement révisée pour la version 6, c’est pourquoi il est important de spécifier et différencier
les en-têtes l’IPv4 et IPv6.

1. Structure de l’en-tête IPv4


Les données encapsulées sont appelées charge utile IP. L'en-tête IP contient toutes les
informations nécessaires pour livrer le paquet à l'autre extrémité.

L'en-tête IP comprend de nombreuses informations pertinentes, y compris le numéro de version, qui, dans
ce contexte, est 4. D'autres détails sont les suivants -
 Version - Numéro de version du protocole Internet utilisé (par exemple IPv4).
 DIH - Longueur d'en-tête Internet; Longueur de l'en-tête IP entier.
 DSCP - Point de code de services différenciés; c'est le type de service.
 ECN - Notification explicite de congestion; Il contient des informations sur la congestion constatée
sur l'itinéraire.
 Longueur totale - Longueur de l'ensemble du paquet IP (y compris l'en-tête IP et la charge utile IP).
 Identification - Si le paquet IP est fragmenté pendant la transmission, tous les fragments
contiennent le même numéro d'identification. pour identifier le paquet IP d'origine auquel ils
appartiennent.
 Indicateurs - Comme requis par les ressources du réseau, si le paquet IP est trop volumineux à
gérer, ces «indicateurs» indiquent s'ils peuvent être fragmentés ou non. Dans cet indicateur à 3 bits,
le MSB est toujours mis à «0».
 Décalage du fragment – fragment offset Ce décalage indique la position exacte du fragment dans
le paquet IP d'origine.
 Time to Live - Pour éviter la boucle dans le réseau, chaque paquet est envoyé avec une certaine
valeur TTL, qui indique au réseau combien de routeurs (sauts) ce paquet peut traverser. À chaque
saut, sa valeur est décrémentée de un et lorsque la valeur atteint zéro, le paquet est rejeté ( pour
s’assurer qu’un paquet ne migre pas d’un nœud à un autre dans le réseau indéfiniment, il est envoyé avec
une durée de vie maximale (Time to Live))
 Protocole - Indique à la couche réseau de l'hôte de destination, à quel protocole ce paquet
appartient, c'est-à-dire le protocole de niveau suivant. Par exemple, le numéro de protocole d'ICMP
est 1, TCP est 6 et UDP est 17.
 Header Checksum - Ce champ est utilisé pour conserver la valeur de la somme de contrôle de l'en-
tête entier qui est ensuite utilisée pour vérifier si le paquet est reçu sans erreur.
 Adresse source - Adresse 32 bits de l'expéditeur (ou de la source) du paquet.
 Adresse de destination - Adresse 32 bits du récepteur (ou de la destination) du paquet.
 Options - Ce champ facultatif est utilisé si la valeur du DIH est supérieure à 5. Ces options peuvent
contenir des valeurs pour des options telles que Sécurité, Itinéraire d'enregistrement, Horodatage,
etc.

2. Structure de l’en-tête IPv6

La liste suivante explique les informations d’en-tête supplémentaires du protocole IP amélioré :

 Taille des données utilisateur : IPv6 transmet une valeur pour la taille des données utilisateur
transportées, y compris l’en-tête de l’extension (16 bits au total). Dans la version précédente, cette valeur
devait être séparément calculée en prenant la longueur totale moins la longueur de la ligne d‘en-tête.
 En-tête suivant : le champ « Next Header » de 8 bits est l’équivalent de la spécification du protocole dans
IPv4 et en tant que tel a repris sa fonction qui est l’affectation du protocole de transport souhaité.

 Nombre de sauts : le Hop Limit (8 Bit) définit le nombre maximum de stations intermédiaires qu’un
paquet peut traverser avant d‘être rejeté. Comme pour TTL dans IPv4, la valeur est réduite d’au moins 1
pour chaque nœud.

 Adresse de la source et adresse de destination : la majorité des en-têtes Ipv6 contiennent les adresses
de l’expéditeur et du destinataire. Comme mentionnée précédemment, ceux-ci ont une longueur de 128
bits (quatre fois la longueur des adresses IPv4). Il existe aussi des différences significatives dans la
notation standard. La version la plus récente d’Internet Protocol utilise des nombres hexadécimaux et les
divise en 8 blocs de 16 bits chacun. Les deux points sont utilisés au lieu des simples points pour la
séparation. Une adresse IPv6 complète ressemble à ceci : 2001:0db8:85a3:08d3:1319:8a2e:0370:7344.

IPv6 versus IPv4

Un simple coup d’œil permet déjà de constater que le format d’adresse de la sixième version d’IP est très
différent de la version précédente d’IPv4 :

 Adresse IPv4 : 203.0.120.195

 Adresse IPv6 : 2001:0620:0000:0000:0211:24FF:FE80:C12C

Alors que le protocole Internet de la version 4 est codé sur 32 bits et s’écrit sous forme décimale, son
successeur IPv6 permet des adresses de 128 bits, qui sont basées sur une écriture hexadécimale pour
des raisons de lisibilité. Cette comparaison permet de comprendre nettement que le problème central de
IPv4 a été résolu : avec 128 bits, il est maintenant possible de générer bien plus d’adresses IP
uniques qu’avec 32 bits.

 Espace d‘adressage de IPv4: 32 bits = 232 adresses ≈ 4,3 milliards d‘adresses

 Espace d‘adressage de IPv6: 128 bits = 2128 adresses ≈ 340 sextillions d’adresses

Les chiffres permettent de constater clairement l‘énorme écart entre les deux protocoles : alors que
l’espace d’adressage de IPv4, avec près de 4,3 milliards d’IP, est loin de permettre de fournir une adresse
unique à chaque individu sur terre, un système à 128 bits pourrait en théorie permettre d’attribuer plusieurs
adresses à chaque grain de sable de notre planète ! L’introduction d’IPv6 permet ainsi d’investir pour le
futur. En effet, des tendances comme celles décrites par l’internet des objets (« Internet of Things »,
IoT) suggèrent que le nombre d’appareils connectés à Internet et qui doivent être clairement identifiés,
augmentera de manière significative dans les prochaines années.

Comment le protocole IP règle la fragmentation


Chaque fois qu’un paquet de données doit être envoyé via TCP/IP, la taille globale est automatiquement
vérifiée. Si cette valeur est supérieure à l’unité de transmission maximale (MTU pour maximum
transmission unit) de l’interface réseau respective, l’information est fragmentée, c’est-à-dire divisée en
blocs de données plus petits. Cette tâche est exécutée soit par l’hôte expéditeur soit par un routeur
intermédiaire. Par défaut, le paquet est composé par le destinataire, qui accède aux informations de
fragmentation stockées dans l’en-tête IP. Dans des cas exceptionnels, le réassemblage peut aussi être
pris en charge par un pare-feu, si ce dernier est configuré en conséquence.

Etant donné que l’IPv6 ne prévoit généralement plus de fragmentation et ne permet plus la fragmentation
du routeur, le paquet IP doit être de taille adéquate avant d’être envoyé. Si un routeur atteint un
datagramme IPv6 qui dépasse l’unité de transmission maximale, il le rejette et en informe l’expéditeur
sous la forme d’un message ICMPv6 de type 2 « Packet Too Big » (le paquet est trop volumineux).
L’application d’envoi de données peut maintenant créer des paquets plus petits et non fragmentés ou bien
initier la fragmentation. Ensuite, l’en-tête d’extension approprié est ajouté au paquet IP, ainsi l’hôte cible
peut reconstituer les fragments individuels après réception.

IPv6 est la toute dernière version de protocole Internet. Elle vise à dépasser les limites principales d’IPv4.
En effet, la version précédente menaçait d’aboutir rapidement à une pénurie (insuffisance) d’adresses IPv4
et gênait en violant les principes de bout en bout avec sa stricte séparation des IP publiques et privées.

La grande problématique de l’ancien protocole IPv4 résidait dans le manque de sécurité des trois piliers
suivants : la confidentialité, l’authenticité et l’intégrité. Ce protocole déplorait certains manques, tels
que l’identification de la source de données ou encore la sécurisation de leur transport. La famille de
protocole IPv6 a été développée pour y remédier.

Le protocole TCP/IP :
Le protocole TCP/IP permet donc à des logiciels situés sur des ordinateurs différents de communiquer
de façon fiable.
Le protocole TCP/IP a de multiples utilisations.
Les navigateurs Internet et les serveurs s’en servent pour se connecter à Internet, ce qui permet
d’envoyer et de recevoir des pages HTML, des images, des fichiers et toutes sortes d'autres données.

Ce protocole est aussi utilisé par les logiciels de courrier électronique pour envoyer et recevoir des e-mails.

Vous aimerez peut-être aussi