GRIMD Queue Management

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "GRIMD Queue Management"

Transcript

1 Università degli Studi di Salerno Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Magistrale in Informatica Tesina per il corso di Sistemi Operativi II GRIMD Queue Management Gestione code utenti tramite interfaccia web e refactoring architetturale di GRIMD Prof. Giuseppe Cattaneo Gruppo Antonio Balsamo Salvatore Cascone Anno Accademico

2 Indice 1 Introduzione Grid Computing Motivazioni Caso di studio Obiettivi Stato dell arte Risultati Le tecnologie NET Framework Entity Framework Membership Windows Communication Foundation SQL Server Windows Server Internet Information Services Virtual Private Network Refactoring architettura GRIMD Modifiche apportate Sicurezza Requisiti minimi i

3 INDICE ii 4 Struttura del sistema Gestione utenti Base dei dati Servizio di gestione Master Modulo di identificazione Slave Modulo di gestione coda Modulo di controllo di stato del Master Altre modifiche Master FRED e GDUMP Slave Conclusioni 32 Bibliografia 33 A Appendice 34 A.1 Servizio di controllo stato Master A.1.1 IMasterStatus A.1.2 MasterStatus A.2 Servizio di coda A.2.1 IMasterQueue A.2.2 MasterQueue A.2.3 QueueHandler A.3 Servizio identificazione slave A.3.1 IVPNIDResolver A.3.2 VPNIDResolver

4 Capitolo 1 Introduzione 1.1 Grid Computing Al giorno d oggi i sistemi di Grid Computing (Griglia Computazionale) rappresentano una diffusa infrastruttura di calcolo distribuito, utilizzati per l elaborazione di grandi quantità di dati mediante l uso di un grande numero di risorse. Il termine griglia fu coniato nella prima metà degli anni Novanta. Il principale problema alla base del concetto di griglia è la condivisione coordinata di risorse all interno di un organizzazione virtuale. La condivisione non è limitata solo allo scambio dei file, ma si estende all accesso diretto a computer, a software ed in generale a tutto l hardware necessario alla risoluzione di un problema scientifico, ingegneristico o industriale. Gli individui e le istituzioni, che mettono a disposizione della griglia le loro risorse per la medesima finalità, fanno parte della stessa organizzazione. 1.2 Motivazioni Caratteristica comune dei progetti di grid computing è la necessità di disporre un ambiente di calcolo data-intensive, all interno del quale le applicazioni 1

5 CAPITOLO 1. INTRODUZIONE 2 hanno il bisogno di accedere a grandi quantità di dati geograficamente distribuiti in maniera veloce ed affidabile. Compito della griglia è far operare tali applicazioni nel miglior modo possibile. È facile osservare che nessun computer attualmente in commercio sarebbe in grado, da solo, di elaborare moli di dati abbastanza grandi in tempi ragionevoli. Tuttavia la condivisione di risorse quali CPU e dischi opportunamente coordinati può dare l impressione all utente di accedere ad un supercomputer virtuale, con una incredibile potenza computazionale e capacità di memorizzazione in grado di sopportare grandi carichi di lavoro. Tutta l architettura di una griglia, vista come un unico supercomputer virtuale, nasconde una grande complessità interna. Per esempio è importante notare l esigenza di progettare e realizzare uno scheduler di risorse, che rappresenta uno dei componenti critici del sistema di gestione delle risorse. Questo ha il compito di assegnare le risorse ai job, in modo da soddisfare le esigenze delle applicazioni e del sistema. Le risorse di cui esso deve tenere traccia e gestire includono sistemi di calcolo e sistemi di immagazzinamento dati. Lo scheduling è un campo tradizionale dell informatica, ma nonostante siano state studiate molte tecniche per numerose tipologie di sistemi, le caratteristiche tipiche delle griglie di dati rendono molti di questi approcci inadeguati. Infatti, mentre nei sistemi tradizionali le risorse e i job sono sotto il diretto controllo dello scheduler, le risorse delle griglie invece sono geograficamente distribuite. Queste inoltre sono di natura eterogenea e appartengono a diversi individui o organizzazioni, ciascuna con le proprie politiche di scheduling, costi d accesso, carichi di lavoro e disponibilità di risorse che varia dinamicamente nel tempo. La mancanza di un controllo centralizzato, insieme alla presenza di utenti che generano job, molto diversi l uno dall altro, rendono lo scheduling più complicato rispetto a quello dei sistemi di calcolo tradizionali.

6 CAPITOLO 1. INTRODUZIONE Caso di studio Nel corso del documento si discuterà delle modifiche apportate a GRIMD (Grid for Molecular Dynamics), un sistema concepito per effettuare calcolo distribuito tramite l utilizzo di YASARA (Yet Another Scientific Artificial Reality Application) su una griglia di computer, sfruttando la loro potenza di calcolo nei periodi di inutilizzo. L architettura prevede la presenza di una macchina master che coordina il lavoro di un numero indeterminato di slave. Attualmente il sistema è installato su alcune delle macchine presenti nel laboratorio Turing della facoltà di Informatica, nell aula 33 e nel laboratorio di bioinformatica del dipartimento di scienze farmaceutiche e biomediche dell Università degli Studi di Salerno Obiettivi L intento è quello di estendere le capacità di GRIMD ad un ambito più ampio, accademico o aziendale, mantenendo la versione precedente e sviluppando una versione web che consenta l utilizzo di computer appartenenti a diverse subnet, scavalcando i problemi dovuti alla presenza di NAT (Network Address Translation) e che permetta l utilizzo a più utenti contemporaneamente. La versione attuale infatti è stata pensata per un utilizzo ristretto ad un ambito di laboratorio, la nuova versione dovrà invece far operare i computer attualmente disponibili insieme ad altri appartenenti a diversi laboratori. Tali computer sono normalmente inaccessibili dall esterno della propria rete a causa della presenza di servizi come NAT o firewall. La nuova versione dovrà ovviare a questi problemi fornendo un interfaccia web alla quale i vari utenti possano autenticarsi e sottomettere i propri lavori che saranno distribuiti sulla griglia ed eseguiti non appena questa sarà disponibile. Dovrà quindi essere gestita una coda dei vari lavori sottomessi dagli utenti ed eseguirli cercando di utilizzare la massima potenza di calcolo disponibile.

7 CAPITOLO 1. INTRODUZIONE Stato dell arte Uno dei progetti, forse anche il più famoso, che più si avvicina agli argomenti trattati in precedenza è (SETI at home) [2], un progetto di calcolo distribuito volontario che usa computer connessi ad internet, ospitato dalla Space Sciences Laboratory all Università della California, Berkeley, negli Stati Uniti d America. SETI è l acronimo di Search for Extra-Terrestrial Intelligence ed il suo scopo è quello di analizzare segnali radio in cerca di segni di intelligenze extraterrestri. Chiunque con un computer connesso ad internet può partecipare a SE- eseguendo un software gratuito che scarica ed analizza dati provenienti dal radio-telescopio. Il software di calcolo distribuito di può essere eseguito sia come screensaver sia mentre l utente è a lavoro, sfruttando la potenza di elaborazione che altrimenti sarebbe inutilizzata. La prima piattaforma software, ora denominata Classic [3] è stata utilizzata dal 17 maggio 1999 al 15 dicembre Quest ultima consentiva di eseguire solo Fu sostituito da Berkeley Open Infrastructure for Network Computing (BOINC) [4], il quale permette agli utenti di contribuire anche ad altri progetti di calcolo distribuito contemporaneamente all esecuzione di Un altro famoso progetto di calcolo distribuito è neugrid [5], finanziato dalla Comunità Europea. Il progetto prevede lo sviluppo di un infrastruttura digitale per la ricerca scientifica, basata sul sistema Grid ed è dotata di un interfaccia che permetterà alla comunità di neuroscienziati europei l avanzamento della ricerca per lo studio delle malattie neurodegenerative (come il morbo di Alzheimer). All interno di neugrid, vi è la possibilità di raccogliere ed archiviare un ingente quantità di dati di imaging molecolare e di effettuare analisi computazionalmente impegnative, attraverso il paradigma del calcolo distribuito. Un ricercatore interagisce con neugrid per selezionare un gruppo di immagini da analizzare, usando l algoritmo prescelto. Completata l elaborazione dell immagine sulla griglia, il dato di input viene confrontato al dato di output per verificare il risultato del processo. Questo

8 CAPITOLO 1. INTRODUZIONE 5 viene poi trasferito dall utente in postazione remota per ulteriori eventuali analisi statistiche e visualizzazioni avanzate. 1.5 Risultati Tutti gli obiettivi prefissati sono stati raggiunti con successo. La versione precedente di GRIMD ha dovuto essere modificata allo scopo di permettere tale gestione multiutente. Infatti sono state introdotte alcune componenti aggiuntive ed inoltre è stato necessario anche effettuare un refactoring a livello architetturale per risolvere alcune problematiche che saranno presentate successivamente. Allo stato attuale è disponibile un interfaccia web che permette l accesso al sistema agli utenti autorizzati e fornisce loro la possibilità di sottomettere i lavori che si desidera eseguire. I lavori sottomessi vengono poi gestiti da un apposito servizio di gestione della coda ed eseguiti utilizzando le basi fornite da GRIMD con le opportune modifiche.

