• Aucun résultat trouvé

LA COUCHE LIAISON DE DONNEES A POUR OBJECTIF PRINCIPAL de proposer à la couche

N/A
N/A
Protected

Academic year: 2022

Partager "LA COUCHE LIAISON DE DONNEES A POUR OBJECTIF PRINCIPAL de proposer à la couche"

Copied!
20
0
0

Texte intégral

(1)

Réseaux

Cours 2 – Couche Liaison de Données

Notes de Cours

L

A COUCHE LIAISON DE DONNEES A POUR OBJECTIF PRINCIPAL de proposer à la couche Réseau supérieure une abstraction pour la connexion locale.

S’appuyant sur la couche physique, elle doit donc, en outre, en gérer les conséquences (erreurs, pertes, ...).

1 "Vous êtes ici"

TCP/IP OSI

Application Presentation Session Transport Network Data link

Physical 7

6 5 4 3 2 1

Application

Transport Internet

Host-to-network

Not present in the model

2 La Couche OSI Liaison de Données

2.a Objectifs de la Couche Liaison

En s’appuyant sur la couche physique, la couche Liaison de Données doit offrir une connexion localeà la couche Réseau

(2)

— connexion

— un-vers-un (unicast)

— un-vers-plusieurs (multicast)

— un-vers-tous = diffusion (broadcast)

— fiable ou non

— utilisant unespace de nomlocal

Comme cette couche s’appuie sur la couche physique, elle doit gérer lesconséquencesdes imperfections de la couche physique.

2.b Exemples de Protocoles Couche 2

— Ethernet

— MPLS (Multiprotocol Label Switching)

— HDLC (High-Level Data Link Control)

— FDDI (Fiber Distributed Data Interface)

— PPP (Point-to-Point Protocol)

— ...

2.c Des Sous-Couches pour la Couche Liaison

— LLC : Contrôle Logique de la Liaison

— MAC : Contrôle d’Accès au Médium : des protocoles adaptés aux spécificités des couches physiques sous-jacentes

Data link layer

Network layer

Physical layer Signal

(a) (b)

LLC MAC

LLC LLC

Packet Packet

Packet

MAC MAC

2.d Ponts

La subdivision en deux sous-couches, même si elle contrevient en un certain sens à la la norme OSI, permet de constituer des segments de Niveau 2 s’appuyant sur des segments de Niveau 1 de naturephysiquedifférente.

(3)

Host A

Network

LLC

MAC

Physical

Pkt

Pkt

Pkt 802.11

802.11 Pkt

Host B

Bridge Pkt

Pkt

Pkt 802.3

802.3 Pkt

??

??

??

802.11

802.11 Pkt Pkt

802.11 Pkt

802.3 Pkt

802.3 Pkt

802.3 Pkt Pkt

Wireless LAN Ethernet

?

?

??

Un pont 802.11 vers 802.3 2.e Aparté : Matériel Réseau

Couche OSI Matériel Application passerelle applicative

Transport passerelle transport

Réseau routeur

Liaison commutateur,pont Physique concentrateur,répéteur 2.f Matériel Réseau : Définitions

répéteur réémet, amplifie un signal physique ;

concentrateur permet de raccorder différents segments dans un réseau en reproduisant le signal dans tous les segments ;

commutateur permet de raccorder plus efficacement différents segment en ne reproduisant le signal que dans le seul segment raccordé destinataire de la trame ;

pont raccorde en un même segment des segments de couche physique de nature différente ; routeur appareil effectuant le routage (cf le cours "Routage").

2.g Types de Connexion

Service sans connexion et sans acquittement — couche physique très fiable

— ou erreurs corrigées par les couches supérieures

— ou données supportant ces erreurs Ex : LAN, flots temps réels, voix

Service sans connexion et avec acquittement — émetteur sait si le message est arrivé

(4)

— réémission possible

Service avec connexion =>service fiable — établissement de la connexion

