Sie sind auf Seite 1von 43

Exploration 1 - Couche transport OSI - Page 1 sur 43

Chapitre 4 : Couche transport OSI



Les rseaux de donnes et Internet tayent le rseau humain en permettant aux individus de
communiquer de faon transparente et fiable, aussi bien lchelon local quau niveau international.
Nous pouvons, sur un mme priphrique, utiliser des services aussi divers que les messageries
lectroniques, le Web ou les messageries instantanes pour envoyer des messages et recevoir des
informations. Grce aux applications de clients de messagerie, de navigateurs Internet et de clients
de messagerie instantane, nous sommes en mesure denvoyer et de recevoir des messages et des
informations par le biais dordinateurs et de rseaux.
Dans chacun de ces types dapplications, les donnes sont empaquetes, transportes et livres au
dmon du serveur appropri ou lapplication voulue sur le priphrique de destination. Le
processus dcrit dans la couche transport OSI accepte des donnes provenant de la couche
application et les prpare pour les adresser la couche rseau. La couche transport est globalement
responsable du transfert de bout en bout des donnes dapplication.
Ce chapitre est consacr ltude du rle de la couche transport dans le processus dencapsulation
des donnes dapplication en vue de leur utilisation par la couche rseau. La couche transport
remplit galement dautres fonctions :
elle permet de nombreuses applications de communiquer sur le rseau au mme moment,
sur un mme priphrique ;
elle vrifie, si cela est ncessaire, que toutes les donnes sont reues de faon fiable et dans
lordre par lapplication voulue ;
elle utilise des mcanismes de gestion des erreurs.
Objectifs pdagogiques
lissue de ce chapitre, vous serez en mesure deffectuer les tches suivantes :
Expliquer lutilit de la couche transport
Dfinir le rle de la couche transport en matire de transfert, de bout en bout, de donnes
entre applications
Dcrire le rle de deux protocoles utiliss par la couche transport TCP/IP, savoir les
protocoles TCP et UDP
Citer les principales fonctions de la couche transport, y compris en matire de fiabilit,
dadressage de ports et de segmentation
Expliquer comment les protocoles TCP et UDD grent, chacun, des fonctions cls
Reconnatre les situations o lutilisation des protocoles TCP ou UDP simpose et fournir des
exemples dapplications utilisant chacun de ces protocoles
Exploration 1 - Couche transport OSI - Page 2 sur 43

1/ Rle de la couche transport
1/ objectifs de la couche transport
La couche transport segmente les donnes et se charge du contrle ncessaire au rassemblage de
ces blocs de donnes dans les divers flux de communication. Pour ce faire, il doit :
effectuer un suivi des communications individuelles entre les applications rsidant
sur les htes source et de destination ;
segmenter les donnes et grer chaque bloc individuel ;
rassembler les segments en flux de donnes dapplication ;
identifier les diffrentes applications.
Suivi des conversations individuelles
Tout hte peut hberger plusieurs applications qui communiquent sur le rseau. Chacune de ces
applications communique avec une ou plusieurs applications hberges sur des htes distants. Il
incombe la couche transport de grer les nombreux flux de communication entre ces applications.
Segmentation des donnes
Chaque application cre un flux de donnes envoyer vers une application distante ; ces donnes
doivent donc tre prpares pour tre expdies sur le support sous forme de blocs faciles grer.
Les protocoles de la couche transport dcrivent les services qui segmentent les donnes provenant
de la couche application. Il sagit notamment de lencapsulation devant sappliquer chaque bloc de
Exploration 1 - Couche transport OSI - Page 3 sur 43
donnes. Des en-ttes doivent tre ajouts chaque bloc de donnes dapplication au niveau de la
couche transport pour indiquer quelle communication il est associ.
Reconstitution des segments
Lhte recevant les blocs de donnes peut les diriger vers lapplication approprie. Il faut en outre
que ces blocs de donnes individuels puissent tre rassembls dans un flux de donnes complet
utile la couche application. Les protocoles intervenant au niveau de la couche transport grent la
faon dont les informations den-tte de la couche transport servent rassembler les blocs de
donnes en flux qui seront transmis la couche application.
Identification des applications
Pour que les flux de donnes atteignent les applications auxquelles ils sont destins, la couche
transport doit identifier lapplication cible. Pour cela, la couche transport affecte un identificateur
chaque application. Les protocoles TCP/IP appellent cet identificateur un numro de port. Chaque
processus logiciel ayant besoin daccder au rseau se voit affecter un numro de port unique sur
son hte. Ce numro de port est inclus dans len-tte de la couche transport afin de prciser quelle
application ce bloc de donnes est associ.
La couche transport fait le lien entre la couche application et la couche infrieure responsable de la
transmission rseau. Cette couche accepte les donnes provenant de plusieurs conversations et les
fait descendre vers les couches infrieures sous forme de blocs faciles grer pouvant au final faire
lobjet dun multiplexage sur le support.
Les applications nont pas besoin de connatre les dtails du fonctionnement du rseau utilis. Les
applications gnrent des donnes qui sont envoyes dune application une autre sans se soucier
du type de lhte de destination, du type de support que les donnes doivent emprunter, du chemin
suivi par ces donnes, de l'encombrement dune liaison ni de la taille du rseau.

En outre, les couches infrieures ignorent que plusieurs applications envoient des donnes sur le
rseau. Leur responsabilit se limite livrer les donnes au priphrique appropri. La couche
transport trie ensuite ces blocs avant de les acheminer vers lapplication voulue.
Variabilit des besoins en donnes
Parce que des applications diffrentes ont des besoins diffrents, il existe plusieurs protocoles pour
la couche transport. Dans le cas de certaines applications, les segments doivent arriver dans un ordre
bien prcis pour tre traits correctement. Pour dautres applications, il faut que toutes les donnes
soient arrives pour quil soit possible de traiter nimporte laquelle dentre elles. Dautres
applications, enfin, tolrent la perte dune certaine quantit de donnes lors de la transmission sur le
rseau.
Exploration 1 - Couche transport OSI - Page 4 sur 43
Les rseaux convergents actuels permettent des applications dont les besoins en matire de
transport sont trs diffrents de communiquer sur le mme rseau. Les diffrents protocoles
sappliquant la couche transport reposent sur des rgles varies qui permettent aux priphriques
de satisfaire ces diffrents besoins en donnes.
Certains protocoles noffrent que des fonctions de base permettant de livrer efficacement les blocs
de donnes entre les applications appropries. Ces types de protocoles sont particulirement utiles
pour les applications dont les donnes sont sensibles aux retards.
Dautres protocoles de la couche transport dcrivent des processus offrant des fonctions
supplmentaires, comme la remise fiable des donnes entre applications. Si ces fonctions
supplmentaires assurent des communications plus robustes entre applications au niveau de la
couche transport, elles entranent une surcharge supplmentaire et sont plus gourmandes en
ressources rseau.



