MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

Slides:



Advertisements
Presentazioni simili
Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Advertisements

Corso di Fondamenti di Informatica
HtML Premessa introduttiva al laboratorio Sergio Capone.
Internet: la rete delle reti
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
IL LINGUAGGIO HTML Il linguaggio html. Il linguaggio html. Utilizzo dei tag. Utilizzo dei tag. Script Browser I link I link Caricamento dei dati sul server.
Laboratorio Informatica – I lezione
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Tecnologie di Sviluppo per il Web
IL NOSTRO LABORATORIO. Di INFORMATICA..
IL NOSTRO LABORATORIO Di INFORMATICA. Presentazione Nel nostro laboratorio abbiamo 24 postazioni con dei computer di tipo Desktop con queste caratteristiche:
ING. CARLO MANFUCCI COMUNE DI GROSSETO
Internet e Web Dinamico
Internetworking.
Simona Isabella Corso Società, Cultura, comunicazione
Come programmare servizi di rete?
Linguaggi per il Web Laboratorio di Applicazioni Informatiche II mod. A.
Modello del sistema di posta Elettronica
Architettura del World Wide Web
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Posta elettronica ( ) chiocciola" comunemente letta at Identificativo dellutente Identificativo del computer centrale sul quale risiede.
Labbreviazione: WWW letteralmente: World = mondo Wide = esteso Web = rete Può essere tradotta come: Rete estesa in tutto il mondo.
Labbreviazione: WWW letteralmente: World = mondo Wide = esteso Web = rete Può essere tradotta come: Rete estesa in tutto il mondo.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Struttura dei sistemi operativi (panoramica)
World Wide Web, ipertesti e HTML Lezione 6
RETI E INTERNET.
RISORSE WEB Internet Per un uso consapevole delle risorse della Rete
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
Modelli ed Applicazioni di Reti di Calcolatori L-S Anno Accademico Università degli Studi di Bologna Ing. Fabio Tarantino –
Introduzione al Web Concetti Fondamentali
1 Internet e nuove tecnologie Anno Accademico Prof. Flavio De Paoli Dott. Marco Loregian.
Corso di Informatica per Giurisprudenza Lezione 7
WORLD WIDE WEB Il World Wide Web (Web, WWW o W3) è un'architettura software utilizzata per fornire l'accesso e la navigazione ad un insieme molto vasto.
Modulo 7 – reti informatiche u.d. 1 (syllabus – )
Guida IIS 6 A cura di Nicola Del Re.
Cos’è Internet Una rete globale di reti basata sul protocollo TCP/IP.
Internet L’essenziale.
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
1 Ripassino Reti di Computer Carasco 19/02/ Che cosa è una rete informatica? Una rete informatica è un insieme di computer connessi tra di loro.
Basi di Dati e Sistemi Informativi
Sistemi Informativi sul Web
Gianpaolo Cecere Introduzione
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Amministrazione della rete: web server Apache
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.
Internet.
L’architettura a strati
Internet: una panoramica
prof.ssa Giulia Quaglino
Distributed System ( )7 TCP/IP four-layer model.
FTP File Transfer Protocol
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
Creato da Riccardo Nuzzone
CORSO DI INFORMATICA Internet e Posta Elettronica
Internet e HTML Diffusione di informazioni mediante la rete Internet.
1 Storia di Internet Internet non è un’invenzione degli anni ’90….. Nata dagli studi di un’agenzia detta ARPA (Advanced Research Projects Agency) Internet.
InternetInternet Sede: Salvo D’acquisto 2010/2011 Docente: Vito Monno.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
1 Informatica Generale Alessandra Di Pierro Ricevimento: Giovedì ore presso Dipartimento di Informatica, Via Buonarroti,
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
INTRODUZIONE A INTERNET
Servizi Internet Claudia Raibulet
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Eprogram informatica V anno.
Il mondo del web Includere Digital-mente – Corso livello 4 docente: prof.ssa MANUELA MARSILI.
Applicazione Presentazione Sessione Trasporto Rete Data link Fisico OSI Processo / Applicazione Trasporto Rete- Internet Interfaccia di.
INTERNET E INTRANET Classe VA SIA. La Storia di INTERNET ’ – ARPANET 1969 – anno di nascita università Michigan - Wayne 1970 – – INTERNET.
Eprogram informatica V anno. Programmare in rete.
Transcript della presentazione:

MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza in rete. Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza in rete. WEB : origini, tecnologie di base (Ipertesti, HTML, HTTP, URL), tecnlogie avanzate (CGI, Java, Jsp, ASP, PHP), sicurezza (SSL, HTTPS). WEB : origini, tecnologie di base (Ipertesti, HTML, HTTP, URL), tecnlogie avanzate (CGI, Java, Jsp, ASP, PHP), sicurezza (SSL, HTTPS). origini, tecnologie di base (SMTP), tecnologie avanzate (POP, Imap), sicurezza (Antivirus, PGP). origini, tecnologie di base (SMTP), tecnologie avanzate (POP, Imap), sicurezza (Antivirus, PGP). I servizi Internet di base: le tecnologie e la sicurezza nel Web e nella Ministero dellIstruzione Università e Ricerca LA CONNESSIONE IN RETE LOCALE E GEOGRAFICA E GEOGRAFICA Aspetti tecnici e normativi

MENU Larchitettura di rete INTERNET Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete OSI Servizi di Base Appl. Client-Server Cablaggio Strutturato …..una rete di reti Internet Protocol Suite

MENU Applicazioni Client-Server Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete Gli attori di un processo client- server: Client- che richiede la risorsa ad un server in rete Client- che richiede la risorsa ad un server in rete Server - che concede ad un client di utilizzare una risorsa (servizio) in rete Server - che concede ad un client di utilizzare una risorsa (servizio) in rete Connessione in rete - che permette lindirizzamento degli Hosts e dei servizi in essi contenuti Connessione in rete - che permette lindirizzamento degli Hosts e dei servizi in essi contenuti

MENU Connessione TCP/IP Una connessione e una quintupla:Una connessione e una quintupla: protocollo= TCP o UDP protocollo= TCP o UDP indirizzo= indirizzo IP (32 bit) indirizzo= indirizzo IP (32 bit) porta= punto di accesso (16 bit) porta= punto di accesso (16 bit) Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete

MENU Porte TCP e UDP Sono il mezzo con cui un programma clientSono il mezzo con cui un programma client Indirizza un programma server Indirizza un programma server un ftp client per connettersi ad un ftp server indica: un ftp client per connettersi ad un ftp server indica: lindirizzo IP dell elaboratore remoto lindirizzo IP dell elaboratore remoto il numero della porta associata allo ftp server il numero della porta associata allo ftp server CaratteristicheCaratteristiche identificate da un numero naturale su 16 bit identificate da un numero naturale su 16 bit 0….1023 = porte privilegiate 0….1023 = porte privilegiate 1024…65535= porte utente 1024…65535= porte utente porte statiche porte statiche Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete

MENU Well Known Port Sono associate agli applicativi principali, Ad esempio: Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete

MENU The Internet Protocol Suite Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete

MENU...Il World Wide Web è una architettura software per accedere a documenti tra loro collegati e distribuiti su migliaia di macchine nellintera Internet. Cinque anni fa era un modello per distribuire dati per la fisica delle alte energie, oggi è lapplicazione che milioni di persone credono sia Internet. Il server WEB e le Tecnolgie connesse Introduzione Cosè il World Wide Web Definizione autorevole Andrew S. Tanenbaum "Computer Networks" Ottobre 1997

MENU Le radici del World Wide Web Le radici del World Wide Web Il World Wide Web (detto anche Web, WWW o W 3) è nato al Cern nel 1989 per consentire una agevole cooperazione fra i gruppi di ricerca di fisica, sparsi nel mondo. E' un'architettura software volta a fornire l'accesso e la navigazione a un enorme insieme di informazioni collegate fra loro da LINK e distribuite su milioni di elaboratori. Tale insieme di documenti forma un ipertesto (hypertext), cioè un insieme complesso e non sequenziale di associazioni, che permette all'utente di spostarsi tra argomenti correlati, indipendentemente dall'ordine in cui questi vengono presentati.. Il concetto di ipertesto risale alla fine degli anni '40: Vannevar Bush Vannevar Bush Douglas Engelbart Douglas Engelbart Ted Nelson Ted Nelson Il server WEB e le Tecnolgie connesse Ipertesto Le Origini

MENU Nel 1945 costruisce Memex, a conceptual machine,un dispositivo dove si possono memorizzare informazioni di vario genere e dove e possibile eseguire delle consultazioni a grande velocita e flessibilita grazie al meccanismo dei LINK. Vannevar Bush..The human mind ….operates by association...The human mind ….operates by association. "AS We May Think July 1945, The Atlantic Monthly Il server WEB e le Tecnolgie connesse Ipertesto Le Origini