— numérotation des messages

— chaque message est envoyé et reçu une seule fois

— l’ordre des messages est respecté

2.h Services Détaillés de la Couche Physique

— organisation des données ( =>trames)

— Synchronisation

— services de la sous-couche LLC

— services de la sous-couche MAC 2.i Types d’Erreurs

1. Erreur demodification: la séquence de bits reçus est différente de celle émise.

2. Erreur d’omission: la séquence de bits n’est pas reçue

3. Erreur d’addition: une séquence de bits est reçus alors qu’aucune n’avait été émise.

(égalementduplication) 2.j La Sous-Couche LLC

Rôle

1. contrôle des erreurs (omissions) 2. contrôle de flux

2.k La Sous-Couche d’Accès au Médium Rôle

— Adressage physique (adresse MAC)

— Détection/Correction d’erreurs (modification)

— Adaptation au canal

— gestion descollisions

— taille maximale de trame

— =>optimisation de l’utilisation du canal

3 Mise en Trame

3.a Trames

On appelletramesles messages de la couche liaison de données.

La délimitation des trames n’est pas triviale

— Des “espaces” ne suffisent pas

(5)

— Longueurs fixes ou variables ?

=>bourrageéventuel

— Délimitationsexplicites:

— comptage de caractères

— caractères de début/fin (=>transparence)

— utilisation de séquences physiques non-codante.

3.b Transparence

Si l’on utilise un caractère (suite de bits) particulier pour indiquer lafin d’une trame, il ne faut pas que ce caractère apparaisseà l’intérieurdes données encapsulées.

1. Aucune garantie sur le contenu

2. =>si ce caractère apparait, il estmodifiépour qu’il n’y ait pas de confusion possible 3. cette modification doit êtreinverséeà la réception

Exemple : Si le caractère est 01111110, on insère systématiquement un bit 0 après 5 1 consécutifs dans le contenu. A la réception, le0qui succède à 51consécutifs est supprimé.

— 01111111=>011111011=>01111111

— 01111101=>011111001=>01111101

3.c Séquence Physique Non-Codante : Codage Manchester

Pour distinguer, un0d’une absence de message, on code0par l’alternancede deux ten- sions et1par l’alternance inverse.

Bit stream 1 0 0 0 0 1 0 1 1 1 1

Binary encoding

Manchester encoding

Differential

Manchester encoding

Transition here indicates a 0

Lack of transition here indicates a 1

(a)

(b)

(c)

Ce qui signifie que l’absence de signal indique bien l’absence de message.

4 Gestion des Erreurs

4.a Problématique

Aucun système physique ne peut être parfait et il est indispensable de prendre en compte les erreurs potentielles.

Rappel : si le signal est fiable à 99,9999999%, il se produira une erreur par seconde si la vitesse d’émission est de 1Gb/s.

(6)

4.b Détections/Corrections des Erreurs Principe :redondance d’information

La redondance , c’est-à-dire la construction du code, peut se faire par

— concaténation d’une valeur de contrôle

— insertion

— transformation 4.c Codes

— Code

ensemblede mots pouvant être émis

— efficacité algorithmique vs robustesse : respect d’une règle simple permettant de donner une structure robuste

— Inconvénients :

— réduction dudébit utile quand tout va bien

— on ne peut détectertoutesles erreurs : erreurs résiduelles 4.d Détection : Bit de Parité

— Code :Code=mots binaires de 8 bits dont le nombre de bits à 1 est pair.

— Fonctionnement :

— mot à émettre :1010111(7bits)

— émission deM=10101111

— réception deM0

— siM0 ∈Code=>OK

— sinon =>erreur

NBerreur résiduelle possible siplus d’une erreurlors de la transmission.

4.e Correction des Erreurs

Principe :redondance d’informationsupplémentairepermettant de détecter et corriger les erreurssans retransmission.

— Même avantages et inconvénients que précédemment

