La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione alle griglie computazionali

Presentazioni simili


Presentazione sul tema: "Introduzione alle griglie computazionali"— Transcript della presentazione:

1 Introduzione alle griglie computazionali
Università degli Studi di Napoli Federico II Corso di Laurea in Informatica – III Anno LEZIONE N. 4 La rete accademica italiana: il GARR Algoritmi di routing Protocolli e servizi di rete I modelli OSI e TCP/IP File system locali e geografici (UFS, NFS, AFS) Trasmissione dati: ftp e GridFtp Calcolo distribuito su cluster locali e geografici Esempi di sistemi distribuiti di sottomissione dei job: Condor e Mosix OpenMOSIX – Cluster Linux e preemptive process migration Introduzione alle griglie computazionali - a.a Introduzione alle griglie computazionali - a,a

2 Indice degli argomenti
La rete italiana Problematiche di rete La rete negli anni ‘80 La rete accademica italiana: il GARR Algoritmi di routing I sistemi autonomi (AS) L’OSPF Il BGP Gli indirizzi IP e lo spazio dei nomi L’IPv4 L’IPv6 I modelli OSI e il TCP/IP I progetti del GARR Introduzione alle griglie computazionali - a.a

3 Introduzione alle griglie computazionali - a.a. 2005-06
Distribuzione delle risorse Un precursore della Grid La rete e il calcolo parallelo Trasmissione dati ad alte prestazioni NFS: Network File System AFS: Andrew File System Esigenza di risorse di calcolo Condor: utilizzo di risorse inattive I subpool Schema di funzionamento Mosix Linux Farm Preemptive process migration Un esempio teorico ed uno reale Trasmissione seriale I protocolli ftp, afs e http a confronto Trasmissione parallela I protocolli GridFtp, bbFtp, bbcp Confronto prestazioni tra protocolli di trasmissione seriali e paralleli Introduzione alle griglie computazionali - a.a

4 con un collegamento a 4800 bps
La rete in Italia nel 1978 L’Istituto Nazionale di Fisica Nucleare e’ stato pioniere nelle reti informatiche in Italia La prima connessione Roma  Frascati fu realizzata nel 1978 con un collegamento a 4800 bps Introduzione alle griglie computazionali - a.a

5 La rete in Italia: anni ‘80
Nei primi anni ’80 e’ stata realizzata la rete INFNET, che collegava le Sezioni INFN usando il protocollo DECNet Napoli e’ stata connessa per la prima volta nel (Ferrer, Lo Re, Merola) con linea INFN Napoli  LNF a 9600 bps. Introduzione alle griglie computazionali - a.a

6 e’ stata connessa per la prima volta nel
La rete in Italia nel 1984 Napoli e’ stata connessa per la prima volta nel 1985 con Frascati ad una velocità di 9600 bps Introduzione alle griglie computazionali - a.a

7 Prima connessione internazionale CNAF INFN BO  CERN Ginevra, 1986
Reti Enti di Ricerca INFNET (rete dei fisici dell’INFN) ASTRONET (rete degli Astrofisici) CNRNET (rete dei ricercatori del CNR) Reti universitarie CINECA (Bologna) CILEA (Milano) Prima connessione internazionale CNAF INFN BO  CERN Ginevra, 1986 Introduzione alle griglie computazionali - a.a

8 La rete GARR Nel 1988 su iniziativa del ministro Ruberti nasce la rete
(Gruppo di Armonizzazione Reti della Ricerca) Scopo del GARR era quello di collegare organicamente le reti della ricerca che fino ad allora si erano formate indipendentemente l’una dall’altra Nel 1991 nasce il Polo GARR di Napoli Introduzione alle griglie computazionali - a.a

9 Introduzione alle griglie computazionali - a.a. 2005-06
La Comunità GARR Università ed Enti impegnati nella realizzazione del progetto: CNR, ENEA, INFN, INAF Organismi di ricerca: ASI, INFM, INGV, … Consorzi per il Calcolo: CASPUR, CILEA, CINECA, … Introduzione alle griglie computazionali - a.a

10 Introduzione alle griglie computazionali - a.a. 2005-06
La rete GARR Collegamenti Internazionali con il GARR Introduzione alle griglie computazionali - a.a

11 Introduzione alle griglie computazionali - a.a. 2005-06
Il GARR negli anni 2000 – GARR-B ATM a 34 Mbps ATM a 155 Mbps 2002 – GARR-G POS - DWDM Introduzione alle griglie computazionali - a.a

12 Introduzione alle griglie computazionali - a.a. 2005-06
Algoritmi di routing algoritmi statici (non adattivi) non fanno riferimento al traffico; scelgono i percorsi in anticipo algoritmi dinamici (adattivi) tengono conto del traffico scelgono il percorso volta per volta Introduzione alle griglie computazionali - a.a

13 Un algoritmo di routing statico (Dijkstra – 1959)
ogni router scandaglia i vicini e i vicini dei suoi vicini genera un insieme di itinerari ne estrae quelli con il cammino minimo Introduzione alle griglie computazionali - a.a

14 Introduzione alle griglie computazionali - a.a. 2005-06
Altro esempio di algoritmo di routing statico, il flooding e il flooding selettivo: ·    il router inonda i vicini di pacchetti con richieste di informazioni ·    ciascun vicino fa altrettanto ·    ci si ferma quando si rintraccia il router di destinazione ·    il flooding selettivo effettua inondazioni mirate Note ·    non è molto usato ·    è totalmente affidabile ·    è usato in ambienti militari viene usato per valutare altri sistemi di routing Introduzione alle griglie computazionali - a.a

