Internet - Università San Raffaele (PDF)
Document Details
Uploaded by AffordableGroup7338
Università San Raffaele
M. Zaninelli
Tags
Summary
These are lecture notes on the topic of internet and networking, delivered by Prof. M. Zaninelli at Università San Raffaele.
Full Transcript
Prof. M. Zaninelli Internet La rete globale Internet Prof. M. Zaninelli 1 di 52 Prof. M. Zaninelli Internet La rete...
Prof. M. Zaninelli Internet La rete globale Internet Prof. M. Zaninelli 1 di 52 Prof. M. Zaninelli Internet La rete delle reti: collega fra loro reti locali, metropolitane, geografiche e singoli computer di tutto il mondo Internet 2 di 52 Prof. M. Zaninelli Cosa vuol dire essere in Internet? Una macchina è in Internet se utilizza il protocollo TCP/IP, diventato ufficiale il 1 gennaio 1983, ha un suo indirizzo IP, ed ha la capacità di spedire pacchetti IP a tutte le altre macchine su Internet E‟ possibile essere in Internet anche in modo temporaneo chiamando un fornitore di servizi Internet (mediante un modem) Si parla di Internet Service Provider (ISP): es. Tiscali, Libero, … Internet 3 di 52 Prof. M. Zaninelli Cosa vuol dire protocollo? La comunicazione tra due calcolatori in una rete è governata da un insieme di regole che prendono il nome di protocollo Un protocollo fornisce delle funzionalità per indirizzamento (addressing) instradamento (routing) gestione di eventuali errori di trasmissione (error detection, error recovery, sequence control) gestione della velocità di comunicazione (flow control) Internet Prof. M. Zaninelli 4 di 52 Prof. M. Zaninelli Come si definisce un protocollo? 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 Internet Prof. M. Zaninelli 5 di 52 Prof. M. Zaninelli Comunicazione multilivello Messaggio Filosofo Informazione per Interprete l’interprete remoto Informazione per la segretaria Segretaria remota Prof. M. Zaninelli Internet 6 di 52 Prof. M. Zaninelli Comunicazione multilivello Un filosofo desidera comunicare la sua simpatia per l‟oryctolagus cunilicus al suo pari. Per fare questo passa un messaggio (in inglese) al suo interprete. L‟interprete si è accordato su un linguaggio neutro, l‟olandese, e così traduce il messaggio. La scelta del linguaggio è il protocollo di livello 2. L‟interprete consegna il messaggio ad una segretaria per la trasmissione. La segretaria usa un fax (protocollo di livello 1). Quando il messaggio arriva, esso viene tradotto in francese e passato al secondo filosofo. Gli interpreti possono passare da una lingua ad un‟altra purchè si mettano d‟accordo. Questo non cambia l‟interfaccia con i livelli adiacenti. Allo stesso modo le segretarie possono passare dal fax alla posta elettronica senza disturbare gli altri livelli. Internet 7 di 52 Prof. M. Zaninelli Comunicazione multilivello Qualcosa di simile accade nei protocolli di comunicazione tra calcolatori: si ipotizzano dei livelli e 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 un protocollo di livello n svolge le sue funzioni usando i servizi forniti dal livello n-1 e fornisce i servizi al livello n+1 Internet 8 di 52 Prof. M. Zaninelli Comunicazione multilivello comunicazione virtuale comunicazione reale pila di protocolli Internet 9 di 52 Prof. M. Zaninelli 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 Internet 10 di 52 Prof. M. Zaninelli Comunicazione multilivello: Esempio Application Dati Application Transport Transport Network Network Physical Physical Host A Host B Il calcolatore A produce un messaggio (Dati) che deve essere inviato al calcolatore B Il messaggio viene prodotto da un programma applicativo nel livello più alto della gerarchia (Application) Internet 11 di 52 Prof. M. Zaninelli Comunicazione multilivello: Esempio Application Dati Application Transport Dati Transport Network Network Physical Physical Host A Host B Il livello Application passa il messaggio al livello Transport dove viene inserita un‟intestazione (header) che permette di identificarlo Internet 12 di 52 Prof. M. Zaninelli Comunicazione multilivello: Esempio Application Dati Application Transport Dati Transport Network … Network Physical Physical Host A Host B Dal livello Transport il messaggio viene passato al livello Network Qui viene suddiviso in parti più piccole (pacchetti) e viene aggiunta una intestazione ad ogni pacchetto Internet 13 di 52 Prof. M. Zaninelli Comunicazione multilivello: Esempio Application Dati Application Transport Dati Transport … Network Network Physical … Physical Host A Host B Finalmente si raggiunge il livello più basso (Physical) dove avviene il trasferimento fisico dei dati verso il nodo destinatario B Internet 14 di 52 Prof. M. Zaninelli Comunicazione multilivello: Esempio Application Dati Dati Application Transport Dati Dati Transport … … Network Network Physical … … Physical Host A Host B Sul nodo B i pacchetti arrivano al livello più basso e risalgono via via tutti i livelli, con le intestazioni che vengono eliminate di volta in volta Il messaggio originale viene così ricostruito e ricevuto dal destinatario Internet 15 di 52 Prof. M. Zaninelli La famiglia di protocolli TCP/IP L‟esempio precedente descrive in modo molto astratto un meccanismo di comunicazione del tutto analogo a quello usato per la rete Internet dove si utilizza la famiglia di protocolli TCP/IP Si tratta di protocolli organizzati in livelli concettuali, ad ogni livello corrispondono determinate funzioni Servizi per l‟utilizzo della rete Application (trasferimento file, email, login remoto, ecc.) Transport Comunicazione end-to-end Network Indirizzamento Routing tra reti Physical NB. il livello più basso (Physical) è in realtà formato da due livelli distinti, il livello fisico vero e proprio e il livello di accesso alla rete (Data Link) ma non entreremo nei dettagli Internet 16 di 52 Prof. M. Zaninelli La famiglia di protocolli TCP/IP NFS HTTP FTP SMTP TELNET RPC DNS SNMP Application layer TCP UDP Transport layer IP Network layer Physical layer Internet 17 di 52 Prof. M. Zaninelli Network layer: IP Internet può essere vista come una collezione di sottoreti diverse (eterogenee) connesse insieme (internetworking) La “colla” che tiene insieme le varie sottoreti è il protocollo Internet Protocol (IP) Permette di trasportare i dati dalla sorgente alla destinazione, sfruttando la presenza di reti intermedie lungo il percorso Internet Prof. M. Zaninelli 18 di 52 Prof. M. Zaninelli Network layer: IP Una entità di livello Network è presente su tutti i dispositivi collegati in Internet application transport network network physical network physical network physical physical network physical network physical network network physical physical network physical application transport network physical Internet 19 di 52 Prof. M. Zaninelli Network layer: IP La strategia è di tipo packet switching. I dati, suddivisi in pacchetti, possono seguire percorsi diversi application application transport transport network network physical physical Internet 20 di 52 Prof. M. Zaninelli Network layer: IP Il servizio e’ connectionless: ogni datagram è gestito indipendentemente da tutti gli altri Il servizio è inaffidabile (best effort): i datagram possono arrivare fuori sequenza oppure possono essere persi Internet 21 di 52 Prof. M. Zaninelli IP: indirizzi Ogni calcolatore collegato ad Internet possiede un indirizzo univoco detto indirizzo IP (32 bit) NetId: identifica la rete cui il calcolatore è fisicamente collegato HostId: identifica il calcolatore Internet 22 di 52 Prof. M. Zaninelli IP: indirizzi I 32 bit di un indirizzo IP sono suddivisi in 4 campi da 8 bit ciascuno 10000000000010100000001000011110 Di solito si usa una rappresentazione formata da quattro numeri decimali separati da un punto 128.10.2.30 Internet 23 di 52 Prof. M. Zaninelli IP: indirizzi Gli indirizzi IP devono essere univoci per questo motivo è stata istituita una organizzazione, Internet Assigned Number Authority, preposta ad assegnare 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 Internet 24 di 52 Prof. M. Zaninelli Transport layer: TCP Il livello Transport è il cuore di tutta la gerarchia di protocolli Il suo compito è 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) Internet Prof. M. Zaninelli 25 di 52 Prof. M. Zaninelli Transport layer: TCP application transport network physical network physical network physical network physical network physical application transport network physical Prof. M. Zaninelli Internet 26 di 52 Prof. M. Zaninelli Domain Name System - DNS Gli indirizzi IP numerici sono difficili da ricordare Si usano quindi degli indirizzi simbolici che sono più significativi per l‟essere umano elios.disi.unige.it, samphrey.dcs.ed.ac.uk, developer.netscape.com Questi nomi vengono tradotti in indirizzi IP numerici mediante il Domain Name System Internet 27 di 52 Prof. M. Zaninelli Domain Name System - DNS Gli indirizzi simbolici hanno un formato come quello seguente...nome5.nome4.nome3.nome2.nome1 Internet 28 di 52 Prof. M. Zaninelli Domain Name System - DNS Sono costruiti a partire da uno schema gerarchico di nomi basato sul concetto di dominio root com edu gov int mil net org au... it... zw 1o livello gnu. uniud unimi 2o livello www. Vsa. 3o livello www.gnu.org Dpvta. www. 4o livello www. nodi relativi a nazioni nodi generici Internet 29 di 52 Prof. M. Zaninelli Domain Name System - DNS Domini di primo livello (top level) com aziende edu università americane gov istituzioni governative mil istituzioni militari net fornitori d'accesso org organizzazioni non-profit au Australia ch Svizzera fr Francia it Italia jp Giappone …… Internet 30 di 52 Prof. M. Zaninelli Domain Name System - DNS Ogni dominio deve essere in grado di “risolvere i nomi” dei calcolatori di sua competenza Si usano i 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. albert.unige.it), invia una richiesta al suo name server locale Internet 31 di 52 Prof. M. Zaninelli Domain Name System - DNS Il name server locale, se conosce la risposta, la invia direttamente al richiedente. Altrimenti interroga il name server di top level. Questi può conoscere l‟indirizzo oppure inoltrare l‟interrogazione ai suoi figli nella gerarchia Si continua con le interrogazioni fino a quando non si ottiene l‟indirizzo IP numerico della risorsa Quando l'applicazione riceve la risposta crea una connessione TCP con la destinazione, usando l'indirizzo IP appena ricevuto Internet 32 di 52 Prof. M. Zaninelli Application layer 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 SMTP (Simple Mail Transfer Protocol) FTP (File Transfer Protocol) HTTP (HyperText Transfer Protocol) Internet 33 di 52 Prof. M. Zaninelli Application layer I protocolli del livello Application sono basati sul modello di interazione client/server Per usare i servizi messi a disposizione mediante questi protocolli bisogna contattare un server Tutte le volte che usate il browser e richiedete delle pagine HTML di un sito, di fatto state contattando un web server remoto Tutte le volte che inviate una e-mail di fatto il mail server del vostro provider contatta il mail server del provider del vostro destinatario Internet 34 di 52 Prof. M. Zaninelli Trasferimento file Si basa sul File Transfer Protocol (FTP) Permette di collegarsi a siti remoti per prendere (download) / salvare (upload) file L‟accesso può essere riservato (tramite login e password) oppure aperto a tutti (si parla di anonymous ftp) Internet Prof. M. Zaninelli 35 di 52 Prof. M. Zaninelli World Wide Web (WWW) Si basa sul protocollo HTTP (HyperText Transfer Protocol) ed è la vera novità degli anni „90 Sviluppato presso il CERN di Ginevra è il più potente mezzo di diffusione telematica di documenti elettronici Mezzo di comunicazione globale, interattivo, multimediale e ipertestuale ha cambiato radicalmente il modo di comunicare e di lavorare Internet Prof. M. Zaninelli 36 di 52 Prof. M. Zaninelli Terminologia per gli ipertesti sul web browser: programma applicativo per navigare in rete page (pagina): singolo “foglio” di un ipertesto home-page: “punto di ingresso” di un sito web hotspot, hotword: porzione di una pagina che, se selezionata, permette di raggiungere un altro punto dell‟ipertesto o una nuova risorsa Internet Prof. M. Zaninelli 37 di 52 Prof. M. Zaninelli Terminologia per gli ipertesti sul web Web: insieme di tutti gli ipertesti FAQ: domande ricorrenti su un certo argomento motore di ricerca: sito che permette di cercare documenti e siti, di solito mediante inserimento di parole chiave portale: sito Web che offre risorse e servizi; è il punto di ingresso verso altri siti Internet 38 di 52 Prof. M. Zaninelli Client / Server per il web Il WWW usa il modello client/server per lo scambio delle informazioni Abbiamo il client (browser), programma applicativo che “gira” sull‟elaboratore dell‟utente il server, programma applicativo che “gira” sull‟elaboratore del fornitore di informazioni (provider) la rete Internet 39 di 52 Prof. M. Zaninelli Client / Server per il web Ogni utente può richiedere delle informazioni attraverso il suo programma client La richiesta “viaggia” attraverso la rete fino a raggiungere l‟elaboratore server Il server intrepreta la richiesta e inoltra all‟elaboratore client un file contenente le informazioni desiderate (oppure restituisce un messaggio di errore se il file richiesto non esiste sul server) NB: questa comunicazione avviene usando gli indirizzi IP di client e server! Internet 40 di 52 Prof. M. Zaninelli Usare il browser Lo stato della connessione si legge nella barra di stato in basso Looking up host Contacting host Host contacted waiting for reply Opening page … Internet 41 di 52 Prof. M. Zaninelli Usare il browser Gli indirizzi per “trovare” i documenti nel Web sono detti Uniform Resource Locator (URL) e li identificano in modo univoco Di solito sono formati dalla parola www seguita dal nome simbolico del nodo su cui si trova il server, seguito dal pathname del file sul server Vengono scritti nella barra degli indirizzi Internet 42 di 52 Prof. M. Zaninelli Motori di ricerca Permettono di “districarsi” nel deposito caotico di dati presenti nella rete Indicizzano i documenti mediante algoritmi sofisticati che analizzano le parole presenti nel documento stesso Usano dei sofbot (o spider) per esplorare il web alla ricerca dei documenti Internet 43 di 52 Prof. M. Zaninelli Motori di ricerca La ricerca dei documenti avviene quasi sempre mediante parole chiave, l‟utente deve specificare in pochi termini le proprie esigenze informative Problema: molto spesso si ottengono troppe risposte (sovraccarico informativo) Per diminuire il numero di risposte si deve specializzare ulteriormente la domanda Internet 44 di 52 Prof. M. Zaninelli Motori di ricerca Si possono usare operatori booleani AND, OR, NOT Operatori di vicinanza NEAR Espressioni esatte “ ……….. ” NB: ogni motore di ricerca adotta una sua sintassi convenzionale. Si deve selezionare la voce Advanced Research per vedere le opzioni messe a disposizione Internet 45 di 52 Prof. M. Zaninelli Motori di ricerca www.google.com www.yahoo.com www.altavista.com www.lycos.com www.virgilio.it www.excite.com Internet 46 di 52 Prof. M. Zaninelli www.Google.it Internet 47 di 52 Prof. M. Zaninelli www.Google.it Ricerca per “Naturali” 430.000 documenti trovati Internet 48 di 52 Prof. M. Zaninelli www.Google.it Ricerca per “Scienze Naturali” 96.900 documenti trovati Internet 49 di 52 Prof. M. Zaninelli www.Google.it Ricerca per “Scienze Naturali Genova” 9.190 documenti trovati Internet 50 di 52 Prof. M. Zaninelli Motori di ricerca Quando fate una ricerca dovete scegliere con cura le parole chiave: trovare migliaia di documenti equivale a non trovarne nessuno Internet 51 di 52 Prof. M. Zaninelli Termini della Licenza This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Original Work by: G. Mecca - [email protected] - Basi di Dati Internet 52 di 52