limite théoriqueThéorème de Shannon(cf Cours 1bis) presqu’atteinte par lesturbocodes.

Voir aussi sur la page web du cours.

4.f Principe de la Correction d’Erreur

— Emission du motM∈Code

— Réception du motM0

— SiM0 ∈Code=>OK

— Sinon corriger : trouver un motM00 prochedeM0

(7)

— Erreurs résiduelles :

— ne pas détecter l’erreur (M6= M0 ∈Code)

— mauvaise correction (M00 6= M) 4.g Comment Construire un Code Correcteur

1. Un bon code est un ensemble quiremplit régulièrementl’espace de tous les mots

2. distance de Hammingentre deux mots binairesxety(de même taille) est le nombre de 0à changer en1et inversement pour passer dexày.

3. structure régulière avec des propriétés fines =>structures mathématiques.

4.h Exemples de Codes Détecteurs et Correcteurs Exemples :

— Code de Hamming

— Codes linéaires

— Codes polynomiaux

— Turbocodes

4.i Exemple des Codes Polynomiaux

On identifie une suite de bits avec unpolynôme P(X)deF2[X].

La séquence de contrôle correspond au reste de la division euclidienne de XkP(X) par un polynôme (particulièrement) bien choisi Q(X) de degré k. Ainsi les mots du codes sont exactement les multiples de Q(X).

On aXkP(X) =U(X)×Q(X) +R(X)doncXkP(X) +R(X) =U(X)×Q(X). On envoie la séquence binaire correspondant àXkP(X) +R(x).

— pourQ(X) =X+1 on retrouve le code de parité !

— CRC-32:Q(X) = X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+ X4+X2+X+1

(8)

Frame : 1 1 0 1 0 1 1 0 1 1 Generator: 1 0 0 1 1

Transmitted frame: 1 1 0 1 0 1 1 0 1 1 1 1 1 0

Message after 4 zero bits are appended: 1 1 0 1 0 1 1 0 1 1 0 0 0 0

1 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 0 0 1 1 0 0 0 0 1 0 1 0

1 0 0 1 1 1 0 0 1 1 1 0 0 1 1

0 0 0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0 0 0

0 0 1 0 1 0 0 0 0 0

0 1 0 1 1 0 0 0 0 0

1 0 1 1 0 1 0 0 1 1

0 1 0 1 0 0 0 0 0 0

1 0 1 0 0 1 0 0 1 1

0 1 1 1 0 0 0 0 0 0 1 1 1 0

Remainder

4.j Pour Résumer

— Détection :

(9)

— moins de bits de contrôle

— retransmission du message entieren cas de détection d’erreurs

— Correction :

— plus de bits de contrôle

— pas de retransmission

Le choix s’effectue donc en fonction d’un compromis débit utile / coût retransmission

5 Gestion des Pertes

5.a Problématique

1. La trame est complètementperdue 2. =>ACKaccusé de réception

3. Mais si l’accusé de réception se perd ? 4. On les numérote

5. mais a-t-on assez de "numéros" ? 6. ? ... ?

5.b Protocole du Bit Alterné : Principes 1. Communication unidirectionnelle

2. "Envoyer et attendre" (... un accusé de réception)

— envoyer(M,seq)

— declencherTemporisation()

— si recevoir() == ACK(M) seq++;(* gerer suivant(M) *) sinonenvoyer(M,seq)(* et recommencer ...*)

3. Si le message deACK(M)est perdu, on va retransmettreMalors qu’il a été correctement reçu

=>duplication=>numéro de séquenceseq 4. Combien de bits pour coderseq?

5. Ce problème se pose seulement entre un message et le suivant, pas entre le prédéces- seur et le suivant

=>il suffit d’avoirseq∈ {0, 1}, =>ACK0,ACK1 5.c Protocole du Bit Alterné : Détails

Source : A. Tanenbaum Réseaux

(10)
(11)