15 Un algoritmo di routing dinamico (distance vector routing)
Ciascun router prepara una tabella con le distanze di tutti i router Ciascun router scambia queste informazioni con quelli adiacenti Fu utilizzato da Arpanet negli anni 70 sotto il nome di RIP Fu usato nelle prime versioni di DECnet I router Cisco usano protocolli migliorati basati su vettori di distanza Gestisce velocemente informazioni che indicano miglioramenti sulla raggiungibilità di altri router L’improvvisa irraggiungibilità di un router viene gestita male Non distingue bene un router in ritardo da uno guasto Non gestiva collegamenti con prestazioni differenziate Arpanet lo abbandonò nel ’79 perché cominciò ad adottare linee con prestazioni differenziate Introduzione alle griglie computazionali - a.a

16 Routing basato sullo stato dei canali (link state routing)
ne esistono diverse varianti ogni router calcola il ritardo medio nello spedire pacchetti ad altri router ogni router costruisce una tabella contenente per ciascun router il suo indirizzo, il ritardo relativo e il ttl (time to live) per la diffusione delle informazioni si usa il flooding per il calcolo dei percorsi si usa l’algoritmo di Dijkstra dati due percorsi equivalenti A e B, se si sceglie A per istradare i pacchetti, alla successiva spedizione l’algoritmo decide che A è carico e che deve spedire verso B, successivamente decide che B è carico e deve istradare verso A e così all’infinito se si decide di non tenere conto del carico non si utilizza il cammino migliore se la rete è grande i router potrebbero non avere memoria sufficiente per calcolare tutte le rotte nelle situazioni reali il link state routing funziona bene Introduzione alle griglie computazionali - a.a

17 Introduzione alle griglie computazionali - a.a. 2005-06
I sistemi autonomi: AS la Svezia ha severe leggi inerenti la privacy il traffico interno al Canada non può transitare per l’estero i sistemi di tariffazione sono sicuramente diversi da paese a paese nascono i Sistemi Autonomi o Autonomous System o AS: sono insiemi di router con relative lan ad essi sottese ogni AS usa propri protocolli e si collega ad altri AS mediante router di frontiera eventuali malfunzionamenti coinvolgono solo le reti all’interno dell’AS dove si è verificato il problema interior gateway protocol = protocolli per collegamenti interni ad un AS esterior gateway protocol = protocolli per collegamenti esterni ad un AS Introduzione alle griglie computazionali - a.a

18 Un interior gateway protocol: l’OSPF Open Shortest Path First)
anni 70: protocolli di tipo distance vector (RIP) anni 80: protocolli di tipo link state 1988: nasce OSPF OSPF gestisce varie metriche: distanza fisica tra router, ritardi, ecc. discrimina tra i tipi di servizio: instrada traffici diversi in modi diversi (IP ha il campo Type of Service ma nessuno lo utilizzava) distribuisce il traffico su più vie anziché instradarlo soltanto verso la direzione migliore (a volte questa possibilità può presentare dei vantaggi) riesce a gestire reti molto grandi senza doverne conoscere l’intera topologia è un protocollo abbastanza sicuro, in grado di difendersi da false informazioni di routing in giro per la rete Introduzione alle griglie computazionali - a.a

19 Un esterior gateway protocol: il BGP (Border Gateway Protocol)
tipi di AS - stub: hanno un solo router confinante con un altro AS; - multiconnessi: cioè hanno più router che confinano con più AS; - transito: fanno da backbone e sono disponibili a trattare con terze parti. il BGP - il BGP è un protocollo di tipo distance vector molto diverso dal RIP - il BGP crea una tabella di tutti i percorsi e la trasmette ai router adiacenti - ogni router, ricevuto l’insieme dei percorsi dagli altri router, li rielabora e tira fuori una sua nuova tabella Introduzione alle griglie computazionali - a.a

20 BGP: esempio di calcolo di una rotta
per andare da C a G ·    da B: B-C-D-F-G ·    da D: D-F-G; ·    da E: E-F-G. D B C F G E -      il BGP scarta i percorsi che lo attraversano, rimangono -      da D: D-F-G -      da E: E-F-G -      aggiunge rispettivamente i costi C-D e C-E -      ricalcola i costi di tutti i percorsi effettua la ricerca del minimo Introduzione alle griglie computazionali - a.a

21 Gli indirizzi IP e lo spazio dei nomi
Introduzione alle griglie computazionali - a.a

22 Introduzione alle griglie computazionali - a.a. 2005-06
Gli indirizzi IP In una rete locale o geografica la principale esigenza è quella di collegare i calcolatori tra loro Ogni calcolatore deve avere un indirizzo unico al mondo La rete Internet consente il collegamento tra i calcolatori mediante una suite di protocolli denominata TCP/IP (Transfer Control Protocol/Internet Protocol). Introduzione alle griglie computazionali - a.a

23 Introduzione alle griglie computazionali - a.a. 2005-06
Gli indirizzi IP I protocolli TCP/IP, inseriti negli anni settanta nello Unix di Berkley, prevedono che ad ogni calcolatore, al momento della sua configurazione, venga assegnato univocamente un nome e un indirizzo numerico. Un indirizzo IP è composto di quattro byte. Sono unità indirizzabili: calcolatori terminal server switch router stampanti ecc. Introduzione alle griglie computazionali - a.a

24 Introduzione alle griglie computazionali - a.a. 2005-06
Gli indirizzi IP Gl’indirizzi numerici vengono univocamente assegnati dal NIC, Network Information Center, un’organizzazione che ha sede in California e a cui sono collegate altre organizzazioni in tutto il mondo. Un indirizzo della rete Internet, detto anche semplicemente indirizzo IP, è composto di quattro byte ed è diviso in due parti, la prima, rispettivamente di uno, due o tre byte, che costituisce l’indirizzo fisso della sottorete e che viene rilasciato dal NIC, e la seconda, ovviamente di tre, due o un byte che viene lasciata libera al lan-manager per l’assegnazione dell’indirizzo fisico dei singoli nodi. Le sottoreti appena citate vengono (venivano) dette rispettivamente di Classe A, di Classe B e di Classe C. Introduzione alle griglie computazionali - a.a

