internet e il web

Transcript

internet e il web
Appunti di Sistemi
A cura del prof. ing. Mario Catalano
Internet e il
Web
1
Internet
Internet è un insieme di
reti informatiche
collegate tra loro in tutto
il mondo. Tramite una
connessione a Internet è
quindi possibile
comunicare con gli altri
computer ovunque si
trovino nel mondo.
2
Cosa è e cosa non è Internet




Internet è in primo luogo uno strumento di
comunicazione e di scambio di informazioni.
Internet è una immensa risorsa di informazioni, ma
non è il deposito universale della conoscenza
umana.
Internet non può mai costituire l’unica fonte
informativa.
Internet non integra e organizza da sé
l’informazione fornita.
3
Com’è fatta Internet
Il provider è una società che ha dei server collegati costantemente a Internet.
Permette agli utenti, previa registrazione dei dati, di accedere ai propri server e
quindi a Internet mediate un collegamento per mezzo della linea telefonica.
4
Com’è fatta Internet
L’Internet Service Provider (ISP) offre ai propri utenti, quali
l’accesso a Internet e una (o più) casella di posta elettronica.
Spesso questa funzione è svolta dalle società di telefonia (o da
aziende a esse collegate).
5
Com’è fatto il Web
Un sito Web è in genere costituito da più pagine Web. La pagina
iniziale di un sito Web è denominata home page.
Ogni sito Web è identificato da un indirizzo Internet univoco,
denominato anche URL (Uniform Resource Location).
6
Il WWW



Il World Wide Web è basato su un progetto del 1989, in
Svizzera, presso i laboratori del centro di ricerca CERN, per
assicurare lo scambio di informazioni tra i membri della
comunità scientifica.
Il World Wide Web (WWW) è un servizio che consente di
usufruire delle informazioni contenute nelle pagine web.
Il successo della 'ragnatela mondiale' è stato tale che
attualmente, per la maggior parte degli utenti (e dei massmedia), essa coincide con la rete stessa. Sebbene questa
convinzione sia tecnicamente scorretta, è indubbio che gran
parte del 'fenomeno Internet' sia dovuto proprio alla diffusione
del Web.
7
Com’è fatto il Web
Ogni pagina Web è composta da testo, immagini, suoni,
video e collegamenti a un’altra pagina del sito, a un
riferimento della pagina stessa detto segnalibro o a un altro
sito.
Ogni pagina Web è realizzata mediante un
linguaggio detto HTML.
HTML (HyperText Markup Language):
linguaggio utilizzato per realizzare i
documenti ipertestuali del Web. Si tratta di
un gruppo di codici che indicano al browser
come visualizzare la pagina e permettono di
stabilire collegamenti con altre pagine o altri
siti.
8
Come è fatto il Web
Le pagine web, da sole o organizzate in un sito, sono
concepite come un ipertesto.
Esse funzionano attraverso i link che permettono una
“navigazione” delle pagine stesse.
Il web mondiale, considerati i collegamenti tra i siti web,
può essere considerato un gigantesco ipertesto.
Ipertesto: metodo di rappresentazione delle informazioni nel
quale testo, immagini, suoni e animazioni vengono collegati
in un tessuto complesso e non sequenziale di associazioni,
in modo da permettere all’utente di spostarsi tra argomenti
correlati, indipendentemente dall’ordine in cui questi
vengono presentati.
9
Come navigare su Internet
Per visualizzare le informazioni sul Web, è necessario un apposito
software denominato browser Web. Tale software consente di
accedere in modo semplice e rapido a documenti denominati
pagine Web.
I browser più famosi sono:
• Microsoft Internet Explorer
•Mozilla Firefox
•Safari
•Google Chrome
10
• Opera
Client Web (Browser)

Il client Web è un’applicazione software che svolge il
ruolo di interfaccia fra l’utente ed il WWW, mascherando
la complessità di Internet.