9 Capitolo 2 Le tecnologie In questo capitolo saranno mostrate le tecnologie utilizzate durante lo svolgimento del lavoro. Se queste sono già conosciute la lettura del capitolo può essere tralasciata, in quanto si fornirà solamente una panoramica generale e non saranno trattati i dettagli delle varie tecnologie. 2.1.NET Framework Il.NET Framework è un framework software sviluppato dalla Microsoft, destinato ad essere usato dalla maggior parte delle nuove applicazioni create per le piattaforme Windows le quali ne forniscono il pieno supporto. Esso include una vasta gamma di librerie di base, detta Base Class Library (BCL) e fornisce l interoperabilità di linguaggio attraverso i diversi linguaggi di programmazione supportati (cioè ogni linguaggio può utilizzare del codice scritto in altri linguaggi). In particolare nel corso del lavoro sono stati utilizzati i seguenti linguaggi di programmazione.net: C#, linguaggio ad oggetti simile al Java della Oracle Corporation. Visual Basic.NET (abbreviato VB.NET), linguaggio orientato agli oggetti e multi-thread basato sulla sintassi di Visual Basic 6

10 CAPITOLO 2. LE TECNOLOGIE 7 ASP.NET, evoluzione del classico ASP (Active Server Pages), linguaggio di programmazione in ambiente web, implementa.net ed è dotato di librerie.net, anche se non viene considerato un linguaggio vero e proprio poiché può essere scritto utilizzando un qualsiasi altro linguaggio.net. ADO.NET, nuova versione per il.net Framework di ADO (ActiveX Data Objects) BCL fornisce classi per la creazione di interfacce utente, accesso ai dati, connettività a database, crittografia, sviluppo di applicazioni web, algoritmi numerici e comunicazione su rete. I programmatori producono software combinando il loro codice sorgente con BCL ed eventuali altre librerie di terze parti. Tutto il codice della BCL, librerie di terze parti e qualsiasi altro programma scritto in un qualsiasi linguaggio.net viene tradotto nel Common Intermediate Language (CIL) che rappresenta il linguaggio di programmazione di più basso livello ancora leggibile dall uomo definito dalla Common Figura 2.1: Diagramma della Common Language Infrastructure.

11 CAPITOLO 2. LE TECNOLOGIE 8 Language Infrastructure (CLI) rappresentata in figura 2.1, ossia lo standard Microsoft che descrive il codice eseguibile e l ambiente d esecuzione che forma il nucleo del.net Framework. I programmi trasformati in CIL vengono quindi eseguiti all interno di un ambiente software noto come Common Language Runtime (CLR), una macchina virtuale che fornisce importanti servizi e funzionalità quali la sicurezza, la gestione della memoria, la gestione delle eccezioni, etc. Per fare un esempio, il CIL e il CLR possono essere paragonati al Bytecode ed alla macchina virtuale di Java. Le librerie di classi BCL e il CLR, insieme costituiscono il.net Framework. In figura 2.2 è rappresentato lo stack.net Framework fino alla versione Entity Framework Entity Framework è un set di tecnologie ADO.NET (ActiveX Data Objects), ossia un sottoinsieme di librerie della BCL utilizzato per suppor- Figura 2.2: Lo stack.net Framework fino alla versione 4.0.

12 CAPITOLO 2. LE TECNOLOGIE 9 tare lo sviluppo di applicazioni software orientate ai dati. Le tecnologie ADO.NET rappresentano il primo modello di accesso relazionale ai dati per le applicazioni basate su Microsoft.NET Framework. Entity Framework rappresenta una soluzione di mapping relazionale ad oggetti ed è uno strumento che consente alle applicazioni di accedere e modificare i dati, i quali vengono rappresentati come entità e relazioni. Le informazioni contenute nei file di modello e di mapping, che necessitano di essere definiti tramite appositi linguaggi, vengono utilizzate per tradurre le query eseguite sui vari tipi di entità in query specifiche dell origine dati. Questo accade poiché le origini dei dati possono essere di tipo differente (Strutture dati, DBMS, file, etc) ed il risultato delle query viene poi rappresentato da oggetti gestiti da Entity Framework. Il meccanismo di traduzione delle query è fornito dai provider di dati EntityClient. Tali provider gestiscono connessioni alle sorgenti dei dati, convertono query di entità in query specifiche dell origine dati e restituiscono un lettore dati utilizzato successivamente da Entity Framework per materializzare i dati dell entità in oggetti. I metodi disponibili per eseguire query su un modello concettuale e restituire oggetti sono fondamentalmente due: LINQ to Entities: Fornisce il supporto LINQ (Language-Integrated Query) per l esecuzione di query su tipi di entità definiti in un modello concettuale Entity SQL: Sottolinguaggio SQL indipendente dall archiviazione che interagisce direttamente con le entità del modello concettuale e supporta il concetto di Entity Data Model (derivante dal modello Entity Relationship) La figura 2.3 mostra l architettura di Entity Framework per l accesso ai dati.

13 CAPITOLO 2. LE TECNOLOGIE 10 Figura 2.3: Architettura di Entity Framework per l accesso ai dati. LINQ Language Integrated Query (LINQ, si pronuncia link ) è un componente del.net Framework che aggiunge ai linguaggi.net la possibilità di effettuare interrogazioni su oggetti utilizzando una sintassi simile a SQL. Esso definisce un insieme di operatori che possono essere usati per interrogare, proiettare e filtrare dati in matrici, classi enumerabili, XML, database relazionali e sorgenti dati di terze parti. Consente l interrogazione di ogni sorgente di dati che rappresenti i dati sotto forma di oggetti. Per questa ragione, se la sorgente non memorizza in maniera nativa i dati come oggetti, è necessario l utilizzo di un connettore per accedere ai dati. Il risultato di una query viene restituito come una collezione di oggetti in memoria che possono poi essere enumerati.

14 CAPITOLO 2. LE TECNOLOGIE Membership La Membership è una funzionalità integrata di ASP.NET che consente di convalidare e archiviare le credenziali utente, facilitando così la gestione dell autenticazione degli utenti nei siti Web e fornisce il supporto per: Creazione di nuovi utenti e password. Archiviazione delle informazioni di account utente (nomi utente, password e dati di supporto) in Microsoft SQL Server, Active Directory o in un archivio dati alternativo. Autenticazione degli utenti che visitano il sito. È possibile autenticare gli utenti a livello di codice oppure utilizzare i controlli di accesso ASP.NET per creare un sistema di autenticazione completo che non richieda la scrittura di codice o la richieda solo in minima parte. Gestione delle password, comprese le operazioni di creazione, modifica e reimpostazione. A seconda delle impostazioni utilizzate, la Membership può anche fornire un sistema automatico per la reimpostazione delle password che accetti una domanda ed una risposta segreta fornite dall utente. Definizione di un provider Membership personalizzato, che è possibile utilizzare in sostituzione del provider di default per gestire gli account e mantenere i dati relativi. Gli utenti possono essere raggruppati per ruolo. La gestione dei ruoli in ASP.NET consente di gestire le autorizzazioni, permettendo di specificare quali utenti possono accedere a determinate risorse dell applicazione. Analogamente ai Membership Provider è possibile definire provider personalizzati per la gestione dei ruoli.

15 CAPITOLO 2. LE TECNOLOGIE Windows Communication Foundation Windows Communication Foundation (WCF), conosciuto in fase di sviluppo con il nome Indigo, è un sistema del.net Framework che offre la struttura API per la creazione di applicazioni distribuite. Ogni protocollo di rete (HTTP, FTP, SMTP, etc.) ha un suo modello di programmazione e necessita quindi di una conoscenza specifica da parte degli sviluppatori per poter essere utilizzata. WCF è stato invece realizzato con l intento di ricondurre ad un unico modello diverse tecnologie, rendendo più semplice ed uniforme la programmazione. È spesso utilizzato per implementare sistemi con architettura SOA (Service Oriented Architecture) Un servizio WCF si basa sul concetto di Endpoint che rappresenta la porta attraverso la quale le applicazioni comunicano con il mondo esterno. Si può quindi affermare che un servizio WCF sia una collezione di Endpoint. A sua volta, un Endpoint è costituito da quelli che sono i pilastri di WCF: Address, Binding, Contract. Address L Address è l indirizzo al quale il servizio risponde. L indirizzo è composto da un URI, una Identity ed una lista di Header. In fase di definizione di un Address, l informazione principale è l URI, che corrisponde all indirizzo fisico del servizio. Header e Identity sono informazioni opzionali che sono necessarie solo in casi particolari, come ad esempio per specificare un certificato X.509 nel caso sia richiesto un maggior grado di sicurezza. Binding Il concetto di Binding è forse il più importante tra quelli proposti in WCF. Infatti è proprio grazie ad esso se ci si può occupare esclusivamente del codice senza interessarsi minimamente all infrastruttura di trasporto. I Binding si occupano di quello che avviene tra il momento in cui il servizio spedisce