25 Introduzione alle griglie computazionali - a.a. 2005-06
Gli indirizzi IP Classe 1° byte 2° byte 3° byte 4° byte riservata A 1÷126 host 127 B 128 ÷ 191 1 ÷ 254 C 192 ÷ 223 0 ÷ 255 riservate 224 ÷ 255 Introduzione alle griglie computazionali - a.a

26 Collegamento tra calcolatori: sessioni remote
Qualora ci si debba collegare ad un calcolatore bisognerà dare il comando telnet (ssh) seguito dal suo indirizzo numerico, tuttavia, essendo possibile associare un nome ad ogni calcolatore, sarà più comodo, al comando telnet, far seguire il suo nome anziché il suo indirizzo telnet oppure telnet nome_nodo Introduzione alle griglie computazionali - a.a

27 Associazione nome-indirizzo IP
Per la conversione nome indirizzo in Unix viene utilizzata una tabella statica presente nel file /etc/hosts, essa è composta da un campo numerico e da uno o più campi alfanumerici amministrazione direttore mail mailserver telnet mailserver telnet Introduzione alle griglie computazionali - a.a

28 Introduzione alle griglie computazionali - a.a. 2005-06
Esplodono le tabelle di routing: il CIDR (Classless InterDomain Routing) -      classe C: 256 indirizzi -      classe B: 256 * 256 = indirizzi -      classe A: 256 * 256 * 256 = indirizzi si va verso la saturazione degli indirizzi IP -      nel 1987 alcuni dissero che Internet avrebbe facilmente raggiunto le reti, furono ignorati -      i router disponevano di un firmware tarato per gestire fino a router allorquando reti sembravano assolutamente al di la da venire -      nel si raggiunse quota reti! Introduzione alle griglie computazionali - a.a

29 Introduzione alle griglie computazionali - a.a. 2005-06
Esplodono le tabelle di routing: il CIDR (Classless InterDomain Routing) rimedi ·    con il routing interdominio senza classi (CIDR) vengono assegnati blocchi contigui di indirizzi e non singole network ·    gli indirizzi vengono così suddivisi:  Europa  Nord America  Sud e Centro America  Asia e il Pacifico Introduzione alle griglie computazionali - a.a

30 Introduzione alle griglie computazionali - a.a. 2005-06
Dall’IPV4 all’IPV6 -il CIDR ha solo rimandato lo scoppio delle tabelle di routing - sono in aumento i PC portatili il che sta comportando un incremento delle richieste d’indirizzi IP - saranno i televisori nodi della rete Internet? Introduzione alle griglie computazionali - a.a

31 Introduzione alle griglie computazionali - a.a. 2005-06
Nasce l’IPV6 nel 1990 l’IETF si propose di elaborare una nuova versione di IP con caratteristiche particolarmente innovative coesistere con i vecchi protocolli non avere problemi di congestione capace di evolversi in futuro gestire miliardi di nodi snellire le tabelle di routing privilegiare alcuni servizi avere una maggiore sicurezza dei dati in IPv6 l’indirizzo sarà di 16 byte esadecimali 5000:0000:0000:0000:1234:5678:9ABC:DEF0 l’indirizzo IPv4 verrà riscritto così: :: Introduzione alle griglie computazionali - a.a

32 Introduzione alle griglie computazionali - a.a. 2005-06
Confronto IPV4 - IPV6 ipv4 ipv6 ·    4*109 indirizzi ·    pacchetto con 13 informazioni ·    hop limit = 32 ·    pacchetto = 64 KB max ·  il pacchetto può essere frammentato dai vari router  effettua il checksum ·    3x1038 di indirizzi ·    pacchetto con 7 informazioni ·    hop limit = 255 ·    jumbogram per percorsi particolari ·    routing rigido ·  il pacchetto può essere frammentato solo dal mittente, se troppo grande il router lo scarta (con un messaggio ICMP) · non effettua il checksum (lo demanda al livello IV) Introduzione alle griglie computazionali - a.a

33 Introduzione alle griglie computazionali - a.a. 2005-06
La sicurezza con IPV6 i problemi ·    alcuni paesi preferiscono la crittografia domestica ·    alcuni polizie NON gradiscono la crittografia domestica ·    la sicurezza a livello di rete ha subito la critica di chi non voleva essere succube di scorrettezze da parte dei fornitori ·    il problema di scambiare pacchetti crittografati tra nazioni che la pensano differentemente ha creato controversie conclusione ·    si è deciso di adottare un sistema in grado di capire che l’utente che si dichiara alla rete sia effettivamente lui per la segretezza dei dati si è preferito lasciare l’incarico al livello di applicazione privilegiando la velocità di trasmissione dei dati Introduzione alle griglie computazionali - a.a

34 la migrazione da IPv4 a IPv6
Il passaggio da IPv4 a IPv6 sarà abbastanza indolore IPv6 è compatibile con tutti i protocolli di Internet quali TCP, UDP, ICMP, IGMP, OSPF, BGP e DNS verranno create progressivamente delle aree IPv6 che parleranno con il resto del mondo tramite anelli di congiunzione che gli addetti ai lavori chiamano tunnel sarà un passaggio lento la cui durata la si può stimare in un decennio Introduzione alle griglie computazionali - a.a

35 Introduzione alle griglie computazionali - a.a. 2005-06
Lo Spazio dei Nomi DIT: Distributed Information Tree DNS: Domain Name System BIND: Berkley Internet Name Distribution Introduzione alle griglie computazionali - a.a

