WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Amélioration de la performance de TCP dans les réseaux mobiles ad hoc.

( Télécharger le fichier original )
par Yassine DOUGA
Université dà¢â‚¬â„¢Oran 1 Ahmed Ben Bella  - Doctorat  2016
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

2.1. Introduction

La fonctionnalité principale de la couche transport est le transfert de l'émetteur vers le récepteur, des données de bout-en bout de manière fiable et économique. Elle permet d'isoler les niveaux supérieurs des variations technologiques et des imperfections des couches inférieures. Pour cela, elle emploie des protocoles de transport qui utilise les services de la couche réseau (IP) pour assurer l'acheminement des données. Les protocoles largement déployés dans les réseaux IP sont : TCP (Transmission Control Protocol), UDP (User Datagram Protocol), les protocoles DCCP (Datagram Congestion Control Protocol) et SCTP (Stream Control Transmission Protocol).

Etant donné que notre intérêt porte sur l'amélioration de TCP dans les réseaux ad hoc, nous nous focalisons sur sa description en donnant ces caractéristiques dans les réseaux filaires pour lesquels il a été conçu et nous étudions son comportement dans les réseaux sans fil.

18

Chapitre I: Concepts de base

2.2. Le protocole TCP

Le protocole de contrôle de transmission TCP a été défini pour fournir un service de transfert de données fiable entre deux applications sur des stations distantes raccordées par un réseau à commutation de paquets utilisant le protocole IP (Internet Protocol). La fiabilité du transfert est obtenue par différents mécanismes tels que l'établissement de connexion, la gestion de timers de retransmissions ou encore le contrôle de la fenêtre de retransmissions. La spécification initiale, définie dans le Request For Comments RFC 793 de 1981 [97] a fait l'objet de nombreux travaux qui ont conduit à des améliorations de la spécification initiale.

Dans la pratique, la plupart des déploiements du protocole TCPont été soigneusement conçus dans le contexte des réseaux câblés. Dans un environnement ad hoc l'implémentation de TCP peut conduire à des performances médiocres dues aux propriétés intrinsèques des réseaux sans fil. Des études récentes de métrologie rapportent que TCP est non seulement utilisé pour le transport de données, mais est également utilisé pour le transport des flux «streaming» [98].

2.2.1. Caractéristiques et fonctionnement général

TCP est un protocole de transport de bout-en-bout, fonctionnant en mode orienté connexion dont l'objectif est de transmettre de manière fiable des données applicatives entre deux utilisateurs. Le terme orienté connexion signifie que deux machines souhaitant communiquer via TCP doivent commencer par établir une connexion avant de pouvoir dialoguer. Une fois la connexion établie, les deux extrémités de la connexion peuvent communiquer de manière bidirectionnelle (full-duplex).

Outre le mode orienté connexion et la fiabilité, les principales fonctionnalités de TCP sont :

Ordre : TCP assure, par utilisation des numéros de séquence de paquets et des tampons de réception, que les paquets arrivent dans le même ordre que celui de leur émission.

Contrôle de congestion : des mécanismes de contrôle de congestion (slow-start, Congestion Avoidance, Fast Retransmit, Fast Recovery [21]) permettent d'éviter l'engorgement du réseau lorsque ce dernier est saturé et d'augmenter le débit de transmission lorsque le réseau est faiblement chargé. En fait, le contrôle de congestion assure une corrélation entre le débit d'émission et le débit disponible sur le réseau tout en garantissant une certaine équité pour le partage de ce débit entre plusieurs flux TCP.

Contrôle de flux : TCP utilise un mécanisme de fenêtre d'émission glissante dynamique pour contrôler le débit de transmission de l'émetteur. Le débit d'une connexion est donc directement lié à la taille de sa fenêtre, cette dernière représentant la quantité d'information pouvant être émise. Ce mécanisme est également utilisé pour le

19

Chapitre I: Concepts de base

contrôle de congestion. N'ayant pas ou peu d'informations sur la teneur du réseau emprunté, notamment en termes de type de liens, de débit disponible ou de congestion éventuelle, TCP ne peut compter que sur les événements qu'il interprète comme des notifications de congestion pour établir le débit de la connexion et assurer aux utilisateurs le meilleur débit instantané possible.

Transfert de flux d'octets de données : TCP découpe les flux d'octets de données de l'application en segments dont la taille est en fonction de la fenêtre glissante. Les segments seront ensuite réassemblés par le récepteur afin de reformer un flux d'octets qu'il fournira à l'application destinataire.

Contrôle d'erreur sur bit : TCP intègre un mécanisme de checksum sur 16 bits pour couvrir les erreurs sur bit de l'entête et des données.

2.2.1.1. Mécanisme de l'acquittement

Les acquittements sont utilisés pour fiabiliser la communication. En effet, chaque segment émis dans un flux TCP sera acquitté par le récepteur. Dans certaines conditions, les acquittements ne parviennent pas à l'émetteur. Dans ces cas et après un délai d'attente fixé, chaque segment émis mais non acquittés et donc considérés comme perdu est alors réémis. Le délai d'attente ou RTO (Retransmit Time Out) est enclenché à l'établissement de la connexion et remis à zéro chaque fois que la transmission d'un segment est correctement validée. Il est calibré en fonction du délai d'aller-retour entre l'émetteur et le récepteur noté RTT (Round Trip Time). Le RTT est lui-même mesuré grâce aux temps de réception des acquittements. La figure 6 représente le mécanisme d'acquittement.

Sachant que la perte d'un segment est généralement due à une congestion sur le réseau, les acquittements servent également à réguler le débit d'émission des sources TCP.

Figure 6 : Mécanisme de l'acquittement

Le délai d'aller-retour (RTT) est mesuré grâce aux temps d'émission des segments et de réception de leur acquittement. Le TCP utilise le RTT pour calculer le RTO en

Chapitre I: Concepts de base

utilisant l'algorithme de V. Jacobson [98]. Cet algorithme fournit une valeur lissée du RTT en effectuant une moyenne pondérée de la valeur actuelle du RTT lissé et de la dernière mesure du RTT instantané. Il permet également de calculer un indice de variation du RTT (RTTVAR). Chaque évaluation du RTT et de sa variation donne lieu à la mise à jour du RTO [99].

2.2.1.2. La connexion

Entre l'établissement et la fermeture de la connexion, le mode opératoire de TCP est séparé en deux états principaux permettant d'assurer le contrôle de flux et de congestion :

- Le début de connexion.

- L'état stable (le TCP fonctionne correctement).

L'établissement d'une connexion TCP s'effectue en trois phases (figure 7) :

- L'établissement de la connexion

- Le transfert de données

- La fin de la connexion

20

Figure 7 : Etablissement d'une connexion

Où :

- SYN est un paquet de demande de synchronisation ou établissement de

connexion

- ACK (acknowledment) signale que le paquet est bien reçu

- SYN-ACK (synchronize, acknowledge) paquet envoyé par le récepteur.

21

Chapitre I: Concepts de base

La Figure 8 est une représentation simplifiée du diagramme d'états de TCP insistant sur les changements d'états qui ont lieu entre l'ouverture et la fermeture d'une connexion.

Figure 8 : Diagramme d'états simplifié de TCP

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Qui vit sans folie n'est pas si sage qu'il croit."   La Rochefoucault