UDP/TCP - Protocoles transport



Documents pareils
Couche Transport TCP et UDP

Le protocole TCP. Services de TCP

Introduction. Adresses

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

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

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

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

Dynamic Host Configuration Protocol

Configuration automatique

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

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

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

Rappels réseaux TCP/IP

Configuration automatique

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

TR2 : Technologies de l'internet. Chapitre VII. Serveur DHCP Bootp Protocole, Bail Relais DHCP

DHCP. Dynamic Host Configuration Protocol

Couche application. La couche application est la plus élevée du modèle de référence.

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

18 TCP Les protocoles de domaines d applications

Introduction aux Technologies de l Internet

Principes de DHCP. Le mécanisme de délivrance d'une adresse IP à un client DHCP s'effectue en 4 étapes : COMMUTATEUR 1. DHCP DISCOVER 2.

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

Chapitre : Les Protocoles

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

Réseaux - Cours 3. BOOTP et DHCP : Amorçage et configuration automatique. Cyril Pain-Barre. IUT Informatique Aix-en-Provence

La couche réseau Le protocole X.25

TABLE DES MATIERES. I. Objectifs page 2. II. Types de réseaux page 2. III. Transmission page 2. IV. Câbles page 3. V.

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

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

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

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

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

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

GENERALITES. COURS TCP/IP Niveau 1

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

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

Mr. B. Benaissa. Centre universitaire Nâama LOGO

2. DIFFÉRENTS TYPES DE RÉSEAUX

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

Sécurité des réseaux Firewalls

Liste des ports. 1 sur 6

Le Protocole DHCP. Définition. Références. Fonctionnement. Les baux

Réseaux IUP2 / 2005 IPv6

La collecte d informations

Administration Réseau sous Ubuntu SERVER Serveur DHCP

Réseaux grande distance

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

Administration UNIX. Le réseau

Plan. Programmation Internet Cours 3. Organismes de standardisation

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

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

Installation d un serveur DHCP sous Gnu/Linux

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

Master e-secure. VoIP. RTP et RTCP

Réseaux Internet & Services

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

Réseaux et protocoles Damien Nouvel

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

Cours CCNA 1. Exercices

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

TR2 : Technologies de l'internet. Chapitre VI. NAT statique et dynamique Overloading (PAT) Overlapping, port Forwarding Serveur Proxy, DMZ

Figure 1a. Réseau intranet avec pare feu et NAT.

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

Les Réseaux. les protocoles TCP/IP

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

La couche transport. La couche Transport. La couche Transport et Internet. Cours Réseau Esial 2ème. 5. La couche transport TCP/UDP et les applications

Oléane VPN : Les nouvelles fonctions de gestion de réseaux. Orange Business Services

U.E. ARES - TD+TME n 1

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

Cisco Certified Network Associate

Découverte de réseaux IPv6

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

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

Notice d installation et d utilisation SIP PBX 100

Les Réseaux Informatiques

Algorithmique et langages du Web

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

Algorithmique des Systèmes Répartis Protocoles de Communications

Contrôleur de communications réseau. Guide de configuration rapide DN

module Introduction aux réseaux DHCP et codage Polytech / 5

Technologies de l Internet

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

Le Multicast. A Guyancourt le

Les clés d un réseau privé virtuel (VPN) fonctionnel

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

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

SOMMAIRE : CONFIGURATION RESEAU SOUS WINDOWS... 2 INSTRUCTIONS DE TEST DE CONNECTIVITE... 5

Installation de serveurs DNS, WINS et DHCP sous Windows Server 2003

Notions de Réseaux TCP/IP et environnements Microsoft Windows. Michel Cabaré Novembre 2002 ver 2.0

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

Catalogue & Programme des formations 2015

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

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

Bravo! Vous venez d acquérir un routeur large bande à 4 ports Conceptronic C100BRS4H.

Administration réseau Firewall

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

VOIP. QoS SIP TOPOLOGIE DU RÉSEAU

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

