Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Reti di Telecomunicazioni e Telematica, Sbobinature di Reti Di Telecomunicazioni

Questo documento comprende in modo dettagliato tutti gli argomenti trattati nelle lezioni del corso di Reti di Telecomunicazioni e Telematica per il corso di laurea in Ingegneria Informatica L - 8. In particolare, sono trattati: 1. Topologie di rete e stack protocollare 2. Livello 2 dello stack protocollare 3. Standard IEEE 802.X, reti LAN, e dispositivi di estensione 4. VLAN, router, e reti geografiche 5.Reti internet e architettura TCP - IP 6. Strato di rete 7. Forwarding e routing 8. Domain Name System 9. Applicazioni in internet 10. Strato di trasporto 11. IPv6 e MobileIP

Tipologia: Sbobinature

2022/2023

In vendita dal 10/03/2025

alessandro-temerario
alessandro-temerario 🇮🇹

5

(1)

5 documenti

1 / 146

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
TOPOLOGIE DI RETE E STACK PROTOCOLLARE
Componenti fisiche di una rete
Le reti sono caratterizzate da 3 componenti:
1. Host = Terminale dell’utente, che invia e riceve informazioni;
2. Link = Collegamento/mezzo trasmissivo, può essere di più tipi e più capacità;
3. Nodi di rete = Smistano/ripetono l’informazione, possono operare a diversi livelli.
Reti che analizzeremo durante il corso
- Rete diffusiva = Rete in cui vi è solo un Tx e altri dispositivi che fungono da Rx
(F.I. rete televisiva, radio…). In genere trattano un tipo di traffico
di tipo broadcast. In questo tipo di rete non ci sono collisioni per
via del fatto che c’è un solo Tx.
- Rete selettiva = Rete in cui tutti i nodi possono trasmettere e ricevere.
La trasmissione avviene tra gli utenti coinvolti nella comunicazione.
Ci possono essere comunicazioni simultanee tra più utenti.
Più comunicazioni tra coppie di utenti implicano nodi di rete con più interfacce d'ingresso ed interfacce
d’uscita; perciò, è necessario selezionare il percorso idoneo per la commutazione della comunicazione.
Classificazione delle reti
La classificazione delle reti può avvenire sulla base dell’estensione geografica:
- Local Area Network (LAN) = Impiegata in aree limitate. Tipicamente è privata.
- Metropolitan Area Network (MAN) = Reti che coprono decine di Km.
- Wide Area Network (WAN) = Rete per comunicazioni nazionali o intercontinentali.
Area di copertura e velocità di trasmissione sono inversamente proporzionali; infatti, le LAN sono le reti a
velocità maggiore.
Tipologie di traffico
La rete offre servizi di varia natura, cioè che hanno bisogno di requisiti individuali specifici, per questo
bisogna che la rete stessa sia ben progettata; non tutte le tipologie di traffico possono essere
implementate su tutti i tipi di rete. Vediamo i parametri di interesse:
Periodicità
- Traffico periodico = Traffico offerto con continuità (F.I. traffico voce)
- Traffico aperiodico = Traffico generato ad intervalli (F.I. traffico dati e video)
Tasso di invio dei bit (bit-rate)
- Constant Bit Rate (CBR) = Il data-rate non cambia nel tempo (F.I. traffico voce)
- Variable Bit Rate (VBR) = Il data-rate è variabile nel tempo (F.I. traffico video)
Relazioni temporali
- Traffico sincrono = Traffico che richiede in ricezione lo stesso ritmo di trasmissione.
(come ad esempio una telefonata)
- Traffico asincrono = Traffico in cui non è necessario mantenere le relazioni.
temporali (come nella trasmissione dati o nelle e-mail)
Sensibilità all’integrità dell’informazione
- Sensibile = Traffico in cui l’integrità dei dati è rilevante per l’efficacia della
comunicazione (F.I. traffico dati)
- Non sensibile = La perdita di una certa quantità di dati non genera grossi problemi
all’efficacia della comunicazione (F.I. traffico voce)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Anteprima parziale del testo

Scarica Reti di Telecomunicazioni e Telematica e più Sbobinature in PDF di Reti Di Telecomunicazioni solo su Docsity!

TOPOLOGIE DI RETE E STACK PROTOCOLLARE

Componenti fisiche di una rete

Le reti sono caratterizzate da 3 componenti:

  1. Host = Terminale dell’utente, che invia e riceve informazioni;
  2. Link = Collegamento/mezzo trasmissivo, può essere di più tipi e più capacità;
  3. Nodi di rete = Smistano/ripetono l’informazione, possono operare a diversi livelli.

Reti che analizzeremo durante il corso

  • Rete diffusiva = Rete in cui vi è solo un T x

e altri dispositivi che fungono da R x

(F.I. rete televisiva, radio…). In genere trattano un tipo di traffico

di tipo broadcast. In questo tipo di rete non ci sono collisioni per

via del fatto che c’è un solo T x

  • Rete selettiva = Rete in cui tutti i nodi possono trasmettere e ricevere.

La trasmissione avviene tra gli utenti coinvolti nella comunicazione.

Ci possono essere comunicazioni simultanee tra più utenti.

Più comunicazioni tra coppie di utenti implicano nodi di rete con più interfacce d'ingresso ed interfacce

d’uscita; perciò, è necessario selezionare il percorso idoneo per la commutazione della comunicazione.

Classificazione delle reti

La classificazione delle reti può avvenire sulla base dell’estensione geografica:

  • Local Area Network (LAN) = Impiegata in aree limitate. Tipicamente è privata.
  • Metropolitan Area Network (MAN) = Reti che coprono decine di Km.
  • Wide Area Network (WAN) = Rete per comunicazioni nazionali o intercontinentali.