MENU Nel 1963 costruisce il prototipo di un sistema "oNLine System" (NLS) che permette hypertext browsing editing e . Douglas Carl Engelbart Per questo sistema inventa il mouse !! Il resto e storia... Il server WEB e le Tecnolgie connesse Ipertesto Le Origini

MENU Il termine Ipertesto fu coniato nel 1965 da Ted Nelson nella Literary Machines per indicare documenti caratterizzati Ted Nelson da una struttura non sequenziale delle idee, in alternativa al formato logico sequenziale tipico dei libri, dei film e dei discorsi. Il più recente termine Ipermedia è un sinonimo che pone in evidenza le componenti non testuali: animazioni, suoni e immagini. DOCUMENTS ARE PARALLEL BY NATURE … Il server WEB e le Tecnolgie connesse Ipertesto Le Origini

MENU Per migliorare le comunicazioni tra ricercatori T.Berners-Lee e R. Cailliau, nel 1990, propongono un nuovo modo di utilizzare Internet che chiamano World Wide Web. Al di là del nome, la cosa più interessante è che in questa proposta sono già presenti tutte le idee guida che ancora oggi caratterizzano il Web. World Wide Web: proposal for a HyperText Project World Wide Web: proposal for a HyperText Project Marzo 1989 Hypertext+SGML+Internet = WWW Tim Berners-Lee Robert Cailliau Il WWW, la più nota applicazione usata su Internet, nasce al CERN, il più grande centro di ricerca europeo sulla fisica delle particelle elementari, dove lavorano fisici di tutto il modo che usano quotidianamente la Rete per tenersi in contatto e scambiarsi dati e opinioni. Il server WEB e le Tecnolgie connesse Ipertesto Il nuovo paradigma

MENU Nel 1992 Mark Andreessen sviluppa l'idea di Mosaic, il browser grafico che permise al www di svilupparsi, mentre era uno studente all'universita' dell'Illinois e membro del National Center for Supercomputing Applications (NCSA). NCSA ---> Netscape Mark Andreessen Nel 1993 M.Andreessen, insieme ad un gruppo di studenti (Enric Brina), crea la prima versione di Mosaic. Lascia in seguito l'NCSA andando alla Silicon Valley per dare un contributo alla fondazione con Jim Clark (Silicon Graphics) alla società conosciuta come: Netscape Communications Corporation Netscape fu sviluppato per semplificare l'uso di Internet nel business. Il server WEB e le Tecnolgie connesse WWW Le prime implementazioni

MENU Il Web ha diverse caratteristiche che hanno contribuito al suo enorme successo: architettura di tipo client-server: architettura di tipo client-server: ampia scalabilità; ampia scalabilità; adatta ad ambienti di rete; adatta ad ambienti di rete; architettura distribuita: architettura distribuita: perfettamente in linea con le esigenze di gestione di un ipertesto perfettamente in linea con le esigenze di gestione di un ipertesto architettura basata su standard di pubblico dominio: architettura basata su standard di pubblico dominio: possibilità per chiunque di proporre una implementazione; possibilità per chiunque di proporre una implementazione; uguali possibilità di accesso per tutte le piattaforme di calcolo uguali possibilità di accesso per tutte le piattaforme di calcolo capacità di gestire informazioni di diverso tipo capacità di gestire informazioni di diverso tipo grande interesse da parte di tutti gli utenti. grande interesse da parte di tutti gli utenti. Le caratteristiche del successo Il server WEB e le Tecnolgie connesse WWWCaratteristiche

