0% ont trouvé ce document utile (0 vote)
78 vues28 pages

Protocoles IP

Le document décrit la famille de protocoles TCP/IP et les concepts clés des réseaux informatiques. Il explique l'architecture d'un internet et les propriétés d'interconnexion des réseaux hétérogènes de manière transparente aux applications.

Transféré par

abdoulkassoumd
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
78 vues28 pages

Protocoles IP

Le document décrit la famille de protocoles TCP/IP et les concepts clés des réseaux informatiques. Il explique l'architecture d'un internet et les propriétés d'interconnexion des réseaux hétérogènes de manière transparente aux applications.

Transféré par

abdoulkassoumd
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

R.

CHALON

Protocoles TCP/IP
Mastère "réseaux" - 2000

1- Concepts et modèle d'un internet


2- Adressage IP
3- Protocoles IP
4- Protocoles de transport
5- IPv6

R. CHALON Protocoles TCP/IP 1

1ère partie: Concepts et modèle d'un internet

u Problème: comment faire communiquer des ordinateurs sur des


réseaux hétérogènes ?
u 2 modèles d ’interconnexion:
u Interconnexion au niveau application:
n les applications établissent directement les connexions aux réseaux
pour communiquer entre elles:
è supporter "tous" les réseaux possibles (?!)
n les applications coopèrent entre elles pour acheminer les informations
sur les réseaux hétérogènes:
è passerelle d'application; exemple de la messagerie électronique
u Interconnexion au niveau réseau:
n Séparer la communication des données de l’application

n Offrir un mécanisme de transmissions de paquets indépendant des


applications

R. CHALON Protocoles TCP/IP 2

Protocoles TCP/IP 1
R. CHALON

Interconnexion au niveau réseau

u Deux considérations :
u Un seul réseau ne peut satisfaire tous les besoins des utilisateurs:
n LAN rapides mais distances faibles,

n WAN plus lents,

n Satellites pour la multi-diffusion,

n etc...

u Les utilisateurs souhaitent un moyen d ’interconnexion universel:


n ne pas être limité aux bornes physiques du réseau

n ne pas utiliser des applications différentes selon les réseaux utilisés

u Solution d ’un internet:


u interconnecter les réseaux hétérogènes de manière transparente
aux applications en masquant les détails des réseaux
u Système de communication abstrait

R. CHALON Protocoles TCP/IP 3

Propriétés d'un internet


u Cacher l'architecture sous-jacente :
è les applications ne doivent pas connaître les détails des
connexions physiques
u Ne pas imposer de topologie particulière de réseau :
è l'ajout d'un nouveau réseau ne doit pas impliquer sa connexion à
un ordinateur central ou sa connexion à tous les réseaux existants
u Possibilité d'envoyer des informations à travers des réseaux
intermédiaires
è notion de réseaux relais
u Tous les ordinateurs doivent partager un ensemble
d'identificateurs qui est universel:
è notions d'adresses et/ou de noms
u Indépendance de l'interface utilisateur vis-à-vis du réseau :
è Les actions pour établir une communication restent indépendantes
des réseaux sous-jacents et du type d'ordinateur destinataire

R. CHALON Protocoles TCP/IP 4

Protocoles TCP/IP 2
R. CHALON

Architecture d’un internet

u Interconnexion de 2 réseaux différents:


u machine spécialisée connectée à chaque réseau
u passerelle IP [Internet gateway] ou routeur IP [Internet router]
u Le routeur permet d'acheminer les paquets d'informations au
travers de l'internet
u Exemple: R prend sur le réseau 1 les blocs de données destinés
aux ordinateurs du réseau 2 et vice-versa

Réseau 1 R Réseau 2

u Cf. cours sur le routage

R. CHALON Protocoles TCP/IP 5

Point de vue de l'utilisateur

u Réseau vu par l'utilisateur: u Réseau réel:


u chaque ordinateur semble être u les divers réseaux et routeurs
raccordé à un réseau unique qui constituent l'internet
ordinateurs

Réseaux
sous-jacents
R
R
R

R
R

routeurs

R. CHALON Protocoles TCP/IP 6

Protocoles TCP/IP 3
R. CHALON

Famille de protocoles TCP/IP (1/3)

u La famille TCP/IP se situe aux niveaux 3 et 4 du modèle OSI


OSI Internet

7
Autres
Application FTP SMTP DNS SNMP Telnet
...
5 Messages

4 Transport TCP UDP Segments

ICMP Datagram-
ARP RARP IP
3 Réseau mes

2 Trames
Ethernet Liaison Autres
Matériel X25
Token-Ring spécialisée ...
1

R. CHALON Protocoles TCP/IP 7

Famille de protocoles TCP/IP (2/3)