Area di copertura e velocità di trasmissione sono inversamente proporzionali; infatti, le LAN sono le reti a

velocità maggiore.

Tipologie di traffico

La rete offre servizi di varia natura, cioè che hanno bisogno di requisiti individuali specifici, per questo

bisogna che la rete stessa sia ben progettata; non tutte le tipologie di traffico possono essere

implementate su tutti i tipi di rete. Vediamo i parametri di interesse:

Periodicità

  • Traffico periodico = Traffico offerto con continuità (F.I. traffico voce)
  • Traffico aperiodico = Traffico generato ad intervalli (F.I. traffico dati e video)

Tasso di invio dei bit (bit-rate)

  • Constant Bit Rate (CBR) = Il data-rate non cambia nel tempo (F.I. traffico voce)
  • Variable Bit Rate (VBR) = Il data-rate è variabile nel tempo (F.I. traffico video)

Relazioni temporali

  • Traffico sincrono = Traffico che richiede in ricezione lo stesso ritmo di trasmissione.

(come ad esempio una telefonata)

  • Traffico asincrono = Traffico in cui non è necessario mantenere le relazioni.

temporali (come nella trasmissione dati o nelle e-mail)

Sensibilità all’integrità dell’informazione

  • Sensibile = Traffico in cui l’integrità dei dati è rilevante per l’efficacia della

comunicazione (F.I. traffico dati)

  • Non sensibile = La perdita di una certa quantità di dati non genera grossi problemi

all’efficacia della comunicazione (F.I. traffico voce)

Metriche che caratterizzano la Quality of Service (QoS)

  • Ritardo = Detto anche latenza o delay. È l’intervallo di tempo tra l’inizio della

trasmissione e l’avvenuta ricezione. Dipende dal mezzo trasmissivo ed

è rilevante per il traffico dati.

!

"

𝑇 = Periodo della trasmissione di 𝐿 bit su un canale con capacità 𝑅 [𝑏𝑖𝑡 𝑠

]

𝜏 = Ritardo di propagazione di un bit da T x

a R x

𝐷 = Distanza tra T x

e R x

[𝑚]

𝑣 = Velocità di propagazione

[

⁄ ]

  • Variazione del ritardo = Detto anche Jitter. È rilevante per il traffico voce.
  • Packet Loss Ratio = Rapporto tra l’informazione trasmessa e quella ricevuta.
  • Errore residuo sul bit;
  • Call Blocking Probability;
  • Throughput.

Topologie di rete

La descrizione di una rete comprende anche la sua topologia. Essa viene rappresentata tramite l’uso di

archi e vertici, i quali rappresentano rispettivamente i link e i nodi. La topologia di una rete influenza il

costo, le prestazioni, la tecnica d’accesso multiplo e l’affidabilità della rete.

Maglia completamente connessa

In questa topologia ogni nodo è connesso a tutti gli altri nodi da un cavo bidirezionale.

ü Elevata tolleranza ai guasti di un link

û Costi e complessità elevati, non è indicata per reti medio-grandi

Albero

Topologia di rete in cui i nodi sono collegati ad un altro nodo tramite un solo link.

ü Pochi link à Bassi costi

û Pochi link à Scarsa tolleranza ai guasti e alla congestione.

Stella (Topologia di reti regolari)

In questa topologia i nodi di rete sono collegati ad un nodo centrale attraverso il quale transita il traffico

dell’intera rete. Il nodo centrale può essere: Attivo, cioè che riceve il traffico e lo inoltra al destinatario,

oppure passivo, cioè che riceve il traffico e lo inoltra su tutti i link. Questa topologia è utilizzata in reti

satellitari e in porzioni di reti periferiche.

