Esercizio - Indirizzi di tre LAN, tabelle di Router 1 e Router 2 e sottoreti di LAN B
In questa pagina 7
Testo (simulazione d'esame 1, esercizio 2). Rete formata da quattro router e tre LAN.
- LAN A (): Host 1, Host 2, Host 3, collegati con uno switch a Router 1.
- LAN B (): Host 4, collegato a Router 2.
- LAN C (): Host 5, Host 6, collegati con uno switch a Router 3.
- Router 4 collega Router 3 a Internet.
- Collegamenti tra router, con indirizzi già assegnati: Router 1 – Router 3 ( Mbit/s, ms); Router 1 – Router 2 ( Mbit/s, ); Router 2 – Router 3 ( kbit/s, ms); Router 3 – Router 4 ( Mbit/s, ); Router 4 – Internet .
Domande:
- Assegnare indirizzi e maschere a tutti gli host e alle interfacce dei router che ne sono prive (escluso Router 4).
- Compilare le tabelle di instradamento di Router 1 e Router 2 con il minimo numero di righe, scegliendo il cammino di minimo tempo di inoltro.
- L'amministratore di LAN B vuole una sottorete per una rete precedente di host: indirizzi, maschera, broadcast diretto, massimo numero di host.
- Quante sottoreti da nodi stanno nella sottorete del punto precedente, e con quale maschera?
- Comportamento di Router 1 per: (a) destinazione dall'interfaccia verso LAN A; (b) destinazione dall'interfaccia verso LAN A; (c) destinazione dall'interfaccia verso Router 2.
Teoria usata: Livello di rete e indirizzamento IPIl livello di rete (network layer) porta i datagrammi da host a host attraverso i router: incapsula (framing), sceglie il percorso (routing) e sposta il pacchetto da un ingresso a un'uscita del router (forwarding); in Internet lascia ai livelli superiori controllo d'errore, di flusso e di congestione. Un indirizzo IPv4 è di 32 bit, diviso in prefisso (rete, $n$ bit) e suffisso (host, $32-n$ bit). L'indirizzamento a classi (A, B, C, D, E) è obsoleto; oggi si usa quello senza classi (CIDR): data una notazione $a.b.c.d/n$ si ricavano $N=2^{32-n}$ indirizzi, indirizzo di rete (suffisso tutto 0) e di broadcast (suffisso tutto 1), oppure con la netmask: rete $=$ indirizzo AND maschera, broadcast $=$ indirizzo OR (NOT maschera).Livello di rete e indirizzamento IP →, Subnetting e supernettingIl subnetting divide un blocco di indirizzi in sottoblocchi più piccoli allungando la maschera ($n_{\text{sub}}=n_{\text{rete}}+s$, con $2^s$ sottoreti); il supernetting (aggregazione CIDR) fa l'opposto, accorciando il prefisso per unire blocchi contigui in uno più grande. Regole di progetto: ogni sottorete ha un numero di indirizzi potenza di 2 ($M=2^k\ge$ host richiesti $+2$), prefisso $n=32-k$, indirizzo iniziale multiplo di $M$; si assegnano prima le sottoreti più grandi. Per aggregare $2^j$ blocchi di prefisso $n$ servono blocchi contigui il cui primo indirizzo sia multiplo della dimensione dell'aggregato, e il nuovo prefisso è $n-j$.Subnetting e supernetting →, 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 →.
Domanda 1: indirizzi
Gli indirizzi dei collegamenti tra router sono già dati (tutti nel formato e ): per ciascuna coppia basta la maschera più lunga che li contiene, (, host).
LAN A . Maschera : indirizzi, da (rete) a (broadcast), host utilizzabili – ( host). Servono host + router.
LAN C . Maschera : indirizzi, da (rete) a (broadcast), host –.
LAN B , maschera .
| Dispositivo | Interfaccia | Indirizzo | Maschera |
|---|---|---|---|
| Router 1 | verso LAN A | ||
| Host 1 | – | ||
| Host 2 | – | ||
| Host 3 | – | ||
| Router 2 | verso LAN B | ||
| Host 4 | – | ||
| Router 3 | verso LAN C | ||
| Host 5 | – | ||
| Host 6 | – | ||
| collegamenti tra router | e | come in figura |
Lo switch non ha indirizzo IP (lavora a livello 2). Il router di ogni LAN è il default gateway dei suoi host.
Domanda 2: tabelle con il minimo numero di righe
Il cammino di minimo tempo di inoltro (forward time) per un pacchetto di bit è quello che minimizza la somma dei tempi di trasmissione e di propagazione sui collegamenti (store-and-forward). I collegamenti diversi dal Mbit/s sono il Mbit/s ( ms, tra R1 e R3) e il kbit/s ( ms, tra R2 e R3).
Router 2 deve raggiungere LAN A, LAN C e Internet. Per andare a Router 3 ha due strade; con un pacchetto di bit:
- diretta, sul collegamento da kbit/s: ms;
- via Router 1: ms.
Per bit: il tempo di trasmissione è con in bit al secondo (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 →): sul kbit/s bit/s è s ms; sul Mbit/s bit/s è ms; sul Mbit/s bit/s è ms. Quindi diretta ms, via Router 1 ms (due collegamenti in store-and-forward: il pacchetto va ricevuto per intero da Router 1 prima di essere ritrasmesso, quindi i due tempi di trasmissione si sommano). Per qualsiasi la strada via Router 1 vince: sia la parte fissa (propagazione ms contro ms) sia il coefficiente di ( µs per bit contro µs per bit) sono a suo favore. Tutto ciò che non è LAN B va quindi a Router 1: basta una rotta di default verso .
Il grafico confronta i due tempi al variare di (in kbit, per leggere i millisecondi: con in Mbit/s dà ms per in kbit). Diretta: ms; via Router 1: ms. Le due rette non si incontrano per : in valgono e , e la pendenza della diretta ( ms/kbit) è maggiore. In kbit si leggono e ms, come nel calcolo.
Grafico interattivo
| Router 2: rete | maschera | prossimo salto |
|---|---|---|
| (LAN B) | diretto | |
Router 1. Per LAN A l'inoltro è diretto. Per LAN B conviene Router 2 ( contro ms ms passando da Router 3): serve una riga esplicita. Per LAN C e per Internet conviene Router 3 (collegamento diretto da Mbit/s, ms: per bit ms, contro ms via Router 2). LAN C e Internet hanno lo stesso prossimo salto, quindi la riga di LAN C si fonde con la rotta di default.
| Router 1: rete | maschera | prossimo salto |
|---|---|---|
| (LAN A) | diretto | |
| (LAN B) | ||
(Le reti dei collegamenti punto-punto direttamente collegate compaiono automaticamente tra le rotte dirette e non si contano.)
Domanda 3: LAN B per host
Servono indirizzi per gli host più riservati (rete e broadcast): ( non basta; , Esponenziale e logaritmoLa funzione esponenziale a^x (base positiva diversa da 1) e la sua inversa, il logaritmo in base a, con grafici e proprietà.Esponenziale e logaritmo →), quindi bit di host e maschera , cioè .
- Indirizzo di rete: (il blocco comincia a un confine multiplo di ).
- Broadcast diretto: (il passo è nel terzo byte: e ).
- Massimo numero di host: .
Domanda 4: sottoreti da nodi
, quindi bit di host e maschera (). Nel gli bit di host diventano di host e di sottorete: sottoreti da indirizzi ( host ciascuna): , , ..., .
Domanda 5: comportamento di Router 1
La procedura è: (1) l'indirizzo è di una propria interfaccia? (2) rientra in una rete a cui il router è collegato (inoltro diretto)? (3) altrimenti si cerca nella tabella la rotta con la maschera più lunga (inoltro indiretto).
- (a) da LAN A. è nell'intervallo – di LAN C, non di LAN A né di LAN B: nessuna rotta specifica, vale la default: inoltro indiretto a Router 3 ().
- (b) da LAN A. è nell'intervallo – di LAN A, cioè la stessa rete da cui il pacchetto è arrivato: mittente e destinatario sono sulla stessa LAN e il pacchetto avrebbe dovuto essere consegnato direttamente dal mittente. Router 1 non inoltra: la destinazione sarebbe raggiungibile dalla stessa interfaccia d'ingresso (lo ricevono già tutti gli host della LAN).
- (c) da Router 2. è l'indirizzo di broadcast diretto di LAN A. Router 1 lo riconosce come rete direttamente collegata e fa inoltro diretto verso l'interfaccia di LAN A, dove il pacchetto è trasmesso come broadcast (tutti gli host di LAN A lo ricevono).
Confronto con la soluzione ufficiale
La soluzione ufficiale (manoscritta) contiene gli indirizzi della domanda 1 ( per Router 1, per Router 3, per Router 2, host consecutivi), le tabelle della domanda 2 (Router 1: LAN B via , LAN A diretta, default con la riga di LAN C cancellata perché uguale alla default; Router 2: LAN B diretta, default ), con broadcast per la domanda 3 e sottoreti per la domanda 4. Coincide. La domanda 5 non è nella parte che ho potuto consultare: le risposte (a)–(c) sono ricavate con la procedura del corso, applicata allo stesso modo ai sei pacchetti di Esercizio - piano di indirizzamento e inoltro con MTU (tema d'esame) (lì il pacchetto è un broadcast diretto, inoltrato con inoltro diretto).
Errori comuni
- Mettere nella tabella di Router 2 una riga per LAN C o per Internet invece della sola default: una riga per rete in più viola il "minimo numero di righe".
- Scegliere per Router 2 la strada diretta verso Router 3 perché è "un salto solo": il collegamento da kbit/s con ms è molto più lento della strada via Router 1.
- Contare indirizzi invece di per la domanda 4, ottenendo o .
- Dimenticare che il broadcast diretto è ancora un caso di inoltro diretto.
(Verificato con Python: modulo ipaddress per reti e broadcast; confronto dei tempi di inoltro per bit.)
Versione ripasso
Dati. LAN A (host –), LAN B , LAN C (host –). Collegamenti: R1–R3 Mbit/s ( ms), R2–R3 kbit/s ( ms), gli altri Mbit/s (). (Subnetting e supernettingIl subnetting divide un blocco di indirizzi in sottoblocchi più piccoli allungando la maschera ($n_{\text{sub}}=n_{\text{rete}}+s$, con $2^s$ sottoreti); il supernetting (aggregazione CIDR) fa l'opposto, accorciando il prefisso per unire blocchi contigui in uno più grande. Regole di progetto: ogni sottorete ha un numero di indirizzi potenza di 2 ($M=2^k\ge$ host richiesti $+2$), prefisso $n=32-k$, indirizzo iniziale multiplo di $M$; si assegnano prima le sottoreti più grandi. Per aggregare $2^j$ blocchi di prefisso $n$ servono blocchi contigui il cui primo indirizzo sia multiplo della dimensione dell'aggregato, e il nuovo prefisso è $n-j$.Subnetting e supernetting →)
- Indirizzi. Router 1 , host , , ; Router 2 , Host 4 ; Router 3 , host , ; collegamenti .
- Router 2. LAN B diretta; default via (via R1: ms contro ms per bit).
- Router 1. LAN A diretta; LAN B via ; default via (la riga di LAN C si fonde con la default).
- LAN B per host. : , broadcast , host.
- Sottoreti da nodi. ; sottoreti.
- Router 1. da LAN A: indiretto via Router 3; da LAN A: nessun inoltro (stessa LAN); da Router 2: broadcast diretto di LAN A, inoltro diretto.
- Errore tipico: righe in più rispetto al minimo; strada diretta lenta per Router 2.