MENU Sistema di indirizzamento basato su Uniform Resource Locator (URL): è un meccanismo standard per fare riferimento alle entità indirizzabili (risorse) nel Web, che possono essere: Sistema di indirizzamento basato su Uniform Resource Locator (URL): è un meccanismo standard per fare riferimento alle entità indirizzabili (risorse) nel Web, che possono essere: documenti (testo, immagini, suoni, ecc.); documenti (testo, immagini, suoni, ecc.); programmi eseguibili; programmi eseguibili; Linguaggio HTML (HyperText Markup Language): è il linguaggio per la definizione delle pagine Web; Linguaggio HTML (HyperText Markup Language): è il linguaggio per la definizione delle pagine Web; Protocollo HTTP (HyperText Transfer Protocol): è il protocollo che i client e i server utilizzano per comunicare. Protocollo HTTP (HyperText Transfer Protocol): è il protocollo che i client e i server utilizzano per comunicare. I 3 standard principali Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU L URL (Uniform Resource Locators) (RFC 1738), definisce univocamente la posizione di una risorsa in rete. Una URL è fatta di 3 parti, che specificano: il metodo di accesso (come si vuole accedere alla risorsa) il metodo di accesso (come si vuole accedere alla risorsa) l'host (dove è fisicamente localizzata la risorsa) l'host (dove è fisicamente localizzata la risorsa) l'identità (come è identificata la risorsa) l'identità (come è identificata la risorsa) Metodo di accesso: aaa = protocollo (http,ftp,https,etc). Per default si assume http ccc = porta TCP utilizzata nella trasmissione. Se non specificata viene utilizzata la porta di default per il protocollo selezionato. Per esempio: 80 per l http, 21 per lftp,443 per https. Host: bbb = host name (nessun default) E definibile sia come indirizzo a dominio che come indirizzo IP. Identità: ddd = pathname. Nel caso dell http identifica un percorso relativo a partire dalla root definita nel server contattato. eee = filename. Nel caso dell http se non specificato corrisponde al file di indice configurato nel server web. Tipicamente per default corrisponde a index.html o index.htm aaa://bbb:ccc/ddd/eee Il server WEB e le Tecnolgie connesse WWW Architettura software Identificatore uniforme di risorse

MENU LHTML è un linguaggio che usa annotazioni markup per descrivere la formattazione di documenti LHTML è un linguaggio che usa annotazioni markup per descrivere la formattazione di documenti E derivato dall SGML (Standard Generalized Markup Language) ISO 8879 E derivato dall SGML (Standard Generalized Markup Language) ISO 8879 E specializzato nel trattamento degli ipertesti e adattato al Web. E specializzato nel trattamento degli ipertesti e adattato al Web. I comandi per la formattazione (tag) sono inseriti in modo esplicito nel testo. I comandi per la formattazione (tag) sono inseriti in modo esplicito nel testo. Un documento descritto in HTML e sempre un file ASCII Un documento descritto in HTML e sempre un file ASCII Levoluzione dellHTML è sotto il controllo del consorzio W3C: versione 1.0 versione 1.0 versione 2.0 (RFC 1866 e RFC 2854) (...introdotto il concetto di Form) versione 2.0 (RFC 1866 e RFC 2854) (...introdotto il concetto di Form) versione 3.0 versione 3.0 versione 3.2 versione 3.2 versione 4.0 (REC-html ) versione 4.0 (REC-html ) versione versione Il server WEB e le Tecnolgie connesse WWW Architettura software Hyper Text Markup Language

MENU Il ruolo di HTML è quindi quello di definire il modo in cui deve essere visualizzata una pagina Web (detta anche pagina HTML), che tipicamente è un documento di tipo testuale contenente opportuni tag di HTML. Il client, quando riceve una pagina compie le seguenti operazioni: interpreta i tag presenti nella pagina; interpreta i tag presenti nella pagina; formatta la pagina di conseguenza, provvedendo automaticamente ad adattarla alle condizioni locali (risoluzione dello schermo, dimensione della finestra, profondità di colore, ecc.); formatta la pagina di conseguenza, provvedendo automaticamente ad adattarla alle condizioni locali (risoluzione dello schermo, dimensione della finestra, profondità di colore, ecc.); mostra la pagina formattata sullo schermo. mostra la pagina formattata sullo schermo. Nella formattazione si ignorano: sequenze multiple di spazi; sequenze multiple di spazi; caratteri di fine riga, tabulazioni, ecc. caratteri di fine riga, tabulazioni, ecc. I tag HTML possono essere divisi in due categorie: tag per la formattazione di testo; tag per la formattazione di testo; tag per altre finalità (inclusione di oggetti,interazione utente,elaborazione locale). tag per altre finalità (inclusione di oggetti,interazione utente,elaborazione locale). Il server WEB e le Tecnolgie connesse WWW Architettura software HTML: il ruolo

