Università degli Studi di Napoli Federico II

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università degli Studi di Napoli Federico II"

Transcript

1 Università degli Studi di Napoli Federico II Scuola Politecnica e delle Scienze di Base Area Didattica Scienze MM.FF.NN. Master di I Livello in Tecnologie per il CAlcolo Scientifico ad Alte Prestazioni - CASAP Tesi di Master GAPP: Un'applicazione Android per la piattaforma GaaS Relatori Prof. Giuliano Laccetti Ing. Giovanni Battista Barone Anno Accademico Candidato Andrea Solla matr. Z62/000006

2 Indice PREFAZIONE...4 INTRODUZIONE...5 i. Il contesto di lavoro: progetto GaaS...5 ii. Gli obiettivi del lavoro di tesi Il problema e l'ambiente di riferimento L'ambiente hardware e software Il glossario Specifiche di prodotto I casi d'uso Lato client Lato server Strumenti e progettazione Modalità di comunicazione tra client e server Un linguaggio di comunicazione universale: il JSON Cifratura della comunicazione Diagramma delle classi Lato client Lato server Diagrammi di sequenza Lato client Lato server Il database MySQL...34 Pagina 2 di 51

3 Tabella USERS Tabella SITI Tabella ELEMENTI Tabella RISORSE Tabella RETE Tabella IP Tabella FLAVOR Tabella ESECUZIONI Diagramma EER Il Prodotto finale: GAPP Login Registrazione utente Schermata gestione siti Eliminazione sito Creazione sito Creazione elemento Visualizzazione dettagli e gestione elemento Conclusioni e sviluppi futuri...50 Pagina 3 di 51

4 PREFAZIONE Il lavoro svolto in questa tesi si colloca in un contesto progettuale più ampio che ha l'obiettivo di realizzare una piattaforma, GaaS, per l'integrazione dei paradigmi di Grid e Cloud computing. L'idea progettuale è un'iniziativa del gruppo di gestione del datacenter SCoPE (scopeadmin). Il Master CASAP ha fornito l'occasione e le persone per consolidare l'idea progettuale, già in parte realizzata negli ultimi due anni, attraverso la costituzione di un gruppo di lavoro al quale hanno partecipato quattro studenti del Master CASAP (F. Iannone, C. Napolitano, S. Scamardella e A. Solla) e i membri del gruppo di gestione del datacenter ScoPE (tutor relatori delle rispettive tesi di Master). Ciascuno degli studenti coinvolti ha contribuito alla definizione e all'arricchimento dell'architettura generale di GaaS, nonché all'implementazione di specifici servizi di gestione o di accesso. L'approccio utilizzato per lo svolgimento delle attività ha richiesto periodici incontri di coordinamento tra tutti i partecipanti al gruppo di lavoro, nonchè una stretta collaborazione tra gli studenti coinvolti nella realizzazione delle varie attività. Tutto il lavoro è stato svolto su un set di risorse del datacenter SCoPE dedicate all'allestimento dell'architettura di riferimento e una versione prototipale del prodotto realizzato è attualmente disponibile sulle risorse suddette. Pagina 4 di 51

5 INTRODUZIONE i. Il contesto di lavoro: progetto GaaS Con l'aumentare della complessita dei problemi nel calcolo scientifico e nella vita di tutti i giorni, le singole macchine anche se dotate di CPU multi-core molto performanti, risultano essere insufficienti per l'esecuzione di applicazioni necessarie alla risoluzione di problemi complessi. E' proprio da questa necessita che negli ultimi anni si e diffuso l'utilizzo di infrastrutture di calcolo parallelo e distribuito basate sull'utilizzo di diversi paradigmi tra i quali i più diffusi oggi sono Grid e Cloud. Anche se l'utilizzo del paradigma Grid si è molto diffuso all'interno della comunità scientifica, esso presenta alcuni svantaggi legati ad esempio alla staticità del modello di aggregazione delle risorse che rende complicato (se non impossibile) aggiungere, rimuovere o modificare dinamicamente risorse di calcolo o storage in un' infrastruttura Grid già esistente. La configurazione dei servizi Grid è infatti demandata esclusivamente all'amministratore del sistema e non può avvenire ondemand. Di contro, il Cloud computing sembra essere dotato di quella flessibilità che manca al Grid computing. Ed è proprio da questa osservazione che nasce l'idea di sfruttare l'elasticità del Cloud computing per realizzare infrastrutture Grid più dinamiche ed eventualmente fornite on-demand. In parole povere si tratta di virtualizzare l'ambiente Grid edi fornirlo all'utente come servizio Cloud creando, così, una particolare piattaforma Cloud di tipo PaaS (Platform as a Service) [1] che prende il nome appunto di GaaS (Grid as a Service) [2]. Il progetto GaaS nasce con l'obiettivo di realizzare servizi Grid virtuali (di calcolo e storage) utilizzando risorse Cloud private (o, in previsione, pubbliche). In particolare, in questo lavoro, l'attenzione è focalizata sul servizio GSS (Grid Site Pagina 5 di 51

6 Service) di GaaS, ovvero, su quel servizio che si occupa dell integrazione, in un infrastruttura Grid completa di servizi di alto livello, di un sito Grid completo di servizi di calcolo (Computing Element e Worker Nodes), di storage (Storage Element) e di un sistema informativo di basso livello (SiteBDII). ii. Gli obiettivi del lavoro di tesi Con la nascita e la diffusione su larga scala dei moderni dispositivi mobili o smartphone, l'attività degli sviluppatori di software si è estesa anche alla creazioni di applicazioni eseguibili su tali dispositivi: le APP. Grazie alle loro capacità computazionali, oramai, questi devices sono assimilabili a veri e propri personal computer dai costi, in alcuni casi, molto contenuti. Inoltre, il fatto che questi siano perennemente connessi alla rete, li rendono un'ottima piattaforma per l'accesso a servizi remoti. Tali caratteristiche, unite al fatto che questi dispositivi sono alla portata di tutti, ci hanno convinto ad investire su di essi per lo sviluppo di software per il management di GaaS. L'obiettivo di questa tesi è stato quello di progettare e sviluppare GAPP, un'applicazione ANDROID [3] che, da remoto, consenta la creazione e la gestione di siti Grid virtuali. La app interagisce con le necessarie funzionalità di basso livello implementate nell'ambito di altre due tesi di Master dagli studenti Ciro Napolitano e Francesco Iannone. Lo scopo ultimo di GAPP è facilitare di molto la vita degli amministratori di sistema che, in qualsiasi momento ed in qualsiasi luogo, possono gestire le Grid virtuali della piattaforma GaaS, garantendo in tal modo un più elevato livello di servizio per gli utenti. Pagina 6 di 51

