Progettazione Siti Web - dei.unipd.itsilvello/didattica/psw2012-13/slides/05-2012... · Gianmaria...

41
Dr. Ing. Gianmaria Silvello Information Management Systems (IMS) Research Group, Dipartimento di Ingegneria dell’Informazione, Università degli Studi di Padova {silvello}@dei.unipd.it Corso di Progettazione Siti Web Laurea Magistrale in Strategie di Comunicazione e Laurea Magistrale in Linguistica - A.A. 2012/13 Progettazione Siti Web: Internet

Transcript of Progettazione Siti Web - dei.unipd.itsilvello/didattica/psw2012-13/slides/05-2012... · Gianmaria...

Dr. Ing. Gianmaria Silvello

Information Management Systems (IMS) Research Group, Dipartimento di Ingegneria dell’Informazione,

Università degli Studi di Padova{silvello}@dei.unipd.it

Corso di Progettazione Siti WebLaurea Magistrale in Strategie di Comunicazione e Laurea Magistrale in Linguistica - A.A. 2012/13

Progettazione Siti Web:Internet

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Cronistoria di Internet

Seconda metà anni ‘60: ARPA (Advanced Research Projects Agency), l’organizzazione di ricerca del Dipartimento della Difesa (DoD: Department of Defense) degli USA, viene incaricata di sviluppare una tipologia di rete di trasmissione dati (HW e SW) in grado di rimanere in funzione anche in caso di guerra nucleare.

Dicembre 1969: prima rete sperimentale ARPAnet con 4 nodi:

UCLA (University of California, Los Angeles) - UCSB (University of California, Santa Barbara) - SRI (Stanford Research Institute) - University of Utah

1971: vi sono 23 nodi in ARPAnet

1974: V. Cerf e R. Kahn inventano il modello e i protocolli TCP/IP (Transmission Control Protocol/Internet Protocol) per la interconnessione di reti

Gennaio 1983: TCP/IP diventa il protocollo per l’interconnessione

5

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Cronistoria di Internet

Seconda metà anni ‘60: ARPA (Advanced Research Projects Agency), l’organizzazione di ricerca del Dipartimento della Difesa (DoD: Department of Defense) degli USA, viene incaricata di sviluppare una tipologia di rete di trasmissione dati (HW e SW) in grado di rimanere in funzione anche in caso di guerra nucleare.

Dicembre 1969: prima rete sperimentale ARPAnet con 4 nodi:

UCLA (University of California, Los Angeles) - UCSB (University of California, Santa Barbara) - SRI (Stanford Research Institute) - University of Utah

1971: vi sono 23 nodi in ARPAnet

1974: V. Cerf e R. Kahn inventano il modello e i protocolli TCP/IP (Transmission Control Protocol/Internet Protocol) per la interconnessione di reti

Gennaio 1983: TCP/IP diventa il protocollo per l’interconnessione

5

ARPA venne fondata da Eisenhower per unire gli sforzi di ricerca scientifica e tecnologica americana allora divisi su più fronti (marina, esercito, aviazione) con il fine di ristabilire il dominio degli USA rispetto all’Unione Sovietica dopo il successo dello Sputnik

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Storia di Internet

6

“(...) ARPAnet non nacque per assicurare le comunicazioni militari in caso di guerra nucleare - questa è

un'impressione sbagliata piuttosto comune - ma piuttosto per collegare computer e ricercatori delle università,

assistendoli nel condurre ricerche comuni sui computer e sulle reti di comunicazione, e per usare questi computer nelle ricerche di base. Certamente eravamo consapevoli delle applicazioni potenziali di ARPAnet per la sicurezza

nazionale, ma gli sforzi per usare tale tecnologia a questo fine vennero solo molto dopo”

[Charles Herzfeld - Intervista all’American Scientific]

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Storia di Internet

6

“L'avventura che ha dato vita alla "Rete delle Reti" non può essere ridotta alla semplice realizzazione

di un progetto militare. Più che una conquista strategica delle forze armate, Internet è stata la conquista umana e culturale di un

gruppo di persone che hanno creduto nel networking quando parlare di

condivisione delle risorse suonava come un'eresia.” [Carlo Gubitosa]

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Mainframe - Internet

7

Mainframe Calcolatori �immersi� in Internet

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Commutazione di circuito

8

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Commutazione di circuitoIn una rete a "commutazione di circuito", quando una sessione di comunicazione viene aperta, si stabilisce un contatto fra la parte chiamante e quella chiamata.

La rete telefonica PSTN, che è di questo tipo, garantisce la qualità del servizio dedicando alla conversazione un circuito full-duplex. La larghezza di banda rimane inalterata indipendentemente dal fatto che le parti siano in conversazione attiva o in silenzio.

