Couches Basses (cours acc el er e

of 67 /67
Couches Basses (cours acc ´ el ´ er ´ e) Cours 1,5 E. Godard Aix-Marseille Universit´ e M1 Informatique eseaux 2019/20

Embed Size (px)

Transcript of Couches Basses (cours acc el er e

Couches Basses (cours accéléré) - Cours 1,5E. Godard
Aix-Marseille Universite
Couche Physique
Couche Physique
E. Godard Couches Basses 4 / 44
Couche Physique
Fonctions Fondamentales
Tranformation d’une suite de bits en signaux et inversement
Faire abstraction du support physique : adaptation au support,
Partage du support,
Couche Physique
Transmission
Information : etat logique (suite de 0 et 1) ←→ etat du support (signal)
Signal : I etats physiques possibles : amplitude, frequence, phase I un symbole correspond a un etat physique du systeme I valence V : nombre de symboles physiques utilises
E. Godard Couches Basses 6 / 44
Couche Physique
Exemple : Modem
La modulation consiste a tranformer une suite binaire en signal physique en faisant varier une de ces caracteristiques physiques :
amplitude,
phase,
Modem : Modulateur / Demodulateur
Modulation combinee : variation sur plusieurs caracteristiques (en general phase et amplitude).
Les positions des points dans le plan complexe representent z0, les parametres (phase et amplitude) des ondes electriques correspondantes.
E. Godard Couches Basses 7 / 44
Couche Physique
meme type de codage
frequence de base differente
P ow
Couche Physique
Traitement du Signal
La numerisation est la transformation d’un signal physique en suite binaire. L’echantillonnage est une des etapes de la numerisation, elle consiste a mesurer la valeur du signal a (petits) intervalles reguliers.
E. Godard Couches Basses 9 / 44
Couche Physique
Fonction f : R −→ R, 2π periodique
On a
0 Time T
1 152 3 4 5 6 7 9 10111213 148
0.50
0.25
1 2 3 4 5 6 7 8 Harmonic number
(a)
(b)
(c)
(d)
Couche Liaison de Donnees
Couche Liaison de Donnees
Couche Liaison de Donnees
E. Godard Couches Basses 12 / 44
Couche Liaison de Donnees
Objectifs de la Couche Liaison
En s’appuyant sur la couche physique, la couche Liaison de Donnees doit offrir une connexion locale a la couche Reseau
connexion I un-vers-un (unicast) I un-vers-plusieurs (multicast) I un-vers-tous = diffusion (broadcast)
fiable ou non
utilisant un espace de nom local
Comme cette couche s’appuie sur la couche physique, elle doit frequemment gerer les consequences des imperfections de la couche physique.
E. Godard Couches Basses 13 / 44
Couche Liaison de Donnees
Ethernet
PPP (Point-to-Point Protocol)
G.hn (home networking)
Couche Liaison de Donnees
Des Sous-Couches pour la Couche Liaison
LLC : Controle Logique de la Liaison
MAC : Controle d’Acces au Medium : des protocoles adaptes aux specificites des couches physiques sous-jacentes
Data link
Couche Liaison de Donnees
E. Godard Couches Basses 16 / 44
Couche Liaison de Donnees
Reseau routeur Liaison commutateur, pont
Physique concentrateur,repeteur
Couche Liaison de Donnees
Reseau routeur Liaison commutateur, pont
Physique concentrateur,repeteur
Couche Liaison de Donnees
Types de Connexion
Service sans connexion et sans acquittement couche physique tres fiable ou erreurs corrigees par les couches superieures ou donnees supportant ces erreurs Ex : LAN, flots temps reels, voix
Service sans connexion et avec acquittement emetteur sait si le message est arrive reemission possible
Service avec connexion => service fiable etablissement de la connexion numerotation des messages chaque message est envoye et recu une seule fois l’ordre des messages est respecte
E. Godard Couches Basses 18 / 44
Couche Liaison de Donnees
organisation des donnees ( => trames )
E. Godard Couches Basses 19 / 44
Couche Liaison de Donnees
Types d’Erreurs
1 Erreur de modification : la sequence de bits recus est differente de celle emise.
2 Erreur d’omission : la sequence de bits n’est pas recue
3 Erreur d’addition : une sequence de bits est recus alors qu’aucune n’avait ete emise. (egalement duplication)
E. Godard Couches Basses 20 / 44
Couche Liaison de Donnees
Types d’Erreurs
1 Erreur de modification : la sequence de bits recus est differente de celle emise.
2 Erreur d’omission : la sequence de bits n’est pas recue
3 Erreur d’addition : une sequence de bits est recus alors qu’aucune n’avait ete emise. (egalement duplication)
E. Godard Couches Basses 20 / 44
Couche Liaison de Donnees
Types d’Erreurs
1 Erreur de modification : la sequence de bits recus est differente de celle emise.
2 Erreur d’omission : la sequence de bits n’est pas recue
3 Erreur d’addition : une sequence de bits est recus alors qu’aucune n’avait ete emise. (egalement duplication)
E. Godard Couches Basses 20 / 44
Couche Liaison de Donnees
Types d’Erreurs
1 Erreur de modification : la sequence de bits recus est differente de celle emise.
2 Erreur d’omission : la sequence de bits n’est pas recue
3 Erreur d’addition : une sequence de bits est recus alors qu’aucune n’avait ete emise. (egalement duplication)
E. Godard Couches Basses 20 / 44
Couche Liaison de Donnees
2 controle de flux
Couche Liaison de Donnees
2 controle de flux
Couche Liaison de Donnees
2 controle de flux
Couche Liaison de Donnees
Role
Adressage physique (adresse MAC)
Detection/Correction d’erreurs (modification)
Adaptation au canal I gestion des collisions I taille maximale de trame I => optimisation de l’utilisation du canal
E. Godard Couches Basses 22 / 44
Gestion des Erreurs
Gestion des Erreurs
Principe : redondance d’information mathematique permettant de detecter et/ou corriger les erreurs sans retransmission.
limite theorique Theoreme de Shannon (cf poly)
presqu’atteinte par les turbocodes.
E. Godard Couches Basses 24 / 44
Gestion des Erreurs
Principe : redondance d’information mathematique permettant de detecter et/ou corriger les erreurs sans retransmission.
limite theorique Theoreme de Shannon (cf poly) presqu’atteinte par les turbocodes.
E. Godard Couches Basses 24 / 44
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
Problematique des Pertes
2 => ACK accuse de reception
3 Mais si l’accuse de reception se perd ?
4 On les numerote
6 ? ... ?
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq)
I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation()
I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ?
5 Ce probleme se pose seulement entre un message et le suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
1 Communication unidirectionnelle 2 ”Envoyer et attendre” (... un accuse de reception)
I envoyer(M,seq) I declencherTemporisation() I si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinon envoyer(M,seq) (* et recommencer ...*)
3 Si le message de ACK(M) est perdu, on va retransmettre M
alors qu’il a ete correctement recu => duplication => numero de sequence seq
4 Combien de bits pour coder seq ? 5 Ce probleme se pose seulement entre un message et le
suivant, pas entre le predecesseur et le suivant => il suffit d’avoir seq ∈ {0, 1}, => ACK0, ACK1
E. Godard Couches Basses 26 / 44
Gestion des Erreurs
famille de protocoles compatibles definis par IEEE
transmission de paquets de taille variable dans des reseaux filaires et non filaires
Rappel : IEEE : Institute of Electrical and Electronics Engineers est une association professionnelle constituee d’ingenieurs electriciens, d’informaticiens, de professionnels du domaine des telecommunications, etc.
E. Godard Couches Basses 27 / 44
Gestion des Erreurs
Ethernet filaire
Norme 802.3 : reseau local bande de base avec methode d’acces CSMA/CD (detaille precedemment)
variantes :
100baseT paire torsadee 100m 1024 100baseFX fibre optique 2000m 1024
E. Godard Couches Basses 28 / 44
Gestion des Erreurs
Debit Nominal : 10/100Mbits/s
Transmission en bande de base avec codage Manchester (±2, 5V en 10BASE-T)
sur cable categorie 5 : deux paires utilisees
E. Godard Couches Basses 29 / 44
Gestion des Erreurs
fibre optique 1000BASE-LX en mode single 5 km
paire torsadee 1000BASE-T 4 paires utilisees sur un cable categorie 5 et superieure 100 m
vers l’infini et au-dela norme IEEE 802.3ba : 40 Gb/s et 100 Gb/s normalise en 2010.
E. Godard Couches Basses 30 / 44
Gestion des Erreurs
Ethernet : niveau MAC
Fonctions sous-niveau MAC
I mise en trame I adressage I detection erreur I reaction aux signaux d’occupations du canal/collisions
Format de la trame :
7 1 2 ou 6 2 ou 6 2 46-1500 4 preamb. del. Adresse Adresse type ou Donnees + remplissage CRC
dest. source longueur
Gestion des Erreurs
Ethernet : les Champs
Preambule : 7×10101010 => synchro bit
Delimiteur : 1×10101011 => synchro octet/trame
Adresse destination : sur 6 octets en general, si tous les bits sont a 1 => diffusion
Longueur : au minimum 64 octets
Bourrage : si la longueur des donnees est insuffisante
Controle : CRC-32
Gestion des Erreurs
3 types d’adresse reconnue par le coupleur
I adresse physique d’un coupleur EUI-48
24 bits fabricant (OUI attribue par l’IEEE) 24 bits n de serie
I diffusion generale (broadcast)
FF:FF:FF:FF:FF:FF
I diffusion multidestinataires (multicast) (bit de point faible du premier octet a 1)
01:80:C2:00:00:00
Gestion des Erreurs
Arbre Couvrant Ethernet
Pour des raisons d’efficacite, on organise un segment en arbre grace a des commutateurs qui filtre le traffic.
E. Godard Couches Basses 34 / 44
Gestion des Erreurs
Arbre Couvrant Ethernet
Pour des raisons d’efficacite, on organise un segment en arbre grace a des commutateurs qui filtre le traffic.
RP port racine – DP port designe – BP port bloque E. Godard Couches Basses 35 / 44
Gestion des Erreurs
Processus
Communication
Nommage
Synchronisation
Gestion des Erreurs
Recapitulatif : Ethernet Filaire
Nommage adresse MAC (EUI-48)
Cache et Replication N/A
Securite aucune (physique)
Gestion des Erreurs
Transmissions sans fil
Physical radio
Application layer
Physical layer
Gestion des Erreurs
Bluetooth
Bits
Bits
The 18-bit header is repeated three times for a total of 54 bits
Access code Header Data
Gestion des Erreurs
Check- sum
1 1 1 1 1 1 11
E. Godard Couches Basses 40 / 44
Gestion des Erreurs
Declinaisons du 802.11
802.11a wifi 5GHz haut debit 30Mbits/s 802.11b wifi debit 11Mbits/s, large base installee 802.11d i18n gestion de l’allocation legale des frequences 802.11e QoS gestion de la qualie de service 802.11f itinerance utiliser plusieurs point d’acces successivement 802.11g wifi debit 54Mbits/s, majoritaire 802.11h Europe standard europeen (hiperLAN 2) 802.11i securite gestion cryptographique complete 802.11j Japon standard japonais 802.11n WWiSE tres haut debit : 300Mbits/s
Sans parler des “ameliorations” proprietaires... E. Godard Couches Basses 41 / 44
Gestion des Erreurs
en mode decentralise : ad hoc
en mode infrastructure : points d’acces
E. Godard Couches Basses 42 / 44
Gestion des Erreurs
Recapitulatif : Ethernet Sans-fil
˜Idem Ethernet filaire +
Processus repeteurs WDS
Securite L’interception passive etant tres facile, il faut rajouter une couche de securite :
WEP : casse (2001) => protocoles plus surs
( ?) WPA/WPA2 casse partiellement (2008-2010) =>cf Cours ulterieurs et option Cryptographie
E. Godard Couches Basses 43 / 44
Gestion des Erreurs
Recapitulatif : Ethernet Sans-fil
˜Idem Ethernet filaire +
Processus repeteurs WDS
Securite L’interception passive etant tres facile, il faut rajouter une couche de securite :
WEP : casse (2001) => protocoles plus surs ( ?) WPA/WPA2
casse partiellement (2008-2010) =>cf Cours ulterieurs et option Cryptographie
E. Godard Couches Basses 43 / 44
Gestion des Erreurs
Recapitulatif : Ethernet Sans-fil
˜Idem Ethernet filaire +
Processus repeteurs WDS
Securite L’interception passive etant tres facile, il faut rajouter une couche de securite :
WEP : casse (2001) => protocoles plus surs ( ?) WPA/WPA2 casse partiellement (2008-2010)
=>cf Cours ulterieurs et option Cryptographie
E. Godard Couches Basses 43 / 44
Gestion des Erreurs
Recapitulatif : Ethernet Sans-fil
˜Idem Ethernet filaire +
Processus repeteurs WDS
Securite L’interception passive etant tres facile, il faut rajouter une couche de securite :
WEP : casse (2001) => protocoles plus surs ( ?) WPA/WPA2 casse partiellement (2008-2010) =>cf Cours ulterieurs et option Cryptographie
E. Godard Couches Basses 43 / 44
Credits
Credits
Wikimedia CC-BY-SA
Couche Physique
Fonctions Fondamentales
Couche Liaison de Données
Des Sous-Couches pour la Couche Liaison
Ponts
Types d'Erreurs
Gestion des Erreurs
Problématique des Pertes
Ethernet