Realizzato da Roberto Savino Web e HTTP Terminologia Una pagina web consiste di oggetti Un oggetto può essere un file HTML, una immagine JPG, ecc. Una.

Slides:



Advertisements
Presentazioni simili
3 ottobre 2000Consiglio Nazionale delle Ricerche Progetto Biblio MIME 1 Consiglio Nazionale delle Ricerche Area di Ricerca di Bologna Istituto per le Applicazioni.
Advertisements

Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
ING. CARLO MANFUCCI COMUNE DI GROSSETO
Web e HTTP Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
La rete in dettaglio: rete esterna (edge): applicazioni e host
2-1 Trasferimento di file: ftp Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
5-1 Point to Point Data Link Control Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (©
E Windows SharePoint Services 2.0 Ivan Renesto Overview how to use Windows SharePoint Services.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Livello applicativo Obiettivi generali: Obiettivi specifici:
Laboratorio di Informatica di Base Laboratorio di Informatica di Base Laurea in Informatica Multimediale Docente: Andrea Fusiello profs.sci.univr.it/~fusiello.
Programming with JXTA Hello World Peer discovery Peer Group discovery Creating Peer group Joining a Peer Group.
Il protocollo ftp.
23 novembre 2000IAT-CNR Progetto Biblio MIME 1 Consiglio Nazionale delle Ricerche Area di Ricerca di Bologna Istituto per le Applicazioni Telematiche di.
Reti di Calcolatori IL LIVELLO APPLICAZIONI WEB e HTTP.
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
Sequence. CREARE UNA SEQUENCE CREATE SEQUENCE nome [INCREMENT BY n] [START WITH n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE]
Componenti dell’architettura Oracle
DATA LINK PHYSICAL IP TRASPORTO APPLICATIVOclient PHYSICAL IP TRASPORTO APPLICATIVOserver Un Client è interconnesso ad un Server attraverso una porzione.
Access for WEB Che cosa è Access for WEB Come si connette Emulazione 5250 Grafica Le stampanti IFS Il Data Base Gestione dei Download.
Professional Users. Per poter lavorare sul Dizionario, bisogna registrarsi come Utente Professionale – Professional User (solo.
Modelli di latenza. Non è semplice stabilire quanto tempo serve per ricevere un oggetto da un server remoto dopo aver inviato una richiesta. Anche se.
Il sistema operativo Sistema operativo (in breve) –È costituito dai programmi di gestione delle operazioni più elementari del computer –… gestione di vari.
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
Benvenuti nellanimazione per iscriversi a PayPal Segui il presente breve filmato, ti dara indicazione e suggerimenti per iscriverti a PayPal, il sistema.
C OME CREARE I FRAME. Dal pannello File fai doppio clic sul file default.html per aprire la pagina (figura 1.1). Figura 1.1 Il file default.html.
Tutorial relativo al Mio EBSCOhost. Benvenuti al tutorial dedicato a Mio EBSCOhost, verranno fornite le istruzioni per la configurazione e lutilizzo ottimizzato.
Moduli o Form I Moduli permettono all'utente di immettere informazioni...
Marco Gribaudo - thanks to C. Gena e R. Damiano 1 Le basi del linguaggio HTML Marco Gribaudo
INTERNET Internet è una rete a livello mondiale che permette alle persone di comunicare ed ad accedere a banca dati da qualunque parte del mondo e su qualunque.
La rete delle reti: collega fra loro reti locali, metropolitane, geografiche e singoli computer di tutto il mondo.
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
Prof. Pietro MASTROPIETRO MODELLO CLIENT-SERVER. prof. Pietro MASTROPIETRO Browser Richiesta pag1.htm INTERNET /INTRANE T SERVER WEB pag1.htm pag2.htm.
LE RETI INFORMATICHE.
INTERNET Antonio Papa Classe 2^ beat I.S.I.S. G. Meroni a.s. 2007/2008.
Cosè una rete Scambio di informazioni Perchè una rete.
Le reti informatiche Modulo 7. Internet Il browser La navigazione Motori di ricerca Raccogliere dati La stampa sommario.
Guida alla registrazione ILNarrastorie. Registrazione al sito Dovete registrarvi prima di poter iniziare a raccontare una favola andate QUI. Vi apparirà
LE RETI E IL DDNS.
Installazione di Drupal su Linux (sistemista) Installazione step-by-step e note.
Elaborazioni server-side: dalle CGI al PHP
Sistemi Informativi sul Web
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Sistemi di Elaborazione dellInformazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 4 – Caching HTTP.
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
IL PROTOCOLLO HTTP.
Negli ultimi anni, la richiesta di poter controllare in remoto la strumentazione e cresciuta rapidamente I miglioramenti nell’hardware e nel software insieme.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 - Protocolli del Web Ernesto Damiani Lezione 3 – Esempi HTTP.
SQL Developer Lanciare sqldeveloper (alias sul desktop) / c:\Oracle\sqldeveloper Associare tutti i tipi di file, se volete Tasto destro sulla spina “connection”
Come comunicano i processi ?
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
FTP File Transfer Protocol
Creato da Riccardo Nuzzone
InternetInternet Sede: Salvo D’acquisto 2010/2011 Docente: Vito Monno.
Terminologia Una pagina web consiste di oggetti Un oggetto può essere un file HTML, una immagine JPG, ecc. Una pagina web consiste di un file HTML base.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 2 – Complementi.
URI e HTTP Fabio Vitali.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
Servizi Internet Claudia Raibulet
INTERNET E INTRANET Classe VA SIA. La Storia di INTERNET ’ – ARPANET 1969 – anno di nascita università Michigan - Wayne 1970 – – INTERNET.
S.Rosta 1 Le Reti Informatiche modulo 10 Prof. Salvatore Rosta
Corso per Webmaster base
Pronto.
Internet.
Livello Applicazione Web e HTTP.
Marco Panella Internet e WWW Marco Panella
Il Livello di Trasporto
Transcript della presentazione:

Realizzato da Roberto Savino Web e HTTP Terminologia Una pagina web consiste di oggetti Un oggetto può essere un file HTML, una immagine JPG, ecc. Una pagina web consiste di un file HTML base che fa riferimento a diversi oggetti al suo interno Ogni oggetto è riferito tramite un URL Esempio di URL: host name path name

Realizzato da Roberto Savino Panoramica HTTP HTTP: hypertext transfer protocol Protocollo applicazione per il web modello client/server –client: un programma browser che richiede e riceve oggetti web –server: un Web server che invia oggetti in risposta a richieste HTTP 1.0: RFC 1945 HTTP 1.1: RFC 2068 Porta 80 (a volte 8080) PC con Explorer Server che fa girare Apache Web server Mac con Navigator HTTP request HTTP response

Realizzato da Roberto Savino Panoramica su HTTP (continua) Usa TCP: Il client crea un socket verso il server, sulla porta 80 Il server accetta la connessione i due interlocutori si scambiano messaggi espressi in HTTP La connessione TCP viene chiusa HTTP è stateless Non ci sono normalmente informazioni sulle precedenti connessioni Il concetto di sessione è stato aggiunto in seguito

Realizzato da Roberto Savino Le connessioni HTTP Nonpersistenti Al più un oggetto è inviato su una connessione HTTP/1.0 è nonpersistente Persistenti Si può usare la stessa connessione per inviare più oggetti in sequenza HTTP/1.1 usa di default le connessioni persistenti

Realizzato da Roberto Savino HTTP Nonpersistente Supponiamo lutente richieda lURL ex 1a. Il client HTTP inizia una connessione TCP at sulla porta Il client HTTP invia un HTTP request message (contiene lURL voluto) attraverso il socket appena aperto. 1b. Il server, in attesa di connessione, accetta la connessione dal client 3. Il server riceve la richiesta, predispone un response message contenente loggetto desiderato e lo invia attraverso il suo socket time (contiene testo, e riferimenti a 10 immagini JPG)

Realizzato da Roberto Savino HTTP Nonpersistente (2) 5. Il client HTTP riceve il messaggio di risposta. E un testo html che viene visualizzato. Leggendo il file vengono incontrati i riferimenti a 10 diverse immagini JPG 6. I passi da 1 a 5 vengono ripetuti per tutti i 10 oggetti 4. Il server chiude la connessione. time

Realizzato da Roberto Savino Tempi di risposta Definition of RTT: tempo che ci mette un pacchetto ad arrivare al server e ritorno. Tempo di risposta: 1 RTT per iniziare la connessione. 1 RTT per la HTTP request e larrivo dei primi byte di risposta Tempo totale di trasmissione total = 2RTT+transmit time time to transmit file initiate TCP connection RTT request file RTT file received time

Realizzato da Roberto Savino HTTP Persistente Problemi con HTTP nonpers.: Ci vogliono 2 RTT per oggetto Ogni connessione richiede un overhead Spesso vengono aperte molte connessioni parallele HTTP persistente Il server non chiude la connessione dopo linvio del primo oggetto La connessione viene riusata per inviare altre richieste Persistente senza pipeline: Il client aspetta la risposta prima di inviare una ulteriore richiesta 1 RTT per ogni oggetto richiesto Persistente con pipelining: default in HTTP/1.1 Il client invia le richieste a raffica senza aspettare i precedenti oggetti Un solo RTT di attesa per tutti gli oggetti

Realizzato da Roberto Savino Formato del messaggio di richiesta HTTP Due tipi di messaggi: request, response HTTP request message: –ASCII (leggibile, urrà) GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language:fr (extra carriage return, line feed) linea di richiesta (comandi GET, POST, HEAD) intestazioni CR+LF (Invio) indicano la fine del messaggio

Realizzato da Roberto Savino Formato generale

Realizzato da Roberto Savino Trasmissione di molti dati insieme alla richiesta Metodo POST: Usato se nella pagina cè una form con tanti dati Linput sta nel body del messaggio Metodo URL: Usa il comando GET Linput fa parte dellURL:

Realizzato da Roberto Savino Tipologie di metodi HTTP/1.0 GET POST HEAD –per avere solo INFO sulloggetto e non loggetto stesso (ad esempio sulla data di ultima modifica). Utile per il caching HTTP/1.1 GET, POST, HEAD PUT –upload un file DELETE –Cancella un certo file

Realizzato da Roberto Savino Messaggio di risposta HTTP/ OK Connection close Date: Thu, 06 Aug :00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 …... Content-Length: 6821 Content-Type: text/html data data data data data... linea di stato (codice di errore e frase) Intestazione dati, ad esempio il file HTML

Realizzato da Roberto Savino Codici di errore 200 OK –richiesta OK, loggetto è in questo messaggio 301 Moved Permanently –Loggetto è stato spostato, questa è la nuova locazione (Location:) 400 Bad Request –Che diavolo stai dicendo? Non ti capisco 404 Not Found –Il documento richiesto non cè qui. 505 HTTP Version Not Supported Stanno nella prima linea della risposta. Alcuni codici:

Realizzato da Roberto Savino Provate da soli 1. Telnet sul vostro Web server preferito Assicuratevi di impostare il local echo ->set localecho ->set crlf ->open 80www.libero.it telnet 2. Digitate una GET HTTP request: GET /~ianni/ HTTP/1.1 Host: Lasciare un doppio invio alla fine! 3. Date un occhiata al messaggio di risposta

Realizzato da Roberto Savino HTTP in azione Analizziamo i pacchetti con Ethereal!

Realizzato da Roberto Savino I cookies: una forma di stato Oramai irrinunciabili Quattro componenti: 1) Campo Cookie nei messaggi di risposta 2) Campo Cookie nei messaggi di richiesta 3) Il browser salva i cookies nei messaggi di risposta e li reinvia la volta successiva che chiede lo stesso oggetto 4) Il sito web contiene invece un suo database dei cookie inviati a tutti i client Esempio: –Susanna accede a Internet sempre dallo stesso PC –Visita un certo sito di e- commerce –Alla prima richiesta HTTP, il web server associa un ID allIP di Susanna e lo salva nel database. Susanna verrà riconosciuta tramite il cookie di risposta e si potrà inviarle contenuti personalizzati