Funzioni principali
– inviare opportuni messaggi al server Web per ottenere le
risorse richieste
– interpretare il codice ipertestuale HTML
– elaborare il codice allo scopo di visualizzare in modo
appropriato il contenuto delle pagine sullo schermo.
11
I server web
•Host che contiene iperstesti (documenti
ipermediali)
•Pagine HTML, ASP,…..
http
•Protocollo http
•Web Browser
Pagina web
Internet
TCP/IP
12
Protocollo HTTP

HyperText Trasmission Protocol (HTTP) è il protocollo
che permette il reperimento delle risorse Web.

E’ un protocollo applicativo di richiesta/risposta basato
tipicamente sulla suite di protocolli TCP/IP.

Tutti i client e server Web devono supportare il protocollo
HTTP per poter scambiare richieste e risposte.
Per questa ragione i client e i server Web sono chiamati
anche client HTTP e server HTTP.
13
Richiesta HTTP

Una richiesta HTTP comprende un metodo, un URL,
l’identificativo della versione del protocollo HTTP, ed un insieme
di extension header.

Il metodo specifica il tipo di operazione che il client richiede al
server. Il metodo più comune è GET che serve per acquisire
pagine Web.

Gli header contengono informazioni addizionali, quali la data e
l’ora della comunicazione, il tipo di software utilizzato dal client,
i tipi di dato che il browser è in grado di visualizzare, per un
totale di circa 50 tipi di header differenti.
14
Risposta HTTP

Una risposta HTTP comprende, oltre al contenuto
della risorsa richiesta, un header contenente
l’identificativo della versione del protocollo HTTP, il
codice di stato, l’informazione di stato in forma
testuale, ed un insieme di possibili altre
informazioni di risposta.

Se la pagina richiesta, oltre al testo HTML, contiene
altri oggetti, ciascuno di essi sarà identificato da un
URL differente, per cui è necessario che il browser
invii un esplicito messaggio di richiesta per ognuno
degli elementi collegati alla pagina.
15
HTTP
16
Alcuni codici di risposta
Esito
Codice numerico
(status code)
Specifica testuale
(reason phrase)
OK, la risorsa è stata
trovata e viene inviata
200
OK
Risorsa spostata
301
Moved permanently
Risorsa non modificata
304
Not Modified
Richiesta non valida
400
Bad request
Richiesta di autenticazione
401
Unauthorized
Richiesta di pagamento
402
Payment required
Accesso vietato
403
Forbidden
Risorsa non esistente
404
Not found
Errore nel server
500
Server error
Non implementato
501
Not Implemented
Gateway difettoso
502
Bad Gateway
Servizio non disponibile
503
Service Unavailable
17
Fasi di una richiesta HTTP
Client
browser
oggetto Web
(5)
richiesta HTTP
(4)
INTERNET
(1)
server Web
204.55.62.18
(3)
204.55.62.18
(2)
www.itimedi.it?
DNS sever locale
DNS server
per www.itimedi.it
Fase di lookup: (1) - (2) - (3)
Fase di richiesta: (4) - (5)
18
Azioni di un browser (1)
Fase di lookup


•
Il browser acquisisce dall’utente l’URL da richiedere.
Il browser invoca il DNS server per conoscere, tramite il
sistema DNS, l’indirizzo IP dell’URL cercato.
Se esistente, il DNS restituisce l’indirizzo IP.
Fase di richiesta
•
•
•