36 Ditributed Information Tree
Root Server com ch it gov dec ibm cern unina infn cnr fnal rm na mi bo Introduzione alle griglie computazionali - a.a

37 Introduzione alle griglie computazionali - a.a. 2005-06
Root Server IT: Pisa (CNR – CNUCE) INFN: Bologna (INFN – CNAF) root server root server root server Introduzione alle griglie computazionali - a.a

38 Introduzione alle griglie computazionali - a.a. 2005-06
Protocolli di Rete I protocolli sono l’insieme delle regole in base alle quali, due processi colloquiano fra loro. Introduzione alle griglie computazionali - a.a

39 Protocolli di rete orientati alla connessione
sistema di riconoscimento prima che la trasmissione dati abbia luogo (handshake) controllo integrità dei dati, in caso negativo vengono rispediti per interrompere la trasmissione sarà necessario un preciso messaggio di conclusione della connessione Introduzione alle griglie computazionali - a.a

40 Protocolli di rete non orientati alla connessione
il mittente non controlla se la stazione di destinazione è accessibile o meno di solito non vi sono algoritmi orientati alla verifica dell’integrità dei dati un protocollo non orientato alla connessione è più veloce ma meno affidabile di un protocollo orientato alla connessione Introduzione alle griglie computazionali - a.a

41 I MODELLI DI RIFERIMENTO OSI E TCP/IP
ISO: International Standard Organization OSI: Open System Interconnection Introduzione alle griglie computazionali - a.a

42 COMUNICAZIONE TRA I LIVELLI
Introduzione alle griglie computazionali - a.a

43 Introduzione alle griglie computazionali - a.a. 2005-06
I – Il livello fisico Vengono definite le specifiche: Elettriche (cavi) Meccaniche (connettori) funzionali (interfacce) Introduzione alle griglie computazionali - a.a

44 II – Il livello coollegamento dati (data link)
si gestisce il colloquio tra nodi adiacenti si spezzano i dati in pacchetti e si spediscono si attende il messaggio di avvenuta ricezione (ack) i messaggi vengono eventualmente rispediti si effettua il controllo di flusso Introduzione alle griglie computazionali - a.a

45 Introduzione alle griglie computazionali - a.a. 2005-06
III – Il livello di rete si gestisce il colloquio tra nodi non adiacenti si usano algoritmi di istradamento (routing) si effettua il controllo di flusso vi sono protocolli sia orientati alla connessione che non modello TCP/IP: solo protocolli privi di connessione i pacchetti possono anche arrivare non in sequenza IP: Internet Protocol ICMP: Internet Control Message Protocol ARP: Address Resolution Protocol RARP: Reverse Address Resolution Protocol Introduzione alle griglie computazionali - a.a

46 IV – Il livello di trasporto
nel modello OSI vi sono solo protocolli orientati alla connessione riceve dati dal livello superiore, li spezzetta e li trasmette al livello inferiore garantisce l’integrità end-to-end tra calcolatori fisicamente lontani è l’analogo dell’integrità point-to-point del livello data-link (calcolatori fisicamente vicini) gestisce il controllo di flusso in caso di pacchetti appartenenti a connessioni differenti, sarà il livello di trasporto ad etichettarli e distinguerli per poi consegnarli al livello superiore TCP (Trasmission Control Protocol - affidabile) orientato alla connessione controlla e gestisce l’errore riordina i pacchetti fuori sequenza UDP (User Datagram Protocol - non affidabile) privo di connessione non prevede controllo e gestione dell’errore non riordina i pacchetti usato per le comunicazioni veloci (trasmissione audiovisiva) Introduzione alle griglie computazionali - a.a

47 V – Il livello di sessione
è presente nel modello OSI non è presente nel modello TCP/IP è prevista la possibilità di stabilire delle sessioni (es.: trasferimento di file da un nodo all’altro) controllo del dialogo (decide se due sessioni possono trasmettere contemporaneamente e/o quando devono farlo uno per volta) sincronizzazione (se un trasferimento di file viene interrotto a metà, ad esempio da un guasto sulla linea, è compito di questo livello farlo ripartire dal punto dove si era fermato e non daccapo) Introduzione alle griglie computazionali - a.a

48 VI – Il livello di presentazione
è presente nel modello OSI non è presente nel modello TCP/IP presentazione dati (es.: ASCII o EBCIDIC, dati numerici, crittografati, compressi, ecc.) dato iniziale  formato astratto standard della rete formato proprietario Introduzione alle griglie computazionali - a.a

49 VII – Il livello di applicazione
  CASE (Common Application Service Elements) - stabilire una connessione - antenere una trasmissione - concludere una trasmissione - assicurare l’integrità di transazioni distribuite SASE (Specific Application Service Elements) - vengono soddisfatte esigenze di precisi applicativi SASE (TCP/IP) - FTP (File Transfer Protocol) - TFTP (Trivial File Transfer Protocol) - SNMP (Simple Network Management Protocol) - TELNET (protocollo di terminali virtuali) - DNS (Domain Name System) - SMTP (Simple Mail Transfer Protocol) - HTTP (HyperText Transfer Protocol) SASE (OSI ) - FTAM (File Transfer Access and Management) - X-400 (sistema di gestione dei messaggi) - CMIP (Common Management Information Protocol) - VT (Virtual Terminal protocol) Introduzione alle griglie computazionali - a.a

