Vous êtes sur la page 1sur 10

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Recherche

Inscrivez-vous Plan Langue Franais Allemand Anglais Espagnol Italien Portugais Connexion Identification Identifiant High-Tech Sant-Mdecine Droit-Finances Mot de passe ( oubli ? )

Accueil Forum Astuces Tlcharger Actualits Dossiers Guide d'achat Slection de sites Notices Emploi Entreprise

Rejoignez la communaut Inscrivez-vous Accueil Dossiers Rseaux / Internet Internet (protocoles) Le protocole TCP Imprimer

1 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Le protocole TCP
Jaime Tweet 2 50 0

DEUSESFRITBR Avril 2013 Les caractristiques du protocole TCP Le but de TCP La fonction de multiplexage Le format des donnes sous TCP Fiabilit des transferts Etablissement d'une connexion Mthode de la fentre glissante Fin d'une connexion Plus d'informations A lire aussi: Protocole tcp

Les caractristiques du protocole TCP


TCP (qui signifie Transmission Control Protocol, soit en franais: Protocole de Contrle de Transmission) est un des principaux protocoles de la couche transport du modle TCP/IP. Il permet, au niveau des applications, de grer les donnes en provenance (ou destination) de la couche infrieure du modle (c'est-dire le protocole IP). Lorsque les donnes sont fournies au protocole IP, celui-ci les encapsule dans des datagrammes IP, en fixant le champ protocole 6 (Pour savoir que le protocole en amont est TCP...). TCP est un protocole orient connexion, c'est--dire qu'il permet deux machines qui communiquent de contrler l'tat de la transmission. Les caractristiques principales du protocole TCP sont les suivantes : TCP permet de remettre en ordre les datagrammes en provenance du protocole IP TCP permet de vrifier le flot de donnes afin d'viter une saturation du rseau TCP permet de formater les donnes en segments de longueur variable afin de les "remettre" au protocole IP TCP permet de multiplexer les donnes, c'est--dire de faire circuler simultanment des informations provenant de sources (applications par exemple) distinctes sur une mme ligne TCP permet enfin l'initialisation et la fin d'une communication de manire courtoise

Le but de TCP
Grce au protocole TCP, les applications peuvent communiquer de faon sre (grce au systme d'accuss de rception du protocole TCP), indpendamment des couches infrieures. Cela signifie que les routeurs (qui travaillent dans la couche Internet) ont pour seul rle l'acheminement des donnes sous forme de datagrammes, sans se proccuper du contrle des donnes, car celui-ci est ralis par la couche transport (plus particulirement par le protocole TCP).

2 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Lors d'une communication travers le protocole TCP, les deux machines doivent tablir une connexion. La machine mettrice (celle qui demande la connexion) est appele client, tandis que la machine rceptrice est appele serveur. On dit qu'on est alors dans un environnement Client-Serveur. Les machines dans un tel environnement communiquent en mode connect, c'est--dire que la communication se fait dans les deux sens. Pour permettre le bon droulement de la communication et de tous les contrles qui l'accompagnent, les donnes sont encapsules, c'est--dire qu'on ajoute aux paquets de donnes un en-tte qui va permettre de synchroniser les transmissions et d'assurer leur rception. Une autre particularit de TCP est de pouvoir rguler le dbit des donnes grce sa capacit mettre des messages de taille variable, ces messages sont appels segments.

La fonction de multiplexage
TCP permet d'effectuer une tche importante: le multiplexage/dmultiplexage, c'est--dire faire transiter sur une mme ligne des donnes provenant d'applications diverses ou en d'autres mots mettre en srie des informations arrivant en parallle.

Ces oprations sont ralises grce au concept de ports (ou sockets), c'est--dire un numro associ un type d'application, qui, combin une adresse IP, permet de dterminer de faon unique une application qui tourne sur une machine donne.

Le format des donnes sous TCP


Un segment TCP est constitu comme suit :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Port Source Port destination Numro d'ordre Numro d'accus de rception Dcalagedonnes rserve URG ACK PSH RST SYN FIN Fentre Somme de contrle Pointeur d'urgence Options Remplissage Donnes

3 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Signification des diffrents champs : Port Source (16 bits): Port relatif l'application en cours sur la machine source Port Destination (16 bits): Port relatif l'application en cours sur la machine de destination Numro d'ordre (32 bits): Lorsque le drapeau SYN est 0, le numro d'ordre est celui du premier mot du segment en cours. Lorsque SYN est 1, le numro d'ordre est gal au numro d'ordre initial utilis pour synchroniser les numros de squence (ISN) Numro d'accus de rception (32 bits): Le numro d'accus de rception galement appel numro d'acquittement correspond au numro (d'ordre) du prochain segment attendu, et non le numro du dernier segment reu. Dcalage des donnes (4 bits): il permet de reprer le dbut des donnes dans le paquet. Le dcalage est ici essentiel car le champ d'options est de taille variable Rserv (6 bits): Champ inutilis actuellement mais prvu pour l'avenir Drapeaux (flags) (6x1 bit): Les drapeaux reprsentent des informations supplmentaires : URG: si ce drapeau est 1 le paquet doit tre trait de faon urgente. ACK: si ce drapeau est 1 le paquet est un accus de rception. PSH (PUSH): si ce drapeau est 1, le paquet fonctionne suivant la mthode PUSH. RST: si ce drapeau est 1, la connexion est rinitialise. SYN: Le Flag TCP SYN indique une demande d'tablissement de connexion. FIN: si ce drapeau est 1 la connexion s'interrompt. Fentre (16 bits): Champ permettant de connatre le nombre d'octets que le rcepteur souhaite recevoir sans accus de rception Somme de contrle (Checksum ou CRC): La somme de contrle est ralise en faisant la somme des champs de donnes de l'en-tte, afin de pouvoir vrifier l'intgrit de l'en-tte Pointeur d'urgence (16 bits): Indique le numro d'ordre partir duquel l'information devient urgente Options (Taille variable): Des options diverses Remplissage: On remplit l'espace restant aprs les options avec des zros pour avoir une longueur multiple de 32 bits

Fiabilit des transferts


Le protocole TCP permet d'assurer le transfert des donnes de faon fiable, bien qu'il utilise le protocole IP, qui n'intgre aucun contrle de livraison de datagramme. En ralit, le protocole TCP possde un systme d'accus de rception permettant au client et au serveur de s'assurer de la bonne rception mutuelle des donnes. Lors de l'mission d'un segment, un numro d'ordre (appel aussi numro de squence) est associ. A rception d'un segment de donne, la machine rceptrice va retourner un segment de donne dont le drapeau ACK est 1 (afin de signaler qu'il s'agit d'un accus de rception) accompagn d'un numro d'accus de rception gal au numro d'ordre prcdent.

