15. Sistemi distribuiti e reti di calcolatori Ing. Simona Colucci Informatica - CDL in Ingegneria Industriale- A.A
Indice Sistemi distribuiti Modulazione e trasmissione dei dati Reti di calcolatori –Topologia –Messaggi e protocolli –ISO/OSI –Architettura client/server –Architettura peer to peer I Servizi Internet Informatica - CDL in Ingegneria Industriale- A.A
Sistemi Distribuiti Sistemi caratterizzati da una rete di calcolatori che interagiscono tra loro Si adattano alla nuova natura distribuita delle organizzazioni Poggiano sulla capacità di trasmettere dati lungo un canale di comunicazione Informatica - CDL in Ingegneria Industriale- A.A
Trasmissione dati Differenti mezzi trasmissivi disponibili Parametri caratterizzanti: –Velocità di trasmissione, misurata in bit per secondo(bps). –Distanza di trasmissione Informatica - CDL in Ingegneria Industriale- A.A
Mezzi di trasmissione dati (1/3) Cavi in Rame Cavo coassiale: –ha al centro un conduttore di rame (anima), circondato da un materiale isolante e da uno schermo di metallo intrecciato(maglia); il tutto è avvolto da un rivestimento esterno –Vantaggi: elevata resistenza alle interferenze elettromagnetiche –Svantaggi: costo elevato, difficoltà di utilizzo in canaline strette, frequenti rotture meccaniche –Velocità: Su brevi distanze 10 7 bit/s Su lunghe distanze 10 5 bit/s Doppino Telefonico: –coppia o treccia di più coppie di conduttori di rame ritorti (twisted pair)per ridurre gli effetti negativi delle interferenze elettromagnetiche; in genere non schermato (unshielded twisted pair-UTP) per evitare gli svantaggi del cavo coassiale –Velocità a seconda della tecnologia utilizzata: Modem su linea telefonica commutata 56 kbit/s ISDN 128 kbit/s ADSL 640 kbit/s, fino ad alcuni Mbit/s Informatica - CDL in Ingegneria Industriale- A.A
Mezzi di trasmissione dati (2/3) Fibre ottiche –Filamenti di materiali vetrosi realizzati in modo tale da poter condurre la luce su lunghe distanze –Disponibili in cavi flessibili, immuni ai disturbi elettrici e atmosferici –Una fibra ottica è composta da uno strato(core), ossia il mezzo trasparente che trasporta il segnale laser, e un secondo strato concentrico(cladding), che costringe l’onda a seguire il percorso della fibra ottica; il tutto è rivestito da guaine protettive che aumentano la resistenza –Comunicazione tramite : Trasmettitore di segnale: laser(costosa e efficiente) o led(economica) Ricevitore di segnale: foto rivelatore che converte la luce in elettricità –Vantaggi: sottilissime(0.5 mm) e leggere (20 kg per un km) –Velocità: fino ad alcuni Tbit/s per centinaia di chilometri Informatica - CDL in Ingegneria Industriale- A.A
Mezzi di trasmissione dati (3/3) Onde radio e sistemi wireless Gamma di tecnologie che usa le onde elettromagnetiche per la trasmissione di dati (senza cavo): –Infrarossi: lenti e a distanza ravvicinata(in disuso) –Laser e microonde: elevata velocità, ma necessità di visibilità diretta tra apparati(usati in sottoreti) –Onde radio: adatte ad ambienti eterogenei (più utilizzate) BlueTooth (brevissime distanze: elaboratore a periferiche, 700 kbit/s) WiFi: tipo di rete locale senza fili WLAN-Wireless Local Area Network (decine/centinaia di metri a seconda della presenza di ostacoli, 56 Mbit/s) WiMax: rete di telecomunicazioni a banda larga e senza fili su scala metropolitana(fino a 50 chilometri, 70Mbit/s ) Rete cellulare, utile anche per i dati : GSM (14.4 kbit/s), GPRS (57.6 kbit/s download, 28.8 upload), UMTS(384 kbit/s), UMTS2(1.8 Mbit/s), UMTS2+(3 Mbit/s), … Via satellite: uso di satelliti geostazionari in un’orbita equatoriale con un raggio di km dal centro della terra, con velocità angolare pari a quella di rotazione terrestre (fungono da ponti radio). Distanza centinaia di chilometri, ma alta latenza Informatica - CDL in Ingegneria Industriale- A.A
Modulazione e demodulazione Modulazione: segnale digitale segnale analogico Demodulazione: segnale analogico segnale digitale La linea telefonica trasporta un segnale analogico (segnale portante) che viene modulato in modo da trasportare uno 0 oppure un 1 Tecniche di modulazione del segnale portante: –Frequenza –Fase –Ampiezza Informatica - CDL in Ingegneria Industriale- A.A
Modulazione di frequenza Segnale digitale da trasmettere Portante Segnale modulato in frequenza Informatica - CDL in Ingegneria Industriale- A.A
Trasmissione dati Modem: MOdulatore, DEModulatore Linee dedicate (connessione permanente) o commutate (connessione temporanea, es. telefono) Linee simplex (monodirezionali), half-duplex (senso unico alternato), full- duplex (bidirezionali) Informatica - CDL in Ingegneria Industriale- A.A
Possibili modulazioni PSTN: linea telefonica tradizionale con portante compresa tra 300 e 3300 Hz -> massimo 56 Kbit/s DSL: applicabili solo sull’ultimo miglio tra centrale e utente : –Ultimo miglio fino a 6 km –Velocità quasi sempre Asimmetrica(ADSL) tra download e upload: fino a 52Mbit/s in download e 12 Mbit/s in upload Informatica - CDL in Ingegneria Industriale- A.A
Reti di calcolatori Le reti di calcolatori collegano elaboratori, detti “nodi della rete”(hosts), situati ad una certa distanza fra di loro, fornendo a ciascuno di essi vari “servizi di rete”, ossia funzionalità disponibili a tutti i calcolatori della rete stessa Ogni rete è basata su di una certa topologia. Essa descrive le modalità con le quali si scelgono i calcolatori da connettere direttamente tra loro Infatti, in una rete avrò: –Calcolatori connessi direttamente –Calcolatori che, per poter comunicare, devono far passare i messaggi attraverso altri elaboratori Informatica - CDL in Ingegneria Industriale- A.A
Reti geografiche e locali LAN (Local Area Network): rete locale –Distanza compresa tra un metro e un chilometro (edificio, campus) –Velocità elevatissima MAN (Metropolitan Area Network): rete metropolitana –Distanza fino alla decina di chilometri (area cittadina) –Velocità elevata WAN (Wide Area Network): rete geografica –Collega sistemi a qualsiasi distanza –Internet è la più diffusa WAN I tre tipi sono organizzati gerarchicamente: le LAN sono collegate da MAN, collegate dalle WAN Informatica - CDL in Ingegneria Industriale- A.A
Verso la convergenza Le reti di calcolatori e quelle di telecomunicazione tendono sempre più a convergere, sfruttando le stesse infrastrutture Nuova classificazione: –Rete di dorsale (core network): parte centrale di una rete di telecomunicazione (es. MAN e WAN dei diversi Internet Service Provider) –Rete di accesso(access network):utilizzata dagli utenti per accedere alla core network (es. linea telefonica, ADSL, GPRS, UMTS) I punti di contatto tra access network e core network sono chiamati Point of Presence (PoP) Informatica - CDL in Ingegneria Industriale- A.A
Topologia (1) Nodo centrale(apparato di rete specializzato negli scambi) che inoltra i messaggi + Semplice + Più nodi possono comunicare contemporaneamente - Collo di bottiglia (nodo centrale…) - Vulnerabile ai guasti del nodo centrale e della rete (unico collegamento) Stella Nessun nodo centrale: treni di messaggi + Nessun collo di bottiglia + Più nodi possono comunicare contemporaneamente + Meno vulnerabile ai guasti della rete e di altri nodi (inversione direzione, a meno di doppio guasto) - Più complesso - Più nodi da attraversare Anello Informatica - CDL in Ingegneria Industriale- A.A
Topologia (2) Nessun nodo centrale + Semplice + Nessun nodo da attraversare - Vulnerabile ai guasti della rete - Solo due nodi alla volta possono comunicare Nessuna topologia precisa + Resistente ai guasti (se routing dinamico) + Più nodi possono comunicare contemporaneamente - Complesso - Più nodi da attraversare Irregolare Bus Informatica - CDL in Ingegneria Industriale- A.A
Topologia (3) Le topologie a stella, anello e bus sono usate soprattutto nell’ambito delle reti locali (LAN – Local Area Network) La topologia irregolare è molto diffusa tra le reti geografiche (WAN – Wide Area Network) Informatica - CDL in Ingegneria Industriale- A.A
I messaggi Le informazioni scambiate tra i nodi sono strutturate in messaggi Ogni messaggio contiene i dati da comunicare ed un certo insieme di informazioni di controllo Spesso la quantità di dati (byte) che è possibile inserire in un messaggio è fissa. Se un nodo deve inviarne un numero maggiore, è necessario utilizzare più messaggi Informatica - CDL in Ingegneria Industriale- A.A
Struttura dei messaggi La struttura dei messaggi dipende dallo standard utilizzato ma è possibile dare una descrizione generale: Fine messaggio Caratteri di controllo Dati da inviare Destinatario Mittente Inizio messaggio IntroduzioneParte utile del messaggio Sequenza di controllo Informatica - CDL in Ingegneria Industriale- A.A
Routing dei messaggi Se due nodi non sono connessi direttamente, il messaggio dovrà attraversare nodi intermedi I nodi intermedi dovranno ricevere il messaggio e rispedirlo verso un nodo a loro connesso e più vicino alla destinazione (routing o instradamento) Il caso più complesso è quello di una rete con topologia irregolare A B X Y Se A vuole comunicare con B, deve passare attraverso X, oppure attraverso X e Y Il nodo X deve decidere quale strada usare (routing statico o dinamico) Informatica - CDL in Ingegneria Industriale- A.A
Protocolli di rete Un protocollo stabilisce le regole di comunicazione che debbono essere seguite da due interlocutori –A: Chiamata per B –B: Pronto, chi parla? –A: Sono A, sei pronto a ricevere dati? –B: Sì –A: Ecco i dati … bla bla bla … fine dei dati –B: Dati ricevuti con successo –A: Ciao –B: Ciao Il protocollo stabilisce cosa fare in tutte le situazioni che possono verificarsi (errori, ecc.) Deve essere conosciuto dai due interlocutori (quindi, deve essere uno standard) Informatica - CDL in Ingegneria Industriale- A.A
Lo stack ISO-OSI (1) Lo standard ISO-OSI (Open System Interconnect) include un insieme di protocolli che definiscono, a vari livelli di dettaglio, le regole di comunicazione E’ spesso chiamato stack (pila) ISO-OSI 7. Livello applicazione Servizi telematici(trasferimento file, , …) 6. Livello presentazione Conversione formati (01/12/02 12/01/02) 5. Livello sessione Apertura e chiusura dialogo (Chiamata per B...Ciao) 4. Livello trasporto Segmentazione dati in più messaggi 3. Livello rete Routing (instradamento) 2. Livello collegamento dati Controllo correttezza messaggi (rispedisci se errori) 1. Livello fisico Specifiche Hw/Sw dipositivi fisici usati per connettere i nodi (Ethernet, cavo coassiale, …) Informatica - CDL in Ingegneria Industriale- A.A
Lo stack ISO-OSI (2) Ogni livello definisce dei protocolli che gestiscono, a quel livello di dettaglio, la comunicazione Ciascun livello rappresenta una macchina astratta Ogni livello (macchina astratta) dello stack assume di “parlare” con il medesimo livello (macchina astratta) dell’altro nodo ed è completamente ignaro di ciò che succede sotto di lui I messaggi di ogni livello sono incapsulati nei messaggi di livello sottostante senza alcuna manipolazione E’ un modello di riferimento, i protocolli reali spesso implementano solo parzialmente lo stack Informatica - CDL in Ingegneria Industriale- A.A
Lo stack ISO-OSI (3) L7 Invia file “pippo.txt” Ricevi file L6 Converti file L5 Apri dialogoChiudi dialogo L4 Segmenta fileRicomponi file L3 Invia msg 1, msg 2, …Ricevi msg 1, msg 2, … L2 Aggiungi dati controlloVerifica messaggi L1 Connessione fisica Informatica - CDL in Ingegneria Industriale- A.A
Lo stack ISO-OSI (4) Il flusso dei dati, in realtà, “scende” lungo lo stack del nodo mittente e “risale” lungo lo stack del nodo destinatario Durante la trasmissione: –Ogni livello aggiunge informazioni o modifica quelle provenienti dal livello superiore e le passa al livello inferiore Durante la ricezione: –Ogni livello estrae le informazioni di suo interesse e passa quelle rimanenti al livello superiore Informatica - CDL in Ingegneria Industriale- A.A
Lo stack ISO-OSI (5) Mittente L6 L5 L4 L3 L2 L1 L7 L6 L5 L4 L3 L2 L1 L7 Rete fisica Destinatario Per es. invio file pippo.txt Informatica - CDL in Ingegneria Industriale- A.A
Apparati di rete (1/2) Nodi che garantiscono il funzionamento, l’efficienza l’affidabilità e la scalabilità delle reti informatiche : Hub (livello 1): semplice ripetitore di segnale che replica la sequenza di bit in ingresso su tutte le interfacce di uscita; collega solo reti identiche perché lavora a livello 1(in disuso a favore degli switch) Bridge/switch ( livello 2): ripete il segnale solo verso l’ interfaccia di uscita corretta che porta a destinazione. Bridge: due reti; Switch: più di due reti Router ( livello 3): connette reti anche differenti; si occupa dell’istradamento dei pacchetti verso destinazione, eventualmente attraverso altri router: Rimuove i bit di controllo del livello 2 Esamina i bit di controllo del livello 3 e decide come istradare sulla base dell’indirizzo di destinazione Aggiunge nuovi bit di controllo e istrada il pacchetto Informatica - CDL in Ingegneria Industriale- A.A
Apparati di rete (2/2) Proxy (livello 4): Ha un’interfaccia per ogni rete a cui è collegato Può ricostruire l’intero messaggio aprendolo e aggiungendovi informazioni (es. antivirus all’ ) Gateway (livello 7): Interconnette applicazioni remote differenti Implementa uno stack protocollare a tutti i livelli Si propone come interfaccia tra due applicazioni che utilizzano protocolli differenti(es. web mail con HTTP e IMAP) Informatica - CDL in Ingegneria Industriale- A.A
Architettura client/server Indica una modalità particolare di accesso alle funzionalità offerte da una rete E’ Indipendente dalla topologia della rete Una macchina particolare (detta server) offre una serie di servizi (disco condiviso, stampanti, database, ecc.) ed aspetta richieste Le altre macchine (dette client) utilizzano i servizi offerti dal server Quindi, il server generalmente si limita ad attendere che qualcuno lo contatti. Sono sempre i client ad iniziare il dialogo (chiedendo un certo servizio) E’ molto usata. Anche in ambito Internet (DNS, Web,…) Informatica - CDL in Ingegneria Industriale- A.A
Architettura client/server Più client possono contattare contemporaneamente lo stesso server Il server gestisce una coda di richieste nella quale accoda i messaggi provenienti dal client ed estrae quello che, in un dato istante, elaborerà Rete logica Client Per es. un sito Web Server Informatica - CDL in Ingegneria Industriale- A.A
Architetture peer to peer Ogni computer può assumere la funzione di server e client a seconda del momento Esempi: Emule, Bittorrent Migliore distribuzione del carico di lavoro sul server Informatica - CDL in Ingegneria Industriale- A.A
Internet Breve storia Un insieme di tecnologie, standard ed applicazioni in grado di connettere tra loro reti disomogenee (basate cioè su standard diversi), creando una sorta di “rete di reti”, ovvero una “inter-rete”, ovvero una Inter-Net Nasce alla fine degli anni ’60 negli USA per scopi militari (ARPANET) Negli anni ’70 nasce il protocollo fondamentale di Internet: TCP/IP Negli anni ’80 è diffusa soprattutto in ambito accademico All’inizio degli anni ’90 nasce il World Wide Web Informatica - CDL in Ingegneria Industriale- A.A
Il protocollo di connessione TCP/IP TCP/IP: insieme di protocolli usati per connettere calcolatori e reti Il termine è una combinazione di due dei protocolli più importanti: –TCP (Transmission Control Protocol): corrisponde, più o meno, al livello trasporto ISO-OSI –IP (Internet Protocol): corrisponde, più o meno, con il livello rete ISO-OSI Informatica - CDL in Ingegneria Industriale- A.A
TCP/IP e stack ISO OSI Application TCP/UDP IP Network Interface Application Transport Network Physical Media Presentation Session Data Link Internet Modello ISO OSI Informatica - CDL in Ingegneria Industriale- A.A
Livelli di rete e trasporto Rete: IP individua il nodo di destinazione ed effettua il routing dinamico di ogni pacchetto da un nodo sorgente a un nodo destinazione, collegando anche reti diverse tra loro, senza garantire la corretta consegna(è connectionless) Trasporto: al di sopra di IP crea una connessione end to end (canale virtuale nonostante la divisione in pacchetti) tra applicazione sorgente e destinazione –TCP controlla la corretta trasmissione dei dati sotto forma di pacchetti, occupandosi dell’eventuale ritrasmissione di pacchetti persi –UDP(USER DATA PROTOCOL): non garantisce la corretta trasmissione dei pacchetti perché non usa i pesanti meccanismi di controllo del TCP: meno affidabile, più efficiente Informatica - CDL in Ingegneria Industriale- A.A
Livello Application Protocolli Applicativi, poggiano sul trasporto e permettono il funzionamento delle diverse applicazioni su Internet. Esempi: HTTP su TCP, permette il funzionamento del web SMTP su TCP, permette l’invio di posta elettronica POP3 su TCP, permette la ricezione di posta elettronica RTP su UDP, permette la trasmissione della TV su Internet Informatica - CDL in Ingegneria Industriale- A.A
Indirizzi pubblici e privati INDIRIZZO PUBBLICO: IP Numero identificatore di un nodo sulla rete Necessario per comunicare con un computer su Internet E’ un numero lungo quattro byte In modo simbolico, viene scritto con la dotted decimal notation: –separando i valori decimali corrispondenti ai singoli byte con dei punti (es ) –le prime due parti identificano una “rete”, la terza una “sotto-rete” e la quarta uno specifico calcolatore su tale sotto-rete Sono distribuiti dall’ICANN Informatica - CDL in Ingegneria Industriale- A.A
INTRANET TCP/IP viene usato anche per creare reti locali che si chiamano INTRANET i nodi di una INTRANET usano indirizzi IP privati(es x.x, con x qualsiasi) IP non rilasciati da alcun organismo Maggiore sicurezza ai computer della INTRANET Per accedere ad Internet, la INTRANET deve essere collegata ad Internet tramite un router che fa offre il servizio NAT(Network Address Translation): –Modifica gli indirizzi IP in transito, nascondendo ad Internet l’utilizzo di indirizzi privati da parte del nodi della INTRANET Informatica - CDL in Ingegneria Industriale- A.A
Nomi e Domini: il DNS A ogni computer su Internet (indirizzo IP) può essere assegnato anche un nome simbolico: nome di dominio –Indirizzo utente: nome simbolico dell’utente, nome del dominio dell’utente (es. Dominio: –Rappresenta il nodo su cui l’utente stesso risiede –La maggior parte dei domini ha tre livelli: etichette rilasciate da organismi –Gerarchia di livelli nel dominio Primo livello:.it,.com,.org,.eu,…….(creati da ICANN e delegati ai singoli enti nazionali, che lo danno a vari mantainer) Secondo livello: unitus, poliba., unimi., polimi., uniba.,…(creati da enti nazionali del primo livello) Terzo livello: java., mail.,….(gestiti dall’azienda che ha comprato il dominio) Esempio: in UNITUS ha acquistato il dominio dal NIC(Network Information Center) di Pisa (gestisce il.it) e gestisce il computer www nella propria retewww.unitus.it –I domini devono essere trasformati in indirizzi numerici: DNS (Domain Name Server) come protocollo applicativo poggiato su UDP e progettato secondo il paradigma client server: secondo richiesta al DNS più vicino Informatica - CDL in Ingegneria Industriale- A.A
Il World Wide Web Il World Wide Web (WWW) è un sistema per la gestione di documenti su Internet Sviluppato al CERN di Ginevra E’ un’evoluzione degli ipertesti Sito Web: insieme unitario di documenti Web: documenti ipertestuali Ogni sito Web ha una struttura gerarchica, con una pagina iniziale (home page) e una serie di documenti Web collegati tramite riferimenti (link) I link possono fare riferimento a documenti Web che appartengono ad altri siti Web Si crea così una “ragnatela” di connessioni tra le pagine Web che consente di “navigare” attraverso i siti Web Informatica - CDL in Ingegneria Industriale- A.A
Standard del WWW URL (Uniform Resource Locator): il nome univoco di un documento sul Web (es. ; composto da: –Schema: modalità di accesso alla risorsa (es. http) –Host: nome di dominio che individua il computer su cui risiede la risorsa(es. –Percorso: individua la risorsa all’interno dell’host (es. Didattica/index.html )Didattica/index.html HTTP (HyperText Transfer Protocol): protocollo applicativo di trasferimento usato su TCP per reperire le risorse su Web secondo la logica client server HTML (HyperText Markup Language): linguaggio di descrizione di un documento Web, che realizza ipertesti visibili tramite browser Informatica - CDL in Ingegneria Industriale- A.A
Architettura del WWW Il WWW segue l’approccio client-server : –Il browser(Firefox, Internet Explorer, Opera,..) : lato client; richiede le pagine al Web server e le visualizza –Il Web server: lato server; invia le pagine richieste Pagine statiche, memorizzate sul file system Pagine dinamiche, “assemblate” dinamicamente a partire da contenuti memorizzati – ad esempio – nei database –Il DBMS: lato server; contiene i dati usati per assemblare le pagine dinamiche Una tipica interazione: –Il client (browser) si collega al Web server tramite HTTP –L’utente, richiede l’accesso alle pagine Web, individuate tramite i loro indirizzi (URL) –Il browser interpreta l’URL e invia una richiesta HTTP al server che detiene il documento –Il server Web estrae (o costruisce dinamicamente) la pagina e la invia con HTTP al browser –Il browser interpreta la pagina (ovvero l’HTML di cui è composta) e ne visualizza il contenuto in base alle regole contenute nel file HTML Informatica - CDL in Ingegneria Industriale- A.A
Motori di Ricerca Basati su immensi database che contemgono tutte le pagine presenti sul Web Ricerca per parole chiave Elenchi aggiornati tramite crawler(o spider o robot) che sono software che analizzano regolarmente i contenuti dei siti : –Si basa su una lista iniziale di URL da visitare –Analizza tutti i documenti della lista iniziale –Aggiunge le URL contenute nei documenti analizzati alla sua lista iniziale Informatica - CDL in Ingegneria Industriale- A.A
La posta elettronica Indirizzo: nome utente, simbolo e nome del dominio Messaggio composto da varie parti: –Busta: Informazioni protocollari necessarie per trasmettere e consegnare il messaggio –Contenuto: Intestazione : –Mittente (from): indirizzo utente del mittente –Destinatario (to): indirizzo utente del destintario –Destinatario in copia (cc): indirizzo utente del destinatario in copia –Oggetto (subject): titolo e breve descrizione del messaggio –……… Corpo del messaggio: stringa di caratteri di lunghezza e contenuto arbitrari (allegati mandati tramite trasformazione di file binari in testo con varie tecniche: es. MIME) Informatica - CDL in Ingegneria Industriale- A.A
Architettura di un sistema di posta elettronica Tre entità: –Mail User Agent(MUA): programma che l’utente usa per leggere e scrivere i messaggi –Mail Transport Agent(MTA): programma che si prende carico di far arrivare il messaggio –Mail Delivery Agent(MDA): programma che colloca il messaggio arriato nella casella postale del destinatario (spesso coincide con MTA) Informatica - CDL in Ingegneria Industriale- A.A
Invio e ricezione messaggi Invio: –L’utente si avvale dei servizi del MTA, non invia direttamente a destinazione –Il MTA cerca di recapitare, direttamente o tramite altri MTA per qualche giorno, fino all’arrivo –Comunicazione con protocollo SMTP (Simple Mail Transfer Protocol) Ricezione: –Il programma utente presenta i messaggi che sono arrivati alla casella di posta, prelevandoli dal calcolatore (MDA), che ospita la casella –Protocolli: POP3: permette autenticazione dell’utente, richiesta di elenco di messaggi, rimozione IMAP: permette in più la gestione di elenco di caselle di posta in remoto Informatica - CDL in Ingegneria Industriale- A.A