COMMANDES RÉSEAUX TCP/IP WINDOWS.

Transcription:

UDP/TCP - Protocoles transport ISEN/ITII- UDP/TCP 1 Plan UDP : LE PROTOCOLE TRANSPORT DATAGRAM Concept de ports Format du datagramme TCP : LE PROTOCOLE DE TRANSPORT FIABLE Connexion Segmentation Fenêtrage Format du segment BOOTP, DHCP ISEN/ITII- UDP/TCP 2 1

UDP : User Datagram Protocol Applicatif UDP IP ETHERNET Sockets UDP : protocole de transport sans connexion Au service des applicatifs émission de messages applicatifs Sans établissement de connexion au préalable Avec adressage (IP + Transport) Arrivée des messages non garantie information non connue Ordonnancement des messages non garanti ISEN/ITII- UDP/TCP 3 UDP : les ports Identification du service : les ports La communication est établie entre machines identifiées par leurs adresses IP de processus à processus s'exécutant sur ces machines les processus réalisent le service rendu L'adressage des processus est effectué selon un concept abstrait indépendant du système d'exploitation des machines car : les processus sont créés et détruits dynamiquement sur les machines, il faut pouvoir remplacer un processus par un autre (exemple reboot) sans que l'application distante ne s'en aperçoive, il faut identifier les destinations selon les services offerts, sans connaître les processus qui les mettent en oeuvre, un processus doit pouvoir assurer plusieurs services. ISEN/ITII- UDP/TCP 4 2