16 CAPITOLO 2. LE TECNOLOGIE 13 logicamente il messaggio ed il momento in cui questo viene fisicamente trasmesso sulla rete. In questo lasso di tempo vengono eseguiti numerosi passi che seguono una precisa pipeline di cui i binding sono responsabili. Il messaggio deve attraversare due livelli: il primo si occupa dei Behaviour (Comportamenti), ovvero delle trasformazioni che deve subire un messaggio, il secondo si occupa dei Channel (Canali), ovvero dell instradamento verso il canale fisico di trasporto. Nel primo livello ci si occupa della conversione dei dati dal formato originario al formato specifico del messaggio che dipende dal protocollo utilizzato. Ad esempio, potrebbe essere effettuata la serializzazione di una classe nel formato XML di un messaggio SOAP. In aggiunta i Behaviour si occupano anche della sicurezza, ad esempio della cifratura delle informazioni e di altre funzioni di gestione del dato. Durante la seconda fase il messaggio viene tramesso sul canale di trasporto. La gestione dei Binding può essere interamente gestita in fase di configurazione, si può quindi intuire come semplicemente cambiando la configurazione si può passare da un protocollo ad un altro, come ad esempio da HTTPS ad un trasporto diverso del messaggio come i semplici TCP o HTTP senza dover modificare il codice. Contract Il Contract rappresenta l interfaccia software vera e propria che il servizio pubblica ed espone all esterno. Ogni operazione definita nel contract consiste in un semplice scambio di messaggi utilizzando il protocollo specificato in fase di configurazione. 2.2 SQL Server Microsoft SQL Server è un DBMS relazionale, meglio noto come Relational Database Management System (RDBMS), prodotto da Microsoft. Nelle prime versioni era utilizzato per basi dati medio-piccole, ma a partire dalla

17 CAPITOLO 2. LE TECNOLOGIE 14 versione 2000 è stato utilizzato anche per la gestione di basi dati di grandi dimensioni. SQL Server utilizza una variante del linguaggio SQL standard chiamata Transact-SQL (T-SQL) comunicando sulla rete utilizzando un protocollo a livello di applicazione chiamato Tabular Data Stream (TDS). Supporta anche Open Database Connectivity (ODBC). 2.3 Windows Server 2003 Successore di Windows 2000, Microsoft Windows Server 2003 rappresenta una tappa della evoluzione della serie server dei sistemi operativi di Microsoft. Il lancio è avvenuto il 24 aprile 2003 ma conserva ancora oggi la compatibilità con molte delle caratteristiche presenti nei sistemi fino a Windows XP e Windows Internet Information Services Internet Information Services (abbreviato in IIS), è un complesso di servizi server Internet per sistemi operativi Microsoft Windows. Inizialmente venne distribuito come Option Pack per il sistema operativo Windows NT, venne poi integrato in Windows 2000 e Windows Server La versione corrente, integrata in Windows Server 2008 R2, è la 7.5 ed include i servizi server per i protocolli FTP, SMTP, NNTP e HTTP/HTTPS. L applicazione server non è in grado, di per sé, di eseguire elaborazioni Server-side ma ne delega l esecuzione ad applicazioni ISAPI (Internet Server Application Programming Interface), una interfaccia di programmazione (API) messa a disposizione da Microsoft per gli sviluppatori che intendono interagire ed ampliare le funzionalità del server web. Microsoft stessa fornisce una serie di applicazioni tra le quali il modulo per Active Server Pages ed ASP.NET. Altri sviluppatori hanno reso disponibili i moduli per il supporto ai linguaggi PHP e Perl.

18 CAPITOLO 2. LE TECNOLOGIE 15 Sebbene il mercato dei server web sia controllato saldamente da Apache, IIS è riuscito, negli anni, a guadagnarsi una fetta di server pari a circa il 20% dei domini totali. 2.4 Virtual Private Network Una Rete Privata Virtuale (Virtual Private Network o VPN) è una rete di telecomunicazioni privata, instaurata tra soggetti che utilizzano un sistema di trasmissione pubblico e condiviso, come per esempio Internet. Lo scopo delle reti VPN è di offrire alle aziende, a un costo inferiore, le stesse possibilità delle linee private in affitto sfruttando reti condivise pubbliche. Si può vedere una VPN come l estensione, a scala geografica, di una rete locale privata aziendale che colleghi tra loro siti interni all azienda stessa variamente dislocati su un ampio territorio sfruttando una rete IP pubblica per il trasporto su scala geografica e realizzando una rete LAN, detta appunto virtuale e privata, logicamente del tutto equivalente ad una infrastruttura fisica di rete appositamente dedicata. Per mezzo di una VPN, utilizzando una connessione Internet, è ad esempio possibile collegarsi dall esterno alla rete privata del proprio ufficio, scavalcando tutti i problemi dovuti alla raggiungibilità ad esempio per la presenza di firewall o NAT (Network Address Translation). Generalmente una VPN comprende due parti: una interna alla rete, e quindi protetta, che preserva la trasmissione, e una meno affidabile e sicura che è quella esterna alla rete privata, ad esempio via Internet. Le reti VPN utilizzano collegamenti che necessitano di autenticazione in modo da garantire l accesso ai soli utenti autorizzati. Per garantire la sicurezza che i dati inviati in Internet non siano intercettati o utilizzati da altri non autorizzati, le reti utilizzano sistemi di crittografia. Le reti VPN sicure adottano dunque protocolli che provvedono a cifrare il traffico transitante sulla rete virtuale. Oltre alla cifratura, una VPN sicura deve prevedere nei suoi protocolli dei meccanismi che impedisca-

19 CAPITOLO 2. LE TECNOLOGIE 16 no violazioni della sicurezza, come ad esempio il furto dell identità digitale o l alterazione dei messaggi. Alcuni dei protocolli più comuni utilizzati nelle VPN sono: IPsec (IP security), comunemente usate su IPv4 (parte obbligatoria dell IPv6). PPTP (point-to-point tunneling protocol), sviluppato da Microsoft. SSL/TLS, utilizzata nel progetto OpenVPN, è un framework molto spesso associato con il commercio elettronico, che s è rivelato di grande flessibilità ed è quindi usato come strato di sicurezza per varie implementazioni (più o meno standard) di reti private virtuali. In particolare nel corso del lavoro si è scelto di utilizzare il servizio VPN offerto da Windows Server 2003 che fa uso del protocollo PPTP.

20 Capitolo 3 Refactoring architettura In questo capitolo sarà presentata l architettura di GRIMD 1.1 [1], e le modifiche apportate nella nuova versione allo scopo di fornire un servizio di gestione web e multiutente. Ci si concentrerà quindi solamente sugli aspetti architetturali analizzando i vantaggi derivanti dalle scelte adottate nell ultima fase di sviluppo. 3.1 GRIMD 1.1 L architettura originaria di GRIMD prevede la presenza di una macchina master che coordina il lavoro di un numero indeterminato di slave. Il master gestisce una lista statica di slave ai quali si connette all avvio. Gli slave che non sono raggiungibili in quel determinato istante, o che vengono persi durante la computazione, saranno ricontattati ad intervalli regolari per verificarne la nuova eventuale disponibilità. È importante notare quindi che la direzione della connessione va dal master agli slave. Una volta instaurata, la connessione resta aperta fino alla terminazione dello slave o del master. Allo stesso modo una volta terminata una computazione il master ricontatta tutti gli slave, preleva da ciascuno un file contenente una sintesi dei risultati ottenuti, ed eventualmente li recupera salvandoli sulla macchina che lo ospita. 17

21 CAPITOLO 3. REFACTORING ARCHITETTURA Modifiche apportate La precedente versione di GRIMD si è rivelata particolarmente adatta all utilizzo in un ambito di laboratorio, dove ogni computer si trova all interno della stessa rete e i requisiti di sicurezza sono limitati. Con l intento di estendere le capacità di GRIMD ad un ambito più ampio, accademico o aziendale, abbiamo scelto di mantenere la versione precedente di GRIMD per un utilizzo di laboratorio e sviluppare una versione web che consenta l utilizzo di computer appartenenti a diverse subnet, scavalcando i problemi dovuti alla presenza di NAT (Network Address Translation), e più utenti contemporaneamente e che, soprattutto, preservi l integrità di ciascuna macchina slave negando l accesso ad utenti malintenzionati. Maggiori dettagli sulla sicurezza saranno forniti nella successiva sezione. Nella versione precedente di GRIMD, era il master ad instaurare la connessione verso gli slave. Questo risulta essere un grosso limite architetturale nell ottica di fornire accesso ad un numero maggiore di utenti, infatti non era possibile contattare slave che non si trovavano nella stessa sottorete del master. Inoltre, dal momento che il master comunica con gli slave utilizzando il protocollo SMB e richiede la disponibilità di una determinata porta (di default TCP 8883) la presenza di firewall sulle macchine slave potrebbe impedire la comunicazione, a meno che non siano configurate appositamente. Si è pertanto pensato di usufruire di un servizio VPN (Virtual Private Network). Il server che ospita il master, dotato di Windows Server 2003, è particolarmente adatto a far da server anche nella VPN, essendo già raggiungibile da tutti tramite IP pubblico (yadamp.unisa.it). La nuova versione dello slave all avvio si preoccuperà di instaurare una connessione alla rete virtuale utilizzando il supporto nativo del sistema operativo tramite protocollo PPTP (Point-to-Point Tunneling Protocol).

