Téléinformatique de base. Chapitre 7 TCP et UDP

Documents pareils
Le protocole TCP. Services de TCP

Introduction. Adresses

Couche Transport TCP et UDP

Rappels réseaux TCP/IP

UDP/TCP - Protocoles transport

Architecture TCP/IP. Protocole d application. client x. serveur y. Protocole TCP TCP. TCP routeur. Protocole IP IP. Protocole IP IP.

Systèmes et Réseaux (ASR 2) - Notes de cours Cours 14

Devoir Surveillé de Sécurité des Réseaux

Internet - Outils. Nicolas Delestre. À partir des cours Outils réseaux de Paul Tavernier et Nicolas Prunier

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Introduction aux Technologies de l Internet

Présentation du modèle OSI(Open Systems Interconnection)

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Niveau Transport "Transport Layer" I) Problèmes et solutions au niveau transport II) Exemple des protocoles et services de transport dans l INTERNET

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

Réseaux IUP2 / 2005 IPv6

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

Réseaux et protocoles Damien Nouvel

L3 informatique Réseaux : Configuration d une interface réseau

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

Réseaux Locaux. Objectif du module. Plan du Cours #3. Réseaux Informatiques. Acquérir un... Réseaux Informatiques. Savoir.

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

Réseau longue distance et application distribuée dans les grilles de calcul : étude et propositions pour une interaction efficace

Sécurité des réseaux IPSec

Algorithmique des Systèmes Répartis Protocoles de Communications

La collecte d informations

Réseaux Internet & Services

Programme formation pfsense Mars 2011 Cript Bretagne

Master 1 ère année. UE Réseaux Avancés I. Corrections décembre Durée : 2h Documents autorisés

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

! 1 /! 5 TD - MIP + RO - NEMO. 1. Mobile IP (MIPv6) avec optimisation de routage

SSL ET IPSEC. Licence Pro ATC Amel Guetat

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

Internet Protocol. «La couche IP du réseau Internet»

Programmation Réseau. ! UFR Informatique ! Jean-Baptiste.Yunes@univ-paris-diderot.fr

Routage AODV. Languignon - Mathe - Palancher - Pierdet - Robache. 20 décembre Une implémentation de la RFC3561

Réseaux grande distance

Introduction à l'analyse réseau Philippe Latu philippe.latu(at)linux-france.org

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

Sécuriser son réseau. Sécuriser son réseau Philippe Weill (IPSL/LATMOS) Frédéric Bongat (SSI/GOUV/FR)

Master e-secure. VoIP. RTP et RTCP

Gestion et Surveillance de Réseau

Vue d'ensemble de NetFlow. Gestion et Supervision de Réseau

TP 1 : LES COMMANDES RESEAUX Matière: RESEAUX LOCAUX

Installation et configuration d un serveur DHCP (Windows server 2008 R2)

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

Chapitre 11 : Le Multicast sur IP

FILTRAGE de PAQUETS NetFilter

Internet et Multimédia Exercices: flux multimédia

Services Réseaux - Couche Application. TODARO Cédric

Les Réseaux. les protocoles TCP/IP

Nmap (Network Mapper) Outil d exploration réseau et scanneur de ports/sécurité

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007

Année Universitaire session 1 d automne Parcours : CSB5 Licence 3 STS Informatique

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

LES PROTOCOLES DES RÉSEAUX

La supervision des services dans le réseau RENATER

IPFIX (Internet Protocol Information export)

Informatique Générale Les réseaux

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

DIGITAL NETWORK. Le Idle Host Scan

NetCrunch 6. Superviser

Sécurité d IPv6. Sécurité d IPv6. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr

Sécurité et Firewall

Installation d un serveur virtuel : DSL_G624M

Algorithmique et langages du Web

Dynamic Host Configuration Protocol

NOTIONS DE RESEAUX INFORMATIQUES