u Niveau réseau :
u IP [Internet Protocol] : protocole assurant le service de base de
remise de paquets non-fiable en mode non-connecté
u ARP [Address Resolution Protocol] : protocole permettant de faire
le lien entre une adresse IP et une adresse du réseau sous-jacent
u RARP [Reverse ARP] : protocole permettant à une machine
d'obtenir automatiquement une adresse IP au démarrage
u ICMP [Internet Control Message Protocol] : protocole permettant
d'échanger des informations d'administration
u Niveau transport:
u TCP [Transmission Control Protocol] : protocole assurant un
service de transport fiable en duplex intégral, en mode connecté et
de bout en bout
u UDP [User Datagram Protocol] : protocole assurant un service de
transport non-fiable en duplex intégral, en mode non-connecté

R. CHALON Protocoles TCP/IP 8

Protocoles TCP/IP 4
R. CHALON

Famille de protocoles TCP/IP (3/3)

u Niveau application :
u FTP [File Transfer Protocol] : protocole de transfert de fichier entre
2 ordinateurs
u SMTP [Simple Mail Transfer Protocol] : protocole de transfert de
message pour le service de messagerie électronique
u DNS [Domain Name Server] : protocole permettant de faire
correspondre à un nom de machine son adresse IP
u Telnet : protocole permettant de fournir un service de terminal
virtuel pour un accès interactif à des ordinateurs
u SNMP [Simple Network Management Protocol] : protocole pour
l'administration de réseaux

u Cf. cours sur les Applications sur TCP/IP

R. CHALON Protocoles TCP/IP 9

Notes sur la normalisation (1/2)

u Normalisation:
u Un document est écrit par un groupe souhaitant proposer une idée
sous la forme d ’un RFC
u Si cela présente suffisamment d ’intérêt alors il lui est donné l ’état
de proposed standard (PS)
u Pour devenir DS (draft standard) il faut qu’une implémentation ait
été testée sur 2 sites différents pendant au moins 4 mois
u si l ’IAB est convaincu que l ’idée est bonne et si le logiciel
fonctionne bien, alors le RFC devient un Internet standard (IS)
u Les normes ont ensuite des statuts:
n Exigé [required]: toute machine utilisant IP doit implémenter ce RFC
n Recommandé [recommanded]
n Facultatif [elective]
n Usage limité [limited use]: protocole expérimental (usage déconseillé)
n Non recommandé [not recommended]: protocole périmé

R. CHALON Internet, Intranet et les applications sur TCP/IP 10

Protocoles TCP/IP 5
R. CHALON

Notes sur la normalisation (2/2)

u Les RFC contiennent donc:


u les normes réseau (exemple: IP: RFC 791)
u les normes des applications (exemple: FTP: RFC 959)
u des informations générales
è numérotées par ordre croissant. Lorsqu’il y a une nouvelle version
d ’un standard elle porte un nouveau numéro mais elle garde le
même titre (différent de l ’OSI)
u Il existe aussi les FYI [For Your Information] qui sont une
sélection de RFC d ’intérêt général
u Les RFC sont disponibles gratuitement sur l ’Internet
(contrairement à l ’OSI où les normes sont payantes et chères!):
è http://www.pasteur.fr/other/computer/RFC/
u Aujourd’hui plus de 2700 RFC ! (RFC 2795, 1er avril 2000)
u le document STD1 contient la liste des standards et est
régulièrement ré-édité (actuellement RFC 2600, mars 2000)
R. CHALON Protocoles TCP/IP 11

2ème partie: Adressage IP


u Adresses de 4 octets (32 bits) notées : www.xxx.yyy.zzz
u 2 parties : numéro de réseau numéro d'hôte

01234 8 16 24 31
u Classe A 0 réseau hôte 128 réseaux de 16
millions d'hôtes
Adresses de 1.0.0.0 à 126.0.0.0
16384 réseaux de
u Classe B 10 réseau hôte 64536 hôtes
Adresses de 128.0.0.0 à 191.255.0.0
Plus de 2 millions de
u Classe C 110 réseau hôte réseaux de 256 hôtes
Adresses de 192.0.0.0 à 223.255.255.0
Plus de 250 millions
u Classe D 1110 adresse multicast de groupes de
Adresses de 224.0.0.0 à 239.255.255.255 diffusion

u Classe E 11110 réservé pour usage futur

R. CHALON Protocoles TCP/IP 12

Protocoles TCP/IP 6
R. CHALON

Adresses particulières

u Adresse d'un réseau N° réseau Tout à 0