Nella tecnologia a "commutazione di circuito" la capacità del canale trasmissivo è interamente dedicata ad un solo tipo di trasmissione. Per questo motivo non possiamo utilizzare questa linea per telefonare e contemporaneamente navigare in Internet.

Per fare entrambe le cose dobbiamo avere installata una linea (rete) particolare, ad esempio una linea ISDN o ADSL.

9

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Commutazione di pacchetto

10

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Commutazione di pacchetto

Suddivide un messaggio in parti più piccole (pacchetti) prima di inoltrarle in rete al destinatario.

Ogni pacchetto inviato da un nodo segue un proprio percorso di rete per raggiungere la stazione finale, la quale provvederà a riordinare i pacchetti e ricostruire il messaggio di partenza.

Questa tecnica ottimizza l'impiego della rete, perché permette a più nodi la trasmissione di diversi messaggi sullo stesso canale.

11

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

La rete Internet

12

Il backbone degli Stati Uniti Il backbone europeo

Linee verso l�Asia Linee transatlantiche

IP router

Rete nazionale

IP Ethernet LAN

Host

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Backbone - Dorsale

La dorsale Internet si riferisce alle linee principali di scambio dati tra le sottoreti di computer che compongono l’Internet

13

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Collegarsi alla rete Internet

14

Il backbone degli Stati Uniti Il backbone europeo

Linee verso l’Asia Linee

transatlantiche

Rete nazionale Host

Modem

ADSL

LAN

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il modem: funzionamento

1. Il calcolatore invia al modem una sequenza di bit, sotto forma di impulsi elettrici

2. Il modem trasforma la sequenza di bit in un segnale elettrico idoneo ad essere trasmesso lungo il cavo telefonico: modulazione

3. Viaggiando lungo il cavo il segnale si deteriora

4. Nonostante il segnale ricevuto (3) sia deteriorato rispetto al segnale trasmesso (2), il modem in ricezione riesce comunque a ricostruire la sequenza di bit originaria (1): demodulazione

5. Il modem invia al calcolatore la sequenza di bit ricevuta, sotto forma di impulsi elettrici

15

0 1 0 1 0 1 0 1

1 2 3 4 5

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il Modello Client/Server

Il paradigma Client/Server è il modello prevalente per i protocolli di calcolo distribuito

E’ orientato ai servizi ed è basato su un protocollo richiesta/risposta

In Internet molti servizi sono applicazioni Client/Server (basate sul modello Client/Server). Questi servizi sono spesso conosciuti sulla base del protocollo che l’applicazione implementa.

Ad esempio, servizi Internet molto conosciuti sono: HTTP, FTP, DNS, etc.

Anche le applicazioni utente possono essere costruite sulla base del modello Cliente/Server.

16

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Il modello Client/Server

17

Client Server

Richiesta

Risposta

Rete

Processo del client

Processo del server

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il Modello Client/Server

Nel modello Client/Server si utilizza il termine sessione per riferirsi all’interazione tra il Server e un Client

Il servizio gestito da un Server può gestire l’accesso da parte di più Client (qualche volta in modo concorrente)

Ogni Client quando viene servito da un Server partecipa ad una sessione separata

Il dialogo tra Client e Server continua fino a che il Client non ha ottenuto il servizio desiderato

18

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il modello Client/Server

Un protocollo è necessario per specificare le regole che devono essere osservate dal Client e dal Server durante l’esecuzione del servizio

Queste regole includono specifiche, ad esempio:

come localizzare il servizio

la sequenza che il processo di comunicazione deve seguire

la rappresentazione e l’interpretazione dei dati da scambiare

In Internet, questi protocolli sono specificati nei “Request for Comment” (RfC)

19

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il modello Client/Server

Un protocollo è necessario per specificare le regole che devono essere osservate dal Client e dal Server durante l’esecuzione del servizio

Queste regole includono specifiche, ad esempio:

come localizzare il servizio

la sequenza che il processo di comunicazione deve seguire

la rappresentazione e l’interpretazione dei dati da scambiare

In Internet, questi protocolli sono specificati nei “Request for Comment” (RfC)

19

RfC è un documento pubblicato dall’Internet Engineering Task Force (IETF)che riporta

informazioni o specifiche riguardanti innovazioni e metodologie dell'ambito di Internet o di sistemi

connessi mediante Internet.

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Il modello Client/ServerIl modello client/server (cliente/servente) è una forma di elaborazione distribuita in cui è possibile suddividere le applicazioni in tre parti fondamentali:

20