Le service IPv4 multicast pour les sites RAP

Réseaux - Cours 4. Traduction d adresse (NAT/PAT) et Service de Nom de Domaine (DNS) Cyril Pain-Barre. IUT Informatique Aix-en-Provence

Métrologie réseaux GABI LYDIA GORGO GAEL

N o t i o n s d e b a s e s u r l e s r é s e a u x C h a p i t r e 2

La couche réseau Le protocole X.25

Cisco Certified Network Associate

Téléinformatique. Chapitre V : La couche liaison de données dans Internet. ESEN Université De La Manouba

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

Réseaux. 1 Généralités. E. Jeandel

Les Réseaux sans fils : IEEE F. Nolot

Manuel d installation UCOPIA Advance

Les Réseaux Privés Virtuels (VPN) Définition d'un VPN

Protocoles réseaux. Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1).

U.E. ARES - TD+TME n 1

Un aperçu de la technologie d'accélération WAN de Silver Peak

Plan. Programmation Internet Cours 3. Organismes de standardisation

1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau

M1101a Cours 4. Réseaux IP, Travail à distance. Département Informatique IUT2, UPMF 2014/2015

Présentation et portée du cours : CCNA Exploration v4.0

18 TCP Les protocoles de domaines d applications

DIFF AVANCÉE. Samy.

pare - feu généralités et iptables

Outils d'analyse de la sécurité des réseaux. HADJALI Anis VESA Vlad

DHCP. Dynamic Host Configuration Protocol

2. DIFFÉRENTS TYPES DE RÉSEAUX

Architecture Principes et recommandations

Transcription:

Téléinformatique de base Chapitre 7 TCP et UDP

Objectifs d apprentissage Savoir expliquer l utilisation du protocole UDP Savoir décrire l utilisation des numéros de port Comprendre les bases des mécanismes de TCP Etablissement et terminaison de connexions Numéros de séquence Acquittement Retransmission Contrôle de congestion Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 2

La couche Transport Communication de bout en bout Services offerts à la couche supérieure 1. Service sans connexion Protocole UDP 2. Service avec connexion Protocole TCP Fiable (garantie de délivrance) Délivrance dans l ordre de l émission Régulation de la vitesse (contrôle de congestion) Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 3

Le protocole UDP Fonctionnalités Adressage d applications à l aide de numéros de port Contrôle d erreur optionnel (obligatoire avec IPv6) Transmission non fiable Sans connexion Sans acquittement ou retransmission Sans contrôle du débit Utilisé pour Les transmissions multimédia (tolèrent quelques pertes) Les transmissions multicast (multicast toujours sans connexion) Les échanges courts, comme DNS (pas de connexion) Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 4

Format des datagrammes UDP 32 bits Port source Longueur du segment 8 octets En-tête UDP Port destination Somme de contrôle Données >= 20 octets En-tête IP, Proto=17 Données Seulement 4 champs dans l en-tête UDP, 8 octets en total Longueur maximum d un datagramme: 65 535 octets Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 5

Somme de contrôle La somme de contrôle est calculée sur Le pseudo-header IP (quelques champs de l en-tête IP) L en-tête UDP Les données encapsulées zéro Adresse source Adresse destination Protocole (=UDP) Longueur datagramme UDP Pseudo-en-tête IP Port source Longueur datagramme UDP Port destination Checksum (mise à 0 pour le calcul) En-tête UDP Données Protection contre Des erreurs bits dans les données Des adresses/ports erronées (paquet arrive au mauvais destinataire) Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 6

Numéro de ports Les numéros de ports sont les adresses de la couche Transport Permettent d adresser plusieurs applications sur la même machine Entiers sur 16 bits Utilisés par TCP et UDP TCP et UDP peuvent réutiliser les mêmes ports FTP Protocole (TCP) IP Web Numéros de port Mail Protocole (UDP) MAC FTP Protocole (TCP) MAC Web IP Protocole (UDP) MAC Mail Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 7