Sparation de communications multiples
Reprsentez-vous un ordinateur connect un rseau qui envoie et reoit simultanment des
courriels et messages instantans, affiche des sites Web et passe un appel tlphonique par voix sur
IP. Chacune de ces applications envoie des donnes sur le rseau et en reoit simultanment.
Pourtant, les donnes de lappel tlphonique ne sont pas orientes vers le navigateur Web et le
texte des messages instantans ne finit pas dans un courriel.
Exploration 1 - Couche transport OSI - Page 5 sur 43
De plus, les informations contenues dans un courriel ou une page Web doivent avoir t
intgralement reues et affiches pour prsenter un intrt pour lutilisateur. On considre certains
retards comme acceptables pour veiller ce que lensemble des informations soit reu et prsent.
Dans le cas dune conversation tlphonique, labsence de petits bocs peut par contre tre
considre comme acceptable. Il est en effet possible de dduire le contenu audio manquant partir
du contexte de la conversation ou de demander lautre interlocuteur de rpter ce quil vient de
dire. Ceci est jug prfrable aux retards que provoqueraient la gestion et le renvoi des segments
manquants par le rseau. Dans notre exemple, cest lutilisateur, et non le rseau, qui gre la
rexpdition ou la reconstitution des informations manquantes.

Comme nous vous lavons expliqu dans un chapitre prcdent, envoyer certains types de donnes
(par exemple une vido) sur un rseau sous forme dun flux de communication complet risque
dempcher dautres communications davoir lieu en mme temps. Ceci rend galement difficile la
reprise sur erreur et la retransmission des donnes endommages.
Fractionner les donnes en blocs plus petits et envoyer ceux-ci de la source vers la destination
permet plusieurs communications diffrentes dtre entrelaces (de faire lobjet dun multiplexage)
sur le mme rseau.
La segmentation des donnes, conformment aux protocoles de la couche transport, permet
denvoyer et de recevoir des donnes tout en excutant plusieurs applications simultanment sur un
ordinateur. En labsence de segmentation, une seule application, par exemple la lecture vido en
continu, pourrait recevoir des donnes. Il serait impossible de recevoir des courriels, de parler sur
une messagerie instantane ou dafficher des pages Web tout en visualisant la vido.
Exploration 1 - Couche transport OSI - Page 6 sur 43
Au niveau de la couche transport, chaque ensemble de blocs transitant entre une application source
et une application de destination est appel une conversation.
Pour identifier chaque segment de donnes, la couche transport ajoute un en-tte contenant des
donnes binaires chaque bloc. Cet en-tte contient des champs de bits. Ce sont les valeurs
contenues dans ces champs qui permettent aux diffrents protocoles de la couche transport
dexcuter des fonctions diverses

2/ Contrle des conversions
Tous les protocoles de la couche transport ont des fonctions essentielles communes :
Segmentation et reconstitution. La plupart des rseaux limitent la quantit de donnes pouvant tre
incluses dans une mme unit de donnes de protocole. La couche transport divise les donnes
dapplication en blocs de donnes dune taille adquate. Une fois ces blocs parvenus destination, la
couche transport rassemble les donnes avant de les envoyer vers lapplication ou le service de
destination.
Multiplexage de conversations. De nombreux services ou applications peuvent sexcuter sur
chaque hte sur le rseau. Une adresse, appele port, est affecte chacun de ces services ou
applications afin que la couche transport puisse dterminer quel service ou application les donnes
se rapportent.
Exploration 1 - Couche transport OSI - Page 7 sur 43

Dans le cadre des fonctions essentielles que sont la segmentation et la reconstitution des donnes, la
couche transport fournit, en plus des informations contenues dans les en-ttes :
des conversations avec connexion ;
un acheminement fiable ;
une reconstitution ordonne des donnes ;
un contrle du flux.

tablissement dune session
La couche transport est en mesure dorienter la connexion en crant des sessions entre les
applications. Ces connexions prparent les applications communiquer entre elles avant le transfert
des donnes. Dans ces sessions, il est possible de grer avec prcision les donnes dune
communication entre deux applications.
Acheminement fiable
Bien des circonstances peuvent entraner la corruption ou la perte dun bloc de donnes lors de son
transfert sur le rseau. La couche transport veille ce que tous les blocs atteignent leur destination
en demandant au priphrique source de retransmettre les donnes qui ont pu se perdre.
Livraison dans un ordre dfini
Exploration 1 - Couche transport OSI - Page 8 sur 43
tant donn que les rseaux fournissent une multitude de routes dont les dlais de transmission
varient, il se peut que les donnes arrivent dans le dsordre. En numrotant et en ordonnant les
segments, la couche transport sassure que ces segments sont rassembls dans le bon ordre.
Contrle du flux
Les htes du rseau disposent de ressources limites, par exemple en ce qui concerne la mmoire ou
la bande passante. Quand la couche transport dtermine que ces ressources sont surexploites,
certains protocoles peuvent demander lapplication qui envoie les donnes den rduire le flux.
Ceci seffectue au niveau de la couche transport en rgulant la quantit de donnes que la source
transmet sous forme de groupe. Le contrle du flux contribue prvenir la perte de segments sur le
rseau et rendre inutiles les retransmissions.

3/ prise en charge des communications fiables
Souvenez-vous que la fonction premire de la couche transport est de grer les donnes
dapplication des conversations entre htes. Cependant, des applications diffrentes ont des
exigences diffrentes pour leurs donnes, de sorte que des protocoles de transport diffrents ont t
dvelopps afin de satisfaire ces exigences.
Un protocole de couche transport est en mesure dassurer lacheminement fiable des donnes. Dans
le contexte des rseaux, la fiabilit consiste veiller ce que chaque bloc de donnes envoy par la
source parvienne destination. Au niveau de la couche transport, les trois oprations de base en
matire de fiabilit consistent :
effectuer le suivi des donnes transmises ;
Exploration 1 - Couche transport OSI - Page 9 sur 43
accuser rception des donnes ;
retransmettre toute donne nayant pas fait lobjet dun reu.

Pour cela, les processus de la couche transport de la source doivent effectuer le suivi de tous les
blocs de donnes de chaque conversation et retransmettre les donnes pour lesquelles la destination
na pas mis de reu. La couche transport de lhte de destination doit galement effectuer un suivi
des donnes lors de leur arrive et en accuser rception.