50 Introduzione alle griglie computazionali - a.a. 2005-06
Confronto OSI – TCP/IP OSI alla sua nascita (anni 80) il TCP/IP era già adottato nelle università fu definito pensando ai 7 livelli del protocollo SNA dell’IBM fa distinzione tra i livelli fisico e data link distingue i concetti di servizio, di interfaccia e di protocollo tutti i protocolli furono studiati e progettati molto attentamente viene utilizzato come modello di riferimento è un protocollo complesso le implementazioni erano pesanti, lente e di difficile gestione fu adottato dalla DEC (DECnet OSI - anni 90) HA PERSO TCP/IP alla sua nascita (1974) non esistevano altri prodotti particolarmente diffusi fu realizzato da Cerf e Kahn sulla base di precise esigenze non fa distinzione tra i livelli fisico e data link non distingue i concetti di servizio, di interfaccia e di protocollo solo i protocolli TCP e IP furono studiati e progettati molto attentamente non viene utilizzato come modello di riferimento è un protocollo semplice le implementazioni sono snelle, veloci e di facile gestione fu introdotto nello Unix di Berkley (anni 70) HA VINTO Introduzione alle griglie computazionali - a.a

51 Trasmissione dati in TCP/IP
I dati che devono essere comunicati tra due processi utente, vengono prima manipolati e poi trasmessi al livello successivo. Questa tecnica di aggiungere delle informazioni prima di trasmettere il dato al livello inferiore si chiama incapsulamento. intestazione ethernet IP UDP TFTP dati chiusura 14 byte 20 byte 8 byte 4 byte 400 byte Introduzione alle griglie computazionali - a.a

52 Trasmissione dati in TCP/IP
Controllo di flusso: tecnica che serve ad evitare che una macchina lenta venga sommersa di dati da un’altra più veloce Buffer: memoria d’appoggio utilizzata nella trasmissione dati Dati fuori banda (dati urgenti) Dati di controllo di flusso: CTRL-Q e CTRL-S TCP: prevede la spedizione di una quantità non limitata di dati fuori banda UDP: non è prevista la spedizione di dati fuori banda Altri: 1 byte Introduzione alle griglie computazionali - a.a

53 Cosa devono fare i livelli III e IV (rete e trasporto) ?
le società che forniscono collegamenti telematici devono garantire il funzionamento del livello III le società che forniscono materiale per lan e computer devono garantire il funzionamento del livello IV Introduzione alle griglie computazionali - a.a

54 Cosa devono fare i livelli III e IV (rete e trasporto) ?
cosa ne pensano le società telefoniche cosa ne pensa la comunità internet sbandierano 100 anni di esperienza nel settore della trasmissione dati considerano affidabili le loro linee telematiche nel livello III va stabilito un circuito virtuale, vanno consegnati dati integri ed in sequenza, va gestito il controllo di flusso le linee devono essere affidabili anche se a scapito della semplicità ci sono forti interessi nella trasmissione audio e video ed il servizio deve essere ottimo il livello III deve essere orientato alla connessione vanta 30 anni di esperienza nel settore delle reti telematiche    considera le reti intrinsecamente inaffidabili nel livello III non va stabilito un circuito virtuale, l’integrità, la sequenza e il controllo di flusso va a carico del computer (liv. IV) le linee devono essere snelle e veloci anche se meno affidabili i computer sono sempre più economici e veloci e possono farsi carico di gestire controlli il livello III NON deve essere orientato alla connessione Introduzione alle griglie computazionali - a.a

55 Un esempio reale: TCP su ATM
IP ATM DATA LINK FISICO Introduzione alle griglie computazionali - a.a

56 Un esempio reale: TCP su ATM
sia TCP che ATM gestiscono: la sequenzialità dei pacchetti il controllo di flusso la gestione degli errori risultato: il meccanismo è inefficiente Introduzione alle griglie computazionali - a.a

57 Introduzione alle griglie computazionali - a.a. 2005-06
I progetti del GARR Introduzione alle griglie computazionali - a.a

58 Il problema dell’archiviazione e della distribuzione dei dati
Introduzione alle griglie computazionali - a.a

59 Floppy disk anni 80-90: da 80 KB a 1,44 MB
Floppy da 8” Floppy da 5”¼ Floppy da 3”½ Introduzione alle griglie computazionali - a.a

60 Introduzione alle griglie computazionali - a.a. 2005-06
Hard Disk dei anni 80-90 da 30 a 60 MByte da 5 MByte Introduzione alle griglie computazionali - a.a

61 Introduzione alle griglie computazionali - a.a. 2005-06
Hard Disk odierni Hard disk da 250 GByte Introduzione alle griglie computazionali - a.a

62 Introduzione alle griglie computazionali - a.a. 2005-06
Memorie flash di oggi Memoria da 2 GByte Introduzione alle griglie computazionali - a.a

63 Introduzione alle griglie computazionali - a.a. 2005-06
Distribuzione delle risorse NFS (Network File System) AFS (Andrew File System) Introduzione alle griglie computazionali - a.a

64 Condivisione dischi: NFS
anni 80: la Sun Microsystem propone NFS (Network File System) soddisfa le esigenze solo su lan non gestisce molto bene la sicurezza non ci sono grossi accorgimenti per limitare il traffico di rete Introduzione alle griglie computazionali - a.a

65 Con NFS i “file system” NON si ereditano
Introduzione alle griglie computazionali - a.a

66 Condivisione dischi: AFS
Verso la fine degli anni 80 nasce AFS, Andrew File System, distribuito dalla Transarc Corporation (verrà assorbita dall’IBM) Soddisfa le esigenze su wan Gestisce abbastanza bene la sicurezza (kerberos) Prevede alcuni accorgimenti per limitare il traffico di rete Introduzione alle griglie computazionali - a.a

67 Con AFS i “file system” SI ereditano
Introduzione alle griglie computazionali - a.a

68 Introduzione alle griglie computazionali - a.a. 2005-06
“Albero” di AFS Introduzione alle griglie computazionali - a.a

69 Caratteristiche di AFS
Introduzione alle griglie computazionali - a.a