u exemple: 156.18.0.0 (réseau de l'Ecole Centrale)
u Adresse de diffusion dirigée N° réseau Tout à 1
u permet de s'adresser à tous les hôtes d'un réseau
u exemple: 156.18.255.255 (tous les hôtes de l'ECL)
u Adresse de diffusion "locale" Tout à 1
u ne sort pas du réseau
u "Cet" ordinateur: Tout à 0
u utilisable au boot seulement (pour RARP)
u Ordinateur sur "ce" réseau Tout à zéro N° hôte
u utilisable au boot seulement (pour RARP)
u Rebouclage 127 Nb quelconque (souvent 1)
u ne doit jamais apparaître sur un réseau

R. CHALON Protocoles TCP/IP 13

Attribution des adresses (1/2)

u ICANN [Internet Corporation for Assigned Names and Numbers]


est le nouvel organisme chargé :
nde l'allocation des adresses IP
n de la gestion des noms de domaine

n de l'homologation des protocoles et de leurs paramètres

n de la gestion des serveurs racines

u Organisme international indépendant et qui se veut géré par la


communauté Internet
è plus d'info sur: www.icann.org
u Provisoirement, les adresses sont toujours gérées par l'IANA
[Internet Assigned Number Authority] : www.iana.org
u organisme dépendant du gouvernement américain
u Règle d'attribution fixée par le RFC 2050

R. CHALON Protocoles TCP/IP 14

Protocoles TCP/IP 7
R. CHALON

Attribution des adresses (2/2)

u L'attribution est délèguée à un RIR [Regional Internet Registry] :


u ARIN [American Registry for Internet Numbers] : www.arin.net
u RIPE [Réseaux IP européens] : www.ripe.net
u APNIC [Asia Pacific Network Information Center] : www.apnic.net
u Les fournisseurs d'accès ont eux-mêmes délégation pour
attribuer les groupes d'adresses de leurs clients
u Attribution des adresses des machines dans le réseau :
u par l'administrateur du réseau
u Aujourd'hui, il y a tendance à la pénurie :
u toutes les classes A sont allouées ou réservées
u les classes B sont presque toutes épuisées
u plus de la moitié des classes C sont attribuées
u Solutions transitoires en attendant IP v6

R. CHALON Protocoles TCP/IP 15

Sous-réseaux IP

u Découpage d'un réseau en entités plus petites :


u création de sous -réseaux par l'administrateur du site
u les sous-réseaux ne sont pas visibles à l'extérieur du site
u Les équipements (hôtes et routeurs) doivent savoir les gérer
u les routeurs sont chargés de l'interconnexion
u Utilisation d'un "masque": réseau ss-rés. hôte
masque: tout à 1 tout à 0
u Exemple : Ecole Centrale:
156.18.0.0 (classe B) découpé en 255 sous-réseaux de 255 hôtes
n 156.18.22.0, masque=255.255.255.0 : sous-réseau du SRI

n 156.18.36.0, masque=255.255.255.0 : sous-réseau de ICTT

u On note aussi le nb de bits à 1:


n 156.18.22.0/24 : masque avec 24 bits à 1 = 255.255.255.0

R. CHALON Protocoles TCP/IP 16

Protocoles TCP/IP 8
R. CHALON

Faiblesses de l'adressage Internet

u Les adresses ne font pas références à des ordinateurs mais à


des points d'accès au réseau:
u un ordinateur connecté à plusieurs réseaux possède plusieurs
adresses
u un ordinateur doit changer d'adresse s'il change de réseau
u solution: utiliser DHCP [Dynamic Host Configuration Protocol]
u Les classes sont mal découpées:
u les classes C sont trop petites, les classes B trop grandes
u Solution : faire l'agrégation de classes C consécutives et utiliser
CIDR [Classless Inter-Domain Routing]
u Pénurie d'adresses:
u Solution: utiliser des adresses privées en interne et les ré-écrire
avec NAT [Network Address Translation]
u Solutions à ces faiblesses : IPv6 !!!

R. CHALON Protocoles TCP/IP 17

Correspondance adresse IP - adresse réseau


u Les adresses IP sont indépendantes des adresses des réseaux
sous-jacents :
u mise en relation directe :
n table statique de correspondance (avec X25: IPóX121, RFC 877)

n la partie "hôte" est l'adresse dans le réseau sous-jacent

u mise en relation dynamique : protocole ARP (RFC 826)


u Principe de ARP sur réseau Ethernet :

A X B Y A X B Y

De: [IPA / EthA] De: [IPB / EthB]


A: [tous / tous] A: [IPA / EthA]
Quelle est l'adresse c'est moi !
Eth. de l'hôte IPB ?

R. CHALON Protocoles TCP/IP 18

Protocoles TCP/IP 9
R. CHALON

Protocole ARP sur Ethernet

u Utilise des trames Ethernet II, "type"=080616


u Format du datagramme ARP:
080016 pour IP
1 pour Ethernet

0 8 16 24 31
type réseau type d'adresse de proto
lg adr phy lg adr prot opération
adr Eth émetteur (octets 0 à 3)
adr Eth émetteur (oct. 4 & 5) adr IP émetteur (oct. 0 & 1)
adr IP émetteur (oct. 2 & 3) adr Eth récepteur (oct. 0 & 1)
adr Eth récepteur (octets 2 à 5)
adr IP récepteur (oct. 0 à 3)
1=demande
Longueur des adresses (en octets) = 6 et 4
2=réponse

R. CHALON Protocoles TCP/IP 19

3ème partie: Protocole IP

u IP assure les fonctionnalités de la couche 3 de l'OSI:


u Il permet le transfert de paquets (appelés datagrammes) entre deux
ordinateurs (éventuellement en traversant plusieurs réseaux)
u Caractéristiques :
u mode non-connecté
u transfert non fiable des données (la fiabilité des réseaux traversés)
IP fait au mieux (best effort protocol)
u taille maximale d'un datagramme= 64 Ko; il peuvent être
fragmentés en fonction de la nature des réseaux traversés
u Services assurés :
u adressage : tout équipement (ordinateur et routeur) dispose d'une
ou plusieurs adresses
u routage : acheminement des paquets entre deux réseaux sous-
jacents
u Version actuelle: version 4 (appelée IPv4) - RFC 791 (STD 5)
R. CHALON Protocoles TCP/IP 20

Protocoles TCP/IP 10
R. CHALON

Datagramme IP (1/3)
=4 (pour cette version)
long. en-tête (en dword) long. en-tête + données
(en octets)
=5 (si pas d'options)
0 8 16 19 24 31
version lg ent type de service longueur totale
identification indic. décalage fragment
TTL protocole somme de contrôle de l'en-tête
adresse IP source
adresse IP destination
options IP (éventuelles) bourrage
données

3 champs pour la gestion n° protocole de niveau supérieur


de la fragmentation 6=TCP, 17=UDP, 1=ICMP, ...

R. CHALON Protocoles TCP/IP 21

Datagramme IP (2/3)

u Type de service : 0 3 4 5 7
inutilisé
prioté DTR -
Priorité:
0=normale à 1= fiabilité
7=supervision 1= délai court
1= débit élevé

u la priorité permet, en cas de congestion, que les informations de


contrôle du réseau puissent circuler (sans être victimes elles-
mêmes de la congestion !)
u D, T et R permettent aux routeurs de choisir le chemin qui
correspond à ces critères (s'ils ont le choix !)
u Somme de contrôle:
u complément à un de la somme de tous les mots de l'en-tête
u ne vérifie que l'en-tête pas les données ! C'est aux couches
supérieures de vérifier l'intégrité des données

R. CHALON Protocoles TCP/IP 22

Protocoles TCP/IP 11
R. CHALON

Datagramme IP (3/3)

u TTL [Time to Live] = durée de vie


u exprime en secondes, la durée maximale de transit d'un paquet
u chaque routeur doit décrémenter la valeur (en pratique, le TTL
compte donc le nb de routeurs traversés)
u le datagramme est détruit quand TTL=0
è évite au datagramme de circuler indéfiniment en cas de boucle

u Options:
u routage par la source 0=datagramme ou supervision
u enregistrement de routes 2=mise au point et mesures
u etc... 1,3=réservés usage ultérieur
0 1 3 7
C classe n° d'option paramètres éventuels...
1=copier dans Long. dépend de l'option
chaque fragment (+ bourrage éventuel)

R. CHALON Protocoles TCP/IP 23

Fragmentation des datagrammes IP (1/2)

u Problème: un datagramme IP peut être plus grand que la taille


maximale de trame admise par le réseau sous-jacent
n Ethernet = 1500 octets MTU [Maximum Transfer Unit]
n FDDI = 4470 octets (exprimé en données utiles !)
u Solution: un routeur peut fragmenter un datagramme pour qu'il
respecte le MTU du réseau sous-jacent
Réseau 3 B
en-tête données MTU=1500
1400 octets
en-tête f1 données R2
600 octets Réseau 2
MTU=620
en-tête f2 données R1
600 octets
en-tête f3 données Réseau 1
200 octets
A MTU=1500

R. CHALON Protocoles TCP/IP 24

Protocoles TCP/IP 12
R. CHALON

Fragmentation des datagrammes IP (2/2)

u Le champ "identification" contient un n° unique de datagramme


u Le champ "décalage fragment" contient la localisation du
fragment par rapport au début du bloc initial de données
u exprimé sous la forme d'un multiple de 8 octets
u donc les fragments doivent être des multiples de huit !
u Champ "indicateurs":
0 1 2
1= fragment à suivre
- DF MF (à 0 dans dernier fragment)
inutilisé
1= ne pas fragmenter

u Ré-assemblage du datagramme initial :


u utilisation du champs "identification"
u les fragments sont ré-assemblés par l'ordinateur destinataire et
non par les routeurs

R. CHALON Protocoles TCP/IP 25

Fonctions non assurées par IP

u IP n'assure pas :
u le multiplexage:
è plusieurs flux de donnés simultanés

u la vérification du séquencement :
è les paquets peuvent arriver en désordre, voire dupliqués

u la détection de perte:
è doit être assurée par les couches supérieures

u la retransmission en cas d'erreur:


è doit être assurée par les couches supérieures

u le contrôle de flux:
è assuré en partie par ICMP

R. CHALON Protocoles TCP/IP 26

Protocoles TCP/IP 13
R. CHALON

Protocole ICMP (RFC 792)

u ICMP [Internet Control Message Protocol] gère les messages


d'erreurs et de contrôle entre les différents systèmes
u Caractéristiques:
u utilise IP (champ protocole=1)
u permet de palier au manque de services d'IP
u Protocole obligatoire sur tous les équipements IP !
u il ne demande pas de réponse: un message ICMP ne doit pas
engendrer un autre message ICMP
u Message renvoyé à l'expéditeur par l'équipement destinataire ou
le routeur intermédiaire :
u Quand il s'aperçoit d'un problème dans le datagramme:
è par exemple: TTL expiré

u Pour avertir l'émetteur afin qu'il modifie son comportement


è par exemple: demande de ralentir l'émission

R. CHALON Protocoles TCP/IP 27

Message ICMP

u Format du message:
0 8 16 24 31
type code somme de contrôle du message
données ICMP

u Chaque type de message a un format particulier:


u 22 types définis
u Les messages ICMP qui rendent compte d'erreurs renvoient
toujours les 64 premiers bits du datagramme IP fautif:
è permet de localiser facilement les problèmes provenant de
protocoles de plus haut niveau

R. CHALON Protocoles TCP/IP 28

Protocoles TCP/IP 14
R. CHALON

Exemples de messages ICMP

u Messages d'echo (Cf. commande ping):


u permet de tester la connectivité entre 2 machines
u demandes (type=8, code=0), réponses (type=0, code=0)
u Compte-rendu de pb de paramètres (type=12, code=0 ou 1):
u permet de renvoyer des erreurs sur l'en-tête IP ou les options
u Destination inaccessible (type=3):
u code=0: réseau inaccessible
u code=1: ordinateur inaccessible
u code=3: port TCP ou UDP inaccessible
u etc… (13 codes en tout)
u Contrôle de flux:
u Demande de ralentissement de l'émission [source quench] (4,0)
u Durée de vie dépassée (type=11, code=0)
u Demande de modifications de routes (type=5, code=0 à3)
R. CHALON Protocoles TCP/IP 29

4ème partie: Protocoles de transport

u Deux protocoles pour la communication entre applications:


u TCP [Transmission Control Protocol]:
u UDP [User Datagram Protocol]:
u Ils sont placés fonctionnellement au niveau 4 de l'OSI
u Comparaison:
TCP UDP
Orienté connexion oui non
Circuit virtuel oui non
Fiabilité (contrôle d'erreur) oui non
Contrôle de flux oui non
multiplexage oui oui
Taille des messages illimitée 64 Ko

R. CHALON Protocoles TCP/IP 30

Protocoles TCP/IP 15
R. CHALON

Protocole TCP

u TCP [Transmission Control Protocol] fournit un service de


transport fiable de bout en bout entre 2 applications
u Caractéristiques:
u mode connecté
u établissement d'un circuit virtuel bidirectionnel
u transport fiable: correction d'erreur, re-séquencement, …
u transferts tamponnés: grouper les petits messages
u connexions non structurées : transport de flots d'octets
u contrôle de flux
u multiplexage : plusieurs connexions simultanées
u possibilité de données prioritaires (données urgentes + "push")
u Taille des messages non-limitée:
è les messages sont décomposés en segments de 64 Ko max pour
être passés à la couche IP
u Défini par la RFC 793 (STD 7)
R. CHALON Protocoles TCP/IP 31

Segment TCP (1/3)

u Format du segment:

long. en-tête (en dword)


=5 (si pas d'options)
0 4 8 10 16 24 31
port source port destination
numéro de séquence
numéro d'accusé de réception
lg ent réservé indicateurs fenêtre
somme de contrôle pointeur données urgentes
options TCP (éventuelles) bourrage
données

R. CHALON Protocoles TCP/IP 32

Protocoles TCP/IP 16
R. CHALON

Segment TCP (2/3)

u Champ indicateurs: 0 1 2 3 4 5

URG
ACK

SYN
PSH
RST

FIN
u URG=1 : données urgente
u ACK=1 : le champs accusé de réception est valide
u PSH=1 : "push" requit = envoyer immédiatement les données
u RST=1 : ré-initialiser la connexion
u SYN=1 : synchroniser les n° de séquence
u FIN=1 : l'émetteur a atteint la fin de son flot de données
u En pratique:
u SYN=1, ACK=0 : demande de connexion
u SYN=1, ACK=1 : connexion acceptée

R. CHALON Protocoles TCP/IP 33

Segment TCP (3/3)

u Calcul de la somme de contrôle:


u Avant le calcul un pseudo-en-tête est ajouté:
0 8 16 24 31
adresse IP source
adresse IP destination
0 protocole longueur TCP

=6 pour TCP (Cf protocole IP) long. totale du segment


(en-tête + données)

u + un octet à 0 est éventent ajouté pour obtenir un multiple de 16 bits


u La somme de contrôle est calculée sur l'ensemble des mots
(arithmétique en complément à 1) puis son complément à 1 est
rangé dans le champ "somme de contrôle"
u le pseudo-en-tête et l'octet de bourrage ne sont pas transmis !

R. CHALON Protocoles TCP/IP 34

Protocoles TCP/IP 17
R. CHALON

Ports (1/2)

u Ils permettent le multiplexage des communications :

Appli 1 Appli 2 Appli 3

Port 1 Port 2 Port 3

UDP
TCP
démultiplexage ICMP

démultiplexage par le n° de protocole


IP

Arrivée des datagrammes

R. CHALON Protocoles TCP/IP 35

Ports (2/2)

u 2 champs par segment: "port source" et "port destination"


u Toute connexion TCP est identifiée par un quadruplet:
<adr IP source, n° port source, adr IP dest., n° port dest>
è possibilité d'utiliser plusieurs fois le même port !
u Utilisation en client-server:
N° port Protocole
u Il existe des n° réservés pour les 20 FTP - données
applications "classiques": 21 FTP - contrôle
è Donnés par la RFC 1700 (STD 2) 23 Telnet
"Assigned numbers" 25 SMTP
u Les serveurs "écoutent" ce port pour 53 DNS
attendre de nouvelles connexions 80 HTTP
u Les clients doivent donc utiliser des etc...
n° de ports >1000 pour éviter toute
confusion

R. CHALON Protocoles TCP/IP 36

Protocoles TCP/IP 18
R. CHALON

Fiabilité du service de transport (1/3)

u La fiabilité est assurée par des accusés de réception avec


retransmission en cas d'erreur:
Emetteur Réseau Dest. Emetteur Réseau Dest.

émet émet paquet


reçoit
paquet 1 initialise paquet 1 perdu
paquet 1
timer
émet Pas
reçoit ACK 1 de ACK
ACK 1

re-émet
reçoit
timer paquet 1
paquet 1
expire
émet
reçoit ACK 1
ACK 1

R. CHALON Protocoles TCP/IP 37

Fiabilité du service de transport (2/3)

u Problème d'efficacité de l'acquittement paquet par paquet:


u il faut attendre l'accusé de réception du paquet précédent pour
pouvoir transmettre le suivant ==> perte de temps
u Solution: fenêtre glissante [Sliding window]
u émettre plusieurs paquets d'avance avant d'avoir à attendre un
accusé de réception
u exemple: fenêtre de huit paquets

Fenêtre initiale

1 2 3 4 5 6 7 8 9 10 11 ... NOTE:
Il faut gérer un
Après ACK du 1er paquet, tampon à chaque
la fenêtre a glissé extrémité de la
connexion !
1 2 3 4 5 6 7 8 9 10 11 ...

R. CHALON Protocoles TCP/IP 38

Protocoles TCP/IP 19
R. CHALON

Fiabilité du service de transport (3/3)

u TCP utilise une fenêtre glissante au niveau de l'octet:


u les octets sont numérotés séquentiellement
u 3 pointeurs:
1 2 3 4 5 6 7 8 9 10 11 ...

octets envoyés et acquittés dernier octet qui


frontière entre octets envoyés et non-envoyés peut être envoyé

u Champs utilisés dans l'en-tête:


u N° de séquence:
è donne le numéro du 1er octet transmis dans le segment

u N° d'accusé de réception:
è donne le numéro du prochain octet attendu, donc tous les octets
précédents sont acquittés (attention c'est le flot inverse de ci-dessus !)
u TCP est bidirectionnel ==> 2 fenêtres dans chaque sens

R. CHALON Protocoles TCP/IP 39

Contrôle de flux (1/3)

u La taille de la fenêtre peut être modifiée:


u le destinataire peut envoyer une nouvelle taille de fenêtre avec
l'ACK du paquet précédent
u diminuer la taille de la fenêtre en cas de surcharge
u Champ utilisé dans l'en-tête:
u "Fenêtre":
è donne la taille maximale de la fenêtre en octet que la machine peut
accepter
u Un mécanisme de contrôle de flux est indispensable:
u hétérogénéité des machines:
è TCP résoud ce problème

u réseaux et routeurs de différentes capacités:


è TCP se repose sur ICMP (source quench)

R. CHALON Protocoles TCP/IP 40

Protocoles TCP/IP 20
R. CHALON

Contrôle de flux (2/3)

u TCP utilise un algorithme adaptatif:


u prendre en compte le temps de transmission aller/retour
RTT [Round Trip Time] = temps de boucle moyen
u prendre en compte le taux de perte
u but: éviter la congestion
u Principe de l'algorithme:
u démarrage lent:
n commencer par fenêtre = 1 segment

n si ACK OK alors doubler la taille de la fenêtre

n lorsque taille dépasse le seuil d'évitement de congestion (32 Ko au


démarrage) alors augmenter la fenêtre de 1 segment à chaque fois
u diminution dichotomique:
n si paquet perdu alors seuil d'évitement de congestion = taille fenêtre /2

n recommencer le démarrage lent

R. CHALON Protocoles TCP/IP 41

Contrôle de flux (3/3)

u Exemple:
44 seuil d'évitement
de congestion expiration du
40 temporisateur
36
32
28 2ème seuil
Remarque: 24
20
si paquet ICMP
"source quench" 16
même effet que 12
perte de paquet 8
4
0
0 2 4 6 8 10 12 14 16 18 20 22 24

R. CHALON Protocoles TCP/IP 42

Protocoles TCP/IP 21
R. CHALON

Options et données urgentes

u Négociation du plus grand segment:


u Utilisation du champ "options" pour négocier le MSS [Maximum
Segment Size] = taille maximale de segment
u Idée: choisir la plus grande valeur mais éviter la fragmentation
u En général:
n si sur le même réseau, prendre le MTU du réseau diminué de 40
(exemple sur Ethernet = 1460)
n sinon on conseille 536 (576-40)

u Données urgentes:
u Permettre d'envoyer des données prioritaires sur le flot normal
==> utiles pour "interrompre" un programme qui fonctionne mal
u Champs utilisés:
n indicateur URG=1

n "pointeur données urgentes": indique le dernier octet de données


urgentes (avant les données normales)
R. CHALON Protocoles TCP/IP 43

Etablissement d'une connexion TCP

u Connexion en 3 temps:
Emetteur Réseau Destinataire

émet segment SYN séq=x0


reçoit segment SYN

émet segment
SYN séq=y0, ACK x0+1

émet segment ACK y0+1


reçoit segment ACK

u Toute demande de connexion supplémentaire qui arrive après


que la connexion est établie doit être ignorée:
u permet de résoudre les problèmes posés par la non-fiabilité de IP
u résout aussi les cas de connexions simultanées

R. CHALON Protocoles TCP/IP 44

Protocoles TCP/IP 22
R. CHALON

Libération d'une connexion TCP

u Libération en 3 temps modifiés:


Emetteur Réseau Destinataire

émet segment FIN séq=x


reçoit segment FIN

émet segment ACK x+1

émet segment
FIN séq=y, ACK x+1

émet segment ACK y+1


reçoit segment ACK

u Les 2 flux étant indépendants, la libération doit fermer chaque


sens

R. CHALON Protocoles TCP/IP 45

Automate à nombre d'états finis


Fermé
connect/SYN
listen/- close/- Légende:
SYN/SYN+ACK close/-
Ecoute chemin
normal serveur
RST/- send/SYN
SYN reçu SYN émis chemin
SYN/SYN+ACK
normal client
ACK/- connexion SYN+ACK/ACK
close/FIN autres
établie
close/FIN FIN/ACK
événent/réponse
FIN FIN/ACK Fermeture Attente
attente 1 en cours fermeture
ACK/- FIN+ACK ACK/- close/FIN
/ACK
FIN Attente Dernier
attente 2 tempo ACK
FIN/ACK ACK/-
fin tempo

R. CHALON Protocoles TCP/IP 46

Protocoles TCP/IP 23
R. CHALON

Comparaison TCP/TP4

u Comparaison de différents points:


Spécifications TP4 OSI TCP
Différents types de PDU 9 1
Qualité de service (QoS) négociable optionnel
Données dans une CR autorisé possible ?
Nature du flux messages octets
Données spéciales Données exprès Données urgentes
Données en retour non oui
Régulation de flux explicite toujours oui
Relation d'ordre sur les ACK autorisé interdit

Libération brutale négociée


(laissé à couche session)

Taille maximale d'un segment 8 Ko 64 Ko

R. CHALON Protocoles TCP/IP 47

Protocole UDP

u UDP [User Datagram Protocol] fournit un service de transport de


datagrammes, basiquement le même que IP
u Caractéristiques :
u mode non-connecté
u transfert non fiable des données (la fiabilité des réseaux
traversés)
u taille maximale d'un datagramme= 64 Ko
u Il ajoute seulement à IP le multiplexage grâce à l'utilisation des
ports (Cf. TCP):
è le port source est facultatif (=0 si non utilisé): il identifie un port
pour la réponse
u Il est défini par la RFC 768 (STD 6)

R. CHALON Protocoles TCP/IP 48

Protocoles TCP/IP 24
R. CHALON

datagramme UDP
longueur totale en octets
u Format du datagramme: (en-tête et données)
0 8 16 24 31
port source port destination
longueur somme de contrôle
données

u Somme de contrôle:
u facultative (=0 si non utilisé)
u calculée avec un pseudo-en-tête qui contient les adresses IP
source et destination (Cf. TCP)
u Quelques exemples d'applications utilisant UDP:
u NFS: partage de fichiers
u DNS: service de nommage
u RTP [Real-Time Protocol]: applications temps-réel
R. CHALON Protocoles TCP/IP 49

5ème partie: IPv6

u Objectifs de ce nouveau protocole:


u résoudre le problème de l'épuisement des adresses IPv4
(prévu vers 2008 à +/- 3 ans)
u réduire la taille des tables de routage grâce à l'organisation
hiérarchique des adresses
u simplifier le protocole ==> rapidité de traitement
u fournir une meilleure sécurité: authentification et chiffrement
u gérer la qualité de service en particulier pour le temps réel
u gérer la diffusion multicast en standard
u gérer la mobilité des ordinateurs
u permettre l'évolution future du protocole
u Mais il faut assurer la coexistence des 2 versions pendant la
période transitoire (au minimum 10 ans, peut-être toujours !)

R. CHALON Protocoles TCP/IP 50

Protocoles TCP/IP 25
R. CHALON

Adresses IPv6

u Adresses de 128 bits (16 octets):


u 340.1036 équipements adressables (soit 1023 adresses par m² !)
u seul 1/4 des adresses est alloué
u Adressage hiérarchique: mais plan d'adressage contreversé
u Notation:
u 8 groupes de 4 chiffres hexadécimaux séparés par ":"
u exemple: 8000:0000:0000:0000:0123:4567:89AB:CDEF
qui peut s'abréger en: 8000::123:4567:89AB:CDEF
u compatibilité avec adresses IPv4 en mettant le début à zéro
exemple: 156.18.22.3 devient ::156.18.22.3
u 3 catégories:
u Unicast
u Multicast (remarque: le broadcast est supprimé, utilise le multicast)
u Anycast (adressage au premier vu)

R. CHALON Protocoles TCP/IP 51

En-tête IPv6 (1/3)

=6 (pour cette version) ex "type de service" ex TTL


0 8 16 24 31
version priorité étiquette de flot
longueur de charge utile en-tête suivant nb max de sauts

adresse IP source
(16 octets)

adresse IP destination
(16 octets)

R. CHALON Protocoles TCP/IP 52

Protocoles TCP/IP 26
R. CHALON

En-tête IPv6 (2/3)

u Priorité:
u permet de classer la nature des flux
u utile aux routeurs en cas de congestion
u il est suggéré: 1 pour news, 4 pour ftp, 6 pour telnet
u Étiquette de flot:
u permet de définir des pseudo-circuits virtuels
u En-tête suivant:
u donne:
n soit le type d'en-tête d'option qui suit,

n soit le type de protocole de niveau supérieur (TCP, UDP, …)

u champ "somme de contrôle" n'existe plus:


u calcul trop "coûteux"
u les réseaux sont de plus en plus fiables
u possibilité de la calculer au niveau 2 (liaison de données)
R. CHALON Protocoles TCP/IP 53

En-tête IPv6 (3/3)

u Plus de champs pour la fragmentation:


u datagrammes de 576 octets doivent être supportés
u si paquet trop grand:
n le routeur renvoie un code d'erreur ICMP

n et possibilité d'utiliser l'option de fragmentation à la source

u 6 types d'en-tête d'options:


u pas-à-pas: option traitée par chaque routeur,
permet d'avoir des datagrammes > 64 Ko (jumbogrammes)
u routage: strict ou lâche (seuls quelques routeurs sont précisés)
u fragmentation: similaire à IPv4 mais seul l'ordinateur source
fragmente
u authentification: signature des datagrammes (par défaut MD5)
u charge utile chiffrée: permet la confidentialité, seul le destinataire
peut lire les données (par défaut utilise chiffrement DES)
u option de destination: non utilisée

R. CHALON Protocoles TCP/IP 54

Protocoles TCP/IP 27
R. CHALON

Annexe: Bibliographie

u Livres:
u D. Comer, "TCP/IP Architecture, protocoles, applications",
InterEditions, Masson, 3ème édition, 1998.
u A. Tanenbaum, "Réseaux", InterEditions/Prentice Hall, 3ème
édition, 1997.
u Sites Internet:
u Cours de l'UREC: www.urec.cnrs.fr/cours/
u RFC: www.pasteur.fr/other/computer/RFC/

R. CHALON Protocoles TCP/IP 55

Protocoles TCP/IP 28

Vous aimerez peut-être aussi