Ces processus assurant la fiabilit augmentent la surcharge des ressources du rseau du fait des
oprations de reu, de suivi et de retransmission. Pour prendre en charge ces oprations assurant la
fiabilit, un nombre plus important de donnes de contrle est chang entre les htes qui
expdient et ceux qui reoivent les donnes. Ces informations de contrle sont contenues dans len-
tte de la couche 4.
Il stablit ainsi un compromis entre la valeur accorde la fiabilit et la charge quelle reprsente
sur le rseau. Les dveloppeurs dapplications doivent dterminer quel type de protocole de
transport est appropri en fonction des exigences de leurs applications. Au niveau de la couche
transport, il existe des protocoles qui prcisent des mthodes choisies pour leur fiabilit, leur
livraison garantie ou leur acheminement au mieux. Dans le contexte des rseaux, lacheminement au
mieux est considr comme ntant pas fiable car aucun reu ne confirme que les donnes sont
arrives destination.
Dtermination du besoin de fiabilit
Certaines applications, comme les bases de donnes, les pages Web et les courriels, ont besoin que
toutes les donnes envoyes arrivent destination dans leur tat dorigine afin que ces donnes
soient utiles. Toute donne manquante risque de corrompre la communication en la rendant
incomplte ou illisible. Cependant, ces applications sont conues pour utiliser un protocole de
couche transport qui implmente la fiabilit. On considre que cette surcharge supplmentaire pour
le rseau est indispensable pour ces applications.
Dautres applications tolrent mieux la perte de petites quantits de donnes. Si, par exemple, un ou
deux segments dune lecture vido narrivent pas, cela ne fera que crer une interruption
momentane du flux. Ceci pourra se traduire par une distorsion de limage que lutilisateur ne
remarquera peut-tre mme pas.
Imposer une surcharge pour garantir la fiabilit de cette application risquerait de rduire lutilit de
lapplication. Limage produite par une lecture vido en continu serait fortement dgrade si le
priphrique de destination devait rendre compte des donnes perdues et retarder la lecture en
continu le temps quelles arrivent. Mieux vaut assurer un rendu aussi bon que possible de limage
laide des segments qui arrivent et renoncer la fiabilit. Si, pour une raison ou pour une autre, la
Exploration 1 - Couche transport OSI - Page 10 sur 43
fiabilit est un impratif, ces applications peuvent mettre des demandes de vrification des erreurs
et de retransmission.




4/ TCP et UDP
Les deux protocoles de la suite de protocoles TCP/IP les plus couramment employs sont le protocole
TCP (Transmission Control Protocol) et le protocole UDP (User Datagram Protocol). Ces deux
protocoles grent les communications de nombreuses applications. Ce sont les fonctions spcifiques
implmentes par chaque protocole qui les diffrencient.
Protocole UDP (User Datagram Protocol)
Le protocole UDP est un protocole simple, sans connexion, dcrit par le document RFC 768. Il
prsente lavantage dimposer peu de surcharge pour lacheminement des donnes. Les blocs de
communications utiliss dans le protocole UDP sont appels des datagrammes.

Ces datagrammes sont envoys au mieux par ce protocole de couche transport.
Exploration 1 - Couche transport OSI - Page 11 sur 43
o Le protocole UDP est notamment utilis par des applications de :
o Systme de noms de domaine (DNS)
o Lecture vido en continu
o Voix sur IP (VoIP)

Protocole TCP (Transmission Control Protocol)
Le protocole TCP est un protocole avec connexion dcrit dans le document RFC 793. Le protocole TCP
impose une surcharge pour accrotre les fonctionnalits. Le protocole TCP spcifie dautres fonctions,
savoir la livraison dans lordre, lacheminement fiable et le contrle du flux.

Chaque segment du protocole TCP utilise 20 octets de surcharge dans len-tte pour encapsuler les
donnes de la couche application alors que chaque segment du protocole UDP najoute sur 8 octets
de surcharge. Examinez le tableau comparatif ci-contre.

Le protocole TCP est utilis par des applications de :
o Navigateurs Web
Exploration 1 - Couche transport OSI - Page 12 sur 43
o Courriel
o Transfert de fichiers
5/ Adressage de ports
Identification des conversations
Reprenons lexemple prcdent dun ordinateur envoyant et recevant simultanment des courriels,
des messages instantans, des pages Web et un appel de voix sur IP.
Les services bass sur les protocoles TCP et UDP effectuent le suivi des applications qui
communiquent. Pour diffrencier les segments et les datagrammes de chaque application, les
protocoles TCP et UDP utilisent chacun des champs den-tte identifiant ces applications de faon
unique. Ces identificateurs uniques sont les numros de port.
Len-tte de chaque segment ou datagramme contient un port source et un port de destination. Le
numro de port source est le numro associ lapplication dorigine sur lhte local pour cette
communication. Le numro de port de destination est le numro associ lapplication de
destination sur lhte distant pour cette communication.
Laffectation des numros de port seffectue de diffrentes faons selon que le message est une
requte ou une rponse. Alors que les processus serveur se voient attribuer des numros de port
statiques, les clients choisissent dynamiquement un numro de port pour chaque conversation.
Lorsquune application cliente envoie une requte une application serveur, le port de destination
inclus dans len-tte est le numro de port affect au dmon du service sexcutant sur lhte
distant. Le logiciel client doit savoir quel numro de port est associ au processus serveur sur lhte
distant. Ce numro de port de destination est configur par dfaut ou manuellement. Ainsi, quand
une application de navigateur Web envoie une requte un serveur Web, le navigateur utilise le
protocole TCP et le port numro 80, sauf indication contraire. Ceci est d au fait que le port 80 du
protocole TCP est le port affect par dfaut aux applications de service Web. De nombreuses
applications courantes ont des ports qui leur sont affects par dfaut.
Le port source dun en-tte de segment ou de datagramme dune requte client est gnr de faon
alatoire. Du moment que le numro de port nentre pas en conflit avec dautres ports utiliss par le
systme, le client peut choisir nimporte quel numro de port. Le numro de port fait office
dadresse de retour pour lapplication envoyant la requte. La couche transport effectue le suivi du
port et de lapplication lorigine de la requte afin que la rponse, quand elle sera envoye, soit
transmise lapplication approprie. Le numro de port de lapplication envoyant la requte sert de
numro de port de destination dans la rponse renvoye depuis le serveur.
Lensemble form par le numro de port de la couche transport et ladresse IP de la couche rseau
affecte lhte identifie de faon unique un processus prcis sexcutant sur un priphrique hte
spcifique. Cet ensemble est appel une interface de connexion. Il arrive parfois que les expressions
numro de port et interface de connexion soient utilises lune pour lautre. Dans le cadre de
ce cours, lexpression interface de connexion ne dsigne que la combinaison unique forme par
ladresse IP et le numro de port. Une paire dinterfaces de connexion, compose des adresses IP et
Exploration 1 - Couche transport OSI - Page 13 sur 43
des numros de port source et de destination, est galement unique et identifie une conversation
entre deux htes.
Par exemple, une requte de page Web HTTP envoye un serveur Web (port 80) sexcutant sur un
hte avec une adresse IPv4 de couche 3 gale 192.168.1.20 sera destine linterface de connexion
192.168.1.20:80.
Si le navigateur Web demandant la page Web sexcute sur lhte 192.168.100.48 et que le numro
de port dynamique affect au navigateur Web est 49152, linterface de connexion de la page Web
sera linterface 192.168.100.48:49152.

L'Internet Assigned Numbers Authority (IANA) attribue les numros de ports. LIANA est une agence
de normalisation responsable de laffectation de diverses normes dadressage.

Il existe diffrents types de numros de ports :
Ports rservs (numros 0 1023). Ces numros sont rservs des services et applications. Ils sont
gnralement rservs des applications de type HTTP (serveur Web), POP3/SMTP (serveur de
messagerie) et Telnet. En dfinissant ces ports rservs pour une utilisation par des applications
serveur, il est possible de programmer les applications clientes de faon ce quelles demandent
tre connectes ce port prcis et au service qui lui est associ.
Exploration 1 - Couche transport OSI - Page 14 sur 43