6 Contrôle de Flux

6.a Objectifs du Contrôle de Flux

Principe :Asservirla vitesse de l’émission aux capacités de réception.

— idée : utilisation d’unefenêtre d’émission glissante

— messages et acquittements sont numérotés

— un certain nombre de messages peuvant être émis avant attente acquittement

— un acquittement positif de valeurk acquitte tous les messages de numérotation inférieure ou égale àk

— sinon :NACK=>

— demande de retransmission d’un message donné,

— fenêtre de retransmission

— Inconvénients :

— simpliste

— risque deduplication

— risque de pertes si les fenêtres ne sont pas bien calculéesdynamiquement.

6.b Méthode de Vérification

— Batterie de tests

— Preuve mathématique

— Preuve assistée

— Vérification formelleEx : Réseaux de Petri

A 1 B 2

Un réseau de Petri est composé de places (les ronds) et de transitions (les traits). Des jetons (petits ronds noirs) se déplacent dans ce système en respectant la règle suivante :

— une transitionTne peut être réalisée que si chacune des places origines d’un arc entrant à la transitionTcontient au moins un jeton.

— ces jetons sont alors détruits

— un jeton est créé dans chacune des places cibles des arcs sortants deT

(12)

6.c Réseaux de Petri

Emit 0

Wait for Ack 0

Wait for Ack 1 Emit 1

Process 0

Expect 1

Expect 0 Process 1 0

Ack 1

A

B 2

4

Timeout Reject 0

Reject 1 Timeout

3

1 C C: Seq 0 on the line D: Ack on the line E: Seq 1 on the line

D

E 5

8

9 Loss

6 Loss

7 Loss

10

11 F

G

Sender's state

Channel state

Receiver's state

Exemple pour le protocole du bit alterné.

7 Accès au Canal de Communication

7.a Collisions Electriques

On parle d’unecollisionlorsque deux émetteurs tentent d’accéder simultanément au ca- nal de communication.

(13)

Core

Connector

Hub Transceiver

cable Vampire tap Controller

Transceiver

Transceiver + controller

Twisted pair Controller

(a) (b) (c)

Dans un LAN utilisant les signaux électriques sur paire torsadée, les interfaces se partage un même circuit élecriqueen parallèle.

Pour transmettre un message, un émetteur va modifier la tension et les récepteurs vont détecter le changement de tension et l’interpréter.

Si deux stations émettent en même temps, le signal électrique devient une composition des deux signaux émis et devientindécodable.

7.b Accès Aléatoire avec Ecoute

— CSMA : Carrier Sense Multiple Access

— écouter le canal avant d’émettre

— si occupé, différer l’émission

— problème : il peut subsister des collisions en cours d’émission

— CSMA avec détection de collision : CSMA/CD

— à l’écoute préalable on ajoute l’écoute pendant la transmission

— Réémission au bout d’un temps aléatoire

— Utilisé par Ethernet, normalisation ISO 802.3

— Algorithme :

— les stations écoutent le canal

— si le canal est libre, elles commencent à émettre

— Quand une collison est détectée : envoi de signaux spéciaux appelés bits de bour- rage (jam32)

— Réémission après un temps aléatoire

— La tranche canal :

— Durée s’écoulant entre l’instant d’émission des premiers bits et le moment où l’émetteur est sûr que son message est complètement transmis

— Tc=2×délai de propagation

— Round trip delay :

— temps de détection de la collision

— tps aller + tps retour + tps jam

(14)

7.c Collisions Electromagnétiques

C Range of C's radio

A B C

(a)

A C

Range of A's radio

B

(b) A wants to send to B

but cannot hear that B is busy

B wants to send to C but mistakenly thinks the transmission will fail

C is transmitting

A is transmitting

Contrairement au cas précédent, il n’est pas possible de détecter toutes les collisions à l’émetteur. De plus, l’émission est en général incompatible avec la réception, c’est-à-dire qu’il n’est pas possible de détecter les collisions.

