Switch
Lo switch esegue tutte le proprie elaborazioni in hardware e non via software, perciò non rallenta il fluire del traffico tra i segmenti. In gergo tecnico si dice che la connessione sia wire speed cioè lasci transitare i pacchetti alla velocità massima consentita dal tipo di conduttore usato per il cablaggio. Nella realtà, un rallentamento esiste sempre, anche se marginale, e la sua entità dipende dal modo in cui lo switch funziona. La primissima tecnica di switching, che eredita in toto la modalità operativa dei bridge, si chiama store-and-forward. Ogni trama che arriva su una delle porte dello switch viene incamerata per intero in una speciale porzione di memoria (buffer) e quindi scartata o trasferita a un altro segmento a seconda dell'indirizzo di destinazione (mac address) indicato al suo interno. L'operazione è velocissima, ma comporta in ogni caso un certo rallentamento perché la trama deve arrivare per intero nel buffer dello switch prima di cominciare a essere ritrasmessa su un'altra porta (a cui corrisponde un altro segmento, appunto). È la tecnica di commutazione più affidabile, poiché prima di rispedire il pacchetto ci si accerta di averlo per intero e se ne verifica la correttezza attraverso il calcolo del crc (Cyclic Redundancy Check), ed è l'unica utilizzabile quando si collegano segmenti funzionanti a velocità diverse, come Ethernet e Fast Ethernet, per esempio. Tuttavia su impianti molto veloci, come nel caso di una dorsale che funziona tutta a 100 Mbps o più, il numero di trame in circolazione è molto elevato e il ritardo che si accumula per la registrazione di ciascuna si fa sentire. L'alternativa ideata per eliminare quest'ultimo inconveniente si chiama commutazione cut-through. La parola significa "tagliare attraverso", "prendere una scorciatoia" e in effetti è proprio quello che accade. Non appena lo switch comincia a ricevere una trama su una qualsiasi delle sue porte, ne legge l'indirizzo di destinazione e, se questo corrisponde a un segmento collegato a un'altra porta, inizia immediatamente a trasmettere la trama senza aspettare che questa sia arrivata per intero. In questo modo, dopo aver letto l'indirizzo, la trasmissione in uscita avviene quasi in contemporanea con la ricezione, e il ritardo è minimo (fino a 20 volte inferiore a quello della tecnica store-and-forward). Benché molto efficace sotto il profilo della velocità, questa tecnica presenta il difetto di far passare anche porcheria. Infatti vengono ritrasmesse anche le trame difettose (troppo corte) risultanti da collisioni o da altri problemi nel segmento di provenienza. Lo switch si limita a controllare l'indirizzo e quindi fa passare tutto quel che segue senza controllo alcuno. Alla pari della modalità store-and-forward, anche qui si aspetta di ricevere l'intera trama prima di iniziare a trasmetterla, però ci si assicura che questa sia almeno lunga 64 byte (il minimo consentito dallo standard Ethernet) e si scarta qualsiasi frammento di trama che abbia dimensioni inferiori. In una rete Ethernet progettata con cura, gli unici errori ricorrenti sono le trame corte provocate da collisioni (runt) e per definizione queste hanno una dimensione inferiore ai 64 byte. Uno switch fragment-free è più veloce di un modello store-and-forward e al contempo non inonda il segmento di destinazione con frammenti di trama inutilizzabili. Il controllo, tuttavia, non è completo visto che continuano in ogni caso a passare le trame troppo lunghe (che sono peraltro il prodotto di malfunzionamenti sulla rete, come abbiamo visto sullo scorso numero, e che vengono risolte sostituendo i componenti difettosi). |