Capitolo 2 - parte 2. Corso Reti ed Applicazioni Mauro Campanella



Documenti analoghi
Web e HTTP. path name. host name Realizzato da Roberto Savino.

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Protocolli applicativi: FTP

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Programmazione in Rete

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Siti web centrati sui dati (Data-centric web applications)

Reti di Calcolatori. Il Livello delle Applicazioni

OSOR. Applicazioni di Rete

INFORMATICA DISTRIBUITA. lez 5 World Wide Web (cont)

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Applicazioni web centrati sui dati (Data-centric web applications)

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

INFORMATICA DISTRIBUITA. lez 6 World Wide Web (cont)

Reti di Telecomunicazione Lezione 6

ESERCITAZIONE Semplice creazione di un sito Internet

Dal protocollo IP ai livelli superiori

Reti di calcolatori. Reti di calcolatori

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Architettura client-server

InterNet: rete di reti

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

appunti delle lezioni Architetture client/server: applicazioni client

Internet. Internet. Internet Servizi e Protocolli applicativi. Internet. Organizzazione distribuita

PROTOCOLLI APPLICATIVI PER INTERNET

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Applicazioni e protocolli a livello applicazione

Il seguente Syllabus è relativo al Modulo 7, Reti informatiche, e fornisce i fondamenti per il test di tipo pratico relativo a questo modulo

Lezione 1 Introduzione

Le Reti Informatiche

Reti di Calcolatori. Vantaggi dell uso delle reti. Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito

Esempi di applicazioni internet. WEB Trasferimento File Posta Elettronica Sistema dei nomi di dominio (DNS)

Sicurezza delle applicazioni web: protocollo HTTP

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Ipertesto. Reti e Web. Ipertesto. Ipertesto. Ipertestualità e multimedialità

Lezione n 1! Introduzione"

Reti di Telecomunicazione Lezione 7

url uniform resource locator

Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, Pisa

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

prof. Mario Dalessandro

Livello di applicazione: Web e HTTP

Come leggere ed interpretare la letteratura scientifica e fornire al pubblico informazioni appropriate sui farmaci

Il Protocollo HTTP e la programmazione di estensioni Web

Servizi di rete e web. Prof. Maurizio Naldi A.A. 2015/16

1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale

MANUALE UTENTE FORMULA PEC

Client - Server. Client Web: il BROWSER

Introduzione alle applicazioni di rete

HTML il linguaggio per creare le pagine per il web

UTILIZZO DEI COOKIES (informativa conforme al Provvedimento del Garante Privacy del 8 Maggio 2014)

FTP. Appunti a cura del prof. ing. Mario Catalano

Introduzione a Internet e al World Wide Web

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia

L utente generico può saltare da un punto all altro del documento o da un documento all altro seguendo i link

ARP (Address Resolution Protocol)

Stack protocolli TCP/IP

Internet e Tecnologia Web

Bibliografia: Utenti e sessioni

Internet Explorer 6. Gestione cookie

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Protocolli di applicazione

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Finalità delle Reti di calcolatori. Le Reti Informatiche. Una definizione di Rete di calcolatori. Hardware e Software nelle Reti

Informatica per la comunicazione" - lezione 9 -

Capitolo 4 Pianificazione e Sviluppo di Web Part

URI. Introduzione. Pag. 1

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 5

Reti di Calcolatori: una LAN

Internet WWW ISP Protocolli di Rete

Livello di Applicazione in Internet

Programmazione Web. Introduzione

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

TITOLARE DEL TRATTAMENTO Il "titolare" del trattamento di eventuali dati personali rilevati a seguito della consultazione del sito è SEVAL S.r.l.

Lo scenario: la definizione di Internet

Altro esempio di HTML

Comprendere cosa è Internet e sapere quali sono i suoi principali impieghi. 25/09/2011 prof. Antonio Santoro

Internet e posta elettronica. A cura di Massimiliano Buschi


INFORMATICA DISTRIBUITA. lez 4 Livello applicazione

Internet e i suoi servizi. Luca Cervone (luca.cervone@unibo.it)

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

Applicazioni web. Sommario. Parte 4 http. http Metodi, intestazioni e codici di stato get post Parametri e cookie. Applicazioni web.

