Vito Perrone Corso di Informatica A per Gestionali Indice Modulazione e trasmissione dei dati Reti di calcolatori Topologia Messaggi e protocolli ISO/OSI Ethernet Architettura client/server Telefonia mobile Sistemi transazionali 2 1
Mezzi di trasmissione dati Linea telefonica analogica (il doppino). Modem su linea telefonica commutata 56 kbit/s ISDN 128 kbit/s ADSL 640 kbit/s, fino ad alcuni Mbit/s Cavo coassiale Su brevi distanze 10 7 bit/s Su lunghe distanze 10 5 bit/s Fibra ottica 10 Gbit/s Onde elettromagnetiche BlueTooth (brevissime distanze) 700 kbit/s WiFi (decine/centinaia di metri) 56 Mbit/s Via satellite 3 Modulazione e demodulazione Modulazione: segnale digitale segnale analogico Demodulazione: segnale analogico segnale digitale La linea telefonica trasporta un segnale analogico (segnale portante) che viene modulato in modo da trasportare uno 0 oppure un 1 Tecniche di modulazione del segnale portante: Frequenza Fase Ampiezza 4 2
Modulazione di frequenza Segnale digitale da trasmettere Portante Segnale modulato in frequenza 5 Trasmissione dati Modem: MOdulatore, DEModulatore Linee dedicate (connessione permanente) o commutate (connessione temporanea, es. telefono) Linee simpex (mododirezionali), half-duplex (senso unico alternato), full-duplex (bidirezionali) 6 3
Collegamento dei terminali 7 Reti di calcolatori Le reti di calcolatori collegano elaboratori, detti nodi della rete, situati ad una cerca distanza fra di loro, fornendo a ciascuno di essi vari servizi di rete, ossia funzionalità disponibili a tutti i calcolatori della rete stessa Ogni rete è basata su di una certa topologia. Essa descrive le modalità con le quali si scelgono i calcolatori da connettere direttamente tra loro Infatti, in una rete avrò: Calcolatori connessi direttamente Calcolatori che, per poter comunicare, devono far passare i messaggi attraverso altri elaboratori 8 4
Topologia Stella Anello Nodo centrale che inoltra i messaggi + Semplice + Più nodi possono comunicare contemporaneamente - Collo di bottiglia (nodo centrale ) - Vulnerabile ai guasti del nodo centrale e della rete (unico collegamento) Nessun nodo centrale: treni di messaggi + Nessun collo di bottiglia + Più nodi possono comunicare contempor. + Meno vulnerabile ai guasti della rete e di altri nodi (inversione direzione) - Più complesso - Più nodi da attraversare 9 Topologia Bus Nessun nodo centrale + Semplice + Nessun nodo da attraversare - Vulnerabile ai guasti della rete - Solo due nodi alla volta possono comunicare Irregolare Nessuna topologia precisa + Resistente ai guasti (se routing dinamico) + Più nodi possono comunicare contemporaneamente - Complesso - Più nodi da attraversare 10 5
Topologia Le topologie a stella, anello e bus sono usate soprattutto nell ambito delle reti locali (LAN Local Area Network) La topologia irregolare è molto diffusa tra le reti geografiche (WAN Wide Area Network) 11 I messaggi Le informazioni scambiate tra i nodi sono strutturate in messaggi Ogni messaggio contiene i dati da comunicare ed un certo insieme di informazioni di controllo Spesso la quantità di dati (byte) che è possibile inserire in un messaggio è fissa. Se un nodo deve inviarne un numero maggiore, è necessario utilizzare più messaggi 12 6
Struttura dei messaggi La struttura dei messaggi dipende dallo standard utilizzato ma è possibile dare una descrizione generale: Fine messaggio Caratteri di controllo Dati da inviare Destinatario Mittente Inizio messaggio Sequenza di controllo Parte utile del messaggio Introduzione 13 Routing dei messaggi Se due nodi non sono connessi direttamente, il messaggio dovrà attraversare nodi intermedi I nodi intermedi dovranno ricevere il messaggio e rispedirlo verso un nodo a loro connesso e più vicino alla destinazione (routing o instradamento) Il caso più complesso è quello di una rete con topologia irregolare A X Y Se A vuole comunicare con B, deve passare attraverso X, oppure attraverso X e Y B Il nodo X deve decidere quale strada usare (routing statico o dinamico) 14 7
Protocolli di rete Un protocollo stabilisce le regole di comunicazione che debbono essere seguite da due interlocutori A: Chiamata per B B: Pronto, chi parla? A: Sono A, sei pronto a ricevere dati? B: Sì A: Ecco i dati bla bla bla fine dei dati B: Dati ricevuti con successo A: Ciao B: Ciao Il protocollo stabilisce cosa fare in tutte le situazioni che possono verificarsi (errori, ecc.) Deve essere conosciuto dai due interlocutori (quindi, deve essere uno standard) 15 Lo stack ISO-OSI (1) Lo standard ISO-OSI (Open System Interconnect) include un insieme di protocolli che definiscono, a vari livelli di dettaglio, le regole di comunicazione E spesso chiamato stack (pila) ISO-OSI 7. Livello applicazione Servizio di rete (trasferimento file, e-mail, ) 6. Livello presentazione Conversione formati (01/12/02 12/01/02) 5. Livello sessione Apertura e chiusura dialogo (Chiamata per B...Ciao) 4. Livello trasporto Segmentazione dati in più messaggi 3. Livello rete Routing (instradamento) 2. Livello collegamento dati Controllo correttezza messaggi (rispedisci se errori) 1. Livello fisico Specifiche Hw/Sw dipositivi fisici usati per connettere i nodi (Ethernet, cavo coassiale, ) 16 8
Lo stack ISO-OSI (2) Ogni livello definisce dei protocolli che gestiscono, a quel livello di dettaglio, la comunicazione Ciascun livello rappresenta una macchina astratta Ogni livello (macchina astratta) dello stack assume di parlare con il medesimo livello (macchina astratta) dell altro nodo ed è completamente ignaro di ciò che succede sotto di lui E un modello di riferimento, i protocolli reali spesso implementano solo parzialmente lo stack 17 Lo stack ISO-OSI (3) L7 L6 L5 L4 L3 L2 L1 Invia file pippo.txt Converti file Apri dialogo Segmenta file Invia msg 1, msg 2, Aggiungi dati controllo Connessione fisica Ricevi file Converti file Chiudi dialogo Ricomponi file Ricevi msg 1, msg 2, Verifica messaggi Connessione fisica L7 L6 L5 L4 L3 L2 L1 18 9
Lo stack ISO-OSI (4) Il flusso dei dati, in realtà, scende lungo lo stack del nodo mittente e risale lungo lo stack del nodo destinatario Durante la trasmissione: Ogni livello aggiunge informazioni o modifica quelle provenienti dal livello superiore e le passa al livello inferiore Durante la ricezione: Ogni livello estrae le informazioni di suo interesse e passa quelle rimanenti al livello superiore 19 Lo stack ISO-OSI (5) Per es. invio file pippo.txt L7 L7 Mittente L6 L5 L6 L5 Destinatario L4 L4 L3 L3 L2 L2 L1 Rete fisica L1 20 10
Un esempio di LAN: ethernet E una rete a bus (ma non solo ) Serve un interfaccia da installare sul PC (NIC) 10 Mbit/s, 100 Mbis/s (fast-ethernet), 1000 Mbit/s (giga-ethernet) Usa cavi a doppino, coassiali o ottici di lunghezza limitata Solo un nodo per volta può occupare il bus e trasmettere i dati Un nodo non ha modo di sapere quando gli altri nodi inizieranno a trasmettere Se due nodi trasmettono contemporaneamente? Si usa un protocollo detto Carrier Sense Multiple Access / Collision Detection (CSMA/CD) 21 Ethernet: struttura a bus 22 11
Ethernet: protocollo CSMA/CD Si pone al livello 1 dello stack ISO-OSI I passi eseguiti dal protocollo sono: Ogni nodo che fa parte della rete ascolta (carrier sense) per vedere se essa è libera o occupata Se nessuno trasmette, tutti i nodi possono iniziare una comunicazione (multiple access): non c è alcun nodo privilegiato rispetto agli altri Se capita che più nodi inizino effettivamente a trasmettere insieme, gli stessi si accorgono del problema (collision detection), si fermano, aspettano un intervallo casuale (piccolo) di tempo e ritrasmettono il messaggio 23 Architettura client/server Indica una modalità particolare di accesso alle funzionalità offerte da una rete E Indipendente dalla topologia della rete Una macchina particolare (detta server) offre una serie di servizi (disco condiviso, stampanti, database, ecc.) ed aspetta richieste Le altre macchine (dette client) utilizzano i servizi offerti dal server Quindi, il server generalmente si limita ad attendere che qualcuno lo contatti. Sono sempre i client ad iniziare il dialogo (chiedendo un certo servizio) E molto usata. Anche in ambito Internet (DNS, Web, ) 24 12
Architettura client/server Più client possono contattare contemporaneamente lo stesso server Il server gestisce una coda di richieste nella quale accoda i messaggi provenienti dal client ed estrae quello che, in un dato istante, elaborerà Client Client Rete logica Server Per es. un sito Web 25 Telefonia mobile Divisione del territorio in celle Ogni stazione assegna specifiche frequenze di trasmissione Stazioni adiacenti gestiscono lo spostamento di un utente da una cella ad un altra Generazioni: 1 a : TACS; analogici 2 a : GSM; digitali, introduzione della SIM card 3 a : UMTS; digitali, alta velocità multimediali 26 13
Sistemi transazionali transazione applicativa: ciascuna unità di interazione con il sistema in cui viene effettuata un operazione elementare Tipicamente, sono brevi unità di esecuzione Molto spesso, la transazione richiede anche trasmissioni di dati (una o più transazioni ACID) Tipicamente, si richiede che siano eseguite in tempi brevi Nelle applicazioni finanziarie, ciascuna transazione informatica corrisponde a una transazione economica correttezza e sicurezza 27 Sistemi transazionali: Bancomat Gestito dai Centri Informativi regionali delle varie banche Coordinati dalla SIA (Società Interbancaria per l Automazione) ATM (Automatic Teller Machine); carta magnetica Tre casi di richieste di denaro: Richieste provenienti da carte emesse dalla banca pagante verifica locale, senza scambi interbancari Richieste provenienti da carte emesse da una banca pagante gestita dallo stesso CI autorizzazione da parte di quel CI Richieste provenienti da carte emesse da una banca pagante gestita da un diverso CI il CI della banca emittente verifica la validità della carta 28 14
Sistemi transazionali: Bancomat 29 I servizi Internet 15
Indice - Internet Breve storia di Internet Il protocollo di connessione La posta elettronica e il World Wide Web 31 Breve storia di Internet Un insieme di tecnologie, standard ed applicazioni in grado di connettere tra loro reti disomogenee (basate cioè su standard diversi), creando una sorta di rete di reti, ovvero una inter-rete, ovvero una Inter-Net Nasce alla fine degli anni 60 negli USA per scopi militari (ARPANET) Negli anni 70 nasce il protocollo fondamentale di Internet: TCP/IP Negli anni 80 è diffusa soprattutto in ambito accademico All inizio degli anni 90 nasce il World Wide Web 32 16
Il protocollo di connessione 33 Il protocollo TCP/IP TCP/IP: il protocollo usato per connettere calcolatori e reti E una combinazione di due protocolli: TCP (Transmission Control Protocol): ha il compito di controllare la trasmissione dei dati sotto forma di pacchetti; corrisponde, più o meno, al livello trasporto ISO-OSI IP (Internet Protocol): si occupa di trasmettere ciascun singolo pacchetto da un elaboratore all altro; corrisponde, più o meno, con il livello rete ISO-OSI Il meccanismo di routing è dinamico e tiene conto del carico della rete 34 17
Indirizzi Internet Ogni nodo della rete ha un proprio indirizzo IP: E un numero lungo quattro byte In modo simbolico, viene scritto separando i valori dei singoli byte con dei punti (es. 127.123.45.156) Le prime due parti identificano una rete, la terza una sottorete e la quarta uno specifico calcolatore su tale sotto-rete A ogni nodo è assegnato anche un nome simbolico: Indirizzo utente: nome simbolico dell utente, simbolo @, nome del dominio dell utente (es. ceri@elet.polimi.it) Dominio: Rappresenta il nodo su cui l utente stesso risiede La maggior parte dei domini ha tre parti I domini devono essere trasformati in indirizzi numerici, i DNS (Domain Name Server) hanno questo compito 35 Telnet e ftp Telnet: E un protocollo per l emulazione di un terminale Usa l approccio client-server, usando il comando telnet fornito ai client, è possibile divenire utente di un computer remoto Il computer remoto deve avere in funzione il relativo programma server in grado di dialogare con il client telnet ftp: File Transfer Protocol: programma per il trasferimento di file Usa l approccio client-server 36 18
La posta elettronica e il World Wide Web 37 La posta elettronica Messaggio: una stringa di caratteri di lunghezza e contenuto arbitrari Il messaggio è composto da varie parti: Mittente (from): indirizzo utente del mittente Destinatario (to): indirizzo utente del destintario Destinatario in copia (cc): indirizzo utente del destinatario in copia Oggetto (subject): titolo e breve descrizione del messaggio Testo del messaggio E possibile utilizzare elenchi contenenti un ampio numero di utenti (le mailing list) al posto dell indirizzo del destinatario Gestita dal protocollo SMTP (Simple Mail Transfer Protocol) Approccio client-server 38 19
Esempio SMTP scambia varie informazioni con il server: 39 I mailer 40 20
Il World Wide Web Il World Wide Web (WWW) è un sistema per la gestione di documenti su Internet Sviluppato al CERN di Ginevra E un evoluzione degli ipertesti Sito Web: insieme unitario di documenti Web Ogni sito Web ha una struttura gerarchica, con una pagina iniziale (home page) e una serie di documenti Web collegati tramite riferimenti (link) I link possono fare riferimento a documenti Web che appartengono ad altri siti Web Si crea così una ragnatela di connessioni tra le pagine Web che consente di navigare attraverso i siti Web 41 Standard del WWW ULR (Uniform Resource Locator): il nome univoco di un documento sul Web HTTP (HyperText Transfer Protocol): protocollo di trasferimento HTML (HyperText Markup Language): linguaggio di descrrizione di un documento Web 42 21
Architettura del WWW Il WWW segue l approccio client-server : Il browser: lato client; richiede le pagine al Web server e le visualizza Il Web server: lato server; invia le pagine richieste Pagine statiche, memorizzate sul file system Pagine dinamiche, assemblate dinamicamente a partire da contenuti memorizzati ad esempio nei database Il DBMS: lato server; contiene i dai usati per assemblare le pagine dinamiche Una tipica interazione: Il client (browser) si collega al Web server tramite HTTP L utente, richiede l accesso alle pagine Web, individuate tramite i loro indirizzi (URL) Il browser contatta il server e richiede il documento Il server Web estrae (o costruisce dinamicamente) la pagina e la invia al browser Il browser interpreta la pagina (ovvero l HTML di cui è composta) e ne visualizza il contenuto 43 I browser 44 22
Classificazione Commercio elettronico (es. amazon.com) Consultazione contenuti (es. giornali, biblioteca, ) Funzioni di comunità (es. i portali) Erogazione servizi (es. orario ferroviario) Applicazioni intranet Rivolte ad una singola rete locale (per es. una rete aziendale) 45 L evoluzione del WWW XML: linguaggio per la definizione dei documenti Basato su tag, come HTML A differenza di HTML, permette di definire nuovi tag Usato anche come linguaggio per interscambio dati Usato anche come linguaggio per definire basi di dati Web Services: una collezione di standard che consentono di invocare dei servizi presenti su Internet Ciascun servizio viene reso disponibile tramite porte I dati vengono scambiati basandosi su XML 46 23