22 CAPITOLO 3. REFACTORING ARCHITETTURA 19 Figura 3.1: Diagramma dell architettura di GRIMD Sicurezza Nella versione precedente di Grimd le password utilizzate per la comunicazione tra master e slave erano memorizzate in chiaro sul master e nel file batch di installazione dello slave. Dovendo la nuova versione lavorare con un insieme più vasto di slave, dislocati in diversi laboratori dell ateneo, si è deciso di memorizzare tali informazioni sensibili in un unico database consultabile solo dagli addetti ai lavori, per evitare intrusioni nel file system distribuito del sistema, anche da parte di computer che appartengono alla griglia. Verranno, inoltre, impostate per la cartella dello slave maggiori restrizioni, in modo tale da permettere solo all utente amministratore l accesso in lettura e scrittura. La connessione e la comunicazione alla VPN sono cifrate tramite MS- CHAPv2 (Microsoft Challenge Handshake Authentication Protocol) e MP-

23 CAPITOLO 3. REFACTORING ARCHITETTURA 20 PE (Microsoft Point-to-Point Encryption), che fa uso di RSA RC4 con chiave di sessione a 128bit. Qualunque operazione sul file system degli slave continuerà a richiedere username e password. GRIMD 1.1 GRIMD 1.2 password in chiaro rimozione file di nei file di configurazione configurazione e del master gestione dinamica degli account degli slave password in chiaro rimozione del file di in file batch di installazione installazione permessi non impostati accesso consentito per la directo- ry slave solo agli utenti grimd e administrator Tabella 3.1: Sicurezza in GRIMD 1.1 e Requisiti minimi Il codice sorgente del master e dello slave è stato scritto utilizzando i linguaggi VB.NET e C# appartenenti alla famiglia di linguaggi Microsoft.NET Framework, mentre per l interfaccia web è stato utilizzato ASP.NET. La comunicazione interprocesso avviene utilizzando WCF (Windows Communication Foundation), mentre lo spostamento dei files sfrutta il protocollo SMB. Per garantire il funzionamento del sistema pertanto è necessario che tutti i pc slave dispongano dei seguenti requisiti: Windows XP SP3 o successiva

24 CAPITOLO 3. REFACTORING ARCHITETTURA 21.NET Framework v.4 o successiva Raggiungibilità al file system locale tramite protocollo SMB (Configurazione del firewall su interfaccia VPN) Raggiungibilità tramite protocollo TCP alla porta 8883 (Configurazione del firewall su interfaccia VPN)

25 Capitolo 4 Struttura del sistema In questo capitolo saranno descritte nel dettaglio l architettura ed il funzionamento di tutte le componenti del sistema introdotte per svolgere il lavoro. Saranno riportati anche gli schemi relazionali delle tabelle che compongono il database. 4.1 Gestione utenti Dal momento che uno degli obiettivi principali è quello di fornire l accesso a GRIMD ad un determinato numero di utenti, si è pensato fosse necessario introdurre, per motivi di ordine, una semplice gerarchia tra questi ultimi. Sono infatti stati definiti due ruoli per gli utenti, uno con privilegi amministrativi e l altro con normale accesso al sistema. In particolare, l utente amministratore ha il potere di: Creare o eliminare nuovi utenti dal sistema e gestirne i ruoli. Alterare arbitrariamente l ordine dei lavori in coda. Eliminare o modificare la posizione dei lavori in coda. Terminare il sistema. 22

26 CAPITOLO 4. STRUTTURA DEL SISTEMA 23 Gli utenti normali possono invece sottomettere le macro per uno o più lavori, le quali una volta caricate vengono inserite nella coda. 4.2 Base dei dati In figura 4.1 è mostrato il diagramma ER della base dati utilizzata. Per esigenze di spazio sono mostrate solamente le entità ritenute di maggior importanza. Di seguito sarà riportata una breve descrizione per ogni entità. Figura 4.1: Diagramma Entità-Relazione della base di dati utilizzata per immagazzinare tutte le informazioni necessarie.

27 CAPITOLO 4. STRUTTURA DEL SISTEMA 24 Workset Rappresenta un lavoro caricato da un utente e mantiene traccia di tutte le informazioni relative come il path e il nome del file della macro, data di inizio e fine computazione, tipo di computazione, tipo di scheduler utilizzato ed utente proprietario. Slaves Qui sono memorizzate le informazioni di tutti gli slave disponibili. Indirizzo IP nella VPN, porta in ascolto, stato (online/offline), nome NetBIOS della macchina, numero di core per processore, versione del sistema operativo, username e password di accesso per GRIMD e data di ultimo accesso. Queue Questa tabella viene utilizzata per tener traccia di tutti i workset che sono presenti nella coda dei lavori e la relativa posizione. SecondaryQueue Analoga a Queue, con la differenza che viene utilizzata per tener traccia di tutti i workset nella coda secondaria. aspnet User Tabella gestita quasi interamente dalla Membership di ASP.NET per tener traccia di tutti gli utenti che sono abilitati ad accedere al sistema. aspnet Roles Tabella gestita dalla Membership di ASP.NET per tener traccia di tutti i ruoli degli utenti che sono abilitati ad accedere al sistema. La relazione di tipo molti-a-molti con gli utenti è mantenuta tramite la tabella aspnet UsersInRoles

28 CAPITOLO 4. STRUTTURA DEL SISTEMA Servizio di gestione Master Come già spiegato in precedenza abbiamo deciso di mantenere quanto più possibile della struttura originale di GRIMD, modificando solo ciò che era strettamente necessario. Nella precedente versione l avvio del master corrisponde con l avvio di un nuovo lavoro. Il workset nella nuova versione dovrà essere reperito dalla coda e disposto nell apposito path. La terminazione del lavoro corrisponde alla terminazione del master. Pertanto si è reso necessario introdurre un servizio, mantenuto costantemente in esecuzione, che avvii il master ogni volta che in testa alla coda è presente un lavoro da eseguire. Chiaramente è necessario che questo servizio possa comunicare con il modulo di gestione della coda per prelevare da questa il prossimo workset e che si preoccupi di tenere avviato il servizio di identificazione degli slaves per poter conoscere le risorse a disposizione che possono essere assegnate al workset in elaborazione. La figura 4.2 mostra il diagramma delle classi del servizio di gestione del master. Le classi MasterQueue e VPNIDResolver contengono le implementazioni dei contract dei servizi di gestione coda e di identificazione slave esposti dal servizio di gestione master tramite WCF Modulo di identificazione Slave Nella precedente versione di GRIMD era il master a tener traccia degli indirizzi di tutti i possibili slave, i quali venivano contattati ad intervalli regolari per verificarne la loro eventuale disponibilità. Nella nuova versione, sia per i motivi di sicurezza descritti nel capitolo precedente che a causa dalla presenza della VPN, non è più possibile tener traccia staticamente di tutti gli slave dal momento che l assegnazione degli indirizzi IP nella VPN avviene tramite l utilizzo di un server DHCP e quindi uno stesso indirizzo, nel tempo, può essere assegnato a slave diversi. Si è deciso quindi di gestire dinamicamente l intera situazione facendo in modo che siano gli slave a comunicare la loro

29 CAPITOLO 4. STRUTTURA DEL SISTEMA 26 Figura 4.2: Diagramma delle classi per il gestore del master. disponibilità al servizio di gestione del master, il quale conserva lo stato di tutti gli slave in un unico registro. Per identificare ogni slave, all atto della registrazione, è necessario che questi forniscano ogni volta un ID univoco assegnato loro dal sistema di gestione, tramite il quale sarà possibile tener traccia di tutte le informazioni relative. Nel caso che uno slave non fornisca un ID valido, o nel caso che non lo fornisca affatto, gli viene assegnato un nuovo ID e vengono reperite e memorizzate tutte le informazioni mostrate nella descrizione della base dati. In figura 4.3 è mostrato il diagramma delle classi per il servizio di identificazione slave. L interfaccia IVPNIDResolver rappresenta il contract esposto

