Salta al contenuto
Note per Studenti Elementi di rete - hub, switch e router

Elementi di rete - hub, switch e router

In questa pagina 5

Una rete reale è fatta di tratti diversi (LAN) collegati da dispositivi diversi. Esempio dalle slide: tre LAN, collegate da hub, switch, bridge e un router verso Internet. Ogni dispositivo è definito dal livello più alto della pila che implementa (Modello ISO-OSI e pila TCP-IPUna comunicazione tra due calcolatori è un problema troppo vario (segnali, errori, accesso al mezzo, instradamento, controllo di flusso, rappresentazione dei dati) per un solo protocollo, quindi si divide in strati (layer). Il modello ISO/OSI ha 7 livelli (fisico, collegamento, rete, trasporto, sessione, presentazione, applicazione); la pila TCP/IP riunisce gli ultimi tre in un solo livello applicazione, quindi ne ha 5. Ogni livello offre un servizio a quello sopra e parla solo con il livello pari dell'altro nodo tramite PDU; scendendo si aggiunge un'intestazione (PCI): incapsulamento. Indirizzi: MAC (collegamento, locale), IP (rete, globale).Modello ISO-OSI e pila TCP-IP →): più in alto arriva, più «capisce» del pacchetto e più decisioni può prendere.

Hub (livello 1, fisico)