C = (𝑁

!

C = Numero di collegamenti

N = Numero di nodi

û Spreco di risorse nei tempi morti della conversazione

û Ritardo iniziale per il setup del circuito.

Efficienza

L'efficienza di questa tecnica di commutazione si misura come il rapporto tra il tempo di trasferimento

dell’informazione utile e il tempo di occupazione delle risorse.

𝐶 = Tempo di setup del circuito;

𝑅 = Tempo di rilascio del circuito.

Per far tendere questo rapporto ad 1 sarebbe idoneo cambiare l'approccio al problema.

Commutazione di messaggio (stadio intermedio)

In questo tipo di commutazione la comunicazione viene formattata in unità informative chiamate

“messaggi”. In questi messaggi, oltre all'informazione utile, viene inserita informazione a riguardo del

riordino dei messaggi e delle procedure di instradamento.

Il messaggio viaggia in rete da un nodo di commutazione all'altro finché non giunge a destinazione. Ogni

messaggio può seguire percorsi diversi.

Il messaggio deve essere ricevuto per intero prima di poterlo inoltrare, motivo principale: per rilevare la

presenza di errori e verificare la destinazione (Store & Forward).

ü Non si prenotano risorse per ciascuna comunicazione

ü Tutti i canali disponibili sono utilizzati per il trasporto di messaggi

ü Nessun ritardo dovuto al setup della connessione

û Percorso da calcolare per ciascun messaggio ad ogni nodo

û I singoli messaggi possono subire ritardi diversi à perdita di sequenzialità

û Viene introdotto un ritardo dovuto all'immissione dei messaggi nel buffer

û All'informazione utile si aggiunge messaggistica di segnalazione (header e coda)

Commutazione di pacchetto (reti dati) (a datagramma)

Questa commutazione è simile a quella di messaggio, solo che i lunghi messaggi sono frammentati in

blocchi più piccoli detti pacchetti/datagrammi. Inviando unità informative più piccole le operazioni di

commutazione sono più rapide.

Una rete che utilizza questo tipo di commutazione è la rete Internet in cui l’allocazione di risorse è

progressiva e dinamica.

Le informazioni sono bufferizzate per avere il tempo di individuare l'uscita.

Il meccanismo di Store & Forward fa sì che il commutatore analizzi il contenuto della segnalazione per

poterlo inoltrare al nodo successivo. La probabilità di errore per pacchetto è inferiore rispetto alla

commutazione di messaggio. La trasmissione da un nodo a quello successivo è più veloce perché il

messaggio è diviso in più frammenti che possono essere ricevuti ed elaborati prima. Diciamo quindi di

avere una parallelizzazione e di conseguenza un minore ritardo.

Se i pacchetti frammentati fossero troppo piccoli si porrebbe il rischio di avere più segnalazione da inviare

piuttosto che informazione utile, Aumentando quindi il traffico senza avere effettivamente un maggiore

throughput. Serve quindi un trade-off.

Commutazione di pacchetto (meccanismo dei circuiti virtuali)

L'approccio della comunicazione è:

  1. Fase di setup;
  2. Trasferimento di informazione;
  3. Rilascio circuito.

Nella fase di setup viene inviato un pacchetto di richiesta di connessione che viene instradato da un nodo

applicando il proprio algoritmo di instradamento, fino alla destinazione. All’interno di ogni nodo c'è una

tabella di instradamento che serve per elaborare le info contenute nei pacchetti dati affinché seguano il

percorso corretto; le tabelle, quindi, memorizzano info sul percorso per una data destinazione.

Tabella di instradamento

In tutti i nodi è presente questa tabella che tiene traccia dell'identificativo della porta fisica da cui arriva un

pacchetto. Una linea è associata al circuito virtuale in ingresso e in uscita.

Non vi è alcun problema per l'identificativo di un circuito virtuale in ingresso per via del fatto che le linee e i

circuiti sono sempre in coppia a identificare i messaggi di un host.

ü L'instradamento si calcola all'instaurazione del circuito e tutti i pacchetti utilizzeranno quel

percorso

ü È più semplice mantenere la sequenzialità dei pacchetti

û Ritardo di setup/rilascio della connessione

Protocolli e architetture di rete

Per la corretta implementazione di una rete e di telecomunicazioni c'è bisogno di protocolli che regolino lo

scambio di informazioni tra due o più interlocutori.

Un protocollo definisce il formato e l'ordine dei messaggi scambiati così come anche le procedure di

trasmissione. Si distinguono 3 diverse caratteristiche per i protocolli:

  • Algoritmi = Indicano come gli utenti devono accedere alla rete;
  • Formati = Descrivono la struttura delle informazioni;
  • Temporizzazioni = Indicano le tempistiche con cui devono essere eseguite le azioni previste dagli

algoritmi;

I protocolli standardizzano i dispositivi di produttori diversi ed anche applicazioni affinché possano

comunicare tra loro.

Architettura a strati

In questa architettura i protocolli sono divisi in strati, i quali comunicano tramite primitive di interfaccia. Gli

strati adiacenti comunicano tra loro per richiedere o fornire servizi ai livelli adiacenti.

In ogni livello c'è un processo a cui è associato un protocollo e che fornisce un servizio.

I processi di due diverse macchine possono comunicare tra loro ma non con processi di livello superiore.

La comunicazione passa attraverso tutti i livelli inferiori per poi risalire verso il livello pari dell'altra

macchina.

Componenti

  1. Entità = Processi associati ad un livello;
  2. Funzioni = Operazioni svolte all’interno di un livello;
  3. Servizi = Attività offerte da un’interfaccia tra livelli adiacenti;
  4. Primitive = Messaggi tra livelli che consentono di attivare i servizi.

ü Modularità à Semplicità di progettazione, manutenzione e aggiornamento;

ü Gli strati sono separati tra di loro, perciò uno strato può essere modificato senza influenzare gli

altri;

û Bisogna porre attenzione alla compatibilità o standardizzazione tra reti.

L’identificativo del circuito virtuale

può cambiare all'uscita di un link nel

caso in cui un altro host da una linea

diversa utilizzi un identificativo di

circuito virtuale già in uso.

Entità e funzioni

Ogni entità ha un titolo che la identifica univocamente in tutta la rete. Le entità hanno un indirizzo relativo

legato alla loro posizione nello stack. Ogni entità è collegata all'interfaccia col livello inferiore da un

Service Access Point (SAP), primitive di interfaccia.

Le primitive sono chiamate a procedura che consentono di far comunicare i livelli fra loro e di far accedere

un livello ai servizi del livello inferiore. (Consentono di attivare i servizi)

Le interazioni tra le entità di due livelli avvengono tramite SAP e possono essere di più tipi:

  • Uno a uno = Ad una (N) connessione corrisponde una connessione (N – 1);
  • Multiplexing = Più (N) connessioni corrispondono ad una (N – 1) connessione;
  • Splitting = Una (N) connessione corrisponde a più (N – 1) connessioni, per esempio per dividere i

flussi di dati in base alle loro caratteristiche e/o priorità.

Formati delle unità informative

Quando le PDU viaggiano nello stack protocollare verso i livelli inferiori, il contenuto informativo prende il

nome di Service Data Unit (SDU) al quale viene aggiunta una Protocol Control Information (PCI) che

contiene le informazioni necessarie a quel livello; la loro “somma” formerà la PDU del livello inferiore. PCI

è l’header aggiunto dai vari livelli.

La dimensione del messaggio aumenta dunque lungo lo stack; sarebbe necessaria la frammentazione se

la PDU diventasse troppo grande.

LIVELLO 2 DELLO STACK PROTOCOLLARE

L'obiettivo principale del livello 2 è offrire al livello di rete (3) un servizio di

collegamento privo di errori (SUL SINGOLO LINK). Questo livello e le sue

funzioni sono implementate nella Network Interface Card (NIC).

Funzioni principali

  1. Delimitazione delle unità informative = Indica il primo e l'ultimo bit di una trama;
  2. Indirizzamento trame = Indirizzo presente nell’header che indica la destinazione;
  3. Controllo di errore = il livello 2 implementa tecniche di rilevamento e correzione di

errori introdotti dal livello fisico;

  1. Controllo di flusso = garanzia che le trame in trasmissione non superino la capacità

della destinazione di ricezione di trame nell'unità di tempo per

evitare saturazione e conseguente perdita di trame ai buffer.

Controllo di errore

La trasmissione, a livello fisico, può introdurre potenziali errori per vari motivi:

  • Rumore termico = introdotto dallo stesso canale di trasmissione;
  • Interferenza = generata da altri terminali che utilizzano lo stesso mezzo trasmissivo;
  • Disturbi elettromagnetici di varia natura;
  • Perdita di sincronismo tra T x

e R x

Meccanismi per il controllo di errore

I meccanismi per il controllo di errore possono distinguersi in due classi:

  • Correzione automatica à Forward Error Connection (FEC)

Tecnica che aggiunge ai bit originali di una trama dei bit di ridondanza.

Consente a R x

di identificare gli errori ed eventualmente correggerli.

Il prezzo da pagare è un'informazione aggiuntiva che aumenta la dimensione della ridondanza

rispetto all'informazione utile. In questo caso la trama non viene memorizzata in T x

per un'ipotetica

ritrasmissione.

  • Protocolli di ritrasmissione à Automatic Repeat reQuest (ARQ)

In questa tecnica alla trama viene aggiunto un campo per la sola rilevazione degli errori, il codice

ha lunghezza fissa e indipendente dal payload. Se una trama venisse verificata come errata, R x

invierebbe una richiesta di ritrasmissione al T x

La tecnica ARQ, al contrario della FEC, richiede un buffer su T x

per ritrasmettere subito le eventuali

trame errate.

La scelta fra i due meccanismi dipende dal tipo di rete, dal numero di utenti, dalla tipologia di

traffico e altri requisiti.

Protocolli a finestra

I protocolli a finestra, nel livello link, si occupano di:

  • Controllo di errore = trasferimento dati con minor numero possibile di errori;
  • Controllo di flusso = evitare che il tasso di trasmissione superi quello di elaborazione in ricezione;
  • Controllo di sequenzialità = il ricevitore dovrà essere in grado di ricostruire la sequenza delle unità

informative trasferite.

  • Efficienza

Il canale viene sfruttato al meglio (nel caso di protocollo Stop & Wait) quando è occupato dal

traffico il più possibile, facendo quindi diminuire i tempi morti.

Nel caso di Stop & Wait il tempo morto è dovuto al tempo di attesa della ricezione dell’ACK.

Definiamo quindi così l’efficienza:

"#

"#

$%&

"#

= Tempo di trasmissione della trama;

2 𝜏 = Round Trip Time (RTT); 2 volte il ritardo di propagazione;

$%&

= Tempo di trasmissione del messaggio di ACK (generalmente trascurabile).

ü 𝜏 ≪ 𝑇

"#

à Vantaggioso per il protocollo

ü 𝜏 ≫ 𝑇

"#

à Svantaggioso per il protocollo (F.I. Reti satellitari)

"#

è la condizione per cui l’implementazione dello Stop & Wait è opportuna. Questa

condizione si può ottenere in 3 modi:

  1. Aumentando la dimensione della trama dati;
  2. Riducendo la distanza tra T x

e R x

  1. Avendo un mezzo trasmissivo con bassa capacità

[

]

à 𝑇

"#

  1. Protocollo Sliding Window

Questo protocollo ha un funzionamento rappresentabile da finestre di dimensioni variabili a

seconda delle condizioni di comunicazione.

Le finestre sono implementate sia al T x

che a R x

e indicano delle posizioni:

  • La finestra su T x

indica la PDU ancora non riscontrata da ACK, essa si incrementa ogni

volta che viene ricevuto un ACK;

  • La finestra su R x

indica la trama dati che sta aspettando, essa si incrementa ogni volta che

invia un ACK.

Se a R x

arrivasse una trama diversa da quella indicata dalla finestra la scarterebbe, altrimenti il

valore della finestra si incrementerebbe. Su T x

si chiude un indicatore solo quando si riceve l’ACK

corrispondente.

  1. Go Back N

In questo protocollo T x

può trasmettere più trame prima di ricevere l’ACK.

Questa caratteristica impone che la dimensione della finestra sia maggiore di 1 (solo su T x

, mentre

su R x

rimane uguale a 1 per non perdere la sequenzialità).

Il vantaggio sta nel lasciare il canale inutilizzato per meno tempo.

In caso di perdita di trame R x

riceverebbe delle trame fuori sequenza, attivando l’invio di un NACK

a T x

per indicare la mancata ricezione di una trama. Ricevuto il NACK relativo ad una particolare

trama x, T x

rinvierà le trame a partire da quella indicata nel NACK e che rientrano nella finestra di

T

x

ü Aumenta l’efficienza, cioè la percentuale di utilizzo del canale;

ü Efficace in condizioni di canale ideali, in caso contrario si avrebbero molte ritrasmissioni;

ü Nei casi peggiori si deve ritrasmettere tutta la finestra da capo.

  1. Selective Repeat

In questo protocollo entrambe le finestre hanno dimensione maggiore di 1 e R x

può ricevere PDU

fuori sequenza. Questo è un grande vantaggio rispetto all’approccio Go Back N, tuttavia, si ha il

prezzo di implementare un buffer su Rx.

Il ruolo del buffer è quello di mettere in sequenza le trame ricevute ed inviarle al livello superiore. In

caso di perdita di trame R x

invierebbe un NACK contenente l’identificativo dell’ultima trama

ricevuta, così che T x

possa inviare quella subito successiva.

R

x

, avendo comunque ricevuto le trame successive a quella persa, quando riceverà la trama persa

e quindi ritrasmessa da T x

, invierà un ACK cumulativo per tutte quelle successive alla PDU persa,

quest’ultima inclusa.

Protocolli a confronto fra loro

Stop & Wait à Non supporta la sequenzialità

Go Back N à Non supporta la sequenzialità

Selective repeat à Garantisce la sequenzialità a costo dei buffer su Rx

Per avere un trade-off Go Back N è la soluzione più indicata.

Utilizzazione

L’utilizzazione è il parametro accurato di efficienza applicato ai canali che utilizzano dei protocolli.

Distinguiamo i vari protocolli:

Stop & Wait

Caso ideale

In condizioni ideali il tempo di trasmissione dell’ACK e il suo tempo di processamento sono trascurabili, in

più T x

avrà sempre PDU da trasmettere. L’utilizzazione indica quindi quanto si sta usando efficientemente

un canale, cioè il tempo impiegato a trasmettere informazione utile.

'

'

'

'

2 B

'

C + 1

Descriviamo i vari intervalli di tempo che entrano in gioco:

'

= Tempo di trasmissione della trama;

$

= Tempo di trasmissione dell’ACK;

(

= Tempo di processamento di una trama o di un ACK;

𝜏 = Ritardo di propagazione;

'

  • 2 𝜏 = Tempo di ciclo che impiega una trama ad essere trasmessa e riscontrata;

'

= Tempo di trasmissione di 𝑛 trame;

'

  • 2 𝜏) = Tempo di occupazione effettivo del canale da parte di 𝑛 trame;

'

= Tempo di propagazione normalizzato al tempo di trasmissione di una trama.

Concludiamo che se: Ritardo di propagazione ↑ à 𝑎 ↑ à Utilizzazione ↓ à Stop & Wait non funziona

bene quando vi sono grandi ritardi di propagazione.

Presenza di perdite

Descriviamo le quantità coinvolte:

$

e 𝑇

(

rimangono trascurabili;

'

= Tempo di trasmissione della trama;

)*#

= Durata del time-out di ritrasmissione;

= Tempo complessivo della ritrasmissione = 𝑇

'

)*#