7.d Esquive des Collisions (CSMA/CA)

Dans le cas d’une communication sans-fil, on utilise un protocole permettant de prévenir les collisions. Cela revient à demander et d’obtenirexplicitementla parole avant d’émettre.

RTS Data

A

CTS ACK

B

C

D

NAV

NAV Time

— RTS (Ready To Send) : déclaration d’intention de l’émetteur

— CTS (Clear to Send) : le récepteur est disponible

— NAV : non disponible pour émettre 7.e Attente Variable

Le temps d’attente après occupation du canal est variable suivant le mode utilisé :

— DIFS :DistributedInter Frame Space

— PIFS :PointInter Frame Space

(15)

ACK

Time SIFS

PIFS DIFS

Control frame or next fragment may be sent here

EIFS

PCF frames may be sent here

DCF frames may be sent here

Bad frame recovery done here

Cela permet une meilleure gestion d’utilisation de la capacité du médium, même avec des collisions.

8 Protocoles de Liaison de Données

8.a Ethernet

— famille de protocoles compatibles définis par IEEE

— transmission de paquets detaille variabledans des réseaux filaires et non filaires Rappel :IEEE: Institute of Electrical and Electronics Engineers est une association pro- fessionnelle constituée d’ingénieurs électriciens, d’informaticiens, de professionnels du do- maine des télécommunications, etc.

8.b Ethernet filaire

— Norme 802.3 : réseau local bande de base avec méthode d’accès CSMA/CD (détaillé précédemment)

— variantes :

Câble Longueur Nbre stations

10base2 coaxial fin 200m 30

100baseT paire torsadée 100m 1024 100baseFX fibre optique 2000m 1024 8.c Ethernet : Caractéristiques

— Débit Nominal : 10/100Mbits/s

— Transmission en bande de base avec codage Manchester (±2, 5Ven 10BASE-T)

— sur câblecatégorie 5: deux paires utilisées

(16)

8.d Ethernet Gigabit

fibre optique — 1000BASE-LX en mode single

— 5 km

paire torsadée — 1000BASE-T

— 4 paires utilisées sur un câble catégorie 5 et supérieure

— 100 m

vers l’infini et au-delà norme IEEE 802.3ba : 40 Gb/s et100 Gb/snormalisé en 2010.

8.e Ethernet : niveau MAC Rappel :

— Fonctions sous-niveau MAC

— mise en trame

— adressage

— détection erreur

— réaction aux signaux d’occupations du canal/collisions

— Format de la trame :

7 1 2 ou 6 2 ou 6 2 46-1500 4

préamb. dél. Adresse Adresse type ou Données + remplissage CRC dest. source longueur

8.f Ethernet : les Champs

— Préambule : 7×10101010=>synchro bit

— Délimiteur : 1×10101011=>synchro octet/trame

— Adresse destination : sur 6 octets en général, si tous les bits sont à 1 =>diffusion

— Longueur : au minimum 64 octets

— Bourrage : si la longueur des données est insuffisante

— Contrôle : CRC-32

(17)

8.g Adresses Ethernet

— Adresses uniques sur 48 bits (attribuées à la fabrication)

— 3 types d’adresse reconnue par le coupleur

— adresse physique d’un coupleur

— 24 bits fabricant (OUI)

— 24 bits n de série

— diffusion générale (broadcast)

— FF:FF:FF:FF:FF:FF

— diffusion multidestinataires (multicast) (bit de point faible du premier octet à 1)

— 01:80:C2:00:00:00 8.h Arbre Couvrant Ethernet

Pour des raisons d’efficacité, on organise un segment en arbre grâce à descommutateurs qui filtre le traffic.

RPport racine –DPport désigné –BPport bloqué

(18)

8.i Récapitulatif : Ethernet Filaire Processus Ponts, Commutateurs, Stations Communication message