Parte di presentazione

Parte logico-funzionale

Parte di gestione dati

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria Silvelloslide rivista da originale della Prof. Maristella Agosti (UNIPD)

Il modello Client/ServerLe parti di una applicazione client/server possono risiedere in due distinti componenti o moduli:

modulo front-end (client): eseguito su un elaboratore dotato di interfaccia grafica e in uso all’utente;

modulo back-end (server): fornisce servizi a più moduli front-end.

21

parte presentazione

parte logico-

funzionale

parte logico-

funzionale

parte

gestione dati rete

CLIENT SERVER

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Protocolli: livelli (o strati) e pacchetti

23

Applicazione

Trasporto

Rete

Host-Rete

Host A Host B

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Comunicazione Multi-livello OSI/ISO

24

Applicazione

Presentazione

Sessione

Trasporto

Rete

Collegamento Dati

Fisico

Applicazione

Presentazione

Sessione

Trasporto

Rete

Collegamento Dati

Fisico

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Comunicazione Multi-livello OSI/ISO

I livelli più bassi sono quelli più vicini all’hardware e definiscono delle regole di basso livello che consentono di superare le differenze tra le diverse reti fisiche

Si introduce un livello virtuale uniforme sul quale si basano i livelli successivi che possono essere definiti in modo indipendente dalle reti fisiche sottostante

25

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Esempi di protocolli

26

Protocolli

Reti

TCP

IP

LAN MODEM ADSL

Applicazione

Trasporto

Rete

Collegamento fisico

HTTP

POP SMTP

DNS

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Internet Protocol Suite

Application Layer

alcuni protocolli applicativi: BGP · DHCP · DNS · FTP · HTTP · IMAP · IRC · LDAP · MGCP · NNTP · NTP · POP · RIP · RPC · RTP · SIP · SMTP · SNMP · SSH · Telnet · TLS/SSL · XMPP ·

Transport Layer

alcuni protocolli:TCP · UDP · DCCP · SCTP · RSVP · ECN ·

Internet Layer

alcuni protocolli: IP (IPv4, IPv6) · ICMP · ICMPv6 · IGMP · IPsec ·

Link Layer

alcuni protocolli: ARP/InARP · NDP · OSPF · Tunnels (L2TP) · PPP · Media Access Control (Ethernet, DSL, ISDN, FDDI) 

27

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Alcuni protocolli applicativi

DNS: Domain Name Server

FTP: File Transfer Protocol – protocollo applicativo per il trasferimento di file in rete da computer a computer

HTTP: HyperText Transport Protocol – protocollo applicativo per sistemi ipertestuali (ipermediali) distribuiti

SMTP: Simple Mail Transfer Protocol – protocollo applicativo utilizzato per controllare il trasferimento di messaggi di posta elettronica fra sistemi di calcolo disponibili in Internet

TELNET: TELetype NETwork – protocollo sviluppato per ARPANET per permettere a utenti di un computer di connettersi e usare le risorse di un altro computer

28

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Risorse informative in Internet

29

Server Web

Biblioteca digitale

Base dati �online�

Utente

Server ftp

Server mail

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il modello di riferimento: TCP/IP

30

Applicazione

Trasporto

Rete

Host - Rete

Applicazione

Trasporto

Rete

Host - Rete

Protocollo Applicazione

Protocollo TCP

Protocollo IP

Protocollo Host-Rete

Mezzo trasmissivo

Host A Host B

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Il modello di riferimento: TCP/IP

TCP e IP si occupano di:

Dividere il messaggio in pacchetti

Instradarli

Assicurarsi che arrivino

TCP/IP erroneamente vengono spesso visti come un unico protocollo

TCP/IP comprende univocamente due livelli dello stack di comunicazione

31

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Internet Protocol (IP)

Internet può essere vista come una collezione di sottoreti diverse (eterogenee) connesse tra loro

Quello che tiene insieme le varie sottoreti è l’Internet Protocol (IP)

IP permette di trasportare i dati dalla sorgente alla destinazione, sfruttando la presenza di reti intermedie lungo il percorso

32

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Transfer Control Protocol (TCP)

Si occupano del controllo di trasmissione

È presente solo sui terminali di rete (host) e non sui nodi interni di commutazione della rete di trasporto, implementato all'interno del rispettivo sistema operativo e vi si accede automaticamente dal browser attraverso l'uso di opportune chiamate di sistema

Il compito di TCP è quello di fornire un trasporto affidabile dall’host di origine a quello di destinazione, indipendentemente dalla rete utilizzata

TCP è orientato alla connessione

prima di poter trasmettere dati deve stabilire la comunicazione, stabilendo una connessione tra mittente e destinatario