Il browser attiva una connessione TCP con l’host che ha
l’indirizzo IP individuato.
Sfruttando questa connessione, il browser richiede
mediante il protocollo HTTP la risorsa specificata nell’URL.
Il server Web invia la pagina richiesta.
Se vi sono oggetti allegati alla pagina, il browser effettua
una richiesta per ciascuno di essi.
19
Azioni di un browser (2)
Fase di visualizzazione
•
Una volta inviati tutti gli oggetti (nel caso di protocollo HTTP/1.1)
o dopo aver inviato ciascun oggetto (protocollo HTTP/1.0), il
server chiude la connessione TCP.
•
Non appena riceve il primo file, il browser analizza come
visualizzare sul monitor il testo contenuto nella pagina.
•
Il browser carica e mostra gli eventuali oggetti allegati alla pagina.
•
Nel caso in cui l’oggetto ricevuto è in qualche formato non
direttamente interpretabile dal browser, questi può attivare un
apposito programma plug-in che ne consente la visualizzazione.
20
Compiti del server Web
Il compito del server che fornisce pagine Web statiche è
molto semplice:
– attendere da parte dei browser richieste di connessione
TCP attraverso cui ricevere una richiesta HTTP
– decifrare l’URL della richiesta per determinare il file
cercato
– controllare se il file è disponibile
– in caso affermativo, spedire il file al browser attraverso
la connessione TCP aperta
– infine, chiudere la connessione subito dopo aver inviato
l’ultimo pacchetto concernente il file
21
Uniform Resource Locator
Il sistema di indirizzamento delle risorse è basato su
Uniform Resource Locator (URL), un meccanismo
standard per fare riferimento a tutte le risorse presenti
nel Web:
– pagine (testo, immagini, suoni, video, ...)
– risultati di esecuzioni
– programmi eseguibili
22
Uniform Resource Locator
schema :// host.domain / pathname
http :// www.itimedi.it /docenti/orario.html

schema: indica il modo con cui accedere alla risorsa, cioè quale
protocollo bisogna usare per interagire con il server che controlla la
risorsa. Il metodo di accesso più comune è HTTP (protocollo nativo
del WWW per il recupero di risorse Web)

host.domain: è l’hostname del nodo nel quale risiede la risorsa Web.
pathname: identifica la risorsa presso il server Web. In particolare, si
specifica il cammino all’interno dell’organizzazione del file system
dedicata alle risorse Web. Nel caso in cui il pathname non contenga
alcun nome di file, si suppone che la pagina selezionata sia
23
“index.html”.

Audio e video nei browser

Una tecnologia che ha conosciuto negli ultimi anni
un'enorme espansione è rappresentata dalla
diffusione, attraverso World Wide Web, di contenuti
multimediali (e in particolare audio e video) in
tempo reale.
24
HTTPS
Versione sicura del protocollo HTTP supportato da SSL
(Secure Socket Layer) per rendere la navigazione
“protetta” da chiave crittografica (non è consentito a
estranei di intercettare le pagine visitate).
Tipicamente utilizzato per le pagine dei conti bancari online, e-commerce, web-mail o altre informazioni riservate.
25
Connessione HTTPS
1. il client si connette a un server HTTPS
2. il server invia tramite un certificato (con firma digitale di una
Autorità di certificazione (CA) o “fatto in casa”) la propria
chiave pubblica al client
3. il client esamina il certificato e utilizza la chiave pubblica del
server per criptare una chiave di sessione
4. il server, che detiene la chiave privata corrispondente alla
chiave pubblica inviata al client, la utilizza per decifrare il
messaggio del client e ricostruire la chiave di sessione
5. da questo momento inizia la comunicazione protetta
6. alla fine della sessione, la chiave di sessione viene scartata.
26
Server Proxy
Nel caso più semplice la comunicazione tra client e
server Web avviene direttamente.
Più in generale, ove non sia possibile o non
conveniente che il client contatti direttamente il server,
vengono utilizzati degli intermediari che possono essere
di vari tipi, ma tra cui il più diffuso è il server proxy.
27
Richieste tramite server proxy
Client 1
(1)
(2)
(3)
(4)
Server proxy
Server Web
Client k
FIREWALL
Il server proxy agisce sia da server nei confronti del client Web sia da
client nei confronti del server Web.
28
E per tutti quelli che hanno
resistito…