Protocollo HTTP. Alessandro Sorato

Internet Architettura del www

Reti di Telecomunicazione Lezione 8

19. LA PROGRAMMAZIONE LATO SERVER

Protocolli per il Web. Impianti Informatici. Protocolli applicativi

Applicazioni e protocolli a livello applicazione

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

Corso di Informatica

Utilizzo dei Cookie Cosa sono i cookie? A cosa servono i cookie? cookie tecnici cookie, detti analitici cookie di profilazione

Il funzionamento delle reti

TCP/IP: INDIRIZZI IP SIMBOLICI

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione

NOTE LEGALI E PRIVACY

Modulo 1: Posta elettronica

Transcript:

Capitolo 2 - parte 2 Corso Reti ed Applicazioni Mauro Campanella

La nascita del World Wide Web L idea fu nel 1989 di Tim Berners Lee, fisico del CERN di Ginevra. Vi era la necessità di far collaborare efficientemente ricercatori distribuiti a livello mondiale su un insieme di documenti, disegni, progetti e programmi in continua modifica, che risiedevano su calcolatori, anch essi non stabili. Vi erano quindi dati di diverso tipo, non solo testo da condividere via rete in maniera logica (non legata alla locazione fisica) e semplice. Berners-Lee inventò un protocollo (HTTP - Hyper Text Transfer Protocol) per il reperimento e trasferimento dei dati ed un altro per la loro visualizzazione (HTML - Hyper Text Markup Language). M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 2