𝑃 = Probabilità di errore nella trasmissione di una trama;

𝑇’ = Tempo di ritrasmissione con successo;

𝑇 = Tempo complessivo.

Per calcolare il tempo di trasmissione con successo occorre tenere conto delle ritrasmissioni. Come si

stima il numero di ritrasmissioni?

#,

= Numero medio trasmissioni;

#,

− 1 = Numero ritrasmissioni esclusa quella andata a buon fine.

#,

è modellabile come una serie geometrica che si sviluppa come:

#,

Avendo 𝑇 = Tempo di trasmissione con successo = 𝑇 '

  • 2 𝜏 diciamo che:

.

#,

L’utilizzazione del canale sarà quindi:

'

.

'

K𝑇 + (𝑁

#,

− 1 )L ∙ 𝑇

'

'

+ 2 𝜏 + B

− 1 C ∙

'

'

'

Trasmissione con successo; Ritrasmissioni.

Probabilità di errore nella trasmissione di una trama ↑ ⟹ Utilizzazione ↓

Livello Logical Link Control (LLC) 2.

Per capire il modo in cui opera questo sottolivello, vediamo prima di tutto come interagisce con i livelli

adiacenti; per fare ciò abbiamo introdotto il concetto di primitive…

Il livello LLC offre un servizio di trasferimento delle PDU e può farlo secondo due modalità:

Connectionless (modalità più semplice)

Questa modalità non prevede l’instaurazione della connessione: le trame vengono inviate senza che

prima i due terminali negozino il trasferimento, come nella commutazione di pacchetto. Questo approccio

è più robusto rispetto alla modalità connection – oriented perché, se dovesse guastarsi un link della rete,

verrebbe rimpiazzato da un altro link; nonostante questo la rete non garantisce la qualità.

Inoltre, per questa modalità esistono due tipi di approcci:

  • Unacknowledged (Senza ACK):

Questo approccio usa solo primitive di trasferimento per lo scambio dei dati, cioè per inviare

un’informazione si utilizzano le interfacce dedicate alla sola trasmissione dei dati. È utilizzato in

canali broadcast dove si preferisce non replicare le funzioni di controllo di flusso e di errore già

implementate a livello 4. È usato per traffico sensibile al ritardo e canali poco affetti da errore.

  • Acknowledged (Con ACK):

Questo approccio utilizza il meccanismo del riscontro tramite ACK; ogni frame è ancora inviato

indipendentemente dagli altri, ma è prevista la conferma di ricezione da parte del ricevitore. È

indicato per canali poco affidabili.

Connection oriented (modalità più sofisticata e robusta)

Questa modalità prevede il concetto di instaurazione della connessione fra i terminali; oltre alle primitive

