Reti di calcolatori Una premessa: i sistemi di comunicazione Le reti di calcolatori Internet
Il sistema di trasmissione E caratterizzato da alcuni aspetti. In particolare: I mezzi di trasmissione La tecnologia di trasmissione Delle regole per comunicare (i protocolli)
I mezzi di trasmissione Rappresentano il mezzo fisico utilizzato per realizzare il canale di trasmissione In base al supporto fisico usato si distinguono in: Mezzi guidati Mezzi non guidati
Un esempio noto di mezzo non guidato: il GSM... cella... Centrale smistamento antenna
Un esempio noto di mezzo non guidato: il GSM... cella... Centrale smistamento Canale di aggancio antenna
Un esempio noto di mezzo non guidato: il GSM... cella... Centrale smistamento Canale di aggancio verifica antenna
Un esempio noto di mezzo non guidato: il GSM... cella... Centrale smistamento Canale di trasmissione Canale di ricezione comunicazione antenna
La tecnologia di trasmissione
Protocollo di comunicazione Insieme di regole (stabilite a priori) che determinano le operazioni da eseguire per far comunicare la sorgente con la destinazione Canale di comunicazione
Le reti di calcolatori Uno specifico sistema di trasmissione può essere realizzato mediante una rete di calcolatori Rete di calcolatori: un insieme di calcolatori autonomi collegati tra loro mediante una rete di comunicazione Le reti di calcolatori non sono sistemi distribuiti
Le reti di calcolatori Due parametri con cui classificare le reti di calcolatori: La tipologia della connessione Lestensione della rete
La tipologia della connessione Due fondamentali tipologie di connessione: Multipunto (broadcast) Punto-a-punto
Reti a connessione multipunto (broadcast) I canali di trasmissione sono condivisi da tutti i calcolatori della rete Ogni calcolatore viene identificato univocamente attraverso un indirizzo di rete Ogni messaggio inviato deve contenere lindirizzo del calcolatore destinatario (un messaggio almeno in linea di principio raggiunge tutti i calcolatori della rete, ma solo il calcolatore il cui indirizzo corrisponde a quello contenuto nel messaggio lo considererà)
Reti a connessione punto a punto Esistono connessioni individuali tra coppie di calcolatori Nella forma più semplice la comunicazione avviene tra due dispositivi connessi da un canale di comunicazione diretto In alcuni casi non è possibile avere un canale di comunicazione diretto tra due calcolatori (il canale di comunicazione passerà per calcolatori intermedi)
Tipologia di connessione
Estensione delle reti
WAN (Wide Area Network: Una rete di trasmissione tra calcolatori fisicamente distanti tra loro, collegati attraverso mezzi di trasmissione dedicati
Questo livello di rete si occupa del trasferimento delle informazioni tra nodi Rete = canali di trasmissione + IMP IMP (Interface Message Processor): sistemi che si occupano dellinstradamento e della verifica di correttezza dei messaggi
Questo livello di rete consente lesecuzione delle applicazioni Rete = Host (calcolatori) collegati agli IMP
Questo livello di rete consente agli utenti di comunicare in modo trasparente alla struttura complessiva della rete
Reti Geografiche Adottano una tipologia di connessione punto a punto particolare detta a commutazione È una connessione di tipo indiretto: infatti i dati sono immessi nella rete dallhost sorgente e raggiungono lhost destinatario passando da IMP a IMP
Ad esempio... sorgente destinatario
Ad esempio... sorgente destinatario
Ad esempio... sorgente destinatario
Ad esempio... sorgente destinatario
Commutazione Esistono due tipologie di connessione a commutazione a commutazione di circuito a commutazione di pacchetto
Commutazione di circuito Deriva dalla modalità di trasmissione usata negli apparecchi telefonici (fissi) Viene creato un canale logico temporaneo dedicato tra sorgente e destinatario Il canale logico è costituito da una successione di connessioni tra i nodi della rete
Commutazione di circuito La comunicazione si realizza in tre fasi: Fase di attivazione (viene stabilito il cammino tra sorgente e destinatario) Fase di trasferimento dati Fase di chiusura della comunicazione (si rilasciano le risorse dedicate alla trasmissione)
Esempio (fase di attivazione) sorgente destinatario
Esempio (fase di attivazione) sorgente destinatario Rich conn con B
Esempio (fase di attivazione) sorgente destinatario
Esempio (fase di attivazione) sorgente destinatario Rich conn con B
Esempio (fase di attivazione) sorgente destinatario
Esempio (fase di attivazione) sorgente destinatario Rich conn con B
Esempio (fase di attivazione) sorgente destinatario Cammino dedicato tra A e B
Commutazione di circuito Questa tecnica è efficiente per comunicazioni telefoniche (il canale è sfruttato) Meno efficiente per la comunicazione dati tra calcolatori (il canale non è utilizzato continuativamente) La trasmissione è effettuata a velocità costante (quindi pari a quella del calcolatore più lento)
Commutazione di pacchetto Si basa sullinvio di pacchetti di dati di dimensioni ridotte (KByte) Un messaggio è perciò costituito da uno o più pacchetti Ogni pacchetto oltre ai dati contiene delle informazioni necessarie per linvio (indirizzo del destinatario, posizione del pacchetto entro il messaggio)
Commutazione di pacchetto I pacchetti vengono spediti uno per volta entro la rete Ogni nodo della rete che riceve il pacchetto lo memorizza, lo esamina, e se non è il destinatario, lo invia ad un nodo successivo nella direzione del destinatario Esistono due approcci per instradare un messaggio: a datagrammi a circuito virtuale
Datagrammi I pacchetti (datagrammi) vengono trattati in modo indipendente luno dallaltro Ogni pacchetto può seguire un cammino diverso per giungere a destinazione Ogni nodo intermedio della rete deve prendere una decisione sullinstradamento dei singoli pacchetti
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2 p3
p1 Esempio datagrammi sorgente destinatario messaggio p2p3
Circuito virtuale Simile a commutazione di circuito Viene prima identificato un circuito logico virtuale tra il sorgente ed il destinatario Una volta identificato tale circuito tutti i pacchetti seguiranno i nodi appartenenti al circuito identificato Ogni nodo intermedio non deve prendere decisioni sullinstradamento dei singoli pacchetti, poichè tale decisione è già stata definita nel circuito virtuale
Commutazione di circuito vs Comm di pacchetto Comm di circuito sono più adatte per segnali che dovrebbero giungere al destinatario in modo continuo e regolare (tipo voce, video) Comm di pacchetto gestisce meglio flussi di dati trasmessi non in modo continuo, garantendo una migliore gestione delle risorse condivise (ad es. i canali fisici) Comm di pacchetto gestisce in modo efficiente collegamento tra calcolatori con velocità di trasmissione differente
Le reti locali (LAN) Consentono lo scambio di dati e la condivisione di risorse Connettono dispositivi posti a distanza ridotta (e.g. entro lo stesso edificio) Le LAN usano una tipologia di connessione broadcast: ogni nodo include un trasmettitore/ricevitore che comunica su un canale di trasmissione condiviso
Reti di reti (Internetwork) Collegano più reti differenti mediante opportuni elementi di interfaccia Lesempio più universalmente noto è Internet che è la rete di reti per eccellenza
Internet 1.E un insieme di reti in cui tutti i nodi aderiscono (usano) agli stessi protocolli di comunicazione (i.e., stesso naming, routing, ecc.): una famiglia di protocolli detta TCP/IP 2.NON è il Web
Internet – Storia Nata negli anni 60 col nome di Arpanet Obiettivo: collegare i calcolatori di vari siti militari per: –condividere in modo efficace/veloce le ricerche –riuscire a comunicare anche in caso di attacco nucleare (tanti cammini alternativi, decisi al momento, tra due calcolatori) Allinizio: 4 calcolatori negli USA 1973: connessioni allInghilterra e alla Norvegia Anni 80: grandi reti accademiche e scientifiche 1982: TCP/IP (nome breve per individuare i protocolli Internet) diviene lo standard Ora: decine di migliaia di reti in tutto il mondo
Struttura di Internet Internet è una rete di reti Routers Dominio + Firewall (opzionali) Gateway
Elementi di Internet Domini Gateways Routers Firewalls Protocolli
Domini Internet concettualmente è una collezione di gruppi di reti denominati domini (es: unimib.it, yahoo.it) Ogni dominio consiste di una serie di reti gestite da una singola organizzazione che ne gestisce autonomamente la sua configurazione, ad es.: –topologia –creazione sotto-domini (es: disco.unimib.it, psicologia.unimib.it) –indirizzi logici e fisici delle singole macchine. I nodi in Internet sono individuati da un nome che è unico nel loro dominio. Es.: bbking è unico nel dominio disco.unimib.it
Domini La struttura dei domini è gerarchica: ogni dominio contiene altri sottodomini; ad es. dominio di primo livello it, dominio di secondo livello unimib e così via Un ente internazionale è incaricato dei nomi/indirizzi dei domini (perché siano unici in tutto il mondo): Domain Name System N.B. Con DNS si può intendere o il meccanismo, o il server/servizio
Router, Firewall e Gateway I router si occupano di smistare il traffico tra i diversi domini della rete Il firewall si occupa di proteggere una sotto-rete da accessi indesiderati provenienti dallesterno Tutti i nodi di una rete devono essere in grado di dialogare secondo il protocollo della rete stessa; per dialogare tra reti con protocolli differenti è necessario un gateway (si occupa di tradurre la comunicazione)
I protocolli di comunicazione stabiliscono come deve avvenire lo scambio di messaggi –Come localizzare sulla rete il (nodo) destinatario/mittente di un messaggio –Quale percorso deve fare un messaggio tra due nodi non connessi in maniera diretta (nodi intermediari) –Quando un nodo può inviare un messaggio –Come controllare se un messaggio, durante la trasmissione, si è alterato
Protocolli di Comunicazione (dettaglio) Naming: stabilisce come associare un nome logico (es. stampante Colori Aula 2) ed un indirizzo fisico sulla rete ad ogni nodo della rete Sia il nome logico che lindirizzo fisico devono essere unici allinterno di quella rete; gli utenti utilizzeranno il nome logico Alcuni nodi mantengono le tabelle di associazione (nome logico indirizzo fisico): server DNS= Domain Name Server o Service; (vedi anche router)
Protocolli di Comunicazione (dettaglio) Routing o instradamento: scelta del percorso del messaggio entro la rete –fisso: deciso al momento dellinstallazione della rete (veloce, non tollerante ai guasti) –variabile: è scelto allinizio della sessione di lavoro (più tollerante ai guasti, basta ri-iniziare la sessione) –dinamico: è scelto al momento del passaggio del messaggio o del pacchetto (packet switching) in base alle condizioni della rete (traffico, nodi attivi, ecc.); i router sono quei nodi delegati a questo compito
Protocolli di Comunicazione (dettaglio) Conflitti di comunicazione: cosa fare quando più nodi tentano di comunicare sullo stesso arco contemporaneamente Le tecniche per evitare i conflitti più famose sono: –Token ring o token passing: un nodo può trasmettere solo se è in possesso del token; cè acknowledgment e obbligo di rilascio del gettone (tecnica equa) –CSMA/CD (Carrier Sense Multiple Access/Collision Detection) o prevenzione e correzione mediante ascolto – adottato in Ethernet
Protocolli di Comunicazione in Internet Internet non usa solo un protocollo di comunicazione, ma un insieme di protocolli detta anche suite di protocolli Tale suite di protocolli è chiamata TCP/IP La suite di protocolli TCP/IP opera per livelli gerarchici
Livelli gerarchici di rete Il SW per la comunicazione in rete, in generale non solo in Internet, è organizzato in moduli ben distinti e organizzati in una gerarchia di livelli (pila) tali che ogni modulo: –Svolge solo un sotto-insieme dei passi/compiti necessari per la comunicazione in rete –Dialoga solo (si interfaccia) con i moduli del livello direttamente superiore e inferiore
Livelli gerarchici di comunicazione postino amm. delegato assistente pers. segretaria ufficio postale U.R.P. posta interna postino amm. delegato assistente pers. segretaria ufficio postale U.R.P. posta interna
Gerarchia di livelli Internet Application Layer Transport Layer Network Layer Link Layer Application Layer Transport Layer Network Layer Link Layer Percorso dei messaggi TCP, UDP HTTP, SMTP, FTP,... IP sorgentedestinazione
Compiti dei livelli - sorgente Application Layer: (naming) trasforma lindirizzo del destinatario (passato dalla particolare applicazione) in un indirizzo adatto per il livello sottostante (usa il DNS) Transport Layer: divide il messaggio in pacchetti aggiungendogli un numero sequenziale (perchè il destinatario possa ricostruire il messaggio) Network Layer: (routing) aggiunge ai pacchetti un indirizzo intermedio, cioè lindirizzo del router se deve uscire dalla rete locale (usa la tabella di instradamento), e un contatore-hop count Link Layer: tratta i dettagli della particolare rete (es: aspetta il token in una rete token ring)
Compiti dei livelli - destinazione Nella fase di ricezione del messaggio i vari livelli effettuano il lavoro contrario, ad esempio il protocollo IP (Network Layer): –Toglie lindirizzo intermedio (il suo) e considera lindirizzo finale: 1.se è il proprio indirizzo passa il pacchetto al livello superiore (Transport Layer) 2.altrimenti decrementa il contatore (hop count) e ridirige il pacchetto nella rete aggiungendo un nuovo indirizzo intermedio e ri-passandolo al livello inferiore (Link Layer)
Compiti dei livelli Il precedente comportamento fa in modo che solo il Link Layer e il Network Layer siano coinvolti (occupati) nella ri-direzione dei messaggi sulla rete Nel protocollo TCP (Transport Layer) le macchine del mittente e destinatario si inviano delle conferme di ricezione (acknowledgements)
Indirizzi IP Tutti i nodi della rete Internet sono identificati univocamente da un indirizzo detto Indirizzo IP IP= Internet Protocol Nel protocollo IP (livello Network Layer) gli indirizzi dei nodi sono numeri di 32 bit Solitamente vengono indicati con 4 gruppi di 8 bit (ottetti) e.g