30 CAPITOLO 4. STRUTTURA DEL SISTEMA 27 Figura 4.3: Diagramma delle classi per il servizio di identificazione slave. tramite WCF, mentre la classe VPNIDResolver ne fornisce l implementazione tramite l ausilio della classe GRIMDEntities utilizzata per l accesso alla base dati Modulo di gestione coda Nonostante per un utente sia prevista la possibilità di sottomettere più lavori, nella coda non potrà essere presente un lavoro dello stesso utente per più di una volta. Più precisamente il sistema si preoccuperà di gestire due code differenti, una primaria ed una secondaria. Nella coda primaria, per la quale è prevista una politica di gestione di tipo FIFO (First In First Out), è presente il vincolo di una singola presenza in coda per ogni utente al fine di impedire che si possa monopolizzare il sistema e tenerlo impegnato per un periodo di tempo troppo lungo. Nella coda secondaria invece non sono presenti vincoli, ogni utente puo inserire un numero illimitato di lavori. Il più anziano tra questi sarà spostato in coda primaria non appena si sarà liberato l unico posto disponibile per ciascun

31 CAPITOLO 4. STRUTTURA DEL SISTEMA 28 Figura 4.4: Diagramma delle classi per il modulo di gestione coda. utente. La coda secondaria è stata pensata per permettere di inserire in coda più lavori facendo in modo che venga data priorità all ordine di inserimento per utente, invece che per lavoro. In figura 4.4 è mostrato il diagramma delle classi del modulo di gestione coda. L interfaccia IMasterQueue rappresenta il contract in WCF che viene esposto al sistema di gestione coda per interagire con essa. La classe Master- Queue ne fornisce l implementazione tramite l utilizzo della classe ausiliaria QueueHandler che si preoccupa di mantenere lo stato della coda nel database utilizzando l apposita classe GRIMDEntities.

32 CAPITOLO 4. STRUTTURA DEL SISTEMA Modulo di controllo di stato del Master Tutti i dati riguardanti l andamento del lavoro, come ad esempio il numero di slave totali, disponibili o persi durante la computazione, sono contenuti solamente all interno del processo del master e quindi praticamente inaccessibili dall esterno. Figura 4.5: Diagramma delle classi per il modulo di controllo di stato del master. Per permettere l accesso a questi dati tramite il pannello di controllo utente presente sull interfaccia web, è stato necessario introdurre nel master un modulo che esponga all esterno la possibilità di reperirli e quindi di visualizzarli. Come si può vedere in figura 4.5 il contract WCF (IMasterStatus) contiene un semplice metodo che restituisce un oggetto contenente lo stato del lavoro in esecuzione all istante dell invocazione. Per l implementazione nella classe MasterStatus è stato creato un apposito bean, GRIMDStatus, che viene costantemente aggiornato dal master e restituito come risultato dell invocazione del metodo presente nell interfaccia.

33 CAPITOLO 4. STRUTTURA DEL SISTEMA Altre modifiche Di seguito viene riportato l elenco di modifiche, di minore impatto, apportate ai servizi già esistenti nella versione precedente che non sono state ancora presentate Master Sono state effettuate altre modifiche minori nel master per quanto riguarda la creazione dei file di log. Infatti, in origine, nei file di log si teneva traccia degli indirizzi IP degli slave che, allo stato attuale, non forniscono un informazione sufficiente per la loro identificazione a causa dei problemi precedentemente descritti. Sono quindi state apportate modifiche al logging facendo in modo che oltre all indirzzo IP venga memorizzato anche l ID di ogni slave FRED e GDUMP Le informazioni conservate nei file di log sono utilizzate successivamente dai servizi FRED e GDUMP rispettivamente per forzare l operazione di reduce e per il recupero dell intero insieme dei risultati conservati sugli slave. È da precisare che la nuova versione di GDUMP permette anche il recupero selettivo dei risultati e non obbligatoriamente quello dell intero insieme. È stato necessario modificare le versioni precedenti di FRED e GDUMP, sia a causa del cambiamento del formato di log che per permettere il loro funzionamento tramite gli ID degli slave, utilizzati al posto di indirizzi IP. Infatti ora per ogni job cotenuto nel workset viene effettuata la risoluzione dell ID dello slave associato utilizzando l apposito servizio. In tal modo è possibile controllare se lo slave di riferimento è disponibile ed eventualmente ottenerne l indirizzo IP corrente per contattarlo e prelevare i risultati di interesse.

34 CAPITOLO 4. STRUTTURA DEL SISTEMA Slave Le modifiche apportate allo slave riguardano essenzialmente l introduzione dell ingresso in VPN e della registrazione al servizio di identificazione. Dopo queste due fasi iniziali lo slave funziona esattamente come nella precedente versione, ad eccezione della gestione dei risultati memorizzati. Nella precedente versione infatti, all inizio di un nuovo lavoro, il master provvedeva ad inviare allo slave una richiesta RESET DFS che causava la cancellazione dell intero insieme di risultati memorizzati sullo slave. Nella nuova versione invece, a prescindere dall inizio di un nuovo lavoro, si garantisce che i risultati siano conservati per un periodo di tempo minimo pari a quattro giorni dall ultimazione del lavoro, dopo i quali non si garantisce più la permanenza di tali informazioni sulla macchina. Pertanto, se queste sono oggetto di interesse, è obbligatorio effettuarne il recupero da parte dell utente entro questo termine.

35 Conclusioni Per quanto i sistemi di grid computing siano oggi estremamente utilizzati, esistono molti problemi, di difficile soluzione, quali la gestione dell alto grado di eterogeneità e la sicurezza, che rendono improponibile un avvento del Grid in qualità di tecnologia pervasiva. Ad oggi, il suo utilizzo resta circoscritto a grandi attori in grado di poter effettuare investimenti importanti in manodopera specializzata in grado di gestire e utilizzare i sistemi Grid di presente generazione. Questo lavoro può essere considerato come la base di partenza per lo sviluppo di applicazioni distribuite condivise tra più utenti, da proseguire sia attraverso l approfondimento progettuale sia attraverso l implementazione di ulteriori sviluppi tecnologici. Il progetto nasce come tentativo di allargare l esperienza d uso di un sistema condividendolo in un gruppo più vasto di utenti, cercando di facilitare il più possibile la comunicazione tra le risorse interne al sistema, spesso impedite da servizi di protezione come firewall oppure come il NAT. Il sistema sviluppato rimane comunque un progetto sperimentale, durante il quale si sono scoperti numerosi risvolti interessanti. Sviluppi futuri potrebbero consistere in miglioramenti nell organizzazione e nella comunicazione interna al sistema, nello sviluppo dell applicazione slave con compatibilità per sistemi LINUX, nell introduzione del supporto di nuove applicazioni anche non inerenti al calcolo scientifico o nell inserimento di un sistema che renda possibile la distribuzione e quindi l esecuzione di un applicazione generica, sempre seguendo il modello di programmazione Map/Reduce. 32

36 Bibliografia [1] Alessandro Bove, Alfonso Martorelli, Luigi Di Biasi. Distributed Map/Reduce Grid for YASARA 2011 [2] SETI Institute (Search for Extra-Terrestrial Intelligence) [3] - SETI at home Classic berkeley.edu [4] Berkeley Open Infrastructure for Network Computing (BOINC) [5] Grid-Based e-infrastructure for computationally data-intensive application in medical sciences php 33