di trasferimento dati, offre quelle di apertura e chiusura di una connessione tra 𝑇

8

e 𝑅

8

. Prevede l’utilizzo

di protocolli a finestra per il controllo d’errore, di flusso e di sequenzialità. In questo tipo di commutazione

tutti i pacchetti che vanno da un certo 𝑇 8

a un certo 𝑅

8

seguono sempre la stessa strada, definita prima

della trasmissione dei dati (call setup); per questo motivo le trame si muovono nella rete mantenendo la

sequenzialità. Questo approccio è molto usato dagli operatori per via del fatto che se la rete riesce a

garantire sempre lo stesso percorso per le unità informative, vuol dire che è una rete di qualità e che,

pertanto, può farsela pagare maggiormente.

Le fasi sono:

  1. Apertura della connessione: 𝑇

8

e 𝑅

8

inizializzano le variabili e i contatori necessari per tenere

traccia di quali frame sono stati ricevuti e quali no;

  1. Trasmissione dei frame;
  2. Chiusura della connessione: Si rilasciano le risorse occupate per la connessione.

Lo scopo è fornire al livello superiore (livello 3) un flusso di bit affidabile.

Protocolli di livello 2

Protocollo BSC (Binary Synchronous Communications)

È un protocollo orientato al carattere: l’unità informativa è il byte. Soluzione di IBM.

Protocollo HDLC (High Level Data Link Control)

È un protocollo di trasferimento orientato al bit: all’interno di una trama i bit sono utilizzati come flag per

indicare informazioni utili alla comunicazione, è la minima unità informativa che il protocollo può

processare. Questo protocollo è una soluzione standard ISO.

In questo protocollo si definiscono tre tipi di terminali, detti stazioni:

  • Primaria (Master): È la stazione che inizializza la comunicazione, inviando comandi alle stazioni;
  • Secondaria (Slave): È la stazione interrogata;
  • Combinata: Può inoltrare richieste e può anche rispondere. (Modalità P2P)

E due tipi di configurazione:

  • Bilanciata = 1 stazione primaria; 𝑛 stazioni secondarie

In questa configurazione, in un dato istante di tempo, l’informazione può viaggiare sul canale solo

in un verso, parliamo quindi di collegamento Half-Duplex: solo command o solo response.

  • Sbilanciata = 2 stazioni combinate

In questa configurazione non serve che il master interroghi lo slave affinché avvenga la

comunicazione, in più si tratta di una comunicazione Full-Duplex, cioè la comunicazione può

avvenire in entrambi i versi nello stesso istante di tempo (c’è però bisogno che la banda del canale

sia maggiore).

In base alla configurazione, il protocollo può avere 3 modalità operative:

  1. Configurazione bilanciata Full-Duplex (Asynchronous Balanced Mode): Le interazioni sono tra

stazioni peer, ogni stazione trasmette senza richiedere l’autorizzazione.

  1. Configurazione sbilanciata Half-Duplex (Normal Response Mode): è una modalità adatta a linee

punto-multipunto con polling.

  1. Configurazione sbilanciata Half-Duplex (Asynchronous Response Mode): è una modalità in cui le

stazioni secondarie possono iniziare una trasmissione senza aspettare l’autorizzazione del master.

Formato delle PDU

Una trama del livello 2 incorpora il payload, che è il carico informativo, derivante dai livelli superiori, al

quale il livello deve aggiungere delle informazioni di controllo…

  • Flag 1 = Sequenza che segnala al ricevitore l’inizio della trama (01111110);
  • SA = Source Address;
  • DA = Destination Address;
  • Controllo = Questo campo identifica la modalità di trasferimento:

connectionless o connection-oriented.

  • FCS (Frame Check Sequence) = è il risultato di un calcolo fatto utilizzando i bit della trama lato

sorgente (esclusi i flag). Lo utilizza 𝑅

8

: se eseguendo la stessa

operazione sulla trama ricevuta dovesse ricavare lo stesso

valore, vorrebbe dire che il messaggio ricevuto non è stato

compromesso.

  • Flag 2 = Sequenza che segnala al ricevitore la fine della trama (01111110).

Utilizzando questa formattazione potrebbe sorgere il problema che la sequenza utilizzata dai flag per

segnalare inizio e fine della trama sia contenuta nel payload, inducendo così erroneamente il ricevitore a

credere che la trama sia finita. Per risolvere questa problematica si introduce il concetto di bit stuffing,

che agisce in modo tale che all’interno della trama non compaia mai la sequenza del flag.

PDU non numerate

Quest trame non si riferiscono alle singole PDU, ma ad informazioni relative alla connessione stabilita;

pertanto, sono utilizzate nei momenti di instaurazione e di rilascio di una connessione.

I messaggi possono essere:

  • Set Asynchronous Balanced Mode Extended (SABME) = Richiede l’apertura di una connessione

tra un terminale ed un altro.

  • Disconnect (DISC) = Richiede la chiusura di una connessione.
  • Unnumbered acknowledgment (UA) = Risposta a DISC.
  • Disconnect Mode = Indica all’interlocutore che il terminale si è disconnesso (F.I. il processo

associato a quella connessione non è più attivo).

  • Frame Reject (FRMR) = Indica all’interlocutore che la trama ricevuta non è accettabile.

Funzionamento di una connessione di tipo 2

Ogni connessione ha 2 contatori: 𝑉(𝑆) e 𝑉(𝑅)associati rispettivamente a 𝑇 8

e 𝑅

8

, e sono inizializzati a 0

all’apertura della connessione.

8

trasmette PDU numerate in sequenza incrementando il valore del contatore 𝑉

