Paragrafo 1: Prerequisiti Definizione di rete Una rete è un insieme d i nodi collegati tra loro attraverso un mezzo trasmissivo: coassiale, doppino, fibra Lo scopo di una rete Lo scopo di una rete è quello di mettere in condivisione le risorse hardware (es. stampante) e software (giochi, programmi applicativi, archivi comuni, ecc) tra tutti gli utenti collegati in rete. Definizione di nodo Un nodo o host o stazione di lavoro può essere: - un computer: client o server - un apparato di rete: repeater o extender 1, router, modem, bridge, switch, access point - qualsiasi dispositivo hardware dotato di scheda di rete come: stampante, fax, tv, cell, ipod, tablet, ecc Definizione di protocollo. Esso è un insieme di regole e convenzioni che un host deve usare per poter comunicare con altri host collegati in rete, ovvero è un accordo tra i partecipanti su come si deve svolgere un comunicazione. Definizione di architettura di rete: è un protocollo suddiviso in più livelli o strati ognuno di esso associato a ciascun protocollo più semplice. Essa è anche detta una famiglia di protocolli. Esempi sono es. TCP/IP e ISO/OSI, che rappresentano tra l altro i due standard di protocolli nel campo delle reti di computer. Il modem E un dispositivo hardware che consente di trasferire dati da un calcolatore ad un altro u tilizzando la linea telefonica, che di per se non è adatta a trasmettere segnali digitali. linea dati analogica modem modem La parola modem è data dalla fusione delle parole inglese MODulation e DEModulation, infatti, esso: Es. di segnale analogico Es. di segnale digitale - in uscita converte i segnali digitali (bit) in forma analogica (MODulazione) e li invia attraverso la linea telefonica. - in ingresso converte i segnali analogici, provenienti dalla linea telefonica, in segnali digitali (DEModulazione). 1 Nodo di rete utilizzato per aumentare il raggio di copertura di una rete 1
Indirizzo IP Un Indirizzo IP (dall'inglese Internet Protocol address) è un numero che identifica univocamente un dispositivo collegato a una rete. Tale numero è costituito da 32 cifre binarie che raggruppate in 4 gruppi da 8 cifre e convertite in decimale rappresentano un numero da 0 a 255. MAC Address Il MAC address, dove MAC sta per Media Access Control, è un codice alfanumerico assegnato in modo univoco dal produttore ad ogni scheda di rete ethernet prodotta al mondo. Tale codice alfanumerico è costituito di 12 cifre esadecimali, come ad esempio: 00-50-FC-A0-67-2C Il Router Esso è un nodo di rete che si occupa di instradare pacchetti di dati tra due o più sottoreti vicine e diverse tra loro come ad la rete Internet e una rete LAN Definizione di mezzo trasmissivo Un mezzo trasmissivo o cavo o collegamento fisico o canale di comunicazione è lo strumento usato per trasmettere dati e segnali tra i diversi nodi della rete. Esempi: cavo coassiale, doppino telefonico, fibra ottica, onde radio, ecc. Cavo coassiale 2 Doppino telefonico UTP Fibra Ottica Il doppino telefonico Il doppino telefonico (o Twisted Pair, o semplicemente TP, cioè intrecciata coppia) è composto da due 3 a quattro coppie di fili di rame. Si dividono in: Utp, Ftp e Stp. Ogni filo di rame ha le seguenti caratteristiche: 2 Il cavo coassiale è costituito da: un conduttore di rame al suo centro, detta anima; da uno schermo di metallo intrecciato (detta gabbia di Faraday); da uno strato di isolante in PVC 3 Sono 2 le coppie nel caso del doppino telefonico di cat.1 cioè quello usato solo per telefonare e per connessioni sino a 56kbps 2
- ha una impedenza di circa 4 100 Ohm; - è coperto da una guaina protettiva in PVC - è avvolta a spirale 5 intrecciata con lo scopo di ridurre l interferenza 6 proveniente dalle altre coppie - tutte e 4 le coppie sono a loro volta intrecciate con lo scopo di ridurre l interferenza proveniente dall esterno Categorie dei doppini UTP Il doppino telefonico più usato è l UTP con plug RJ-45. Esso ha le seguenti caratteristiche: 1) è il più sottile 2) ha minor costo, 3) maggiore facilità di posatura e di realizzazione. Per aiutare nella scelta del doppino t. esistono diverse categorie, ognuna delle quali comprende le caratteristiche delle categorie inferiori. Quindi la migliore è l ultima categoria, cioè la 7. - cat. 1 utilizzati fino a qualche anno fa per la telefonia analogica a velocità max fino a 56Kbps - cat. 2 utilizzati per telefonia analogica e digitale ISDN e ADSL a velocità max fino a 4Mbps 7 - cat. 3 (ethernet standard) utilizzati per LAN con velocità max fino a 16 Mbps per 100 metri di distanza - cat. 4 utilizzati per LAN con velocità max fino a 20 Mbps, poco maggiore della cat. 3 e perciò poco usati - cat. 5 (ethernet rapido) utilizzati per reti LAN con velocità max fino a 256 Mbps per 100 metri 8 - cat. 6 (ethernet gigabit) utilizzati per reti LAN con velocità max fino a 1Gbps per 100 metri - cat. 7 (ethernet super gigabit) utilizzati per reti LAN con velocità max fino a 10Gbps per 100 metri Definizione di computer client? E un computer che chiede un servizio al computer server Definizione di computer server? E un computer che offre uno o più servizi contemporaneamente anche a più computer client. Essi hanno processori potenti e grande quantità di memoria RAM. Sono particolarmente utilizzati in multiutenza, ossia da centinaia di persone contemporaneamente. Classificazione dei server. A seconda dei servizi offerti, i server possono essere classificati in: - file server, cioè il nodo delle rete che offre una libreria di documenti a tutti i client. - print server o server di stampa, cioè il nodo della rete che gestire i servizi e le code di stampa di una o più stampanti connesse in rete - mail / fax server, cioè il nodo di rete che gestisce la corrispondenza in entrata / uscita, smistandola verso client destinatari della rete. - backup server cioè il nodo che gestisce periodicamente il backup dei dati e dei file creati ogni giorno dai client - web server cioè il nodo di rete che gestisce uno o più domini e siti internet. 4 L impedenza può essere un po di più o un po di meno di 100ohm in base alla lunghezza e allo spessore del filo di rame 5 Per ottenere una coppia di fili a spirale, basta tenere fermo un filo e poi arrotolare a spirale l altro filo intorno al primo. 6 Cioè il campo magnetico generato da ogni singolo coppia che andrebbe a disturbare il segnale dell'intero cavo di rete 7 Nelle abitazioni vecchie anche se la nostra connessione Telecom dichiarata è di 10Mbps, poiché dentro casa arriva il vecchio doppino di cat.1 o al massimo di cat.2 che supporta la velocità massima di 4Mbps, la velocità totale sarà sempre al massimo di 4Mbps e non di 10Mbps a meno di cambiare la cat. di doppino usato dall abitazione sino alla centralina telefonica più vicina. 8 cioè la lunghezza max del cavo di quest'ultima cat. non deve mai superare i 100m, pena disturbi e deterioramento del segnale. 3
Prer equisiti client / sever Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio mail, il servizio ftp, il servizio web, ecc. Definizione di connessione client / server Una connessione client / server è il collegamento che si realizza tra due host in rete quando un client (richiedente) richiede l esecuzione di un servizio ad un server (servente). Le fasi di una connessione client /server. Esse sono: 1) fase di richiesta servizio del client al server 2) fase di autenticazione del client tramite account 2 e inizio scambio dati 3) fase di svincolo. Essa avviene quando: a) è terminato il tempo necessario per scambiare i dati tra client e server 2) è terminato il timeslice (o time out) predefinito del server (minimo 60 secondi) Definizione di connessione client / server e multipla (o contemporanea). Essa è : 1) o la richiesta contemporanea di collegamento da parte di un client, a più servizi server 2) o la richiesta contemporanea di collegamento di più client allo stesso servizio server (vedi fig.). Esempi di connessione client / server e multipla (o contemporanea) 1) la richiesta di connessione di uno stesso client a più servizi contemporaneamente come: il servizio web, il servizio di posta, il servizio ftp, ecc. 2) la richiesta di connessione di più client contemporaneamente allo stesso servizio server di posta. Definizione di porta o SAP (Service Access Point) Essa è un numero da 0 a 65535 (2^16 cifre quindi 2 byte) utilizzato per identificare una connessione client / server, attiva su un host, scelto tra quelle libere. Esempi di porte 3 - porta 80 usata per identificare una connessione attiva con l applicazione server Web (o http) - porta 53 usata per identificare una connessione attiva con l applicazione server DNS - porta 25 usata per identificare una connessione attiva con l applicazione server Mail - porta 21 usata per identificare una connessione attiva con l applicazione server Ftp 1 Sono computer potenti che lavorano in multiutenza accesi 24h al giorno per essere sempre disponibili a fornire servizi. 2 L account è una cartella individuata da una username e password che l applicazione server assegna e riserva ad ogni suo client con i permessi di lettura e/o scrittura e/o modifica che variano a seconda del client e delle risorse. 3 In analogia a quando ci connettiamo ad un computer remoto, possiamo immaginare di entrare in un ufficio postale. Ogni sportello è adibito a svolgere un determinato servizio: uno sarà destinato alle informazioni, uno a inviare la corrispondenza, uno ad inviare i pacchi, uno a ricevere la posta, uno a effettuare pagamenti, ecc. ed ogni sportello per farsi identificare reca ben visibile un cartello, spesso con un numero, che dice quali operazioni vi si possono effettuare 4
Definizione di socket Essa è un punto di connessione tra client e server. Esso è identificato univocamente da da un indirizzo IP ed un numero di porta, ovvero da una coppia <indirizzo IP, porta >. Ad es. < IP1, 80 > e <IP2, 80> idendificano due socket di due client diversi allo stesso servizio server Web Altro es. di socket Le coppie <132. 125.18. 36 : 21> e <132.125.18.36, 25 > idendificano due socket di uno stesso client a due servizi server diversi: FTP e Mail. A che serve la socket? Serve per permettere: - ad un client di effettuare più connessioni diverse e contemporanee 4 verso i servizi di altri computer facendo in modo che i pacchetti relativi ad ogni connessione vengano indirizzati solo all applicazione che li sta aspettando. - ad un server di gestire la richiesta di connessione contemporanea da più client, come ad es. la richiesta da parte di più client web di visita della home page di un sito Definizione di protocollo orientato alla connessione. E un protocollo che prevede che sia stabilita una connessione tra client e server tramite login prima di poter iniziare a scambiare i dati tra loro. Paragr afo 2 -Architettura di re te TCP/IP: c aratter istiche generali Il TCP/ IP è un architettura di rete, cioè una famiglia di protocolli. Essa è: 1) di tipo pubblico, nel senso che le sue regole sono liberamente utilizzabili e modificabili da chiunque 2) inizialmente sviluppata dal Dipartimento di Difesa USA per le reti WAN e in ambiente Unix; e oggi diffusa per ogni ambiente: Windows, Linux e MacOSX sia per le LAN che per le WAN 3) è costituita da una pila di protocolli organizzati in maniera gerarchica, i cui più rappresentativi sono il TCP (Transmission Control Protocol) e l IP (Internet Protocol). E costituita da quattro livelli: applicazione, trasporto, IP o Internet e Interfaccia di rete (vedi fig.); 4) è indipendente dal modo in cui la rete è fisicamente realizzata 5, poiché i due livelli più bassi, dell architettura ISO /OSI, nell architettura TCP / IP sono inglobati in un unico livello detto interfaccia di rete. Ciò consente di utilizzare l architettura TCP / IP per qualsiasi tipo di rete: LAN (Token Ring, ad Anello, Mista, a Stella, a Bus, ATM 6, FDDI, ecc), MAN o WAN (Internet). 4 Connessioni multiple 5 Cioè da come è avvenuto il cablaggio dei mezzi trasmessivi con i relativi nodi di rete 6 Le ATM (Asynchronous Transfer Mode) sono state lo standard di comunicazione per le reti a larga banda usata negli anni 80 90, cioè per l ISDN); le FDDI (Fiber Distributed Data Interface) sono reti locali ad anello usate per trasportare dati ad alta velocità con le fibre ottiche. 5
I protocolli, dell architettura TCP/ IP, che studieremo: - livello di rete o IP (IP, ARP, RARP e ICMP) - livello di trasporto (UDP e TCP) - livello applicativo o.c. 7 (TELNET, SSH, FTP, SMTP, POP3, IMAP, HTTP, HTTPS, NNTP) - livello apllicativo n.o.c. (RTP, VOIP, DNS) Il PDU (Protocol Data Unit). Esso è un termine generico che si usa per indicare in inglese l unità dato ad ogni livello della pile ISO/OSI e TCP /IP. Più precisamente esso si chiama: - pacchetto al livello 3 (di rete) dell ISO/OSI e al livello 2 ( di rete) del TCP / IP - frame o trama al livello 2 (data link) del modello ISO/OSI - segmento al livello 4 di trasporto del modello ISO /OSI e al livello 3 di trasporto del TCP/IP Come è fatto un segmento 8? E fatto cosi: D.P = Destination Port; SP = Source Port; N.P = n.ro progressivo; CheckSum = controllo sugli errori Paragrafo 3 - I Protocolli del livello 2 di rete sono: IP, ARP, RARP e ICMP Le funzioni del protocollo IP (Internet Protocol) o Internet. Esse sono: 1) in trasmissione, eseguire la suddivisione dei dati, detti segmenti, provenienti dal livello superiore (di trasporto), in pacchetti (dati elementari) 2) l invio dei pacchetti al router in modo che possa portarli al destinatario trovando la strada migliore tra i diversi cammini; 3) in ricezione, eseguire il riassemblaggio dei pacchetti in dati, detti segmenti, da fornire al livello superiore Svantaggio dell IP Non è affidabile poiché non garantisce che i pacchetti arrivino a destinazione e nella sequenza corretta. 7 o.c. orientati alla connessione; n.o.c. non orientati alla connessione. 8 Come è fatto un pacchetto l abbiamo visto nel mod.2 e come è fatto una trama o frame l abbiamo vista nel mod.3 6
Vantaggio dell IP E scarno e semplice e pertanto è veloce nel controllo degli errori dei dati, in quanto esso deve solo rilevarne la presenza ma non anche correggerli. Le funzioni del protocollo ARP (Address Resolution Protocol). Esse sono: 1) la traduzione (detta anche risoluzione) di un indirizzo IP in un indirizzo MAC (IP MAC) 2) per ogni host, la creazione di una tabella a 2 colonne, detta cache ARP che mostri la corrispondenza tra il proprio IP e il proprio MAC address, come mostra la fig. seguente: Per l esercizio a fianco: 1) basta aprire il prompt dei comandi 2) digitare il comando arp a Le funzioni del protocollo RARP (Reverse Address Resolution Protocol). Esse sono quelle opposte alle funzioni del protocollo ARP, cioè: 1) la traduzione di un indirizzo MAC in un indirizzo IP (MAC IP) 2) per ogni host, la cancellazione della tabella a 2 colonne cache ARP. Le funzioni del protocollo ICMP (Internet Control Message Protocol). Esse sono: 1) il controllo ma non la correzione degli eventuali errori nei pacchetti presenti al livello 3 2) l invio di messaggi di servizio o di errori all host mittente in caso di anomalie. Esempi di avvisi in seguito ad anomalie nella rete 1) Destination Unreachable: (non disponibile) quando il router non riesce ad instradare un pacchetto IP al destinatario poiché ad es: la rete è congestionata, l host di destinazione è temporaneamente disconnesso dalla rete, la sottorete destinataria non è disponibile, ecc. 2) Time Exceeded: quando il contatore time to live arriva a zero. 3) Redirect: quando la rete è congestionata e il router indica un altra strada all host mittente per raggiungere l host destinatario. Paragrafo 4 I Protocolli del livello di trasporto sono: UDP e TCP Le funzioni del protocollo di trasporto TCP (Transmission Control Protocol) sono: 1) fornire un servizio affidabile per il trasferimento dei segmenti, garantendone la consegna 2) effettuare l ordinamento dei segmenti a destinazione, sfruttando il numero progressivo 3) procedere con la ritrasmissione degli eventuali segmenti persi o corrotti. Caratteristiche del TCP 1) è il responsabile a garantire l affidabilità delle applicazioni server, anche se é stato progettato per funzionare in sinergia 9 con un protocollo inaffidabile come l IP 2) è orientato alla connessione, cioè prevede che sia stabilita una connessione tra client e server prima di poter iniziare a scambiare i segmenti tra loro. 3) gestisce le connessioni multiple da più host client a più host server e viceversa 9 Il livello 2 dove c è il protocollo IP è vicino, cioè adiacente al livello 3 dove c è il protocollo TCP 7
Quando si usa il TCP? E utilizzato da tutti i servizi che richiedono una trasmissione affidabile dei segmenti e che siano orientati alla connessione: client e server telnet, client e server ftp, client e server mail, client e server web ecc (vedi più avanti). La funzione del protocollo UDP (User Data Protocol). E di aggiungere al PDU ricevuto, dal livello 4, da trasmettere, la porta di origine (SP), la porta del destinatario (DP) e un numero progressivo (NP), in modo che esso possa essere recapitato al corretto destinatario. Caratteristiche dell UDP 1) è un protocollo semplice e scarno e quindi non affidabile 2) non è orientato alla connessione, quindi non prevede che sia stabilita una autenticazione tra client e server prima di poter iniziare a scambiare i segmenti tra loro. Quando si usa l UDP? E utilizzato da tutti i servizi che non richiedono una trasmissione affidabile dei dati e che non sono orientati alla connessione: client e server VOIP (Voice over IP), client e server RTP (Realtime audio / video Trasport Protocol), ecc. Differenze tra IP e UDP nell architettura TCP / IP 1) Il protocollo IP è semplice e non affidabile e i PDU ricevuti dal livello superiore, trasporto sono suddivisi in pacchetti. 2) Il protocollo UDP è semplice e non affidabile e i PDU r icevuti dal livello superiore, applicazione sono suddivisi in segmenti. Paragrafo 5 - I Protocolli del livello applicativo sono: Telnet, SSH, FTP, SMTP, POP3, IMAP, HTTP, HTTPS, NNTP, DHCP (orientati alla connessione) e VOIP, RTP, DNS (non orientati alla connessione). I protocolli del livello di applicazione orientati alla connessione - Telnet (Terminal Network) è un protocollo che consente l accesso ad un host remoto su cui si dispone di un account per utilizzare le sue risorse come utente di quel sistema pur essendo fisicamente a migliaia di chilometri di distanza, tramite un applicazione client telnet che può essere ad interfaccia a caratteri o dotato di interfaccia grafica e un applicazione server telnet. - SSH (Secure Shell) è il protocollo evoluzione di telnet ad esso oggi sempre più spesso preferito perché consente l accesso ad un host remoto in modo protetto grazie alla crittografia, tramite una applicazione client SSH (individuata dalla porta 22) e una applicazione server SSH. - FTP (File Trasfer Protocol) è il protocollo che permette di trasferire file di vario tipo: testo, archivio o multimediali tra due host locale e remoto, tramite un applicazione client FTP che può essere ad interfaccia a caratteri o dotato di interfaccia grafica e un applicazione server FTP. SMPT (Simple Mail Transfer Protocol) è il protocollo usato per inviare i messaggi di posta elettronica ovvero per trasferire i messaggi dall host local detto applicazione client mail all host remoto detto applicazione server mail. Esso usa la porta 25. 8
- POP3 (Post Office Protocol versione 3) è il protocollo usato per ricevere i messaggi di posta elettronica, ovvero per trasferire i messaggi dall host remoto detto applicazione server mail all host locale detto applicazione client mail. Esso usa la porta 110. - IMAP (Internet Mail Access Protocol) è un protocollo che consente all utente di effettuare operazioni di gestione dei messaggi e delle cartelle sul server mail come: creare cartelle; di spostare i messaggi da una cartella ad un altra, oltre a ricevere la posta come il protocollo POP3. - HTTP (Hyper Test Transfer Protocol) è il protocollo usato per trasferire pagine web tra due host connessi in rete tramite browser come ad es: Internet Explorer, Netscape Navigator, Opera, Mozilla, FireFox, Safari, Enigma, Crome, Ascuoladi Browser, ecc) 10 - HTTPS (HTTP Secure) è un estensione del protocollo HTTP progettato per realizzare connessioni HTTP sicure quando ad es. si devono scambiare informazioni private sul web come per le operazioni commerciali e non solo. - NNTP (Network News Trasport Protocol) è un protocollo usato per consultare i newsgroup (letteralmente bacheche elettroniche dove ognuno può leggere o appendere dei messaggi chiamati post oppure articoli) tramite un applicazione client news che può essere un programma freeware come ad es. freeagent News Reader oppure un servizio fornito da Outlook Express. - DHCP (Dynamic Host Configuration Protocol è un protocollo che permette ai dispositivi di una rete locale di ricevere, ad ogni richiesta di accesso ad una rete più ampia, (ad es. Lan o Internet) dinamicamente la configurazione IP necessaria per stabilire la connessione. I protocolli del livello di applicazione non orientati alla connessione - VOIP (Voice Over IP) è un protocollo che permette di effettuare una conversazione telefonica sfruttando una connessione Internet o una qualsiasi altra rete, dedicata a commutazione di pacchetto che utilizzi il protocollo IP senza connessione per il trasporto dati. - RTP (Real-time audio/video Transport Protocol) è il protocollo che permette di fornire servizi di audio / video ad alta velocità, in tempo reale. Esso usa il protocollo ti trasportoudp, perché interessa che la trasmissione arrivi al destinatario nel più breve tempo possibile anche se con qualche distorsione nelle immagini o nell audio. (Es. streaming delle partite, www.direttagol.com) - DNS (Domain Name System) A tutti gli host connessi in rete (LAN o Internet) è assegnato un indirizzo IP allora per poter comunicare con un host in rete, noi dovremmo conoscere il suo IP che è un po scomodo da ricordare. Cosi nel 1984 è stato inventato il protocollo DNS (Domain Name System). Esso è un protocollo che permette di associare, mappare, un indirizzo mnemonico di un host, in un indirizzo IP e viceversa, vedi in figura: (Al link http://www.dnsqueries.com/en/dns_lookup.php si ricava l'ip) 10 Come avviene il trasferimento di una pagina web da un applicazione client locale web (browser) e un applicazione server web? Seguire il percorso seguente: 1) L utente scrive nella barra degli indirizzi del browser l URL del sito web o della pagina web; 2) il browser traduce l URL in un indirizzo IP (vedi DNS più avanti); 3) il browser instaura una connessione con il server web avente come socket (indirizzo IP, porta 80; 4) invia la richiesta di visita della pagina web all applicazione server web (get request); 5) l applicazione server web risponde al browser inviandogli la pagina web richiesta (response); 6) il client web browser processa la pagina web e la visualizza a video. 9