37 Appendice A Appendice A.1 Servizio di controllo stato Master A.1.1 IMasterStatus 1 namespace MasterStatusLib 2 { 3 [ S e r v i c e C o n t r a c t ] 4 p u b l i c i n t e r f a c e IMasterStatus 5 { 6 [ OperationContract ( IsOneWay = f a l s e ) ] 7 GRIMDStatus g e t S t a t u s ( ) ; 8 } 9 } A.1.2 MasterStatus 1 namespace MasterStatusLib 2 { 3 [ S e r v i c e B e h a v i o r ( InstanceContextMode = InstanceContextMode. S i n g l e ) ] 4 p u b l i c c l a s s MasterStatus : IMasterStatus 5 { 6 #r e g i o n V a r i a b i l i d i s t a n z a 7 8 p r i v a t e GRIMDStatus s t a t u s ; 9 p r i v a t e ServiceHost h o s t ; #endregion 12 34

38 APPENDICE A. APPENDICE #r e g i o n Implementazione i n t e r f a c c i a p u b l i c GRIMDStatus g e t S t a t u s ( ) { return s t a t u s ; 18 } #endregion #r e g i o n Metodi p u b b l i c i p u b l i c void L i s t e n ( ) 25 { 26 h o s t = new ServiceHost ( t h i s ) ; 27 h o s t. Open ( ) ; 28 } p u b l i c void Close ( ) 31 { h o s t. Close ( ) ; 34 } #endregion #r e g i o n P r o p r i e t à p u b l i c GRIMDStatus Status 41 { 42 s e t 43 { 44 s t a t u s = value ; 45 } 46 } #endregion 49 } p u b l i c c l a s s GRIMDStatus 52 { 53 #r e g i o n V a r i a b i l i d i s t a n z a p r i v a t e i n t numberofslave, a c t i v e S l a v e, l o s t S l a v e, MFFAQueue ; 56 p r i v a t e i n t t o t a l J o b s, completedjobs, slavelosscount, worktoreassign ; #endregion #r e g i o n P r o p r i e t à p u b l i c i n t SlaveLossCount

39 APPENDICE A. APPENDICE { 64 get { r eturn slavelosscount ; } 65 s e t { slavelosscount = value ; } 66 } p u b l i c i n t WorkToReassign 69 { 70 get { r eturn worktoreassign ; } 71 s e t { worktoreassign = value ; } 72 } p u b l i c i n t CompletedJobs 75 { 76 get { r eturn completedjobs ; } 77 s e t { completedjobs = value ; } 78 } p u b l i c i n t TotalJobs 81 { 82 get { r eturn t o t a l J o b s ; } 83 s e t { t o t a l J o b s = value ; } 84 } p u b l i c i n t MFFAQueue 87 { 88 get { r eturn MFFAQueue ; } 89 s e t { MFFAQueue = value ; } 90 } p u b l i c i n t LostSlave 93 { 94 get { r eturn l o s t S l a v e ; } 95 s e t { l o s t S l a v e = value ; } 96 } p u b l i c i n t ActiveSlave 99 { 100 get { r eturn a c t i v e S l a v e ; } 101 s e t { a c t i v e S l a v e = value ; } 102 } p u b l i c i n t NumberOfSlave 105 { 106 get { r eturn numberofslave ; } 107 s e t { numberofslave = value ; } 108 } #endregion 111 }

40 APPENDICE A. APPENDICE } A.2 Servizio di coda A.2.1 IMasterQueue 1 namespace QueueHandlerInterfaceLib 2 { 3 [ S e r v i c e C o n t r a c t ] 4 p u b l i c i n t e r f a c e IMasterQueue 5 { 6 [ OperationContract ( IsOneWay = f a l s e ) ] 7 Workset IsUserInQueue ( S t r i n g username, out i n t positioninqueue ) ; 8 9 [ OperationContract ( IsOneWay = f a l s e ) ] 10 void Enqueue ( S t r i n g user, S t r i n g macrofilename, Int16 scheduler, S t r i n g computation, S t r i n g workname) ; [ OperationContract ( IsOneWay = f a l s e ) ] 13 void RemoveFromQueue ( S t r i n g user ) ; [ OperationContract ( IsOneWay = f a l s e ) ] 16 void MoveTo( S t r i n g user, Int16 newindex ) ; [ OperationContract ( IsOneWay = f a l s e ) ] 19 Workset GetNextWorkset ( ) ; [ OperationContract ( IsOneWay = f a l s e ) ] 22 void RemoveCurrentWorkset ( ) ; [ OperationContract ( IsOneWay = f a l s e ) ] 25 void RemoveWorkset ( i n t id ) ; [ OperationContract ( IsOneWay = true ) ] 28 void StartDump ( Workset w, S t r i n g arg1, S t r i n g arg2 ) ; [ OperationContract ( IsOneWay = true ) ] 31 void Shutdown ( ) ; 32 } 33 } A.2.2 MasterQueue 1 namespace QueueHandlerInterfaceLib

41 APPENDICE A. APPENDICE 38 2 { 3 [ S e r v i c e B e h a v i o r ( InstanceContextMode = InstanceContextMode. PerCall ) ] 4 p u b l i c c l a s s MasterQueue : IMasterQueue 5 { 6 #r e g i o n V a r i a b i l i d i s t a n z a 7 8 p r i v a t e QueueHandler queue ; 9 p r i v a t e ServiceHost h o s t ; #endregion #r e g i o n C o s t r u t t o r e p u b l i c MasterQueue ( ) 16 { 17 queue = new QueueHandler ( ) ; 18 } #endregion #r e g i o n Implementazione i n t e r f a c c i a p u b l i c Workset IsUserInQueue ( s t r i n g username, out i n t positioninqueue ) 25 { 26 return queue. GetUserWorkset ( username, out positioninqueue ) ; 27 } p u b l i c void Enqueue ( S t r i n g user, S t r i n g remotefilename, Int16 scheduler, S t r i n g computation, S t r i n g workname) 30 { 31 C o n f i g u r a t i o n c o n f i g = ConfigurationManager. OpenExeConfiguration ( ConfigurationUserLevel. None ) ; WebClient c l i e n t = new WebClient ( ) ; S t r i n g newdir = c o n f i g. AppSettings. S e t t i n g s [ WorksetRepository ]. Value + remotefilename + \\ ; 36 S t r i n g URIWorkset = c o n f i g. AppSettings. S e t t i n g s [ URIWorksetBaseAddress ]. Value + remotefilename +. z i p ; 37 S t r i n g saveto = c o n f i g. AppSettings. S e t t i n g s [ WorksetRepository ]. Value + remotefilename +. z i p ; 38

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI SIMULAZIONE PROVA SCRITTA ESAME DI STATO PER LA DISCIPLINA di SISTEMI L assessorato al turismo di una provincia di medie dimensioni vuole informatizzare la gestione delle prenotazioni degli alberghi associati.

Dettagli

Ministero del Lavoro e delle Politiche Sociali

Ministero del Lavoro e delle Politiche Sociali Ministero del Lavoro e delle Politiche Sociali Prospetto Informativo on-line Standard tecnici del sistema informativo per l invio telematico del Prospetto Informativo Documento: UNIPI.StandardTecnici Revisione

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Introduzione a Windows XP Professional Installazione di Windows XP Professional Configurazione e gestione di account utente

Introduzione a Windows XP Professional Installazione di Windows XP Professional Configurazione e gestione di account utente Programma Introduzione a Windows XP Professional Esplorazione delle nuove funzionalità e dei miglioramenti Risoluzione dei problemi mediante Guida in linea e supporto tecnico Gruppi di lavoro e domini

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Il Sistema Operativo Gerarchia del software

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete Sistemi Operativi di Rete Estensione dei Sistemi Operativi standard con servizi per la gestione di risorse in rete locale Risorse gestite: uno o più server di rete più stampanti di rete una o più reti

Dettagli

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL.1. Introduzione Legalmail è un servizio di posta elettronica che garantisce un elevato grado di affidabilità e sicurezza. Esso consente al Cliente

Dettagli

Tecnologie Informatiche. service. Sicurezza aziendale Servizi Internet e Groupware

Tecnologie Informatiche. service. Sicurezza aziendale Servizi Internet e Groupware Tecnologie Informatiche service Sicurezza aziendale Servizi Internet e Groupware Neth Service è un sistema veloce, affidabile e potente per risolvere ogni necessità di comunicazione. Collega la rete Aziendale

Dettagli

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer Tecnologie per il Web Il web: architettura e tecnologie principali Una analisi delle principali tecnologie per il web Tecnologie di base http, ssl, browser, server, firewall e proxy Tecnologie lato client

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 FileMaker Pro 13 Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054

Dettagli

Windows Vista, il nuovo sistema operativo Microsoft che cerca le giuste risposte ai quesiti di sicurezza

Windows Vista, il nuovo sistema operativo Microsoft che cerca le giuste risposte ai quesiti di sicurezza Windows Vista, il nuovo sistema operativo Microsoft che cerca le giuste risposte ai quesiti di sicurezza Microsoft Windows è il sistema operativo più diffuso, ma paradossalmente è anche quello meno sicuro.

Dettagli

Petra VPN 3.1. Guida Utente

Petra VPN 3.1. Guida Utente Petra VPN 3.1 Guida Utente Petra VPN 3.1: Guida Utente Copyright 1996, 2004 Link s.r.l. (http://www.link.it) Questo documento contiene informazioni di proprietà riservata, protette da copyright. Tutti

Dettagli

Sicurezza a livello IP: IPsec e le reti private virtuali

Sicurezza a livello IP: IPsec e le reti private virtuali Sicurezza a livello IP: IPsec e le reti private virtuali Davide Cerri Sommario L esigenza di proteggere l informazione che viene trasmessa in rete porta all utilizzo di diversi protocolli crittografici.

Dettagli

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 VERITAS StorageCentral 1 USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 1. Panoramica di StorageCentral...3 2. StorageCentral riduce il costo totale di proprietà per lo storage di Windows...3 3. Panoramica

Dettagli

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini COMUNE DI NUORO D O C U M E N T O D I S P E C I F I C A P E R I L P R O D O T T O Mausoleo PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE Arch.Marco Cerina Ing.Enrico Dini Descrizione introduttiva

Dettagli

Corso Sviluppatore servizi per il Web (WCF) Lezione 01

Corso Sviluppatore servizi per il Web (WCF) Lezione 01 01 Introduzione Introduzione alla tecnologia WCF Premessa Il corso su WCF di cui state leggendo la prima lezione, vi guiderà alla scoperta di questa nuova tecnologia introdotta da Microsoft per venire

Dettagli

Installazione SQL Server 2005 Express Edition

Installazione SQL Server 2005 Express Edition Supporto On Line Allegato FAQ FAQ n.ro MAN-6S4ALG7637 Data ultima modifica 25/08/2010 Prodotto Tutti Modulo Tutti Oggetto Installazione SQL Server 2005 Express Edition In giallo sono evidenziate le modifiche/integrazioni

Dettagli

nstallazione di METODO

nstallazione di METODO nstallazione di METODO In questo documento sono riportate, nell ordine, tutte le operazioni da seguire per una corretta installazione di Metodo. Per procedere con l installazione è necessario avere a disposizione

Dettagli

W2000 WXP WVista W7 Ubuntu 9.10 VPN client - mini howto (ovvero come installare VPN client su quasi tutto)

W2000 WXP WVista W7 Ubuntu 9.10 VPN client - mini howto (ovvero come installare VPN client su quasi tutto) W2000 WXP WVista W7 Ubuntu 9.10 VPN client - mini howto (ovvero come installare VPN client su quasi tutto) Augusto Scatolini (webmaster@comunecampagnano.it) Ver. 1.0 Gennaio 2010 Una Virtual Private Network

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete)

Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete) Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Client versione 14.2 con licenza di rete. Questo documento è stato

Dettagli

VERIS. Manuale Utente - Verifica Emissibilità, Inquiry Revoche - - Installazione e gestione -

VERIS. Manuale Utente - Verifica Emissibilità, Inquiry Revoche - - Installazione e gestione - Manuale Utente - Verifica Emissibilità, Inquiry Revoche - - Installazione e gestione - Indice 1. Scopo e campo di applicazione...3 2. Riferimenti...3 3. Definizioni e acronimi...3 4. Introduzione...3 5.

Dettagli

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

Sistemi Operativi. Conclusioni e nuove frontiere

Sistemi Operativi. Conclusioni e nuove frontiere Sistemi Operativi (modulo di Informatica II) Conclusioni e nuove frontiere Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Definizione di sistema operativo Evoluzione futura

Dettagli

Introduzione alla famiglia di soluzioni Windows Small Business Server

Introduzione alla famiglia di soluzioni Windows Small Business Server Introduzione alla famiglia di soluzioni Windows Small Business Server La nuova generazione di soluzioni per le piccole imprese Vantaggi per le piccole imprese Progettato per le piccole imprese e commercializzato

Dettagli

Il File System. È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati

Il File System. È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati Il File System È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati Le operazioni supportate da un file system sono: eliminazione di dati modifica

Dettagli

Punti fondamentali sulla tecnologia del sistema ABScard

Punti fondamentali sulla tecnologia del sistema ABScard Punti fondamentali sulla tecnologia del sistema ABScard Architettura ABSCARD Pagina 1 di 13 INDICE GENERALE 1 Architettura...3 1.1 Introduzione...3 1.1.1 Sicurezza...4 1.1.2 Gestione...5 1.1.3 ABScard

Dettagli

Manuale di Integrazione IdM-RAS

Manuale di Integrazione IdM-RAS IdM-RAS Data: 30/11/09 File: Manuale di integrazione IdM-RAS.doc Versione: Redazione: Sardegna IT IdM-RAS Sommario 1 Introduzione... 3 2 Architettura del sistema... 4 2.1 Service Provider... 4 2.2 Local

Dettagli

1) Una periferica di input è: A) il mouse B) il monitor C) la stampante