Les ports TCP / UDP Deux types de numéros de ports Ports bien connus (1-1023) Assignés à des applications standard Typiquement utilisés par les applications serveur Service Port Protocole SSH 22 TCP SMTP 25 TCP DNS 53 UDP HTTP 80 TCP Ports éphémères (1024 65535) Typiquement utilisés par les applications client Assignés dynamiquement par TCP/UDP Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 8

Le protocole TCP TCP: Transmission Control Protocol Fonctionnalités principales Transmission fiable de bout en bout Numéros de séquence Acquittements Retransmission Etablissement et terminaison de connexions Connexions bidirectionnelles et point-à-point Régulation du débit Contrôle de flux : adaptation de la vitesse au récepteur Contrôle de congestion : adaptation de la vitesse au réseau Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 9

Transfert tamponné à flot d octets TCP offre à la couche supérieure un service à flot d octets 1. L application passe des blocs de données à TCP 2. TCP les met dans un tampon d émission 3. TCP regroupe les données en segments à transmettre TCP 4. Le récepteur TCP place les segments reçus dans un tampon de réception 5. L application lit des blocs de données, sans tenir compte de segments Application Tampon d émission Flot d octets/blocs Transmission de segments TCP Application Tampon de réception La délimitation des messages de l application n est pas respectée TCP Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 10

Transmission fiable Garantie de délivrance des données, dans l ordre de l émission Mécanismes nécessaires 1. Numéros de séquence 2. Acquittement 3. Retransmission Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 11

Numéros de séquence Les octets sont numérotés, non pas les segments L émetteur indique le numéro du premier octet des données du segment 0 16 31 Port source Port destination Long. en-tête Réservé Somme de contrôle Numéro de séquence Numéro d'acquittement Bits Fenêtre Pointeur d'urgence Options (facultatives et de longueur variable) Bourrage (variable) U R G A C K P S H R S T S Y N F I N Données (de longueur variable) Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 12

Acquittement Le numéro d acquittement indique le prochain octet attendu par le récepteur Un acquittement peut être envoyé séparément ou combiné avec des données Les acquittements sont cumulatifs : Un acquittement confirme la réception de toutes les données jusqu à ce point 0 16 31 Long. en-tête Port source Réservé Somme de contrôle Numéro de séquence Numéro d'acquittement Bits Options (facultatives et de longueur variable) Port destination Fenêtre Pointeur d'urgence Bourrage (variable) C W R E C E U R G A C K P S H R S T S Y N F I N Données (de longueur variable) Cours TIB, 6-Routage 13

Acquittements et retransmission L émetteur gère un temporisateur de retransmission pour chaque segment envoyé Si le temporisateur expire avant la réception d un acquittement, le segment est retransmis TCP a un mécanisme pour adapter la durée du temporisateur Juergen Ehrensberger, HEIG-VD Cours TIB, 6-Routage 14