MENU Al crescente successo del Web si è accompagnato un continuo lavoro per ampliarne le possibilità di utilizzo e le funzionalità offerte agli utenti. In particolare, si è presto sentita l'esigenza di fornire un supporto a una qualche forma di interattività superiore a quella offerta dalla navigazione attraverso gli hyperlink (pagine statiche), ad esempio per consentire agli utenti di consultare una base di dati remota via Web. La pagine Web generate on-fly da questo tipo di interazione si definiscono: pagine dinamiche. Le estensioni più rivoluzionarie del Web in tal senso sono state: introduzione delle form per l'invio di dati al server Web ed interazione con le CGI per l elaborazione dei dati sul server stesso; introduzione delle form per l'invio di dati al server Web ed interazione con le CGI per l elaborazione dei dati sul server stesso; introduzione del linguaggio LiveScript (poi chiamato JavaScript) per la definizione di computazioni, eseguite dal client, direttamente associate a una pagina HTML; introduzione del linguaggio LiveScript (poi chiamato JavaScript) per la definizione di computazioni, eseguite dal client, direttamente associate a una pagina HTML; introduzione del linguaggio Java per la creazione di file eseguibili, che vengono trasmessi dal server al client e poi vengono eseguiti in totale autonomia dal client; indipendentemente dalla piattaforma HW e SW del sistema introduzione del linguaggio Java per la creazione di file eseguibili, che vengono trasmessi dal server al client e poi vengono eseguiti in totale autonomia dal client; indipendentemente dalla piattaforma HW e SW del sistema Il server WEB e le Tecnolgie connesse WWW Architettura software HTML: le evoluzioni

MENU Il protocollo HTTP sovraintende al dialogo fra un client e un server web: il linguaggio nativo del Web. HTTP non è ancora uno standard ufficiale. Infatti, HTTP 1.0 (rfc 1945) è informational, mentre HTTP 1.1 (rfc 2068) è ancora in fase di proposta. HTTP è un protocollo ASCII, cioè i messaggi scambiati fra client e server sono costituiti da sequenze di caratteri ASCII In questo contesto per messaggio si intende la richiesta del cliente oppure la risposta del server, intesa come informazione di controllo; viceversa, i dati della URL richiesta che vengono restituiti dal server non sono necessariamente ASCII (esempi di dati binari: immagini, filmati, suoni, codice eseguibile). Utilizzo dello standard MIME (sviluppato per la posta elettronica) LHTTP prevede che ogni singola interazione fra client-server si svolga secondo il seguente schema: apertura di una connessione di livello di transporto (TCP) tra client e server apertura di una connessione di livello di transporto (TCP) tra client e server invio di una singola richiesta da parte del client, che specifica la URL desiderata; invio di una singola richiesta da parte del client, che specifica la URL desiderata; invio di una risposta da parte del server e dei dati di cui alla URL richiesta; invio di una risposta da parte del server e dei dati di cui alla URL richiesta; chiusura della connessione di livello transport. chiusura della connessione di livello transport. E un protocollo di tipo stateless: non è previsto il concetto di sessione all'interno della quale ci si ricorda dello stato dell'interazione fra client e server. Ogni singola interazione è storia a se ed è del tutto indipendente dalle altre. Il server WEB e le Tecnolgie connesse WWW Architettura software Hyper Text Transfer Protocol

