Sistemi e Tecnologie della Comunicazione Lezione 1: introduzione e generalita’ sulle reti di trasmissione dati Informazioni generali Docente: Alessandro Brunengo e-mail: [email protected] telefono: [353] 6317 lab: Dipartimento di Fisica, PF1, L107 orario preferenziale: prendere appuntamento Sito del corso: http://www.ge.infn.it/~brunengo/STC Informazioni generali Orario delle lezioni: Valutazione: mercoledi’ ore 14-16 aula 711 venerdi’ ore 9-11 aula 711 prova orale 20-30 minuti, 2 domande (3 se necessario) non e’ prevista una prova intermedia Esami in date da definire (appelli a giugno, luglio, settembre, febbraio) Testi di riferimento Lucidi delle lezioni (sul sito del corso) A. S. Tanenbaum, “Reti di calcolatori”, IV ed., Prentice Hall W. Stallings, “Trasmissione dati e reti di computer”, Jackson W.Stevens, “Unix network programming”, Prentice Hall Programma Generalita’ sulle reti di comunicazione Architettura delle reti e modelli di riferimento (OSI, TCP/IP) Phisycal Layer Funzionalita’ del livello fisico Caratterizzazione di dati, segnali, trasmissione Serie e trasformate di Fourier Caratterizzazione del segnale in frequenza Caratterizzazione del canale Alterazione delle trasmissioni dati Trasmissione dei segnali e codifica dei dati Multiplexing Mezzi trasmissivi Programma (2) Data Link Layer (connessioni punto-punto) Funzionalita’ del livello di data link Framing Checksum e controllo errori Gestione della trasmissione Controllo di flusso Esempi di protocolli Programma (3) Data Link Layer (connessioni broadcast) Protocolli di accesso al canale Protocolli Ethernet Altri protocolli LAN Wireless Bridging e switching Virtual LAN Programma (4) Network Layer Funzionalita’ del livello di rete Algoritmi di routing Routing gerarchico Routing multicast e broadcast Controllo congestione Tunneling Programma (5) Network Layer in TCP/IP IP: struttura del pacchetto ed indirizzamento ICMP ARP/RARP/BOOTP Protocolli di routing (RIP/OSPF/BGP) IPV6 (cenni) Programma (8) Transport Layer Funzionalita’ del livello di trasporto Indirizzamento Connessione Controllo di flusso Il trasporto in TCP/IP (Protocolli TCP ed UDP) Cenni sulle librerie socket Programma (9) Cenni sullo sviluppo di Internet Cenni sulla struttura della rete di Dipartimento e della rete Universitaria Cenni sulla struttura della rete di ricerca nazionale ed internazionale Generalita’ sulle reti Esigenza emergente nel XX secolo: raccolta, trasferimento, archiviazione ed accesso ad informazioni (di tutti i tipi) Le reti di comunicazione telefono radio televisione Le reti di computer Convergenza della rete di comunicazione verso la rete di computer Scopi ed applicazioni delle reti di calcolatori Condivisione delle risorse Accesso a risorse centralizzate potenza di calcolo, database, area di storage, accesso alla rete esterna, modelli client-server Affidabilita’ e performance stampanti, scanner, fax, programmi, dati ridondanza dei servizi condivisi distribuzione del carico su piu’ server Scalabilita’ Reti e sistemi distribuiti Una rete di computer e’ un insieme di calcolatori interconnesso L’accesso ad una risorsa remota presuppone la connessione esplicita verso un calcolatore della rete (es. terminale remoto, file transfer) Un sistema distribuito e’ un sistema di calcolatori (interconnesso) e software che appaiono all’utente come una unica risorsa L’esistenza di diversi calcolatori e’ resa trasparente all’utente tramite software (e hardware) opportuno (es. database, WWW) Evoluzione verso i servizi Servizi bancari/economici/finanziari Servizi di accesso ad informazioni riviste, giornali, biblioteche, WWW Comunicazione tra individui acquisti, fatturazione, operazioni bancarie posta elettronica, video conferenza, chat, newsgroop Intrattenimento video on demand, giochi distribuiti, realta’ virtuale condivisa Componenti di una rete Calcolatori dedicati alla esecuzione dei programmi utente (host o end system) Sistema di interconnessione degli host (sottorete), costituito da linee di trasmissione (canali) elementi di commutazione (IMP: Interface Message Processor, Intermediate System) Caratteristiche di una rete Velocita’ di trasmissione Affidabilita’ Flessibilita’ Scalabilita’ Costi Unita’ di misura bit: quantita’ minima di informazione (0 o 1) byte: insieme di 8 bit carattere: gruppo di bit costituente una informazione unitaria (generalmente pari a 1 byte) velocita’ di trasmissione dei dati: b/s = 1 bit al secondo (anche bps) Kb/s = 1000 b/s (Kbps) Mb/s = 1000 Kb/s (Mbps) Gb/s = 1000 Mb/s (Gbps) velocita’ di trasmissione dei simboli: baud = 1 simbolo al secondo se 1 simbolo trasporta N bit di informazione, 1 baud = N b/s Unita’ di misura (2) Misure di tempo secondo (s): misura base millisecondo (ms): 0.001 s ( 103 s) microsecondo (µs): 0.001 ms (106 s) nanosecondo (ns): 0.001 µs (109 s) picosecondo (ps): 0.001 ns (10 12 s) Misure di occupazione disco: 10 kilobyte (KB): 2 bytes (1.024 bytes) 20 megabyte (MB): 2 bytes (1.048.576 bytes) 30 gigabyte (GB): 2 bytes (1.073.741.824 bytes) 40 terabyte (TB): 2 bytes Topologie di rete La topologia della rete e’ la configurazione con cui gli host e gli IMP sono interconnessi. Esistono sostanzialmente due categorie di topologie: broadcast: gli oggetti connessi in rete condividono lo stesso mezzo trasmissivo (lo stesso canale) punto a punto: ogni canale connette direttamente tra loro solo due oggetti Topologie broadcast Reti broadcast La trasmissione dei dati di un host raggiunge tutti gli altri. Sono possibili: trasmissioni unicast (verso un singolo host) trasmissioni multicast (verso gruppi di host) trasmissioni broadcast (per tutti gli host connessi) Protocolli semplici, alta affidabilita’ Va gestito il problema di allocazione del canale Frequente nelle reti di piccole dimensioni Topologie per reti punto a punto Reti punto a punto Fino ad alcuni anni fa, utilizzata nelle reti di grandi dimensioni; ora alcune topologie (albero) sono diffuse anche per reti di piccole dimensioni Nelle topologie non completamente interconnesse va gestito il recapito dei dati dalla sorgente alla destinazione tramite l’inoltro a nodi intermedi, eventualmente attraverso cammini multipli Reti locali (LAN) Reti che coprono un edificio o un campus (fino a qualche Km), tipicamente di proprieta’ e gestite da una unica organizzazione (private) In passato quasi esclusivamente di tipo broadcast – ora realizzate anche con topologie a stella e ad albero Velocita’ trasmissive elevate (da 10 Mb/s a 10 Gb/s) un tempo irraggiungibili su distanze elevate Bassi tassi di errori trasmissivi Esempi di protocolli: Ethernet/Fast Ethernet/Gigabit Ethernet (bus ed albero) FDDI (anello e doppio anello) Token bus e token ring (bus ed anello) Reti geografiche (WAN) Copertura di aree estese (una regione, una nazione, un continente, il pianeta) Topologie punto a punto Tassi di errore piu’ elevati (ma in calo con lo sviluppo della tecnologia) Velocita’ in passato piu’ basse che nelle LAN, ma lo sviluppo della tecnologia ha reso possibili velocita’ paragonabili o superiori Costituiscono spesso la sottorete di interconnessione tra reti locali Generalmente pubbliche Reti metropolitane (MAN) Le reti metropolitane coprono distanze dell’ordine di decine di Km (tipicamente una citta’) Spesso sono una evoluzione in crescita di una o piu’ reti locali, o una infrastruttura (generalmente pubblica) per l’interconessione di reti locali della stessa area geografica Interconnessione di reti Per interconnessione di reti (internet) si intende un insieme di reti (LAN, MAN, WAN) potenzialmente differenti nella struttura e nei protocolli utilizzati, interconnesse. L’interconnessione e’ realizzata attraverso opportune apparecchiature (gateway) capaci eventualmente di convertire i protocolli di una rete nei protocolli dell’altra Il termine Internet definisce la internet globale che tutti conoscono