Ports inscrits (numros 1024 49151). Ces numros de ports sont affects des processus ou
applications dutilisateurs. Ces processus sont essentiellement des applications particulires quun
utilisateur a choisi dinstaller plutt que des applications courantes qui recevraient un port rserv.
Un client peut galement slectionner dynamiquement ces ports en tant que ports source lorsquils
ne sont pas utiliss par une ressource serveur.
Ports privs ou dynamiques (numros 49152 65535). galement appels ports phmres, ces
ports sont gnralement affects de faon dynamique des applications clientes lorsquune
connexion est initie. Il est relativement rare pour un client de se connecter un service par le biais
dun port dynamique ou priv (bien que certains programmes de partage de fichiers peer to peer le
fassent).
Utilisation du protocole TCP et du protocole UDP
Certaines applications utilisent le protocole TCP et le protocole UDP. En effet, la faible surcharge du
protocole UDP permet au service DNS de grer trs rapidement de nombreuses requtes de clients.
Parfois, cependant, lenvoi des informations demandes exige la fiabilit du protocole TCP. Dans ce
cas, le port rserv 53 est utilis par les deux protocoles en association avec ce service.
Liens
Vous trouverez une liste des numros de ports actuels sur le site
http://www.iana.org/assignments/port-numbers.
Exploration 1 - Couche transport OSI - Page 15 sur 43


Exploration 1 - Couche transport OSI - Page 16 sur 43

Il est parfois ncessaire de savoir quelles connexions TCP actives sont ouvertes et sexcutent sur un
hte en rseau. Netstat est un important utilitaire rseau permettant de vrifier ces connexions.
Netstat rpertorie le protocole utilis, ladresse et le numro de port locaux, ladresse et le numro
de port distants ainsi que ltat de la connexion.
Les connexions TCP inexpliques peuvent poser un risque de scurit majeur. Elles peuvent en effet
signaler que quelque chose ou quelquun est connect lhte local. En outre, les connexions TCP
inutiles consomment des ressources systme importantes et ralentissent donc les performances de
lhte. Il est conseill dutiliser Netstat pour examiner les connexions ouvertes sur un hte lorsque
les performances semblent peu satisfaisantes.
La commande netstat dispose de nombreuses options utiles.
Exploration 1 - Couche transport OSI - Page 17 sur 43


Exploration 1 - Couche transport OSI - Page 18 sur 43


Exploration 1 - Couche transport OSI - Page 19 sur 43

6/ Segmentation et reconstitution : diviser et conqurir
Dans un chapitre prcdent, nous vous avons expliqu que les units de donnes de protocole sont
labores en faisant transiter les donnes dune application par divers protocoles afin de crer des
units de donnes de protocole qui sont ensuite transmises sur le support. Une fois les donnes
parvenues sur lhte de destination, le processus est invers jusqu ce que les donnes puissent tre
communiques lapplication.
Certaines applications transmettent de trs importants volumes de donnes pouvant parfois
atteindre plusieurs gigaoctets. Transmettre lensemble de ces donnes en un envoi massif serait peu
pratique car aucun autre trafic ne pourrait tre transmis sur le rseau pendant lenvoi de ces
donnes. De plus, lenvoi dune grosse quantit de donnes peut prendre de plusieurs minutes
plusieurs heures. En outre, si une erreur se produisait, lensemble du fichier de donnes serait perdu
ou devrait tre rexpdi. La mmoire tampon des priphriques rseau ne serait pas suffisante
pour stocker autant de donnes pendant leur transmission ou leur rception. La limite varie selon la
technologie rseau employe et le support physique particulier qui est utilis.
Diviser les donnes dapplication en blocs permet de sassurer que les donnes sont transmises en
tenant compte des limites du support et que les donnes provenant dapplications diffrentes
peuvent faire lobjet dun multiplexage sur le support.
Les protocoles TCP et UDP traitent diffremment la segmentation.
Avec le protocole TCP, chaque en-tte de segment contient un numro dordre. Ce numro dordre
permet aux fonctions de la couche transport, au niveau de lhte de destination, de rassembler les
segments dans lordre de leur envoi. Lapplication de destination peut ainsi disposer des donnes
sous la forme exacte voulue par lexpditeur.
Bien que les services utilisant le protocole UDP effectuent galement un suivi des conversations
entre les applications, ils ne prtent pas attention lordre dans lequel les informations ont t
transmises ni au maintien de la connexion. Un en-tte UDP ne contient pas de numro dordre. La
Exploration 1 - Couche transport OSI - Page 20 sur 43
conception du protocole UDP est plus simple et produit moins de surcharge que le protocole TCP, de
sorte que le transfert de donnes est plus rapide.
Il se peut que les informations arrivent dans un ordre diffrent de celui dans lequel elles ont t
transmises car les diffrents paquets peuvent emprunter plusieurs chemins sur le rseau. Les
applications qui utilisent le protocole UDP doivent tolrer le fait que les donnes peuvent arriver
dans un ordre diffrent de celui dans lequel elles ont t envoyes.

2/ Protocole TCP : des communications fiables
1/ Fiabilisation des conversions
La fiabilit est le principal lment diffrentiateur entre les protocoles TCP et UDP. La fiabilit des
communications TCP est assure laide de sessions avec connexion. Avant quun hte utilisant le
protocole TCP nenvoie de donnes un autre hte, la couche transport initie un processus destin
tablir une connexion avec la destination. Cette connexion rend possible le suivi dune session, ou
dun flux de communication, entre les htes. Ce processus veille ce que chaque hte soit notifi de
la communication et quil y soit prt. Une conversation TCP complte exige ltablissement dune
session entre les htes dans les deux directions.
Lorsquune session a t tablie, la destination envoie des reus la source pour les segments quelle
reoit. Ces reus constituent llment de base de la fiabilit dans la session TCP. Quand la source
reoit un reu, elle sait que les donnes ont bien t livres et quelle peut cesser den effectuer le
suivi. Si la source ne reoit pas de reu dans un dlai prdtermin, elle retransmet ces donnes vers
la destination.
Exploration 1 - Couche transport OSI - Page 21 sur 43
La surcharge provoque par lutilisation du protocole TCP provient en partie du trafic rseau gnr
par les reus et les retransmissions. Ltablissement des sessions cre une surcharge prenant la
forme dun change supplmentaire de segments. Une surcharge supplmentaire provoque par la
ncessit deffectuer un suivi des segments pour lesquels on attend un reu et par le processus de
retransmission pse galement sur les htes individuels.
La fiabilit est assure par le recours des champs du segment TCP qui ont, chacun, une fonction
prcise ainsi que lillustre la figure ci-contre. Nous tudierons ces champs plus tard dans cette
section.




Exploration 1 - Couche transport OSI - Page 22 sur 43