70 Soluzioni troppo complesse!
Ciò che abbiamo visto sono soluzioni tecnicamente complesse destinate ad essere utilizzate solo dagli addetti ai lavori, ma … Introduzione alle griglie computazionali - a.a

71 Al CERN di Ginevra (Centro Europeo Ricerche Nucleari), nel 1989 …
… viene proposta una nuova e rivoluzionaria soluzione alla distribuzione dei dati … Introduzione alle griglie computazionali - a.a

72 … al Cern nasce il WWW (World Wide Web)
Il fisico Tim Berners Lee del CERN inventa il WEB Introduzione alle griglie computazionali - a.a

73 Problemi di compatibilità risolti
Il Web risolse in maniera brillante i problemi di comunicazione tra calcolatori completamente diversi tra loro sia come hardware sia come software Il primo server Web al Cern di Ginevra Introduzione alle griglie computazionali - a.a

74 Introduzione alle griglie computazionali - a.a. 2005-06
Il WWW (World Wide Web) si ha la prima dimostrazione al pubblico del web alla conferenza Hypertext a S. Antonio nel Texas fu creata la prima interfaccia grafica denominata Mosaic presso l’NCSA (National Center for Supercomputing Applications) Introduzione alle griglie computazionali - a.a

75 Il WWW a Napoli il 23 novembre 1993
Il primo server WWW ufficiale dell’Italia meridionale fu realizzato presso la Sezione di Napoli dell’Istituto Nazionale di Fisica Nucleare (INFN) ed il Dipartimento di Scienze Fisiche dell’ Università di Napoli Federico II ad opera di Luca Lista Leonardo Merola Ecco come si presentava il primo server www ufficiale dell’Italia meridionale Introduzione alle griglie computazionali - a.a

76 di grandi quantità di dati
Esigenze dei fisici Archiviazione di grandi quantità di dati Elaborazione Introduzione alle griglie computazionali - a.a

77 Introduzione alle griglie computazionali - a.a. 2005-06
Un po’ di nomenclatura KiloByte = 103 Byte (mille) MegaByte = 106 Byte (un milione) GigaByte = 109 Byte (un miliardo) TeraByte = 1012 Byte (mille miliardi) PetaByte = 1015 Byte (un milione di miliardi) Introduzione alle griglie computazionali - a.a

78 Le onde gravitazionali
Secondo Einstein masse accelerate producono perturbazioni dette onde gravitazionali. Questa teoria non è stata ancora dimostrata Rappresentazione artistica di onde gravitazionali prodotte da una stella doppia Introduzione alle griglie computazionali - a.a

79 L’esperimento Virgo a Cascina (Pisa)
Antenna gravitazionale basata su interferometro Michelson Le onde gravitazionali, se esistono, avranno un’energia debolissima e faranno muovere l’interferometro di una quantità estremamente piccola: m. A regime verranno acquisiti 500 GB al giorno pari a 200 TB all’anno (200 milioni di miliardi di byte all’anno) 3 Km Introduzione alle griglie computazionali - a.a

80 Osservatorio astronomico di La Silla in Cile
Introduzione alle griglie computazionali - a.a

81 Introduzione alle griglie computazionali - a.a. 2005-06
Immagini dallo spazio Introduzione alle griglie computazionali - a.a

82 Ginevra Centro Europeo Ricerche Nucleari
Introduzione alle griglie computazionali - a.a

83 Introduzione alle griglie computazionali - a.a. 2005-06
Il Cern Introduzione alle griglie computazionali - a.a

84 Introduzione alle griglie computazionali - a.a. 2005-06
Il Cern Introduzione alle griglie computazionali - a.a

85 L’acceleratore LHC al Cern (Large Hadron Collider)
L’acceleratore sarà pronto nel 2007; vi lavorano 6000 persone; produrrà circa 12 PetaBytes di dati all’anno cioè: Byte pari a circa 20 milioni di CD ! L’analisi dei dati richiederà una potenza di calcolo pari a PC !!! Da dove prenderemo tutte queste risorse di calcolo ? Introduzione alle griglie computazionali - a.a

86 Condor High Throughput Computing
Introduzione alle griglie computazionali - a.a

87 L’esigenza: grandi potenze di calcolo per lunghi periodi di tempo
Introduzione alle griglie computazionali - a.a

88 Introduzione alle griglie computazionali - a.a. 2005-06
La soluzione Condor Un sistema di calcolo distribuito sviluppato presso l’Università del Wisconsin l’INFN collabora allo sviluppo e alla configurazione di tool su wide area network e all’adattabilità alle proprie esigenze di calcolo Introduzione alle griglie computazionali - a.a

89 Introduzione alle griglie computazionali - a.a. 2005-06
L’idea di Condor poter sfruttare macchine inattive facendoci girare programmi che hanno bisogno di un elevato tempo di cpu poter restituire immediatamente la macchina al proprietario e continuare con un sistema automatico i propri job altrove senza perdere i calcoli già effettuati Introduzione alle griglie computazionali - a.a

90 Introduzione alle griglie computazionali - a.a. 2005-06
Come funziona Condor S’individuano le macchine che adersicono all’iniziativa formando quello che viene detto un Pool di Condor tra le macchine del Pool s’individuano quelle che faranno da Central Manager e da Checkpoint Server Introduzione alle griglie computazionali - a.a

91 Cosa fa il Central Manager
individua nel pool una macchina idle che risponda ai requisiti richiesti dal job che deve essere lanciato (ram, clock, sistema operativo, distanza ecc.) Introduzione alle griglie computazionali - a.a

92 A cosa serve il Checkpoint Server
Importa periodicamente dalle macchine su cui girano i job le immagini dei processi qualora la macchina su cui gira un job dovesse andare in crash, verrà recuperata l’ultima immagine del processo presente sul Checkpoint Server e verrà fatta girare sulla nuova macchina individuata dal Central Manager Introduzione alle griglie computazionali - a.a