4 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

De plus, grce une minuterie dclenche ds rception d'un segment au niveau de la machine mettrice, le segment est rexpdi ds que le temps imparti est coul, car dans ce cas la machine mettrice considre que le segment est perdu...

Toutefois, si le segment n'est pas perdu et qu'il arrive tout de mme destination, la machine rceptrice saura grce au numro d'ordre qu'il s'agit d'un doublon et ne conservera que le dernier segment arriv destination...

Etablissement d'une connexion


Etant donn que ce processus de communication, qui se fait grce une mission de donnes et d'un accus de rception, est bas sur un numro d'ordre (appel gnralement numro de squence), il faut que les machines mettrices et rceptrices (client et serveur) connassent le numro d'ordre initial de l'autre machine. L'tablissement de la connexion entre deux applications se fait souvent selon le schma suivant : Les ports TCP doivent tre ouverts L'application sur le serveur est passive, c'est--dire que l'application est l'coute, en attente d'une connexion L'application sur le client fait une requte de connexion sur le serveur dont l'application est en ouverture passive. L'application du client est dite "en ouverture active"

Les deux machines doivent donc synchroniser leurs squences grce un mcanisme communment appel three ways handshake (poigne de main en trois temps), que l'on retrouve aussi lors de la clture de session. Ce dialogue permet d'initier la communication, il se droule en trois temps, comme sa dnomination l'indique : Dans un premier temps la machine mettrice (le client) transmet un segment dont le drapeau SYN est 1 (pour signaler qu'il s'agit d'un segment de synchronisation), avec un numro d'ordre N, que l'on appelle numro d'ordre initial du client Dans un second temps la machine rceptrice (le serveur) reoit le segment initial provenant du client, puis lui envoie un accus de rception, c'est--dire un segment dont le drapeau ACK est 1 et le drapeau SYN est 1 (car il s'agit l encore d'une synchronisation). Ce segment contient le numro d'ordre de cette machine (du serveur) qui est le numro d'ordre initial du client. Le champ le plus important de ce segment est le champ accus de rception qui contient le numro d'ordre initial du

5 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

client, incrment de 1 Enfin, le client transmet au serveur un accus de rception, c'est--dire un segment dont le drapeau ACK est 1, dont le drapeau SYN est zro (il ne s'agit plus d'un segment de synchronisation). Son numro d'ordre est incrment et le numro d'accus de rception reprsente le numro d'ordre initial du serveur incrment de 1

Suite cette squence comportant trois changes les deux machines sont synchronises et la communication peut commencer! Il existe une technique de piratage, appele spoofing IP, permettant de corrompre cette relation d'approbation des fins malicieuses !

Mthode de la fentre glissante