UDP : les ports Ces destinations abstraites permettant d'adresser un service applicatif s'appellent des ports de protocole. L'émission d'un message se fait sur la base d'un port source et un port destinataire. Les processus disposent d'une interface système leur permettant de spécifier un port ou d'y accéder (socket, TLI,...). Les accès aux ports sont généralement synchrones, les opérations sur les ports sont tamponnés (files d'attente) RESUME : communication UDP = (@IP, Port #) <-> (@IP, Port #) ISEN/ITII- UDP/TCP 5 UDP : format des messages Les messages UDP sont également appelés des datagrammes UDP. Ils contiennent deux parties : un en-tête UDP et les données UDP. 0 16 31 Port UDP source Longueur message UDP Port UDP dest. Checksum UDP Format des messages UDP Données... Les ports source et destination contiennent les numéros de port utilisés : démultiplexage des datagrammes vers les processus en attente le port source est facultatif (égal à zéro si non utilisé). La longueur du message est exprimée en octets (8 au minimum) en-tête + données + champ de contrôle : optionnel (0 si non utilisé) ISEN/ITII- UDP/TCP 6 3

UDP : pseudo en-tête Lorsqu'il est utilisé, le champ de contrôle couvre plus d'informations que celles contenue dans le datagramme UDP; En effet, le checksum est calculé avec un pseudo-en-tête non transmis dans le datagramme: 0 8 16 31 Adresse IP Source Adresse IP Destination zéro proto Longueur UDP Format du pseudo en-tête Le champ PROTO indique l'identificateur de protocole pour IP (17= UDP) Le champ LONGUEUR UPD spécifie la longueur du datagramme UPD sans le pseudo-en-tête. ISEN/ITII- UDP/TCP 7 UDP : Multiplexage UDP multiplexe et démultiplexe les datagrammes en sélectionnant les numéros de ports : une application obtient un numéro de port de la machine locale; tout message émis via ce port champ PORT SOURCE du datagramme UDP = ce numéro de port, une application connaît (ou obtient) un numéro de port distant afin de communiquer avec le service désiré. Lorsque UDP reçoit un datagramme il vérifie que celui-ci est actif et ouvert (associé à une application) le délivre à l'application responsable (mise en queue) si ce n'est pas le cas, il émet un message ICMP port unreachable, et détruit le datagramme. ISEN/ITII- UDP/TCP 8 4

UDP : les ports standards Certains ports sont réservés (well-kown port assignements) No port Mot-clé Description 7 ECHO Echo 11 USERS Active Users 13 DAYTIME Daytime 37 TIME Time 42 NAMESERVER Host Name Server 53 DOMAIN Domain Name Server 67 BOOTPS Boot protocol server 68 BOOTPC Boot protocol client 69 TFTP Trivial File transfert protocol 123 NTP Network Time Protocol 161 SNMP Simple Network Management prot. D'autres numéros de port (non réservés) peuvent être assignés dynamiquement aux applications. ISEN/ITII- UDP/TCP 9 TCP : Transmission Control Protocol transport fiable de la technologie TCP/IP. service en mode connecté garantie de non perte de messages ainsi que de l'ordonnancement Full Duplex ISEN/ITII- UDP/TCP 10 5

TCP : La connexion une connexion de type circuit virtuel est établie avant que les données ne soient échangées Une connexion = une paire d'extrémités de connexion Une extrémité de connexion = couple (adresse IP, port) Exemple de connexion : ((124.32.12.1, 1034), (19.24.67.2, 21)) Une extrémité de connexion peut être partagée par plusieurs autres extrémités de connexions (multi-instanciation) La mise en oeuvre de la connexion se fait en deux étapes : une application (extrémité) effectue une ouverture passive en indiquant qu'elle accepte une connexion entrante, une autre application (extrémité) effectue une ouverture active pour demander l'établissement de la connexion. ISEN/ITII- UDP/TCP 11 Segmentation, contrôle de flux TCP : Segmentation Les données transmises à TCP constituent un flot d'octets de longueur variable. TCP divise ce flot de données en segments en utilisant un mécanisme de fenêtrage. Un segment est émis dans un datagramme IP. Acquittement de messages Contrairement à UDP, TCP garantit l'arrivée des messages, c'est à dire qu'en cas de perte, les deux extrémités sont prévenues. Ce concept repose sur les techniques d acquittement de message : lorsqu'une source S émet un message Mi vers une destination D, S attend un acquittement Ai de D avant d'émettre le message suivant Mi+1. Si l acquittement Ai ne parvient pas à S, S considère au bout d'un certain temps que le message est perdu et reémet Mi : ISEN/ITII- UDP/TCP 12 6

TCP : Acquittements Source Réseau Destination Emission de Mi Temporisation armée Mi n est pas reçu Ai non envoyé Ai n est pas reçu Tempo. échue Réemission de Mi Réception de Mi Emission de Ai Réception de Aj ISEN/ITII- UDP/TCP 13 TCP : le fenêtrage La technique acquittement simple pénalise les performances puisqu'il faut attendre un acquittement avant d'émettre un nouveau message. Le fenêtrage améliore le rendement des réseaux. La technique du fenêtrage : une fenêtre de taille T, permet l'émission d'au plus T messages "non acquittés" avant de ne plus pouvoir émettre : ISEN/ITII- UDP/TCP 14 7

TCP : le Fenêtrage Source Réseau Destination Emission de Mi Emission de Mi+1 Emission de Mi+2 Réception de Mi Emission de Ai Reception de Ai Fenêtrage de taille 3 ISEN/ITII- UDP/TCP 15 TCP : Technique de fenêtrage fenêtrage glissante permettant d'optimiser la bande passante permet également au destinataire de faire diminuer le débit de l'émetteur donc de gérer le contrôle de flux. Le mécanisme de fenêtrage mis en oeuvre dans TCP opère au niveau de l'octet et non pas au niveau du segment; il repose sur : la numérotation séquentielle des octets de données, la gestion de trois pointeurs par fenêtrage : 1 2 3 4 5 6 7 8 9 10 11... Octets émis et acquittés Octets émis et non acquittés Octets émissibles Octets non émissibles tout de suite. ISEN/ITII- UDP/TCP 16 8

TCP : Segments Segment : unité de transfert du protocole TCP. échangés pour établir les connexions, transférer les données, émettre des acquittements, fermer les connexions; 0 4 10 16 24 31 Port source Port destination Numéro de séquence Numéro d acquittement N * 32bits HLEN réservé Codes Checksum fenêtre pointeur urgence Options éventuelles padding Données... ISEN/ITII- UDP/TCP 17 Numéro de séquence TCP : format du segment numéro de séquence du premier octet (NSP) de ce segment A la suite d octets O1, O2,..., On (données du message) est associée la suite de numéro de séquence NSP, NSP+1,..., NSP+n. Il existe deux exceptions à cette règle : lorsque le bit SYN (voir CODE BITS) est positionné, le NSP représente cette donnée de contrôle la suite NSP, NSP+1, NSP+2,..., NSP+n+1, associe la suite de données SYN, O1, O2,..., On lorsque le bit FIN (voir CODE BITS) est positionné, le NSP+n représente cette donnée de contrôle la suite NSP, NSP+1, NSP+2,..., NSP+n+1, associe la suite de données O1, O2,..., On, FIN. Numéro d acquittement prochain numéro de séq. NS attendu par l émetteur de cet acquittement. Acquitte implicitement les octets NS-1, NS-2, etc. Fenêtre : quantité de données que l émetteur de ce segment est capable de recevoir; ceci est mentionné dans chaque segment (données ou acquittement). ISEN/ITII- UDP/TCP 18 9

TCP : Format du segment CODE BITS : indique la nature du segment URG : le pointeur de données urgentes est valide SYN utilisé à l initialisation de la connexion indique où la numérotation séquentielle commence Syn occupe lui-même un numéro de séquence bien que ne figurant pas dans le champ de données Le Numéro de séquence inscrit dans le datagramme est alors un Initial Sequence Number (ISN) produit par un générateur garantissant l unicité de l ISN sur le réseau FIN : utilisé lors de la libération de la connexion ISEN/ITII- UDP/TCP 19 TCP : Format du segment (suite) PSH : fonction push Normalement en émission, TCP reçoit les données depuis l applicatif, les transforme en segments à sa guise (optimisation / MTU), transfère les segments sur le réseau; En émission Push Pas d optimisation Émission immédiate En réception,tcp décodant le bit PSH Transmet à l application réceptrice, les données correspondantes sans attendre plus de données de l émetteur. Exemple : émulation terminal, pour envoyer chaque caractère entré au clavier (mode caractère asynchrone). ISEN/ITII- UDP/TCP 20 10

TCP : format du segment RST : utilisé par une extrémité pour indiquer à l autre extrémité qu elle doit réinitialiser la connexion. Ceci est utilisé lorsque les extrémités sont désynchronisées. Exemple : TCP source TCP destination Crash Closed Syn-sent seq=400 CTL=SYN?? Syn-sent seq=100 CTL=RST Syn-sent Established?? seq=300 ack=100 CTL=SYN abort close Syn-sent seq=100 CTL=RST ISEN/ITII- UDP/TCP 21 TCP format du segment CHECKSUM : calcul du champ de contrôle : utilise un pseudo-en-tête et s'applique à la totalité du segment obtenu (PROTO =6) : Adresse IP source Adresse IP destination zéro protocole (6) longueur TCP ISEN/ITII- UDP/TCP 22 11

TCP : acquittements Acquittements et retransmissions Le mécanisme d acquittement de TCP est cumulatif : il indique le numéro de séquence du prochain octet attendu : tous les octets précédents cumulés sont implicitement acquittés Si un segment dont le numéro de séquence est supérieur au numéro de séquence attendu (bien que dans la fenêtre), le segment est conservé mais l acquittement référence toujours le numéro de séquence attendu. Pour tout segment émis, TCP s attend à recevoir un acquittement Si le segment n est pas acquitté, le segment est considéré comme perdu et TCP le retransmet. Or un réseau d interconnexion offre des temps de transit variables nécessitant le réglage des temporisations; TCP gère des temporisations variables pour chaque connexion en utilisant un algorithme de retransmission adaptative ISEN/ITII- UDP/TCP 23 TCP : retransmissions algorithme de retransmission adaptative enregistre la date d émission d un segment, enregistre la date de réception de l acquittement correspondant, calcule l échantillon de temps de boucle A/R écoulé, détermine le temps de boucle moyen RTT (Round Trip Time) : RTT = (a * anc_rtt) + ((1-a) * NOU_RTT)) avec 0<= a < 1 a proche de 1 : RTT insensible aux variations brèves, a proche de 0 : RTT très sensible aux variations rapides, calcule la valeur du temporisateur en fonction de RTT. Les premières implémentations de TCP ont choisi un coefficient constant B pour déterminer cette valeur : Temporisation = B * RTT avec B >1 (généralement B=2). Aujourd hui de nouvelles techniques sont appliquées pour affiner la mesure du RTT : l algorithme de Karn. ISEN/ITII- UDP/TCP 24 12