7 1. Il problema e l'ambiente di riferimento In questa sezione viene riportata l'architettura di riferimento per il lavoro nonché le funzionalità richieste per l'applicazione GAPP L'ambiente hardware e software L'architettura utilizzata in questo progetto è una classica struttura client/server a più livelli. Come si vede dalla Figura 1, alla base (livello 0) di questa architettura troviamo una piattaforma di Cloud computing prototipale basata su Openstack composta da un controller node che fornisce informazioni sulle risorse disponibili e sulle istanze di risorse già create, e da due compute node che, invece, si occupano di ospitare le macchine virtuali istanziate. Ad un livello superiore (livello 1) dell'architettura c'è il GaaS server, che fornisce gli strumenti per l'interoperatività tra la piattaforma Openstack e il client mobile: esso è client agli occhi del controller Openstack, al quale invierà richieste relative alla creazione, eliminazione e visualizzazione degli stati delle istanze in esecuzione sul cloud, mentre è un server agli occhi del client mobile (livello 2 dell'architettura) poiché risponde alle sue richieste dell'utente. In particolare, al livello 1 dell'architettura (su cui si è focalizzata l'attenzione di questo lavoro di tesi) sono presenti: Un server Tomcat: che si occuperà di eseguire la Java servlet che comunicano direttamente con il device mobile [4]. Un server MySQL: per la memorizzazione delle informazioni di GAPP I client di OpenStack necessari all'implementazione dei servizi di basso livello che GAPP invoca. Infine, al livello d'astrazione più alto, si trova il client, rappresentato da un'applicazione Android che, tramite una comoda interfaccia grafica, da la possibilità all'utente di creare e gestire siti Grid virtuali e di accedervi come se Pagina 7 di 51

8 fossero reali macchine fisiche astraendo completamente il motore OpenStack sottostante. Figura 1: Schema dell'archiettura hardware/software di riferimento La scelta di uno schema architetturale a più livelli garantisce un elevato livello di trasparenza grazie al quale l'utente finale non dovrà assolutamente curarsi delle modalità di gestione e realizzazione delle macchine virtuali sottostanti, ma ricoprirà semplicemente il ruolo di utilizzatore. Inoltre l'approccio consente di demandare tutte le operazioni più onerose ai livelli sottostanti sollevando il client Android da eccessivi carichi di lavoro. Questo da la possibilità di installare il client anche su i terminali Android di prima generazione dotati di ridottissime risorse di calcolo. Infine, grazie alle caratteristiche di modularità dell'architettura, ogni componente può essere sostituita senza troppe complicazioni. Pagina 8 di 51

9 1.2. Il glossario Prima di iniziare la progettazione, è opportuno analizzare la lista delle principali parole chiavi che si incontreranno durante il corso di questa tesi. Sito Grid: è una raccolta di risorse informatiche interconnesse atte a raggiungere un obiettivo comune. Elemento: sono le risorse di cui dispone il sito Grid e a seconda del ruolo svolto, possono essere suddivisi in quattro differenti categorie: Computing Element (CE), Worker Node (WN), Storage Element (SE) e Site BDII (SB). Computing Element: elemento in grado di controllare e monitorare la potenza computazionale del sito Grid, fornendo un interfaccia uniforme a queste risorse. Worker Node: sono quelle macchine adibite al calcolo computazionale all interno di un sito. Per la loro gestione/monitoraggio vengono installati su di essi diversi client. Storage Element: è il componente a cui viene affidata la fase di memorizzazione delle informazioni:esso infatti offre un accesso uniforme allo spazio disco presente sulla macchina. Questo elemento della griglia può comodamente controllare un enorme numero di array di dischi di varia natura, e quindi diversi Terabyte di dati. Site BDII: è il componente contenente il sistema informativo della griglia. Di norma, questo elemento è costituito da un server LDAP standard che viene aggiornato da un processo esterno. Certificato X509: sono dei file, con una validità temporale limitata, usati per garantire l'identità di un soggetto, sia esso una macchina o una persona. Tale certificato, fornito da un ente terzo fidato e riconosciuto come Certification Authority (CA), è a sua volta autenticato per evitarne la falsificazione attraverso una firma digitale (chiave privata). Utente amministratore: è l'utente che ha il pieno accesso al sistema; Esso può effettuare la creazione di nuovi siti e elementi e visualizzare e gestire tutti i siti in esecuzione sul sistema, nonché accedere direttamente alle istanze tramite una connessione SSH. Pagina 9 di 51

10 Utente normale: è una tipologia di utente con accesso limitato; Esso può effettuare la creazione di nuovi siti ed elementi entro certi limiti, e può visualizzare e gestire esclusivamente i siti di sua proprietà Specifiche di prodotto Una volta definito il vocabolario di riferimento, bisogna descrivere le funzionalità del prodotto da realizzare. GAPP è un'applicazione mobile per Android per la gestione delle risorse grid istanziate sulla piattaforma GaaS. L'app necessita di un sistema di autenticazione dell'utente basato su certificati X509; Questa infatti deve essere in grado di aprire il certificato, estrarre le informazioni che identificano univocamente l'utente (in particolare la chiave pubblica e il nome utente) ed inviarle al server remoto, il quale si occuperà della profilatura (normale o amministratore) e provvederà al rilascio dei permessi idonei al tipo di utente. Una volta superata la fase di autenticazione, l'utente si trova nella schermata principale dal quale può creare un nuovo sito Grid o modificarne uno già esistente inserendo o eliminando elementi da questo. Inoltre, deve poter visualizzare le informazioni generali dei singoli elementi dei siti già istanziati (es. stato, indirizzo IP, creatore...ecc). Inoltre l'applicazione deve consentire di gestire i singoli elementi, dando la possibilità di accenderli, spegnerli e riavviarli come se fossero vere e proprie macchine fisiche; Infine gli utenti amministratori, devono poter gestire in maniera diretta agli elementi accedendovi tramite sessioni SSH. Pagina 10 di 51

