Internet e World Wide Web - dia.uniroma3.it › java › labinf › materiale ›...
Transcript of Internet e World Wide Web - dia.uniroma3.it › java › labinf › materiale ›...
Laboratorio di InformaticaC-02 - Internet e World Wide Web1
Laboratorio di Informatica
Alfonso Miola
Internet e World Wide Web
Dispensa C-02Settembre 2005
Laboratorio di InformaticaC-02 - Internet e World Wide Web2
Nota bene
Il presente materiale didattico è derivato dalla dispensa prodotta da
Luca Cabibbo
Dip. Informatica e Automazione
Università degli Studi ‘Roma Tre’
Il suo utilizzo in questo corso è stato concesso dall’autore
Laboratorio di InformaticaC-02 - Internet e World Wide Web3
Contenuti
Internet e World Wide Web
Internet
nomi su Internet
servizi di Internet
World Wide Web
reperimento di informazioni sul Web
applicazioni sul Web
Laboratorio di InformaticaC-02 - Internet e World Wide Web4
Internet e World Wide Web
Siamo ora in grado di discutere l’architettura di
Internet e del World Wide Web
viene discussa la corrispondenza tra i concetti
tecnologici introdotti e Internet e l’architettura
cliente/servente del World Wide Web
vengono discusse le capacità del World Wide Web
come piattaforma per la realizzazione di
applicazioni distribuite
Laboratorio di InformaticaC-02 - Internet e World Wide Web5
Internet
Una internet (con la “i” minuscola) è una rete di calcolatori basata sulla famiglia di protocolli TCP/IP, nota anche come Internet Suite
TCP/IP significa Transport Control Protocol/Internet Protocol
Internet (con la “I” maiuscola) è la più grande rete di reti di calcolatori, a diffusione mondiale
ogni calcolatore collegato a Internet può comunicare con ogni altro calcolatore collegato a Internet oggi ci sono milioni e milioni di calcolatori collegati a Internet in corrispondenza, ci sono milioni e milioni di utenti che comunicano tramite Internet
Laboratorio di InformaticaC-02 - Internet e World Wide Web6
Breve storia di Internet
Internet ha origine dal progetto ARPANETnella metà degli anni sessanta, ai tempi della guerra fredda, il Dipartimento della Difesa degli Stati Uniti voleva costruire unarete di comando e di controllo che potesse sopravvivere a una guerra nucleare il progetto fu sviluppato da università e enti di ricerca americani
ponendo prima le basi per la reti di calcolatori e poi studiando il problema della interconnessione di reti mediante lo sviluppo della famiglia di protocolli TCP/IP
Crescita di Internet i calcolatori collegati nel 1969 erano 4, e nel 1972 erano 34nel 1990 Internet collegava 200.000 calcolatori, e nel 1992 venne collegato a Internet il milionesimo calcolatore gli utenti oggi sono decine di milioni, e raddoppiano approssimativamente ogni anno
Laboratorio di InformaticaC-02 - Internet e World Wide Web7
Nomi su InternetInternet collega diverse tipologie di risorse
ad esempio, calcolatori, reti di calcolatori, utenti, applicazioni, documenti
la gestione della comunicazione tra queste risorse richiede l’associazione di un nome univoco a ciascuna risorsa
La gestione di un insieme di nomi vasto e costantemente modificabile viene effettuata sulla base di una organizzazione gerarchica dello spazio dei nomi
i calcolatori vengono suddivisi in domini
i domini hanno a loro volta un’organizzazione gerarchica
utenti, applicazioni e documenti vengono identificati nell’ambito del dominio a cui appartengono
Laboratorio di InformaticaC-02 - Internet e World Wide Web8
Nomi di calcolatori e domini
A ciascun calcolatore connesso permanentemente a Internet viene assegnato un nome, composto da una sequenza di nomi separati da punti
ad esempio, duke.dia.uniroma3.it e www.cs.stanford.edu
Questa struttura è basata su una suddivisione gerarchica dei nomi in insiemi di calcolatori chiamati domini
esempi di domini (di dimensioni via via crescenti) sono dia.uniroma3.it — il dominio dei calcolatori collegati a Internet del Dipartimento di Informatica e Automazione(DIA) dell’Università Roma Tre in Italia uniroma3.it — il dominio dei calcolatori collegati a Internet dell’Università Roma Tre in Italia it — il dominio dei calcolatori collegati a Internet in Italia
Nell’esempioduke.dia.uniroma3.it indica il calcolatore chiamato duke nel dominio dia.uniroma3.it
Laboratorio di InformaticaC-02 - Internet e World Wide Web9
Nomi di utenti
Agli utenti dei calcolatori di Internet viene assegnato
un nome, composto da un identificativo dell’utente
nell’ambito di un dominio o di un calcolatore
ad esempio, [email protected]
questo nome indica l’utente chiamato miola nel
dominio dia.uniroma3.it
Laboratorio di InformaticaC-02 - Internet e World Wide Web10
Servizi di InternetInternet fornisce ai suoi utenti un certo numero di servizi di interoperabilità
per interoperabilità si intende la disponibilità di servizi di adattamento e conversione che rendono possibile lo scambio di informazioni tra sistemi (in genere non omogenei)
esempi di servizi di interoperabilità sono la posta elettronica e il World Wide Web
ciascun servizio di interoperabilità corrisponde a uno o piùprotocolli applicativi
ad esempio, il World Wide Web è basato sul protocollo HTTP
la posta elettronica è basata sui protocolli SMTP, POP e IMAP
Laboratorio di InformaticaC-02 - Internet e World Wide Web11
I principali servizi di interoperabilità di Internet
Collegamento remotoun utente può collegarsi su un altro calcolatore su cui èaccreditato
Trasferimento di fileun utente può copiare file da un calcolatore all’altro, eventualmente accedendo file di dominio pubblico
Posta elettronicala possibilità di comporre, spedire e ricevere messaggi in formato elettronico
Bacheca elettronicagruppi di discussione specializzati, in cui utenti che condividono un interesse possono scambiarsi messaggi
World Wide Webaccesso e condivisione di documenti sotto forma di ipertesto distribuito
Laboratorio di InformaticaC-02 - Internet e World Wide Web12
World Wide WebIl World Wide Web è un servizio applicativo di Internet
è una applicazione distribuita di Internet, realizzata secondo ilmodello cliente/servente è un servizio basato sul protocollo HTTP (al livello applicativo)
HTTP è un acronimo per HyperText Transfer Protocol(protocollo per il trasferimento di ipertesti)
“World Wide Web” significa letteralmente “ragnatela intorno al mondo”
Il Web nasce da un progetto del CERN (Tim Berners-Lee, 1989), per permettere a gruppi di scienziati appartenenti a paesi diversi di condividere informazioni su esperimenti di fisica
obiettivo del progetto era di fornire uno strumento per l’accesso integrato a informazioni
rappresentate in un numero molteplice di forme e formati diversi interrelate
Laboratorio di InformaticaC-02 - Internet e World Wide Web13
Architettura del World Wide Web
L’architettura cliente/servente del World Wide Web èbasato sulle seguenti componenti
servizio
il servizio di accesso a un documento mediante il suo indirizzo
serventi
sono applicazioni (chiamate server web) che vengono eseguite dai calcolatori che forniscono l’accesso a propri documenti
clienti
sono applicazioni - i browser web - che vengono eseguite dai calcolatori che devono visualizzare i documenti
Laboratorio di InformaticaC-02 - Internet e World Wide Web14
Architettura del World Wide Web . . .
clienti
richiesta di documenti mediante il protocollo HTTP documenti
serventi
Laboratorio di InformaticaC-02 - Internet e World Wide Web15
Nomi sul World Wide Web
I nomi sul World Wide Web (chiamati URL) permettono l’identificazione di risorse nell’ambito di un protocollo applicativo
URL è un acronimo per Uniform Resource Locator
ad esempio, l’URL di un documento sul Web può essere http://www.virgilio.it/canali/meteo/italia/roma.html
In un URL si possono identificare tre parti il nome di un protocollo applicativo
nell’esempio, http, che è il protocollo del World Wide Webil nome di un calcolatore (o di un dominio)
nell’esempio, www.virgilio.itil nome di un documento (con percorso e nome del file)
nell’esempio, /canali/meteo/italia/roma.htmlle parti di un URL rispondono alle seguenti domande
come si può accedere alla pagina? dove si trova la pagina? qual è la pagina richiesta?
Laboratorio di InformaticaC-02 - Internet e World Wide Web16
Il linguaggio HTML
Le pagine web sono solitamente scritte nel linguaggio HTML
HTML è un acronimo per HyperText Markup Language(linguaggio per ipertesti a marcature)
Un documento HTML è un file di testo, strutturato in componenti logici (chiamati elementi) marcati da sequenze speciali (chiamate tag)
ad esempio, un possibile elemento di una pagina web è il titolo (che deve essere visualizzato nella barra del titolo del browser)
l’elemento titolo viene racchiuso tra i tag <title> e </title>
alcuni elementi tipici di un documento web sono intestazione e corpo, titoli di sezione, paragrafi, liste, parole evidenziate, immagini, ancore e collegamenti ipertestuali, ...
Laboratorio di InformaticaC-02 - Internet e World Wide Web17
Un esempio di (porzione di) documento HTML
<html>
<head><title>Risorse Java</title>
</head>
<body><h1 align="left"><img border="0" src="duke.gif">
<center>Risorse Java</center></h1>
<h2>Tecnologia Java</h2><ul>
<li><a href="http://java.sun.com">java.sun.com</a>, The Source for Java Technology
</li><li><a href="http://java.sun.com/j2se/1.3/">
Java 2 Platform</a>, Java 2 Software Development Kit, Standard Edition</li>
</ul>...
elementi
tag
Laboratorio di InformaticaC-02 - Internet e World Wide Web18
Visualizzazione di documenti HTML
Il browser web è in grado di visualizzare pagine HTML
Laboratorio di InformaticaC-02 - Internet e World Wide Web19
Funzionamento di un server web
Un server web è una applicazione in grado di fornire documenti ipertestuali (su richiesta, solitamente fatta da browser web)
La modalità tipica di funzionamento di un server web è la seguente
si consideri ad esempio un browser web che richiede l’accesso alla pagina http://www.virgilio.it/canali/meteo/italia/roma.html
il browser inoltra la richiesta http della pagina /canali/meteo/italia/roma.html al calcolatore www.virgilio.it
quando il server web in esecuzione sul calcolatore www.virgilio.it riceve questa richiesta, allora accede al file percorso_file_web/canali/meteo/italia/roma.html (dove percorso_file_web è il percorso in cui il calcolatore memorizza i propri documenti web) e lo invia al browser web in risposta della sua richiesta
Laboratorio di InformaticaC-02 - Internet e World Wide Web20
Funzionamento dinamico di un server web
La richiesta di accesso a una pagina può essere esaudita da un server web generando la pagina HTML in modo dinamico, mediante l’esecuzione di un apposito programma applicativo
questo è possibile, ad esempio, usando la tecnologia CGI(Common Gateway Interface) o linguaggi di scripting come ASP (Active Server Pages) e JSP (Java Server Pages)
In questa modalità dinamica di funzionamento, una richiesta di accesso viene interpretata dal server come richiesta di esecuzione di una applicazione
questa modalità di funzionamento viene adottata, ad esempio, in tutti i casi in cui l’utente interagisce con un modulo web, riempiendo dei campi e, alla fine, cliccando su un bottone
Questa modalità di funzionamento espande enormemente le capacità del World Wide Web - anche noi ne faremo uso
Laboratorio di InformaticaC-02 - Internet e World Wide Web21
Altre funzionalità dei browser web
Un browser web è lo strumento che permette di accedere e visualizzare pagine web
un browser è inizialmente in grado di visualizzare documenti nei principali formati corrispondenti a standard pubblici, come HTML, GIF e JPEG (per le immagini)
Vengono ora discusse altre funzionalità offerte dai browser web
la possibilità di eseguire piccole applicazioni (applet) scaricate da un server web
la possibilità di installare moduli applicativi (plug-in) per la visualizzazione di documenti in formati non inizialmente previsti
la possibilità di accedere ad altri servizi applicativi
Laboratorio di InformaticaC-02 - Internet e World Wide Web22
Applet
Un applet è un programma immerso una pagina web un applet è una piccola applicazione che
viene acceduta da un server webviene eseguita dal browser web (non dal server)
gli applet rendono “attive” le pagine Web
Laboratorio di InformaticaC-02 - Internet e World Wide Web23
Plug-in
Un plug-in è un modulo software che può essere associato a un browser web per espanderne le funzionalità
plug-in sono necessari per la visualizzazione di documenti in formati non standard o proprietari — ad esempio, nel formato PDF (Portable Document Format) della Adobe o Quick Time della Apple
solitamente, i produttori di applicazioni per la generazione di documenti in formati proprietari forniscono, sul loro sito web e in forma gratuita, applicazioni e plug-in per la visualizzazione di documenti in quel formato
in alcuni casi, il browser stesso è in grado di riconoscere la necessità di un plug-in e si offre di cercarlo su Internet e di installarlo
Laboratorio di InformaticaC-02 - Internet e World Wide Web24
Esempio — plug-in per il formato PDF
Laboratorio di InformaticaC-02 - Internet e World Wide Web25
Accesso ad altri servizi
Un browser web può consentire l’accesso a servizi applicativi corrispondenti a protocolli diversi da HTTP
ad esempio, il trasferimento di file e la posta elettronica
è sufficiente usare nell’URL il protocollo del servizio che si vuole accedere
ad esempio, mailto per la posta elettronica, ftp per il trasferimento di file, telnet per il collegamento remoto
l’accesso a un diverso protocollo può essere gestito direttamente dal browser (come nel caso di ftp) o può richiedere l’esecuzione di un’altra applicazione (come nel caso di mailto e telnet)
Laboratorio di InformaticaC-02 - Internet e World Wide Web26
Esempio — accesso al servizio ftp
Laboratorio di InformaticaC-02 - Internet e World Wide Web27
Reperimento di informazioni sul WebIl Web è un insieme di documenti, organizzati in siti, che forniscono informazioni relative a moltissime tematiche
tuttavia, l’accesso a un documento è possibile solo
se si conosce l’URL del documento, oppure
se si dispone di una pagina che contiene un riferimento al documento
La ricerca e l’accesso a informazioni sul Web è facilitata dai seguenti strumenti
preferiti e bookmarksun indirizzario di pagine web, gestito individualmente mediante il browser web consente solo di ritrovare pagine già visitate
indici virtuali motori di ricerca portali
Laboratorio di InformaticaC-02 - Internet e World Wide Web28
Indici virtuali
Un indice virtuale è un sito web che gestisce (manualmente) un indirizzario
Laboratorio di InformaticaC-02 - Internet e World Wide Web29
Motori di ricerca
Un motore di ricerca è un sito web che consente la ricerca di documenti sul Web sulla base di un modulo web su cui è possibile specificare delle parola chiave da usare per la ricerca
Laboratorio di InformaticaC-02 - Internet e World Wide Web30
Motori di ricerca . . .
I motori di ricerca sono basati su un insieme di tecnologie, checonsentono l’accesso automatico e l’indicizzazione di pagine web, nonché la ricerca per parola chiave
Laboratorio di InformaticaC-02 - Internet e World Wide Web31
Portali
Un portale è un sito web che fornisce uno o più dei seguenti servizi
accesso unificato alle informazioni di una organizzazione
sulla base di indici e/o un motore di ricerca
accesso unificato al web
sulla base di indici e/o un motore di ricerca
novità e notizie
Esempio di portali
www.virgilio.it
www.kataweb.it
www.altavista.com
originariamente era solo un motore di ricerca
portali aziendali
Laboratorio di InformaticaC-02 - Internet e World Wide Web32
Esempio di portale
Laboratorio di InformaticaC-02 - Internet e World Wide Web33
Applicazioni sul WebIl World Wide Web, nato originariamente con lo scopo di condividere informazioni, si sta recentemente affermando anche come piattaforma per la realizzazione di applicazioni distribuite su Internet
il protocollo HTTP offre infatti la possibilità di eseguire applicazioni sul server e sul browser
Ad esempio, le applicazioni di commercio elettronico consentono
di accedere (mediante navigazione e/o ricerca) a un catalogo di prodotti
di selezionare uno o più prodotti per l’acquisto
di confermare l’acquisto
specificando l’indirizzo per la consegna
pagando mediante carta di credito
Laboratorio di InformaticaC-02 - Internet e World Wide Web34
Esempio di sito per il commercio elettronico