Internetworking – Subnet e Supernet Corso di Reti di Calcolatori AA 2002/2003.
-
Upload
fonsie-viviani -
Category
Documents
-
view
219 -
download
1
Transcript of Internetworking – Subnet e Supernet Corso di Reti di Calcolatori AA 2002/2003.
Internetworking – Subnet e Supernet
Corso di Reti di Calcolatori
AA 2002/2003
Sommario
• Introduzione
• Sottoreti • Masking• Routing con sottoreti
• Super- reti• Classless addressing• Strutture dati
Limiti Indirizzamento IP
• Indirizzo 32 bit: prefisso + suffisso• A ogni rete fisica è corrisponde ind. IP rete
unico• Ogni host di una rete ha il prefisso IP di rete
della rete fisica a cui appartiene
• Crescita esponenziale reti• Overhead nella gestione degli indirizzi• Dimensioni tabelle routing• Esaurimento indirizzi (classe B)
Possibili Soluzioni
• Evitare di assegnare nuovi indirizzi di rete, se possibile
• Utilizzare stesso prefisso IP per più reti fisiche
Possibili Soluzioni
• Invece di classe B, utilizzo classe C
• Conseguenze• Procedure Routing devono essere
modificate
• Tutte macchine connesse alla rete modificata devono aderire alle convenzioni
Sottoreti
• Caso di utilizzo dello stesso prefisso ip per più reti
• Prefisso di rete ip resta lo stesso
• Suddivido host-ids in 2 parti• Sottorete• Host sottorete
Assegnazione Sottoreti
Network id Host adrSubnet adr
Host id
L’indirizzo di classe B 156.111 può essere suddiviso nel seguente modo:
Considero i primi 8 bit dell’host id per identificare una sottorete
Ottengo 254 sottoreti (0 e 255 sono riservati): 156.111.1.0 156.111.254.0
Ciascuna sottorete può indirizzare 254 host con i rimanenti 8 bit dell’host id
Sottoreti
• Esempio con indirizzo di classe B 156.111.0.0• 8 bit = id di sottorete
• 2^8 = 256 spazio ind. - 2 indirizzi ris = 254 subnet
• Es: 156.111.1.X – 156.111.254.X
• 8 bit = per id host sottoreti
• Maschera: subnet_mask = 255.255.255.0 • 1111 1111 1111 1111 1111 1111 0000 0000
• Regola: i bit corrispondenti alla parte di rete e sottorete sono settati a 1
• AND tra indirizzo IP e mask restituisce indirizzo IP di rete
Maschere di sottorete
128 64 32 16 8 4 2 1
1 0 0 0 0 0 0 0 128
1 1 0 0 0 0 0 0 192
1 1 1 0 0 0 0 0 224
1 1 1 1 0 0 0 0 240
1 1 1 1 1 0 0 0 248
1 1 1 1 1 1 0 0 252
1 1 1 1 1 1 1 0 254
1 1 1 1 1 1 1 1 255
Nel creare maschere
di sottorete
è opportuno
utilizzare bit contigui
Esempi di maschere di sottorete di indirizzi di classe B• 255.255.0.0 (0000 0000 0000 0000)
• 0 sottoreti con 65534 host
• 255.255.192.0 (1100 0000 0000 0000)• 2 sottoreti con 16382 host
• 255.255.252.0 (1111 1100 0000 0000)• 62 sottoreti con 1022 host
• 255.255.255.252 (1111 1111 1111 1100)• 16382 sottoreti con 2 host
Esempi di maschere di sottorete di indirizzi di classe C• 255.255.255.0 (0000 0000)
• 0 sottoreti con 254 host
• 255.255.255.192 (1100 0000)• 2 sottoreti con 62 host
• 255.255.255.224 (1110 0000)• 6 sottoreti con 30 host
• 255.255.255.240 (1111 0000)• 14 sottoreti con 14 host
Come interpretare indirizzi di subnet
• Indirizzo IP I = 130.122.34.3
• Maschera di sottorete M=255.255.255.192• I & M = 130.122.34.0 = N indirizzo della rete
• Ultimi 8 bit: 3 = 0000 0011, 192 = 1100 0000;• Dopo l’and gli ultimi 8 bit sono: 0000 0000
• I corrisponde a host 3 nella rete 130.122.34.0• Not M = 0.0.0.63 = NM (ultimi 8 bit: 0011 1111)• I & NM = 0000 0011 = 3
Come interpretare indirizzi di subnet
• Indirizzo IP I = 130.122.34.132• Maschera di sottorete M=255.255.255.192
• I & M = 130.122.34.128 indirizzo della rete• 132 = 1000 0100, 192 = 1100 0000• Dopo l’and gli ultimi 8 bit sono: 1000 0000 = 128
• I corrisponde a host 4 nella rete 130.122.34.128
• Not M = 0.0.0.63 = NM (ultimi 8 bit: 0011 1111)• I & NM = 0000 0100 = 4
Vantaggi Sottoreti
• Aumenta il controllo sullo spazio indirizzabile
• E’ più facile allocare lo spazio degli indirizzi
• Migliori prestazioni rete
• Nascondono ai router remoti la presenza di più reti locali
Esempio vantaggi con Sottoreti
Rete di classe B... Più di 60000 host possono comunicare direttamente
Come gestirli? E quali performance ottengo?
R
156.111.0.0
156.111.1.2156.111.1.1 156.111.254.254
156.111.1.1 156.111.1.2
156.111.4.1 156.111.4.2
156.111.2.1
156.111.3.1
Meglio utilizzare
le sottoreti
Funzionamento Router con sottoreti
• Routing gerarchico• Router remoti
• Utilizzano network prefix
• Local site• Utilizza maschera di sottorete
Routing con Sottoreti
• Estrai IP address Id dal datagram• Se prefisso di Id coincide con una rete
direttamente connessa• Invia datagram a dest.
• Altrimenti• Per ogni entry nella tabella
• Calcola N = Id & mask
• Se N è presente allora Invia a next-hop specificato
• Se no-match allora errore di routing
Esempio
• Datagramma in arrivo indirizzato a 192.4.10.3• Foreach i maski&192.4.10.3
• 192.0.0.0 30.0.0.0• 192.0.0.0 40.0.0.0• 192.4.0.0 128.1.0.0• 192.4.10.0 192.4.10.0 passo a 128.1.0.9
dest saltomaschera
30.0.0.040.0.0.0
40.0.0.7255.0.0.0255.0.0.0
128.1.0.0192.4.10.0
255.255.0.0255.255.255.0
Consegna diretta
128.1.0.9Consegna diretta
Supernet
• Indirizzamento senza classi
• Complementare rispetto subnet• Indirizzo assegnato a una organizzazione
copre + prefissi di classe
• Motivazioni• Classe B si sta esaurendo• Classe C + numerosa
Supernet
• Considero azienda di medie dimensioni• I 255 host di una classe C sono troppo pochi• Preferisce classe B con subnetting
• Alternativa• Assegno n classi C contigue• Se n = 256 simulo indirizzo classe B
Routing nelle Supernet
• 256 ind. classe C vs 1 ind. classe B • Esplosione tabelle routing
• Classless Inter-Domain Routing (CIDR)• Collassa l’informazione in unico blocco• (network address, count) ... (192.5.48.0, 3)• 192.5.48.0 - 192.5.49.0 - 192.5.49.0 • Tabelle contengono info solo su ISP
CIDR
• Utilizzo maschera
• Impongo blocchi di dim. potenza di 2
• Richiede di specificare 2 valori• Indirizzo più basso del blocco• Maschera a 32 bit
• Indirizzo/ #bit1 nella maschera• 128.211.168.0/21
Strutture dati e algoritmi per classless lookup
• Velocità è essenziale• Individuare next-hop• Modificare tabella
• Indirizzo CIDR non è self-identifying
• Classfull address• Hashing
Strutture dati e algoritmi per classless lookup
• RICERCA PER LUNGHEZZA DI MASCHERA
• Parto da 32 bit settati a 1 e decremento
• Scelgo il massimo prefisso che trova riscontro nella tabella
• Inefficiente• Worst case 32 iterazioni (caso default)
Strutture dati e algoritmi per classless lookup
• BINARY TRIE• Utilizzo struttura gerarchica• Valore dei bit successivi stabilisce
percorso da seguire• E’ necessario calcolare un insieme di
prefissi unici per costruire l’albero• Effettuo ricerca nella struttura• Mi fermo su una foglia o se non proseguo
Esempio di Binary trie
0
10
0
0
11
1
1
1
0
0
0
Prefissi inseriti
001
0100
0101
011
1010
10110
10111
Percorso per 10111
1
1
Strutture dati e algoritmi per classless lookup
• BINARY TRIE - continua
• Ciascuna foglia contiene• Indirizzo a 32 bit A• Maschera che copre la porzione di rete M
• D & M = A ?• Se no, scarico il datagramma
• In realtà trovo candidati potenziali
Strutture dati e algoritmi per classless lookup
• BINARY TRIE - continua
• Unicità prefissi?
• Estendo la struttura• Ogni nodo interno contiene ind e mask• Scelgo il percorso + lungo (+ specifico)
Strutture dati e algoritmi per classless lookup
• BINARY TRIE - continua
• Ottimizzazioni• Patricia tree
• Info aggiuntiva in ogni nodo
• Salto lunghi prefissi comuni
• Level Compressed trie• Elimina livelli dell’albero che possono essere
saltati