Retransmission rapide Problème des acquittements cumulatifs Un segment intermédiaire a été perdu Comment signaler que les segments suivants sont arrivés? { Acquittements dupliqués Retransmission Suite de la transmission Solution : Lors de la réception d un segment en désordre, le récepteur répète le dernier ACK ( ACK dupliqué ) Si l émetteur reçoit 3 ACK dupliqués, il retransmet le segment sans attendre un timeout Hôte A Séq=101 Séq=1101 Séq=2101 Séq=3101 Séq=101 Séq=4101 ACK 101 ACK 101 ACK 101 ACK 101 ACK 4101 Hôte B Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 15

Etablissement de connexions C est simple? Non! Protocole simpliste : Etablissement de connexion en deux temps 1. Demande d établissement 2. Confirmation Scénario Ordre de versement à une banque Certains paquets du client sont retardés et retransmis Hôte A Demande Demande Hôte B Hôte A Hôte B Confirmation Versement 1 mio Demande Confirmation??? Versement 1 mio Confirmation Demande Confirmation Versement 1 mio Confirmation Juergen Ehrensberger, HEIG-VD 16???

Etablissement de connexions dans TCP Le protocole doit tenir compte de la possibilité de doublons Mécanisme de TCP : Three way handshake (établissement de connexion en trois temps) Les hôtes se mettent d accord sur les numéros de séquence initiaux Lors d une erreur, un message RST (RESET) permet d interrompre l établissement de connexion Hôte A Hôte B Hôte A Hôte B SYN=x SYN=y,ACK x+1 ACK y+1 RST SYN=x SYN=y,ACK x+1 17

Libération d une connexion dans TCP Les connexions TCP sont bidirectionnelles Libération séparément dans les deux sens Un hôte qui n a plus de données à transmettre peut fermer la connexion dans une direction L autre hôte peut continuer à transmettre Deux segments pour libérer un sens de la connexion: FIN + ACK Hôte A FIN Séq=x ACK x+1 FIN Séq=y Hôte B ACK y+1 Juergen Ehrensberger, HEIG-VD

Contrôle de flux et de congestion Objectif : Régulation de la vitesse de transmission Contrôle de flux Adaptation à la vitesse du récepteur Évite qu un émetteur rapide surcharge un récepteur lent Contrôle de congestion Adaptation à la vitesse du réseau Évite des pertes excessives de paquets à cause d une surcharge du réseau Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 19

Protocole de la fenêtre glissante Améliore le taux d utilisation Permettant à l émetteur d envoyer plusieurs paquets avant de devoir attendre un accusé de réception Principe Les données dans la fenêtre peuvent être envoyées sans attendre d acquittement La réception d un acquittement permet de glisser la fenêtre à droite Fenêtre glissante... 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19... Réception de l ACK pour 8 et 9 Émis et acquitté Émis non acquitté Peut être envoyé immédiatement Fenêtre glissante A envoyer quand la fenêtre glisse... 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19... Émis et acquitté Peut être envoyé immédiatement Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 20

Contrôle de flux dans TCP Basé sur un protocole à fenêtre glissante mais avec une taille de fenêtre variable La fenêtre utilisable correspond à la place libre dans le tampon du récepteur Chaque accusé de réception indique en plus la taille de la fenêtre (window advertisement) En variant la taille de la fenêtre, le récepteur peut contrôler la vitesse de transmission de l émetteur Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 21

Exemple du contrôle de flux dans TCP Fenêtre glissante... 0 4096 6144 Hôte A Séq=0, Long. 2048 octets Hôte B Tampon de réception 0 4096... 0 2048 4096 6144... 0 2048 4096 6144 ACK 2048, Fenêtre 2048 Séq=2048, Long. 2048 octets 0 2048 4096 Fenêtre fermée... 0 2048 4096 6144 ACK 4096, Fenêtre 0 ACK 4096, Fenêtre 2048 0 Tampon plein 4096 L'application lit 2048 octets 0 2048 4096... 0 2048 4096 6144... 0 2048 4096 6144 Séq=4096, Long. 1024 octets 0 3072 4096 Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 22

Contrôle de congestion État de congestion Le réseau n est plus en mesure de transporter tout le trafic injecté et perd des paquets Danger de l amplification d une congestion par TCP TCP réagit à une perte avec une retransmission La retransmission peut augmenter la charge du réseau Le contrôle de congestion de TCP doit optimiser le débit de transmission sans mettre en danger la stabilité du réseau Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 23

Bases du contrôle de congestion de TCP La fenêtre de congestion (cwnd, congestion window) Gérée par l émetteur pour limiter le débit d émission TCP adapte la taille de cwnd au niveau de congestion détecté Combinaison du contrôle de flux et de congestion Fenêtre effective min Principe du contrôle de congestion Annonce de fenêtre, cwnd Démarrage lent : Pour détecter le débit optimal, TCP commence avec une petite fenêtre de congestion et augmente rapidement le débit Évitement de congestion : Dès que TCP s approche de la zone de congestion, TCP augment le débit plus lentement Accroissement additif - décroissance multiplicative : Dès qu une perte est détectée TCP ralentit rapidement et augmente à nouveau lentement Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 24

Démarrage lent (Slow Start) Motivation TCP doit fonctionner correctement pour n importe quelle capacité du réseau (entre bits/s et Gb/s) Il faut éviter de surcharger un lien lent au départ Petite fenêtre cwnd au début Il faut rapidement arriver à exploiter la capacité de liens importants Augmentation rapide de cwnd Algorithme Slow Start Initialement cwnd = 1 MSS Ensuite cwnd est incrémenté de 1 MSS par acquittement reçu (MSS: Maximum Segment Size: taille maximum d un paquet) Cwnd double chaque RTT (délai aller-retour) Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 25

Exemple de Slow Start Fenêtre de congestion Emetteur Récepteur 1 MSS 2 MSS RTT ACK RTT 4 MSS RTT 8 MSS Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 26

Évitement de congestion (Congestion Avoidance) Dans Slow Start, la taille de cwnd augmente exponentiellement Augmentation doit ralentir quand TCP s approche du débit optimal Un seuil d évitement de congestion indique quand on s approche d une congestion Paramètre ssthresh de TCP Algorithme Congestion Avoidance Dès que cwnd > ssthresh, cwnd est agrandie linéairement Pour chaque acquittement reçu : cwnd cwnd MSS MSS cwnd Augmentation d un MSS par RTT Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 27

Exemple Slow Start et Congestion Avoidance Au-dessous de ssthresh: Slow Start Cwnd double chaque RTT Au-dessus de ssthresh: Congestion Avoidance Cwnd croît d un MSS chaque RTT Fenêtre de congestion cwnd 52 48 44 40 36 32 28 24 20 16 12 8 4 Slow start Évitement de congestion ssthresh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Temps (multiples de RTT) Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 28

Variation du seuil d évitement de congestion Comment déterminer la valeur du seuil de congestion ssthresh? Ssthresh doit représenter la taille optimale de la fenêtre de congestion 1. Lorsqu il n y a pas de congestion, ssthresh croît linéairement avec cwnd accroissement additif Les signal que le débit optimal a été dépassé est la perte d un paquet Théorie des files d attente : Pour garantir la stabilité du réseau, le débit doit diminuer de manière exponentielle 2. Lorsqu une perte a été détectée, ssthresh est diminué à la moitié décroissance multiplicative 3. TCP (Reno) recommence avec Slow Start (après un timeout) Pour éviter des rafales de retransmissions Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 29

Comportement de cwnd et ssthresh Trois phases Slow Start avec une croissance exponentielle de cwnd Congestion avoidance (accroissement additif de ssthresh) Diminution de ssthresh lors d une perte (décroissance multiplicative de ssthresh) Fenêtre de congestion cwnd 52 48 44 40 36 32 28 24 20 16 12 8 4 ssthresh Timeout et retransmission ssthresh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Temps (multiples de RTT) Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 30

Résumé du contrôle de congestion dans TCP La taille de la fenêtre de congestion est variée en fonction de la congestion du réseau Une congestion est détectée à cause de pertes de paquets Slow Start : croissance exponentielle du débit Au début de la connexion et après un timeout de retransmission ( congestion sévère) Permet d augmenter rapidement le débit Congestion avoidance: croissance linéaire du débit Dès que le débit s approche à la capacité disponible Seuil d évitement de congestion ssthresh Indique la zone critique où une congestion est possible Accroissement additif et décroissance multiplicative de ssthresh Ssthresh oscille entre le débit maximum et la moitié de ce débit Jürgen Ehrensberger IICT/HEIG Module TLI 8-Transport 34