2/ Processus serveur TCP
Comme nous lavons vu dans le chapitre prcdent, les processus applicatifs sexcutent sur des
serveurs. Ces processus attendent quun client lance une demande dinformation ou dautres
services.
Chaque processus applicatif qui sexcute sur le serveur est configur par dfaut, ou manuellement
par un administrateur systme, pour utiliser un numro de port. Deux services ne peuvent pas tre
affects au mme numro de port dun serveur particulier au sein des mmes services de la couche
transport. Il est impossible quune application de serveur Web et une application de transfert de
fichiers sexcutant sur un hte soient toutes deux configures pour utiliser le mme port (par
exemple le port TCP 8080). Quand une application de serveur active est affecte un port spcifique,
on considre que ce port est ouvert sur le serveur. Ceci signifie que la couche transport accepte
et traite les segments adresss ce port. Toute demande entrante dun client qui est adresse
linterface de connexion correcte est accepte et les donnes sont transmises lapplication de
serveur. De nombreux ports peuvent tre ouverts simultanment sur un serveur, chacun tant
Exploration 1 - Couche transport OSI - Page 23 sur 43
destin une application de serveur active. Il est courant quun serveur fournisse plusieurs services
simultanment, par exemple en tant que serveur Web et en tant que serveur FTP.
Limiter laccs au serveur aux seuls ports associs aux services et applications devant tre accessibles
aux demandeurs autoriss est un moyen damliorer la scurit sur le serveur.
La figure ci-contre illustre laffectation typique de ports source et de destination dans des oprations
clients/serveurs TCP.

3/ Etablissement et fermeture d'une session TCP
Lorsque deux htes communiquent laide de TCP, une connexion est tablie avant que les donnes
ne puissent tre changes. Une fois la communication termine, les sessions sont fermes et il est
mis fin la connexion. Les mcanismes de connexion et de sessions permettent la fonction de
fiabilit de TCP.
Consultez la figure ci-contre pour dcouvrir les tapes de ltablissement et de la fermeture dune
connexion TCP.
Exploration 1 - Couche transport OSI - Page 24 sur 43


Exploration 1 - Couche transport OSI - Page 25 sur 43

Lhte effectue un suivi de chaque segment de donnes au sein dune session et change des
informations sur les donnes reues par chaque hte grce aux informations contenues dans len-
tte TCP.
Chaque connexion reprsente deux flux de communications, ou sessions, unidirectionnels. Pour
tablir la connexion, lhte effectue une connexion en trois tapes. Les bits de contrle de len-tte
TCP indiquent la progression et ltat de la connexion. La connexion en trois tapes :
vrifie que le priphrique de destination est bien prsent sur le rseau ;
sassure que le priphrique de destination a un service actif et quil accepte les requtes sur
le numro de port de destination que le client qui dmarre la session a lintention dutiliser ;
informe le priphrique de destination que le client source entend tablir une session de
communication sur ce numro de port.
Dans les connexions TCP, lhte faisant office de client initie la session auprs du serveur. Les trois
tapes de ltablissement dune connexion TCP sont les suivantes :
1. Le client initiant la session envoie au serveur un segment contenant un numro dordre initial
faisant office de requte afin de commencer une session de communication.
2. Le serveur rpond par un segment contenant un numro de reu gal au numro dordre reu plus
1, ainsi que son propre numro dordre de synchronisation. Ce numro est suprieur au numro
dordre car lACK est toujours loctet suivant attendu. Ce numro de reu permet au client de relier la
rponse au segment dorigine envoy au serveur.
Exploration 1 - Couche transport OSI - Page 26 sur 43
3. Le client initiant la session rpond par un numro de reu gal au numro dordre reu plus un.
Ceci achve le processus dtablissement de la connexion.
Pour comprendre le processus de connexion en trois tapes, il convient dexaminer les diffrentes
valeurs changes par les deux htes. Dans len-tte du segment TCP se trouvent six champs de 1 bit
contenant des informations de contrle qui servent grer les processus TCP. Il sagit des champs :
URG : pointeur de donnes urgentes valide
ACK : champ de reu valide
PSH : fonction de livraison des donnes sans attendre le remplissage des tampons (Push)
RST : rinitialisation de la connexion
SYN : synchronisation des numros dordre
FIN : plus denvoi de donnes par lexpditeur
Ces champs sont appels des indicateurs car la valeur de chaque champ nest que de 1 bit et que,
donc, ils ne peut prendre que deux valeurs, savoir 1 ou 0. Quand une valeur de bit est dfinie sur 1,
ceci indique le type dinformations de contrle contenues dans le segment.
Un processus en quatre tapes permet dchanger les indicateurs pour mettre fin une connexion
TCP.
4/ Connexion TCP en 4 tapes
Les rsultats Wireshark vous permettent dexaminer le fonctionnement dune connexion TCP en trois
tapes :
tape 1
Un client TCP initie une connexion en trois tapes en envoyant un segment contenant lindicateur de
contrle SYN (Synchronize Sequence Number) qui indique une valeur initiale dans le champ de
numro dordre de len-tte. Cette valeur initiale du numro dordre, appele ISN (Initial Sequence
Number), est choisie de faon alatoire et sert commencer le suivi du flux de donnes entre le
client et le serveur pour cette session. LISN figurant dans len-tte de chaque segment est
incrment de un pour chaque octet de donnes envoy par le client au serveur tandis que la
conversation de donnes se poursuit.
Comme lillustre la figure ci-contre, le rsultat dun analyseur de protocole affiche lindicateur de
contrle SYN et le numro dordre relatif.
Lindicateur de contrle SYN est dfini et le numro dordre relatif est gal 0. Bien que dans le
graphique lanalyseur de protocole indique les valeurs relatives des numros dordre et de reus, les
vraies valeurs sont des nombres binaires de 32 bits. Nous pouvons dterminer les nombres rels
envoys dans les en-ttes de segments en examinant le volet des octets de paquet. Ici, vous pouvez
voir les quatre octets reprsents en hexadcimal.
Exploration 1 - Couche transport OSI - Page 27 sur 43



tape 2
Le serveur TCP doit accuser rception du segment SYN provenant du client pour tablir la session du
client vers le serveur. Pour cela, le serveur renvoie au client un segment accompagn de lindicateur
ACK indiquant que le numro de reu est valide. Grce cet indicateur prsent dans le segment, le
client identifie ceci comme un reu indiquant que le serveur a reu le SYN du client TCP.
La valeur du champ du numro de reu est gale au numro dordre initial du client plus 1. Ceci
tablit une session du client vers le serveur. Lindicateur ACK demeurera dfini pour le reste de la
session. Souvenez-vous quen fait la communication entre le client et le serveur est compos de deux
sessions unidirectionnelles : une allant du client vers le serveur et lautre du serveur vers le client.
Dans cette deuxime tape de la connexion en trois tapes, le serveur doit initier la rponse du
serveur au client. Pour lancer cette session, le serveur utilise lindicateur SYN comme le client la fait.
Il inclut lindicateur de contrle SYN dans len-tte pour tablir une session entre le serveur et le
client. Lindicateur SYN prcise que la valeur initiale du champ de numro dordre se trouve dans
len-tte. Cette valeur servira effectuer le suivi du flux de donnes dans cette session en retour du
serveur vers le client.

