STANDARD DI INTERFACCIA. Riprendendo la definizione CCITT di una rete ISDN : …è una rete per la...

Post on 01-May-2015

212 views 0 download

Transcript of STANDARD DI INTERFACCIA. Riprendendo la definizione CCITT di una rete ISDN : …è una rete per la...

STANDARD DI INTERFACCIASTANDARD DI INTERFACCIA

Riprendendo la definizione CCITT di una rete ISDN : “…è una rete per la fornitura di una vasta gamma di servizi ai quali accedere attraverso delle interfacce utente-rete normalizzate”Abbiamo introdotto i “Raggruppamenti Funzionali”:

• NT1, NT2 (Terminazioni di Rete)• TE1, TE2 (Apparecchio Terminale)• TA (Adattatore di Terminale

per una rete ISDN

Standard di Interfaccia dello Strato FisicoStandard di Interfaccia dello Strato Fisico

Sono gli standard che definiscono le caratteristiche Sono gli standard che definiscono le caratteristiche elettriche e meccaniche dei cavi, dei connettori, la elettriche e meccaniche dei cavi, dei connettori, la codifica elettrica dei bit, ecc…codifica elettrica dei bit, ecc…

Standard di Interfaccia dello Strato Standard di Interfaccia dello Strato FisicoFisico

In generale : • specificano le interconnessioni tra DTE (Data

Terminating Equipment) e DCE (Data Circuit-Terminating Equipment)

• i principali standard sono:• RS-232 (o equivalenti CCITT V.24 e V.28)• V.35• G.703; G.704

Il collegamento tra DCE e DTE rappresenta una parte Il collegamento tra DCE e DTE rappresenta una parte del livello Fisico del modello OSI.del livello Fisico del modello OSI.

CCITT Reccomendation V.24CCITT Reccomendation V.24

…the interface between the computer or terminal and the modem is an example of a physical layer protocol.

The terminal or computer is called a DTE (Data Terminal Equipment) and the modem is called a DCE (Data Circuit-Terminating Equipment)

Questi DTE e DCE hanno molto in comune con i TE (Terminal Equipment) introdotti nelle reti ISDN

Tutte le apparecchiature di collegamento a linee di trasmissione dati analogiche o digitali prevedono la connessione del terminale, del computer o dell’apparecchiatura di rete (ad es. router, bridge) mediante un’interfaccia seriale.

Per convenzione si denota con DTE il terminale o la scheda di interfaccia, mentre si denota con DCE una generica apparecchiatura di comunicazione (modem, ecc..).

La trasmissione dei dati, normalmente La trasmissione dei dati, normalmente organizzati in byte, può avvenire tra DTE e DCE organizzati in byte, può avvenire tra DTE e DCE in diversi modi: seriale o parallela, sincrona o in diversi modi: seriale o parallela, sincrona o asincrona, con controllo di flusso hardware o asincrona, con controllo di flusso hardware o secondo diversi protocollo softwaresecondo diversi protocollo software

RS-232

Standard per la trasmissione seriale a bassa velocita' (sino a 19200 bps)

Utilizza un connettore a 9 o 25 pin (vaschetta)

Prevede 8 segnali + 1 schematura

L’RS-232 è stato introdotto nelle reti ISDN parlando di Terminal Equipment di tipo 2Normalmente il connettore femmina è sul DCE e il maschio è sul DTE.

Connettore a 25 pin Connettore a 25 pin per RS-232per RS-232

L’RS-232 specifica 25 circuiti, ma molto spesso soltanto una piccola parte di essi servono per le comuni applicazioni pratiche.La corrispondenza tra valori di tensione e valori logici dei segnali è riportata in tabella:

Valore logico 1 0Tensione -15V<v<-3V 3V<v<15V

Tensioni tra –3V e +3V non sono riconosciute come segnali validi.

In relazione allo standard RS-232, lo standard V.24 specifica principalmente come agiscono i circuiti di interfaccia; lo standard V.28 specifica le caratteristiche elettriche dei segnali.

DTEDTE DCEDCE

Protective Ground (1)Transmit (2)Receive (3)Request to Send (4)Clear to Send (5)Data Set Ready (6)Signal Ground (7)Carrier Detect (8)Data Terminal Ready (20)

RS-232 (9 fili)

DTEDTE

Protective Ground (1)Transmit (2)Receive (3)

Signal Ground (7)DCEDCE

RS-232 (NULL MODEM - 4 fili)

V.35V.35

Standard simile a RS-232, ma per velocità superiori a 19200 bps

E’ lo standard più diffuso per interfacce ad alta velocità, da 48 Kb/s a 2 Mb/s.

Utilizza una combinazione di segnali di controllo, dati e segnali di clock, in trasmissione.

Il connettore previsto da questo standard è quello mostrato in figura, a 34 pin, anche detto ISO 2593.

I MODEMI MODEM

MODEM: MOdulatore e DEModulatore Si utilizzano per effettuare trasmissioni

seriali su rete pubblica Trasformano il segnale da Digitale ad

Analogico e viceversa (nel caso di rete analogica)

In generale rendono il segnale idoneo alla trasmissione su rete pubblica

In generale i modem consentono di adattare il segnale digitale proveniente da un’interfaccia seriale ad un canale trasmissivo limitato in banda sia inferiormente che superiormente.

Il caso più comune è quello del canale telefonico, dove il mezzo genralmente presenta una banda passante di 3000 Hz, tra 300 e 3300 Hz

La codifica dei bit è modificata tramite opportune tecniche di modulazione (da cui il nome MoDem).

Esempio di utilizzo Esempio di utilizzo di MODEM di MODEM

MODEMMODEMRete di

TelecomunicazioniPubblica

DTE DTE

DCE DCE

RS232

Standard per Modem

V.21 300 b/s

V.22 1200 b/s

V.22 bis 2400, 1200 b/s

V.23 1200 b/s usato per Videotel

V.32 9600, 4800 b/s

V.32 bis 14400, 12000, 9600, 7200, 4800 b/s

V.34 33600, 31200, 28800, 26400, 24000,21600, 19200, 16800, 14400, …. b/s

………………………………………………………

V.90 56000 b/s

V.90 56000 b/s

Tecniche ARQTecniche ARQ

(protocolli a finestra)(protocolli a finestra)

Tecniche per la protezione dagli errori Tecniche per la protezione dagli errori di trasmissionedi trasmissione

• FEC (forward error correction)FEC (forward error correction)

• ARQ (automatic retransmission request)ARQ (automatic retransmission request)

Si introducono bit di parità Si introducono bit di parità tra le informazioni di controllo tra le informazioni di controllo all’interno delle PDUall’interno delle PDU

PCIPCI SDU SDU

PDUPDU

BIT DIBIT DIPARITA’PARITA’

FECFEC (forward error correction)(forward error correction)

i bit di parità sono usati per cercare dii bit di parità sono usati per cercare dicorreggere gli erroricorreggere gli errori

ARQARQ ((automatic retransmission requestautomatic retransmission request))

i bit di parità sono usati per cercare dii bit di parità sono usati per cercare dirivelare gli erroririvelare gli errori

ARQARQ ((automatic retransmission requestautomatic retransmission request))

controllo congiunto di controllo congiunto di

• erroreerrore• flussoflusso• sequenzasequenza

su una connessionesu una connessione

ARQARQ ((automatic retransmission requestautomatic retransmission request))

su una connessione controllo congiunto di :su una connessione controllo congiunto di :

• errore: il trasferimento dati deve avvenire con il minor errore: il trasferimento dati deve avvenire con il minor numero di errori possibilenumero di errori possibile

• flusso: la velocità di trasferimento dei dati verso il rx deveflusso: la velocità di trasferimento dei dati verso il rx deve essere inferiore alla sua capacità di accettare ed essere inferiore alla sua capacità di accettare ed elaborare i datielaborare i dati

• sequenza: il rx deve essere in grado di ricostruire la sequenza: il rx deve essere in grado di ricostruire la sequenza delle unità dati trasferitesequenza delle unità dati trasferite

PCIPCI SDU SDU

PDUPDU

BIT DIBIT DIPARITA’PARITA’

NUMERANUMERAZIONEZIONE

Si introducono bit di numerazione Si introducono bit di numerazione tra le informazioni di controllo tra le informazioni di controllo all’interno delle PDUall’interno delle PDU

I protocolli a finestra usano generalmente due tipi di PDU:

• la PDU che permette di trasferire l’informazione utile sul canale indicata con DT (dall’inglese DaTa)

• la PDU che contiene la conferma dell’avvenuta corretta ricezione indicata con ACK (ACKnowledgment)

N.B. : La PDU DT contiene sempre un minimo di bit per il controllo del protocollo.

Tre tecniche ARQTre tecniche ARQ

• Stop and wait (Alternating bit)Stop and wait (Alternating bit)• Go back NGo back N• Selective repeatSelective repeat

descriviamo le tre tecniche in un ambiente di comunicazionedescriviamo le tre tecniche in un ambiente di comunicazioneunidirezionale unidirezionale (il tx trasmette una PDU di tipo DT e il rx una (il tx trasmette una PDU di tipo DT e il rx una PDU di tipo ACK)PDU di tipo ACK)

RR

PCIPCI SDU SDU

PCIPCI

TT

{{• bit di paritàbit di parità• N(T) N(T) numero d’ordinenumero d’ordine• indirizziindirizzi

PCIPCI SDU SDU

TT

V(T) V(T)

RR

V(R) V(R)

PCIPCI

{{• N(R) N(R) numero d’ordine attesonumero d’ordine atteso• indirizziindirizzi

TT

V(T) V(T)

RR

V(R) V(R)

Stop and waitStop and wait

il trasmettitoreil trasmettitore

• invia una PDUinvia una PDU• attiva un orologio (tempo di timeout)attiva un orologio (tempo di timeout)• si pone in attesa della conferma di si pone in attesa della conferma di ricezione (acknowledgment - ACK)ricezione (acknowledgment - ACK)• se scade il timeout prima dell’arrivose scade il timeout prima dell’arrivo della conferma, ripete la trasmissionedella conferma, ripete la trasmissione

Stop and waitStop and wait

il ricevitoreil ricevitore

• riceve una PDUriceve una PDU• controlla la correttezza della PDUcontrolla la correttezza della PDU• controlla il numero di sequenzacontrolla il numero di sequenza• se la PDU è corretta invia la confermase la PDU è corretta invia la conferma

di ricezionedi ricezione

InizializzazioneInizializzazione

V(T) = 0 V(T) = 0 al trasmettitoreal trasmettitore

V(R) = 0V(R) = 0 al ricevitoreal ricevitore

TT

V(T)=0 V(T)=0

RR

V(R)=0 V(R)=0

Trasmissione di una PDU con N(T) = V(T)Trasmissione di una PDU con N(T) = V(T)

Avvio dell’ orologioAvvio dell’ orologio

TT

V(T)=0 V(T)=0

RR

V(R)=0 V(R)=0 N(T)=0 SDUN(T)=0 SDU

Ricezione di una PDURicezione di una PDU

Controllo di correttezzaControllo di correttezza

Controllo di sequenza: N(T) = V(R) ?Controllo di sequenza: N(T) = V(R) ?

TT

V(T)=0 V(T)=0

RR

V(R)=0 V(R)=0 N(T)=0 SDUN(T)=0 SDU

Incremento di V(R)Incremento di V(R)

Trasmissione di un ACK con N(R) = V(R)Trasmissione di un ACK con N(R) = V(R)

N(R)=1N(R)=1

TT

V(T)=0 V(T)=0

RR

V(R)=1 V(R)=1

Ricezione di un ACK Ricezione di un ACK

Controllo di sequenza: N(R) = V(T) + 1 ?Controllo di sequenza: N(R) = V(T) + 1 ?

Arresto dell’ orologioArresto dell’ orologio

N(R)=1N(R)=1

TT

V(T)=0 V(T)=0

RR

V(R)=1 V(R)=1

Incremento di V(T)Incremento di V(T)

N(R)=1N(R)=1

TT

V(T)=1 V(T)=1

RR

V(R)=1 V(R)=1

V(T) = 1 V(T) = 1 al trasmettitoreal trasmettitore

V(R) = 1V(R) = 1 al ricevitoreal ricevitore

TT

V(T)=1 V(T)=1

RR

V(R)=1 V(R)=1

Trasmissione di una PDU con N(T) = V(T)Trasmissione di una PDU con N(T) = V(T)

Avvio dell’ orologio Avvio dell’ orologio

TT

V(T)=1 V(T)=1

RR

V(R)=1 V(R)=1 N(T)=1 SDUN(T)=1 SDU

Ricezione di una PDU Ricezione di una PDU

Controllo di correttezzaControllo di correttezza

Controllo di sequenza: N(T) = V(R) ?Controllo di sequenza: N(T) = V(R) ?

TT

V(T)=1 V(T)=1

RR

V(R)=1 V(R)=1 N(T)=1 SDUN(T)=1 SDU

Incremento di V(R)Incremento di V(R)

Trasmissione di un ACK con N(R) = V(R)Trasmissione di un ACK con N(R) = V(R)

N(R)=2N(R)=2

TT

V(T)=1 V(T)=1

RR

V(R)=2 V(R)=2

Ricezione di un ACK Ricezione di un ACK

Controllo di sequenza: N(R) = V(T) + 1 ?Controllo di sequenza: N(R) = V(T) + 1 ?

Arresto dell’ orologioArresto dell’ orologio

N(R)=2N(R)=2

TT

V(T)=1 V(T)=1

RR

V(R)=2 V(R)=2

Incremento di V(T)Incremento di V(T)

N(R)=2N(R)=2

TT

V(T)=2 V(T)=2

RR

V(R)=2 V(R)=2

V(T) = 2 V(T) = 2 al trasmettitoreal trasmettitore

V(R) = 2V(R) = 2 al ricevitoreal ricevitore

TT

V(T)=2 V(T)=2

RR

V(R)=2 V(R)=2

V(T) = 0V(T) = 0

V(T) = 0V(T) = 0

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 2V(T) = 2

V(R) = 0V(R) = 0

V(R) = 1V(R) = 1

V(R) = 1V(R) = 1

V(R) = 2V(R) = 2

V(R) = 2V(R) = 2

N (T) = 0N (T) = 0

N (R) = 1N (R) = 1

N (T) = 1N (T) = 1

N (R) = 2N (R) = 2

TT

V(T) V(T)

RR

V(R) V(R)

La numerazione delle PDU e`La numerazione delle PDU e`

• indispensabileindispensabile• ciclicaciclica

Poiché il campo riservato alla numerazione è costituito Poiché il campo riservato alla numerazione è costituito da un numero finito di bit, i numeri di sequenza possonoda un numero finito di bit, i numeri di sequenza possonoappartenere solo ad un insieme finito quindi si ripetonoappartenere solo ad un insieme finito quindi si ripetonociclicamente. Questo è valido in generale.ciclicamente. Questo è valido in generale.

In questo caso basta un solo bit per la numerazioneIn questo caso basta un solo bit per la numerazione

Alternating bit protocolAlternating bit protocol

(il tx trasmette una PDU alla volta; così il rx)(il tx trasmette una PDU alla volta; così il rx)

V(T) = 0V(T) = 0

V(T) = 0V(T) = 0

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 0V(T) = 0

V(R) = 0V(R) = 0

V(R) = 1V(R) = 1

V(R) = 1V(R) = 1

V(R) = 0V(R) = 0

V(R) = 0V(R) = 0

N (T) = 0N (T) = 0

N (R) = 1N (R) = 1

N (T) = 1N (T) = 1

N (R) = 0N (R) = 0

TT

V(T) V(T)

RR

V(R) V(R)

V(T) = 0V(T) = 0

V(T) = 0V(T) = 0

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 0V(T) = 0

V(R) = 0V(R) = 0

V(R) = 1V(R) = 1

V(R) = 1V(R) = 1

V(R) = 0V(R) = 0

V(R) = 0V(R) = 0

TT

V(T) V(T)

RR

V(R) V(R)

N (T) = 0N (T) = 0

N (R) = 1N (R) = 1

N (T) = 1N (T) = 1

N (R) = 0N (R) = 0

Vediamo il caso di mancata ricezione di una PDU dal txVediamo il caso di mancata ricezione di una PDU dal tx(ad es. per ritardi o errori sul canale)(ad es. per ritardi o errori sul canale)

TT

V(T) V(T)

RR

V(R) V(R)

V(T) = 0V(T) = 0

V(T) = 0V(T) = 0

V(R) = 0V(R) = 0

V(R) = 1V(R) = 1

N (T) = 0N (T) = 0

N (R) = 1N (R) = 1

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(R) = 1V(R) = 1

V(R) =_V(R) =_

N (T) = 1N (T) = 1

TT

V(T) V(T)

RR

V(R) V(R)

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 0V(T) = 0

V(R) = 1V(R) = 1

V(R) = 1V(R) = 1

V(R) = 0V(R) = 0

V(R) = 0V(R) = 0

N (T) = 1N (T) = 1

N (T) = 1N (T) = 1

N (R) = 0N (R) = 0

La regolazione del timeout e` molto delicataLa regolazione del timeout e` molto delicata

Vediamo ora il caso di perdita di una conferma Vediamo ora il caso di perdita di una conferma (ad es. perché scatta il timeout e non è giunto l’ACK dal rx)(ad es. perché scatta il timeout e non è giunto l’ACK dal rx)

TT

V(T) V(T)

RR

V(R) V(R)

V(T) = 0V(T) = 0

V(T) = 0V(T) = 0

V(R) = 0V(R) = 0

V(R) = 1V(R) = 1

N (T) = 0N (T) = 0

N (R) = 1N (R) = 1

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(R) = 1V(R) = 1

V(R) = 0V(R) = 0N (R) = 0N (R) = 0

N (T) = 1N (T) = 1

TT

V(T) V(T)

RR

V(R) V(R)

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 1V(T) = 1

V(T) = 0V(T) = 0

V(R) = 1V(R) = 1

V(R) = 0V(R) = 0

V(R) = 0V(R) = 0

V(R) = 0V(R) = 0

N (T) = 1N (T) = 1

N (R) = 0N (R) = 0

N (R) = 0N (R) = 0

N (T) = 1N (T) = 1

scartatascartata

Esistono molte altre combinazioni possibili di Esistono molte altre combinazioni possibili di ritardi e di errori sul canale che potrebbero dare ritardi e di errori sul canale che potrebbero dare luogo a errori di protocollo. luogo a errori di protocollo. Un altro caso particolare è quello che accade Un altro caso particolare è quello che accade quando abbiamo un quando abbiamo un Canale Non Sequenziale Canale Non Sequenziale : : Il canale non mantiene la sequenza delle PDU Il canale non mantiene la sequenza delle PDU trasmesse.trasmesse.

Si verificano malfunzionamentiSi verificano malfunzionamenti

• perdita di PDUperdita di PDU• duplicazione di PDUduplicazione di PDU

Canale non sequenziale : Canale non sequenziale : esempio le reti a commutazione di pacchetto esempio le reti a commutazione di pacchetto

Il protocollo stop-and-wait non va bene.Il protocollo stop-and-wait non va bene.

Il protocollo si blocca e quindiIl protocollo si blocca e quindi

servono meccanismi per ripartireservono meccanismi per ripartire

Usando Usando

• un maggior numero di bit un maggior numero di bit per la numerazioneper la numerazione• un tempo di vita massimo un tempo di vita massimo per le PDU e gli ACKper le PDU e gli ACK

si riducono le possibilità si riducono le possibilità di malfunzionamentidi malfunzionamenti

Il protocollo Stop and wait è in genere poco Il protocollo Stop and wait è in genere poco efficiente perché il trasmettitore deve fermarsi efficiente perché il trasmettitore deve fermarsi ad ogni PDU inviata per attendere la risposta ad ogni PDU inviata per attendere la risposta del ricevitore, lasciando il canale inutilizzato del ricevitore, lasciando il canale inutilizzato per un tempo che può essere anche lungo.per un tempo che può essere anche lungo.

Permettere la trasmissione di Permettere la trasmissione di piu` di una PDU prima di fermarsipiu` di una PDU prima di fermarsiin attesa delle conferme migliora in attesa delle conferme migliora le prestazionile prestazioni

Go back NGo back N

Go back NGo back N

il trasmettitoreil trasmettitore

• invia fino ad N PDUinvia fino ad N PDU• attiva un orologio per ogni PDUattiva un orologio per ogni PDU• si pone in attesa delle conferme di si pone in attesa delle conferme di ricezione (ACK)ricezione (ACK)• se scade un timeout prima dell’arrivose scade un timeout prima dell’arrivo delle conferme, ripete la trasmissionedelle conferme, ripete la trasmissione di tutte le PDU non ancora confermatedi tutte le PDU non ancora confermate

Go back NGo back N

il ricevitoreil ricevitore

• riceve una PDUriceve una PDU• controlla la correttezza della PDUcontrolla la correttezza della PDU• controlla il numero di sequenzacontrolla il numero di sequenza• se la PDU è corretta invia la confermase la PDU è corretta invia la conferma

di ricezionedi ricezione

Protocolli a finestraProtocolli a finestra

nn

PDUPDUconfermateconfermate

PDUPDUin attesain attesa

di confermadi conferma

PDU PDU che possonoche possono

essere trasmesseessere trasmesse

PDU PDU che non possonoche non possono

ancora essere ancora essere trasmessetrasmesse

WWTT

nn

WWRR

WWTT

Go-back-N perché il tx può tornare indietro (per ritrasmettere) Go-back-N perché il tx può tornare indietro (per ritrasmettere) fino a un numero di PDU pari alla dimensione di Wfino a un numero di PDU pari alla dimensione di WTT

La numerazione delle PDU anche qui è ciclica.La numerazione delle PDU anche qui è ciclica.Se si stabiliscono :Se si stabiliscono :

k bit di numerazione, allora k bit di numerazione, allora la numerazione delle unità è max N =la numerazione delle unità è max N =2k

Go back NGo back N

il trasmettitore e` significativamente il trasmettitore e` significativamente piu` complesso rispetto al caso piu` complesso rispetto al caso dello Stop and waitdello Stop and wait

• memoria memoria • orologiorologi• algoritmialgoritmi

Si possono usare conferme cumulativeSi possono usare conferme cumulative

• orologio al ricevitoreorologio al ricevitore

La finestra di trasmissione non può avereLa finestra di trasmissione non può averedimensioni arbitrariedimensioni arbitrarie

WTk 2

Il protocollo Go back N quindi Il protocollo Go back N quindi e` piu` efficiente dello Stop and waite` piu` efficiente dello Stop and waitma richiede :ma richiede :

• memoriamemoria• piu` orologipiu` orologi• algoritmi piu`complicatialgoritmi piu`complicati al trasmettitoreal trasmettitore

La complessita` del ricevitore La complessita` del ricevitore rimane inalterata rimane inalterata

La finestra di ricezione ha ancora La finestra di ricezione ha ancora dimensione 1dimensione 1

Gli ACK cumulativi pero` richiedonoGli ACK cumulativi pero` richiedonoun orologioun orologio

Nel protocollo Go back N il ricevitore puòNel protocollo Go back N il ricevitore puòaccettare solo PDU in sequenzaaccettare solo PDU in sequenza

Accettare PDU corrette, ma fuori sequenza,Accettare PDU corrette, ma fuori sequenza,migliorerebbe ulteriormente le prestazioni:migliorerebbe ulteriormente le prestazioni:

Selective repeatSelective repeat

Il protocollo Selective repeat usaIl protocollo Selective repeat usa

• finestra di trasmissionefinestra di trasmissione• finestra di ricezionefinestra di ricezione

di dimensioni maggiori di 1di dimensioni maggiori di 1

In questo caso si dimostra che deve essereIn questo caso si dimostra che deve essere

W WT Rk 2

il trasmettitoreil trasmettitore

• invia fino ad N PDUinvia fino ad N PDU• attiva un orologio per ogni PDUattiva un orologio per ogni PDU• si pone in attesa delle conferme di si pone in attesa delle conferme di ricezione (ACK)ricezione (ACK)• se scade un timeout prima dell’arrivose scade un timeout prima dell’arrivo della conferma, ripete la trasmissionedella conferma, ripete la trasmissione della PDU della PDU

Selective repeatSelective repeat

Selective repeat Selective repeat

il ricevitoreil ricevitore

• riceve una PDUriceve una PDU• controlla la correttezza della PDUcontrolla la correttezza della PDU• controlla il numero di sequenzacontrolla il numero di sequenza

il ricevitoreil ricevitore

• se la PDU è corretta ed in sequenzase la PDU è corretta ed in sequenza

invia un ACKinvia un ACK

Selective repeat Selective repeat

il ricevitoreil ricevitore• se la PDU e` se la PDU e`

- corretta- corretta

- non in sequenza- non in sequenza

- entro la finestra di ricezione- entro la finestra di ricezione

la memorizza ed invia un ACK relativo la memorizza ed invia un ACK relativo

all’ ultima PDU ricevuta in sequenzaall’ ultima PDU ricevuta in sequenza

Selective repeat Selective repeat

Si possono usare Si possono usare conferme negative (NAK)conferme negative (NAK)

L’ uso del NAK puo` avvantaggiareL’ uso del NAK puo` avvantaggiareancheanche

• Stop and WaitStop and Wait• Go back NGo back N

Il protocollo Selective repeat consente una maggiore efficienza rispetto ai protocolli precedenti ma al prezzo di una maggiore quantità di memoria e di una elaborazione supplementare sulle PDU.

Spesso i prezzi da pagare in termini di memoria e elaborazione sono tali che si preferisce usare comunque il protocollo Go-back-N, che rappresenta fra i tre un buon compromesso.