11 1.4. I casi d'uso Lavoro preliminare alla realizzazione del lavoro è stato quello relativo ad una prima analisi dei requisiti volta all'individuazione delle funzionalità da implementare in questa prima versione del prodotto. Nel prossimo paragrafo sono riportati alcuni diagrammi di Use Case che hanno dato la possibilità di ottenere da subito il quadro generale del lavoro da eseguire Lato client Come possiamo vedere dalla Figura 2, esitono almeno 9 use case principali (corrispondenti a 9 differenti azioni che l'utente potrebbe voler eseguire) che sono stati considerati durante la successiva fase di progettazione. Figura 2: use case lato client Pagina 11 di 51

12 Login: E' una fase preliminare nonché fondamentale nell'uso del sistema. Per effettuare l'accesso al sistema è richiesto un certificato di tipo PKCS#12 che contiene le informazioni sull'identità dell'utente. Una volta aperto ed estratto le informazioni necessarie al riconoscimento dell'utente possono verificarsi due tipologie di scenario: 1. L'utente non viene riconosciuto dal sistema. In questo caso l'utente può richiedere all'amministratore l'associazione del proprio certificato ad un nuovo account per il sistema (sotto-caso d'uso Registrazione utente ). 2. L'utente viene riconosciuto dal sistema. La profilatura dell'utente può essere di due tipologie: Utente normale e Amministratore. Creazione sito La creazione di un nuovo sito Grid virtuale prevede la creazione e successiva configurazione di una Grid Farm minimale contenente un Compute Element, un Site BDII e, se l'utente lo richiede, uno Storage Element. Per effettuare la creazione del sito, l'utente dovrà specificare il nome del nuovo sito, il numero massimo di Worker Node associabili al sito e le taglie dei CE, SB ed eventuale SE. Se si desidera, una volta terminata la creazione del sito, possono essere aggiunti in nuovi elementi (vedi caso d'uso Creazione elemento ). Eliminazione sito Durante questa fase l'utente, in base alla profilatura riservatagli, può eliminare un Sito dalla piattaforma GaaS, eliminando di conseguenza tutte le istanze ad esso collegate (CE, SB, SE e WN). Pagina 12 di 51

13 Creazione elemento Una volta che la creazione e la configurazione di un sito è stata completata, l'utente può aggiungere uno o più elementi a questo in modo da aumentarne le capacità computazionali. L'utente ha la possibilità di aggiungere uno Storage Element a patto che esso non sia stato già aggiunto al momento della creazione del sito, oppure un numero arbitrario di Worker Node a patto che essi non superino il numero di Worker Node massimo imposto al momento della creazione del sito. Eliminazione elemento Se non più necessario, l'utente (se ne ha i permessi) può eliminare un elemento da un sito Grid. Visualizzazione dettagli elemento L'utente può visualizzare le informazioni complete relative ad un singolo elemento (nodo) della griglia ottenendo così informazioni relative al suo stato e alle sue caratteristiche hardware (es. CPU, RAM e Storage). Spegnimento/Riavvio elemento Essendo un elemento della griglia un elaboratore a tutti gli effetti (anche se virtuale), l'utente ha la possibilità di gestirlo in tutti i suoi aspetti, compreso il riavvio e lo spegnimento del dispositivo. Connessione ad elemento Se l'utente ha una profilatura di tipo amministratore, esso potrà connettersi alle macchine virtuali di una griglia effettuando una connessione SSH verso queste. Pagina 13 di 51

14 Lato server Figura 3: use case lato server Come è possibile notare dal diagramma di use cases riportato in Figura 3, i casi d'uso che avvengono tra l'applicazione mobile e la servlet sono quasi del tutto speculari a quelli che avvengono tra l'utente e l'applicazione; questo accade perchè, come detto in precedenza, l'applicazione vuole essere soltanto una interfaccia grafica remota del vero e proprio motore rappresentato dalla servlet e dagli script richiamati da quest'ultima. A quello appena detto fanno eccezione i casi d'uso Richiesta lista elementi e Richiesta lista siti che vengono utilizzati molteplici volte durante l'esecuzione di quasi tutti i casi d'uso del client. Da notare inoltre che, Pagina 14 di 51

15 mentre nell'applicazione mobile la registrazione del nuovo utente è un sotto-caso dello use case Login, sul lato server i due casi sono considerati completamente separati. Questa separazione è dovuta al fatto che per la servlet ogni richiesta dell'applicazione è standalone ovvero, non dipende e non influisce in alcun modo con qualsiasi richiesta passata o futura; Ciò accade perchè ogni richiesta viene gestita da un thread apposito ed isolato dagli altri. Pagina 15 di 51

16 2. Strumenti e progettazione Una volta delineate quali devono essere le funzionalità del nostro sistema, andremo ora ad elaborare una soluzione ideale per la sua realizzazione. Nel particolare andremo prima ad analizzare le modalità di comunicazione tra il client e il server, e poi illustreremo, tramite l'aiuto di opportuni diagrammi UML le classi implementate e le relazioni che intercorrono tra esse Modalità di comunicazione tra client e server La scelta della modalità con la quale il client comunica con il server è una fase molto delicata, ed alla fine la mia scelta è caduta su una comunicazione basata su richieste inviate tramite il metodo del HTTP POST e su risposte ricevute tramite l'utilizzo di semplici pagine HTTP testuali. Una volta scelto il mezzo di comunicazione, è stato necessario trovare un protocollo comune di comunicazione, ovvero, un linguaggio testuale comune tramite il quale i due attori (client e server) riescono a scambiarsi dati. La prima scelta era caduta inizialmente sull'utilizzo del linguaggio XML[5], ma questo, anche se riesce a descrivere in maniera egregia i dati e oggetti da inviare tra le due parti ed è adattabile alla nostra situazione, non è un linguaggio nato per questo tipo di comunicazioni; Infatti la serializzazione di classi ed oggetti in XML non è standardizzata, ed esistono decine di implementazioni di moduli di serializzazione degli oggetti in stringhe XML i quali mutano sensibilmente anche a seconda del linguaggio utilizzato. La nostra scelta si è quindi spostata verso l'uso di un linguaggio standard e nato per questo tipo di scopo, ovvero il JSON Un linguaggio di comunicazione universale: il JSON JSON (JavaScript Object Notation) è un linguaggio per lo scambio di dati. La forza di questo linguaggio è il suo essere Language-indipendent, ovvero può essere implementato ed utilizzato per descrivere oggetti e strutture in qualsiasi linguaggio Pagina 16 di 51

17 di programmazione rendendo JSON il linguaggio ideale per lo scambio di dati tra client e server anche se questi sono scritti in linguaggi di programmazione differenti.[6] JSON è basato su due strutture: Un insieme di coppie nome/valore. In diversi linguaggi, questo è realizzato come un oggetto, un record, uno struct, un dizionario, una tabella hash, un elenco di chiavi o un array associativo. Un elenco ordinato di valori. Nella maggior parte dei linguaggi questo si realizza con un array, un vettore, un elenco o una sequenza. Queste sono strutture di dati universali. Virtualmente tutti i linguaggi di programmazione moderni li supportano in entrambe le forme. E' sensato che un formato di dati che è interscambiabile con linguaggi di programmazione debba essere basato su queste strutture. In JSON, assumono queste forme: Un oggetto è una serie non ordinata di nomi/valori. Un oggetto inizia con { (parentesi graffa sinistra) e finisce con } (parentesi graffa destra). Ogni nome è seguito da: (due punti) e la coppia di nome/valore sono separata da, (virgola). Figura 4: Schematizzazione della rappresentazione di un oggetto nel linguaggio JSON Un array è una raccolta ordinata di valori. Un array comincia con [ (parentesi quadra sinistra) e finisce con ] (parentesi quadra destra). I valori sono separati da, (virgola). Pagina 17 di 51

18 Figura 5: Schematizzazione della rappresentazione di una array nel linguaggio JSON Un valore può essere una stringa tra virgolette, o un numero, o vero o falso o nullo, o un oggetto o un array. Queste strutture possono essere annidate. Figura 6: Schematizzazione della rappresentazione di una variabile nel linguaggio JSON Una stringa è una raccolta di zero o più caratteri Unicode, tra virgolette; per le sequenze di escape utilizza la barra rovesciata. Un singolo carattere è rappresentato come una stringa di caratteri di lunghezza uno. Una stringa è molto simile ad una stringa C o Java. Pagina 18 di 51

19 Figura 7: Schematizzazione della rappresentazione di una stringa nel linguaggio JSON Un numero è molto simile ad un numero C o Java, a parte il fatto che i formati ottali e esadecimali non sono utilizzati. Figura 8: Schematizzazione della rappresentazione di una variabile numerica nel linguaggio JSON I caratteri di spaziatura possono essere inseriti in mezzo a qualsiasi coppia di token Cifratura della comunicazione Essendo JSON un linguaggio di comunicazione leggibile e facilmente alterabile e Pagina 19 di 51

20 non avendo la possibilità di utilizzare una connessione HTTPS in questa fase dell'implementazione, per rendere la comunicazione un po' più sicura, ho deciso di cifrare le stringhe di comunicazione scritte in JSON tramite l'algoritmo AES a 128bit. AES (Advanced Encryption Standard) è un algoritmo per la cifratura di dati e basato sull'algoritmo Rijndael. AES fornisce una crittografia simmetrica, ovvero, una tipologia di crittografia caratterizzata dall'uso di una singola chiave precondivisa per entrambe le fasi di criptazione e decriptazione del dato.[7] Attualmente AES fornisce tre livelli di complessità di cifratura: a 128, 192 e 256bit, nel nostro caso, per rendere la comunicazione più rapida e non rallentata da una cifratura troppo complessa, abbiamo deciso di utilizzare la versione a 128bit; Questa scelta è data anche dal fatto che,la cifratura delle stringhe JSON rappresenta esclusivamente un palliativo momentaneo e comunque non definitivo dato che, quando l'applicazione GaaS entrerà nella fase di produzione, essa verrà eseguita su un motore Tomcat con un certificato abilitato alla creazione di connessioni sicure HTTPS e quindi molto più sicuro della soluzione adottata in questa fase di progettazione/implementazione. Figura 9: Funzionamento di un sistema di cifratura a singola chiave Pagina 20 di 51

21 2.2. Diagramma delle classi Di seguito riporto i principali class diagram per l'applicazione client e per la Java servlet con relativa spiegazione delle classi rappresentate e del loro ruolo all'interno del sistema Lato client Pagina 21 di 51

22 Come si può notare dalle immagini, le classi sono state pacchettizzate a seconda della loro area di competenza. Abbiamo dunque il pacchetto com.bizzarro.gaas.communication che è il pacchetto contenente le classi che si occupano di fornire uno standard comune per la comunicazione tra client e server, e in particolare troviamo: Request: E' una classe di tipo entity le cui istanze memorizzano le Pagina 22 di 51

23 informazioni riguardanti le richieste effettuate dal client verso il server. Response: E' una classe di tipo entity le cui istanze contengono le risposte date dal server a precedenti Request del client. Site: E' una classe entity le' cui istanze contengono le informazioni relative ai siti Grid. Element: è una classe entity astratta le cui estensioni sono WorkerNode, SiteBDII, StorageElement e ComputeElement le cui istanze contengono le informazioni relative ai nodi WN, SB, SE e CE di un sito Flavor: anch'essa è una classe entity le cui istanze contengono informazioni riguardanti i possibili flavors utilizzabili sulla piattaforma OpenStack. Cypher: E' una classe compute che offre dei semplici metodi per cifrare e decifrare stringhe tramite l'algoritmo AES a 128bit e che viene utilizzata per cifrare le comunicazioni tra client e server che altrimenti sarebbero facilmente leggibili ed interpretabili. Le classi contenute nel pacchetto com.bizzarro.auth si occupano dell'autenticazione degli utenti all'interno del sistema. Attualmente contiene un unica classe Certificate che tramite i suoi metodi, offre una gestione dei certificati X509 molto facile ed efficiente dando la possibilità, in pochi comandi, di accedere alle informazioni contenute nei certificati di questo tipo. Nel package com.bizzarro.android ci sono le classi ideate esclusivamente per il mondo android e contiene e contiene: HTTPRequester: Questa classe di tipo compute si occupa di effettuare Pagina 23 di 51

24 richieste HTTP verso la rete. ServerRequester: HTTPRequester, Grazie questa all'utilizzo classe di di tipo un'istanza della classe compute offre metodi preconfezionati che danno la possibilità di inviare richieste complesse al server. DirectoryScanner: Come suggerisce il nome, questa classe si occupa di dare informazioni sui files contenuti in una determinata directory. Il pacchetto in analisi contiene infine un sotto-pacchetto denominato activity, contenente classi compute estensioni della classe standard Android Activity che si occupano della gestione di tutti i componenti grafici e in generale di tutte le interazioni che l'applicazione può avere con l'utente. Infine c'è il pacchetto standard Android android.widget contenente le classi rappresentanti i componenti grafici utilizzabili dall'utente (es. tasti, finestre, menu a tendina, campi di testo...ecc). Pagina 24 di 51

25 Lato server Come è possibile notare anche in questa situazione, sono molte le classi condivise con l'applicazione mobile, ed in particolare tutte le classi appartenenti ai pacchetti com.bizzarro.gaas.communication e com.bizzarro.gaas.auth, che rendono possibile la comunicazione e l'autenticazione tra i due. Le classi differenti sono tutte quelle poste nel sotto-package servlet e che comprende: MainClass: classe estensione di HttpSrvlet e contenente il metodo processrequest, ovvero il metodo invocato dalla servlet quando riceve una richiesta HTTP. Questa classe rappresenta quindi la classe principale della servlet che si occupa materialmente di prendere la richiesta e farla elaborare e spedire l'output. Pagina 25 di 51

26 DBManager: questa classe è il cuore della nostra servlet; Questa infatti contiene tutti i metodi per leggere e scrivere (sia in modo diretto che indiretto), i dati dal database MySQL. Se opportuno, invoca (non direttamente) gli script per l'esecuzione di operazioni sulla piattaforma OpenStack. Script: Questa classe è stata ideata con l'unico scopo di mascherare all'utilizzatore, l'esistenza di scripts esterni all'ambiente Java. Infatti la classe Script con i suoi metodi vuole essere semplicemente una interfaccia Java per l'utilizzo degli script bash e python che si occupano di effettuare le operazioni suoi server OpenStack Pagina 26 di 51

27 2.3. Diagrammi di sequenza Un ulteriore strumento utile alla progettazione del nostro sistema sono i diagrammi di sequenza degli oggetti di quest'ultimo. I "Sequence Diagram" hanno il compito di evidenziare l aspetto temporale dell interazione fra gli oggetti illustrando i messaggi che i vari oggetti si scambiano, e in quale ordine essi lo fanno Lato client Creazione sito Pagina 27 di 51

28 Eliminazione sito Comunicazione con il server Pagina 28 di 51

29 Creazione di un nuovo elemento Pagina 29 di 51

30 Riavvio elemento Spegnimento elemento Pagina 30 di 51

31 Eliminazione elemento Connessione ad elemento Pagina 31 di 51

32 Login Pagina 32 di 51

33 Lato server In questo paragrafo, infine, mostriamo un semplice sequence diagram che mostra il modus operandi della servlet quando riceve una generica richiesta dal client. Pagina 33 di 51

34 2.4. Il database MySQL Come detto nei paragrafi precedenti, il sistema andrà a memorizzare le informazioni riguardanti gli utenti e i siti grid all'interno di un database SQL denominato GaaSDB. In questo paragrafo spiegheremo nel dettaglio la struttura del database da realizzare, soffermandoci sulle singole tabelle e sul loro ruolo all'interno del sistema Tabella USERS La tabella USERS è la tabella cardine per tutte quelle operazioni che prevedono l'identificazione e la profilatura dell'utente Essa contiene le informazioni ricavate dal certificato X509 presentato dall'utente al momento della registrazione più altre informazioni che ora andremo a vedere nel dettaglio: I campi di questa tabella sono 9 e sono: PUBLICKEY: La chiave pubblica dell'utente (che identifica in modo univoco il certificato e di conseguenza l'utente proprietario). CN (Common Name):il nome dell'utente così come registrato sul certificato. C (Country): il paese di appartenenza dell'utente. E ( ): l'indirizzo dell'utente. L (Locate): La località di provenienza dell'utente O (Organization): L'organizzazione (es. azienda, istituto...ecc) appartenenza dell'utente. ST (State): Lo stato di provenienza dell'utente. Pagina 34 di 51 di

35 TYPE: Questo campo è fondamentale per la profilatura dell'utente; infatti questa variabile indica al sistema se l'utente in questione è un utente normale oppure un amministratore. APPROVED: Questa variabile avverte il sistema se all'utente in questione è già stato concesso l'uso dell'infrastruttura GaaS. Come già spiegato in precedenza, per diventare utente del sistema bisogna inviare a quest'ultimo le proprie credenziali tramite l'uso del il proprio certificato X509. Queste informazioni passeranno poi al vaglia di un amministratore che deciderà se approvare o meno l'accesso al sistema da parte di quel preciso utente Tabella SITI La tabella SITI contiene le informazioni relative a tutti i siti Grid istanziati sul sistema. Questa tabella è composta da 8 campi che sono: ID: L'identificativo univoco del sito. NOME: Il nome del sito dato dall'utente al momento della sua creazione. USER: La public key dell'utente creatore del sito (fa riferimento al campo PUBLICKEY della tabella USERS). INFO: Contiene informazioni aggiuntive inserite dall'utente al momento della creazione del sito. MAX_WN: Numero massimo di Worker Node inseribili all'interno del sito in questione. USED_WN: Numero di Worker Node attualmente presenti all'interno del sito. Pagina 35 di 51

36 CE: Indica il nome del CE del sito in questione (fa riferimento al campo NOME della tabella ELEMENTI). STATO: Questa variabile può assumere due valori UP o DOWN a seconda che il sito sia completamente configurato e operativo o meno Tabella ELEMENTI La tabella ELEMENTI contiene invece le informazioni riguardanti i nodi costituenti i siti Grid presenti nel sistema. La tabella è composta da 9 elementi che sono: ID: identificativo univoco del nodo (corrisponde all'identificativo presente sulla piattaforma Openstack). NOME: il nome dell'elemento (fa riferimento al campo NOME della tabella IP) USER: La public key dell'utente che ha creato il nodo (fa riferimento al campo PUBLICKEY della tabella USERS). SITO: L'identificativo del sito che contiene il nodo in questione (fa riferimento al campo ID della tabella SITI). TIPO: Indica la tipologia del nodo in questione. Esso infatti può essere di 4 tipi: Compute Element (CE), Site BDII (SB), Worker Node (WN) o Storage Element (SE). Pagina 36 di 51

37 IP_PUBBLICO: Se disponibile per il nodo in questione, questo campo contiene l'ip pubblico tramite il quale è possibile avere un accesso diretto all'elemento (fa riferimento al campo IP della tabella IP). IP_PRIVATO: Se disponibile per il nodo in questione, questo campo contiene il suo IP privato. STATO: Contiene l'identificativo dello stato in cui si trova nodo in questione (ricavato dalle informazioni di Openstack). FLAVOR: Contiene l'identificativo del flavor (set di componenti hardware), del nodo (fa riferimento al campo ID della tabella FLAVOR Tabella RISORSE La tabella RISORSE contiene informazioni cruciali per quanto riguarda l'istanziazione di nuovi nodi sul sistema; infatti questa contiene le informazioni sui componenti di tipo Compute della piattaforma Openstack ed in particolare sulle risorse disponibili su di questi. Queste informazioni vengono utilizzate dal sistema per la scelta del Compute sul quale istanziare nuovi nodi. La tabella è composta da 4 campi che sono: ID: Identificativo del Compute all'interno della tabella. COMPUTE: Il nome del Compute Il numero di CPU/Core fisici attualmente disponibili sul Compute. La memoria fisica attualmente disponibile sul Compute. Pagina 37 di 51

38 Tabella RETE La tabella RETE contiene le informazioni viene utilizzata per l'assegnazioni delle classi di indirizzamento per la rete privata dei siti. I campi di questa tabella sono i seguenti: NUMERO: identificativo della riga RETE: la classe di indirizzamento /24 SITO: l'identificativo del sito a cui è stata assegnata la classe di indirizzi (fa riferimento al campo ID della tabella SITI). OCCUPATO: indica se la classe in questione è già stata assegnata o meno Tabella IP La tabella IP contiene un pool di indirizzi IP pubblici associabili ai nodi da creare. Essendo indirizzi pubblici, questi sono associati ad un certificato e le macchine ai quali verranno assegnati avranno gli stessi nomi indicati sul certificato. Pagina 38 di 51

39 La tabella è composta da 4 elementi che sono: IP: indirizzo IP pubblico. NOME: Il nome della macchina associata o da associare. OCCUPATO: Indica se l'indirizzo è attualmente già utilizzato da un nodo o meno. TIPO: Indica la tipologia di nodo associabile Tabella FLAVOR La tabella FLAVOR contiene le taglie hardware (numero di CPU, diimensione RAM e disco) utilizzabili per la realizzazione dei nodi. I campi di questa tabella sono: ID: Identificativo del flavor NOME: Nome del flavor. MEMORIA: Dimensione della memoria RAM. CPU: Numero di CPU/Cores utilizzabili. DISCO: Dimensione della memoria di massa. Pagina 39 di 51

40 Tabella ESECUZIONI L'esecuzioni di molte funzionalità richiedono un accesso esclusivo a determinate risorse. Per far ciò, è stata creata questa particolare tabella che registra lo stato delle operazioni ad accesso esclusivo, in modo da creare una specie di semaforo verso quelle risorse che prevedono per alcuni motivi un accesso di tipo concorrenziale. La tabella è costituita dalle segueti colonne: ID: Identificativo dell'esecuzione. SITO: Identificativo del sito sul quale sta avvenendo l'esecuzione (fa riferimento al campo ID della tabella SITO). USER: Public key dell'utente che ha richiesto l'esecuzione (fa riferimento al campo PUBLICKEY della tabella USERS). TIPO: Indica a quale funzione si sta facendo riferimento (es. CREATE SITE, CREATE WN). DATA: Indica la data di inizio dell'esecuzione. STATO: Riporta lo stato dell'esecuzione (es. DONE, EXECUTING, WAITING) Pagina 40 di 51

41 Diagramma EER Nel diagramma EER sottostante possiamo osservare quali sono le interazioni tra le tabelle del database SQL denominato gaasdb. Pagina 41 di 51

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

Dettagli

FileMaker Server 13. Guida introduttiva

FileMaker Server 13. Guida introduttiva FileMaker Server 13 Guida introduttiva 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono marchi

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Architettura di un sistema informatico 1 CONCETTI GENERALI

Architettura di un sistema informatico 1 CONCETTI GENERALI Architettura di un sistema informatico Realizzata dal Dott. Dino Feragalli 1 CONCETTI GENERALI 1.1 Obiettivi Il seguente progetto vuole descrivere l amministrazione dell ITC (Information Tecnology end

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

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

FileMaker Server 13. Guida di FileMaker Server

FileMaker Server 13. Guida di FileMaker Server FileMaker Server 13 Guida di FileMaker Server 2010-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

CA Process Automation

CA Process Automation CA Process Automation Glossario Release 04.2.00 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente (d'ora in avanti indicata come

Dettagli

Guida all utilizzo del dispositivo USB

Guida all utilizzo del dispositivo USB Guida all utilizzo del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1. Glossario... 3 2. Guida all utilizzo del dispositivo USB... 4 2.1 Funzionamento del

Dettagli

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva Acronis Backup & Recovery 10 Advanced Server Virtual Edition Guida introduttiva Questo documento descrive come installare e iniziare a utilizzare Acronis Backup & Recovery 10 Advanced Server Virtual Edition.

Dettagli

FileMaker Server 13. Pubblicazione Web personalizzata con PHP

FileMaker Server 13. Pubblicazione Web personalizzata con PHP FileMaker Server 13 Pubblicazione Web personalizzata con PHP 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker

Dettagli

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Riusabilità del software - Catalogo delle applicazioni: Applicativo verticale Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Installazione ed attivazione della "SUITE OFFIS" versione SERVER

Installazione ed attivazione della SUITE OFFIS versione SERVER Installazione ed attivazione della "SUITE OFFIS" versione SERVER Premessa La versione server di OFFIS può essere installata e utilizzata indifferentemente da PC/Win o Mac/Osx e consente l'accesso contemporaneo

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

UML Component and Deployment diagram

UML Component and Deployment diagram UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione

Dettagli

Seagate Access per Personal Cloud Manuale utente

Seagate Access per Personal Cloud Manuale utente Seagate Access per Personal Cloud Manuale utente 2015 Seagate Technology LLC. Tutti i diritti riservati. Seagate, Seagate Technology, il logo Wave e FreeAgent sono marchi depositati o marchi registrati

Dettagli

INFORMATIVA SUI COOKIE

INFORMATIVA SUI COOKIE INFORMATIVA SUI COOKIE I Cookie sono costituiti da porzioni di codice installate all'interno del browser che assistono il Titolare nell erogazione del servizio in base alle finalità descritte. Alcune delle

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

Di seguito sono descritti i prerequisiti Hardware e Software che deve possedere la postazione a cui viene collegata l Aruba Key.

Di seguito sono descritti i prerequisiti Hardware e Software che deve possedere la postazione a cui viene collegata l Aruba Key. 1 Indice 1 Indice... 2 2 Informazioni sul documento... 3 2.1 Scopo del documento... 3 3 Caratteristiche del dispositivo... 3 3.1 Prerequisiti... 3 4 Installazione della smart card... 4 5 Avvio di Aruba

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 -

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 - Progetto SINTESI Comunicazioni Obbligatorie Modulo Applicativo COB - Versione Giugno 2013-1 Versione Giugno 2013 INDICE 1 Introduzione 3 1.1 Generalità 3 1.2 Descrizione e struttura del manuale 3 1.3 Requisiti

Dettagli

Web Conferencing Open Source

Web Conferencing Open Source Web Conferencing Open Source A cura di Giuseppe Maugeri g.maugeri@bembughi.org 1 Cos è BigBlueButton? Sistema di Web Conferencing Open Source Basato su più di quattordici componenti Open-Source. Fornisce

Dettagli

AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0

AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0 AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0 Con questo aggiornamento sono state implementate una serie di funzionalità concernenti il tema della dematerializzazione e della gestione informatica dei documenti,

Dettagli

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

Dettagli

Procedura per il ripristino dei certificati del dispositivo USB

Procedura per il ripristino dei certificati del dispositivo USB Procedura per il ripristino dei certificati del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1 Glossario... 3 2 Presentazione... 4 3 Quando procedere al ripristino

Dettagli

Come difendersi dai VIRUS

Come difendersi dai VIRUS Come difendersi dai VIRUS DEFINIZIONE Un virus è un programma, cioè una serie di istruzioni, scritte in un linguaggio di programmazione, in passato era di solito di basso livello*, mentre con l'avvento

Dettagli

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE

PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE Versione 1.0 Via della Fisica 18/C Tel. 0971 476311 Fax 0971 476333 85100 POTENZA Via Castiglione,4 Tel. 051 7459619 Fax 051 7459619

Dettagli

2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto

2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto 2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto previsto in Avvisi legali. 23 giugno 2014 Indice 3 Indice...5

Dettagli

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0)

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0) Indice generale PREMESSA... 2 ACCESSO... 2 GESTIONE DELLE UTENZE... 3 DATI DELLA SCUOLA... 6 UTENTI...7 LISTA UTENTI... 8 CREA NUOVO UTENTE...8 ABILITAZIONI UTENTE...9 ORARI D'ACCESSO... 11 DETTAGLIO UTENTE...

Dettagli

Guida al nuovo sistema di posta. CloudMail UCSC. (rev.doc. 1.4)

Guida al nuovo sistema di posta. CloudMail UCSC. (rev.doc. 1.4) Guida al nuovo sistema di posta CloudMail UCSC (rev.doc. 1.4) L Università per poter migliorare l utilizzo del sistema di posta adeguandolo agli standard funzionali più diffusi ha previsto la migrazione

Dettagli

iphone in azienda Guida alla configurazione per gli utenti

iphone in azienda Guida alla configurazione per gli utenti iphone in azienda Guida alla configurazione per gli utenti iphone è pronto per le aziende. Supporta Microsoft Exchange ActiveSync, così come servizi basati su standard, invio e ricezione di e-mail, calendari

Dettagli

WEB Conference, mini howto

WEB Conference, mini howto Prerequisiti: WEB Conference, mini howto Per potersi collegare o creare una web conference è necessario: 1) Avere un pc con sistema operativo Windows XP o vista (windows 7 non e' ancora certificato ma

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Gestire le comunicazione aziendali con software Open Source

Gestire le comunicazione aziendali con software Open Source Gestire le comunicazione aziendali con software Open Source Data: Ottobre 2012 Firewall pfsense Mail Server Zimbra Centralino Telefonico Asterisk e FreePBX Fax Server centralizzato Hylafax ed Avantfax

Dettagli

GESTIONE DELLA E-MAIL

GESTIONE DELLA E-MAIL GESTIONE DELLA E-MAIL Esistono due metodologie, completamente diverse tra loro, in grado di consentire la gestione di più caselle di Posta Elettronica: 1. tramite un'interfaccia Web Mail; 2. tramite alcuni

Dettagli

Guida all'installazione ed uso dell'app RXCamLink

Guida all'installazione ed uso dell'app RXCamLink Guida all'installazione ed uso dell'app RXCamLink Questa guida riporta i passi relativi all'installazione ed all'utilizzo dell'app "RxCamLink" per il collegamento remoto in mobilità a sistemi TVCC basati

Dettagli

SINTESI. Comunicazioni Obbligatorie [COB] Import massivo XML. ver. 1.0 del 14.05.2008 (ver. COB 3.13.01)

SINTESI. Comunicazioni Obbligatorie [COB] Import massivo XML. ver. 1.0 del 14.05.2008 (ver. COB 3.13.01) SINTESI Comunicazioni Obbligatorie [COB] XML ver. 1.0 del 14.05.2008 (ver. COB 3.13.01) Questo documento è una guida alla importazione delle Comunicazioni Obbligatorie: funzionalità che consente di importare

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Sizing di un infrastruttura server con VMware

Sizing di un infrastruttura server con VMware Sizing di un infrastruttura server con VMware v1.1 Matteo Cappelli Vediamo una serie di best practices per progettare e dimensionare un infrastruttura di server virtuali con VMware vsphere 5.0. Innanzitutto

Dettagli

FORM Il sistema informativo di gestione della modulistica elettronica.

FORM Il sistema informativo di gestione della modulistica elettronica. Studio FORM FORM Il sistema informativo di gestione della modulistica elettronica. We believe in what we create This is FORM power La soluzione FORM permette di realizzare qualsiasi documento in formato

Dettagli

Protocollo HTTP. Alessandro Sorato

Protocollo HTTP. Alessandro Sorato Un protocollo è un insieme di regole che permettono di trovare uno standard di comunicazione tra diversi computer attraverso la rete. Quando due o più computer comunicano tra di loro si scambiano una serie

Dettagli

Il supporto all'utenza e alle applicazioni sul sistema SCoPE:

Il supporto all'utenza e alle applicazioni sul sistema SCoPE: Il supporto all'utenza e alle applicazioni sul sistema SCoPE: l'esperienza di UNINA G.B. Barone, V. Boccia, D. Bottalico, L. Carracciuolo 1. Introduzione Obiettivo di tale documento è descrivere l'esperienza

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor NetMonitor Micro guida all uso per la versione 1.2.0 di NetMonitor Cos è NetMonitor? NetMonitor è un piccolo software per il monitoraggio dei dispositivi in rete. Permette di avere una panoramica sui dispositivi

Dettagli

Posta Elettronica Certificata

Posta Elettronica Certificata Posta Elettronica Certificata Manuale di utilizzo del servizio Webmail di Telecom Italia Trust Technologies Documento ad uso pubblico Pag. 1 di 33 Indice degli argomenti 1 INTRODUZIONE... 3 1.1 Obiettivi...

Dettagli

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012 Marco Giorgi Palazzo di Giustizia di Torino 30 marzo 2012 Post mortem (Dopo lo spegnimento del sistema) Si smonta il dispositivo e lo si collega ad un PC dedicato all'acquisizione Live forensics (Direttamente

Dettagli

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

Dettagli

G e s t i o n e U t e n z e C N R

G e s t i o n e U t e n z e C N R u t e n t i. c n r. i t G e s t i o n e U t e n z e C N R G U I D A U T E N T E Versione 1.1 Aurelio D Amico (Marzo 2013) Consiglio Nazionale delle Ricerche - Sistemi informativi - Roma utenti.cnr.it -

Dettagli

Istruzioni per l importazione del certificato per Internet Explorer

Istruzioni per l importazione del certificato per Internet Explorer Istruzioni per l importazione del certificato per Internet Explorer 1. Prima emissione certificato 1 2. Rilascio nuovo certificato 10 3. Rimozione certificato 13 1. Prima emissione certificato Dal sito

Dettagli

INFORMATIVA FINANZIARIA

INFORMATIVA FINANZIARIA Capitolo 10 INFORMATIVA FINANZIARIA In questa sezione sono riportate le quotazioni e le informazioni relative ai titoli inseriti nella SELEZIONE PERSONALE attiva.tramite la funzione RICERCA TITOLI è possibile

Dettagli

LA CRITTOGRAFIA Le applicazioni della crittografia e della firma digitale a cura di Sommaruga Andrea Guido

LA CRITTOGRAFIA Le applicazioni della crittografia e della firma digitale a cura di Sommaruga Andrea Guido INDICE LA FIRMA DIGITALE O ELETTRONICA...2 LA LEGISLAZIONE IN MATERIA...5 NOTA SUI FORMATI DI FILE...6 COME FUNZIONA IL MECCANISMO DELLE FIRME ELETTRONICHE...7 FIRMA DI PIÙ PERSONE... 7 DOCUMENTO SEGRETO...

Dettagli

CA Asset Portfolio Management

CA Asset Portfolio Management CA Asset Portfolio Management Guida all'implementazione Versione 12.8 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente (d'ora in

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D

C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D Se avete un tablet android, ma non avete la minima idea di come accenderlo, usarlo e avviarlo, seguite queste nostre indicazioni 1. ATTIVAZIONE

Dettagli

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A Leggere attentamente questo manuale prima dell utilizzo e conservarlo per consultazioni future Via Don Arrigoni, 5 24020 Rovetta

Dettagli

Boot Camp Guida di installazione e configurazione

Boot Camp Guida di installazione e configurazione Boot Camp Guida di installazione e configurazione Indice 3 Introduzione 4 Panoramica dell'installazione 4 Passo 1: Verificare la presenza di aggiornamenti 4 Passo 2: Per preparare il Mac per Windows 4

Dettagli

Porta di Accesso versione 5.0.12

Porta di Accesso versione 5.0.12 Pag. 1 di 22 Controlli da effettuare in seguito al verificarsi di ERRORE 10 nell utilizzo di XML SAIA Porta di Accesso versione 5.0.12 Pag. 2 di 22 INDICE 1. INTRODUZIONE... 3 2. VERIFICHE DA ESEGUIRE...3

Dettagli

Portale Unico dei Servizi NoiPA

Portale Unico dei Servizi NoiPA Portale Unico dei Servizi NoiPA Guida all accesso al portale e ai servizi self service Versione del 10/12/14 INDICE pag. 1 INTRODUZIONE... 3 2 MODALITÀ DI PRIMO ACCESSO... 3 2.1 LA CONVALIDA DELL INDIRIZZO

Dettagli

ApplicationServer XG Versione 11. Ultimo aggiornamento: 10.09.2013

ApplicationServer XG Versione 11. Ultimo aggiornamento: 10.09.2013 ApplicationServer XG Versione 11 Ultimo aggiornamento: 10.09.2013 Indice Indice... i Introduzione a 2X ApplicationServer... 1 Cos'è 2X ApplicationServer?... 1 Come funziona?... 1 Su questo documento...

Dettagli

MANUALE Gest-L VERSIONE 3.2.3

MANUALE Gest-L VERSIONE 3.2.3 MANUALE Gest-L VERSIONE 3.2.3 Installazione GEST-L 4 Versione per Mac - Download da www.system-i.it 4 Versione per Mac - Download da Mac App Store 4 Versione per Windows 4 Prima apertura del programma

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

Manuale - TeamViewer 6.0

Manuale - TeamViewer 6.0 Manuale - TeamViewer 6.0 Revision TeamViewer 6.0 9947c Indice Indice 1 Ambito di applicazione... 1 1.1 Informazioni su TeamViewer... 1 1.2 Le nuove funzionalità della Versione 6.0... 1 1.3 Funzioni delle

Dettagli

SCUOLANET UTENTE DOCENTE

SCUOLANET UTENTE DOCENTE 1 ACCESSO A SCUOLANET Si accede al servizio Scuolanet della scuola mediante l'indirizzo www.xxx.scuolanet.info (dove a xxx corrisponde al codice meccanografico della scuola). ISTRUZIONI PER IL PRIMO ACCESSO

Dettagli

dott.ssa C.ristina Mugnai Revisione: 1

dott.ssa C.ristina Mugnai Revisione: 1 Tipo di documento: Progetto - Commissione Didattica 27 giugno 2011 Pag. 1 di 9 Premessa Il progetto nasce con l obiettivo di: a) informatizzare il processo di presentazione della domanda di laurea in analogia

Dettagli

Arcserve Replication and High Availability

Arcserve Replication and High Availability Arcserve Replication and High Availability Guida operativa per Oracle Server per Windows r16.5 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente

Dettagli

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Il software descritto nel presente

Dettagli

Virtualizzazione e installazione Linux

Virtualizzazione e installazione Linux Virtualizzazione e installazione Linux Federico De Meo, Davide Quaglia, Simone Bronuzzi Lo scopo di questa esercitazione è quello di introdurre il concetto di virtualizzazione, di creare un ambiente virtuale

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

Manuale installazione DiKe Util

Manuale installazione DiKe Util Manuale installazione DiKe Util Andare sul sito Internet: www.firma.infocert.it Cliccare su software nella sezione rossa INSTALLAZIONE: comparirà la seguente pagina 1 Selezionare, nel menu di sinistra,

Dettagli

Guida all'installazione rapida di scansione su e-mail

Guida all'installazione rapida di scansione su e-mail Xerox WorkCentre M118i Guida all'installazione rapida di scansione su e-mail 701P42705 Questa guida fornisce un riferimento rapido per l'impostazione della funzione Scansione su e-mail su Xerox WorkCentre

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO Precisione del riconoscimento Velocità di riconoscimento Configurazione del sistema Correzione Regolazione della

Dettagli

GUIDA DELL UTENTE IN RETE

GUIDA DELL UTENTE IN RETE GUIDA DELL UTENTE IN RETE Memorizza registro di stampa in rete Versione 0 ITA Definizione delle note Nella presente Guida dell'utente viene utilizzata la seguente icona: Le note spiegano come intervenire

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

ACCESSO AL PORTALE INTERNET GSE

ACCESSO AL PORTALE INTERNET GSE ACCESSO AL PORTALE INTERNET GSE Guida d uso per la registrazione e l accesso Ver 3.0 del 22/11/2013 Pag. 1 di 16 Sommario 1. Registrazione sul portale GSE... 3 2. Accesso al Portale... 8 2.1 Accesso alle

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

progettiamo e realizziamo architetture informatiche Company Profile

progettiamo e realizziamo architetture informatiche Company Profile Company Profile Chi siamo Kammatech Consulting S.r.l. nasce nel 2000 con l'obiettivo di operare nel settore I.C.T., fornendo servizi di progettazione, realizzazione e manutenzione di reti aziendali. Nel

Dettagli

Denuncia di Malattia Professionale telematica

Denuncia di Malattia Professionale telematica Denuncia di Malattia Professionale telematica Manuale utente Versione 1.5 COME ACCEDERE ALLA DENUNCIA DI MALATTIA PROFESSIONALE ONLINE... 3 SITO INAIL... 3 LOGIN... 4 UTILIZZA LE TUE APPLICAZIONI... 5

Dettagli

MANUALE D USO G.ALI.LE.O GALILEO. Manuale d uso. Versione 1.1.0. [OFR] - Progetto GALILEO - Manuale d uso

MANUALE D USO G.ALI.LE.O GALILEO. Manuale d uso. Versione 1.1.0. [OFR] - Progetto GALILEO - Manuale d uso [OFR] - - G.ALI.LE.O Versione 1.1.0 MANUALE D USO pag. 1 di 85 [OFR] - - pag. 2 di 85 [OFR] - - Sommario 1 - Introduzione... 6 2 - Gestione ALbI digitale Ordini (G.ALI.LE.O.)... 7 2.1 - Schema di principio...

Dettagli

Guida rapida Vodafone Internet Key K4607-Z. Progettata da Vodafone

Guida rapida Vodafone Internet Key K4607-Z. Progettata da Vodafone Guida rapida Vodafone Internet Key K4607-Z Progettata da Vodafone Benvenuti nel mondo della comunicazione in mobilità 1 Benvenuti 2 Impostazione della Vodafone Internet Key 4 Windows 7, Windows Vista,

Dettagli

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

Dettagli

TeamViewer 7 Manuale Controllo remoto

TeamViewer 7 Manuale Controllo remoto TeamViewer 7 Manuale Controllo remoto TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen teamviewer.com Indice 1 Informazioni su TeamViewer... 5 1.1 Informazioni sul software... 5 1.2 Informazioni sul

Dettagli

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis 2 Intervento immediato con Bosch Intelligent Video Analysis Indipendentemente da quante telecamere il sistema utilizza, la sorveglianza

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

TeamViewer 8 Manuale Controllo remoto

TeamViewer 8 Manuale Controllo remoto TeamViewer 8 Manuale Controllo remoto Rev 8.0-12/2012 TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen www.teamviewer.com Indice 1 Informazioni su TeamViewer... 6 1.1 Informazioni sul software... 6

Dettagli

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1 UBUNTU SERVER Installazione e configurazione di Ubuntu Server M. Cesa 1 Ubuntu Server Scaricare la versione deisiderata dalla pagina ufficiale http://www.ubuntu.com/getubuntu/download-server Selezioniare

Dettagli

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i!

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i! Manuale Utente S e m p l i c e m e n t e D a t i M i g l i o r i! INDICE INDICE... 3 INTRODUZIONE... 3 Riguardo questo manuale...3 Informazioni su VOLT 3 Destinatari 3 Software Richiesto 3 Novità su Volt...3

Dettagli

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali DynDevice ECM La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali Presentazione DynDevice ECM Cos è DynDevice ICMS Le soluzioni di DynDevice

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

Dettagli

Firma Digitale Remota. Manuale di Attivazione, Installazione,Utilizzo

Firma Digitale Remota. Manuale di Attivazione, Installazione,Utilizzo Firma Digitale Remota Manuale di Attivazione, Installazione,Utilizzo Versione: 0.3 Aggiornata al: 02.07.2012 Sommario 1. Attivazione Firma Remota... 3 1.1 Attivazione Firma Remota con Token YUBICO... 5

Dettagli