La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione alle griglie computazionali - a.a. 2005-061 Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di.

Presentazioni simili


Presentazione sul tema: "Introduzione alle griglie computazionali - a.a. 2005-061 Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di."— Transcript della presentazione:

1 Introduzione alle griglie computazionali - a.a Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea in Informatica – III Anno 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 LEZIONE 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

2 Introduzione alle griglie computazionali - a.a 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) LOSPF Il BGP Gli indirizzi IP e lo spazio dei nomi LIPv4LIPv6 I modelli OSI e il TCP/IP I progetti del GARR

3 Introduzione alle griglie computazionali - a.a 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

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

5 Introduzione alle griglie computazionali - a.a 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 1985 (Ferrer, Lo Re, Merola) con linea INFN Napoli LNF a 9600 bps. La rete in Italia: anni 80

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

7 Introduzione alle griglie computazionali - a.a Reti Enti di Ricerca INFNET (rete dei fisici dellINFN) 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

8 Introduzione alle griglie computazionali - a.a La rete GARR Nel 1988 su iniziativa del ministro Ruberti nasce la rete GARR (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 luna dallaltra Nel 1991 nasce il Polo GARR di Napoli

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

10 Introduzione alle griglie computazionali - a.a CollegamentiInternazionali con il GARR La rete GARR

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

12 Introduzione alle griglie computazionali - a.a 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

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

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

15 Introduzione alle griglie computazionali - a.a 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 Limprovvisa 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

16 Introduzione alle griglie computazionali - a.a Routing basato sullo stato dei canali (link state routing) ne esistono diverse variantine esistono diverse varianti ogni router calcola il ritardo medio nello spedire pacchetti ad altri routerogni 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)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 floodingper la diffusione delle informazioni si usa il flooding per il calcolo dei percorsi si usa lalgoritmo di Dijkstraper il calcolo dei percorsi si usa lalgoritmo di Dijkstra dati due percorsi equivalenti A e B, se si sceglie A per istradare i pacchetti, alla successiva spedizione lalgoritmo decide che A è carico e che deve spedire verso B, successivamente decide che B è carico e deve istradare verso A e così allinfinitodati due percorsi equivalenti A e B, se si sceglie A per istradare i pacchetti, alla successiva spedizione lalgoritmo decide che A è carico e che deve spedire verso B, successivamente decide che B è carico e deve istradare verso A e così allinfinito se si decide di non tenere conto del carico non si utilizza il cammino migliorese 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 rottese la rete è grande i router potrebbero non avere memoria sufficiente per calcolare tutte le rotte nelle situazioni reali il link state routing funziona benenelle situazioni reali il link state routing funziona bene

17 Introduzione alle griglie computazionali - a.a I sistemi autonomi: AS la Svezia ha severe leggi inerenti la privacyla Svezia ha severe leggi inerenti la privacy il traffico interno al Canada non può transitare per lesteroil traffico interno al Canada non può transitare per lestero i sistemi di tariffazione sono sicuramente diversi da paese a paesei 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 sottesenascono 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 frontieraogni AS usa propri protocolli e si collega ad altri AS mediante router di frontiera eventuali malfunzionamenti coinvolgono solo le reti allinterno dellAS dove si è verificato il problemaeventuali malfunzionamenti coinvolgono solo le reti allinterno dellAS dove si è verificato il problema interior gateway protocol = protocolli per collegamenti interni ad un ASinterior gateway protocol = protocolli per collegamenti interni ad un AS esterior gateway protocol = protocolli per collegamenti esterni ad un ASesterior gateway protocol = protocolli per collegamenti esterni ad un AS

18 Introduzione alle griglie computazionali - a.a Un interior gateway protocol: lOSPF Open Shortest Path First) anni 70: protocolli di tipo distance vector (RIP)anni 70: protocolli di tipo distance vector (RIP) anni 80: protocolli di tipo link stateanni 80: protocolli di tipo link state 1988: nasce OSPF1988: nasce OSPF OSPF gestisce varie metriche: distanza fisica tra router, ritardi, ecc.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)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)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 lintera topologiariesce a gestire reti molto grandi senza doverne conoscere lintera topologia è un protocollo abbastanza sicuro, in grado di difendersi da false informazioni di routing in giro per la rete

