Philippe Le Parc
Philippe Le Parc - Introduction aux réseaux 29/01/2018 1
Les trois couches conceptuelles de services de l'Internet
Applications
Protocoles de communication
Transport physique de l’information
Philippe Le Parc - Introduction aux réseaux 29/01/2018 2
La plupart des descriptions de TCP/IP et UDP/IP définissent une
architecture comportant de 3 à 5 couches. Le modèle à 4 niveaux
ci-dessous, est une bonne représentation de ces protocoles.
Applications Applications et processus utilisant le réseau
Transport hôte à hôte Transmission des données de bout en bout
Internet Routage des datagrammes
Accès au réseau Routines d’accès au réseau physique
Philippe Le Parc - Introduction aux réseaux 29/01/2018 3
La couche application est responsable de l'application traitée
(messages, transfert de fichiers, terminal virtuel, ...)
La couche présentation assure aux applications une indépendance
Application par rapport aux codages et représentations de données.
Présentation La couche session assure la synchronisation et la gestion du dialogue
entre applications.
Session
La couche transport assure le transport d'information de bout en bout.
Transport
Elle effectue un contrôle de flux, un multiplexage de connexions de
Réseau transport sur une connexion réseau et un recouvrement d'erreurs.
Liaison La couche réseau assure l'établissement, le maintien et la libération
des connexions, ainsi que l'adressage, le routage et le contrôle de flux.
Physique
La couche liaison assure un transfert fiable d'informations sur une
liaison physique ; assure le contrôle d'erreur sur les blocs
d'informations (trames), la synchronisation.
La couche physique assure la transmission d'un train de bits sur un
média physique de caractéristiques mécaniques, électriques,
fonctionnelles et procédurales bien définies.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 4
Modèle ISO et pile TCP/IP
Application NFS
Présentation TFTP XDR HTTP FTP SMTP
Telnet
Session RPC
Transport UDP TCP
Réseau IP
Liaison Ethernet – Token Ring – ATM – PPP – xDSL – WI-FI – ZigBee – Fibre – 4G
Physique Câbles et équipements physiques
Philippe Le Parc - Introduction aux réseaux 29/01/2018 5
Philippe Le Parc - Introduction aux réseaux 29/01/2018 6
Plusieurs protocoles de liaison sont utilisés et dépendent du type de
service que l'on attend et des caractéristiques de la couche
physique.
◦ ADSL (fait partie de la famille xDSL) pour les connexions à travers le
réseau téléphonique (Box).
◦ Ethernet, pour les réseaux locaux d'entreprise.
◦ MPLS (entre autre) dans les cœurs de réseaux.
◦ Token Ring (en perte de vitesse) pour les réseaux locaux industriels.
◦ Wi-Fi, Wimax, Bluetooth pour les réseaux sans fils.
◦ LoRa pour l’Internet des Objets
◦ ...
L'interconnexion de ces divers types de réseaux se fait à travers
des ponts.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 7
Topologies des réseaux
Philippe Le Parc - Introduction aux réseaux 29/01/2018 8
Bus d'ordinateurs : ils sont destinés à l'interconnexion des éléments d'un
ordinateur. Ils offrent des débits élevés.
Structures d'interconnexion (switch, hub) : relient plusieurs calculateurs,
comme un cluster, sur de faibles distances (dizaines de mètres). Elles
offrent des débits très élevés (plusieurs centaines de GBit/s).
LAN (Local Area Network) : réseau local dont l'étendue est limitée (un ou
quelques bâtiments). En général, ils sont destinés au partage de ressources
matérielles ou logicielles et offrent des débits élevés (1, 10, 100 Gbit/s).
MAN (Metropolitan Area Network) : Réseau dont l'étendue est de l'ordre
d'une dizaine de km. En général, ils sont utilisés pour fédérer des réseaux
locaux ou assurer la desserte de zones étendues.
WAN (Wide Area Network) : Réseau assurant le transport d'informations sur
une grande distance. Ils peuvent être privés (interne à une organisation) ou
public.
Et encore : réseaux de capteurs, BAN…
Philippe Le Parc - Introduction aux réseaux 29/01/2018 9
On définit un réseau local comme un ensemble d'équipements ou
nœuds reliés entre eux pour échanger des informations et partager
des ressources physiques, ce qui implique :
◦ un câblage reliant les différents nœuds selon une certaine topologie,
◦ une méthode d'accès au support pour assurer son partage,
◦ une méthode d'adressage pour identifier chaque nœud,
◦ un ensemble cohérent de protocoles (pile) pour permettre la
communication,
◦ un système d'exploitation réseau (NOS, Network Operating System)
capable de prendre en charge les périphériques distants partagés et d'en
contrôler l'utilisation (administration et sécurité),
◦ un ensemble de programmes utilisant les ressources mises en commun.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 10
Serveur Web : Un serveur Web accepte des requêtes de navigateurs
clients pour délivrer des objets Web, comme des pages HTML.
Serveur de fichiers : Un serveur de fichiers partage son espace disque
avec les autres ordinateurs, appelés clients. Le client, même d'un autre
système d'exploitation que le serveur, perçoit les fichiers du serveur comme
appartenant à son propre espace disque.
Serveur d'impression : Un serveur d'impression partage une même
imprimante entre plusieurs ordinateurs, appelés clients. Le client, même
d'un autre système d'exploitation que le serveur, perçoit l'imprimante
comme une imprimante de son propre système.
Serveur d'application : Un serveur d'application exécute un programme à
la place des ordinateurs clients. appelés clients. Le client, même d'un autre
système d'exploitation que le serveur, perçoit l'application comme
s'exécutant pour lui.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 11
Plusieurs termes sont utilisés pour caractériser les réseaux et les
connexions...
Les réseaux sont caractérisés par différents paramètres :
◦ Type : Ethernet, Wi-Fi, ATM etc...
◦ Disponibilité : le temps pendant lequel le réseaux n'est pas disponible
◦ Bande passante : en bits/s, la bande passante définit la quantité
d'information maximale pouvant circuler.
Les connexions entre deux points sont caractérisés par différents
paramètres :
◦ Débit : le nombre de bit/s pour l'échange en cours
◦ Latence : temps "physique" de propagation de l'information dans le réseau
◦ Taux de perte : le pourcentage de paquets perdus ou erronés.
◦ Ping : temps de propagation « Aller/Retour » d'une trame ICMP.
◦ Gigue : la variation du ping.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 12
Pour fixer les idées, sur le réseau UBO avec [Link]
◦ Ping Brest-Paris : 20 ms, 598 Mbits descendant, 768 Mbits montant
◦ Ping Brest-Auckland : 300 ms, 32 Mbits descendant, 100 Mbits montant
Pour fixer les idées, sur le réseau wifi UBO avec [Link]
◦ Ping Brest-Paris : 28 ms, 75 Mbits descendant, 88 Mbits montant
◦ Ping Brest-Auckland : 313 ms, 20 Mbits descendant, 75 Mbits montant
Pour fixer les idées, sur le réseau personnel (fibre) avec
[Link]
◦ Ping Brest-Paris : 14 ms, 150 Mbits descendant, 108 Mbits montant
◦ Ping Brest-Auckland 298 ms, 6 Mbits descendant, 2 Mbits montant
Pour information
◦ Temps de clignotement d'une paupière : 260 ms
◦ Temps de chute d'un objet d'1m : 450 ms
Philippe Le Parc - Introduction aux réseaux 29/01/2018 13
La commande tracert permet de connaitre le chemin emprunté par une trame IP, par utilisation
de TTL incrémenté progressivement. On note un "saut" entre les mesures 10 et 11, qui
correspond probablement à la traversée de l'Océan Atlantique
C:\Users\leparc>tracert [Link]
Détermination de l’itinéraire vers [Link] [[Link]]
avec un maximum de 30 sauts :
1 <1 ms * * [Link]
2 <1 ms <1 ms <1 ms [Link]
3 <1 ms <1 ms <1 ms [Link]
4 <1 ms <1 ms <1 ms [Link]
5 11 ms 11 ms 11 ms [Link]
6 11 ms 12 ms 11 ms [Link]
7 11 ms 5 ms 11 ms [Link]
8 7 ms 7 ms 7 ms [Link]
9 11 ms 11 ms 11 ms [Link]
10 11 ms 12 ms 13 ms [Link] [[Link]]
11 99 ms 99 ms 101 ms [Link] [[Link]]
12 104 ms 104 ms 104 ms [Link] [[Link]]
13 109 ms 109 ms 108 ms [Link] [[Link]]
14 113 ms 108 ms 108 ms [Link] [[Link]]
15 116 ms 115 ms 115 ms [Link] [[Link]]
16 116 ms 116 ms 116 ms [Link] [[Link]]
17 120 ms 120 ms 120 ms [Link] [[Link]]
18 * * * Délai d’attente de la demande dépassé.
19 * * * Délai d’attente de la demande dépassé.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 14
Format d’une trame Ethernet type II (MTU = 1500)
Préambule @ dest @ source Type Données CRC
Ethernet
8 octets 6 octets 6 octets 2 octets 46 à 1500 octets max 4 octets
Paquet IP
Entête (24 octets) Données
Segment TCP
Entête (24 octets) Données
Philippe Le Parc - Introduction aux réseaux 29/01/2018 15
0 8 16 24 31
Version Lg_ent Type de service Longueur totale
Identification Drapeaux Dep_fragment
Durée de vie Protocole Total de contrôle de l’entête
Adresse IP source
Adresse IP destination
Option IP (éventuelles) Bourrage
Données
….
Philippe Le Parc - Introduction aux réseaux 29/01/2018 16
TCP transmet des paquets, qui peuvent être segmentés en fonction
du (des) réseau(x) traversé(s).
0 8 16 24 31
Port Source Port Destination
Numéro de séquence
Numéro d’acquittement
Longueur
entête
Réservé Bits de code Fenêtre
Somme de contrôle Pointeur d’urgence
Options (éventuellement, taille variable) Bourrage
Données
….
Philippe Le Parc - Introduction aux réseaux 29/01/2018 17
Classe Intervalle
A [Link] à [Link]
B [Link] à [Link]
C [Link] à [Link]
D [Link] à [Link]
E [Link] à [Link]
Philippe Le Parc - Introduction aux réseaux 29/01/2018 18
Adresses de classe A
0 1 2 3 4 5 6 7 8 31
0 @ du réseau Identification de le machine
Adresses de classe B
0 1 2 3 4 5 6 7 8 15 16 31
1 0 Adresse du réseau Identification de la machine
Adresses de classe C
0 1 2 3 4 5 6 7 8 23 24 31
1 1 0 Adresse du réseau Ident. machine
Philippe Le Parc - Introduction aux réseaux 29/01/2018 19
Le nombre d'adresses utilisables en IP V4 est d'environ 3,8 milliards
Il n'y a plus d'adresse IPV4 disponibles depuis février 2011
Des solutions existent pour augmenter le nombres de machines
accessibles :
◦ DHCP : Dynamic Host Configuration Protocol : allocation dynamique
d'adresses à partir d'un réservoir (FAI)
◦ NAT : Network Address Translation : une adresse publique externe,
plusieurs adresses privées locales (routeur)
Philippe Le Parc - Introduction aux réseaux 29/01/2018 20
IP V6, proposé en 1998 (RFC 2460), modernise IP V4 qui date de
1981 (RFC 791)
IP V6 se déploie de plus en plus
Philippe Le Parc - Introduction aux réseaux 29/01/2018 21
IP V6 représente les adresses sur 128 bits au lieu de 32 bits
◦ 2128 = 3 1038 adresses possibles, soit 7 * 1023 adresses par m2.
Exemple d'adresse IP V6 (8 blocs de 16 bits ) :
◦ 2001 : 0001 : 0a88 : 85a3 : 0000 : 0001 : ac1f : 8001
◦ Ou en notation réduite 2001 : 1 : a88 : 85a3 : : ac1f : 8001
Les 64 premiers bits définissent le réseaux et les 64 suivant la machine
(plus précisément l’interface réseaux).
Le premier champs désigne le type d’adresse
◦ 2001 adresses fournies par les FAI
◦ fe8x lien local (msg qui reste sur le réseaux local)
◦ ffxy adresse multicast
Les 64 bits de l’interface réseau peuvent être configurés manuellement
( machines spécifiques) ou automatiquement à partir de l’adresse MAC
Philippe Le Parc - Introduction aux réseaux 29/01/2018 22
Mécanismes de configuration et renumérotation automatique Neighbor Discovery
Paquet IP V6 : nouveau format d'entête plus flexible (options).
Allocation de ressources (différenciation des flux) champ Priorité
Routage facilité champ Identificateur de flux
Philippe Le Parc - Introduction aux réseaux 29/01/2018 23
Le domaine est AF_INET6
Le changement majeur est la taille des adresses
◦ Nécessite une relecture attentive des programmes développés en IP V4
et l’usage des bons types : struct in_addr et pas int par exemple.
◦ Deux nouvelles primitives inet_ntop() et inet_pton() de conversion.
Les fonctions gesthostname(), gesthostbyname() et gesthostbyaddr()
sont remplacées par getaddrinfo() et getnameinfo()
◦ plus complexes à utiliser.
◦ getaddrinfo() en particulier est utilisé pour fournir également une
adresse pour bind() et connect().
Les fonctions socket(), bind(), connect(), accept(), sendto(),
recvfrom()… ne changent pas, mais il faut faire attention aux
adresses utilisées.
Philippe Le Parc - Introduction aux réseaux 29/01/2018 24
RFC 2460 : Internet Protocol, Version 6 (IPv6) – Specification :
[Link]
Cours complet sur IP V6 (Nicolas Salmon) :
[Link]
Autre cours, moins complet, et non orienté programmation (Peter Bieringer)
[Link]
Initiation au développement C sur les sockets IPv4 & IPv6 (Philippe Latu)
[Link]
Philippe Le Parc - Introduction aux réseaux 29/01/2018 25
[1973] Ethernet (Bob Metcalfe, Xerox)
[1974] Micro-ordinateur Apple-1 (Steve Wozniak, Steve Jobs)
[1978] Réseau de données X.25 (Transpac)
[1980] Expérimentation de TCP/IP (RFC 791 en 1981)
[1981] Micro-ordinateur IBM PC
[1988] Réseau numérique à intégration de services français (Numeris)
[1991] World-Wide Web (Tim Berners-Lee, CERN)
[1992] Browser Web (Mosaic)
[1994] Liaison ATM (Jean-Pierre Coudreuse, CNET)
[1995] Privatisation du backbone de l'Internet
[1998] Débit d'un térabit par seconde atteint sur fibre optique
[2000] Plus de cent millions d'ordinateurs reliés à l'Internet, plus d'un billion de pages Web
[2002] Premières Box ADSL grand public en France (freebox)
[2017] 3,8 milliards d'internautes (estimation [Link]/[Link])
Philippe Le Parc - Introduction aux réseaux 29/01/2018 26
TCP/IP : architecture, protocoles et applications – D. Comer –
Pearson
Cours réseaux et télécoms – G. Pujolle – Eyrolles
RFC : Request For Comments : [Link]
Site web : [Link]
Philippe Le Parc - Introduction aux réseaux 29/01/2018 27
ARP et DNS
Notion de routage IP
Fonctionnement IP de TCP
ICMP, RSVP, RTP
Philippe Le Parc - Introduction aux réseaux 29/01/2018 28
Un ordinateur est repéré par:
◦ Un (ou plusieurs) nom : [Link]
◦ Une (ou plusieurs) adresse IP V4 : [Link]
◦ Une (ou plusieurs) adresse IP V6 : [Link]
◦ Une ou plusieurs adresses physique (Mac)
Carte Ethernet Rx local : 44-1E-A1-CE-9E-14
Carte Ethernet Rx sans fil : 08-11-96-59-C3-D8
Ces informations peuvent être obtenues par les commandes
◦ Sous windows : ipconfig /all
Sous Linux : ifconfig –a
Au niveau application, on utilise le nom de la machine. Au niveau liaison, on
utilise les adresses physiques
◦ Besoins d’outils de conversion.
◦ DNS : Nom logique adresse IP
◦ ARP/RARP : adresse IP adresse physique
Philippe Le Parc - Introduction aux réseaux 29/01/2018 29
Permet de traduire un nom « logique » en une adresse IP.
◦ [Link] [Link]
Sur chaque réseau, une ou plusieurs machines proposent ce service
L’architecture des DNS est hiérarchique
◦ DNS univ-brest DNS .fr DNS racine
◦ 13 DNS racine, composés de plusieurs serveurs physiques répartis
géographiquement.
◦ Des systèmes de cache temporaire permettent de ne pas remonter toute la
hiérarchie pour chaque requète (non-authoritative)
Commandes d’accès au DNS : nslookup (système),gethostbyname (prog.)
Serveur par défaut : [Link]
Address: [Link]
> [Link]
Serveur : [Link]
Address: [Link]
Réponse ne faisant pas autorité :
Nom : [Link]
Address: [Link]
Philippe Le Parc - Introduction aux réseaux 29/01/2018 30
Protocole permettant d’associer, sur un réseau local, une adresse
IP avec une adresse physique.
Rappel
◦ Le réseau IP est un réseau logique,
◦ Les paquets IP (segments) sont insérés dans des trames « physiques »
(Ethernet),
◦ Ce sont ces trames qui circulent sur le réseau,
◦ Les machines d’un même réseau ont des adresses IP « liées », mais des
adresses physiques « sans lien »
Pour aller de A à C en passant par un routeur B
◦ A connait l’adresse IP de C et de B
◦ Pour envoyer un message à C, A doit l’envoyer « physiquement » à B qui
l’enverra « physiquement » à C.
◦ ARP permet de faire l’association adresse IP adresse physique
Philippe Le Parc - Introduction aux réseaux 29/01/2018 31
Fonctionnement ARP
◦ A diffuse un message sur le réseau local (broadcast)
Qui a l’adresse IPB ? Répondre à adresse physique MACA
◦ B reçoit le message et répond : C’est moi, mon adresse physique est MACB
◦ A enregistre cette information dans une table ARP.
◦ A peut envoyer son message à B, en indiquant maintenant MACB, dans le
champs Destinataire de la trame Ethernet.
Les informations des tables ARP ont une durée de vie
Les tables arp peuvent être consultés à l’aide de la commande arp -a
Au démarrage, une machine peut ne pas connaitre son adresse IP
◦ On utilise le protocole inverse RARP
◦ Diffusion d’un message :
Mon adresse physique est MACA, quel est mon adresse IP
Philippe Le Parc - Introduction aux réseaux 29/01/2018 32
Une des fonctions principale de la couche réseau
Permet l’acheminement des paquets IP d’une source à un destinataire
dans des réseaux différents
Analyse du paquet IP, contenu dans la trame Ethernet, et reconstruction
d’une nouvelle trame Ethernet
Il se base sur des tables de routage et des algorithmes de routage
Quelques problèmes à traiter
◦ Constitution et mise à jour des tables ?
◦ Minimisation du temps de transfert ?
Route la plus courte (minimisation de la distance)
Route la plus rapide (minimisation du temps)
◦ Routage fixe ou routage dynamique ?
Gestion des congestion vs complexité (prise d’information)
Commande : netstat –r, pour voir les tables de routage
Philippe Le Parc - Introduction aux réseaux 29/01/2018 33
Le niveau physique fournit un service de transport de trames, non
fiable
TCP propose un transport de flots de données, fiable à base de
paquets
◦ Notion de connexion, utilisation de buffer, connexions bi-directionnelles
Pour assurer la fiabilité : acquittement, temporisation, réémission
Perte du message
Emission Paquet 1 Emission Paquet 1
Emission Ack 1
temporisation
Emission Paquet 2
Emission Ack 2
Ré-emission Paquet 1
Emission Ack 1
Philippe Le Parc - Introduction aux réseaux 29/01/2018 34
Permet d’optimiser le transport des paquets
1 2 3 4 5 6 7 8
Emission Paquet 1
Emission Paquet 2
Emission Ack 1
Emission Paquet 3
Emission Ack 2
Emission Ack 3
Emission Paquet 4
1 2 3 4 5 6 7 8
Le choix de la taille de la fenêtre, son évolution (dynamique ou non) ont
une influence sur la qualité du transport
En TCP : accord entre émetteur et receveur, évolution dynamique
Nécessité d’un temporisateur par paquet pour gérer les pertes de
messages
Philippe Le Parc - Introduction aux réseaux 29/01/2018 35
Numéro d’acquittement
◦ Échanges bi-directionnels
◦ Numéro d’octet dans le flot en cours d’envoi (pas le numéro du paquet)
Bits de code : URGenge, ACKnowlegment, PuSH, ReSeT, SYNchro, FIN
Fenêtre : taille de la fenêtre (en octet)
0 8 16 24 31
Port Source Port Destination
Numéro de séquence
Numéro d’acquittement
Longueur
entête
Réservé Bits de code Fenêtre
Somme de contrôle Pointeur d’urgence
Options (éventuellement, taille variable) Bourrage
Données
….
Philippe Le Parc - Introduction aux réseaux 29/01/2018 36
2 mécanismes de contrôle de flux, permettant de limiter les congestions, par
gestion dynamique de la taille de la fenêtre, et mesure des délais.
Slow start (basique) : au démarrage du trafic ou après une congestion, on
envoie un segment (fenêtre de 1), et on augmente la fenêtre de 1, à chaque
nouvel acquittement.
Slow start (amélioré) : au démarrage du trafic ou après une congestion, on
envoie un segment (fenêtre de 1), et on multiplie par 2 la taille de la fenêtre, à
chaque nouvel acquittement. Une fois arrivé à une valeur donnée, on continue
d’augmenter de 1 uniquement.
Congestion avoidance : en cas de perte d’un segment, on diminue la fenêtre
de moitié
Il existe plusieurs implémentations différentes : Tahoe, Reno, NewReno, Vegas,
SACK…
Philippe Le Parc - Introduction aux réseaux 29/01/2018 37
Réf : [Link]
Philippe Le Parc - Introduction aux réseaux 29/01/2018 38
ICMP : Internet Control Message Protocol
◦ Permet l’envoi de message de contrôle , signalement de problèmes au
niveau IP
◦ C’est aussi le protocole du « ping »
◦ La perte d’un message n’entraine pas de réémission (risque d’avalanches)
RSVP : Resource reSerVation Protocol
◦ Protocole de signalisation
◦ Permet de demander des réservations de ressource sur les routeur, pour le
passage d’un flot particulier
RTP : Real-time Transport Protocol
◦ Principalement utilisé pour le transport des flux media (VoIP, Streaming).
◦ RTP se base du UDP
Perte de paquet peut être acceptable si mécanisme de synthèse
◦ RTP utilise Real-time Transport Control Protocol (RTCP)
Identification, contrôle de session
Retour de qualité de service
Philippe Le Parc - Introduction aux réseaux 29/01/2018 39
Philippe Le Parc
Philippe Le Parc - Introduction aux réseaux 29/01/2018 40