1) Una periferica di input è: A) il mouse B) il monitor C) la stampante CONOSCENZE DI INFORMATICA 1) Una periferica di input è: A) il mouse B) il monitor C) la stampante 2) Una memoria in sola lettura con la particolarità di essere cancellata in particolari condizioni è detta:

Dettagli

La soluzione software per CdA e Top Management

La soluzione software per CdA e Top Management La soluzione software per CdA e Top Management DATI E DOCUMENTI PROTETTI Sempre. Ovunque. La Soluzione per Quando si parla di fusioni e acquisizioni, di cambiamenti di gestione, di pianificazione o di

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

14 maggio 2010 Versione 1.0

14 maggio 2010 Versione 1.0 SOFTWARE PER LA GESTIONE DI UN SISTEMA PER LA RILEVAZIONE DELLA QUALITÀ PERCEPITA DAGLI UTENTI, NEI CONFRONTI DI SERVIZI RICHIESTI ALLA PUBBLICA AMMINISTRAZIONE, ATTRAVERSO L'UTILIZZO DI EMOTICON. 14 maggio

Dettagli

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO Standard tecnici Gli standard tecnici di riferimento adottati sono conformi alle specifiche e alle raccomandazioni emanate dai principali

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

Dettagli

Reti e Domini Windows 2000. Corso di Amministrazione di Reti A.A. 2002/2003

Reti e Domini Windows 2000. Corso di Amministrazione di Reti A.A. 2002/2003 Reti e Domini Windows 2000 Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

SICUREZZA. Sistemi Operativi. Sicurezza

SICUREZZA. Sistemi Operativi. Sicurezza SICUREZZA 14.1 Sicurezza Il Problema della Sicurezza Convalida Pericoli per i Programmi Pericoli per il Sistema Difendere i Sistemi Scoperta di Intrusioni Cifratura Esempio: Windows NT 14.2 Il Problema

Dettagli

Sistemi Operativi SICUREZZA. Sistemi Operativi. D. Talia - UNICAL 14.1

Sistemi Operativi SICUREZZA. Sistemi Operativi. D. Talia - UNICAL 14.1 SICUREZZA 14.1 Sicurezza Il Problema della Sicurezza Convalida Pericoli per i Programmi Pericoli per il Sistema Difendere i Sistemi Scoperta di Intrusioni Cifratura Esempio: Windows NT 14.2 Il Problema

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono

Dettagli

Dal protocollo IP ai livelli superiori

Dal protocollo IP ai livelli superiori Dal protocollo IP ai livelli superiori Prof. Enrico Terrone A. S: 2008/09 Protocollo IP Abbiamo visto che il protocollo IP opera al livello di rete definendo indirizzi a 32 bit detti indirizzi IP che permettono

Dettagli

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08 Università di Modena e Reggio Emilia Panoramica Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08 Docente: andrea.bulgarelli@gmail.com Argomento: struttura SQL Server (1.0)! Componenti! Edizioni!

Dettagli

I benefici di una infrastruttura IT sicura e ben gestita: come fare di più con meno

I benefici di una infrastruttura IT sicura e ben gestita: come fare di più con meno I benefici di una infrastruttura IT sicura e ben gestita: come fare di più con meno I benefici di una infrastruttura IT sicura e ben gestita: come fare di più con meno In questi ultimi anni gli investimenti

Dettagli

Sicurezza negli ambienti di testing. Grancagnolo Simone Palumbo Claudio

Sicurezza negli ambienti di testing. Grancagnolo Simone Palumbo Claudio Sicurezza negli ambienti di testing Grancagnolo Simone Palumbo Claudio Obiettivo iniziale: analizzare e testare il Check Point VPN-1/FireWall-1 Condurre uno studio quanto più approfondito possibile sulle

Dettagli

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity.

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. UBIQUITY 6 e Server Privato Introduzione Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 21/06/2015 Disclaimer

Dettagli

1.1 - Crittografia sulla infrastruttura trasmissiva tra le stazioni remote Rilheva il centro di telecontrollo

1.1 - Crittografia sulla infrastruttura trasmissiva tra le stazioni remote Rilheva il centro di telecontrollo SISTEMA DI TELECONTROLLO RILHEVA GPRS (CARATTERISTICHE DEL VETTORE GPRS E SICUREZZE ADOTTATE) Abstract: Sicurezza del Sistema di Telecontrollo Rilheva Xeo4 ha progettato e sviluppato il sistema di telecontrollo

Dettagli

w w w. n e w s o f t s r l. i t Soluzione Proposta

w w w. n e w s o f t s r l. i t Soluzione Proposta w w w. n e w s o f t s r l. i t Soluzione Proposta Sommario 1. PREMESSA...3 2. NSPAY...4 2.1 FUNZIONI NSPAY... 5 2.1.1 Gestione degli addebiti... 5 2.1.2 Inibizione di un uso fraudolento... 5 2.1.3 Gestione

Dettagli

MyFRITZ!, Dynamic DNS e Accesso Remoto

MyFRITZ!, Dynamic DNS e Accesso Remoto MyFRITZ!, Dynamic DNS e Accesso Remoto 1 Introduzione In questa mini-guida illustreremo come accedere da Internet al vostro FRITZ!Box in ufficio o a casa, quando siete in mobilità o vi trovate in luogo

Dettagli

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione Comunicazioni sicure su Internet: https e SSL Fisica dell Informazione Il servizio World Wide Web (WWW) Come funziona nel dettaglio il Web? tre insiemi di regole: Uniform Resource Locator (URL) Hyper Text

Dettagli

Tecnologie Informatiche. security. Rete Aziendale Sicura