Realizzato da Roberto Savino Cookies: come funzionano client server messaggio di richiesta Risposta normale + Set-cookie: 1678 Normale richiesta + cookie: 1678 Risposta personalizzata Normale richiesta + cookie: 1678 Risposta personalizzata Azione personalizzata Il server crea un ID 1678 Record nel database interno accesso Cookie file amazon: 1678 ebay: 8734 Cookie file ebay: 8734 Cookie file amazon: 1678 ebay: 8734 La settimana dopo:

Realizzato da Roberto Savino Ancora cookies Cosa possono trasportare: autorizzazioni carrelli della spesa consigli per gli acquisti stato della sessione (Web ) Cookies e privacy: I cookies consentono ai siti di web di scoprire tante cose di voi I motori di ricerca usano redirezione e cookies per tanti scopi In realtà i cookies si possono scambiare tra un sito e un altro N.B.

Realizzato da Roberto Savino Web caches (proxy servers) Laccesso al Web è fatto tramite un cache server (proxy) Il fa tutte le richieste al proxy –Se loggetto è in cache viene ritornato –Altrimenti il proxy si occupa di richiedere loggetto Goal: evitano di generare traffico se la stessa richiesta si ripete client Proxy server client HTTP request HTTP response HTTP request HTTP response origin server origin server