, il quale coincide con

il valore 𝑁(𝑆) al momento della trasmissione.

8

accetta solo PDU il cui campo 𝑁(𝑆) coincide con il valore attuale del contatore 𝑉(𝑅) altrimenti le

scarta. In caso di esito positivo 𝑉

viene incrementato di 1. Il valore di 𝑁

coincide con il valore di

𝑉(𝑅) al momento della trasmissione dell’ACK.

Livello Medium Access Control (MAC) 2.

Il livello MAC è un sottolivello del livello 2 e la sua presenza è opzionale nella rete perché è determinata

dall’uso di un mezzo di trasmissione condiviso; esso infatti si occupa dell’accesso da parte dei terminali al

mezzo condiviso ed è il protocollo che le comunicazioni devono rispettare affinché la condivisione

dell’unico canale disponibile sia efficace; se queste regole non dovessero essere rispettate potrebbero

venire a crearsi le cosiddette “collisioni” tra messaggi che cercano di attraversare il canale in uno stesso

istante di tempo.

Tipologie di collegamenti

Definiamo intanto i tipi di collegamenti che andremo a trattare…

  • Collegamenti punto-punto

La trasmissione su un canale avviene solo tra una coppia 𝑇

8

8

  • Collegamenti broadcast

Il canale è ad accesso multiplo (F.I. Reti LAN, Wireless LAN, reti MAN…). In questo caso non si

implementano funzioni di commutazione: non serve la presenza di nodi che smistano il traffico

verso l’effettiva destinazione poiché la sorgente indirizza i messaggi ad un particolare ricevitore;

tutti i terminali presenti sul mezzo riceveranno il messaggio, ma solo il destinatario elaborerà il suo

contenuto.

Indirizzamento MAC

Gli indirizzi di rete locale sono detti indirizzi MAC o indirizzi fisici. Tutti i protocolli MAC usano un indirizzo

MAC della lunghezza di 48 bit (6 byte) la cui assegnazione avviene in modo statico e univoco da parte

del costruttore: i primi 3 byte identificano il costruttore, gli ultimi 3 byte identificano la scheda (NIC). Di

solito sono espressi in notazione esadecimale (HEX) (F.I. CA-A9- 25 - B4-DD-FA). Può essere unicast

(riferito ad un singolo dispositivo), multicast (riferito ad un gruppo di dispositivi della rete) o broadcast

(riferito a tutte le stazioni della rete).

Modalità di assegnazione d’accesso al mezzo condiviso

Ci sono due tecniche che si possono usare per giungere alla condivisione di un unico canale trasmissivo

tra più utenti: accesso multiplo e multiplazione. Vanno scelte a seconda del contesto, anche perché le

regole per accedere al mezzo cambiano a seconda della tecnica implementata.

Accesso multiplo

Si parla di accesso multiplo quando le trame sono fisicamente lontane (F.I. perché generate da utenti

diversi). L’accesso multiplo può essere implementato con due modalità:

  • A livello fisico (Livello 1)

In questa modalità si dividono staticamente le risorse tra i terminali a priori delle comunicazioni.

  • A livello del protocollo di linea (Livello 2)

A livello MAC si gestisce l’accesso al canale da parte di più utenti implementando protocolli che

agiscono sulle trame invece che sugli host in modo anche da rendere più flessibile la trasmissione

(invece di proibire completamente l’accesso ad un utente).

Nel caso di accesso multiplo, essendo le sorgenti di traffico e le trame distribuite, non si può centralizzare

l’interfaccia tra queste e il canale: ogni stazione invierà il traffico a destinazione autonomamente oppure

se interrogato da un'altra stazione.

Multiplazione

Si tratta di multiplazione quando le trame dei vari utenti sono centralizzate e quindi disponibili nella stessa

posizione… (F.I. rete cellulare).

Nel caso di rete cellulare la comunicazione avviene tra utente e

stazione radio base e viceversa. In quest’ultimo caso si parla di

multiplazione: la stazione radio base deve smistare le trame

ricevute agli opportuni terminali. Quando invece si tratta il canale

da utente a stazione radio base si parla di accesso multiplo per via

del fatto che le trame sono decentralizzate tra più utenti che concorrono per l’utilizzo del mezzo.

Accesso multiplo VS multiplazione

Nel caso di accesso multiplo, essendo le sorgenti di traffico e le trame

distribuite, non si può centralizzare l’interfaccia tra queste e il canale: ogni

stazione invierà il traffico a destinazione autonomamente oppure se

interrogato da un'altra stazione.

Nel caso della multiplazione le sorgenti e le destinazioni sono

posizionate all’estremità del canale in cui operano due dispositivi

chiamati multiplatore e demultiplatore, che fungono da interfacce tra

sorgente e canale e tra canale e destinazione, cioè che selezionano

quale flusso di trame trasmettere sul canale e dove smistarlo.

Modalità di multiplazione

Tornando alla multiplazione… Essa può avvenire con più modalità, quelle più utilizzate sono:

  • Frequency Division Multiplexing (FDM) = Multiplazione a divisione di frequenza

In questo approccio si divide la risorsa (banda) tra i vari utenti in modo statico ad ognuno di essi; le

porzioni di banda assegnate rappresentano il canale. Tra le bande assegnate si inseriscono dei

piccoli intervalli inutilizzati in modo che non ci sia il rischio che le trasmissioni su canali adiacenti

interferiscano tra di loro. I vari utenti possono quindi trasmettere simultaneamente.

Protocolli MAC

I protocolli MAC si dividono in protocolli ad accesso casuale e protocolli ad accesso ordinato. Le tecniche