Tecnologie Informatiche. security. Rete Aziendale Sicura Tecnologie Informatiche security Rete Aziendale Sicura Neth Security è un sistema veloce, affidabile e potente per la gestione della sicurezza aziendale, la protezione della rete, l accesso a siti indesiderati

Dettagli

Co.El.Da. Software S.r.l. Coelda.Ne Caratteristiche tecniche

Co.El.Da. Software S.r.l.  Coelda.Ne Caratteristiche tecniche Co..El. Da. Software S..r.l.. Coelda.Net Caratteristiche tecniche Co.El.Da. Software S.r.l.. Via Villini Svizzeri, Dir. D Gullì n. 33 89100 Reggio Calabria Tel. 0965/920584 Faxx 0965/920900 sito web: www.coelda.

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla

Dettagli

La Soluzione per CdA e Top Management. La soluzione è Secure Board by Boole Server

La Soluzione per CdA e Top Management. La soluzione è Secure Board by Boole Server La Soluzione per Fusioni e acquisizioni, changing management, pianificazione e sviluppo del business, la documentazione correlata ai consigli di amministrazione, il corretto utilizzo dei documenti riservati

Dettagli

Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di

Dettagli

Base Dati Introduzione

Base Dati Introduzione Università di Cassino Facoltà di Ingegneria Modulo di Alfabetizzazione Informatica Base Dati Introduzione Si ringrazia l ing. Francesco Colace dell Università di Salerno Gli archivi costituiscono una memoria

Dettagli

Guida all installazione di METODO

Guida all installazione di METODO Guida all installazione di METODO In questo documento sono riportate, nell ordine, tutte le operazioni da seguire per una corretta installazione di Metodo. Per procedere con l installazione è necessario

Dettagli

Classificazione del software

Classificazione del software Classificazione del software Classificazione dei software Sulla base del loro utilizzo, i programmi si distinguono in: SOFTWARE Sistema operativo Software applicativo Sistema operativo: una definizione

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Si S curezza a sw w net il c orr r e r tto design del t uo s istema i nform r atico una soluzione

Si S curezza a sw w net il c orr r e r tto design del t uo s istema i nform r atico una soluzione Sicurezza asw net il corretto design del tuo sistema informatico una soluzione Sicurezza asw net un programma completo di intervento come si giunge alla definizione di un programma di intervento? l evoluzione

Dettagli

AREA SCIENCE PARK. I servizi ICT

AREA SCIENCE PARK. I servizi ICT I servizi ICT AREA Science Park mette a disposizione dei suoi insediati una rete telematica veloce e affidabile che connette tra loro e a Internet tutti gli edifici e i campus di Padriciano, Basovizza

Dettagli

1) La rete INTERNET pag. 106-110 Origini della rete INTERNET RETE ARPANET geograficamente distanti esigenze MILITARI

1) La rete INTERNET pag. 106-110 Origini della rete INTERNET RETE ARPANET geograficamente distanti esigenze MILITARI 1) La rete INTERNET pag. 106-110 Origini della rete INTERNET: RETE ARPANET:collegava computer geograficamente distanti per esigenze MILITARI, poi l uso venne esteso alle UNIVERSITA ed in seguitoatuttiglialtri.

Dettagli

Petra VPN 2.7. Guida Utente

Petra VPN 2.7. Guida Utente Petra VPN 2.7 Guida Utente Petra VPN 2.7: Guida Utente Copyright 1996, 2001 Link s.r.l. (http://www.link.it) Questo documento contiene informazioni di proprietà riservata, protette da copyright. Tutti

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Il Web Server e il protocollo HTTP

Il Web Server e il protocollo HTTP Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

Installazione di una rete privata virtuale (VPN) con Windows 2000

Installazione di una rete privata virtuale (VPN) con Windows 2000 Pagina 1 di 8 Microsoft.com Home Mappa del sito Cerca su Microsoft.com: Vai TechNet Home Prodotti e tecnologie Soluzioni IT Sicurezza Eventi Community TechNetWork Il programma TechNet Mappa del sito Altre

Dettagli

SCOoffice Mail Connector for Microsoft Outlook. Guida all installazione Outlook 97, 98 e 2000

SCOoffice Mail Connector for Microsoft Outlook. Guida all installazione Outlook 97, 98 e 2000 SCOoffice Mail Connector for Microsoft Outlook Guida all installazione Outlook 97, 98 e 2000 Rev. 1.1 4 dicembre 2002 SCOoffice Mail Connector for Microsoft Outlook Guida all installazione per Outlook

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Single Sign On sul web

Single Sign On sul web Single Sign On sul web Abstract Un Sigle Sign On (SSO) è un sistema di autenticazione centralizzata che consente a un utente di fornire le proprie credenziali una sola volta e di accedere a molteplici

Dettagli

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows i SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows Per ulteriori informazioni sui prodotti software SPSS Inc., visitare il sito Web all indirizzo http://www.spss.it o contattare: SPSS

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

List Suite 2.0. Sviluppo Software Il Telefono Sas 10/06/2010

List Suite 2.0. Sviluppo Software Il Telefono Sas 10/06/2010 2010 List Suite 2.0 Sviluppo Software Il Telefono Sas 10/06/2010 List Suite 2.0 List Suite 2.0 è un tool software in grado di archiviare, analizzare e monitorare il traffico telefonico, effettuato e ricevuto

Dettagli

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL.1. Introduzione Legalmail è il servizio di posta elettronica con valore legale realizzato da InfoCamere. Esso consente al Cliente di disporre di

Dettagli

Capitolo 3: Strutture dei sistemi operativi

Capitolo 3: Strutture dei sistemi operativi Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione

Dettagli

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica CL3 - Biotecnologie Orientarsi nel Web Prof. Mauro Giacomini Dott. Josiane Tcheuko Informatica - 2006-2007 1 Obiettivi Internet e WWW Usare ed impostare il browser Navigare in internet

Dettagli

Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB

Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB Servizi di connessione Prodotti a supporto del business Per sfruttare al meglio una rete di ricarica per veicoli

Dettagli

Reti e Internet: introduzione

Reti e Internet: introduzione Facoltà di Medicina - Corso di Laurea in Logopedia Corso di Informatica III anno Prof. Crescenzio Gallo Reti e Internet: introduzione c.gallo@unifg.it Reti e Internet: argomenti Tipologie di reti Rete

Dettagli

Sme.UP Web Application

Sme.UP Web Application Sme.UP Web Application Web Application Web.UP Una interfaccia web per i vostri dati gestionali Il modulo applicativo Web.UP fornisce al progettista di siti Internet una serie di potenti strumenti per l'integrazione

Dettagli

2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011. Andrea Carnevali R&D Director GESINF S.r.l.

2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011. Andrea Carnevali R&D Director GESINF S.r.l. 2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011 Andrea Carnevali R&D Director GESINF S.r.l. Il progetto 2G è il nome della piattaforma che consentirà l evoluzione tecnologica

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

Dettagli

Una novità di Microsoft per il lancio sul mercato di Microsoft Visual Studio 2005 è stata quella sia

Una novità di Microsoft per il lancio sul mercato di Microsoft Visual Studio 2005 è stata quella sia STRUMENTI DI APPROCCIO PER IL CORSO VISUAL BASIC 2005 Versione Express Edition Premessa Versioni Express Edition di Visual Studio 2005 Una novità di Microsoft per il lancio sul mercato di Microsoft Visual

Dettagli

Protezione delle informazioni in SMart esolutions

Protezione delle informazioni in SMart esolutions Protezione delle informazioni in SMart esolutions Argomenti Cos'è SMart esolutions? Cosa si intende per protezione delle informazioni? Definizioni Funzioni di protezione di SMart esolutions Domande frequenti

Dettagli

Registro unico Antiriciclaggio

Registro unico Antiriciclaggio Registro unico Antiriciclaggio VERSIONE PROFESSIONISTI E CED VERSIONE 4.0.0 Sommario Introduzione... 4 Requisiti di sistema... 5 Installazione del software... 6 Verifica automatica dei requisiti di installazione...

Dettagli

Istituto Zooprofilattico Sperimentale dell Umbria e delle Marche

Istituto Zooprofilattico Sperimentale dell Umbria e delle Marche VIsualizzazione Esami Web (VIEW) Regolamentazione accesso VIEW (VIsualizzazione Esami Web) Regolamentazione accesso Pagina 1 di 7 Indice Generalità e regolamentazione accesso... 3 Profilo di accesso...

Dettagli

Parte II: Reti di calcolatori Lezione 9

Parte II: Reti di calcolatori Lezione 9 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 9 Martedì 1-04-2014 1 Applicazioni P2P

Dettagli

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

Introduzione a Internet e al World Wide Web

Introduzione a Internet e al World Wide Web Introduzione a Internet e al World Wide Web Una rete è costituita da due o più computer, o altri dispositivi, collegati tra loro per comunicare l uno con l altro. La più grande rete esistente al mondo,

Dettagli