MENU Il protocollo HTTP è nato con una finalità (lo scambio di informazioni fra gruppi di ricercatori) che si è radicalmente modificata col passare del tempo. Infatti, attualmente (V1.0) il suo utilizzo si è ampliato enormemente e si cerca di sfruttarlo anche per transazioni di tipo commerciale. Questo ha messo alla frusta il protocollo soprattutto da tre punti di vista: Efficienza nell'uso della rete Il problema di fondo è che il protocollo HTTP prevede che si apra e chiuda una connessione TCP per ogni singola coppia richiesta-risposta. Si deve tenere presente che l'apertura e la chiusura delle connessioni TCP non è banale (three way handshake per l'apertura, idem più timeout per la chiusura); durante l'apertura e la chiusura non c'è controllo di flusso;la dimensione tipica dei dati trasmessi è piccola (pochi KByte);il TCP usa la tecnica dello slow start per il controllo di flusso.Di conseguenza, si ha che il protocollo HTTP impone un grave overhead sulla rete (sono frequentissime le fasi di apertura/chiusura di connessioni TCP); gli utenti hanno la sensazione che le prestazioni siano scarse (per via dello slow start). Assenza del concetto di sessione In moltissime situazioni (ad esempio nelle transazioni di tipo commerciale) è necessario ricordare lo stato dell'interazione fra client e server, che si svolge per fasi successive. Questo in HTTP è impossibile, per cui si devono trovare soluzioni ad hoc (ad esempio, restituire pagine HTML dinamiche contenenti un campo HIDDEN che identifica la transazione).In proposito c'è una proposta (State Management, rfc 2109) basata sull'uso dei cookies, cioè particolari file che vengono depositati presso il client e che servono a gestire una sorta di sessione. Carenza di meccanismi per lo scambio di dati riservati L'unico meccanismo esistente per il controllo degli accessi (Basic Authentication) fa viaggiare la password dell'utente in chiaro sulla rete. Il server WEB e le Tecnolgie connesse WWW Architettura software HTTP 1.0: i problemi aperti L HTTP versione 1.1 si propone di superare tutti i limiti della vecchia versione !!

MENU I client (o user agents) sono lo strumento a disposizione dell'utente che gli permette l'accesso e la navigazione nell'ipertesto del Web. Vengono comunemente chiamati browser (sfogliatori): NCSA Mosaic (il primo); Netscape Navigator; Microsoft Internet Explorer. Essi hanno varie competenze: trasmettere all'opportuno server le richieste di reperimento dati che derivano dalle azioni dell'utente; trasmettere all'opportuno server le richieste di reperimento dati che derivano dalle azioni dell'utente; ricevere dal server le informazioni richieste; ricevere dal server le informazioni richieste; visualizzare il contenuto della pagina Web richiesta dall'utente, gestendo in modo appropriato tutte le tipologie di informazioni in esse contenute; visualizzare il contenuto della pagina Web richiesta dall'utente, gestendo in modo appropriato tutte le tipologie di informazioni in esse contenute; consentire operazioni locali sulle informazioni ricevute (ad esempio salvarle su disco, stamparle). consentire operazioni locali sulle informazioni ricevute (ad esempio salvarle su disco, stamparle). Di norma i browser gestiscono direttamente solo alcune tipologie di informazioni: testo formattato; testo formattato; immagini fisse; immagini fisse; codice eseguibile. codice eseguibile. Gli altri tipi di informazioni vengono gestiti in uno (o entrambi) dei seguenti modi: consegnandoli a un programma esterno:helper consegnandoli a un programma esterno:helper per mezzo di plug-in, ossia librerie di codice eseguibile e specializzato caricato in memoria secondo le necessità. In questa situazione, se il necessario plug-in è installato, il browser provvede a caricarlo e gli affida la gestione delle informazioni da trattare. per mezzo di plug-in, ossia librerie di codice eseguibile e specializzato caricato in memoria secondo le necessità. In questa situazione, se il necessario plug-in è installato, il browser provvede a caricarlo e gli affida la gestione delle informazioni da trattare. User Agents Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Il server è tipicamente un processo in esecuzione su un elaboratore (Unix !!). Esso, di norma, è sempre in esecuzione (tranne che in situazioni eccezionali) ed ha delle incombenze molto semplici: rimanere in ascolto di richieste da parte dei client; rimanere in ascolto di richieste da parte dei client; fare del suo meglio per soddisfare ogni richiesta che arriva: fare del suo meglio per soddisfare ogni richiesta che arriva: se possibile, consegnare il documento richiesto; se possibile, consegnare il documento richiesto; altrimenti, spedire un messaggio di notifica di errore. altrimenti, spedire un messaggio di notifica di errore. deve fare il suo lavoro nel modo più efficiente possibile, dunque deve essere implementato con un occhio di riguardo alle prestazioni; deve fare il suo lavoro nel modo più efficiente possibile, dunque deve essere implementato con un occhio di riguardo alle prestazioni; deve essere in grado di gestire molte richieste contemporaneamente, e mentre fa questo deve continuare a rimanere in ascolto di nuove richieste. Possibili soluzioni: deve essere in grado di gestire molte richieste contemporaneamente, e mentre fa questo deve continuare a rimanere in ascolto di nuove richieste. Possibili soluzioni: clonazione del server:per ogni nuova richiesta che arriva, il server (che è sempre in ascolto) crea una nuova copia di se stesso alla quale affida la gestione della richiesta;si mette quindi nuovamente in attesa di nuove richieste; la copia clonata si occupa di soddisfare la richiesta e poi termina. server multithreaded:esiste una sola copia del server, che però è progettato per essere in grado di generare thread multipli Il server WEB e le Tecnolgie connesse WWW Architettura software Server Agents

MENU Modalità di comunicazioni Client-Server Le modalita di comunicazione tra un browser ed un server web avvengono in chiaro attraverso il protocollo di trasferimento per ipertesti HTTP (Hyper Text Transfer Protocol ). Questo protocollo lavora per creare, trasferire e gestire dei dati formattati secondo il linguaggio HTML (Hypertext Markup Language) da un sistema ad un altro in maniera indipendente dal sistema stesso. La connessione spesso è stabilita dal client prima di ogni richiesta, e chiusa dal server dopo ogni risposta. L'HTTP disciplina i riferimenti attraverso gli URI (Universal Resource Identifier) che possono essere divisi per locazione URL e per nome URN, indica in tal modo la risorsa a cui applicare il metodo della request. Le quattro operazioni svolte in sequenza dal protocollo HTTP sono: connessione con il server che contiene il documento,connessione con il server che contiene il documento, richiesta del documento,richiesta del documento, recupero della pagina interessata attraverso la risposta del serverrecupero della pagina interessata attraverso la risposta del server chiusura della connessione.chiusura della connessione. Questo ciclo viene ripetuto per ciascuna pagina richiesta. L`HTTP usa la well known port numero 80 del livello di trasporto TCP. Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Le tecnologie piu` comunemente utilizzate per realizzare una comunicazione sicura tra il Browser ed il Web Server: Le comunicazioni Sicure L`SSL (Secure Socket Layer) (documentato in un IETF draft nella sua terza revisione) e` stato sviluppato dalla Netscape per fornire connessioni sicure nel trasferimento di dati sensibili. Un trasferimento SSL utilizza una porta TCP dedicata:443. E` necessario quindi specificare nell`URL un metodo differenziato di accesso: STTP. La sicurezza nel trasferimento delle informazioni e` assicurata da una codifica basata sull`algoritomo RC4 sviluppato dalla RSA, Inc. L` SHTTP (Secure HTTP) e` stato sviluppato dalla Enterprise Integration Technologies (EIT), ora Verifone, e condivide gli stessi obiettivi di massima dell`SSL. La codifica a chiave- pubblica chiave-privata dei dati si basa sull`algoritmo di Rivest- Shamir-Adleman. Non utilizza porte proprietarie sul TCP. La differenza fondamentale tra i due sta nel fatto che SSL crea una connessione sicura tra client e server sulla quale si puo` poi trasportare qualsiasi dato mentre l`S-HTTP trasporta i singoli file in modo sicuro, attraverso un meccanismo di certificati di autenticita` puntuali. Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Server Side Application In una applicazione Client-Server si dice di programmi che verranno eseguiti sul Server. Nel mondo del WEB: Scripts CGI Scripts CGI Applet Java JSP Applet Java JSP ASP ASP Script PHP Script PHP Client Side Application In una applicazione Client Server si dice di programmi che verranno eseguiti sul Client. Nel mondo del WEB: JavaScript JavaScript Applet Java Applet Java Web Application Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Le tecnologie di integrazione delle Web Server Side Applications con i Database permettono agli utenti in rete Internet di accedere semplicemente ad una quantita' enorme di informazioni organizzate in sistemi di gestione di base di dati. Infatti: La gestione e/o consultazione dei dati e' indipendente dalla dislocazione fisica nella rete delle informazioni. La gestione e/o consultazione dei dati e' indipendente dalla dislocazione fisica nella rete delle informazioni. Il browser diventa lo strumento per interagire con il database. Il browser diventa lo strumento per interagire con il database. E possibile effettuare: E possibile effettuare: operazioni di amministrazione e gestione del database; operazioni di amministrazione e gestione del database; operazioni di aggiornamento, convalida e popolamento. operazioni di aggiornamento, convalida e popolamento. Sistema Web/Database Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Server Side Applications CGI (Common Gateway Interface): e la tecnologia piu standard e piu vecchia per interfacciare un server Web con un programma, scritto in un linguaggio qualunque, che viene eseguito sul server. Attraverso questa interfaccia e possibile passare dati dal server Web al programma applicativo e viceversa. Il programma quindi puo eseguire qualunque tipo di elaborazione (estrazione di dati da database, manipolazione degli stessi, calcoli, ecc.). Questa tecnologia e abbastanza inefficiente e abbastanza poco sicura, quindi viene utilizzata sempre piu di rado. ASP (Active Server Pages): e una tecnologia sviluppata da Microsoft e successivamente adottata anche da altri produttori di server Web (ad es. Netscape). E basata sul meccanismo di introdurre allinterno di una pagina HTML codice ActiveX (Visual Basic, Visual C++, Java, VBScript). JSP (Java Server Pages): e una tecnologia sviluppata da Sun come alternativa alle ASP. Funzionano nello stesso modo, salvo che nelle pagine HTML invece di essere inserito del codice SQL viene inserito del codice Java. Attraverso Java e possibile effettuare qualunque elaborazione (estrazione dei dati, successiva manipolazione degli stessi, calcoli, ecc.). Il server Web poi costruisce la pagina come integrazione del codice HTML statico e dei risultati prodotti dal codice Java. Ovviamente e una tecnologia piu potente delle ASP. Il server WEB e le Tecnolgie connesse WWW Architettura software

MENU Personal Hypertext Prepocessor Rasmus Lerdorf nel 1994 scritto il PHP/FI (Personal Home Page / Form Interpreter). A seguito del successo riscosso nel popolo della rete, Rasmus scrisse una seconda versione che offriva un maggior numero di funzioni ed il supporto per interfacciare il database miniSQL. Nel 1997 la costituzione di un team di lavoro porta alla riscrittura completa del codice con la versione PHP3. Con la versione 4 il team di lavoro ha potenziato l'implementazione dell'impalcatura object-oriented e con il prodotto ZEND (PHP4) offre un notevole incremento delle prestazioni. Il server WEB e le Tecnolgie connesse WWW Architettura software Disponibile come : modulo del Web server (Su Web Server APACHE su sistemi UNIX) modulo del Web server (Su Web Server APACHE su sistemi UNIX) script CGI separato (Su tutti i Web server in ambiente Unix e Windows9X/Me/NT/2000) script CGI separato (Su tutti i Web server in ambiente Unix e Windows9X/Me/NT/2000)

MENU Nasce la posta elettronica Internet La storia: nascita ed evoluzione delle tecnologie 1972 Ray Tomlinson Marzo 1972: Ray Tomlinson, BBN, idea la messaggistica elettronica ( ) e sceglie il simbolo che la implenta "I was lucky. I was writing this code and had to find some character to separate the name from the place. I looked at the keyboard and when you get right down to it, there aren't a lot of options. I thought of sign in just a few seconds,"

MENU Posta elettronica Concetti Fondamentali Internet Internet Tecnologia: la modellistica di rete I server che forniscono il servizio di utilizzano il protocollo SMTP (Simple Mail Transfer Protocol) utilizzano il protocollo SMTP (Simple Mail Transfer Protocol) gestiscono le caselle postali gestiscono le caselle postali gli utenti devono possedere una casella postale su un server di gli utenti devono possedere una casella postale su un server di Meccanismo di funzionamento: 1. un utente invia la posta in partenza al proprio server (SMTP) 1. un utente invia la posta in partenza al proprio server (SMTP) 2. il server la inoltra, via Internet, al server del destinatario 2. il server la inoltra, via Internet, al server del destinatario 3. il server del destinatario la memorizza nella casella postale 3. il server del destinatario la memorizza nella casella postale 4. il destinatario si collega al suo server e scarica la posta in arrivo (POP,IMAP,Web) 4. il destinatario si collega al suo server e scarica la posta in arrivo (POP,IMAP,Web) SMTP POP-IMAP-(WWW) SMTP La posta elettronica trasferisce solo file di testo. Con lausilio di tecnologie di conversione (mime) si possono trasportare anche file binari

MENU Bibliografia - Sitografia Il server WEB e le Tecnolgie connesse Bibliografia e Sitografia A. Ford :"Apache Pocket Reference"; O'Reilly Associates, HOPS Libri K. Jamasa et al.: Tutto WEB corso completo; McGrawHill B. Laurie et al.: Apache la guida; OReilly, Apogeo OpenPress A. S. Tanenbaum: Reti di Computers; Prentice Hall International, Utet Libreria D. Giacomini:Appunti di informatica libera" Silvano Gai:Reti Locali; World Wide Web Consortium home page: The APACHE - HTTP Server Project home page: Apache HTTP Server Version 1.3: http.//httpd.apache.org/ D. Beatrici CNR Polarnet:

MENU LA CONNESSIONE IN RETE LOCALE E GEOGRAFICA (aspetti tecnici e normativi) Il server WEB e le tecnolgie connesse Docente: Gaetano Chionchio System & Network Administrator Assunto nel 1987 come progettista elettronico CAD. Dal 1995 si occupa della gestione di sistemi informatici. Presso lArea di Ricerca di Roma 2 (Tor Vergata) e responsabile delle infrastrutture di rete, dei servizi di interoperabilità e dei progetti avanzati di Campus per il Software Scientifico e la Formazione Professionale. Riveste la funzione di consulente informatico per lEnte presso il consorzio Parades, lASI e lISPESL. E membro del comitato scientifico per la formazione nella CIRT. Servizi Informatici di Campus Phone Fax GSM GSM URL Sezione di Roma 2 Tor Vergata