Realizzato da Roberto Savino Proxy (2) Il cache server fa sia da client che da server Di solito il proxy è installato nella sede della propria rete locale (dipartimento, azienda) Perchè fare caching? Ridurre il tempo di risposta. Ridurre il traffico in uscita complessivo per una rete locale.

Realizzato da Roberto Savino Esempio Assunzioni taglia media di un oggetto = 100 kbit tasso di richieste medio dai browser = 15/sec delay from institutional router to any origin server and back to router = 2 sec Consequences utilization on LAN = 15% utilization on access link = 100% total delay = Internet delay + access delay + LAN delay = 2 sec + minutes + milliseconds origin servers public Internet institutional network 10 Mbps LAN 1.5 Mbps access link institutional cache

Realizzato da Roberto Savino GET condizionale Scopo: Non mandare loggetto se non necessario client: quando si fa una richiesta si indica la data della propria copia If-modified-since: server: la risposta non contiene nulla se la copia del client è aggiornata: HTTP/ Not Modified cache server HTTP request msg If-modified-since: HTTP response HTTP/ Not Modified oggetto non modificato HTTP request msg If-modified-since: HTTP response HTTP/ OK oggetto modificato

Realizzato da Roberto Savino FTP: File Transfer Protocol Trasferisce file da e per un host remoto modello client server –client: lato che inizia la connessione –server: host remoto ftp: RFC 959 ftp server: porta 21 file transfer FTP server FTP user interface FTP client local file system remote file system utente

Realizzato da Roberto Savino FTP: meccanismo a doppia connessione Il client FTP contatta il server sulla porta 21 con protocollo TCP. La negoziazione avviene su questa connessione (connessione di controllo) Si possono navigare le directory sulla connessione Una connessione dati separata viene aperta per trasferire i file Dopo aver trasferito i file il server chiude la connessione dati FTP client FTP server TCP control connection port 21 TCP data connection port 20 Controllo Fuoribanda FTP è un protocollo con stato (utente, directory corrente)

Realizzato da Roberto Savino Comandi e risposte FTP Comandi di controllo: Inviati come ASCII USER username PASS password LIST lista i file RETR filename preleva un file (download) STOR filename fa upload di un file Codici di ritorno Codice di ritorno e frase (come in HTTP) 331 Username OK, password required 125 data connection already open; transfer starting 425 Cant open data connection 452 Error writing file