che vedremo trattate di seguito sono applicabili sia per sistemi cablati che per sistemi wireless.

Protocolli MAC ad accesso casuale

Questi protocolli sono poco robusti e completamente randomici… Prevedono che le stazioni, in maniera

autonoma (completamente distribuita), trasmettano i messaggi che devono inviare (eventualmente)

“osservando” il canale e, se la trasmissione dovesse collidere lungo il canale con un'altra trasmissione, le

stazioni coinvolte potrebbero risolvere l’evento indesiderato ritrasmettendo dopo un tempo casuale 𝑡

compreso tra 1 e 𝑇; la casualità consente una buona probabilità che la collisione non si verifichi ancora.

ü Non si sprecano risorse per “sentire” lo stato del canale o per prenotare le risorse.

Protocollo ALOHA

È un protocollo d’accesso al mezzo di tipo casuale ed è quello più semplice. Questo protocollo prevede

che un host che ha una trama da trasmettere, la trasmetta subito e senza osservare il canale e che, in

caso di collisione (rilevazione di eco del segnale sul canale), la ritrasmetta dopo un tempo casuale 𝑡 ≠ 0.

A parità di ritardo di propagazione e di tempo di trasmissione della trama, non conviene provare a

ritrasmettere subito o dopo un intervallo prestabilito di tempo, conviene calcolare un numero casuale. Il

tempo casuale di ritrasmissione viene calcolato entro un certo margine e, se abbastanza grande, avremo

una bassa probabilità che riavvenga la collisione. L’intervallo di tempo all’interno del quale si sceglie il

tempo da aspettare per la ritrasmissione è variabile sulla base dell’indice di ritrasmissioni che avvengono:

all’aumentare dei tentativi di ritrasmissione aumenta anche l’intervallo di tempo perché significa che il

mezzo è occupato da molte trasmissioni; la dimensione dell’intervallo è [ 0 ; 2

9

] con 𝑛 = numero di

ritrasmissione (il ritardo di ritrasmissione cresce in modo esponenziale con il numero di ritrasmissione);

questo meccanismo di definizione dell’intervallo di tempo si chiama backoff esponenziale. All’aumentare

delle stazioni o del rate di trasmissione si ha un aumento della probabilità di collisione e quindi di 𝑛.

Efficienza del protocollo ALOHA

Per stimare l’efficacia del protocollo nella rete di interesse bisogna considerare alcune ipotesi, in modo

tale da poter approssimare la rete ad un modello matematico…

  1. Numero elevato di utenti;
  2. Sul mezzo condiviso le trame arrivino indipendentemente formando un processo di Poisson con

tasso di arrivo 𝜆 [𝑃𝐷𝑈 ⁄𝑆 ]. Grazie a 𝜆 potremo calcolare la probabilità 𝑃(𝑘) che vi siano 𝑘 arrivi

all’interno di un intervallo di tempo generico 𝑡:

:

7 ;<

/

;

= Tempo di interarrivo, tempo che intercorre tra due eventi adiacenti

Sotto queste 2 ipotesi affermiamo che il processo di Poisson è una buona approssimazione, diciamo

approssimazione per via del fatto che il caso reale non potrà mai funzionare esattamente così.

A partire dalla formula sopra ricavata possiamo ottenere la probabilità che avvenga una collisione con

l’obiettivo di quantizzare il throughput 𝑆, cioè la quantità di traffico offerto 𝐺 smaltito dalla rete.

Definiamo la durata di trasmissione di una PDU come 𝜏

[

]

, che è costante.

Definiamo due quantità:

  • Traffico medio offerto normalizzato = Carico totale del canale in termini di PDU trasmesse per

tempo di trasmissione di una PDU.

  • Throughput = Quantità di informazione effettivamente trasferita dal canale in PDU trasmesse con

successo per tempo di trasmissione di una PDU.

'

'

%

= Probabilità di trasmissione con successo di una PDU

%

= Probabilità di collisione

Sicuramente la quantità 𝑆 è sempre minore di 𝐺 poiché è impossibile evitare tutte le collisioni.

Calcoliamo 𝑃

'

come la probabilità che non ci siano arrivi di PDU durante l’intervallo di vulnerabilità:

'

:

7 ;<

=

7 ;->

7 ;->

Sapendo che 𝜆𝜏 è uguale al traffico offerto 𝐺 possiamo scrivere:

'

7 -!

E di conseguenza possiamo scrivere:

'

7 -!

Un’altra cosa da definire per questo protocollo è l’intervallo di vulnerabilità, un intervallo di tempo durante

il quale non devono esserci trasmissioni di PDU poiché ne sta già avvenendo una. È quantificato come 2 𝜏

per via del fatto che se c’è una trasmissione sul canale che comincia all’istante 𝑡

=

e dura per un tempo 𝜏,

un’altra trasmissione della stessa durata 𝜏 non può iniziare nell’intorno di 𝑡

± 𝜏 senza causare una

collisione.

Casi di assenza di collisione ü

Casi di presenza di collisione û

Lo schema funzionale di una rete che utilizza questo protocollo è il seguente:

I pacchetti che collidono devono essere ritrasmessi

con la probabilità di insuccesso della trasmissione

Il valore massimo del throughput si ottiene quando:

?$

Questa condizione si verifica quando il carico offerto 𝐺 =

/

, in questo contesto si ha 𝑆 = 0 , 18 ; questo è il

massimo throughput del protocollo ALOHA e ci fa capire che non si tratta di un buon protocollo poiché la

sua efficienza è di circa il 20%; dovevamo aspettarcelo: è un protocollo molto semplice.