Tecnologie per il web e lo sviluppo multimediale Reti di Calcolatori e Internet Luca Pulina Corso di Laurea in Scienze della Comunicazione Università degli Studi di Sassari A.A. 2015/2016 Luca Pulina (UNISS) Reti e Internet 1 / 49 Outline 1 Le reti di calcolatori 2 Internet 3 World Wide Web (WWW) Luca Pulina (UNISS) Reti e Internet 2 / 49 Outline 1 Le reti di calcolatori 2 Internet 3 World Wide Web (WWW) Luca Pulina (UNISS) Reti e Internet 3 / 49 Evoluzione dei sistemi informatici Luca Pulina (UNISS) Reti e Internet 4 / 49 Cos’è una rete? (1/2) Punto di vista logico: sistema distribuito di dati, risorse di elaborazione ed utenti. Punto di vista fisico: insieme di hardware, collegamenti, e protocolli che permettono la comunicazione tra macchine remote. Luca Pulina (UNISS) Reti e Internet 5 / 49 Cos’è una rete? (2/2) Insieme di calcolatori autonomi tra loro collegati mediante una rete di comunicazione. Gli utenti sono in grado di interagire in modo esplicito con la rete. I calcolatori connessi alla rete mantengono un certo grado di indipendenza: in caso di guasto o indisponibilità della rete ogni calcolatore continua a funzionare individualmente. Luca Pulina (UNISS) Reti e Internet 6 / 49 I servizi di una rete (1/2) Una rete di calcolatori consente: La condivisione di risorse I programmi, dati, dispositivi periferici, ... Ridondanza in caso di guasto I è generalmente possibile utilizzare risorse alternative Risparmio economico I l’uso di numerosi piccoli calcolatori è in generale più conveniente rispetto all’uso di pochi mainframe Possibilità di crescita I I può essere estesa facilmente e con costi limitati i dispositivi periferici possono essere spostati senza problemi di riconfigurazione Luca Pulina (UNISS) Reti e Internet 7 / 49 I servizi di una rete (2/2) L’utente di un calcolatore in rete può: Fruire di risorse informatiche condivise I stampanti, dischi, calcolatori più potenti, ... Scambiare dati e messaggi con utenti di altri calcolatori connessi in rete I documenti, e-mail, newsgroup, mailing-list, web, ... Eseguire applicazioni di uso individuale o di gruppo. Luca Pulina (UNISS) Reti e Internet 8 / 49 Tipi di reti Alcuni parametri utili per definire classificare una rete: 1 Scala dimensionale (estensione) 2 Struttura interna 3 Topologia Luca Pulina (UNISS) Reti e Internet 9 / 49 Estensione Le reti di computer possono essere classificate come: 1 Local Area Network (LAN) I 2 Metropolitan Area Network (MAN) I 3 È una rete di dimensione intermedia. Wide Area Network (WAN) I 4 Serie di computer distribuiti in un edificio o in un complesso di edifici. Collega computer che possono trovarsi alle estremità opposte del mondo. Reti di reti (InternetWork) I I Collega più reti differenti e singoli calcolatori mediante opportuni elementi di interfaccia. Può avere estensione mondiale (ad esempio, Internet). Luca Pulina (UNISS) Reti e Internet 10 / 49 Struttura interna Le reti possono anche essere classificate come: Reti aperte: sono reti di pubblico dominio. I Esempio: Internet. Reti chiuse (o proprietarie): quando sono gestite da una qualche entità. I Reti che utilizzano protocolli proprietari. Luca Pulina (UNISS) Reti e Internet 11 / 49 Principali topologie di rete Luca Pulina (UNISS) Reti e Internet 12 / 49 Topologia lineare (a bus) – I Fu la prima ad essere utilizzata nel progetto di reti locali. Trasmissioni broadcast che condividono un unico canale di trasmissione. I Trasmissione broadcast: un messaggio inviato sulla rete raggiunge tutti i calcolatori della rete, ma solo il calcolatore il cui indirizzo corrisponde a quello presente nel messaggio lo tratterrà per eleborarlo. È necessario risolvere conflitti tra le risorse che vogliono accedere contemporaneamente. Luca Pulina (UNISS) Reti e Internet 13 / 49 Topologia lineare (a bus) – II Ethernet è il tipo di rete locale più diffuso. I Qualsiasi computer di qualsiasi tipo prevede la possibilità di usare una scheda Ethernet per connettersi alla rete locale. Metodo di accesso I I Quando un computer vuole comunicare invia il segnale sul cavo di collegamento. Se si verifica un conflitto (due computer hanno tentato di comunicare contemporaneamente) i due computer si fermano e aspettano per un tempo T casuale, poi riprovano. Luca Pulina (UNISS) Reti e Internet 14 / 49 Topologia lineare (a bus) – III Vantaggi I I I I Semplicità: facile gestione e manutenzione Flessibilità: facile connessione di stazioni alla rete Bassi costi Affidabilità Svantaggio: Tutte le stazioni dipendono da un solo mezzo trasmissivo condiviso. I Le prestazioni possono diventare un fattore critico nel momento di traffico elevato: non è garantita la consegna del messaggio entro un certo intervallo di tempo. Luca Pulina (UNISS) Reti e Internet 15 / 49 Topologia ad anello Connessione circolare punto-a-punto tra tutte le stazioni collegate. L’informazione transita in una direzione e viene ricevuta a turno da ogni stazione che verifica se essa è destinataria del messaggio. I I In caso positivo lo elabora. In caso negativo la stazione rigenera il segnale e lo trasmette alla stazione successiva. Vantaggio: Costo ridotto. Svantaggi I I Limitata flessibilità: l’aggiunta di una nuova stazione comporta l’apertura dell’anello e la sospensione dell’attività per il tempo necessario all’inserimento. Affidabilità della rete: dipende dall’affidabilità di tutte le stazioni collegate F se una di esse ha un malfunzionamento l’anello si interrompe. Luca Pulina (UNISS) Reti e Internet 16 / 49 Topologia a stella (o albero) Le connessioni fanno capo ad un unico nodo centrale (hub) I L’hub è un dispositivo hardware specializzato che smista le comunicazioni dei computer. Consente un controllo centralizzato delle comunicazioni. Vantaggi I I Prestazioni elevate grazie alle connessioni punto a punto dedicate Facilità di controllo centralizzato del server Svantaggi I I Possibilità di sovraccarico in caso di traffico elevato, con conseguente blocco delle comunicazioni. Dipendenza dall’affidabilità del server: un suo guasto blocca l’intera rete. Luca Pulina (UNISS) Reti e Internet 17 / 49 Scambio di informazioni Affinché due calcolatori possano scambiarsi dei dati sono necessari Un insieme di regole che regolano lo scambio di dati. Un canale fisico di comunicazione tra i due calcolatori. La componente hardware della comunicazione. Il software per la comunicazione. Luca Pulina (UNISS) Reti e Internet 18 / 49 Protocolli di comunicazione – I Il solo collegamento fisico non è sufficiente per permettere la comunicazione fra calcolatori. Nella comunicazione tra calcolatori è necessaria la presenza di uno strato software che consenta lo scambio di dati sulla base di un protocollo. Un protocollo di comunicazione è un insieme di regole e convenzioni che controllano lo scambio di informazioni in una comunicazione. Luca Pulina (UNISS) Reti e Internet 19 / 49 Protocolli di comunicazione – II I protocolli stabiliscono regole di comunicazione (messaggi consentiti e loro formato) A quale velocità avviene l’invio di bit. Quali segnali indicano l’inizio e la fine di una trasmissione. Quali tecniche si usano per verificare la correttezza dei messaggi. Quale segnale indica la corretta ricezione del messaggio. Luca Pulina (UNISS) Reti e Internet 20 / 49 Protocolli di comunicazione – III Al fine di ridurre la complessità progettuale, tutte le reti sono strutturate in livelli Ogni livello sfrutta servizi offerti dai livelli inferiori e fornisce nuovi servizi ai livelli superiori I l’insieme di servizi e primitive offerte da un livello si chiama interfaccia Esistono diverse architetture di rete sul mercato. Tutte le architetture fanno riferimento allo schema OSI (Open System Interconnection) definito da un apposito comitato dell ISO (International Standard Organization) Luca Pulina (UNISS) Reti e Internet 21 / 49 Il modello ISO/OSI Luca Pulina (UNISS) Reti e Internet 22 / 49 Il modello ISO/OSI – Livelli (1/2) 1 Physical: Gestisce la trasmissione dei dati binari sul canale di comunicazione I 2 3 Data Link: Gestisce la trasmissione di frame (gruppi di poche centinaia di byte) di dati; vengono anche riconosciuti e corretti gli errori. Network: Gestisce l’instradamento dei messaggi I 4 A questo livello vengono specificate le caratteristiche elettriche di cavi e connettori. Fa uso di tabelle ed algoritmi per ottimizzare il traffico di rete. Transport: Frammenta in pacchetti i dati provenienti dal livello superiore ed assicura che i pacchetti arrivino nell’ordine appropriato. Luca Pulina (UNISS) Reti e Internet 23 / 49 Il modello ISO/OSI – Livelli (2/2) 5 Session: Permette di stabilire una sessione tra utenti di due elaboratori diversi I 6 7 Gestione della sincronizzazione e delle modalità di interscambio dei dati. Presentation: Gestisce il formato dei dati da trasferire; si occupa inoltre di compressione e crittografia. Application: Appartengono a questo livello tutti i programmi applicativi I posta elettronica, file transfer, ... Luca Pulina (UNISS) Reti e Internet 24 / 49 Unione di reti A volte può essere necessario connettere reti esistenti per formare un sistema di comunicazione più esteso. I I Per farlo, le reti vengono connesse in modo da formare una versione più grande dello stesso “tipo” di rete. Nel caso di una rete Ethernet, è possibile collegare i bus per formare un unico grande bus. Per unire le reti si usano dispositivi noti come ripetitori, bridge, switch e router. Luca Pulina (UNISS) Reti e Internet 25 / 49 Apparati di rete Ripetitore: dispositivo che collega due bus per formarne uno più lungo, senza considerare il significato dei segnali che passano. Bridge: Collega due reti con la stessa architettura (livello 2). I Inoltra il messaggio solo quando questo è destinato ad un computer all’altra estremità. Switch: è un bridge con più connessioni. I I Collega più bus anziché solo due. Uno switch controlla la destinazione del messaggio e lo trasmette al computer opportuno. Router: permette la connessione tra due reti di computer che possono anche utilizzare protocolli diversi (lavora a livello 3). I Ha un compito più complesso rispetto agli altri apparati perchè deve eseguire la conversione delle specifiche di due reti diverse. Luca Pulina (UNISS) Reti e Internet 26 / 49 Comunicazione tra processi – Client/Server Le attività in esecuzione sui computer in una rete hanno la necessità di comunicare per coordinare le loro azioni al fine di eseguire i compiti a loro affidati. Modello client/server: Si assegna il ruolo di client al computer che formula una richiesta. Il ruolo di server è del computer che soddisfa tali richieste. Luca Pulina (UNISS) Reti e Internet 27 / 49 Comunicazione tra processi – P2P Modello peer-to-peer (P2P): Prevede che due processi comunichino a livello paritario. I I Nel modello client/server, un server deve essere sempre in esecuzione per essere pronto a rispondere ai client. Il P2P coinvolge invece due processi solo per la durata della loro esecuzione. Applicazioni: instant messaging, giochi in rete, condivisione file. Luca Pulina (UNISS) Reti e Internet 28 / 49 Outline 1 Le reti di calcolatori 2 Internet 3 World Wide Web (WWW) Luca Pulina (UNISS) Reti e Internet 29 / 49 Introduzione Nasce da un programma di ricerca risalente ai primi anni Sessanta. Il suo obiettivo era quello di sviluppare la capacità di collegare più reti di computer in modo che potessero funzionare come un unico sistema connesso. Inizialmente sponsorizzato da un’agenzia del dipartimento della difesa degli Stati Uniti. Luca Pulina (UNISS) Reti e Internet 30 / 49 Architettura di Internet – I Internet può essere visto come una collezione di domini, ognuno costituito da una rete creata da una singola organizzazione. Ogni dominio è un sistema autonomo: può essere configurato secondo i desideri dell’autorità locale. La definizione dei domini è supervisionata dall’ICANN (società Internet per l’assegnazione di numeri e nomi). Luca Pulina (UNISS) Reti e Internet 31 / 49 Architettura di Internet – II L’ICANN coordina la denominazione dei domini e l’assegnamento degli indirizzi Internet. Per registrare un dominio in Internet, bisogna rivolgersi a delle apposite società autorizzate dall’ICANN dette registri. Una volta registrato, un dominio può essere “agganciato” a Internet attraverso un router, che connette la nuova rete ad una rete che fa già parte di Internet. Questo particolare router si chiama gateway. Luca Pulina (UNISS) Reti e Internet 32 / 49 Collegamento a Internet Per semplificare il collegamento a Internet, gli Internet Service Provider (ISP) permettono ai clienti di connettersi al dominio attraverso le loro attrezzature. Le connessioni più economiche avvengono tramite connessioni telefoniche temporanee dette connessioni remote. I I I Si collega il proprio PC alla linea telefonica. Si esegue un software che effettua la chiamata al provider. Il provider fornirà l’accesso a Internet per tutta la durata della chiamata. Luca Pulina (UNISS) Reti e Internet 33 / 49 Indirizzamento dei dati su Internet – I Si assegna ad ogni computer facente parte di Internet un indirizzo univoco (a livello mondiale) chiamato indirizzo IP (Internet Protocol). Ciascun indirizzo IP è una configurazione di 32 bit costituita da due parti: 1 Il dominio in cui risiede il computer. F 2 Identificatore di rete assegnato dall’ICANN. Il particolare computer all’interno del dominio. F Indirizzo host assegnato dall’amministratore di rete del dominio. Luca Pulina (UNISS) Reti e Internet 34 / 49 Indirizzamento dei dati su Internet – II Esempio: 193.204.206.252 Ogni byte della configurazione è separato da un “.” 193.204.206: i primi 3 byte rappresentano l’indirizzo assegnato dall’ICANN all’Università di Sassari. 252: L’ultimo byte rappresenta l’indirizzo del computer assegnato dall’amministratore locale. Luca Pulina (UNISS) Reti e Internet 35 / 49 Indirizzamento dei dati su Internet – III All’indirizzo numerico viene tipicamente associato un nome del dominio I Quello dell’Università di Sassari è uniss.it L’autorità locale del dominio deve mantenere un indirizzario che associ il nome del dominio con il corrispondente indirizzo IP: si utilizza un computer che fa da server, il domain name server. L’insieme di tutti i server dei nomi di Internet è chiamato Domain Name System (DNS). Luca Pulina (UNISS) Reti e Internet 36 / 49 Applicazioni Internet Quattro applicazioni internet “di base”: Posta elettronica (electronic mail, e-mail). File Transfer Protocol (FTP). Telnet e Secure Shell. World Wide Web (WWW). Luca Pulina (UNISS) Reti e Internet 37 / 49 Posta elettronica – I Per trasferire messaggi tra singoli utenti, ciascuna autorità locale impegna un computer appartenente al dominio: il server di posta elettronica. Ogni e-mail trasmessa dall’interno del dominio è inviata prima al server, che successivamente lo invia a destinazione. Ogni messaggio indirizzato ad una persona del dominio è ricevuto dal server, dove resta finché il destinatario non “scarica” la posta. Luca Pulina (UNISS) Reti e Internet 38 / 49 Posta elettronica – II Struttura dell’indirizzo di posta di un utente: Stringa di simboli che identifica la persona. Simbolo “@ (che significa “presso”). Nome del dominio di destinazione. Esempio: [email protected] POP3 è uno dei protocolli più usati con cui un utente presso un PC remoto può accedere ai suoi messaggi nel server di posta. Luca Pulina (UNISS) Reti e Internet 39 / 49 FTP È un metodo efficiente per trasferire file. Protocollo client/server il cui scopo è trasferire file da un macchina ad un’altra. Attraverso FTP, l’utente collegato ad un computer collegato a Internet usa un pacchetto software che stabilisce un contatto con un altro computer I I La macchina originale agisce da client. La macchina contattata agisce da server (server FTP). Una volta che la connessione è stabilita, i file possono essere trasferiti tra i due computer in entrambe le direzioni. Si può proteggere l’accesso al server FTP tramite protezione con password. Luca Pulina (UNISS) Reti e Internet 40 / 49 Telnet e Secure Shell Obiettivo di entrambe le applicazioni è quello di permettere agli utenti di accedere ai computer da grandi distanze. Telnet: sistema di protocolli stabilito a questo scopo I I Un utente può eseguire un software con questo protocollo per contattare un server telnet su un computer remoto. Una volta contattato, esegue la procedura di login per accedere alla macchina remota. La comunicazione via telnet non è criptata: rischioso. Secure Shell (SSH) I I Cripta i dati da trasferire Esegue una procedura di autenticazione sicura. Luca Pulina (UNISS) Reti e Internet 41 / 49 Outline 1 Le reti di calcolatori 2 Internet 3 World Wide Web (WWW) Luca Pulina (UNISS) Reti e Internet 42 / 49 WWW Ragnatela mondiale di documenti dislocati su computer residenti in tutto il mondo I È il più grande serbatoio di informazioni esistente. L’architettura software per la gestione dei dati distribuiti geograficamente è basata sulla nozione di ipertesto. La comunicazione tra client e server è regolata dai protocolli HTTP (Hyper-Text Transfer Protocol) per trasmettere documenti ipertestuali / ipermediali sulla rete. Luca Pulina (UNISS) Reti e Internet 43 / 49 Organizzazione di un testo Lettura sequenziale Luca Pulina (UNISS) Reti e Internet 44 / 49 Organizzazione di un ipertesto Luca Pulina (UNISS) Reti e Internet 45 / 49 Ipertesti Possono contenere testo, immagini, suoni, programmi eseguibili. Il linguaggio ipertestuale associa indirizzi URL a parti di documento chiamati link. Selezionando un link si scarica una pagina dal server DNS identificato dal corrispondente URL. Luca Pulina (UNISS) Reti e Internet 46 / 49 Terminologia per gli ipertesti sul Web Page (pagina): singolo “foglio” di un ipertesto. Browser: programma applicativo che gestisce pagine web e permette di navigare in rete. Home-page: “punto di ingresso” di un sito web. Luca Pulina (UNISS) Reti e Internet 47 / 49 URL: indirizzi nel Web – I Gli indirizzi per “trovare” i documenti nel Web sono detti Uniform Resource Locator (URL) e identificano in modo univoco i nodi (i documenti). protocollo:// indirizzo internet del nodo /pathname http://www.uniss.it è l’indirizzo della home-page dell’Università di Sassari. http://polcoming.uniss.it è l’indirizzo della home-page del Dipartimento. Luca Pulina (UNISS) Reti e Internet 48 / 49 URL: indirizzi nel Web – II URL è uno standard per il formato degli indirizzi delle risorse sul Web. Specifica: I I I Come si vuole accedere alla risorsa (metodo) Dove si trova la risorsa (indirizzo server) Nome della risorsa (nome) Formato: I metodo://host/nome Luca Pulina (UNISS) Reti e Internet 49 / 49