TCP : connexion Une connexion TCP est établie en trois temps de manière à assurer la synchronisation nécessaire entre les extrémités : TCP source TCP destination Syn seq=x Syn seq=y,ack=x+1 Ack y+1 Ce schéma fonctionne lorsque les deux extrémités effectuent une demande d'établissement simultanément. TCP ignore toute demande de connexion, si cette connexion est déjà établie. ISEN/ITII- UDP/TCP 25 TCP : déconnexion Une connexion TCP est libérée en un processus dit "trois temps modifié": TCP source TCP destination Fin seq=x ack=x+1 + fin-> applicatif Applicatif -> close Fin seq=y ack=x+1 Ack y+1 ISEN/ITII- UDP/TCP 26 13

TCP : L automate Réinitialisation Départ fermeture Fermé ouverture passive ouverture active/ SYN SYN/SYN+ACK Ecoute (Listen) Send SYN SYN reçu RST SYN/SYN+ACK SYN Fermer émis RST Tempo. exp. ACK Etablie SYN+ACK/ACK Close/FIN Fermer/FIN FIN/ACK Attente Fermer FIN (send) FIN Attente -1 FIN/ACK Fermeture en cours Dernier ACK rcv ACK rcv ACK of FIN rcv ACK of FIN tempo. expire aprés 2 durée de vie de segment FIN Tempo. Attente FIN / ACK expirée ISEN/ITII- UDP/TCP -2 27 TCP : ports standards No port Mot-cléDescription 20 FTP-DATA File Transfer [Default Data] 21 FTP File Transfer [Control] 23 TELNET Telnet 25 SMTP Simple Mail Transfer 37 TIME Time 42 NAMESERVER Host Name Server 43 NICNAME Who Is 53 DOMAIN Domain Name Server 79 FINGER Finger 80 HTTP WWW 110 POP3 Post Office Protocol - Version 3 111 SUNRPC SUN Remote Procedure Call ISEN/ITII- UDP/TCP 28 14

BOOTP, DHCP Réponses aux inconvénients de RARP au niveau de l interface (programmation driver) allocation statique d adresse en fonction de l adresse MAC pas de masque, ni adresse de passerelle, ni DNS, etc. applicable uniquement sur le réseau BOOTP fonctionne sur UDP/IP utilise le broadcasting, relayage possible sur les routeurs mécanisme de retransmissions pour améliorer le processus ISEN/ITII- UDP/TCP 29 BOOTP, DHCP Res/Resp Hard Type Hard length Hop num. Transaction ID Seconds UNUSED Unused Client IP address Your IP address Server IP address Router IP address Client HW address Server Host name Boot file name Vendor specific ISEN/ITII- UDP/TCP 30 15

Inconvénient de Bootp adressage statique BOOTP, DHCP aspect nomade des stations non pris en compte DHCP permet l adressage dynamique, augmente l espace d adressage relatif, allocation des adresses IP par plages, gestion d un bail par adresse, Format compatible BOOTP champ Unused remplacé par des flags champ Vendor remplacé par Options durée du bail, acquittements, etc. Couplage DHCP/DNS ISEN/ITII- UDP/TCP 31 16