4 - Introduzione al Web (1/2) - 16/17
-
Upload
giuseppe-vizzari -
Category
Education
-
view
1.406 -
download
0
Transcript of 4 - Introduzione al Web (1/2) - 16/17
Università degli Studi di Milano BicoccaDipartimento di Informatica, Sistemistica e ComunicazioneCorso di Strumenti e applicazioni del Web
4. Introduzione al Web (I)Giuseppe Vizzari
Edizione 2016-17
Queste slidesQueste slides fanno parte del corso “Strumenti e applicazioni del Web”. Il sito del corso, con il materiale completo, si trova in strumentiapplicazioniweb.wordpress.com. Data la rapida evoluzione della rete, il corso viene aggiornato ogni anno. Il presente materiale è pubblicato con licenza Creative Commons “Attribuzione - Non commerciale - Condividi allo stesso modo – 3.0” (http://creativecommons.org/licenses/by-nc-sa/3.0/it/deed.it ):
La licenza non si estende alle immagini provenienti da altre fonti e alle screen shot, i cui diritti restano in capo ai rispettivi proprietari, che, ove possibile, sono stati indicati. L'autore si scusa per eventuali omissioni, e resta a disposizione per correggerle.
Sintesi delle puntate precedenti• Internet è una rete di reti• Il protocollo TCP/IP suddivide il data stream in pacchetti che seguono
strade diverse (routing)• Ogni nodo della rete è individuato da un indirizzo IP, eventualmente
assegnato da un server DHCP • Si usano nomi di dominio strutturati, che vengono associati agli indirizzi IP
da server DNS distribuiti• La governance di Internet è complessa e multistakeholder; le regole per
l'assegnazione dei nomi su Internet vengono gestite da ICANN• Internet è una rete progettata per essere stupida (best effort delivery, end-
to-end principle)• L’accesso alla rete è fornito dagli ISP, di varia dimensione e livello; con
mutui accordi di peering e di transit• L’ecosistema di Internet è molto complesso, gli attori hanno ruoli che
variano nel tempo e interessi comuni e contrapposti• Il principio della neutralità della rete è contrastato dagli operatori di
telecomunicazioni• Il dibattito sulla regolamentazione è molto vivo
3
LINK
NODO
Ipertesto
Alcuni “nonni” degli ipertesti…
stack
cardarea sensibile(bottone invisibile)
script
clic
Ipertesti off-line: Hypercard (1987)
6Realizzato da Bill Atkinson perApple Macintosh
Apple Macintosh, 1984+
Hypercard: esempi (video)
• Computer chronicles: Hypercard Mania!https://www.youtube.com/watch?v=BeMRoYDc2z8 Intervista a Bill Atkinson, con esempi importanti (22', da vedere)
• The Manhole (1988, 8') di Rand e Robin Millerhttps://www.youtube.com/watch?v=YyOTq1EpV5o
• A children hypercard adventure (3'): http://bit.ly/XFN1hT
7
Myst, 1993 (di Rand e Robin Miller)
8
Myst was commercially successful on release. Along with The 7th Guest, it was widely regarded as a killer application that accelerated the sales of CD-ROM drives.[28][45] The game's success also led to a number of games which sought to copy Myst's success, referred to as "Myst clones".[28] Myst was the bestselling PC game throughout the 1990s, until The Sims exceeded its sales in 2002.
[Myst - Wikipedia]
(Le immagini che seguono sono contigue)
L'idea di base del World Wide Web• Archiviare pagine di ipertesto su computer in Internet, permettendo di collegarle fra loro (indipendentemente dalla loro collocazione)
• Permetterne l’accesso da qualunque computer in Internet
• Specificandone soltanto un nome simbolico (URL, Uniform Resource Locator), o cliccando il link su una pagina
From: Information Management: A Proposal,Tim Berners-Lee, CERNMarch 1989, May 1990 https://www.w3.org/History/1989/proposal.html
Il world wide web
19
INTERNET
Pagina (file) Link
Il World Wide Web
20
Tim Berners-Lee (1995)
"I just had to take the hypertext idea and connect it to the TCP Protocol and Domain Name System ideas and – Ta-da! – the World Wide Web!”
Che cos’è il World Wide WebUn sistema di tecnologie correlate, evolutesi con continuità a partire dai primi anni ’90:
21
Concetto di ipertesto (es. Hypercard, 1987)
Protocolli internet:- TCP/IP (primi anni 70) - DNS (primi anni 80)
• HTTP• HTML• URI• BROWSER(dal 1990-
91)
+ WWW
=
Il protocollo HTTP
22
HOST HOSTROUTER ROUTER
Web server
Trasporto
Internet
Network
Internet
Network
Internet
Network
Browser
Trasporto
Internet
Network
Protocollo HTTP
TCP: Transmission Control Protocol
IP: Internet Protocol
ClientServer
HyperText Transfer Protocol:le regole che governano il trasferimento di pagine web dal computer che le archivia (“server”) al computer che le richiede (“client”)
Il protocollo HTTP
23
HTTPinternetBrowser
Web server
HTML
GET (URL)
HTMLPUT
Protocollo stateless
HTTP: privacy
24
HTTPinternetBrowser
Web server
HTML
GET (URL)
HTMLPUT
Log file
• Indirizzo IP• Referrer• Browser name• Screen resolution• OS• … !!??##??!!
Il browser trasmette al Web server alcune informazioni sul richiedente…… e il web server le raccoglie in un log file
Web analytics
• In tempo differitoanalisi ex-post dei dati raccolti nel log file
• In tempo realeanalisi della situazione correnteEs.: Google Analytics
25
HTTP: privacy
26
HTTPinternetBrowser
Web server
HTML
GET (URL)
HTMLPUT
Cookie
• File che vengono “parcheggiati” dall’applicazione Web nel browser dell’utente, per ricordarsi che cosa ha fatto sul sito
• L’utente può chiedere al browser di non accettarli…
• … ma in questo caso alcune funzionalità di certi siti e servizi web potrebbero non essere più accessibili
Can we live without cookies? (1/2)
Can we live without cookies? (2/2)
http://www.opentracker.net/article/third-party-cookies-vs-first-party-cookies
La funzionalità “Do Not Track” (DNT) dei browser• Parleremo nel dettaglio dei
browser più avanti…• Sappiate comunque che dal
2007 si discute di una funzionalità “Do Not Track” oramai disponibile nei moderni browser
• Sostanzialmente aggiunge alle richieste HTTP una richiesta di non tracciare le richieste…
• ... Non c’è comunque consenso su come vada interpretata questo genere di richiesta ed è almeno dubbio l’effetto di questa funzionalità
https://allaboutdnt.com/
Naming: URI, URL, URN
30
URI Uniform Resource Identifier
URN Uniform Resource Name
Specifica il nome della risorsa
Esempio:(International Standard Book Number)
URL Uniform Resource Locator
Specifica l'indirizzo della risorsa
Esempio
31
Web server
Root /
A corso
B
Index.html
File
syst
em d
el
com
pute
r
Se non mettete l’URL completo…
32
rpolillo.it
Web server
Web server (pathname di default)browser
Se ci sono vari siti sullo stesso server,Si usano varie tecniche per fornire il sito di default. La soluzione più elegante èquella di definire vari host virtuali, ciascuno con un proprio indirizzo IP.
http://en.wikipedia.org/wiki/Virtual_hosting
URL shortening
• Gli URL tendono ad essere lunghi servizi che accorciano gli URL
• Esempio: http://www.rpolillo.it/index.php/2013/01/workshop-su-digital-heritage-levoluzione-della-memoria-1-feb-2012-in-bicocca/ http://bit.ly/1FKg3oN
33
Esempi:bit.lytinyurl.comt.Co….
Statistiche d'accesso e altri servizi
HTTPinternetBrowser
Web server
HTML
HTMLPUT
GET
Servizio di URL shortening
Approfondimenti
• Quali informazioni il browser trasmette al web server in un dialogo HTTP? Approfonditelo, per es. sulle pagine di Wikipedia
• Approfondite il tema dei cookie, in particolare il blocco dei cookie di terze parti (una buona chiave di ricerca è “the world without cookies”)
• Il diagramma di Tim Berners Lee corrisponde davvero a quello che poi è stato realizzato almeno nella versione iniziale di HTML? Ne discuteremo la prossima lezione, anche perché per ora non abbiamo parlato di HTML, ma magari iniziate a rifletterci su
• Approfondite il concetto di URL• Provate qualche servizio di URL shortening, e verificate quali servizi aggiuntivi vi vengono offerti, e il modello di business che permette al servizio di sopravvivere sul mercato