Nommage adresse MAC

Synchronisation protocoles de gestion du flux Cache et Réplication N/A

Tolérance aux Défaillances Codes détecteurs et correcteurs - Protocoles de gestions des omissions

Sécurité aucune (physique) 8.j Transmissions sans fil

Pragmatisme vs modèle OSI :

Applications/Profiles

Baseband Link manager Other

LLC

Service discovery Telephony

Control Audio

RFcomm

Logical link control adaptation protocol

Physical radio

Application layer

Physical layer Data link layer Middleware layer

8.k Bluetooth

Bits

Bits

The 18-bit header is repeated three times for a total of 54 bits

Access code Header Data

72 54 0-2744

Checksum Type

Addr 1 F A S

1 1 4

3 8

(19)

8.l 802.11 : communication sans fil

Sous-couche MAC

802.11 Infrared

802.11 FHSS

802.11 DSSS

802.11a OFDM

802.11b HR-DSSS MAC

sublayer

Physical layer Data link layer Upper layers

Logical link control

802.11g OFDM

Trame

Frame control Bytes

Dur- ation

Address 1

Address 2

Address 3

Address

Seq. 4 Data

2 2 6 6 6 2 6 0-2312

Check- sum

4

Version Type Subtype 2

Bits 2 4

To DS

From

DS MF Re-

try PwrMore W O Frame control

1 1 1 1 1 1 1

1

8.m Déclinaisons du 802.11

La norme principale est déclinée en améliorations :

802.11a wifi 5GHz haut débit 30Mbits/s

802.11b wifi débit 11Mbits/s, large base installée 802.11d i18n gestion de l’allocation légaledes fréquences 802.11e QoS gestion de la qualié de service

802.11f itinérance utiliser plusieurs point d’accès successivement 802.11g wifi débit 54Mbits/s, majoritaire

802.11h Europe standard européen (hiperLAN 2) 802.11i sécurité gestion cryptographique complète

802.11j Japon standard japonais

802.11n WWiSE très haut débit : 300Mbits/s Sans parler des “améliorations” propriétaires...

8.n Modes

Un réseau sans fil (WLAN) peut fonctionner

— en mode décentralisé :ad hoc

— en mode infrastructure :points d’accès

(20)

8.o Récapitulatif : Ethernet Sans-fil

˜Idem Ethernet filaire + Processus répéteurs WDS

Sécurité L’interception passive étanttrès facile, il faut rajouter une couche de sécurité :

— WEP : cassé (2001)

— =>protocoles plus sûrs ( ?)

— WPA/WPA2cassé partiellement (2008-2010)

=>cf Cours ultérieurs etoption Cryptographie

9 Crédits

— Figures A. Tanenbaum. Libre d’utilisation pour l’enseignement

— Wikimedia CC-BY-SA

Références

Documents relatifs

– les machines doivent déterminer si le datagramme doit être délivré sur le réseau physique sur lequel elles sont connectées (routage direct) ou bien si le datagramme doit

envoi de paquets LCP encapsulés dans des trames PPP pour libérer la connexion, libération de la liaison physique lorsque le.

Une alimentation ne peut pas envoyer directement un paquet à une alimentation en envoi seul sur la liaison unidirectionnelle (scénario 4).

● Débit binaire : nombre de bits transmis par secondes (en bsec -1 ). Débit binaire = log 2 (valence) x rapidité

● Définition : Soit deux mots d’un code, t1 et t2 : la distance de Hamming séparant t1 et t2 est le nombre de positions binaires. ayant des valeurs différentes entre t1 et

[r]

Au niveau de la couche liaison de données, la carte réseau assure le contrôle de lien logique, la désignation ; le verrouillage de trame, l’accès au média ainsi que la

Ces vitesses permettent de définir d'une part la forme des d'ondes à l'arrivée du signal, d'autre part, le temps mis par une onde pour se propager le long de la ligne. En effet,