Exploration 1 - Couche transport OSI - Page 28 sur 43
Comme lillustre la figure ci-contre, les rsultats de lanalyseur de protocole montrent que les
indicateurs de contrle ACK et SYN sont dfinis et que les numros relatifs dordre et de reu sont
affichs.

tape 3
Enfin, le client TCP rpond laide dun segment contenant un ACK qui constitue la rponse au SYN
TCP envoy par le serveur. Ce segment ne contient pas de donnes de lutilisateur. La valeur du
champ du numro de reu est suprieure de 1 au numro dordre initial reu du serveur. Quand les
deux sessions sont tablies entre le client et le serveur, tous les segments supplmentaires changs
dans cette communication comporteront lindicateur ACK dfini.
Comme lillustre la figure ci-contre, le rsultat de lanalyseur de protocole montrent que lindicateur
ACK est positionn et affiche les numros de reus relatifs.
Il est possible de scuriser le rseau de donnes en :
refusant ltablissement de sessions TCP ;
autorisant uniquement ltablissement de sessions pour des services spcifiques ;
autorisant uniquement le trafic faisant dj partie de sessions tablies.
Ces mesures de scurit peuvent tre implmentes pour toutes les sessions TCP ou uniquement
pour certaines sessions slectionnes.
Exploration 1 - Couche transport OSI - Page 29 sur 43

5/ Fermeture d'une session TCP
Pour fermer une connexion, il faut que lindicateur de contrle FIN de len-tte du segment soit
dfini. Pour mettre fin chaque session TCP unidirectionnelle, on utilise un change en deux tapes
constitue dun segment FIN et dun segment ACK. Pour mettre fin une seule conversation TCP,
quatre changes sont ncessaires pour mettre fin aux deux sessions. Remarque : les termes client et
serveur sont utiliss ici pour simplifier lexplication, mais le processus de fermeture peut tre initi
par nimporte lequel des deux htes terminant la session.

1. Quand le client na plus de donnes envoyer dans le flux, il envoie un segment dont lindicateur
FIN est dfini.

2. Le serveur envoie un segment ACK pour accuser rception du segment FIN afin de fermer la
session du client au serveur.

3. Le serveur envoie un segment FIN au client pour mettre fin la session du serveur au client.

4. Le client rpond laide dun segment ACK pour accuser rception du segment FIN envoy par le
serveur.
Exploration 1 - Couche transport OSI - Page 30 sur 43

Quand lextrmit cliente de la session na plus aucune donne transfrer, elle dfinit lindicateur
FIN dans len-tte dun segment. Ensuite, lextrmit serveur de la connexion envoie un segment
normal contenant des donnes dont lindicateur ACK est dfini en utilisant le numro de reu,
confirmant ainsi que tous les octets de donnes ont t reus. Quand la rception de tous les
segments a t confirme, la session est ferme.
La session dans lautre sens est ferme selon le mme processus. Le rcepteur indique quil ny a plus
de donnes envoyer en dfinissant lindicateur FIN dans len-tte dun segment envoy la source.
Un reu en retour confirme que tous les octets de donnes ont t reus et que cette session, son
tour, se ferme.
Comme lillustre la figure ci-contre, les indicateurs de contrle FIN et ACK sont dfinis dans len-tte
du segment et ferment donc une session HTTP.

Exploration 1 - Couche transport OSI - Page 31 sur 43

Il est galement possible de fermer la connexion laide dune connexion en trois tapes. Quand le
client na plus de donnes envoyer, il envoie un segment FIN au serveur. Si le serveur na plus de
donnes envoyer, il peut rpondre en dfinissant les indicateurs FIN et ACK simultanment et en
combinant ainsi deux tapes en une. Le client rpond par un segment ACK.

3/ Gestion des sessions TCP
1/ Reassemblage des segments TCP
Rordonnancement des segments dans lordre de leur transmission
Quand des services envoient des donnes laide du protocole TCP, il arrive que les segments
parviennent destination dans le dsordre. Pour que le destinataire puisse comprendre le message
dorigine, il faut que les donnes contenues dans ces segments soient ragences dans leur ordre
dorigine. Pour cela, des numros dordre sont affects len-tte de chaque paquet.
Lors de la configuration de la session, un numro dordre initial, ou ISN, est dfini. Ce numro dordre
initial reprsente la valeur de dpart des octets de cette session qui seront transmis lapplication
rceptrice. Lors de la transmission des donnes pendant la session, le numro dordre est incrment
du nombre doctets ayant t transmis. Ce suivi des octets de donnes permet didentifier chaque
segment et den accuser rception individuellement. Il est ainsi possible didentifier les segments
manquants.
Exploration 1 - Couche transport OSI - Page 32 sur 43
Les numros dordre des segments permettent la fiabilit en indiquant comment rassembler et
rordonnancer les segments reus, ainsi que lillustre la figure ci-contre.
Le processus TCP rcepteur place les donnes dun segment dans une mmoire tampon de
rception. Les segments sont remis dans lordre correct et sont transmis la couche application une
fois quils ont t rassembls. Tous les segments reus dont les numros dordre ne sont pas
contigus sont conservs en vue dun traitement ultrieur. Puis ces segments sont traits quand les
segments contenant les octets manquants sont reus.

2/ Reu TCP avec fentrage
Confirmation de la rception des segments

Lune des fonctions de TCP est de veiller ce que chaque segment atteigne sa destination. Les
services TCP sur lhte de destination accusent rception des donnes reues lapplication source.

Le numro dordre et le numro de reu de len-tte du segment sont utiliss ensemble pour
confirmer la rception des octets de donnes contenus dans les segments. Le numro dordre est le
nombre relatif doctets qui ont t transmis dans cette session plus 1 (qui est le numro du premier
octet de donnes dans le segment actuel). TCP utilise le numro de reu des segments renvoys la
source pour indiquer loctet suivant de cette session que le rcepteur sattend recevoir. Cest ce
que lon appelle un reu prvisionnel.
Exploration 1 - Couche transport OSI - Page 33 sur 43

La source est informe que la destination a reu tous les octets de ce flux de donnes jusqu loctet
indiqu par le numro de reu, mais sans inclure ce dernier. Lhte expditeur est cens envoyer un
segment qui utilise un numro dordre gal au numro de reu.

Souvenez-vous quen fait chaque connexion est compose de deux sessions unidirectionnelles. Les
numros dordre et les numros de reu sont changs dans les deux sens.
Dans lexemple de la figure ci-contre, lhte de gauche envoie des donnes lhte de droite. Il
envoie un segment contenant 10 octets de donnes pour cette session et un numro dordre gal 1
dans len-tte.
Lhte rcepteur sur la droite reoit le segment au niveau de la couche 4 et dtermine que le numro
dordre est 1 et quil y a 10 octets de donnes. Lhte renvoie alors un segment lhte de gauche
pour accuser rception de ces donnes. Dans ce segment, lhte dfinit le numro de reu 11 pour
indiquer que le prochain octet de donnes quil sattend recevoir dans cette session est loctet
numro 11.
Quand lhte metteur sur la gauche reoit ce reu, il peut envoyer le segment suivant contenant des
donnes pour cette session commenant par loctet numro 11.
Dans notre exemple, si lhte metteur devait attendre un reu pour chaque ensemble de 10 octets
reu, le rseau subirait un forte surcharge. Pour rduire la surcharge de ces reus, plusieurs
segments de donnes peuvent tre envoys lavance et faire lobjet dun reu par un unique
message TCP en retour. Ce reu contient un numro de reu bas sur le nombre total doctets reus
dans la session.
Prenons lexemple dun numro dordre de dbut gal 2000. Si 10 segments de 1000 octets chacun
taient reus, un numro de reu de 12001 serait renvoy la source.
La quantit de donnes quune source peut transmettre avant de devoir recevoir un reu est appele
la taille de fentre. La taille de fentre est un champ de len-tte TCP qui permet de grer les
donnes perdues et le contrle du flux.
Exploration 1 - Couche transport OSI - Page 34 sur 43

