30/05/2013 IDEE PRINCIPALI IN QUESTA LEZIONE IDUL 2012 RETI E PROTOCOLLI. INTERNET. EVOLUZIONE DEI SISTEMI INFORMATICI Reti: Aspetto ‘logico’ della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione dei dati: commutazione di pacchetto (Packetswitching) Protocolli Internet e TCP/IP Application level: Client / server Email Web Il modello centralizzato Negli anni settanta, prevalse il modello time-sharing multiutente (il modello centralizzato) che prevede il collegamento di molti utenti ad un unico elaboratore potente attraverso terminali Terminale: un dispositivo hardware, usato solo per inserire dati e ricevere dati per la visualizzazione (per esempio, con tastiera, schermo, mouse, ma senza capacità di elaborazione) 1 30/05/2013 Il modello distribuito Se gli elaboratori sono collegati tra di loro, possono condividere le risorse Ogni utente ha a disposizione una macchina (per esempio, un personal computer, come nel laboratorio) su cui lavorare, ma può anche condividere le informazioni e le risorse con gli altri utenti L’informatica distribuita offre molteplici vantaggi rispetto al modello centralizzato Il modello distribuito: (s)vantaggi rispetto al modello centralizzato Economicità: In termini di costi, la diffusione dei PC personali è stata la spinta che ha portato alla produzione di massa e quindi al crollo del costo dell’hardware. La rete costa poco. Di contro: I PC sono quasi sempre sovradimensionati rispetto ai compiti che devono eseguire. Gli utenti comprano potenza che non usano. Il modello distribuito: (s)vantaggi rispetto al modello centralizzato Flessibilità: In un sistema centralizzato, in caso di guasto all’elaboratore centrale nessuno può lavorare Nel caso distribuito invece, la rottura di una macchina blocca un solo utente mentre gli altri possono continuare a lavorare Di contro: Macchine separate richiedono installazioni separate del software e dell’hardware, riparazioni individuali, protezione individuale dai virus, ecc. In un sistema centralizzato il problema dei guasti può essere affrontato rendendo ridondante il server (p.es. dischi RAID) Il modello distribuito: (s)vantaggi rispetto al modello centralizzato Sicurezza Mantenere i propri dati su PC assicura la massima libertà su cosa condividere e cosa no. Se i dati sono su un server, dobbiamo fidarci del grado di privacy promesso dai gestori del server Di contro: I PC singoli possono essere rubati o danneggiati più facilmente dei server. Sono anche più soggetti a virus (ma meno ad attacchi web) La trasmissione dati tra server e PC, anche se criptata, può essere intercettata. 2 30/05/2013 COS’E’ UNA RETE IL PUNTO DI VISTA FISICO: TIPI DI RETI Un insieme di calcolatori AUTONOMI collegati tra di loro tramite una connessione fisica o radio, che si scambiano dati tramite protocolli di comunicazione. Le reti possono essere classificate sulla base della loro TOPOLOGIA RETI PEER-to-PEER Reti PEER to PEER Consistono di molte connessioni individuali tra coppie di elaboratori TOPOLOGIA TECNOLOGIA DI TRASMISSIONE SCALA Vantaggi: Semplicita’ Basso costo Svantaggi: Utilizzabile solo per pochi nodi (tipicamente non piu’ di 5) Attenzione a non confondere “reti peer to peer” con “scambio dati peer-to-peer”; nel secondo caso I computer coinvolti non sono direttamente collegati 3 30/05/2013 RETI A STELLA / HUB (Tipica architettura per LAN di tipo Ethernet) I nodi sono tutti collegati a un nodo centrale detto HUB TOPOLOGIA: RETI LINEARI (A BUS) RETI A STELLA: VANTAGGI E SVANTAGGI Vantaggi • Semplicità: facilità di gestione e manutenzione • Flessibilità: facilità di connessione di nuovi nodi alla rete • Bassi costi • Affidabilità Svantaggi • Tutti i nodi dipendono da un singolo mezzo trasmissivo: in caso di traffico elevato non è garantita la consegna del messaggio in un intervallo predeterminato di tempo RETI A BUS: VANTAGGI E SVANTAGGI Reti lineari (broadcast) Hanno un unico canale di comunicazione (dorsale) condiviso da tutte le macchine della rete I messaggi inviati da un elaboratore vengono ricevuti da tutti ma solo l’elaboratore destinatario elaborerà il messaggio, gli altri elaboratori lo ignoreranno (Altra architettura molto usata per Ethernet) 4 30/05/2013 SCHEDE DI RETE TECNOLOGIA DI CONNESSIONE Necessarie su ogni computer collegato in rete Parallele o seriali Dotate di numero MAC (Media Access Control) univoco Tra le periferiche più economiche MEZZI GUIDATI La trasmissione di dati tra calcolatori puo’ avvenire tramite MEZZI GUIDATI: linee fisiche che portano il messaggio al ricevitore. (Esempio: doppino telefonico, fibre ottiche) MEZZI NON GUIDATI: irradiazione di segnali nello spazio. (Satelliti, wireless) MEZZI NON GUIDATI 5 30/05/2013 CARATTERISTICHE DELLA TRASMISSIONE Capacità del canale (larghezza di banda) misurata in Mbps (Megabit al secondo) Grado di attenuazione del signale (ripetitori) Interferenza (cavi schermati o meno) Numero dei ricevitori SCALA DELLE RETI Reti locali: LAN (Local area networks) si possono usare connessioni specializzate dedicate solo a trasmissione di segnali digitali Reti a lunga distanza (WAN, Wide Area Networks) si cerca di sfruttare le reti esistenti, in particolare la rete telefonica, che pero’ e’ progettata per trasmettere dati analogici. Uso crescente di connessioni in fibra ottica Internet il risultato della connessione tramita gateway di WAN, ottenendo una rete globale. TRASMISSIONE DIGITALE / ANALOGICA Nel caso di trasmissioni a breve distanza su doppini telefonici fatti per portare segnali analogici, occorre un metodo per trasformare dati in forma digitale in analogica, e viceversa. Il MODEM (MODulatore DEModulatore) Visto che il modem (come il fax) produce suoni udibili, non si può usare se la linea è utilizzata per una telefonata vocale. Ormai quasi interamente ripiazzato dall' ADSL (dove possibile) 6 30/05/2013 ADSL ADSL e Digital Divide Negli ultimi anni i modem analogici sono stati soppiantati dalla tecnologia DSL (Digital Subscriber Link), in particular A(symmetrical)DSL (download veloce, upload lento) Vista la quantità di servizi che passano su rete digitale, la esclusione da una connessione ADSL comporta problemi crescenti. Nonostante la presenza di centraline telefoniche adatte all’ADSL nelle città la situazione nelle aree rurali ed in quelle sotto centraline che non possono essere convertite all’ADSL rimane insoddisfacente (vedi. http://it.wikipedia.org/wiki/Copertura_ADSL ) Possibile soluzione: reti wireless (UMTS, HDSPA, LTE; WIFI, Wi-Max). Problemi: troppi standard in competizione; necessità di ulteriori frequenze radio (in parte liberate col passaggio alla TV digitale; altre bande devono essere dismesse dai militari). ADSL (<8Mbps), ADSL2 (<12Mbps), ADSL2+ (<24Mbps)… queste velocità si riferiscono al download Uso di frequenze inaudibili (>25KHz) per trasmettere i segnali in formato digitale su doppino telefonico, senza interferire con il segnale vocale. Uso di filtri alle prese telefoniche per separare i due segnali. Velocità effettive dipendenti dalla distanza percorsa dal segnale Non disponibile su tutte le linee (dipende da presenza di DSLAM; tecnologie sorpassate quali MUX, UCR; distanza dalla centralina) Digital Divide I MECCANISMI DELLE RETI Da cosa si resta esclusi restando esclusi dal mondo digitale? Uso di base del computer (videoscrittura, email; lavoro) SE non si ha banda larga (ma uso del MODEM): Come avviene effettivamente la trasmissione dei dati? Nessun servizio che richiede di essere reperibili on-line (visto che la linea è commutata): ad esempio VOIP (telefonia via internet) Difficoltà a scaricare materiali web di dimensioni sempre crescenti Difficoltà a scaricare (magari in automatico) aggiornamenti software (inclusi aggiornamenti antivirus) Difficoltà nelle ricerche su web Niente radio/TV via internet (per la TV non basta una ADSL “lenta”) 7 30/05/2013 TRASMISSIONE DEI DATI: COMMUTAZIONE DI PACCHETTO COMMUTAZIONE DI PACCHETTO (PACKET SWITCHING) Ogni messaggio diviso in pacchetti numerati di dimensione fissa Ogni pacchetto contiene l’indirizzo del computer destinatario e del computer mittente Ogni pacchetto e’ inviato separatamente e potenzialmente almeno può usare un percorso completamente diverso PACKET SWITCHING Mittente PACKET SWITCHING Destinatario Dati Packet Controllo Parte di dati 8 30/05/2013 PACKET SWITCHING PACKET SWITCHING PACKET SWITCHING LA RETE COME STRUMENTO DI COMUNICAZIONE I pacchetti non arrivano necessariamente nell’ordine giusto; il destinatario aspetta che arrivino tutti prima di ricostruire il messaggio Ogni pacchetto occupa la connessione per un tempo molto breve. Potenzialmente, i pacchetti possono essere inviati in parallelo. L’uso fondamentale di una rete è quello di consentire la comunicazione tra i nodi I nodi si scambiano dei dati sotto forma di messaggi codificati in forma digitale Ogni messaggio è caratterizzato da un mittente, un destinatario, e un insieme di informazioni che costituiscono il corpo del messaggio 9 30/05/2013 PROTOCOLLI Affinché questa comunicazione possa avvenire in modo corretto si deve definire un protocollo di comunicazione Come nella vita reale si stabiliscono delle convenzioni per il comportamento tra gli individui, nel caso della comunicazione tra gli elaboratori un protocollo definisce quell’insieme di regole che il nodo mittente e il nodo destinatario devono seguire per interagire tra loro Comunicazione nelle reti – protocolli Un protocollo “monolitico” che realizzi tutte le funzionalità necessarie per la comunicazione tra elaboratori in rete è difficile da realizzare Inoltre, se cambia qualche componente della rete, si deve modificare l’intero protocollo Per ridurre la complessità di progettazione la maggior parte dei protocolli è organizzata come una serie di livelli Il numero dei livelli, il loro nome, le funzionalità differiscono da una rete ad un’altra PROTOCOLLI Un protocollo specifica: A che velocità vengono trasmessi i messaggi; Come verificare la correttezza del messaggio; Come segnalare che il messaggio è stato ricevuto; Dove inviare il messaggio (addressing) ed attraverso quale percorso (routing) Comunicazione multilivello Per ogni coppia di livelli adiacenti esiste una interfaccia Le convenzioni usate nella conversazione sono il protocollo Si tratta di un accordo tra i partecipanti su come deve avvenire la comunicazione Al di sotto del livello più basso c’è il mezzo fisico che serve per il trasferimento dei dati 10 30/05/2013 Comunicazione multilivello: lo standard ISO - OSI Modello teorico di riferimento per definire le caratteristiche della comunicazione multilivello OSI: Open Standard Interconnection Application Comunicazione multilivello: ISO OSI Modello teorico di riferimento per definire le caratteristiche della comunicazione multilivello OSI: Open Standard Interconnection Application Presentation Presentation Session Per esempio: Servizi per utilizzo delle rete Session Transport Transport Network Network Data link Data link Physical Physical Comunicazione multilivello: ISO OSI Comunicazione end-to-end Indirizzamento, routing tra reti Ethernet, TokenRing, 802.11 ethernet, doppino,.. Comunicazione multilivello: ISO OSI Application Application Application Application Presentation Presentation Presentation Presentation Session Session Session Session Transport Transport Transport Transport Network Network Network Network Data link Data link Data link Data link Physical Physical Physical Physical • Il livello n di un calcolatore comunica virtualmente con il livello n di un altro calcolatore • In realtà nessun dato viene trasferito da un livello n ad un altro ma passa ad un livello sottostante 11 30/05/2013 Comunicazione multilivello: ISO OSI I livelli più bassi sono quelli più vicini all’hardware e definiscono delle regole di basso livello che consentono di “azzerare” 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 INTERNET La reti delle reti: collega fra loro reti locali, metropolitane, geografiche e singoli computer di tutto il mondo ETHERNET Serie di protocolli a livello DATA LAYER e PHYSICAL LAYER sviluppati meta’ anni 70 che ha soppiantato tecnologie precedenti Idee chiave: NODI connessi da SEGMENTI Messaggi inviati in blocchi chiamati FRAMEs Scheda internet ed indirizzi MAC x ogni nodo Ethernet REPEATER ogni certo numero di segmenti Protocollo per OSSERVARE COLLISIONI INTERNET: STORIA IN BREVE 1962: inizio del progetto ARPANET: creare una rete sperimentale che collega siti universitari e governativi negli USA 1964: prima LAN (Lawrence Livermore Labs) 1973: Metcalfe pubblica paper su Ethernet 1974: Kahn & Cerf propongono idee di base 1978: separazione di TCP da IP 1990: 3000 reti e 200.000 computer (detti host) 1992: viene collegato il milionesimo host Agli esordi il numero di host cresce in modo esponenziale mentre in questi anni si osserva un rallentamento, con incremento annuo del del 6% 2002: hanno accesso ad Internet 457 milioni di persone (di cui 174 milioni negli Stati Uniti) 12 30/05/2013 INTERNET: STORIA IN BREVE INTERNET 1962: inizio del progetto ARPANET: creare una rete sperimentale che collega siti universitari e governativi negli USA 1964: prima LAN (Lawrence Livermore Labs) 1973: Metcalfe pubblica paper su Ethernet 1974: Kahn & Cerf propongono idee di base 1978: separazione di TCP da IP 1990: 3000 reti e 200.000 computer (detti host) 1992: viene collegato il milionesimo host Agli esordi il numero di host cresce in modo esponenziale mentre in questi anni si osserva un rallentamento, con incremento annuo del del 6% 2002: hanno accesso ad Internet 457 milioni di persone (di cui 174 milioni negli Stati Uniti) Una macchina è in Internet se: utilizza il protocollo di rete TCP/IP ha un suo indirizzo IP (Internet Protocol) ed ha la capacità di spedire pacchetti IP a tutte le altre macchine su Internet LIVELLI DI PROTOCOLLI INTERNET Come funziona Internet Un aspetto importante di Internet è la sua topologia distribuita e decentrata •In questo modo se un percorso è interrotto o troppo trafficato i dati possono prendere strade alternative •Questo aspetto deriva dalla storia (militare) di internet (vedi: N1 N5 N2 N7 N6 N3 N4 http://www.youtube.com/watch?v=9hIQjrMHTv4 ) 13 30/05/2013 I DUE PROTOCOLLI DI BASE: TCP / IP Insieme, si occupano di: Dividere il messaggio in pacchetti Instradarli Assicurarsi che arrivino (tramite meccanismi di conferma della ricezione e segnalazione di errori) Network layer: IP Ogni computer collegato ad Internet possiede un indirizzo univoco detto indirizzo IP (32 bit) I 32 bit di un indirizzo IP sono suddivisi in 4 campi da 8 bit ciascuno Per esempio: 10000000 00010100 00111110 10101011 Di solito si usa una rappresentazione formata da 4 numeri decimali separati da un punto Per esempio: 128.10.2.30 Network layer: IP Internet può essere vista come una collezione di sottoreti diverse (eterogenee) connesse tra loro (internetworking) La “colla” che tiene insieme le varie sottoreti è l’Internet Protocol (IP) Permette di trasportare i dati dalla sorgente alla destinazione, sfruttando la presenza di reti intermedie lungo il percorso Network layer: IP Gli indirizzi IP devono essere univoci Per questo motivo è stata istituita una organizzazione, Internet Assigned Number Authority (IANA) (emanazione di ICANN, un organismo del governo americano), preposta ad assegnare gli indirizzi IP garantendone l’univocità Quando vi collegate ad Internet da casa è il provider che vi assegna un indirizzo IP scegliendolo tra quelli che ha acquistato (dunque IP diversi in sessioni diverse) 14 30/05/2013 IP: il problema del numero La numerazione IP garantiva >4 miliardi di indirizzi. Sembravano tanti ma: – Dispositivi internet portatili (p.es. Smartphone, netbook) e mercati emergenti (Cina, India, Brasile) Soluzione temporanea: uso di indirizzi “privati” nelle sottoreti – I nodi di una LAN possono avere indirizzi identici a quelli altri nodi in altre reti, ma questi indirizzi non sono visibili dal resto di internet (IP pubblico/privato) – La rete ha un nodo gateway che smista i messaggi tramite un meccanismo di Network Address Translation (NAT) Network layer: IP IP fornisce anche l’instradamento (routing) dei pacchetti tra mittente e destinatario Protocollo di routing: Scopo: determinare un “buon” percorso nella rete tra sorgente e destinazione Percorso “buono”: in genera significa “più corto” La topologia della rete può cambiare (qualche router o link si può guastare) Ipv4 vs. IPv6 Di fatto, gli indirizzi IP si sono recentemente esauriti (anche se non tutti sono stati distribuiti agli utenti finali) Soluzione a lungo termine: passare ad un sistema con indirizzi di 4 numeri di 32 bit (IPv6) La migrazione è in corso, e potrebbe assumere il carattere di una emergenza. IPv6 prevede 2128 indirizzi: abbastanza per poter assegnare indirizzi univoci a qualsiasi oggetto o posto sul pianeta. Movimento verso una internet delle cose (URI, Uniform Resource Identifier per qualsiasi risorsa, vedi http://www.ietf.org/rfc/rfc3986.txt.) Transport layer Il compito del livello Transport è quello di fornire un trasporto affidabile dall’host di origine a quello di destinazione, indipendentemente dalla rete utilizzata In Internet il protocollo di questo livello è chiamato Transmission Control Protocol (TCP) 15 30/05/2013 Application layer I PROTOCOLLI INTERNET Si colloca al di sopra del livello Transport ed è il livello nel quale viene svolto il “lavoro utile” per l’utente In questo livello si trovano diversi protocolli, alcuni relativi alle applicazioni che usiamo abitualmente in Internet Application layer HTTP FTP SMTP TELNET TCP HTTP: HyperText Transfer Protocol SMTP: Simple Mail Transfer Protocol POP: Post Office Protocol FTP: File Transfer Protocol SSH: Secure Shell Pagine web Invio E-Mail Scaricamento E-Mail Trasporto File «Login» criptato su un computer remoto APPLICATION LAYER: POSTA ELETTRONICA Un’ applicazione Internet che permette lo scambio di messaggi tra gli utenti collegati alla rete È necessario fornire: L’indirizzo del mittente L’indirizzo del destinatario Il corpo del messaggio Gli indirizzi devono avere un formato ben preciso Non sono sensibili alla differenza tra maiuscole e minuscole. … UDP IP DNS … Transport layer Network layer Link + physical layer HEADER DI UN MESSAGGIO From: Roberto Zamparelli <[email protected]> To: Caio Sempronio <[email protected]> CC: Massimo Poesio <[email protected]> Subject: Posta elettronica Date: 24/02/2010 Caro Caio, …. 16 30/05/2013 POSTA ELETTRONICA: DUE APPROCCI Application layer: DNS Gli indirizzi IP numerici sono difficili da ricordare Si usano quindi degli indirizzi simbolici che sono più significativi per l’essere umano Scaricare la posta dal server al proprio computer, La posta attende sul server, da dove viene scaricata tramite i protocolli POP ed inviata tramite il protocollo SMTP. Una volta ricevuta, la posta risiede su mio computer Posso leggerla o rispondervi scollegato dalla rete dit.unitn.it, essex.ac.uk, www.mozilla.org Gli indirizzi simbolici hanno il formato: … nome5.nome4.nome3.nome2.nome1 Questi nomi vengono poi tradotti in indirizzi IP numerici mediante il Domain Name System (DNS) Oppure, consultarla sul web tramite un browser. La posta resta sul browser; lettura e composizione venegono effettuati tramite il browser. Posso accedere alla posta da qualsiasi computer, purchè connesso ad internet Sistemi “ibridi” (p.es. protocollo IMAP) Nuovi domini Top-Level Indirizzi simbolici Sono costruiti a partire da uno schema gerarchico di nomi basato sul concetto di dominio root com edu gov mil net org au … it unitn gnu … zw unito Livello 1 Oltre a .com, .it, .edu ecc., sono stati recentemente aggiunti una serie di nuovi domini di primo livello non nazionali (generici) P.es. biz, info, name, museum Vedi: http://it.wikipedia.org/wiki/Domini_di_primo_livello_generici Livello 2 www.gnu.org www www.lett.unitn.it lett dit di Livello 3 www www www Livello 4 17 30/05/2013 Application layer: DNS Ogni dominio deve essere in grado di “risolvere i nomi” dei calcolatori di sua competenza Statistiche sull’ uso di internet (marzo 2011) Da: http://www.internetworldstats.com/stats.htm Si usano i domain name server, che gestiscono la corrispondenza tra nomi simbolici e indirizzi IP numerici Quando un’applicazione deve collegarsi ad una risorsa di cui conosce il nome logico (ad es. www.unitn.it), invia una richiesta al suo name server locale, ottenendone l' IP A volte non si riesce a “collegarsi a internet” solo perchè il DNS è irraggiungibile (soluzione: selezionare un altro DNS) Come si fa a scoprirlo? Basta provare a collegarsi ad un sito internet di cui si sa l’IP (p.es. Google: http://209.85.148.103/). Se si passa, è un problema di DNS. APPLICATION LAYER: WORLD WIDE WEB Una `ragnatela’ (web) di documenti multimediali collocati su computer in tutto il mondo Il piu’ grande serbatoio di informazioni che sia mai esistito Si accede tramite: Un client chiamato browser (esempi: InternetExplorer, MozillaFirefox, GoogleChrome, AppleSafari, ...) Servers software installati su host che distribuiscono informazione (p.es. tramite Apache) Basato su: STORIA BREVE DEL WWW Fine anni ’80: iniziativa di Tim Berners-Lee al CERN di Ginevra per la condivisione di documenti tra fisici delle alte energie 1989-1991: prime definizioni di URL, HTTP, ed HTML 1993-1993: primi browser facile da usare; NCSA MOSAIC 1995: Nascita del browser NETSCAPE, inizio della crescita esplosiva del web Oggi: >1,000,000,000,000 web pages Il protocollo HTTP per la trasmissione di documenti La nozione di ipertesto 18 30/05/2013 TESTI: LETTURA SEQUENZIALE DALL’IPERTESTO AL WEB Un ipertesto (HYPERTEXT) e’ un testo diviso in parti testuali vere e proprie collegate da rimandi (Puntatori / Link) Un ipertesto multimediale può contenere anche immagini, anche in movimento, che posso a loro volta essere puntatori. IPERTESTI ESEMPI DI IPERTESTI Quasi tutte le opere enciclopediche oggi hanno forma ipertestuale Esempio: http://it.wikipedia.org/wiki/Ipertesto Formato molto comune anche per articoli scientifici (bibliografia, note a pie’ di pagina) Per esempio, nella Biomedicina Ma anche nelle materieumanistiche Sito 1 Sito 2 Narrativa ipertestuale: Lettore puo’ scegliere che percorso seguire Primo esempio riconosciuto: Afternoon, a story di Michael Joyce La Electronic Literature Organization mantiene una Electronic Literature Directory 19 30/05/2013 DALL’IPERTESTO AL WEB ASPETTI TECNICI CHIAVE DEL WWW 1945 Vannevar Bush: l’organizzazione ‘lineare’ dei testi non corrisponde veramente a come pensiamo Il termine HYPERTEXT introdotto da Ted Nelson (1965) Nel 1980 Bill Atkinson sviluppo’ per la Apple il programma HYPERCARD che permetteva di creare ipertesti tramite il linguaggio HYPERTALK 1989 Tim Berners-Lee sviluppa come parte del progetto “World Wide Web” il linguaggio HTML, che permette di esprimere link. Il WWW e’ un immenso hypertext distribuito su internet. Meccanismo di indirizzamento universale: URL Protocollo HTTP per la trasmissione di documenti Linguaggio HTML per la formattazione dei documenti HTML HTML Il linguaggio ‘storico’ della Web Un linguaggio di annotazione dei documenti che permette di collegare documenti in un ipertesto Due funzioni principali: Specificare come il documento dev’essere visualizzato Specificare links (usando URL) Discusso nel laboratorio di Paolo Massa Il linguaggio ‘storico’ della Web Oggi giunto alla versione 5 (permette di rappresentare contenuti multimedialia anche in movimento, ad esempio questo, in alternativa a programmi esterni come Adobe Flash o Microsoft Silverlight) Standard internazionale pubblico, gestito dal Consorzio W3C (a differenza di PDF, Flash, Silverlight, che sono marchi della Adobe e della Microsoft, ed hanno specifiche che potrebbero cambiare in qualsiasi momento) 20 30/05/2013 INDIRIZZI SU RETE: URL URL (Uniform Resource Locator) e’ lo standard per gli indirizzi delle risorse su Web Specifica: Come accedere alla risorsa (PROTOCOLLO) Dove si trova la risorsa (indirizzo dell’host) Nome della risorsa (path) URL per HTTP Forma generale: scheme://host:port/path?parameter=value#anchor Esempi: http://www.unitn.it/ http://www.dit.unitn.it/~poesio/Teach/IU http://www.google.it/search?hl=it&q=URL Formato: protocollo://host/path HTTP Si basa sul protocollo HTTP (HyperText Transfer Protocol) che gestisce l’interazione tra un client e un server web Client e server si scambiano dei messaggi Richieste da parte del client Risposte da parte del server Più precisamente: L’utente richiede una pagina residente su un server e il suo browser richiede una connessione TCP con il server Il server accetta la connessione iniziata dal browser Il browser ed il server si scambiano messaggi La connessione viene chiusa ESEMPIO DI COMUNICAZIONE HTTP GET /wiki/Pagina_principale HTTP/1.1 Connection: Keep-Alive User-Agent: Mozilla/5.0 (compatible; Konqueror/3.2; Linux) (KHTML, like Gecko) Accept: text/html, image/jpeg, image/png, text/*, image/*, */* Accept-Encoding: x-gzip, x-deflate, gzip, deflate, identity Accept-Charset: iso-8859-1, utf-8;q=0.5, *;q=0.5 Accept-Language: en Host: it.wikipedia.org BROWSER SERVER HTTP/1.0 200 OK Date: Mon, 28 Jun 2004 10:47:31 GMT Server: Apache/1.3.29 (Unix) PHP/4.3.4 Content-Language: it Content-Type: text/html; charset=utf-8 …. <HTML> [ ...] 21 30/05/2013 LETTURE Lazzari, cap. 3 Su Wikipedia: http://it.wikipedia.org/wiki/Rete_informatica http://it.wikipedia.org/wiki/Internet http://it.wikipedia.org/wiki/Sistemi_Client/Server Postaelettronica World Wide Web 22