19 Introduzione alle griglie computazionali - a.a 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 linsieme dei percorsi dagli altri router, li rielabora e tira fuori una sua nuova tabella

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

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

22 Introduzione alle griglie computazionali - a.a 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).

23 Introduzione alle griglie computazionali - a.a 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: calcolatoricalcolatori terminal serverterminal server switchswitch routerrouter stampanti ecc.stampanti ecc.

24 Introduzione alle griglie computazionali - a.a Gli indirizzi IP Glindirizzi numerici vengono univocamente assegnati dal NIC, Network Information Center, unorganizzazione 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 lindirizzo 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 lassegnazione dellindirizzo fisico dei singoli nodi. Le sottoreti appena citate vengono (venivano) dette rispettivamente di Classe A, di Classe B e di Classe C.

25 Introduzione alle griglie computazionali - a.a Gli indirizzi IP Classe1° byte2° byte3° byte4° byte riservata0 A1÷126host riservata127 B128 ÷ 1911 ÷ 254host C192 ÷ 2230 ÷ 2551 ÷ 254host riservate224 ÷ 255

26 Introduzione alle griglie computazionali - a.a 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

27 Introduzione alle griglie computazionali - a.a 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

28 Introduzione alle griglie computazionali - a.a Esplodono le tabelle di routing: il CIDR (Classless InterDomain Routing) classe C: 256 indirizzi classe C: 256 indirizzi classe B: 256 * 256 = indirizzi classe B: 256 * 256 = indirizzi classe A: 256 * 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 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 i router disponevano di un firmware tarato per gestire fino a router allorquando reti sembravano assolutamente al di la da venire nel 1996 si raggiunse quota reti! nel 1996 si raggiunse quota reti!

29 Introduzione alle griglie computazionali - a.a 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 con il routing interdominio senza classi (CIDR) vengono assegnati blocchi contigui di indirizzi e non singole network gli indirizzi vengono così suddivisi: gli indirizzi vengono così suddivisi: Europa Nord America Sud e Centro America Asia e il Pacifico

30 Introduzione alle griglie computazionali - a.a DallIPV4 allIPV6 -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 dindirizzi IP - saranno i televisori nodi della rete Internet?

31 Introduzione alle griglie computazionali - a.a Nasce lIPV6 nel 1990 lIETF 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 lindirizzo sarà di 16 byte esadecimali 5000:0000:0000:0000:1234:5678:9ABC:DEF0 lindirizzo IPv4 verrà riscritto così: ::

32 Introduzione alle griglie computazionali - a.a Confronto IPV4 - IPV6 ipv4 ipv6 · 4*10 9 indirizzi · pacchetto con 13 informazioni · hop limit = 32 · pacchetto = 64 KB max · il pacchetto può essere frammentato dai vari router effettua il checksum effettua il checksum · 3x10 38 di indirizzi · pacchetto con 7 informazioni · hop limit = 255 · pacchetto = 64 KB max · 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)

33 Introduzione alle griglie computazionali - a.a 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 lutente che si dichiara alla rete sia effettivamente lui per la segretezza dei dati si è preferito lasciare lincarico al livello di applicazione privilegiando la velocità di trasmissione dei dati

34 Introduzione alle griglie computazionali - a.a 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

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

36 Introduzione alle griglie computazionali - a.a Ditributed Information Tree Root Server chitgov cern com decibminfn rm fnal namibo cnr unina

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

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

39 Introduzione alle griglie computazionali - a.a 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

40 Introduzione alle griglie computazionali - a.a 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 dellintegrità dei dati un protocollo non orientato alla connessione è più veloce ma meno affidabile di un protocollo orientato alla connessione

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

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

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

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

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

46 Introduzione alle griglie computazionali - a.a 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 lintegrità end-to-end tra calcolatori fisicamente lontani –è lanalogo dellintegrità 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 lerrore riordina i pacchetti fuori sequenza gestisce il controllo di flusso UDP (User Datagram Protocol - non affidabile) privo di connessione non prevede controllo e gestione dellerrore non riordina i pacchetti usato per le comunicazioni veloci (trasmissione audiovisiva)