93 Cosa fa il Checkpoint Server (continua)
qualora la macchina su cui gira un job non sia più disponibile, vuoi perché serve al suo proprietario vuoi perché sia andata in crash, allora il Checkpoint preleverà l’immagine del processo e la sposterà su un’altra macchina indicata dal Central Manager; il job ripartirà dal punto dove si era fermato Introduzione alle griglie computazionali - a.a

94 Come si fa a eliminare un job di Condor dalla propria macchina?
dipende dalla configurazione prescelta uno dei possibili modi per scacciare un job altrui è quello di toccare il mouse, da quel momento in poi si riprende il possesso pieno della macchina dipende dal carico di cpu, configurabile e che al di sopra del quale la macchina può fare un vacate del job Introduzione alle griglie computazionali - a.a

95 Introduzione alle griglie computazionali - a.a. 2005-06
Cos’è un sub-pool? È un pool inserito nel pool nazionale di Condor che dà la massima priorità alle macchine locali la sua implementazione è trasparente all’utente Introduzione alle griglie computazionali - a.a

96 Schema di funzionamento di Condor
Introduzione alle griglie computazionali - a.a

97 Un’applicazione pratica: LinuXTerminal
Sala utenti: su ogni macchina viene configurato il software (Xserver) che emula gli X-Terminal; le dieci macchine vengono inserite nel pool di Condor. Viene assolta la richiesta di poter effettuare sessioni X sui vari host della Sezione; l’inserimento nel pool di Condor delle macchine della Sala Utenti ne consente l’utilizzo 24 ore su 24. Introduzione alle griglie computazionali - a.a

98 Risultati del Pool di Condor nell’ INFN
Introduzione alle griglie computazionali - a.a

99 Introduzione alle griglie computazionali - a.a. 2005-06
I vantaggi di Condor Non è necessario avere un account sulle macchine del pool; non avvengono operazioni di I/O sulle macchine del pool; le operazioni ammesse riguardano sola la CPU e la RAM; la “sicurezza” delle macchine del pool non è in discussione; la Mail è di gran lunga più rischiosa; si possono creare sub-pool. Introduzione alle griglie computazionali - a.a

100 La rete e il Calcolo Parallelo
Con l’introduzione delle reti il calcolo parallelo non si basa più soltanto su macchine multiprocessore ma vengono sempre più spesso usate farm di workstation. Introduzione alle griglie computazionali - a.a

101 Introduzione alle griglie computazionali - a.a. 2005-06
Intel-Linux-Farm Offre agli utenti un ambiente di calcolo e sviluppo ad alte prestazioni; è allineata con gli attuali orientamenti in materia di sistema operativo e piattaforma di sviluppo; ha un basso costo d’implementazione; si può disporre di tool OpenSource all’avanguardia (MOSIX, PVM, MPI); si possono creare nodi diskless che richiedono manutenzione minima; Introduzione alle griglie computazionali - a.a

102 Farm su Switch Ethernet
Introduzione alle griglie computazionali - a.a

103 Introduzione alle griglie computazionali - a.a. 2005-06
Stato dell’arte Attualmente quasi tutti i tool utilizzati per il calcolo parallelo non prevedono la migrazione dei processi verso le workstation più scariche; l’allocazione processo-CPU è di tipo statico. Introduzione alle griglie computazionali - a.a

104 Introduzione alle griglie computazionali - a.a. 2005-06
Mosix MOSIX é un’estensione dei kernel Unix-like, come Linux, ed è formato da una serie di algoritmi per la condivisione adattiva delle risorse. Questi algoritmi sono progettati in modo da rispondere, in tempo breve, alle variazioni di utilizzo delle risorse all'interno di un cluster di workstation. Introduzione alle griglie computazionali - a.a

105 L’architettura di Mosix
un meccanismo per la migrazione automatica dei processi (Preemptive Process Migration) un set di algoritmi per la condivisione adattiva delle risorse. Introduzione alle griglie computazionali - a.a

106 Preemptive Process Migration
Il modulo PPM consente la migrazione di qualsiasi processo verso uno dei nodi disponibili. La migrazione viene determinata in modo automatico dalle informazioni fornite dagli algoritmi per la condivisione adattiva delle risorse, oppure manualmente degli utenti. Introduzione alle griglie computazionali - a.a

107 Ottimizzazione della memoria.
A seguito di un paging causato da poca memoria disponibile da parte di un nodo, questo algoritmo fa migrare il processo verso un nodo con memoria libera sufficiente. Questa ottimizzazione è prioritaria e viene effettuata anche a scapito del corretto bilanciamento del carico all’interno della farm. Introduzione alle griglie computazionali - a.a

108 Algoritmo di load-balancing dinamico
Questo algoritmo cerca continuamente di ridurre le differenze di carico tra coppie di nodi, migrando i processi dal nodo più carico verso quello più scarico. L’esecuzione è totalmente decentralizzata: ciascun nodo esegue lo stesso algoritmo e la riduzione di carico è effettuata in maniera indipendente per coppie di workstation. Il numero di processori di ciascun nodo e la loro velocità sono dei fattori presi in considerazione nelle scelte che vengono effettuate da questo algoritmo. Introduzione alle griglie computazionali - a.a

109 Esempio teorico: ridistribuzione del carico
CPU # Linux senza Mosix: scheduling di 24 processi CPU # Linux + Mosix: scheduling di 24 processi Fig. A – Sottomissione di 24 processi: 16 processi vengono assegnati alle prime 8 CPU; 8 processi vengono assegnate alle seconde 8 CPU. L’elaborazione termina dopo 600 sec. Fig. B - Vengono sottomessi 24 processi: 16 processi vengono assegnati alle prime 8 CPU; 8 processi vengono assegnate alle seconde 8 CPU. Durante l’elaborazione i processi P17, …, P24 migrano verso i processori CPU17, … CPU24 che nel frattempo hanno terminato i loro job. L’elaborazione termina dopo 450 sec. Introduzione alle griglie computazionali - a.a