3/ Retransmission TCP
Traitement des pertes de segments
Tous les rseaux, mme les mieux conus, connaissent parfois des pertes de donnes. Le protocole
TCP fournit donc des mthodes de traitement de ces pertes de segments. Parmi elles se trouve un
mcanisme de retransmission des segments contenant des donnes sans reu.
En gnral, un service sur lhte de destination utilisant le protocole TCP ne gnre de reu que pour
les squences contigus doctets. Si un ou plusieurs segments sont manquants, seules les donnes
des segments qui compltent le flux donnent lieu lmission de reus.
Par exemple, en cas de rception des segments dont les numros dordre vont de 1500 3000 et de
3400 3500, le numro du reu sera 3001. Ceci sexplique par le fait que certains segments nont pas
t reus entre les numros dordre 3001 et 3399.
Quand le protocole TCP sur lhte source na pas reu de reu aprs un dlai prdtermin, il revient
au dernier numro de reu et retransmet les donnes depuis ce point.
Le processus de retransmission nest pas spcifi par le document RFC et il incombe
limplmentation particulire du protocole TCP de le dterminer.
Dans une implmentation TCP classique, un hte peut transmettre un segment, placer une copie du
segment dans une file dattente de retransmission et lancer un minuteur. Quand le reu des donnes
est reu, le segment est supprim de la file dattente. Si le reu nest pas reu avant lcoulement du
dlai prvu, le segment est retransmis.
Exploration 1 - Couche transport OSI - Page 35 sur 43
Aujourdhui, les htes utilisent galement une fonction facultative appele reus slectifs. Si les deux
htes prennent en charge les reus slectifs, la destination peut accuser rception des octets de
segments ne se suivant pas et lhte ne retransmettra que les donnes manquantes.
4/ Contrle de l'encombrement TCP
Contrle de flux
Le protocole TCP inclut galement des mcanismes de contrle de flux. Le contrle de flux contribue
la fiabilit des transmissions TCP en rglant le taux effectif de flux de donnes entre les deux
services de la session. Quand la source est informe que la quantit de donnes spcifie dans les
segments a t reue, elle peut continuer envoyer plus de donnes pour cette session.
Ce champ Taille de fentre dans len-tte TCP prcise la quantit de donnes pouvant tre transmise
avant quil ne soit ncessaire de recevoir un reu. La taille de fentre initiale est dtermine lors du
dmarrage de la session par lintermdiaire de la connexion en trois tapes.
Le mcanisme de retour dinformation TCP rgle le taux de transmission effectif des donnes sur le
flux maximum que le rseau et le priphrique de destination peuvent prendre en charge sans perte.
Le TCP sefforce de grer le taux de retransmission de faon ce que toutes les donnes soient
reues et que les retransmissions soient limites au maximum.
La figure ci-contre prsente une reprsentation simplifie de la taille de fentre et des reus. Dans
cet exemple, la taille de fentre initiale dune session TCP reprsente est dfinie 3000 octets.
Lorsque lexpditeur a transmis 3000 octets, il attend le reu de ces octets avant de transmettre
dautres segments de cette session.
Exploration 1 - Couche transport OSI - Page 36 sur 43

Une fois que lexpditeur a reu le reu du destinataire, il peut transmettre 3000 octets
supplmentaires.
Pendant le dlai dattente de rception du reu, lexpditeur nenverra pas de segment
supplmentaire pour cette session. Quand le rseau est encombr ou que les ressources de lhte
rcepteur subissent une forte pression, le dlai peut augmenter. Plus ce dlai sallonge, plus le taux
de transmission effectif des donnes de cette session diminue. La diminution du taux de transfert des
donnes contribue rduire les conflits dutilisation des ressources.
Rduction de la taille de fentre
Lutilisation de tailles de fentres dynamiques permet galement de contrler le flux de donnes.
Quand les ressources rseau sont soumises de fortes contraintes, le protocole TCP peut rduire la
taille de fentre afin dimposer lenvoi plus frquent de reus pour les segments reus. Ceci a pour
effet de ralentir le taux de transmission car la source attend des reus des donnes plus frquents.
Lhte TCP destinataire envoie la valeur de la taille de fentre lexpditeur TCP afin de lui indiquer
le nombre doctets quil est prpar recevoir dans le cadre de cette session. Si la destination doit
ralentir le taux de communication parce que la mmoire tampon est limite, elle peut envoyer une
valeur de taille de fentre plus petite la source en lintgrant un reu.

Exploration 1 - Couche transport OSI - Page 37 sur 43
Comme lillustre la figure ci-contre, si un hte rcepteur subit un encombrement, il peut rpondre
lhte expditeur avec un segment dont la taille de fentre est rduite. Ce graphique montre que lun
des segments a t perdu. Dans cette conversation, le destinataire a chang le champ de fentre
dans len-tte TCP des segments renvoys en le ramenant de 3000 1500. Lexpditeur a donc t
oblig de rduire la taille de fentre 1500.
Quand un certain temps se sera coul sans perte de donnes ni contraintes excessives sur les
ressources, le destinataire pourra recommencer augmenter la taille de fentre. Ceci rduit la
surcharge du rseau car un moins grand nombre de reus doit tre envoy. La taille de fentre
continuera augmenter jusqu ce que des donnes soient nouveau perdues, ce qui entranera une
rduction de la taille de fentre.
Ces augmentations et rductions dynamiques de la taille de fentre constituent un processus continu
dans le protocole TCP, processus qui dtermine la taille de fentre optimale pour chaque session
TCP. Dans les rseaux trs efficaces, les tailles de fentres peuvent augmenter beaucoup car les
donnes ne sont pas perdues. Sur les rseaux dont linfrastructure sous-jacente est soumise
beaucoup de contraintes, la taille de la fentre demeurera probablement rduite.