La crescita del WWW Dopo la creazione del primo cliente (browser) con interfaccia grafica (Mosaic), i dati già esistenti in rete vennero rapidamente resi disponibili attraverso HTTP. La semplicità estrema del protocollo, la libertà nella scelta della metodo di presentazione dei dati, la gratuità del server e dei client ne facilitarono la diffusione in tempi brevissimi. Nel 1994 il CERN ed il MIT crearono il World Wide Web Consortium (W3C http://www.w3.org) per lo sviluppo, la standardizzazione e l interoperabilità fra i siti. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 3

W3C Accesso Universale: W3C definisce il Web come l universo dell informazione accessibile via rete in ogni modo da parte di chiunque. Web semantico: Il Web organizzerà l informazione in base al significato (RDF, XML) Fiducia: il Web deve essere un luogo dove muoversi con sicurezza ed in cui fidarsi dell informazione M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 4

W3C Interoperabilità: attraverso specifiche aperte creando consenso e con discussioni aperte Evoluzione: il Web deve potersi evolvere e pertanto deve essere progettato secondo le regole di semplicità, modularità, compatibilità ed ampliabilità. Decentralizzazione: e flessibilità per evitare colli di bottiglia e diminuire la vulnerabilità Multimedia: arricchire il Web con strumenti di comunicazione più ricchi e nuovi M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 5

WWW ed Internet Ma il World Wide Web non è Internet. E un modello di architettura per accedere documenti sparsi su nodi che fanno parte di Internet. E una delle molte realizzazioni di cui Internet è la base portante. Uno dei motivi del successo è la possibilità di cercare quando si desidera l informazione e la creazione di collegamenti nuovi fra concetti. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 6

HTML Con l RFC 2854 The 'text/html' Media Type HTML non è più parte del processo di standardizzazione ed evoluzione in IETF, ma è passato a quello di W3C. <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <title>w3c in 7 points</title> </head> <body> <a href="http://www.w3c.org/"><img SRC="w3c_main" ALT="W3C" ></a> </body> </html> M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 7

HTTP Hyper Text Transfer Protocol - RFC 1945 per la versione 1.0 - RFC 2616 per la versione 1.1 è un protocollo client-server. Il suo scopo è trasferire oggetti (normalmente pagine ) composte da altri oggetti. Un oggetto può essere un immagine, un video, un file HTML, un programma in Java. client PC browser Explorer client Mac browser Navigator richiesta HTTP risposta HTTP richiesta HTTP risposta HTTP Server Apache Web server M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 8

HTTP (dalla RFC 2616) L Hypertext Transfer Protocol (HTTP) è un protocollo del livello applicativo per sistemi di informazione ipermediale distribuiti e collaborativi. E un protocollo generico, senza stato, orientato agli oggetti, che può essere usato per vari compiti, come name servers, sistemi distribuiti di controllo oggetti attraverso l estensione dei suoi metodi di richiesta. Una caratteristica di HTTP è la tipizzazione la negoziazione della rappresentazione dei dati, permettendo la costruzione di sistemi indipendenti dal dato che trasferiscono. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 9

HTTP Una pagina è basata su un file in HTML che ne descrive l aspetto ed include collegamenti (link) ad oggetti. Una pagina può contenere collegamenti ad altre pagine detti hyperlink. Le pagine sono indirizzabili attraverso un Uniform Resource Locator (URL) L URL è composto di tre parti: http:// www.s1.ente.it/ directory/index.html protocollo nome di un nodo Internet il nome completo di un file M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 10

HTTP Il client inizia una connessione con TCP verso il server alla porta 80 il server accetta la connessione TCP Attraverso il protocollo HTTP il client invia comandi in chiaro, leggibili, al server La connessione viene chiusa. HTTP non mantiene stato di precedenti richieste nota I protocolli che mantengono lo stato sono complessi e richiedono molte piu risorse. Inoltre se il client od il server muore si pone il problema di riallineare lo stato fra i due. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 11

Connessioni HTTP Non-persistenti Persistenti Un solo oggetto al massimo è trasferito per ogni connessione TCP. HTTP/1.0 usa connessioni non persistenti. Più di un oggetto può essere inviato all interno della stessa connessione TCP tra il client ed il server. HTTP/1.1 utilizza di default connessioni persistenti. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 12

HTTP non-persistente (contiene testo e referenzia 10 Supponiamo che l utente scriva l URL: immagini jpeg ) http://www.university.edu/somedepartment/home.index tempo 1a. Il cliente HTTP inizia la connessione TCP al server HTTP a www.university.edu sulla porta 80 2. Il cliente HTTP manda un messaggio di richiesta (che contiene l URL). La richiesta è per l oggetto somedepartment/home.index 1b. Il server HTTP nel nodo www.university.edu, in attesa di connessioni TCP, la accetta alla porta 80, rispondendo al cliente 3. Il server HTTP riceve la richiesta, forma il messaggio di risposta, che contiene l oggetto richiesto e lo invia. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 13

HTTP non-persistente 5. Il cliente HTTP riceve il messaggio di risposta che contiene il file HTML. Lo legge per creare la pagina e trova le referenze alle 10 immagini 4. Il server HTTP chiude la connessione TCP tempo 6. I passi da 1 a 4 vengono ripetuti per ogni immagine M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 14

Comprendere il tempo di risposta Promemoria: RRT (round trip time) è il tempo necessario ad un pacchetto piccolo ad arrivare alla destinazione e ritornare al mittente (se il tempo di calcolo nel nodo è considerato nullo). Tempo di risposta: 1 RTT per iniziare la connessione TCP ed un altro perché arrivino i primi bytes dell oggetto. Quindi vi è il tempo di trasmissione del file. TCP inizia la connessione richiesta oggetto oggetto ricevuto RTT RTT tempo Totale = 2xRTT+ tempo trasmissione oggetto tempo tempo di trasmissione dell oggetto M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 15

Confronto HTTP non-persistente - richiede almeno 2 RTT per oggetto - il S.O. deve creare un processo per ogni connessione, usando risorse - i browser spesso inviano le richieste in parallelo HTTP persistente - il server lascia aperta la connessione dopo la prima risposta - i messaggi successivi HTTP fra lo stesso client ed il server usano la connessione TCP già aperta. Persistenza senza pipelining - il client manda una nuova richiesta solo quando ha ricevuto risposta per la precedente. - 1 RTT per ogni oggetto richiesto Persistente con pipelining - default in HTTP/1.1 - il client manda una richiesta non appena incontra la referenza ad un oggetto - al limite solo 1 RTT per tutti gli oggetti referenziati nella pagina M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 16

Alcune specifiche HTTP HTTP è basato su uno scambio di richieste e risposte in caratteri ASCII, leggibili quindi anche da una persona. La forma generale della richiesta è: Request = Request-Line *( general-header request-header entity-header ) CRLF [ message-body ] M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 17

Messaggio di richiesta La Request-Line comincia con un token di metodo, seguito dalla URI richiesta e dalla versione del protocollo e termina con i caratteri CR ed LF. Gli elementi sono separati da caratteri SP. Nessun carattere CR o LF è pemesso, eccetto nella sequenza finale. pro memoria CR = <US-ASCII CR, carriage return (13)> LF = <US-ASCII LF, line feed (10)> SP = <US-ASCII SP, space (32)> HT = <US-ASCII HT, horizontal-tab (9)> M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 18

Esempio di messaggio di richiesta request line (comandi GET, POST, HEAD ) Carriage return e line feed indicano la fine del messaggio linee di header GET /somedir/page.html HTTP/1.1 Host: www.someschool.edu User-agent: Mozilla/4.0 Connection: close Accept-language:fr (+ un altro Carriage Return, Line Feed) M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 19

Messaggio di richiesta HTTP M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 20

Metodi base HTTP 1.0 GET recupera qualsiasi informazione (sotto forma di entità) identificata dalla URI. HEAD identico a GET eccetto che il server non deve inviare l oggetto nella risposta POST è disegnato per permettere ad un unico metodo di svolgere le seguenti funzioni : o Annotare risorse esistenti; o Inviare un messaggio ad un bulletin board, newsgroup, etc.. o Fornire un blocco di dati, come il risultato di sottomissione di un modulo, ad un processo di elaborazione; o Estendere un database attraverso una operazione di append M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 21

Metodi base Oltre a conservare GET, HEAD e POST la versione 1.1 di HTTP 1.1 aggiunge: PUT DELETE TRACE richiede che l entità inclusa nel messaggio sia memorizzata nella URI specificata richiede che l entità indicata dalla URI specificata sia cancellata invoca un loop a livello applicativo remoto che ritorni il messaggio inalterato OPTIONS per accordarsi su possibili opzioni CONNECT in caso di uso di tunnel (p.e. con SSL) M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 22

Forma generale della risposta La forma generale della risposta è: Response = Status-Line *( general-header response-header entity-header ) CRLF [ message-body ] La prima linea di un messaggio di risposta è quella di stato, che consiste nella versione del protocollo, seguita da un codice numerico di stato ed la frase testuale associata, separati da caratteri SP. Nessun CR o LF è permesso, eccetto nella sequenza CRLF finale. M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 23

Esempio di messaggio di risposta linea di stato (protocollo - codice di stato - frase) linee di header HTTP/1.1 200 OK Connection close Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998... Content-Length: 6821 Content-Type: text/html dati, p.e. il file HTML richiesto data data data data data... M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 24

Codici di stato della risposta HTTP Alcuni esempi: 200 OK richiesta soddisfatta, l oggetto segue nel messaggio 301 Moved Permanently l oggetto richiesto ha cambiato locazione, la nuova è specificata di seguito in questo messaggio (Location:) 400 Bad Request il messaggio di richiesta non è stato compreso dal server 404 Not Found il documento richiesto non è stato trovato sul server 505 HTTP Version Not Supported M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 25

Come verificare sul campo 1. Collegarsi con Telnet ad un server Web: telnet www.disney.com 80 Apre una connessione con TCP sulla porta 80 di www.disney.com. Qualsiasi cosa sia digitata è inviata alla porta 80 di www.disney.com. 2. Inviare un messaggio di richiesta con metodo GET HTTP: GET index.html HTTP/1.0 Digitando queste parole ( terminate da due volte il tasto di invio), si manda una richiesta minimale (ma completa) di GET al server HTTP. 3. Esaminare la risposta M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 26

Controllo dell accesso Autorizzazione : controllo di accesso al contenuto del server Dati (credenziali) sono in genere un nome ed una password Senza stato: il client deve fornire le credenziali ad ogni richiesta autorizzazione: linea nell header in ogni richiesta se non autorizzato il server rifiuta l accesso e nell header della risposta manda WWW authenticate: client http request 401: authorization req. WWW authenticate: http request + Authorization: <cred> http response http request + Authorization: <cred> http response server tempo M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 27

Cookies: mantenere stato Parecchi siti Web usano cookies Quattro componenti: 1 - linea di cookie nell header del messaggio di risposta 2 - linea di cookie nell header del messaggio di richiesta 3 - file che contiene cookies nel nodo utente e gestito dal browser 4 - database di supporto nel sito Web Esempio: - Anna accede ad Internet sempre dallo stesso nodo - Visita un sito Web di e- commerce per la prima volta - All arrivo del messaggio iniziale di richiesta HTTP, il sito crea una ID unica e crea un elemento nel database di supporto M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 28

Esempio client server Cookie file ebay: 8734 http request http response. Set-cookie: 1678 il server crea l ID 1678 per l utente ID nel database Cookie file http request cookie 1678 ebay: 8734 amazon:1678 http response Azione che usa il cookie accesso parecchi giorni dopo Cookie file ebay: 8734 amazon:1678 http request cookie 1678 http response Azione che usa il cookie M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 29

Cookies (continua) I vantaggi dei cookie: autorizzazione stato lista acquisiti (shopping kart) preferenze stato della sessione (non connessione) dell utente (p.e. Web e-mail) MA - cookies permettono ai siti di ricavare molte informazioni personali - per esempio il nome e l indirizzo di posta (dalle preferenze del browser)! - i motori di ricerca usano la redirezione ed i cookie per ricavare ulteriori informazioni - le ditte pubblicitarie ottengono ed incrociano le informazioni fra siti diversi M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 30

GET condizionale: caching lato cliente Lo scopo è non inviare una richiesta se il client ha una copia aggiornata nella cache client: specifica la data della copia in cache dell oggetto: If-modified-since: <date> server: la resposta non contiene l oggetto se la data corrisponde all ultima revisione: HTTP/1.0 304 Not Modified client HTTP request msg If-modified-since: <data> HTTP response HTTP/1.0 304 Not Modified HTTP request msg If-modified-since: <data> HTTP response HTTP/1.0 200 OK <dati> server oggetto non modificato oggetto modificato M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 31

Cache Web (proxy server) Lo scopo è offrire il servizio, senza contattare il server originale risparmiando capacità di rete e risorse Il browser viene configurato per inviare tutte le richieste al proxy se l oggetto è in cache: il proxy lo invia altrimenti il proxy richiede l oggetto al server originale, lo inserisce in cache e lo invia al client client client HTTP request HTTP response HTTP request HTTP response Proxy server HTTP request HTTP response server originale server originale M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 32

Caching Cache agisce sia come client che come server. PRO - risparmio di banda geografica - riduzione del tempo di risposta - aumenta la distribuzione dei contenuti CONTRO - distrugge il modello end to end - rende più complesso il controllo della coerenza e correttezza dei contenuti - necessità di una gerarchia di cache/proxy - per ogni oggetto non viene sempre controllato l aggiornamento M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 33

Esempio di caching (1) Ipotesi dimensione media dell oggetto di 100Kb mediamente 15 richieste al secondo verso il server Web originale RTT dal router interno ad uno dei server originali = 2 sec Internet server Web originali utilizzazione sulla LAN = 15% utilizzazione del link di accesso = 100% ritardo totale = Internet + accesso + LAN = 2 s + vari secondi + millisecondi rete interna accesso a 1.5 Mbps 10 Mb/s LAN M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 34

Esempio di caching (2) Una soluzione: aumentare la banda di accesso, eliminando in parte il collo di bottiglia Internet server Web originali utilizzazione sulla LAN = 15% utilizzazione del link di accesso = 15% ritardo totale = Internet + accesso + LAN = 2 sec + msec + msec rete interna accesso a 10 Mbps 10 Mb/s LAN spesso l ugrade è costoso o difficile M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 35

Esempio di caching (3) Soluzione con una cache Ipotesi di successo della cache: 40% server Web originali Internet Il 40% delle richieste ha una risposta positiva senza ritardo Il 60% delle richieste è soddisfatto dai server originali L utilizzazione della linea diaccesso è al 60% aggiungendo un ritardo piccolo (circa 100ms) il ritardo totale è, nel caso peggiore, = 2 s +.01 s + ms < 2.5 secs rete interna accesso a 1.5 Mbps 10 Mb/s LAN proxy/cache locale M. Campanella Corso Reti ed Applicazioni - Como 2007 Cap 2-2 pag. 36