Dans de nombreux cas, il est possible de limiter le nombre d'accuss de rception, afin de dsengorger le rseau, en fixant un nombre de squence au bout duquel un accus de rception est ncessaire. Ce nombre est en fait stock dans le champ fentre de l'en-tte TCP/IP. On appelle effectivement cette mthode "mthode de la fentre glissante" car on dfinit en quelque sorte une fourchette de squences n'ayant pas besoin d'accus de rception, et celle-ci se dplace au fur et mesure que les accuss de rception sont reus.

6 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

De plus, la taille de cette fentre n'est pas fixe. En effet, le serveur peut inclure dans ses accuss de rception en stockant dans le champ fentre la taille de la fentre qui lui semble la plus adapte. Ainsi, lorsque l'accus de rception indique une demande d'augmentation de la fentre, le client va dplacer le bord droit de la fentre.

Par contre, dans le cas d'une diminution, le client ne va pas dplacer le bord droit de la fentre vers la gauche mais attendre que le bord gauche avance (avec l'arrive des accuss de rception).

Fin d'une connexion


Le client peut demander mettre fin une connexion au mme titre que le serveur. La fin de la connexion se fait de la manire suivante : Une des machines envoie un segment avec le drapeau FIN 1, et l'application se met en tat d'attente de fin, c'est--dire qu'elle finit de recevoir le segment en cours et ignore les suivants Aprs rception de ce segment, l'autre machine envoie un accus de rception avec le drapeau FIN 1 et continue d'expdier les segments en cours. Suite cela la machine informe l'application qu'un segment FIN a t reu, puis envoie un segment FIN l'autre machine, ce qui clture la connexion...

Plus d'informations
Pour plus d'informations sur le protocole TCP, le mieux est de se reporter la RFC 793 expliquant de manire dtaille le protocole : RFC 793 traduite en franais RFC 793 originale Annonces Google Hbergement site web 2 Hebergement web 50Go + Emails + Php 1 domaine, logiciel cration site www.007hebergement.com/hebergement Hbergement site web 1.9 Hebergement web 30Go + Emails + Php 1 domaine, logiciel cration site www.hebergeur-discount.com

A voir galement
7 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Protocole tcp Tcp Connection tcp Tcp/ip Articles - Internet (protocoles) TCP / UDP : Quelles diffrences ? Conseils pratiques - Rseaux TCP optimizer (Rsolu) Forum - Windows Bon ports TCP et UDP Emule (Rsolu) Forum - Logiciels Le modle TCP/IP Conseils pratiques - TCP/IP

Communauts d'assistance et de conseils.


Forum Rseau Forum Logiciels Forum Windows
Commentcamarche.net
Jaime 346 462

Das TCP Protokoll TCP protocol Protocolo TCP Internet - Il protocollo TCP O protocolo TCP
Jaime Tweet 2 50 0

Ce document intitul Le protocole TCP issu de CommentCaMarche (www.commentcamarche.net) est mis disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixes par la licence, tant que cette note apparat clairement. ICMPUDP Internet (protocoles) Internet Protocole Adresse IP Le CIDR DNS (Nom de domaine) Port URL Avanc : TCP/IP IP ARP ICMP TCP UDP Routage QoS (Qualit de service) MPLS

8 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

PPP / SLIP HTTP LDAP DHCP SNMP RTCP IPv6 NAT (Translation d'adresse) VLAN POP3, SMTP, IMAP FTP Telnet RFC Voir aussi : World Wide Web Courrier lectronique RSS Podcast Moteur de recherche Firewall Routeur FAQ rseau Internet
Retrouvez-nous sur Facebook Commentcamarche.net
Jaime 346 462 personnes aiment Commentcamarche.net.

Module social Facebook

Dossier la une

Passage au tout numrique : quel cot pour les particuliers ?


Combien cela cote-t-il au total ? Quelles aides apportent l'tat et les acteurs du march pour allger cette charge non choisie ? Tous les dtails sur Commentamarche.net.

Commentcamarche.net recherche des testeurs high tech

9 sur 10

4/26/2013 10:15 AM

Le protocole TCP

http://www.commentcamarche.net/contents/internet/tcp.php3

Testez de nouveaux produits high tech avec Commentcamarche.net, et recevez des cadeaux ou bons d'achat. Je m'inscris
Publi-info

Recevez notre newsletter

Commentcamarche.net
Jaime 346 462 Suivre @commentcamarche 26K abonns

Inscription Conditions gnrales Contact Charte Meilleurs logiciels Partenaires Recrutement Annonceurs CCM Benchmark Group Carte de voeux 2013, Cinma, Dcoration, Expeert, Horoscope, Salon littraire, Programme TV, Cuisine (Recette), Coiffure, Restaurant, Test dbit, Voyage, Hayatouki

10 sur 10

4/26/2013 10:15 AM