4/ Protocole UDP
1/ UDP : Faible surcharge contre la fiabilit
Exploration 1 - Couche transport OSI - Page 38 sur 43
Le protocole UDP est un protocole simple offrant des fonctions de couche transport de base. Il cre
beaucoup moins de surcharge que le protocole TCP car il est sans connexion et ne propose pas de
mcanismes sophistiqus de retransmission, de squenage et de contrle de flux.
Mais cela ne signifie pas que les applications utilisant le protocole UDP manquent toujours de
fiabilit. Cela signifie simplement que ces fonctions ne sont pas fournies par le protocole de la
couche transport et quelles doivent tre implmentes un autre niveau, le cas chant.
Bien que le volume total de trafic UDP trouv sur un rseau typique soit relativement faible, des
protocoles importants de la couche application utilisent le protocole UDP, notamment :
DNS (Domain Name System)
SNMP (Simple Network Management Protocol)
DHCP (Dynamic Host Configuration Protocol)
RIP (Routing Information Protocol)
TFTP (Trivial File Transfer Protocol)
Jeux en ligne
Certaines applications, comme les jeux en ligne ou la voix sur IP, peuvent tolrer la perte dune
certaine quantit de donnes. Si ces applications utilisaient le protocole TCP, elles risqueraient dtre
confrontes de longs dlais pendant que le protocole TCP dtecterait les pertes de donnes et
retransmettrait les donnes. Ces dlais seraient plus prjudiciables lapplication que la perte dune
petite quantit de donnes. Certaines applications, comme le systme DNS, se contentent
simplement de rpter leur requte si elles ne reoivent pas de rponse. Elles nont donc pas besoin
du protocole TCP pour garantir la livraison du message.
La faible surcharge quengendre le protocole UDP rend celui-ci trs intressant pour de telles
applications.
Exploration 1 - Couche transport OSI - Page 39 sur 43

2/ Rassemblage des datagrammes udp
Comme le protocole UDP nutilise pas de connexion, les sessions ne sont pas tablies avant que la
communication nait lieu comme cest le cas avec le protocole TCP. Le protocole UDP est connu pour
tre un protocole bas sur les transactions. En dautres termes, quand une application doit envoyer
des donnes, elle les envoie tout simplement.
De nombreuses applications utilisant le protocole UDP envoient de petites quantits de donnes
pouvant tenir dans un seul segment. Cependant, certaines applications envoient des volumes de
donnes plus importants qui doivent tre dcoups en plusieurs segments. Lunit de donnes de
protocole UDP est appele un datagramme, bien que les termes segment et datagramme soient
souvent utiliss lun pour lautre pour dcrire une unit de donnes de protocole de la couche
transport.
Quand plusieurs datagrammes sont envoys vers une destination, ils peuvent emprunter des
chemins diffrents et arriver dans le dsordre. Le protocole UDP neffectue pas de suivi des numros
dordre comme le fait le protocole TCP. Il na en effet aucun moyen de rordonnancer les
datagrammes pour leur faire retrouver leur ordre de transmission dorigine. Consultez la figure.
Le protocole UDP se contente donc de rassembler les donnes dans lordre dans lequel elles ont t
reues, puis de les transmettre lapplication. Si lapplication attache une grande importance
lordre des donnes, elle devra identifier lordre correct des donnes et dterminer leur mode de
traitement.
Exploration 1 - Couche transport OSI - Page 40 sur 43

3/ Processus et requte des serveurs UDP
Comme cest le cas avec des applications bases sur le protocole TCP, des numros de ports rservs
sont affects aux applications serveur bases sur le protocole UDP. Quand ces applications ou
processus sexcutent, ils ou elles acceptent les donnes correspondant au numro de port attribu.
Quand le protocole UDP reoit un datagramme destin lun de ces ports, il transmet les donnes
applicatives lapplication approprie daprs son numro de port.
Exploration 1 - Couche transport OSI - Page 41 sur 43

4/ Processus des clients UDP
Comme cest le cas avec le protocole TCP, la communication entre le client et le serveur est initie
par une application cliente qui demande des donnes un processus serveur. Le processus client
UDP slectionne un numro de port alatoire dans une plage dynamique de numros de ports et il
lutilise comme port source pour la conversation. Le port de destination est gnralement le numro
de port rserv affect au processus serveur.
Le choix alatoire des numros de ports source prsente galement un avantage en matire de
scurit. Quand il existe un modle prvisible de slection du port de destination, il est plus facile
pour un intrus de simuler un accs un client en tentant de se connecter au numro de port le plus
susceptible dtre ouvert.
tant donn que le protocole UDP ne cre pas de session, ds que les donnes sont prtes tre
envoyes et que les ports sont identifis, il peut crer le datagramme et le soumettre la couche
rseau pour son adressage et son envoi sur le rseau.
Souvenez-vous quune fois quun client a choisi le port source et le port de destination, la mme
paire de port est utilise dans len-tte de tous les datagrammes utiliss dans la transaction. Quand
des donnes sont renvoyes du serveur vers le client, les numros de port source et de port de
destination sont inverss dans len-tte du datagramme.

Exploration 1 - Couche transport OSI - Page 42 sur 43
CONCLUSION

La couche transport fournit les donnes dont le rseau a besoin en :
divisant en segments les donnes reues dune application ;
ajoutant un en-tte pour identifier et grer chaque segment ;
utilisant les informations de len-tte pour rassembler les segments en donnes
dapplication ;
transfrant les donnes assembles lapplication adquate.
Les protocoles UDP et TCP sont couramment utiliss en tant que couche transport.
Les datagrammes UDP et les segments TCP ajoutent aux donnes des prfixes, composs den-ttes
contenant un numro de port source et un numro de port de destination. Ces numros de ports
permettent dorienter les donnes vers lapplication correcte sexcutant sur lordinateur de
destination.
Le protocole TCP ne transmet aucune donne au rseau tant quil na pas la confirmation que la
destination est prte les recevoir. Le protocole TCP gre alors le flux de donnes et renvoie tout
segment de donnes pour lequel la destination na pas envoy de reu. TCP utilise divers
mcanismes comme les connexions en trois tapes, les minuteurs, les reus et le fentrage
dynamique pour assurer la fiabilit de ces fonctions. Nanmoins, cette fiabilit impose une surcharge
au rseau car elle cre des en-ttes de segments beaucoup plus volumineux et accrot le trafic rseau
entre la source et la destination qui grent le transport des donnes.
Si les donnes dapplication doivent tre rapidement livres travers le rseau, ou si la bande
passante du rseau ne peut pas prendre en charge la surcharge reprsente par les messages de
contrle changs entre les systmes source et de destination, les dveloppeurs prfreront le
protocole UDP pour la couche transport. Ceci sexplique par le fait que le protocole UDP neffectue
pas de suivi, et naccuse pas rception des datagrammes parvenus leur destination. Il se contente
de transmettre les datagrammes reus la couche application dans lordre de leur arrive et il ne
rexpdie pas les datagrammes perdus. Ceci nimplique pourtant pas ncessairement que la
communication elle-mme nest pas fiable car les protocoles et services de la couche application
peuvent comporter des mcanismes permettant de traiter les datagrammes perdus ou retards si
lapplication lexige.
Les dveloppeurs dapplications choisissent le protocole de la couche transport rpondant le mieux
aux exigences des utilisateurs. Ces dveloppeurs noublient pas, cependant, que les autres couches
jouent un rle dans les communications sur les rseaux de donnes et quelles influencent leurs
performances.

Exploration 1 - Couche transport OSI - Page 43 sur 43

Das könnte Ihnen auch gefallen