Reti di calcolatori: domini di broadcast e maschera di sottorete Dominio di collisione e dominio di broadcast. In una rete di calcolatori, un insieme di nodi che concorrono per accedere allo stesso mezzo trasmissivo costituiscono un dominio di collisione. Facendo riferimento al modello ISO/OSI, questo concetto si colloca al livello datalink, e in particolare al sottolivello di accesso al mezzo trasmissivo (MAC, Medium Access Control). L'espressione ha origine nelle reti in cui l'accesso al mezzo trasmissivo è regolato in modo non deterministico: un nodo (più precisamente l'hardware di rete di cui esso è munito) può cercare di accedere al mezzo in qualunque momento ma, se questo risulta già occupato da una trasmissione in corso, si ha una collisione, e il nodo attende per un tempo casuale prima di ritentare. Il tempo casuale viene incrementato ad ogni nuovo tentativo fallito, per cui si può avere un rapido decadimento delle prestazioni della rete in situazione di traffico intenso. Naturalmente, quanto più è ampio un dominio di collisione, tanto più probabili sono le collisioni, e quindi anche il decadimento della velocità di trasmissione all'interno del dominio. È dunque importante limitare la proliferazione dei nodi all'interno di uno stesso dominio di collisione. Poiché dispositivi come repeater e hub si limitano a inoltrare ogni trasmissione ricevuta a tutti i nodi cui sono collegati, espandere una rete tramite simili dispositivi porta a creare domini di collisione sempre più ampi e quindi meno performanti. Dispositivi come switch e bridge, invece, possono essere usati per dividere un dominio di collisione in parti più piccole e quindi più efficienti. Infatti, quando due nodi comunicano attraverso uno switch, questo crea una sorta di mezzo trasmissivo dedicato fra i due nodi, su cui essi possono trasmettere senza disturbare le trasmissioni fra gli altri nodi, né esserne disturbati. Si avranno collisioni solo nel caso che, mentre lo switch mette in comunicazione due nodi, altri nodi vogliano comunicare proprio con questi. Un dominio di broadcast è un insieme di computer in una rete che possono scambiare dati a livello datalink, senza che questi debbano risalire fino al livello di rete in altri nodi dello stesso insieme. Tipicamente, due diversi domini di broadcast sono separati da un router, che deve esaminare le intestazioni IP dei pacchetti per poterli inoltrare verso la loro destinazione. Dispositivi come hub, switch, bridge o repeater si limitano invece ad esaminare le intestazioni di livello datalink, e quindi i nodi ad essi collegati condividono lo stesso dominio di broadcast. Il nome deriva dal fatto che in una rete IEEE_802.3, anche se segmentata con switch o bridge, i pacchetti con indirizzo destinazione di tipo broadcast vengono comunque inviati a tutti i calcolatori, quindi il dominio di broadcast può essere visto come l'insieme massimo di calcolatori che possono inviarsi reciprocamente pacchetti di tipo broadcast. La segmentazione delle reti in domini di broadcast. Gli amministratori delle reti di grandi dimensioni preferiscono suddividere la rete locale in reti interconnesse per facilitarne gestione ed amministrazione, con l’effetto di non secondaria importanza di ottenere una riduzione del traffico in quanto i protocolli adottati non consentono in genere ai pacchetti broadcast di transitare all’interno dei router. Gli strumenti adottati per segmentare la rete sono il gateway e la subnet mask o “Maschera di Sottorete”. Il gateway (dall'inglese, portone, passaggio) è un dispositivo di rete che opera al livello di rete e superiori del modello ISO/OSI. Il suo scopo principale è quello di veicolare i pacchetti di rete all'esterno della rete locale (LAN), o più in generale verso le altre sottoreti. Da notare che gateway è un termine generico che indica il servizio di inoltro dei pacchetti verso l'esterno; il dispositivo hardware che porterà a termine questo compito è tipicamente un router. Nelle reti più semplici è presente un solo gateway che inoltra tutto il traffico diretto all'esterno verso la rete internet. In reti più complesse in cui sono presenti parecchie subnet, ognuna di queste fa riferimento ad un gateway che si occuperà di instradare il traffico dati verso le altre sottoreti o a rimbalzarlo ad altri gateway. La subnet mask è necessaria al computer che deve comunicare con un altro indirizzo IP per sapere se deve instradare i pacchetti verso il gateway della sua rete locale oppure usare l'indirizzo di rete locale del destinatario (ethernet, tokenring o quant’altro). Normalmente viene indicata con un indirizzo di 4 byte scritti sotto forma di 4 numeri decimali separati da un punto, come nel caso degli indirizzi IP, ad esempio 255.255.255.192. Quando il sistema operativo (più precisamente: il livello IP dello stack TCP/IP) riceve da un programma la richiesta di inviare un pacchetto IP ad un certo indirizzo IP destinatario, per prima cosa calcola l'AND logico fra la subnet mask e il proprio indirizzo ip, e lo confronta con l'AND logico tra la subnet mask e l'indirizzo IP di destinazione. Se il risultato delle operazioni è identico (cioè i bit che identificano l’id di rete, o net ID, sono identici, mentre variano solo i bit dell’ id di host) allora il sistema operativo invierà il pacchetto nella rete locale indirizzandolo con l’indirizzo di rete locale del PC destinatario; se invece il Tratto da: Dispensa sulle "Reti Informatiche" (per le classi V) di Paolo Acunzo ISTITUTO TECNICO INDUSTRIALE STATALE - “G. FELTRINELLI” Piazza Tito Lucrezio Caro, 8 - 20136 Milano risultato delle operazioni è differente significa che il computer destinatario non appartiene alla rete locale, e il pacchetto verrà trasmesso al gateway della rete locale affinché lo instradi verso la rete remota che contiene il computer destinatario. Supponiamo, ad esempio, che il protocollo IP del nostro computer sia configurato come segue: Indirizzo IP: 192.168.32.97 Subnet Mask: 255.255.255.224 e che richiediamo di connetterci all'indirizzo IP 192.168.32.130. Allora lo strato IP calcolerà il risultato dell’ operazione: 192.168.32.97 AND 255.255.255.224 = 192.168.32.96 operazione che per maggiore chiarezza riportiamo anche in numeri binari: 11000000.10101000.00100000.01100001 AND 11111111.11111111.11111111.11100000 = ------------------------------------11000000.10101000.00100000.01100000 Ora ripetiamo l'operazione con l’IP di destinazione: 192.168.32.130 AND 255.255.255.224 = 192.168.32.128 Per maggior chiarezza riportiamo l'operazione in binario: 11000000.10101000.00100000.10000010 AND 11111111.11111111.11111111.11100000 = --------------------------------------------------11000000.10101000.00100000.10000000 I due risultati 192.168.32.96 e 192.168.32.128, essendo differenti tra di loro, indicano due macchine appartenenti a diverse reti. Se al posto dell'indirizzo da raggiungere ci fosse stato l'indirizzo 192.168.32.100, i due indirizzi avrebbero indicato macchine appartenenti alla medesima sottorete. Infatti: 192.168.32.100 AND 255.255.255.224 = 192.168.32.96 come si può constatare esprimendo gli indirizzi in binario: 11000000.10101000.00100000.01100100 AND 11111111.11111111.11111111.11100000 = --------------------------------------------------11000000.10101000.00100000.01100000 Un computer connesso alla rete locale confronta l’indirizzo di destinazione dei dati da inviare con la subnet mask: se corrispondono, significa che il computer di destinazione è sulla stessa rete locale; se invece non corrispondono, il computer d’origine invia i dati al gateway predefinito, il quale si occuperà del loro successivo instradamento verso la rete remota di destinazione. Il protocollo NetBEUI non ha alcuna funzionalità per distinguere tra più reti interconnesse, a differenza del TCP/IP che consente l’adozione della subnet mask per configurare e gestire le subnet. Tratto da: Dispensa sulle "Reti Informatiche" (per le classi V) di Paolo Acunzo ISTITUTO TECNICO INDUSTRIALE STATALE - “G. FELTRINELLI” Piazza Tito Lucrezio Caro, 8 - 20136 Milano Esempio: rete suddivisa in tre sottoreti TrattoTratto da: Dispensa sulle "Reti Informatiche" (per leMarino classi –V)Petrini di Paolo Acunzo da: “Telecomunicazioni” vol.2 – Francesco Editore ISTITUTO TECNICO INDUSTRIALE STATALE - “G. FELTRINELLI” Piazza Tito Lucrezio Caro, 8 - 20136 Milano TrattoTratto da: Dispensa sulle "Reti Informatiche" (per leMarino classi –V)Petrini di Paolo Acunzo da: “Telecomunicazioni” vol.2 – Francesco Editore ISTITUTO TECNICO INDUSTRIALE STATALE - “G. FELTRINELLI” Piazza Tito Lucrezio Caro, 8 - 20136 Milano