47 Introduzione alle griglie computazionali - a.a V – Il livello di sessione è presente nel modello OSIè presente nel modello OSI non è presente nel modello TCP/IPnon è presente nel modello TCP/IP è prevista la possibilità di stabilire delle sessioni (es.: trasferimento di file da un nodo allaltro)è prevista la possibilità di stabilire delle sessioni (es.: trasferimento di file da un nodo allaltro) controllo del dialogo (decide se due sessioni possono trasmettere contemporaneamente e/o quando devono farlo uno per volta)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)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)

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

49 Introduzione alle griglie computazionali - a.a VII – Il livello di applicazione 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) CASE (Common Application Service Elements) CASE (Common Application Service Elements) - stabilire una connessione - antenere una trasmissione - concludere una trasmissione - assicurare lintegrità di transazioni distribuite SASE (Specific Application Service Elements) SASE (Specific Application Service Elements) - vengono soddisfatte esigenze di precisi applicativi

50 Introduzione alle griglie computazionali - a.a 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 dellIBM 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

51 Introduzione alle griglie computazionali - a.a 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 intestazione IP intestazione UDP intestazione TFTP datichiusura ethernet 14 byte20 byte8 byte4 byte400 byte4 byte

52 Introduzione alle griglie computazionali - a.a Trasmissione dati in TCP/IP Controllo di flusso: tecnica che serve ad evitare che una macchina lenta venga sommersa di dati da unaltra più veloce Buffer: memoria dappoggio 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

53 Introduzione alle griglie computazionali - a.a 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

54 Introduzione alle griglie computazionali - a.a 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, lintegrità, 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

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

56 Introduzione alle griglie computazionali - a.a 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

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

58 Introduzione alle griglie computazionali - a.a Il problema dellarchiviazione e della distribuzione dei dati

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

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

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

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

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

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

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

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

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

68 Introduzione alle griglie computazionali - a.a Albero di AFS

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

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

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

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

73 Introduzione alle griglie computazionali - a.a 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

74 Introduzione alle griglie computazionali - a.a 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 lNCSA (National Center for Supercomputing Applications)

75 Introduzione alle griglie computazionali - a.a Il WWW a Napoli il 23 novembre 1993 Il primo server WWW ufficiale dellItalia meridionale fu realizzato presso la Sezione di Napoli dellIstituto 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 dellItalia meridionale

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

77 Introduzione alle griglie computazionali - a.a Un po di nomenclatura KiloByte = 10 3 Byte (mille) MegaByte = 10 6 Byte (un milione) GigaByte = 10 9 Byte (un miliardo) TeraByte = Byte (mille miliardi) PetaByte = Byte (un milione di miliardi)

78 Introduzione alle griglie computazionali - a.a 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

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

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

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

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

83 Introduzione alle griglie computazionali - a.a Il Cern

84 Introduzione alle griglie computazionali - a.a Il Cern

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

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

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

88 Introduzione alle griglie computazionali - a.a La soluzione Condor Un sistema di calcolo distribuito sviluppato presso lUniversità del WisconsinUn sistema di calcolo distribuito sviluppato presso lUniversità del Wisconsin lINFN collabora allo sviluppo e alla configurazione di tool su wide area network e alladattabilità alle proprie esigenze di calcololINFN collabora allo sviluppo e alla configurazione di tool su wide area network e alladattabilità alle proprie esigenze di calcolo

89 Introduzione alle griglie computazionali - a.a Lidea di Condor poter sfruttare macchine inattive facendoci girare programmi che hanno bisogno di un elevato tempo di cpupoter 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à effettuatipoter restituire immediatamente la macchina al proprietario e continuare con un sistema automatico i propri job altrove senza perdere i calcoli già effettuati

90 Introduzione alle griglie computazionali - a.a Come funziona Condor Sindividuano le macchine che adersicono alliniziativa formando quello che viene detto un Pool di CondorSindividuano le macchine che adersicono alliniziativa formando quello che viene detto un Pool di Condor tra le macchine del Pool sindividuano quelle che faranno da Central Manager e da Checkpoint Servertra le macchine del Pool sindividuano quelle che faranno da Central Manager e da Checkpoint Server

91 Introduzione alle griglie computazionali - a.a 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.)

