Reti di Calcolatori a.a. 2005/06 Lezione 1 Reti di Calcolatori Andrea Frosini 1 Rete di calcolatori (computer network) E’ un insieme di elaboratori elettronici autonomi ed interconnessi - Autonomi: tutti hanno “pari dignità”, nessuno può controllare gli altri - Interconnessi: tutti sono in grado di scambiarsi informazioni Attenzione! Non dobbiamo confondere “rete di calcolatori” e “sistema distribuito” - in un s.d. l’esistenza di vari calcolatori (o processori) interagenti è nascosta all’utente da un opportuno sistema operativo od applicazione. L’utente si trova ad interagire con un singolo sistema e non ha cognizione delle sue varie parti. - in una rete di calcolatori l’utente è cosciente dell’esistenza di più macchine collegate insieme e può decidere su quale di queste operare a seconda delle proprie esigenze. Rete di calcolatori + Software di gestione = Sistema distribuito Reti di Calcolatori Andrea Frosini 2 I perché delle reti di calcolatori • Condivisione delle risorse (ad es. utilizzo di un database della NASA) • Affidabilità (ad es. duplicazione dei dati importanti, sistemi multi-server) • Diminuzione dei costi (rete di piccoli calcolatori vs. mainframe) • Scalabilità (espandibilità della rete quando è necessario) • Comunicazione personale e commerciale (ad es.: pagine WWW, posta elettronica, bancomat e POS, trading on-line …) Reti di Calcolatori Andrea Frosini 3 Chi utilizza le reti di calcolatori ? Organizzazioni : amministrazione, condivisione risorse, gestione grandi quantità di dati, e-commerce … Singoli individui (di solito da casa propria tramite fornitori di accesso): accesso ad informazioni remote, accesso a servizi, e-commerce, divertimento … Gruppi di persone : comunicazioni personali, gruppi di discussione, videoconferenze, posta elettronica … Reti di Calcolatori Andrea Frosini 4 Tassonomia delle reti di calcolatori Due parametri permettono la classificazione delle reti di calcolatori: 1. tecnologia trasmissiva (la topologia della rete, e quindi le caratteristiche della comunicazione) 2. scala dimensionale (l’estensione fisica della rete, e quindi la scala dimensionale di utilizzo della rete) Questi due parametri non possono essere considerati indipendentemente Reti di Calcolatori Andrea Frosini 5 Classificazione secondo la tecnologia trasmissiva Esistono essenzialmente tre differenti tipi di rete: 1. le reti broadcast: un unico canale di comunicazione è condiviso da tutti i calcolatori 2. le reti punto a punto: ogni canale di comunicazione collega due diversi calcolatori della rete 3. le reti wireless: il canale di comunicazione è costituito da onde radio, laser o infrarosse trasmesse nell’etere Attenzione a non applicare le categorie broadcast e punto a punto alle reti wireless! Reti di Calcolatori Andrea Frosini 6 Reti broadcast: caratteristiche I In una rete broadcast tutti i calcolatori sono connessi ad un unico canale trasmissivo. La comunicazione è basata su piccole sequenze di dati (pacchetti). In ciascun pacchetto è riportato un identificatore del calcolatore a cui i dati sono destinati. Reti di Calcolatori Andrea Frosini 7 Reti broadcast: caratteristiche II Ogni calcolatore legge tutti i pacchetti, ma considera solo quelli indirizzati a se stesso. E’ generalmente possibile indirizzare un pacchetto a tutti i calcolatori nella rete (broadcasting). Alcune reti permettono anche il multicasting, ossia l’invio di pacchetti ad un sottoinsieme di calcolatori nella rete. In ogni istante un solo calcolatore può trasmettere (cosa succede se due calcolatori iniziano a trasmettere contemporaneamente?) Reti di Calcolatori Andrea Frosini 8 Reti broadcast: caratteristiche III Due tipiche topologie: bus ed anello (ring) Token-Ring Ethernet Regola generale: le reti broadcast sono usualmente composte da pochi nodi e geograficamente accentrate. Reti di Calcolatori Andrea Frosini 9 Reti punto-a-punto: caratteristiche I In una rete punto a punto ogni canale trasmissivo collega due elaboratori. La comunicazione è ancora basata su piccole sequenze di dati (pacchetti) che transitano in entrambe le direzioni. Reti di Calcolatori Andrea Frosini 10 Reti punto-a-punto: caratteristiche II Per arrivare alla sua destinazione, ogni pacchetto può attraversare più calcolatori Sono anche dette in inglese store-and-forward networks (ogni nodo attende la completa ricezione di un pacchetto per instradarlo successivamente ed in blocco verso il destinatario successivo) In generale esistono molti percorsi che portano alla stessa destinazione, quindi è necessario sceglierne uno: routing (o instradamento) dei pacchetti. Regola generale: le reti punto-a-punto (peer-to-peer) sono usualmente di grandi dimensioni. Reti di Calcolatori Andrea Frosini 11 Reti wireless: caratteristiche Comunicazione con segnale radio od ottico (laser, infrarosso) nell’etere. Generalmente con canale di comunicazione condiviso per segnali radio, con canale di comunicazione punto-a-punto per segnali ottici Il tasso d’errore della trasmissione è molto alto Possono essere utilizzate per connettere componenti di un computer (mouse, tastiera, monitor), per scambiare informazioni con cellulari (es. reti Bluetooth) o per creare reti anche di grandi dimensioni. Le reti wireless fanno riferimento allo standard IEEE 802.11 Reti di Calcolatori Andrea Frosini 12 Classificazione secondo la scala dimensionale Esistono vari tipi di reti che si differenziano per dimensione: reti personali, reti locali, reti metropolitane, e reti geografiche Distanza tra nodi Ambito 10 m. Stanza 100 m. Edificio 1 km. Campus 10 km. Città 100 km. Nazione 1000 km. Continente 10 000 km. Pianeta Reti di Calcolatori Andrea Frosini Tipo di rete Rete locale Rete metropolitana Rete geografica Internet 13 Reti locali (o LAN, da Local Area Network) Le reti locali in genere: – sono possedute da organizzazioni private – hanno un’estensione che arriva a qualche km – si distendono nell’ambito di un singolo edificio o campus (non si possono di norma posare cavi sul suolo pubblico) – sono molto usate per connettere PC o workstation Reti di Calcolatori Andrea Frosini 14 Reti locali (o LAN, da Local Area Network) I Le reti locali si distinguono per tre caratteristiche: 1. Dimensione: la dimensione non può andare oltre un certo limite, per cui è noto a priori il tempo di trasmissione nel caso peggiore. Questa conoscenza permette di utilizzare delle tecniche particolari per la gestione del canale di comunicazione. 2. Tecnologia trasmissiva: le LAN sono generalmente di tipo broadcast. Tipiche velocità di trasmissione sono da 10 a 100 Mbps, con basso ritardo di propagazione del segnale da un capo all’altro della rete (qualche decina di micro-secondi) e basso tasso d’errore. Reti di Calcolatori Andrea Frosini 15 Reti locali (o LAN, da Local Area Network) II 3. Topologia: sono possibili vari tipi di topologie; le più diffuse sono bus e ring: Topologia bus: • in ogni istante solo un elaboratore può trasmettere, gli altri devono astenersi • è necessario un meccanismo di arbitraggio per risolvere i conflitti quando due o più elaboratori vogliono trasmettere contemporaneamente • l’arbitraggio può essere centralizzato o distribuito • lo standard IEEE 802.3 (Ethernet) è quello usualmente utilizzato Topologia ring: • in un ring ogni bit circumnaviga l’anello in un tempo inferiore a quello di trasmissione del pacchetto • è necessario un meccanismo di arbitraggio • lo standard IEEE 802.5 (derivante dal Token-Ring IBM) è quello usualmente utilizzato ed opera a 4 o 16 Mbps Reti di Calcolatori Andrea Frosini 16 Reti metropolitane (o MAN, da Metropolitan Area Network) Le Metropolitan Area Network - hanno un'estensione tipicamente urbana (molto superiore a quella di una LAN) e sono generalmente pubbliche - sono basate essenzialmente sulle tecnologie delle reti geografiche, utilizzate su scala urbana. Recentemente è stato definito un apposito standard, lo IEEE 802.6 o DQDB (Distributed Queue Dual Bus), che è utilizzato in varie realizzazioni, molto più vicino alla tecnologia LAN che WAN - hanno un mezzo trasmissivo di tipo broadcast (due bus in 802.6) a cui tutti i computer sono attaccati - ogni bus (cavo coassiale o fibra ottica) è unidirezionale, ed ha una head-end che cadenza l'attività di trasmissione - le MAN di ultima generazione sono basate su tecnologia wireless (standard IEEE 802.16) Reti di Calcolatori Andrea Frosini 17 Reti metropolitane: esempio Head End Head End Reti di Calcolatori Andrea Frosini 18 Reti geografiche (o WAN, da Wide Area Network) I Le Wide Area Network, si estendono a livello di una nazione, di un continente o dell'intero pianeta e sono costituite da due componenti distinte: 1. un insieme di elaboratori (host oppure end system) sui quali girano i programmi usati dagli utenti 2. una communication subnet (o subnet), che connette gli end system e gli host fra loro. Il suo compito è trasportare messaggi, così come il sistema telefonico trasporta parole da chi parla a chi ascolta. Le subnet appartengono usualmente ad enti pubblici, compagnie telefoniche o internet providers. Usualmente la subnet è di tipo store-and-forward, detta anche packet-switched subnet. Meno diffuse sono invece le subnet satellitari, nelle quali ogni router ascolta le stesse comunicazioni del satellite (down-ward communication) e comunica a sua volta con questo (up-ward communication). Reti di Calcolatori Andrea Frosini 19 Reti geografiche (o WAN, da Wide Area Network) II Di norma la subnet consiste, a sua volta, di due componenti: 2.1. linee di trasmissione (dette anche circuiti, canali, trunk): possono essere conduttori in rame, fibre ottiche o radio onde. 2.2. switching element (elemento di commutazione): un elemento di commutazione è un elaboratore specializzato utilizzato per connettere fra loro due o più linee di trasmissione. Quando arrivano dati su una linea, l'elemento di commutazione deve scegliere una linea in uscita sul quale instradarli (cfr. le vecchie linee telefoniche). Un tale elemento viene indicato come “sistema intermedio” o “nodo di commutazione pacchetti” o “router”. Reti di Calcolatori Andrea Frosini 20 Reti geografiche: esempio subnet MAN LAN LAN router linea di trasmissione Una WAN collega solitamente più LAN e MAN tra loro. Reti di Calcolatori Andrea Frosini 21 Reti geografiche: caratteristiche Ogni router, in generale, deve: - ricevere un pacchetto da una linea in ingresso - memorizzarlo per intero in un buffer interno - appena la necessaria linea in uscita è libera, instradare il pacchetto su essa Una subnet basata su questo principio si chiama: - punto a punto - store and forward - a commutazione di pacchetto (packet switched) Reti di Calcolatori Andrea Frosini 22 Reti geografiche wireless Alcune communication subnet sono realizzate con topologia wireless oppure mista, ad es. quando basate su trasmissioni radio o satellitari: Satellite: ogni router sente l'output del satellite e si fa sentire dal satellite. In generale si ha: - Broadcast down-link (cioè dal satellite a terra) - Broadcast up-link (cioè da terra al satellite) Radio al suolo: Ogni router sente l'output dei propri vicini (entro una certa distanza massima). Anche qui siamo in presenza di una rete broadcast. Reti di Calcolatori Andrea Frosini 23 Internetworking Si ha internetworking quando due o più reti (LAN, MAN, o WAN) sono connesse tra loro. Una internetwork (o semplicemente internet) non coincide con una WAN quando le reti connesse adottano tecnologie tra loro incompatibili. In questo caso la internetwork comprende alcuni router detti gateway (od anche router multiprotocollo) che si occupano di effettuare le necessarie trasformazioni per i pacchetti che transitano da una rete all’altra Una particolare internetwork è detta Internet (notare la I maiuscola). Reti di Calcolatori Andrea Frosini 24 Meccanismi di arbitraggio Infine le reti broadcast possono essere classificate a seconda del tipo di arbitraggio: Allocazione statica: le regole per decidere chi trasmette sono fissate a priori (es. si fissa un time slot ad ogni elaboratore con un algoritmo di tipo round-robin). Abbiamo comunque spreco di tempo per stazioni che non devono trasmettere. Allocazione dinamica: si decide di volta in volta chi deve trasmettere. E’ necessario un meccanismo di arbitraggio delle contese che sarà centralizzato: una apposita apparecchiatura accetta le richieste e decide chi abilitare distribuito: ognuno decide per conto proprio ed in maniera tale da non creare caos (es. IEEE 802.3 Ethernet con ascolto del canale) Reti di Calcolatori Andrea Frosini 25 Algoritmi tipo round-robin Un algoritmo di tipo “round robin” fissa un ordine tra gli hosts ed assegna a ciascuno di essi un time slot durante il quale può trasmettere. Qualora il tempo di trasmissione superi il time slot assegnato, si esegue la prelazione della trasmissione ponendola alla fine della coda creata e facendo proseguire la trasmissione al successivo elaboratore in attesa. Es. sia l’ordine tra 4 elaboratori fissato a priori in p1, p2, p3, p4. Supponiamo che questi vogliano trasmettere per il tempo indicato a fianco p1 30u, p2 15u, p3 60u, p4 45u settando un time slot di 20 u, sarà necessario un tempo totale di 3 x (4 x 20) = 240 u contro le 30 + 15 + 60 + 45 = 150 u realmente utilizzate per le comunicazioni. Qualora l’ordine sia fissato dinamicamente a seconda delle richieste (gestione più raffinata), tale spreco di tempo potrà ridursi ed il canale sarà occupato con le seguenti precedenze: p1 -> p2 -> p3 -> p4 -> p1 -> p3 -> p4 -> p3 -> p4 Le prestazioni di quest'algoritmo sono dunque influenzate dal tempo medio d'attesa. In ogni caso tutti gli elaboratori ottengono il controllo del canale a turno, evitando il problema dell'attesa indefinita (starvation). Reti di Calcolatori Andrea Frosini 26