110 Esempio reale: test algoritmi Esperimento Virgo
Guadagno minimo con Mosix Guadagno del 20% con Mosix CHEP2001 Introduzione alle griglie computazionali - a.a

111 Mosix: sintesi caratteristiche
Attualmente quasi tutti i tool utilizzati per il calcolo parallelo non prevedono la migrazione dei processi verso le workstation più scariche. MOSIX é un’estensione dei kernel Unix-like ed è in grado di rispondere, in tempo breve, alle variazioni di utilizzo delle risorse all'interno di un cluster di workstation Migrazione dei processi: Mosix consente la migrazione automatica dei processi da un nodo all’altro in funzione del carico delle CPU; il numero di processori di ciascun nodo e la loro velocità sono alcuni dei fattori presi in considerazione Ottimizzazione della memoria: a seguito di un paging causato da poca memoria, i processi possono migrare automaticamente verso un nodo con memoria libera sufficiente openMosix File System (MFS): l’algoritmo di bilanciamento del carico consente ai processi di migrare verso i nodi su cui si devono fare operazioni di I/O su disco Tool di sviluppo: Mosix si presta perfettamente all’utilizzo di librerie per il calcolo parallelo e scientifico (PVM, MPI, NAG, CERNLIB, …) Introduzione alle griglie computazionali - a.a

112 Introduzione alle griglie computazionali - a.a. 2005-06
Dal WEB … Il WEB ha trasformato i calcolatori di tutto il mondo in un unico grande archivio accessibile molto facilmente da tutti Introduzione alle griglie computazionali - a.a

113 vuole unire i calcolatori di tutto il mondo in un’unica grande risorsa
… alla GRID Il progetto GRID vuole unire i calcolatori di tutto il mondo in un’unica grande risorsa per l’archiviazione e l’elaborazione da fruire in modo semplice e immediato dei DATI Introduzione alle griglie computazionali - a.a

114 Introduzione alle griglie computazionali - a.a. 2005-06
L’ambizione: Creare una WWG, ovvero una World Wide Grid Introduzione alle griglie computazionali - a.a

115 Macchine e Servizi GRID
Per eseguire i nostri programmi basterà collegarsi ad un solo calcolatore e… … saranno poi altri calcolatori a scegliere, tra milioni di computer sparsi in tutto il mondo, quali e quanti utilizzare Introduzione alle griglie computazionali - a.a

116 Introduzione alle griglie computazionali - a.a. 2005-06
Stato della Grid Clicca qui per mostrare animazione USA EUROPA (ESC per uscire dall’animazione) Introduzione alle griglie computazionali - a.a

117 Trasmissione dati ad alte prestazioni: GridFtp
Stoccolma Ftp: 1268” Mosca Ftp: 2674” Napoli Introduzione alle griglie computazionali - a.a

118 Trasferimento file da 1GByte tra
Napoli, Mosca, Stoccolma e Trieste con FTP Tempi di trasferimento Velocità di trasferimento sec Mbps Mosca - Napoli: 44’34” Mbps Stoccolma - Napoli: 21’8” Stockholm-Trieste: 13’40” Napoli-Trieste: 10’11” Introduzione alle griglie computazionali - a.a

119 Trasferimento di file da 15 MB tra Bologna e Napoli:
Protocolli afs, http e ftp a confronto Tempi di trasmissione in sec. Velocità di trasmissione in Mbps Non si raggiunge la velocità di 6 Mbps nonostante i 32 Mbps disponibili! Traffico Router di Napoli Introduzione alle griglie computazionali - a.a

120 Protocolli di trasmissione Alcuni protocolli di trasmissione paralleli
Nei protocolli di trasmissione seriali (ftp, afs, http) un nuovo pacchetto viene spedito solo quando la consegna del precedente è stata completata Durante la trasmissione le CPU dei nodi mittente e destinatario rimangono inattive Nei protocolli di trasmissione “paralleli” (GridFtp, bbFtp, bbcp) si effettua la spedizione “contemporanea” di più stringhe in quantità configurabile dall’utente. Alcuni protocolli di trasmissione paralleli GridFtp Autenticazione tramite Certificazione GLOBUS; trasferimento su flussi paralleli di grandezza arbitraria; trasferimento parziale di file; ripristino trasferimenti interrotti. bbFtp Autenticazione basata su SSH integrazione con autenticazione AFS trasferimento su flussi paralleli di grandezza arbitraria. compressione dati “on fly” bbcp sintassi simile a scp Introduzione alle griglie computazionali - a.a

121 Introduzione alle griglie computazionali - a.a. 2005-06
Stoccolma GridFtp: 307” (Ftp: 1268”) Mosca GridFtp: 325” (Ftp: 2674”) Napoli Nella figura sono messi a confronto i tempi occorsi per trasferire un file da un gigabyte da Stoccolma a Napoli e da Mosca a Napoli usando il tradizionale protocollo di trasmissione FTP e il protocollo GridFtp Introduzione alle griglie computazionali - a.a

122 Test finali trasferimento file da 1 Gbyte con GridFtp
5’25” (contro 44’34” con Ftp) per 1 GByte da Mosca a Napoli 5’10” (contro 21’8” con Ftp) per 1 GByte da Stoccolma a Napoli Tempi di trasmissione Velocità di trasmissione Mbps CHEP2003 Introduzione alle griglie computazionali - a.a


Scaricare ppt "Introduzione alle griglie computazionali"

Presentazioni simili


Annunci Google