92 Introduzione alle griglie computazionali - a.a A cosa serve il Checkpoint Server Importa periodicamente dalle macchine su cui girano i job le immagini dei processiImporta 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 lultima immagine del processo presente sul Checkpoint Server e verrà fatta girare sulla nuova macchina individuata dal Central Managerqualora la macchina su cui gira un job dovesse andare in crash, verrà recuperata lultima immagine del processo presente sul Checkpoint Server e verrà fatta girare sulla nuova macchina individuata dal Central Manager

93 Introduzione alle griglie computazionali - a.a 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à limmagine del processo e la sposterà su unaltra macchina indicata dal Central Manager; il job ripartirà dal punto dove si era fermato

94 Introduzione alle griglie computazionali - a.a dipende dalla configurazione presceltadipende 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 macchinauno 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 jobdipende dal carico di cpu, configurabile e che al di sopra del quale la macchina può fare un vacate del job Come si fa a eliminare un job di Condor dalla propria macchina?

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

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

97 Introduzione alle griglie computazionali - a.a Unapplicazione 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; linserimento nel pool di Condor delle macchine della Sala Utenti ne consente lutilizzo 24 ore su 24.

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

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

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

101 Introduzione alle griglie computazionali - a.a 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 dimplementazione; -si può disporre di tool OpenSource allavanguardia (MOSIX, PVM, MPI); -si possono creare nodi diskless che richiedono manutenzione minima;

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

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

104 Introduzione alle griglie computazionali - a.a Mosix MOSIX é unestensione 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.

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

106 Introduzione alle griglie computazionali - a.a 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. 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.

107 Introduzione alle griglie computazionali - a.a 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 allinterno della farm. 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 allinterno della farm.

108 Introduzione alle griglie computazionali - a.a 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. Lesecuzione è 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. 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. Lesecuzione è 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.

109 Introduzione alle griglie computazionali - a.a Linux senza Mosix: scheduling di 24 processi Esempio teorico: ridistribuzione del carico 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. Lelaborazione 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 lelaborazione i processi P 17, …, P 24 migrano verso i processori CPU 17, … CPU 24 che nel frattempo hanno terminato i loro job. Lelaborazione termina dopo 450 sec. CPU #

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

111 Introduzione alle griglie computazionali - a.a 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 é unestensione 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 allaltro 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): lalgoritmo 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 allutilizzo di librerie per il calcolo parallelo e scientifico (PVM, MPI, NAG, CERNLIB, …)

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

113 Introduzione alle griglie computazionali - a.a … alla GRID Il progetto GRID vuole unire i calcolatori di tutto il mondo in ununica grande risorsa per larchiviazione e lelaborazione da fruire in modo semplice e immediato dei DATI

114 Introduzione alle griglie computazionali - a.a Lambizione: Creare una WWG, ovvero una World Wide Grid

115 Introduzione alle griglie computazionali - a.a 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

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

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

118 Introduzione alle griglie computazionali - a.a Trasferimento file da 1GByte tra Napoli, Mosca, Stoccolma e Trieste con FTP Stoccolma - Napoli: 218 Stockholm-Trieste: 1340 Napoli-Trieste: 1011 sec Mosca - Napoli: 4434 Mbps Tempi di trasferimento Velocità di trasferimento

119 Introduzione alle griglie computazionali - a.a 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 Traffico Router di Napoli Non si raggiunge la velocità di 6 Mbps nonostante i 32 Mbps disponibili!

120 Introduzione alle griglie computazionali - a.a Protocolli di trasmissione 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 trasmissioneparalleli (GridFtp, bbFtp, bbcp) si effettua la spedizione contemporanea di più stringhe in quantità configurabile dallutente. 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 Autenticazione basata su SSH sintassi simile a scp

121 Introduzione alle griglie computazionali - a.a GridFtp: 307 (Ftp: 1268) GridFtp: 325 (Ftp: 2674) Stoccolma 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 Mosca

122 Introduzione alle griglie computazionali - a.a CHEP2003 Test finali trasferimento file da 1 Gbyte con GridFtp Tempi di trasmissione Velocità di trasmissione Mbps 525 (contro 4434 con Ftp) per 1 GByte da Mosca a Napoli 510 (contro 218 con Ftp) per 1 GByte da Stoccolma a Napoli


Scaricare ppt "Introduzione alle griglie computazionali - a.a. 2005-061 Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di."

Presentazioni simili


Annunci Google