Definizione (hub). Dispositivo che opera solo a livello fisico: non ha indirizzi di collegamento (MAC). Fisicamente è una stella, ma si comporta come un ripetitore: funge da punto di collegamento e rigenera e ritempifica la sequenza di bit originale (il segnale si attenua e si deforma lungo il cavo, per questo oltre una certa lunghezza va rigenerato: Mezzi di trasmissione - cavi, fibre e collegamenti radioIl mezzo di trasmissione fissa l'attenuazione $a_{ch}$ nel link budget. Nei cavi $H_{ch}=e^{-\gamma d}$ e l'attenuazione in dB cresce con la distanza ($a=\tilde a,d$, dB/km) e con $\sqrt f$. Le fibre ottiche hanno banda larghissima (10¹⁴-10¹⁵ Hz), attenuazione bassa in tre finestre di lunghezza d'onda e limitazione dalla dispersione. Nei collegamenti radio vale la formula di Friis, $g_{ch}=g_{tx}g_{rx}\left(\frac\lambda{4\pi d}\right)^2$, cioè $a_{ch}=32{,}4+20\log_{10}d_{km}+20\log_{10}f_{MHz}-G_{tx}-G_{rx}$ dB.Mezzi di trasmissione - cavi, fibre e collegamenti radio →).

Esempio. 44 stazioni su un hub da 100100 Mbit/s: il canale è uno solo. Se tutte trasmettono sempre, ognuna ottiene in media 100/4=25100/4=25 Mbit/s (la capacità si divide in parti uguali: è il collegamento condiviso di Analisi delle prestazioni di reteLe prestazioni di una rete si misurano con tre famiglie di metriche: traffico (bitrate $R_0$ massimo del collegamento, throughput $S\le R_0$ dati consegnati con successo, goodput al livello applicazione), ritardo (end-to-end $d_{tot}=d_{proc}+d_{queue}+d_{trans}+d_{prop}$ con $d_{trans}=L/R$ e $d_{prop}=d/v$; jitter; RTT) e capacità del tubo (BDP $=R\cdot$ ritardo, bit che riempiono il collegamento), più l'affidabilità (PER, PDR, PLR). Il throughput di un percorso è quello del collegamento collo di bottiglia, $\min$ dei bitrate, ricordando che i collegamenti condivisi dividono la capacità.Analisi delle prestazioni di rete →), e due coppie A→BA\to B e C→DC\to D non possono comunicare in parallelo. In più, poiché il mezzo è condiviso, valgono i limiti di efficienza dell'accesso casuale (Prestazioni dei protocolli di accesso - ALOHA, CSMA, TDMA e FDMACon arrivi di Poisson, la probabilità di successo di un frame è la probabilità che nessun altro frame arrivi nel tempo vulnerabile: ALOHA puro $P_S=e^{-2G}$, throughput $S=Ge^{-2G}$ con massimo $1/(2e)\approx0{,}18$ in $G=1/2$; slotted ALOHA $S=Ge^{-G}$ con massimo $1/e\approx0{,}37$ in $G=1$. CSMA non persistente con $a=\tau_p/t_F$: $S=\frac{Ge^{-aG}}{G(1+2a)+e^{-aG}}$, che tende a 1 per $a\to0$ ma crolla per $a$ grande, dove lo slotted ALOHA è migliore. Per TDMA ($M/D/1$) $E[T]=t_F\left(\frac{N_u}2+\frac{SN_u}{2(1-S)}+1+a\right)$ e per FDMA $E[T]=t_F\left(N_u+\frac{SN_u}{2(1-S)}+a\right)$: FDMA è più lento di $t_F(N_u/2-1)$.Prestazioni dei protocolli di accesso - ALOHA, CSMA, TDMA e FDMA →): il throughput utile è sotto 100100 Mbit/s anche con carico massimo.

Bridge (livello 2)

Definizione (bridge). Dispositivo di collegamento dati (un hub «intelligente») che divide la rete in due sottoreti (LAN) per ridurre il traffico in ciascuna o per sicurezza, gestendo il flusso tra esse.

Vantaggio: riduce il traffico su un segmento: se la destinazione non è dall'altra parte del bridge, il bridge blocca il frame. Collega in genere pochissime reti (di solito due).

Switch (livello 2)

Definizione (switch). Dispositivo che opera nei livelli fisico e di collegamento (un bridge «più flessibile»). Ha capacità di filtraggio: controlla l'indirizzo MAC di destinazione di ogni frame e decide da quale porta farlo uscire, usando una tabella locale detta tabella di inoltro o di filtraggio (forwarding/filtering database, FDB), che associa indirizzi MAC (48 bit: Livello di collegamento e framingIl livello di collegamento (DLL) consegna un frame da un nodo a un nodo adiacente su un collegamento. Servizi: framing, accesso al mezzo (MAC) con indirizzi MAC a 48 bit, controllo di flusso, rilevazione e correzione degli errori. Si divide in DLC (framing, controllo di errore e di flusso) e MAC (accesso al mezzo condiviso). Il framing delimita i frame con un flag: nei protocolli a byte (flag di 8 bit, ESC) si usa il byte stuffing, in quelli a bit (flag 01111110) il bit stuffing, che inserisce uno 0 dopo ogni cinque 1 consecutivi.Livello di collegamento e framing →) a porte.

Le prime tabelle erano statiche: se una stazione veniva aggiunta o tolta, la tabella andava modificata a mano, quindi non erano pratiche. La soluzione è una tabella dinamica che si costruisce da sola, cioè uno switch che impara (learning switch):

  • l'indirizzo di destinazione del frame serve per la decisione di inoltro (ricerca in tabella);
  • l'indirizzo sorgente serve per aggiungere o aggiornare le voci della tabella: «la stazione con questo MAC sta dietro la porta da cui il frame è arrivato».

Regola di inoltro per un frame arrivato dalla porta pp:

  1. impara: voce (MAC sorgente →p\to p);
  2. se il MAC di destinazione è in tabella con porta qq: se q=pq=p scarta (destinazione sullo stesso segmento), altrimenti inoltra solo su qq;
  3. se la destinazione non è in tabella o è di broadcast (FF:FF:FF:FF:FF:FF): inoltra su tutte le porte tranne pp (flooding).

Esempio. Switch a 33 porte con AA sulla porta 1, BB sulla 2, CC sulla 3 e tabella vuota.

Frame Azione Tabella dopo
A→BA\to B impara A@1A@1; BB ignoto ⇒\Rightarrow flooding su porte 2 e 3 A@1A@1
B→AB\to A impara B@2B@2; AA noto ⇒\Rightarrow solo porta 1 (CC non vede nulla) A@1, B@2A@1,\ B@2
A→BA\to B BB noto ⇒\Rightarrow solo porta 2 invariata
C→AC\to A impara C@3C@3; AA noto ⇒\Rightarrow solo porta 1 A@1,B@2,C@3A@1,B@2,C@3

Le voci hanno di solito una scadenza, così la tabella segue le stazioni che cambiano porta. Lo switch funziona in modalità full-duplex e non è un mezzo condiviso: più coppie di stazioni comunicano in parallelo e i frame non diffusi non arrivano a chi non li riguarda (meno collisioni, più sicurezza).

Esempio. Con lo stesso scenario dell'hub (44 stazioni a 100100 Mbit/s) ma con uno switch, A→BA\to B e C→DC\to D viaggiano in parallelo, ciascuna a 100100 Mbit/s: 2⋅100=2002\cdot100=200 Mbit/s complessivi. Con kk flussi tra coppie diverse l'hub resta a 100100 Mbit/s in totale, lo switch arriva a 100 k100\,k:

Grafico interattivo: Capacità complessiva con k flussi simultanei tra coppie di stazioni diverse su porte a 100 Mbit/s: l'hub resta a 100 Mbit/s (mezzo condiviso), lo switch arriva a 100·k (200 Mbit/s con k = 2)

Lo switch implementa un paradigma di commutazione diverso a seconda di come inoltra (circuito, pacchetto con circuito virtuale o datagramma): vedi Commutazione di circuito e di pacchettoUn nodo di commutazione (switch) può collegare ingresso e uscita in tre modi. Commutazione di circuito: si stabilisce prima un collegamento fisico dedicato (rete telefonica), tempo di consegna $T=3Nt_p+Nt_s+M/R$. Commutazione di pacchetto a datagramma: il messaggio è diviso in $K$ pacchetti con intestazione, ognuno è instradato indipendentemente con store-and-forward, $T=Nt_p+(N+K-1)\frac{M/K+H}{R}$, con $K_{ott}=\sqrt{(N-1)M/H}$. A circuito virtuale: tre fasi (setup, dati, chiusura), connessione logica dedicata ma senza risorse dedicate, identificatore locale che cambia a ogni salto.Commutazione di circuito e di pacchetto →.

Router (livello 3)

Definizione (router). Dispositivo a tre livelli (fisico, collegamento, rete): rigenera il segnale (PHY), controlla gli indirizzi fisici sorgente e destinazione del frame (DLL) e controlla gli indirizzi di rete (rete). È il «gateway» di una rete e interconnette reti indipendenti formando una internetwork (INTERNET).

Il router legge l'indirizzo IP di destinazione, consulta la tabella di instradamento per sapere quale sia il prossimo nodo (Instradamento e inoltroL'inoltro (forwarding) mette il pacchetto sulla strada verso la destinazione, un salto alla volta (hop by hop). Se la destinazione è nella stessa rete del mittente l'inoltro è diretto (si usa l'ARP per il MAC del destinatario), altrimenti è indiretto: il pacchetto va al router successivo (next hop) indicato dalla tabella di instradamento, o al default gateway. Con le netmask: l'inoltro è diretto attraverso l'interfaccia $x$ se $\text{IP(dst)}\ \text{AND}\ \text{NM}(x)=\text{IP}(x)\ \text{AND}\ \text{NM}(x)$; altrimenti si scorre la tabella dalla maschera più lunga (longest prefix match) e si usa il primo match. La riga con rete $0.0.0.0$ e maschera $0.0.0.0$ (default route) corrisponde sempre. L'aggregazione di rotte (route aggregation) riduce la tabella, e nell'inoltro con etichette (MPLS) la tabella si consulta per indice.Instradamento e inoltro →), trova il suo indirizzo MAC con Protocollo ARPUn host ha tre «nomi»: nome DNS, indirizzo IP (rete) e indirizzo MAC (collegamento). Per spedire un datagramma IP in un frame serve il MAC del prossimo nodo, che si ottiene da quel nodo con ARP: richiesta in broadcast (MAC destinazione FF:FF:FF:FF:FF:FF, contiene IP e MAC del mittente e l'IP cercato) e risposta unicast con il MAC richiesto, memorizzata nella cache ARP. ARP risolve sempre il prossimo salto (host di destinazione o router), non la destinazione finale. Un broadcast non esce dalla sottorete: il proxy ARP del router risponde con il proprio MAC.Protocollo ARP → e crea un nuovo frame per il salto successivo. Crea percorsi (routes) per trasmettere i pacchetti ed è più sofisticato: può avere software per aumentare il throughput (per esempio con la cache).

Confronto

Hub Bridge Router Switch
Livello 1 2 3 2
Isolamento del traffico no sì sì sì
Plug and play sì sì no sì
Instradamento ottimo no no sì no
Dispositivo «intelligente» no sì sì sì
  • Switch contro hub. L'hub è un dispositivo a mezzo condiviso: diffonde i dati a tutte le porte, una sola stazione trasmette alla volta. Lo switch non è condiviso, manda un frame con destinazione nota solo alla porta giusta.
  • Switch contro bridge. Il bridge collega meno LAN (di solito 22) dello switch.
  • Switch (hub) contro router. Switch e hub collegano dispositivi della stessa rete (non vedono gli indirizzi IP); il router collega reti diverse guardando gli indirizzi IP. Il router usa indirizzi IP, lo switch gli indirizzi MAC, l'hub non guarda nulla (è un ripetitore).
  • Perché il router non è plug and play: deve avere indirizzi IP di rete assegnati e tabelle di instradamento (statiche o apprese), si veda il livello di rete e i laboratori.

Versione ripasso

Frame Azione Tabella dopo
A→BA\to B impara A@1A@1; BB ignoto: flooding su 2 e 3 A@1A@1
B→AB\to A impara B@2B@2; AA noto: solo porta 1 A@1, B@2A@1,\ B@2

Esercizi su questo argomento

Lezioni in cui compare

Teoria collegata