Les réseaux
Mathieu Dupont
mdupont@[Link]
Introduction
• Qu'est-ce qu'un réseau ?
• Un ensemble d'entités (objets, personnes, machines, etc.) interconnectées les unes avec les autres
• Exemples :
• réseau de transport
• réseau téléphonique
• réseau de neurones
• …
• Réseaux informatiques
• Un ensemble d'ordinateurs reliés entre eux grâce à des lignes physiques et échangeant des
informations sous forme de données numériques
• Intérêts des réseaux informatiques
• communication (personnes, processus…)
• partage de ressources (fichiers, applications, matériels…)
• minimisation des coûts
• …
Partage de ressources
• Équipements:
• Imprimantes
• Stockage de données / Serveur de fichiers
• Calcul : exemple IA
• Informations
• Dossier patient informatisé
• Résultats d’analyses
• Comptes rendus médicaux
• Logiciels
• Logiciel patient
• Planning
• Messagerie professionnelle
Les types de réseaux informatiques
• LAN (Local Area Network)
• Couvre un espace restreint : service / étage / batiment
• Connecte : ordinateurs / appareils médicaux
• Rapide et stable
• Cablé ou wifi (tablette du médecin)
• Réseau à la maison
• MAN (Metropolitan Area Network)
• Relie plusieurs LAN
• Couvre un hopital / une université
• WAN (Wide Area Network)
• Peut être assimilé à Internet (Cablé ou sans fil)
• Relie les réseaux entre eux
Topologie
Comment les équipements sont connectés entre eux
• C’est la façon dont les ordinateurs et équipements sont reliés. Comme
le plan d’un bâtiment ou l’organisation des couloirs.
• Physique
• issue de la structure du réseau (les câbles, les routeurs,etc…)
• Utilisé pour déployer
• Logique
• définit comment se passe la communication dans la structure physique
• Utilisé pour concevoir le réseau
Topologie
• Topologie en étoile
• Tous les équipements sont reliés à un point central
• Si un câble est coupé, seul l’équipement concerné est impacté
• La plus utilisée aujourd’hui en LAN
• Topologie maillée
• Plusieurs chemins possibles entre les équipements
• Très fiable, mais complexe et coûteuse
Modèle OSI
Open Systems Interconnection
• Le modèle OSI est une façon simple de découper
le fonctionnement d’un réseau
• Il permet de :
• comprendre
• expliquer
• dépanner
• Il est composé de 7 couches
• Chaque couche a un rôle précis (en théorie)
• Les couches 5/6/7 sont souvent confondues
Le modèle OSI -> TCP/IP
Modèle TCP/IP
Une analogie simple : Le colis
postal
Imaginez que vous envoyez un
Application
cadeau à un ami :
1. Le cadeau = vos données (photo,
message, fichier médical)
Transport 2. La boîte d'emballage = ajout
d'informations de transport
Internet 3. L'étiquette avec l'adresse =
informations de livraison
Interface réseau 4. Le camion postal = le support
physique (câble, Wi-Fi)
La théorie La pratique
Modèle TCP/IP
• Le modèle TCP/IP est :
• plus simple (4 couches)
• directement issu des protocoles réellement utilisés
• le modèle sur lequel fonctionne Internet
• Il décrit ce qui existe vraiment :
• TCP
• IP
• HTTP
• Ethernet
• Wi-Fi
• Tous les réseaux modernes, y compris hospitaliers, reposent sur TCP/IP.
• Le modèle TCP/IP ne supprime pas des fonctions, il les regroupe.
À travers les couches et encapsulation
La couche physique
Ici on transporte les bits sans les comprendre
• Son rôle : Le support physique
• La couche physique, c'est :
• Le matériel concret qui transporte les données
• La conversion des 0 et 1 en signaux électriques, lumineux ou radio
• Le câblage et les ondes qui relient les appareils
• Analogie : Si le réseau est un système postal, la couche physique c'est :
• 🚛 Les camions, avions, bateaux
• 🛣 Les routes et autoroutes
• 📦 Le fait de transporter physiquement les colis
• Qu'est-ce qu'elle transporte ?
• Des BITS (0 et 1) sous forme de :
• Signaux électriques (voltage haut/bas) dans les câbles cuivre
• Signaux lumineux (lumière on/off) dans la fibre opHque
• Ondes radio (fréquences) dans le Wi-Fi
• Exemple : Le chiffre 5 en binaire = 0101
• Devient : ⚡bas-⚡haut-⚡bas-⚡haut sur le câble
Les supports physiques
• Les câbles réseau (Ethernet)
• Câble à paires torsadées (RJ45) On parle de cable ethernet mais ethernet
• Le plus courant dans les hôpitaux est bien le protocole qui circule dans des
• Ressemble au câble téléphonique (mais plus gros) cable de cat 5, 5e, 6 etc.
• Connecteur : RJ45 (comme une grosse prise téléphone) Le numéro de cat correspond (+ ou -) à la
• Portée : jusqu'à 100 mètres vitesse de transmission.
• La fibre optique Ethernet Gigabit peut circuler sur du CAT 5
• Câbles en verre ou plastique qui transmettent la lumière et ou de la fibre.
• Très rapide (plusieurs Gigabits/seconde)
• Très longue distance (plusieurs kilomètres)
• Insensible aux interférences électromagnétiques
• Le Wi-Fi (sans fil)
• Transmission par ondes radio
• Fréquences : 2.4 GHz et 5 GHz
• Portée : 30-50 mètres en intérieur
• Nécessite des bornes Wi-Fi (points d'accès)
La couche L2 – Vue d’ensemble
Liaison de données
Son rôle : Structurer et sécuriser la communication locale
La couche liaison transforme le flux de bits en communication organisée.
Équipement principal : le SWITCH
Ses 3 missions principales :
1. Structuration des données (tramage)
• Organiser les bits en trames avec début et fin
• Ajouter des en-têtes et des fins de trame
2. Adressage local (MAC)
• Identifier chaque appareil sur le réseau local avec une adresse MAC
• Diriger les données vers le bon destinataire
3. Détection et correction d'erreurs
• Vérifier que les données arrivent sans corruption
• Redemander les données si nécessaire
Encapsulation : la trame ethernet
Préambule SFD MAC dest MAC source Type Payload FCS
7 octets 1 octets 6 6 2 46 – 1500 4
Emission de trames ethernet RécepKon
1. Reçoit les données de la couche 3 (paquet IP) 1. Reçoit le flux de bits de la couche 1
2. Détecte le préambule/fanion (début de trame)
2. Ajoute adresses MAC source et destination
3. Lit l'adresse MAC descnacon
3. Ajoute le type de protocole 4. Vérifie si c'est pour lui (sinon ignore)
4. Applique bit stuffing si nécessaire (HDLC/PPP) 5. Enlève le bit stuffing si applicable
6. Recalcule le FCS et compare
5. Calcule le FCS (checksum)
7. Si OK : extrait les données et transmet à couche
6. Ajoute préambule/fanion 3
7. Transmet à la couche 1 (bits) 8. Si erreur : rejeke la trame (éventuellement
demande retransmission)
Adresse MAC et le protocole ARP
• MAC = Media Access Control (Contrôle d'accès au support)
• Une adresse physique unique gravée dans chaque carte réseau
• Composée de 6 octets (48 bits)
• Notation hexadécimale : 00:1A:2B:3C: 4D:5E
• ARP = Address Resolution Protocol
• Dans un réseau local (LAN). Pour aller sur internet, on doit en couche 3.
• ARP permet de faire l’association IP <-> MAC address par broadcast
• C’est le rôle du switch de faire connaitre les addresses MAC e
Protocoles de la couche 2
• Ethernet • Wi-Fi (IEEE 802.11)
• Standard IEEE 802.3 • Standard pour réseaux sans fil
• Utilisé dans 99% des réseaux locaux • Variantes :
• Différentes vitesses : • 802.11n (jusqu'à 600 Mbps)
• 10 Mbps (Ethernet classique - obsolète) • 802.11ac (jusqu'à 1.3 Gbps) ← Standard
• 100 Mbps (Fast Ethernet) actuel
• 1 Gbps (Gigabit Ethernet) ← Standard • 802.11ax (Wi-Fi 6, jusqu'à 9.6 Gbps)
actuel • Spécificités couche 2 Wi-Fi :
• 10 Gbps, 40 Gbps, 100 Gbps (Data • Gestion des collisions (CSMA/CA)
centers) • Trames avec 3 ou 4 adresses MAC
(source, dest, point d'accès)
• Mécanismes d'authentification (WPA2,
WPA3)
Couche 3, la couche réseau
Sortir du réseau local
• Son rôle : Le routage et l'adressage global 2. Routage
• La couche réseau permet la communication • Déterminer le meilleur chemin pour atteindre la
destination
entre réseaux différents.
• Faire transiter les paquets de routeur en routeur
• Rappel des couches précédentes : • Gérer plusieurs chemins possibles
• Couche 1 (Physique) : Transmet des bits
• Couche 2 (Liaison) : Organise en trames, utilise
3. Fragmentation/Réassemblage
adresses MAC (locales) • Découper les gros paquets si nécessaire
• Réassembler à l'arrivée
4. Gestion de la livraison
• Détecter les boucles (TTL)
• Gérer les erreurs de routage
Les missions principales de la couche réseau • Optimiser le trafic
1. Adressage logique (IP)
• Attribuer une adresse logique à chaque appareil
• Adresse hiérarchique (réseau + hôte)
• Valable sur tout Internet
Encapsulation : le paquet
Les Adresses IPv4 (1/5)
On ne traitera pas de l’ipv6…
• IPv4 = Internet Protocol version 4
• Format :
• 4 octets (32 bits au total)
• Notation décimale pointée
• Chaque octet : valeur de 0 à 255
Nombre total d'adresses IPv4 possibles : 2³² = 4 294 967 296 adresses (~4,3 milliards)
Structure hiérarchique : Réseau + Hôte
Une adresse IP contient 2 parties :
1. Partie RÉSEAU (Network)
• Identifie le réseau (comme le code postal)
• Tous les appareils du même réseau partagent cette partie
2. Partie HÔTE (Host)
• Identifie l'appareil sur ce réseau (comme le numéro de rue)
• Unique dans le réseau
• Exemple [Link] avec masque [Link]. réseau = 192.168.10
Le routage des paquets
Comment les paquets voyagent ?
Exemple : deux ordinateurs ayant chacun une adresse publique
Université A <-> Université B
PC : [Link] → Serveur : [Link]
Le “message“ doit traverser des serveurs, appelés routeurs.
Le paquet ne change pas mais la trame dans laquelle est encapsulé le paquet si (update macadress)
Saut 1 : PC → Routeur Université A Saut 2 : Routeur Université A → Routeur
┌────────────────────────────────────────┐
FAI
┌────────────────────────────────────────┐
│ Trame Ethernet : │
│ Trame (nouvelle !) : │
│ MAC Src : 00:11:22:33:44:55 (PC) │
│ MAC Src : AA:BB:CC:DD:EE:FF (R1) │
│ MAC Dest : AA:BB:CC:DD:EE:FF (R1) │
│ MAC Dest : 11:22:33:44:55:66 (R2) │
│ │
│ Paquet IP : │ │ │
│ IP Src : [Link] (PC) │ │ Paquet IP (même !) : │
│ IP Dest : [Link] (Serveur) │ │ IP Src : [Link] (PC) │
│ IP Dest : [Link] (Serveur) │
│ TTL : 64 │
│ TTL : 63 │
└────────────────────────────────────────┘
└────────────────────────────────────────┘
Les Adresses IPv4 (2/5)
Le masque de sous-réseau
• Définit où s'arrête la partie réseau et où commence la partie hôte
• Même format qu'une adresse IP
• Exemples :
• [Link] (/24) → 256 adresses (254 utilisables)
• [Link] (/16) → 65 536 adresses
• [Link] (/8) → 16 777 216 adresses
• On préfère la notation CIDR : [Link]/24 -> équivaut à un
masque de [Link].
• Outil : ipcalc
Les Adresses IPv4 (3/5)
Le masque de sous-réseau
• Les sous réseaux sont utilisés pour savoir où se trouvent une ip
• Exemple : [Link] ([Link])
• [Link]
ui/query?bflag=false&dflag=false&rflag=true&searchtext=139.124.24
5.191&source=RIPE
Les Adresses IPv4 (4/5)
Adresse privées vs adresses publique
Tout le monde ne peut pas avoir d’ip publique
Plage Notation Nombre d'adresses
[Link] à [Link] [Link]/8 16 777 216
[Link] à [Link] [Link]/12 1 048 576 (16 réseaux /16)
[Link] à [Link] [Link]/16 65 536 (256 réseaux /24)
Adresses privées : Adresses publiques :
• Utilisables gratuitement dans votre réseau local • Uniques au monde
• Pas de conflit (chaque entreprise/hôpital peut les • Attribuées par les FAI (Fournisseurs d'Accès
utiliser) Internet)
• Non routables sur Internet (ne peuvent pas sortir • Routables sur Internet
telles quelles) • Coût (location ou achat)
• Nécessitent NAT pour accéder à Internet
Les Adresses IPv4 (4/5)
Adresses privées
• Exemple d'adressage à l’hopital
Service/Zone Réseau Plage hôtes
Administration [Link]/24 [Link]/24 (255)
• Serveurs [Link]/26 (62) [Link] - [Link]
• Postes de travail [Link]/25 (126) [Link] - [Link]
• imprimantes [Link]/27 (30) [Link] - [Link]
Soins (Médecins/Inf.) [Link]/24
Adresses privées : Adresses publiques :
• PC médicaux
• Utilisables gratuitement dans votre réseau local • Uniques au monde
• Tablettes
• Pas de conflit (chaque entreprise/hôpital peut les • Attribuées par les FAI (Fournisseurs d'Accès
Imagerie (PACS)
utiliser) [Link]/24 Internet)
• Serveurs PACS
• Non routables sur Internet (ne peuvent pas sortir • Routables sur Internet
• Scanners/IRM
telles quelles) • Coût (location ou achat)
• Staeons lecture NAT pour accéder à Internet
• Nécessitent
Wifi [Link]/24
• Visiteurs
Les Adresses IPv4 (5/5)
Table de routage
• Routage :
• Le routage est le processus de sélection du chemin que les paquets
doivent emprunter pour aller de la source à la destination, en
traversant potentiellement plusieurs réseaux.
• Par exemple de la tablette en [Link]/24 à un serveur PACS en
[Link]/24. Les deux élements sont dans des réseaux différents.
Il faut une passerelle entre les deux (routeurs)
• Un routeur est à l’intersection d’un ou plusieurs réseau :
• Entre deux réseaux locaux
• Entre wan et lan, comme à la maison
Les Adresses IPv4 (5/5)
Table de routage
Destination Masque Passerelle Interface
[Link] /24 Connecté eth0
[Link] /24 [Link] eth1
[Link] /16 [Link] eth1
[Link] (defaut) /0 [Link] eth2
• Exemple table de routage
• Pour aller vers 192.168.10.X → directement connecté (eth0)
• Pour aller vers 192.168.20.X → envoyer à [Link] via eth1
• Pour tout le reste ([Link]/0) → envoyer vers Internet via eth2
Protocole de la couche 3 : IP
IP = Internet Protocol
C'est LE protocole de la couche 3.
Tous les autres protocoles de cette couche existent pour le supporter.
• Fonctions : • Fait de son mieux pour livrer
• Adressage : Identifie source et destination • La fiabilité est déléguée à TCP (couche 4)
• Encapsulation : Encapsule les segments de couche
4 • IP, c'est comme envoyer une carte postale :
• Routage : Permet le transport entre réseaux • Vous écrivez l'adresse et postez
• Fragmentation : Découpe si nécessaire • Pas de garantie qu'elle arrivera
• Caractéristiques importantes : • Pas de confirmation de réception
• Sans connexion (connectionless) • Pas de suivi du trajet
• Pas d'établissement de connexion préalable • Mais c'est simple et rapide !
• Chaque paquet est indépendant
• Non fiable (unreliable)
• Pas de garantie de livraison • TCP (couche 4) sera comme un colis
• Pas d'accusé de réception recommandé avec suivi.
• Pas de contrôle d'ordre
• Best effort (au mieux)
Protocole de la couche 3 : IP
Fragmentation
• Problème : Différents réseaux Exemple
ont différentes tailles • Paquet original : 3000 octets de données
maximales de trame, c’est leur • MTU du lien : 1500 octets
MTU (Maximum Transmission
Unit) Calcul :
• En-tête IP = 20 octets
• Un des fragments perdu = perte • Données max par fragment = 1500 - 20 = 1480 octets
totale du paquet • Trois paquets nécessaires
Protocole MTU
Ethernet 1500 octets
Wi-Fi (802.11) 2304 octets │ (souvent limité à 1500)
PPPoE (ADSL) 1492 octets
Token Ring 4464 octets
Loopback (localhost) 65 536 octets
Protocole de la couche 3 : ICMP
Internet Control Message Protocol
• Rôle :
• ICMP est le protocole de contrôle et diagnostic de la couche réseau.
Il permet aux routeurs et hôtes de communiquer des informations sur l'état du
réseau.
• Caractéristiques :
• Protocole : Numéro 1 dans l'en-tête IP
• Encapsulé dans IP (pas de couche 4)
• Utilisé pour signaler erreurs et informations
• Pas de transfert de données utilisateur
• Types de messages ICMP
• 2 catégories principales :
• Messages d'erreur : Signalent des problèmes de livraison
• Messages d'information : Diagnostics et tests
PING : outil de diagnostique de la couche 3
Principe
• Envoie des messages ICMP Echo Request (type 8)
• Attend des réponses ICMP Echo Reply (type 0)
• Mesure le temps aller-retour (RTT - Round Trip Time)
$ ping [Link]
PING [Link] ([Link]) 56(84) bytes of data.
64 bytes from [Link]: icmp_seq=1 ttl=117 time=15.2 ms
64 bytes from [Link]: icmp_seq=2 ttl=117 time=14.8 ms
64 bytes from [Link]: icmp_seq=3 ttl=117 time=15.1 ms
64 bytes from [Link]: icmp_seq=4 ttl=117 time=15.0 ms
^C
--- [Link] ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time
3005ms
rtt min/avg/max/mdev = 14.814/15.025/15.182/0.141 ms
PING : premier outil de votre boîte à outils
• Tester connectivité vers serveur local :
• ping [Link]
• Vérifier accès Internet :
• ping [Link] (Google DNS)
• Diagnostiquer problème réseau :
• Pas de réponse → problème réseau ou pare-feu
• Délai élevé → congestion ou distance
• Perte de paquets → problème de fiabilité
• Surveiller disponibilité :
• Monitoring automatique avec ping
• Alertes si serveur ne répond plus
• Limitations :
• Certains pare-feu bloquent ICMP (faux négatif)
• Ping réussi ≠ service fonctionnel (juste IP accessible)
traceroute : outil de diagnostique de la
couche 3
Principe
• Découvre le chemin que prennent les paquets
• Identifie chaque routeur traversé
• Mesure le délai vers chaque saut
Utilise le champ TTL de manière créative :
1. Envoie paquet avec TTL=1
• Premier routeur décrémente TTL → 0
• Routeur répond "Time Exceeded" avec son IP
• On connaît le 1er routeur !
2. Envoie paquet avec TTL=2
• 1er routeur décrémente (2→1), transmet
• 2ème routeur décrémente (1→0)
• 2ème routeur répond "Time Exceeded »
• On connaît le 2ème routeur !
3. Envoie paquet avec TTL=3
• ...
Continue jusqu'à atteindre la destination
Traceroute exemple
$ traceroute [Link]
traceroute to [Link] ([Link]), 30 hops max
1 [Link] ([Link]) 1.234 ms ← Routeur local
2 [Link] ([Link]) 3.456 ms ← Routeur FAI
3 [Link] ([Link]) 5.123 ms ← Backbone FAI
4 [Link] ([Link]) 12.345 ms ← Réseau régional
5 [Link] ([Link]) 15.678 ms ← Peering
6 * * * ← Pas de réponse (pare-
feu)
7 [Link] ([Link]) 18.234 ms ← Google
Protocole la couche 3 : NAT (1/2)
Network Address Translation
• But : Faire communiquer les adresses privées avec Internet
• Problème :
• pas assez d’adresses publique, on utilise des addresses privée.
• Mais mon adresse privée n’est pas routable sur internet
• Concept :
1. Utiliser des adresses PRIVÉES en interne (gratuites, illimitées)
• Ex : [Link], [Link], etc.
2. Avoir UNE (ou quelques) adresse(s) PUBLIQUE(S)
• Ex : [Link]
3. Le routeur fait la TRADUCTION (NAT)
• Quand les paquets sortent → IP privée devient IP publique
• Quand les paquets rentrent → IP publique redevient IP privée
• Besoin d’une seule ip publique
• Les adresses internes sont invisibles depuis Internet
• Pas d'accès direct aux machines internes
• Le routeur NAT agit comme un pare-feu basique
Protocole la couche 3 : NAT (2/2)
Network Address Translation
• Inconvénients :
• Compléxité :
• Casse le modèle "end-to-end" d'Internet
• Difficulté pour certains protocoles (VoIP, FTP, VPN)
• Problèmes pour les connexions entrantes (exemples ? )
• Performance :
• Le routeur doit maintenir des tables de traduction
• Recalcul des checksums à chaque paquet
• Point de défaillance unique
• Traçabilité
• Plusieurs utilisateurs partagent la même IP publique
• Logs externes ne montrent que l'IP publique
• Nécessite de consulter les logs NAT du routeur
La couche 4 : transport
Communication de bout-en-bout entre applications
Analogie : Vous envoyez un colis de Paris à Lyon :
• Couche 1 (Physique) :
• Transmet des BITS via câbles/ondes Couche 3 (Réseau) = Le système postal :
• "Comment transporter physiquement ? » - Centre de tri Paris → Centre régional → Centre
Lyon
• Couche 2 (Liaison) : - Chaque centre lit l'adresse et décide où
• Organise en TRAMES, utilise adresses MAC l'envoyer
• "Comment communiquer dans le réseau LOCAL ? »
- Les centres intermédiaires manipulent le colis
• Communication saut-par-saut (appareil → switch → appareil)
• Couche 3 (Réseau) : Couche 4 (Transport) = Le contenu du colis :
• Utilise PAQUETS IP, routage - Vous emballez soigneusement (fiabilité)
• "Comment aller d'un réseau à un autre ? » - Vous numérotez les pages si c'est un document
• Communication routeur-par-routeur (réseau → réseau) (ordre)
• Couche 4 (Transport) : - Vous ajoutez une note "Fragile" (priorité)
• SEGMENTS ou DATAGRAMMES - Seuls VOUS et le DESTINATAIRE ouvrent le colis
• "Comment les APPLICATIONS communiquent entre elles ? » - Les centres de tri ne regardent pas l'intérieur
• Communication APPLICATION à APPLICATION (bout-en-bout)
La couche 4 : deux protocoles
TCP et UDP
TCP UDP
Transmission Control Protocol User Datagram Protocol
Caractéristiques : Caractéristiques :
• Fiable (garantie de livraison) • Rapide (faible latence)
• Orienté connexion (établit une "session") • Léger (peu d'overhead)
• Ordre garanti (les données arrivent dans • Simple
l'ordre) • Non fiable (pas de garantie de livraison)
• Contrôle de flux (adaptation au • Sans connexion (pas de "session")
destinataire)
• Contrôle de congestion (adaptation au • Pas de garantie d'ordre
réseau) • Pas de contrôle de flux
• Plus lent (overhead)
• Plus complexe
La couche 4 : les ports
• Un port est un numéro (0 à 65535) qui identifie une application ou
un service spécifique sur un ordinateur.
• Intérêt :
• Situation : Un ordinateur avec une seule adresse IP : [Link]. 4
applications
• Chrome (navigation web)
• Outlook (email)
• Teams (visio)
• Spotify (musique)
• Un paquet arrive avec destination [Link]
• Vers quelle application l'envoyer ?
• Impossible de savoir avec juste l'IP !
La couche 4 : les ports
• Un port est un numéro (0 à 65535) qui identifie une application ou
un service spécifique sur un ordinateur.
• Solution :
• Chrome (onglet 1) → [Link] Port source: 54321
• Chrome (onglet 2) → [Link] Port source: 54322
• Chrome (onglet 3) → [Link] Port source: 54323
• Outlook → [Link] Port source: 54324
• Teams → [Link] Port source: 54325
• Chaque application reçoit uniquement ses données
La couche 4 : les ports
• Un port est un numéro (0 à 65535) qui identifie une application ou
un service spécifique sur un ordinateur.
• Solution :
• Chrome (onglet 1) → [Link] Port source: 54321
• Chrome (onglet 2) → [Link] Port source: 54322
• Chrome (onglet 3) → [Link] Port source: 54323
• Outlook → [Link] Port source: 54324
• Teams → [Link] Port source: 54325
• Chaque application reçoit uniquement ses données
• Une socket = (ip, port)
• Une connection <-> (ip source, port source) + (ip dest, port dest)
Scénario de connection
1. Serveur web [Link] 3. Établissement connexion
démarre • Client : [Link]:54321 →
• Écoute sur le port 443 (HTTPS) Serveur : [Link]:443
• [Link]:443 en mode 4. Communication
LISTEN bidirectionnelle
• Attend des connexions • Client:54321 ←→ Serveur
2. Client (vous) ouvre Chrome 5. Fermeture
• Tape "[Link]" dans la barre • Port client 54321 est libéré
• OS choisit un port libre : 54321 • Serveur continue d'écouter sur
• [Link]:54321 443 (pour autres clients)
Transport, TCP (1/5)
Transport Control Protocol
• TCP est le protocole de couche 4 qui assure une communication
FIABLE, ORDONNÉE et CONTRÔLÉE entre deux applications.
• Rappel
• IP (couche 3) est :
• Non fiable (paquets peuvent être perdus)
• Sans ordre (paquets peuvent arriver dans le désordre)
• Sans garantie (pas d'accusé de réception)
• Sans contrôle de flux (expéditeur peut submerger destinataire)
• Pour beaucoup d'applications, c'est INACCEPTABLE !
• TCP résout tous ces problèmes
Transport, TCP (2/5)
Transport Control Protocol
Connexion ?
1. ORIENTÉ CONNEXION
• Établit une "session" avant de transmettre Application A veut envoyer données à Application B
• Comme décrocher le téléphone avant de parler :
2. FIABLE
• Garantit la livraison de TOUTES les données 1. A envoie : "Je veux me connecter" (SYN)
• Retransmission automatique si perte 2. B répond : "OK, je suis prêt" (SYN-ACK)
3. ORDRE GARANTI 3. A confirme : "C'est parti !" (ACK)
• Les données arrivent dans le bon ordre 4. MAINTENANT les données peuvent être
• Réordonnancement automatique si nécessaire échangées
4. CONTRÔLE DE FLUX 5. À la fin : échange de "Au revoir" (FIN, ACK)
• Adaptation au débit du destinataire
• Évite de submerger le récepteur → C'est le fameux "3-way handshake" (poignée de
5. CONTRÔLE DE CONGESTION main en 3 temps)
• Adaptation à l'état du réseau
• Réduit le débit si congestion détectée │
Protocole de la couche 4 : UDP (1/2)
User datagram protocol
• UDP est le protocole de couche 4 qui privilégie la RAPIDITÉ et la
SIMPLICITÉ au détriment de la fiabilité.
• Quasiment le protocole IP avec les ports en plus :
Port Source Port Destination Longueur Somme de contrôle Données
16 bits 16 bits 16 bits 16 bits longueur variable
• L’émetteur ne sait pas si les paquets arrivent, leur ordre, si le lien est
saturé.. Aucune sécurité de TCP
• Mais performance ! Pas d’overhead, de latence. Support du broadcast
Protocole de la couche 4 : UDP (2/2)
Pourquoi ?
• Applications TEMPS RÉEL :
• VoIP (Voice over IP) - Téléphonie IP
• Latence < 150ms requise (conversation naturelle)
• Un paquet perdu = imperceptible (20ms de voix manquante)
• Retransmission inutile (déjà parlé, moment passé)
• Prédictibilité > fiabilité
• Streaming vidéo/audio
• Flux continu requis
• Image perdue = petit artefact visuel
• Applications REQUÊTE-RÉPONSE SIMPLES
• DNS (Domain Name System)
• DHCP (Dynamic Host Configuration Protocol)
• NTP (Network Time Protocol) ⏰
Couches Applications
• Dans le modèle TCP/IP, la couche Application englobe les couches 5, 6 et 7 du modèle
OSI (Session, Présentation, Application).
• C'est la couche la plus PROCHE de l'utilisateur final
• Rappel :
• Couche 1 (Physique) :
• Transporte des BITS (câbles, signaux électriques)
• "Comment transmettre physiquement ? »
• Couche 2 (Liaison) :
• Organise en TRAMES, adresses MAC locales
• "Comment communiquer dans le réseau local ? »
• Couche 3 (Réseau) :
• PAQUETS IP, routage entre réseaux
• "Comment aller d'un réseau à un autre ? »
• Couche 4 (Transport) :
• SEGMENTS TCP/UDP, fiabilité ou rapidité
• "Comment les applications communiquent entre elles ? »
• Couche 7 (Application) :
• Services utilisables DIRECTEMENT par l'utilisateur
• "QUOI faire avec le réseau ?"
Couche Application
Application ou protocole ?
La couche Application EST : La couche Application N'EST PAS :
Les PROTOCOLES que les applications Les applications elles-mêmes (logiciels) :
utilisent pour communiquer
Exemples : • Chrome, Firefox, Edge (navigateurs)
• HTTP/HTTPS (web) • Outlook, Thunderbird (clients email)
• SMTP/IMAP (email) • FileZilla (client FTP)
• DNS (résolution de noms) • Logiciel DPI
• FTP (transfert fichiers) • Visionneuse DICOM
• SSH (accès distant) → Ce sont des LOGICIELS qui UTILISENT les protocoles de la
• HL7 (messages médicaux) couche Application
• DICOM (imagerie médicale)
La couche Application = les RÈGLES DE COMMUNICATION
Les applications = les PROGRAMMES qui suivent ces règles
Protocoles Web - HTTP et HTTPS
• HTTP = HyperText Transfer Protocol
• HTTP est le protocole de communication utilisé pour transférer des
pages web, images, vidéos et autres ressources sur le World Wide
Web.
• Protocole de couche Application (couche 7)
• Basé sur TCP (port 80) - connexion fiable
• Modèle requête/réponse (client/serveur)
• Sans état (stateless) - chaque requête est indépendante
• Format texte lisible par l'humain
• Le CLIENT initie TOUJOURS.
Le SERVEUR ne peut PAS initier de communication spontanément.
Evolution protocole HTTP
Version
HTTP/0.9 1991 - Version initiale (obsolète) (AU CERN)
HTTP/1.0 1996 - Ajout en-têtes, POST, etc.
HTTP/1.1 1997 - Version dominante longtemps
Encore très utilisé aujourd'hui
HTTP/2 2015 - Multiplexage, compression
Meilleure performance
HTTP/3 2022 - Basé sur QUIC (UDP)
Encore plus rapide
HTTP, exemple -> TP
• Demander la page d'accueil de l'hôpital
GET /[Link] HTTP/1.1
Host: [Link]
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Chrome/[Link]
Accept: text/html,application/xhtml+xml
Accept-Language: fr-FR,fr;q=0.9
Accept-Encoding: gzip, deflate
Connection: keep-alive
Cookie: session=abc123xyz; user_pref=dark_mode
[ligne vide - pas de corps pour GET]
Retour http
• Code d’erreur : 200 (OK), 404 (Not found)
• Types de contenu courants :
• text/html : Page web HTML
• application/json : Données structurées (API)
• image/jpeg, image/png : Images
• application/pdf : Documents PDF
• text/css : Feuilles de style
• application/javascript : Scripts
• video/mp4 : Vidéos
Comment maintenir session ?
• Chaque requête est INDÉPENDANTE
• Le serveur ne "se souvient" pas de vous d'une requête à l'autre
• Les cookies sont de PETITS FICHIERS texte stockés par le navigateur et
renvoyés à chaque requête
• Permettent de "simuler" un état/session
Cookies
2. REQUÊTES SUIVANTES :
• 1. PREMIÈRE CONNEXION :
Le navigateur RENVOIE automatiquement les cookies :
• Requête :
GET /patients HTTP/1.1
• GET /login HTTP/1.1
Host: [Link]. fr
• Host: [Link] Cookie: session=abc123xyz; user_id=dupont
• [Formulaire : username=dupont,
password=****]
Le serveur RECONNAÎT la session
→ Sait que c'est Dr Dupont
• Réponse : → Pas besoin de redemander login
• HTTP/1.1 200 OK
• Set-Cookie: session=abc123xyz; Path=/;
HttpOnly; Secure
• Set-Cookie: user_id=dupont; Path=/
• Le navigateur STOCKE ces cookies localement
http vs https
• HTTP : Tout en CLAIR -> on évite sauf si réseau de confiance
• Mots de passe visibles
• Données lisibles
• Man-in-the-Middle facile
• Port 80
• HTTPS : Tout CHIFFRÉ
• Tunnel sécurisé
• Confidentialité
• Intégrité
• Authentification serveur
• Port 443
https ?
• 1. CLIENT → SERVEUR : "Bonjour, je veux HTTPS" • 4. CLIENT génère clé de session (aléatoire)
• (ClientHello - versions TLS, cipher suites • Chiffre avec clé publique du serveur
supportés)
• Envoie au serveur
• 2. SERVEUR → CLIENT : "OK, voici mon certificat"
• 5. SERVEUR déchiffre avec sa clé privée
• (ServerHello + Certificat SSL)
• Obtient la clé de session
• 3. CLIENT vérifie certificat :
• 6. CLIENT et SERVEUR ont maintenant la même clé
• - Émis par autorité reconnue ? secrète
• - Nom de domaine correct ? • → Tunnel chiffré symétrique établi
• - Date validité OK ?
• - Signature valide ? • 7. Toutes les données HTTP passent dans ce tunnel
• → Chiffrées de bout en bout
Avec http -> url
• [Link]
ription
• Host (domaine) : [Link] → Résolu en IP via DNS
• Port : : 443 (optionnel si standard : 80 pour HTTP, 443 pour HTTPS)
• Path (chemin) : /patients/12345 → Ressource sur le serveur
• Query string : ?details=full&format=json → Paramètres (clé=valeur)
• Fragment : #prescription
• Ancre dans la page (côté client)
• Pas envoyé au serveur
http, base pour de nombreux protocole
• Exemples
• API REST
• WebDAV : utilisé pour le partage de fichiers distants
• CalDAV / CardDAV : Extensions WebDAV pour calendriers et contacts
• Oauth / OpenID : Protocoles d'authentification/autorisation sur HTTP
• Avantages d'utiliser HTTP comme base
• Infrastructure existante (serveurs web, proxies, CDN)
• Ports standards (80/443) rarement bloqués
• HTTPS pour sécurité (SSL/TLS)
• Outils de debug nombreux (navigateurs, Postman, curl)
• Load balancing facile
• Caching HTTP standard
• Compression (gzip)
• Authentification standard (Basic, Bearer, OAuth)
DNS
Domain Name System
• Les ordinateurs communiquent avec des ADRESSES IP
• Les humains préfèrent des NOMS :
• [Link]
• [Link]
• [Link]
• Impossible de se souvenir de milliers d'adresses IP !
• Les IP peuvent changer
• Les noms sont faciles à mémoriser
• Réponse : DNS
• NOM → ADRESSE IP
DNS
• Exemple : Vous tapez "[Link]"
• ÉTAPE 1 : Le navigateur vérifie son cache DNS → Si trouvé, utilise l'IP directement (FIN) ; sinon continue.
• ÉTAPE 2 : Le système d'exploitation (Windows/Linux/macOS) vérifie son cache DNS → Si trouvé, retourne l'IP au navigateur (FIN) ;
sinon continue.
• ÉTAPE 3 : Le PC envoie une requête DNS UDP au port 53 de [Link] : "Quelle est l'IP de [Link] ?"
• ÉTAPE 4 : Google DNS ([Link]) reçoit la requête et vérifie son propre cache → Si trouvé, répond immédiatement (passe à ÉTAPE 9)
; sinon résolution récursive.
• ÉTAPE 5 : [Link] interroge un serveur ROOT : "Où trouver . fr ?" → ROOT répond : "Demande à [Link] ([Link])".
• ÉTAPE 6 : [Link] interroge le serveur TLD . fr : "Où trouver [Link] ?" → TLD répond : "Demande à [Link] ([Link])".
• ÉTAPE 7 : [Link] interroge le serveur autoritaire [Link] : "Quelle est l'IP de www ?" → Serveur répond : "[Link],
TTL=3600s".
• ÉTAPE 8 : Google DNS met la réponse en cache (valable 1 heure) pour répondre instantanément aux prochaines requêtes
identiques.
• ÉTAPE 9 : [Link] renvoie la réponse au PC : "[Link] = [Link]".
• ÉTAPE 10 : Le PC et le navigateur mettent l'IP en cache, puis le navigateur peut se connecter à [Link]:443 (HTTPS).
• Durée totale : 10-30 ms (si cache) ou 50-130 ms (résolution complète)
Protocole très (trop) simple
• Tout circule en clair -> même problème que http
• Peuvent être menteurs (restrictions légales, publicités, etc)
• Des solutions : DNS over HTTPS (DoH) / DNS over TLS (DoT)
• Chiffrement des requêtes DNS
• Confidentialité (FAI ne voit pas)
• Protection MITM
• Contourne filtrage entreprise
SSH
Secure Shell
• Protocole de connexion à distance sécurisée permettant d'accéder à
un ordinateur distant et d'y exécuter des commandes en ligne de
commande.
• Caractéristiques
• Basé sur TCP, port 22
• Chiffrement FORT de bout-en-bout
• Authentification : mot de passe OU clés SSH (plus sûr)
• Remplace Telnet (obsolète, non sécurisé)
SSH
• Accès distant en ligne de commande (terminal)
• ssh admin@[Link]
• Ouvre un shell sur le serveur distant
• Transfert de fichiers sécurisé
• SCP (Secure Copy) : scp [Link] admin@serveur:/tmp/
• SFTP (SSH File Transfer Protocol) : interface FTP sur SSH
• Tunneling / Port Forwarding
• Créer des tunnels chiffrés
• VPN "maison »
• Contourner pare-feu (avec précautions)
• Exécution de commandes à distance
• ssh admin@serveur "systemctl restart apache2"
VPN
Virtual Private Network
• Technologie créant un tunnel chiffré à travers Internet, permettant de connecter
en toute sécurité un utilisateur distant à un réseau privé comme s'il était
physiquement sur place.
• SANS VPN :
• Vous (domicile) → Internet (non sécurisé) → Serveur hôpital
• Données en clair (si pas HTTPS)
• IP personnelle visible
• FAI voit tout le trafic
• Attaques Man-in-the-Middle possibles
• AVEC VPN :
• Vous (domicile) → Tunnel chiffré → Serveur VPN hôpital → Réseau interne
• Tout chiffré de bout en bout
• IP de l'hôpital (pas la vôtre)
• Comme si vous étiez physiquement à l'hôpital
• Accès ressources internes (DPI, PACS, partages fichiers)
VPN exemple
• OpenVPN :
• Créé en 2001 (23 ans)
• Mature, éprouvé, standard de facto
• ~100 000 lignes de code
• Très configurable
• TCP ou UDP
• WireGuard :
• Créé en 2016 (8 ans)
• Moderne, simple, performant
• ~4 000 lignes de code
• Minimaliste
• UDP