la connessione rimane attiva anche in assenza di scambio di dati e viene esplicitamente chiusa quando non più necessaria.

33

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzamento delle risorse in reteE’ il metodo utilizzato per identificare la localizzazione di una risorsa informativa di una rete. L’indirizzamento specifica dove si trova una risorsa informativa in una rete, piuttosto che specificare di che tipo è quella risorsa (nome) e come si fa a raggiungere (routing).

Questo è vero in particolare quando si utilizza un indirizzamento “piatto”, cioè un indirizzamento in cui gli indirizzi sono specificati indipendentemente gli uni dagli altri; invece, quando l’indirizzamento è “gerarchico”, gli indirizzi vengono raggruppati per riflettere le relazioni che sussistono fra le risorse che vengono indirizzate.

In un sistema in cui si utilizzano strati di protocolli, diverse forme di indirizzamento possono essere utilizzate nei diversi strati.

34

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzamento nei vari protocolli

35

Protocolli

Reti

Indirizzo IP (32 bit)

Indirizzo MAC (48 bit)

Applicazione

Trasporto

Rete

Collegamento fisico

Indirizzo di Porta (16 bit)

Indirizzo DNS

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzo MAC, IP e di porta

36

Indirizzo MAC: è una sequenza di 48 bit (circa 280 T) che identifica univocamente ciascuna scheda di rete in Internet.

L’indirizzo MAC viene assegnato alla scheda di rete dal produttore al momento della costruzione

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzo MAC, IP e di porta

36

Indirizzo MAC: è una sequenza di 48 bit (circa 280 T) che identifica univocamente ciascuna scheda di rete in Internet.

L’indirizzo MAC viene assegnato alla scheda di rete dal produttore al momento della costruzioneIndirizzo IP: è una sequenza di 32 bit (circa 4 G)

che identifica univocamente ciascun host nella rete Internet.

L’indirizzo IP viene assegnato da enti nazionali ed internazionali: ICANN (Internet Corporation for Assigned Names and Numbers)

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzo MAC, IP e di porta

36

Indirizzo MAC: è una sequenza di 48 bit (circa 280 T) che identifica univocamente ciascuna scheda di rete in Internet.

L’indirizzo MAC viene assegnato alla scheda di rete dal produttore al momento della costruzioneIndirizzo IP: è una sequenza di 32 bit (circa 4 G)

che identifica univocamente ciascun host nella rete Internet.

L’indirizzo IP viene assegnato da enti nazionali ed internazionali: ICANN (Internet Corporation for Assigned Names and Numbers)Indirizzo di porta: è una sequenza di 16 bit (circa

65 K) che identifica univocamente un processo applicativo all’interno di un host

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Indirizzi IP: notazione decimale a punti

Gli indirizzi IP vengono di solito scritti in notazione decimale a punti: ogni blocco di 8 bit viene espresso con un numero tra 0 e 255. I blocchi sono separati tra loro da un punto.

37

0 - 255

x32 bitx

0 - 255 0 - 255 0 - 255

10010011

x32 bitx

10100010 01100000 00001010

147 162 96 10

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Domain Name System (DNS)

Di solito i programmi (che vengono usati dalle persone) fanno riferimento alle risorse Internet usando dei nomi, quindi delle sequenze di stringhe, non numeri/indirizzi IP. Però la trasmissione in rete avviene con indirizzi numerici.

Quindi è necessaria una traduzione, una conversione dall’indirizzo numerico ad un nome/stringa.

Per risolvere il problema viene ideato il DNS: Domain Name System

che si basa su uno schema di attribuzione di nome (naming) e su una base di dati distribuita per realizzare questo schema di attribuzione del nome.

38

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Domain Name System (DNS)

39

�Generici� Nazioni

COM EDU GOV MIL ORG DE IT FR UK

INFN CNR UNIPD

DEI LETTERE

LIVIA

anna.dei.unipd.it 147.162. 2.100

FEDRO ANNA

fedro.lettere.unipd.it 147.162.44.3

Nome DNS

Indirizzo IP

Progettazioni Siti WebLM in Strategie di Comunicazione LM in Linguistica

slideGianmaria SilvelloA.A. 2012/13

Domain Name System (DNS)

Inventato nel 1983

prima ogni calcolatore recuperava il file di nome HOSTS.TXT da un calcolatore che risiedeva al SRI (Stanford Research Institute)

il file HOSTS.TXT conteneva le corrispondenze fra I nomi e gli indirizzi numerici

Il Domain Name System è definito da alcuni Request for Comments (RFC)

http://tools.ietf.org/html/rfc882

40