Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
1
Marco Listanti
Lo strato di collegamentoP t 1Parte 1
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
2
Strato di collegamento (Data Link)g ( )
Gli host e i router sono i nodi
i canali di comunicazione che collegano nodi adiacenti lungo un
link
collegano nodi adiacenti lungo un cammino sono i collegamenti (link)
collegamenti cablati
ll i i lcollegamenti wireless
LAN
Le unità di dati scambiate dai Le unità di dati scambiate dai protocolli a livello di link sono chiamate frame.
I protocolli di strato di collegamento si occupano del trasporto dei pacchetti lungo
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
p p p gun singolo canale di comunicazione (link)
3
Strato di collegamentoStrato di collegamento
Un pacchetto può essere gestito da diversi protocolli su collegamenti differentip g
Es., un pacchetto può essere gestito da Ethernet sul primo collegamento da PPP sull’ultimo e da un sul primo collegamento, da PPP sull ultimo e da un protocollo WAN nel collegamento intermedio
I i i ti d i t lli d l li ll di I servizi erogati dai protocolli del livello di link possono essere differenti
Ad esempio, non tutti i protocolli forniscono un servizio di consegna affidabile (controllo d’errore)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
4
Servizi offerti dallo strato di linkServizi offerti dallo strato di link
FramingI protocolli incapsulano i pacchetti del livello di rete all’interno di un frame a livello di linkframe a livello di link
Se necessario (reti ad accesso multiplo) il protocollo MAC controlla l’accesso al mezzo
Per identificare origine e destinatario vengono utilizzati indirizzi “MAC”
Rivelazione e correzione degli erroriGli i i d l i d l l l Gli errori sono causati dal transito del segnale nel mezzo trasmissivo
Il nodo ricevente individua la presenza di erroripè possibile grazie all’inserimento, da parte del nodo trasmittente, di bit di controllo di errore all’interno del frame
Il nodo ricevente oltre a rivelare l’errore e lo corregge
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Il nodo ricevente oltre a rivelare l errore e lo corregge
5
Servizi offerti dal livello di collegamentoServizi offerti dal livello di collegamento
ll d flControllo di flussoEvita che il nodo trasmittente saturi quello ricevente
C ffid bil d i d ti it i iConsegna affidabile dei dati e ritrasmissioneNel caso i requisiti dell’applicazione impongano una consegna affidabile dei dati il protocollo di link può effettuare la ritrasmissi ne delle frame affette da err reritrasmissione delle frame affette da errore
Questa funzione può essere eseguita anche nello strato di trasporto (es. TCP)
È normalmente utilizzata nei collegamenti soggetti a elevati tassi di i ( ll i i l )
g ggerrori (es.: collegamenti wireless)
Half-duplex e full-duplexNella modalità full duplex li estremi di un colle amento possono Nella modalità full-duplex gli estremi di un collegamento possono trasmettere contemporaneamentenella modalità half-duplex la trasmissione nei due versi è alternata
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
6
Esempio di implementazioneEsempio di implementazione
applicazione
In tutti gli host
È realizzato in una CPU Memoria
trasportorete
collegamentoNetwork Interface Card (NIC)
Controllore
host bus (es, PCI)
collegamento
Es. scheda Ethernet, PCMCI, 802.11
Implementa il livello di Trasmissione
collegamentofisico
Implementa il livello di collegamento e fisico
E’ una combinazione di Network adaptor
E una combinazione di hardware, software e firmware
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
7
Esempio di implementazioneEsempio di implementazione
pacchetto pacchetto
Control-Control-
host
lore
host
lore
Lato mittente: Lato ricevente:
mittente frame pacchetto ricevente
Incapsula un pacchetto in un frame.
Imposta il bit rilevazione
Individua gli errori, trasferimento dati affidabile, controllo di
Imposta il bit rilevazione degli errori, trasferimento dati affidabile, controllo di flusso etc
flusso, etc.
Estrae i pacchetti e li passa al nodo ricevente
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
flusso, etc. passa al nodo ricevente
8
Marco Listanti
FramingFraming
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
9
FramingFraming
H l d f l PD d (f ) Ha lo scopo di formare la PDU di strato (frame) incapsulando la PDU di strato superiore (pacchetto)L’ tità i t d i d di L’entità ricevente deve essere in grado di riconoscere senza ambiguità l’inizio e la fine di ogni frame (funzione di delimitazione)Ad ogni frame viene aggiunto all’inizio e alla fine una sequenza fissa di bit, denominata flag
L’entità ricevente esamina il flusso binario entrante e delimita le frame riconoscendo i flag di apertura e di chiusura
Problema della simulazione del flag all’interno della frame
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
10
Esempio di funzione di delimitazioneEsempio di funzione di delimitazione
b l f d l Fl d d l èUna possibile configurazione del Flag di delimitazione è01111110
Per evitare la simulazione si utilizzano le funzioni diBit stuffing
In emissione, si aggiunge uno “0” dopo ogni sequenza di cinque “1” consecutivi all’interno della frame indipendentemente da quale sia il bit successivo
Bit destuffingIn ricezione si contano gli “1” consecutiviQ nd s n i ti in “1” ns ti i si s min l if Quando sono ricevuti cinque 1” consecutivi, si esamina la cifra successiva
se è un “1”: la sequenza di cifre binarie è un Flags è n “0”: st è n bit di st ffin d indi ss limin t
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
se è un 0”: questo è un bit di stuffing e deve quindi essere eliminato
11
Esempio bit stuffingEsempio bit stuffing
Sequenza originale1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0
Sequenza trasmessa
1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0
Sequenza trasmessa
1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 0
Sequenza ricevuta bit di stuffing
1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 00 dopo cinque “1”
consecutivi:bit di stuffing
bit distuffing
bit distuffing
bit distuffing
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
bit di stuffingbit eliminato
ff gbit eliminato
gbit eliminato
gbit eliminato
12
Byte stuffing e de-stuffingByte stuffing e de stuffing
l l ll PPP (P P P l)Utilizzata nel protocollo PPP (Point to Point Protocol)Byte stuffing
In emissione se in una parte della frame compare la sequenza “01111110” (ad In emissione, se in una parte della frame compare la sequenza 01111110 (ad eccezione del flag”, viene premesso il byte “01111101”
Byte destuffingI i i i i d b t ti i “01111101” d i d i In ricezione se si ricevono due byte consecutivi “01111101” uno dei due viene eliminato
EsempioSequenza originale
1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 0
Sequenza trasmessa
1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 0
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 0
13
Marco Listanti
Rivelazione e correzione d’erroreRivelazione e correzione d errore
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
14
Controllo d’erroreControllo d errore
La trasmissione introduce erroriBit Error Rate (BER)
Il controllo d’errore si usa quando il livello trasmissivo non soddisfa i requisiti dell’applicazione
Il controllo d’errore assicura un determinato livello di accuratezza nella trasferimento di uno stream ddati
Due approcci possibilipp pError detection & retransmission (ARQ)
Forward Error Correction (FEC)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
F rwar Err r rr ct n (FE )
15
Principio base del controllo d’errorePrincipio base del controllo d errore
Si organizza la trasmissione in modo da trasformare i blocchi di dati trasmessi in particolari “parole di codice” (codeword)
Se il blocco ricevuto non è una parola di codice è considerato Se il blocco ricevuto non è una parola di codice è considerato in errore
E’ necessaria una ridondanza (overhead) costituita da un ( )insieme di bit di controllo da aggiungere al blocco dati d’utente
E’ possibile che il canale trasformi la parola di codice trasmessa in una stringa di bit che è ugualmente una parola di trasmessa in una stringa di bit che è ugualmente una parola di codice
Controllo della codeword
Informazioned’utente Codificatore Canale
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Codeword
16
Rivelazione di errore (2/4)Rivelazione di errore (2/4)
Sek è la lunghezza del blocco da proteggere;
k è il di bit di t lln-k è il numero di bit di controllo
Le codeword sono di lunghezza uguale a n bit
S PDU è l it d ti i fi i Se una PDU è colpita da errore e se questi sono in configurazione tale da non essere rivelati (sostituzione di codeword), si verifica l’evento di “errori non rivelati”I metodi di codifica per rivelare errori rientrano usualmente nella categoria dei codici con controllo di parità (parity check codes)
codici a parità singolacodici a parità singola
codici a parità a blocchi
codici a ridondanza ciclica (CRC, Cyclic Redundancy Check)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
( , y y )
17
Funzione di Error DetectionFunzione di Error Detection
Bit informativi Bit ricevuti
Calcolo deibit di controllok
bits
Calcolodei bit
CanaleComparatore
bits
dei bitdi controllo
Comparatore
Bit di controllo La frame è
Bit dicontrollo
i ticontrollo trasmessi
n-k bitaccettata solo se i
bit di controllo ricevuti sono uguali
ricevuti
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
a quelli calcolati
18
Controllo di parità singolaControllo di parità singola
Aggiunge un bit di parità a k bit informativi
Info Bit b1 b2 b3 bkInfo Bit b1, b2, b3, …, bk
Check Bit bk+1= (b1+ b2+ b3+ …+ bk ) modulo 2Codeword (b1, b2, b3, …, bk,, bk+!)
Un blocco dati trasmesso ha un numero pari di “1”Un blocco dati trasmesso ha un numero pari di 1
Il ricevitore controlla se il numero di “1” è pariE’ i l bil l i i fi i di h E’ rivelabile una qualsiasi configurazione di errore che modifica un numero dispari di bit
Tutte le configurazione di errore che modificano un numero
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Tutte le configurazione di errore che modificano un numero pari di bit non sono rilevabili
19
EsempioEsempio
B f ( b ) (0 1 0 1 1 0 0)Bit informativi (7 bit): (0, 1, 0, 1, 1, 0, 0)Bit di parità: b8 = 0 + 1 + 0 + 1 +1 + 0 + 0 = 1Codeword (8 bit): (0, 1, 0, 1, 1, 0, 0, 1)
Errore singolo nel bit 3 : (0, 1, 1, 1, 1, 0, 0, 1)N di “1” è l 5 (di i)Numero di “1” è uguale a 5 (dispari)Errore rivelato
E i bi 3 d 5 (0 1 1 1 0 0 0 1)Errore nei bit 3 and 5: (0, 1, 1, 1, 0, 0, 0, 1)Numero di “1” = 4 (pari)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Errore non rivelato
20
Prestazioni del controllo di paritàPrestazioni del controllo di parità
RidondanzaIl controllo di parità aggiunge 1 bit di ridondanza ogni k bit informativiinformativi
overhead = 1/(k + 1)
Errori rivelatiErrori rivelatiUna configurazione di errore è una stringa binaria composta da (n=k+1) bit [(k+1)-tuple], in cui sono presenti bit “1” nelle posizioni in cui si sono verificati gli errori mentre gli altri bit sono uguali a “0” cui si sono verificati gli errori, mentre gli altri bit sono uguali a 0
Tutte le configurazioni di errore con un numero dispari di bit modificati sono rivelati
Tra tutte le 2k+1 (k + 1)-tuple binarie, ½ hanno un numero dispari di “1”
Solo il 50% delle configurazioni di errore possono essere rivelate
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Solo il 50% delle configurazioni di errore possono essere rivelate
21
Prestazioni del controllo di paritàPrestazioni del controllo di parità
N l l’ h l d b Normalmente si assume l’ipotesi che i canali introducono errori sui bit in modo indipendente con probabilità p
una statistica più attendibile prevede errori a burst
Alcune configurazioni di errore sono più probabili di altre
[ ] 87
1)1()1(10000000 −=−=
ppppP [ ]
[ ]2
862 )1()1(11000000
1)()(
⎟⎟⎞
⎜⎜⎛
−=−=
−
ppppP
pppp
Poichè si può assumere p<0.5 si ha p/(1 – p)<1, le configurazioni con 1 solo errore sono più probabili delle
[ ]1
)1()1(11000000 ⎟⎟⎠
⎜⎜⎝ −
==p
pppP
configurazioni con 1 solo errore sono più probabili delle configurazioni con 2 errori e così via
Qual è la probabilità di non rivelare gli errori ?
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Q p g
22
Prestazioni del controllo di paritàPrestazioni del controllo di parità
Gl l b lGli errori non rivelabiliConfigurazione d’errore con un numero pari di “1”
{ } { })1()1(
1#.PrPr4422 +−⎟⎟
⎞⎜⎜⎛
+−⎟⎟⎞
⎜⎜⎛
=
==
−− nn ppn
ppn
dipariconerrorediconfigrivelabilenonerrore
Esempio: n=32, p=10-3
...)1(4)1(2 +−⎟⎟⎠
⎜⎜⎝
+−⎟⎟⎠
⎜⎜⎝
= pppp
p p{ }
2834330323 )101()10(32
)101()10(32
Pr
⎟⎞
⎜⎛
⎟⎞
⎜⎛
=rivelabilenonerrore
4126
2834330323
1096.4)10(35960)10(496
...)101()10(4
)101()10(2
−−−
−−−−
⋅≈+=
=+−⎟⎟⎠
⎞⎜⎜⎝
⎛+−⎟⎟
⎠
⎞⎜⎜⎝
⎛
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
)()(
23
Quanto è “buono” un codice ?Quanto è buono un codice ?
ox
x xx
x
o o
ooo
o Distanza bassa:C di
In molti canali le configurazioni di errore più probabili sono quelle con un
b di bi i x xx x
oo
ooooo
o Codicenon buono
numero basso di bit errati
Questi errori trasformano le codeword trasmesse in
x = codewordso = noncodewords
le codeword trasmesse in n-tuple “vicine”
Se le codeword sono o = noncodewords
x xooo
“vicine” tra loro allora la funzione di rivelazione può fallire
Distanza x x x
oo
oo
oooo
o
oI buoni codici massimizzano la “distanza” tra le codeword trasmesse
Distanza elevata:Codicebuono
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
x x oo
ocodeword trasmesse buono
24
Controllo di parità bi-dimensionaleControllo di parità bi-dimensionale
Un numero maggiore di bit di parità aumentano l t i i d l le prestazioni del codice
Si l
1 0 0 1 0 0
0 1 0 0 0 1La colonna
finale è f d i Si struttura la sequenza
di bit informativi in colonne
1 0 0 1 0 0
1 1 0 1 1 0
formata dai bit di parità di
ogni riga
Si aggiunge un bit di parità per ogni colonna
1 0 0 1 1 1
La riga finale è
Si aggiunge una “colonna di parità”
formata dai bit di controllo di ogni colonna
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
25
Capacità di rivelazione d’errore1 0 0 1 0 0 1 0 0 1 0 0
Capacità di rivelazione d errore
0 0 0 0 0 1
1 0 0 1 0 02
errori1
0 0 0 0 0 1
1 0 0 1 0 0
1 1 0 1 1 0
1 0 0 1 1 1
1errore 1 0 0 1 1 0
1 0 0 1 1 1 Configurazioni con 1, 2, o 3 errori
1 0 0 1 0 01 0 0 1 0 0
,possono essere sempre rivelate.
Non tutte le 1 0 0 1 0 0
0 0 0 1 0 1
1 0 0 1 0 0
3errori
1 0 0 1 0 0
0 0 0 1 0 1
1 0 0 1 0 0
Non tutte le configurazioni di >4 errori possono essere rivelate1 0 0 1 0 0
1 0 0 0 1 0
1 0 0 1 1 1 4 errori
1 0 0 1 0 0
1 0 0 1 1 0
1 0 0 1 1 1
essere rivelate
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
1 0 0 1 1 1 4 errori(non rivelabile)
1 0 0 1 1 1
26
Altri codici di rivelazione d’erroreAltri codici di rivelazione d errore
I codici a parità singola hanno scarse prestazioniElevata probabilità di non rivelare errorip
I codici bi-dimensionali hanno overhead elevatoi hi d l t di bit di t llrichiedono un numero elevato di bit di controllo
I codici più usati sono
Internet ChecksumsStrato di trasporto (implementazione software)Strato di trasporto (implementazione software)
Codici polinomiali a ridondanza ciclica (CRC)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Strato di collegamento (implementazione hardware)
27
Internet ChecksumInternet Checksum
Molti protocolli usati in Internet (es. IP, TCP, UDP) usano bit di controllo (checksum) per rivelare errori nell’header IP (o nell’header e nel campo dati delle unità dati TCP/UDP)nell header e nel campo dati delle unità dati TCP/UDP)
Il checksum è inserito in uno specifico campo dell’header delle PDU (RFC 1071)
Il checksum è ricalcolato in ogni router e quindi deve essere di facile implementazione in software
Si considera che la stringa di bit da proteggere sia composta da L parole di 16 bit
b0, b1, b2, ..., bL-1
Il checksum è una stringa bL di 16 bit
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Il checksum è una stringa bL di 16 bit
28
Calcolo del ChecksumCalcolo del Checksum
Il checksum bL è calcolato come segue
Ciascuna stringa di 16-bit è considerata un interog
x = b0+ b1+ b2+...+ bL-1 modulo 216-1
Il h k è d t d Il checksum è dato da
bL = - x modulo 216-1
Quindi, l’intero blocco trasmesso deve soddisfare la seguente proprietà
0 = b0+ b1+ b2+ ...+ bL-1 + bL modulo 216-1
Il calcolo del checksum è eseguito in softwareINFOCOM Dept
Telecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Il calcolo del checksum è eseguito in software
29
EsempioEsempio
Uso di Aritmetica modulare
Stringhe di 4 bitStringhe di 4 bit
Si usa l’aritmetica mod_(24-1)=mod_15b0 = 1100 = 12
b1 = 1010 = 10
b0+b1 = 12+10 = 7 mod_15
b2 = -7 = 8 mod 15b2 7 8 mod_15
Quindi
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
b2 = 1000
30
Marco Listanti
Protocolli di accesso multiplo
Medium Access Control (MAC)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
31
Protocolli di accesso multiploProtocolli di accesso multiplo
E d d ll d Esistono due tipi di collegamenti di rete:Collegamento punto-punto (PPP)
Impiegato in connessioni telefonicheImpiegato in connessioni telefonicheCollegamenti punto-punto tra Ethernet e host
Collegamento broadcast (cavo o canale condiviso)EthernetWireless LAN 802.11
l bl t RF di ipersone a un
kt il p t
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
canale cablatocondiviso
RF condivisa(es. 802.11 WiFi)
RF condivisa(satellite)
cocktail party (rumore, aria condivisi)
32
Protocolli di accesso multiploProtocolli di accesso multiplo
C h l d d Centinaia o anche migliaia di nodi possono comunicare direttamente su un canale broadcastbroadcast
Si genera una collisione quando i nodi ricevono due o più frame contemporaneamente o più frame contemporaneamente.
Protocolli di accesso multiploProtocolli che fissano le modalità con cui i nodi regolano le loro trasmissioni sul canale condivisoLa comunicazione relativa al canale condiviso deve utilizzare lo stesso canale
non c’è un canale “out of band” per la coordinazione
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
non c è un canale out-of-band per la coordinazione
33
Protocollo di accesso multiplo idealeProtocollo di accesso multiplo ideale
Se il protocollo opera su un canale broadcast di capacità di R bit/s
Quando un nodo deve inviare dati, questo dispone di un banda uguale a R bit/s
Quando M nodi devono inviare dati, questi dispongono di un banda uguale a R/M bit/s
Il protocollo è decentralizzatonon ci sono nodi masternon ci sono nodi master
non c’è sincronizzazione dei clock
Il protocollo è sempliceINFOCOM Dept
Telecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Il protocollo è semplice
34
Protocolli di accesso multiploProtocolli di accesso multiplo
P ll dd d l l ( l Protocolli a suddivisione del canale (canalizzazione statica)
Suddivide del canale in “parti più piccole” (slot di tempo Suddivide del canale in parti più piccole (slot di tempo, frequenza, codice)le parti vengono allocate ad un nodo per utilizzo esclusivo
Protocolli ad accesso dinamicoProtocolli ad accesso casuale (random access)rotocoll ad accesso casuale (random access)
I canali non vengono divisi e si può verificare una collisioneI nodi coinvolti ritrasmettono ripetutamente i pacchetti
Protocolli ad accesso controllato (controlled access)Ciascun nodo ha il suo turno di trasmissione, ma i nodi che hanno molto da trasmettere possono avere turni più lunghi.
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
35
Protocolli di accesso multiploProtocolli di accesso multiplo
Medium sharing techniquesMedium sharing techniques
Static Dynamic Medium Static channelization
Dynamic Medium Access Control
Random access
Canale partizionato
Allocazione
Controlled access
Allocazione dedicata agli utenti
l
Coordinamento preventivo
Applicazioni
Nessun coordinamento preventivo
ApplicazioniSatellite
Telefonia
ApplicazioniToken ring
Wireless
p
Applicazioni
Aloha
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Telefonia cellulare
Wireless LANs Ethernet
36Protocollo ad accesso controllato Token-PassingToken-Passing
Rete ad anello
token
tokenFrame
La stazione che detiene il token può trasmettere
Non sono possibili collisioniINFOCOM Dept
Telecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Non sono possibili collisioni
37
Random AccessRandom Access
Rete a bus
Crash!!
Una stazione trasmette quando è pronta
Possibili collisioni, strategie di ritrasmissione
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Possibili collisioni, strategie di ritrasmissione
38
Protocolli ad accesso casualeProtocolli ad accesso casuale
Quando un nodo deve inviare un pacchettoQuando un nodo deve inviare un pacchettotrasmette sempre alla massima velocità del canale, cioè R bit/snessun coordinamento a priori tra i nodim p
Se due o più nodi trasmettono “contemporaneamente” si ha una “collisione”Un protocollo ad accesso casuale definisce
Come rilevare un’eventuale collisioneLe politiche di ritrasmissione in caso di collisione
Esempi di protocolli ad accesso casualel tt d ALOHAslotted ALOHA
ALOHACSMA CSMA/CD CSMA/CA
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
CSMA, CSMA/CD, CSMA/CA
39
Prodotto Banda-RitardoProdotto Banda Ritardo
Prodotto banda ritardo
PBR = R.d (bit)R (bit/s): banda del canale
d (sec): ritardo di propagazione end-to-end
E’ il numero di bit che si trovano contemporaneamente sul canale
lunghezza elettrica del canalelunghezza elettrica del canale
Parametro chiave dei protocolli MACIl coordinamento tra i nodi richiede l’uso della banda del canale (in Il coordinamento tra i nodi richiede l uso della banda del canale (in modo esplicito o implicito)
La difficoltà del coordinamento è legata al prodotto banda-ritardo
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
40
Esempio MAC con due nodiEsempio MAC con due nodi
Distanza d kmA trasmette all’istante t=0
Distanza d kmtprop = d / ν s
A Bt=0
B non trasmette Caso 1
Btrasmette prima di t=tprop quindi A cattura il canale
A
B trasmette appena prima A B
A i l l
Caso 2
di t=tprop e rivela la collisione
bi dA B
A rivela la collisione all’istante t 2 t
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
subito dopot = 2 tprop
41
Calcolo dell’efficienzaCalcolo dell efficienza
La trasmissione di una frame ha un intervallo di vulnerabilitàuguale a 2tprop
Il nodo B non deve iniziare la trasmissione un tempo t prima e Il nodo B non deve iniziare la trasmissione un tempo tprop prima e dopo rispetto all’inizio della trasmissione di A
R bit rate del canale (bit/s)
L l h di f m (bit)L lunghezza di una frame (bit)
aLRtRtLL
+=
+=
+==
11
/11Efficienza maxρ
aLRtRtL propprop +++ 1/1
bit/s 1Massimo Throughput RLR ff ===
Prodotto banda
bit/s 1/
Massimo Throughput RatRL
Rprop
eff ++Ritardo di Propagazionetprop
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
rodotto banda ritardo normalizzato Tempo di trasmissione
di una frameRLa prop
/=
42
Valori tipici del prodotto banda-ritardoValori tipici del prodotto banda ritardo
Distanza 10 Mbit/s 100 Mbit/s 1 Gbit/s Tipo di rete
1 m 5 x 10-2 5 x 10-1 5 x 10 Desk area network (DAN)
100 m 5 x 101 5 x 102 5 x 103 Local area network (LAN)
10 km 5 x 102 5 x 103 5 x 104 Metropolitan area network (MAN)
1000 km 5 x 104 5 x 105 5 x 106 Wide area network (WAN)
100000 km 5 x 106 5 x 107 5 x 108 Global area network
Max size Ethernet frame= 1500 byte = 12000 bit = 1.2 104 bitSe aumenta il prodotto banda.ritardo l’efficienza di un protocollo MAC diminuisce
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
43
Prestazioni di ritardoPrestazioni di ritardoE[T]/X
E[T] = average frametransfer delay
A basso carico il ritardo è uguale al
dela
y X = average frametransmission time
uguale al tempo di trasmissione
ansf
er d Ad alto carico
il ritardo cresce a causa d ll tt Tr
a delle attese per l’accesso al canale
1
Carico massimo minore di 1
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011Carico
ρρmax 1
44
Dipendenza da aDipendenza da a
E[T]/X[ ]
aa′
Del
ay
aa′
ansf
er D a′ > a
Tra
Carico1
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
ρρmax 1ρ′max
45
Protocollo ALOHAProtocollo ALOHA
P ll l l’ d Protocollo sviluppato per l’interconnessione tra dipartimenti dell’Università delle Hawaii
Un nodo trasmette appena ha una frame prontapp pSe viene trasmessa più di una frame si ha una collisione (frame persa)Se un nodo non riceve un ACK entro un certo tempo (timeout) il Se un nodo non riceve un ACK entro un certo tempo (timeout), il nodo calcola il tempo di ritrasmissione (backoff time)Il nodo ritrasmette allo scadere del backoff time
tBackoff time (B)Prima trasmissione Ritrasmissione
tt0t0-X t0+X t0+X+2tprop t0+X+2tprop + B
Intervallo di Time-out
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Intervallo divulnerabilità
Time out
46
Modello prestazionale AlohaModello prestazionale Aloha
DefinizioniX : frame transmission time (costante)
S: throughput (numero medio di trame trasmesse con successo in un intervallo di X secondi) (0<S<1)
G: load (numero medio di tentativi di trasmissione in un intervallo di X secondi)
Psucc : probabilità che una trama sia trasmessa con successo
Si hasuccessPGS ⋅=
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
success
47
Modello prestazionale AlohaModello prestazionale Aloha
L’intervallo di vulnerabilità nella trasmissione di una frame è uguale a 2X succ
PP
2X] i i i 0[=
g
Si consideri che il carico G comprenda anche le
GPP
] 2n in arrivi 0[2X] in arrivi 0[
=Δ=
==
trasmissioni
Dividiamo X in n intervalli di durata Δ=X/n
n
nG 22n
n per
)1(p)-(1
∞→
−==
di durata Δ=X/n
se p è la probabilità di una trasmissione in un GeP 2
n per
−=
∞→
intervallo Δ si ha
G = n p
succ eP =
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
48
Throughput AlohaThroughput Aloha
G2
Max throughput ρmax= 1/2e (18 4%)
Gsuccess GeGPS 2−==
1/2e (18.4%)
Comportamento bimodaleper valori bassi di G 0 16
0.180.2 e-2 = 0.184
per valori bassi di G, S≈G
per valori elevati di G, S↓0 0.1
0.120.140.16
S ↓
Le collisioni sono in numero elevato il throughput tende a zero0.02
0.040.060.08
throughput tende a zeroinstabilità
0
00.0
0781
250.0
1562
50.0
3125
0.062
50.1
25 0.25 0.5 1 2 4
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
0
G
49
Slotted ALOHASlotted ALOHA
IpotesiTutti i pacchetti hanno la stessa dimensione
OperazioniQuando a un nodo arriva un nuovo pacchetto da spedire il stessa dimensione
Il tempo è suddiviso in slot; ogni slot equivale al tempo di trasmissione di un pacchetto
nuovo pacchetto da spedire, il nodo attende fino all’inizio dello slot successivo.
Se non si verifica una trasmissione di un pacchetto
I nodi iniziano la trasmissione dei pacchetti solo all’inizio d li l t
Se non si verifica una collisione: il nodo può trasmettere un nuovo pacchetto nello slot successivo
degli slot.
I nodi sono sincronizzati
Se in uno slot due o più
Se si verifica una collisione: il nodo la rileva prima della fine dello slot e ritrasmette con probabilità p il suo pacchetto Se in uno slot due o più
pacchetti collidono, i nodi coinvolti rilevano l’evento prima del termine dello slot
probabilità p il suo pacchetto durante gli slot successivi
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
50
Slotted ALOHASlotted ALOHA
ProConsente a un singolo nodo di trasmettere continuamente
ControUna certa frazione degli slot presenterà collisioni e di trasmettere continuamente
pacchetti alla massima velocità del canaleÈ fortemente decentralizzato
presenterà collisioni e di conseguenza andrà “sprecata”Un’alta frazione degli slot rimane vuota quindi inattivaÈ fortemente decentralizzato,
ciascun nodo rileva le collisioni e decide indipendentemente quando ritrasmettere.
rimane vuota, quindi inattiva
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
È estremamente semplice
51
L’efficienza dello Slotted AlohaL efficienza dello Slotted Aloha
L’efficienza è definita come la frazione Per ottenere la massima efficienza con N nodi attivi, bisogna trovare il
L efficienza è definita come la frazione di slot in cui avviene una trasmissione utile in presenza di un elevato numero di nodi attivi che hanno sempre un elevato
Supponiamo N nodi con
attivi, bisogna trovare il valore p* che massimizzaNp(1-p)N-1 → p*=1/N
Per un elevato numero di
nodi attivi, che hanno sempre un elevato numero pacchetti da spedire.
Supponiamo N nodi con pacchetti da spedire, ognuno trasmette i pacchetti in uno slot con
b bilità
Per un elevato numero di nodi, ricaviamo che
*)1(*lim 1 =− −pNp Nprobabilità pLa probabilità di successo di un dato nodo = p(1-p)N-1 36,01)11(lim
)1(lim
==−=∞→
∞→
eN
pNp
NN
N
p p
La probabilità che un nodo arbitrario abbia successo N (1 )N 1
Nel caso migliore: solo il 36% degli slot sono utilizzatati in modo utile
∞→ eNN
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
= Np(1-p)N-1 slot sono utilizzatati in modo utile
52
Throughput AlohaThroughput Aloha
GPGPGPS =Δ=== ]n in arrivi 0[ X] in arrivi 0[Gnn
success
GenGGpG
GPGPGPS−→−=−=
=Δ===
)1()1(
]n in arrivi 0[ X] in arrivi 0[
0.3680.35
0.40
Ge-G
0.1840 20
0.25
0.30
0.10
0.15
0.20
Ge-2G
0
0.05
3 5 5 5 5 5 1 2 4 8
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
0.01
563
0.03
125
0.06
25
0.12
5
0.25 0.5 1 2 4 8
53
Applicazioni slotted AlohaApplicazioni slotted Aloha
CicloCiclo
Mini slot di
. . .. . .
Slot di trasmissioneMini-slot di prenotazione
Alcuni protocolli permettono la prenotazione di slot per effettuare la trasmissione delle frameL’asse dei tempi è suddiviso in cicliOgni ciclo ha una serie di mini-slot per effettuare l g p
le prenotazioniI nodi usano ilprotocollo slotted Aloha nei mini-slot
ff tt l t i iINFOCOM Dept
Telecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
per effettuare le prenotazioni
54Accesso multiplo a rilevazionedella portante (CSMA)della portante (CSMA)
Carrier Sensing Multiple AccessUn nodo ascolta prima di trasmettereUn nodo ascolta prima di trasmettere
Se rileva che il canale è libero, trasmette l‘intera f frame
Se il canale è occupato, il nodo aspetta un altro intervallo di tempo
Analogia: se qualcun altro sta parlando Analogia: se qualcun altro sta parlando, aspettate finché abbia concluso
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
55
CSMACSMA
Un nodo ascolta il canale prima di trasmettereUn nodo ascolta il canale prima di trasmettereSe il canale è occupato, attende o applica il backoff (varie opzioni)Se il canale è libero, inizia la trasmissione
Intervallo di vulnerabilità è uguale a 2tprop (effetto di cattura del canale)Se avviene una collisione, questa interessa l’intera frameqse a>1, nessun guadagno rispetto ai protocolli ALOHA or slotted ALOHA
Il nodo A inizia
A
Il nodo A inizia a trasmettere a t = 0
Il nodo A cattura il canale al tempo
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Ap
t = tprop
56
Algoritmi di persistenzaAlgoritmi di persistenza
Si li d d i l il l Si applicano quando un nodo rivela il canale occupato1-persistent CSMA
Il nodo inizia la trasmissione non appena il canale si libera
Basso ritardo e bassa efficienza
N i t t CSMANon-persistent CSMAIl nodo applica un backoff, quindi effettua un nuovo carrier sensing
Alto ritardo e alta efficienzaAlto ritardo e alta efficienza
p-persistent CSMAIl nodo attende fino a che Wait il canale si libera, quindiIl nodo attende fino a che Wait il canale si libera, quindi
con probabilità p trasmette
con probabilità 1-p attende un breve periodo (mini-slot) ed effettua nuovamente il carrier sensing
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Il ritardo e l’efficienza possono essere modulati
57
Prestazioni 1-persistent CSMAPrestazioni 1 persistent CSMA
Prestazioni0.53
S0,6
Migliori di Aloha e slotted
l h 0.45
a = 0.01
0,4
0,5
Aloha per piccoli valori di a
0 16
a =0.1
0 2
0,3
Peggiori di Aloha se a > 1
0.16
a = 10,1
0,2
G0
0,02
0,03
0,06
0,13
0,25 0,5 1 2 4 8 16 32 64
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
58
Prestazioni non-persistent CSMAPrestazioni non persistent CSMA
Valori di 0 1S
0 9 Valori di troughput più alto rispetto a
0.81
a = 0.010 60.70.80.9
p1-persistent per piccoli valori di a
0.51
0 30.40.50.6
a
Peggiori di Al h 1
0.14a = 0.1
a = 10
0.10.20.3
Aloha se a > 1G0
0.02
0.03
0.06
0.13
0.25 0.
5 1 2 4 8 16 32 64
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
59
CSMA with Collision Detection (CSMA/CD)CSMA with Collision Detection (CSMA/CD)
“Ascolta prima di parlare e mentre parli”
Rivela le collisioni ed interrompe la trasmissione
Un nodo ascolta il canale prima di trasmettereDopo l’inizio della trasmissione il nodo continua ad ascoltare il canale pper rivelare le collisioni
Se viene rivelata una collisione, tutti i nodi coinvolti interrompono la trasmissione e rischedulano dopo un intervallo di backofftrasmissione e rischedulano dopo un intervallo di backoff
Nel protocollo CSMA, una collisione comporta un periodo di inutilizzazione del canale uguale a al tempo di trasmissione di una g pframe
Il protocollo CSMA-CD riduce le durate delel collisioni e quindi t l’ ffi i
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
aumenta l’efficienza
60
Rivelazione di una collisioneRivelazione di una collisione
B inizia aA inizia a
trasmettere a t = 0
BB inizia atrasmettere at = tprop- δ;
A
B rivela la collisione a t = t
BAt = tprop
BA rivela la collisione a A
Nel caso peggiore i nodi coinvolti nella collisione le
t= 2 tprop- δ
Nel caso peggiore i nodi coinvolti nella collisione le rivelano dopo un tempo t=2tprop
Mi d l t di t i i di fINFOCOM Dept
Telecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
Minore del tempo di trasmissione di una frame
61
EthernetEthernet
Lo standard LAN Ethernet LAN è basato sul CSMA-CD
1-persistent CSMA
R = 10 Mbit/sR = 10 Mbit/s
tprop = 51.2 μs512 bit = 64 byte slot
distanza massima 2.5 km + 4 repeaters
Truncated Binary Exponential BackoffDopo l’n-ma collisione, il tempo di backoff è scelto tra i valori {0 1 2k 1} dove k=min(n 10)
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
{0, 1,…, 2k – 1}, dove k=min(n, 10)
62
Confronto MAC random accessConfronto MAC random access
1 1 P CSMACSMA/CD
0.8
1 1-P CSMA
Non-P CSMAρ
0.6Slotted ALOHA
ρmax
0.2
0.4ALOHA
00.01 0.1 1
a
For piccoli valori di a: CSMA-CD ha il throughput migliore
For grandi valori di a: le prestazioni migliori sono di Aloha &
INFOCOM DeptTelecomunicazioni e Telerilevamento - Prof. Marco Listanti - A.A. 2010/2011
For grandi valori di a: le prestazioni migliori sono di Aloha & slotted Aloha