63
NETWORK ESSENTIALS © 2013 - Cesare Faini Componenti fondamentali delle reti informatiche Verona, 18 Luglio 2013

Network essentials

Embed Size (px)

DESCRIPTION

TCP/IP networking essential course in the healthcare area for the Karl Stroz Endoskoe Italia technical crew

Citation preview

Page 1: Network essentials

NETWORK

ESSENTIALS

© 2013 - Cesare Faini

Componenti fondamentali delle reti informatiche

Verona, 18 Luglio 2013

Page 2: Network essentials

HO

ST

M

ED

IA

IL MODELLO ISO OPEN SYSTEMS INTERCONNESSION (OSI)

© 2013 - Cesare Faini per 1

7. Application Layer

6. Presentation Layer

5. Session Layer

4. Transport Layer

3. Network Layer

2. Data Link Layer

1. Physical Layer

DATA

SEGMENT

PACKET

FRAME

BIT

Il modello ISO/OSI, concepito per reti di telecomunicazione a commutazione di pacchetto, è costituito da una pila (o stack) di protocolli attraverso i quali viene ridotta la complessità implementativa di un sistema di comunicazione per il networking

Page 3: Network essentials

7. APPLICATION

© 2013 - Cesare Faini per 2

Caratteristiche e funzioni

•Realizza l’interfaccia tra utente e macchina.

•Fornisce un insieme di protocolli che operano a stretto contatto con le applicazioni.

•I protocolli delle applicazioni tipiche di questo livello realizzano operazioni come ad esempio:

•Trasferimento file

•Terminale virtuale

•Posta elettronica

•Protocolli: www, smtp, telnet …

Page 4: Network essentials

6. PRESENTATION

© 2013 - Cesare Faini per 3

Caratteristiche e funzioni

• Trasforma i dati forniti dalle applicazioni in un formato standardizzato e offre servizi di comunicazione comuni, come la crittografia, la compressione del testo e la formattazione.

• Consente di gestire le tre diverse sintassi previste dell'informazione da trasferire:

• astratta (definizione formale dei dati che gli applicativi si scambiano)

• concreta locale (come i dati sono rappresentati localmente)

• di trasferimento (come i dati sono codificati durante il trasferimento)

• Protocolli: ASCII, Tiff, Unicode …

Page 5: Network essentials

5. SESSION

© 2013 - Cesare Faini per 4

Caratteristiche e funzioni

• Controlla la comunicazione tra applicazioni. Instaura, mantiene ed abbatte connessioni (sessioni) tra applicazioni cooperanti. Si occupa anche della sincronia di invio/ricezione messaggi.

• Consente di aggiungere, ai servizi forniti dal livello di trasporto, servizi più avanzati, quali la gestione del dialogo (mono o bidirezionale), la gestione del token (per effettuare mutua esclusione) o la sincronizzazione (inserendo dei checkpoint in modo da ridurre la quantità di dati da ritrasmettere in caso di gravi malfunzionamenti).

• Si occupa anche di inserire dei punti di controllo nel flusso dati: in caso di errori nell'invio dei pacchetti, la comunicazione riprende dall'ultimo punto di controllo andato a buon fine.

• Protocolli: NFS, SMB …

Page 6: Network essentials

5

4. TRANSPORT

Caratteristiche e funzioni

• Permette il trasferimento di dati trasparente e affidabile (implementando anche un controllo degli errori e delle perdite) tra due host. È il primo livello realmente end-to-end, cioè da host sorgente a destinatario.

• Si occupa di stabilire, mantenere e terminare una connessione, garantendo il corretto e ottimale funzionamento della sottorete di comunicazione.

• Effettua il controllo della congestione evitando che troppi pacchetti dati arrivino allo stesso destinatario contemporaneamente con effetto di perdita di pacchetti.

• A differenza dei livelli precedenti, che si occupano di connessioni tra nodi contigui di una rete, il Trasporto (a livello logico) si occupa solo del punto di partenza e di quello finale.

• Effettua anche la frammentazione dei dati provenienti dal livello superiore in pacchetti, detti "segmenti" e trasmetterli in modo efficiente ed affidabile usando il livello rete ed isolando da questo i livelli superiori. Inoltre, si preoccupa di ottimizzare l'uso delle risorse di rete e di prevenire la congestione.

• La sua unità dati fondamentale è il messaggio.

• Protocolli:TCP, UDP, SPX …

© 2013 - Cesare Faini per

Page 7: Network essentials

6

Caratteristiche e funzioni

• Rende i livelli superiori indipendenti dai meccanismi e dalle tecnologie di trasmissione usate per la connessione e si prende carico della consegna a destinazione dei pacchetti.

• È responsabile di:

• Routing: scelta ottimale del percorso di rete da utilizzare per garantire la consegna delle informazioni dal mittente al destinatario, scelta svolta dal router attraverso dei particolari algoritmi e tabelle di routing.

• Convertire i dati nel passaggio fra una rete ed un'altra con diverse caratteristiche, come il protocollo di rete utilizzato (internet-working). Traduce gli indirizzi di rete.

• Valutare la necessità di frammentare i pacchetti dati se la nuova rete ha una diversa Maximum Transmission Unit (MTU).

• Valutare la necessità di gestire diversi protocolli attraverso l'impiego di gateway.

• La sua unità dati fondamentale è il pacchetto.

• Protocolli: Rip, OSPF (di routing usati per trasportare pacchetti route-update (agg. di percorso))

3. NETWORK

© 2013 - Cesare Faini per

Page 8: Network essentials

7

Caratteristiche e funzioni

•Permette il trasferimento affidabile di dati attraverso il livello fisico. Invia frame di dati con la necessaria sincronizzazione ed effettua un controllo degli errori e delle perdite di segnale. Consente di far apparire al livello superiore il mezzo fisico come una linea di trasmissione esente da errori di trasmissione.

•Si occupa in primis di formare i dati da inviare attraverso il livello fisico, incapsulando il pacchetto proveniente dallo strato superiore in un nuovo pacchetto provvisto di un nuovo header (intestazione) e tail (coda), usati anche per sequenze di controllo. Questa frammentazione dei dati in specifici pacchetti è detta framing e i singoli pacchetti sono i frame.

•Come controllo di errore, per ogni pacchetto ricevuto, il destinatario invia al mittente un pacchetto ACK (acknowledgement, conferma) contenente lo stato della trasmissione: il mittente deve ripetere l'invio dei pacchetti mal trasmessi e di quelli che non hanno ricevuto riscontro/risposta.

•Questo livello si occupa anche di controllare il flusso di: in caso di sbilanciamento della velocità di trasmissione tra mittente e destinatario, si occupa di rallentare l'opera della macchina più veloce, accordandola all'altra e minimizzando così le perdite dovute a sovraccarico sul destinatario.

•La sua unità dati fondamentale è il frame.

•Protocolli: LLC (Logical Link Control) IEEE 802.2 -> identifica i protocolli di network layer come IP o IPX. MAC (Media Access Control) IEEE 802.3 -> definisce come i pacchetti sono disposti nel media

2. DATA LINK

© 2013 - Cesare Faini per

Page 9: Network essentials

8

Caratteristiche e funzioni

• Trasmetter un flusso di dati non strutturati attraverso un collegamento fisico, occupandosi della forma e della tensione elettrica del segnale.

• Si occupa delle procedure meccaniche e elettroniche necessarie a stabilire, mantenere e disattivare un collegamento fisico.

• Controllare la rete, gli hardware che la compongono e i dispositivi che permettono la connessione.

• In questo livello si decidono:

• Le tensioni scelte per rappresentare i valori logici dei bit tramessi.

• La durata in microsecondi del segnale che identifica un bit.

• La modulazione e la codifica utilizzata.

• L'eventuale trasmissione simultanea in due direzioni (duplex).

• La forma e la meccanica dei connettori usati per collegare l'hardware al mezzo trasmissivo.

• Protocolli: Ethernet, USB, IRDA …

1. PHYSICAL

© 2013 - Cesare Faini per

Page 10: Network essentials

9

LE RETI INFORMATICHE

© 2013 - Cesare Faini per

Una rete informatica è un sistema o un particolare tipo di rete di telecomunicazioni che permette lo scambio o condivisione di dati informativi e risorse (hardware e/o software) tra diversi calcolatori. Il sistema fornisce un servizio di trasferimento di informazioni, attraverso comuni funzionalità di trasmissione e ricezione.

Esempi di rete informatica sono le reti LAN, MAN e WAN la cui interconnessione globale dà vita alla Rete Internet.

Le reti informatiche generano traffico di tipo asincrono, a differenza della rete telefonica sincrona e per questo utilizzano la tecnologia della commutazione di pacchetto al posto della commutazione di circuito. Nate come reti per la trasmissione ati, negli anni 2000 le reti informatiche si sono evolute verso reti integrate di servizi includendo la fonia con la tecnologia VOIP.

Page 11: Network essentials

Esistono varie tipologie di rete, alcune più adatte alla costituzione di reti locali (LAN – Local Area Network) e altre più funzionali alla realizzazione di reti geografiche (WAN – Wide Area Network)

• Per citarne alcune tra le più note:

• Token Ring

• Ethernet

• Frame Relay

• FDDI (Fiber distributed data interface)

• ATM (Asynchronous Transfer Mode)

• ADSL (Asymmetric Digital Subscriber Line)

• MPLS (Multi Protocol Label Switching)

• …

10 © 2013 - Cesare Faini per

RETI INFORMATICHE

Page 12: Network essentials

Per regolamentare l'accesso al mezzo trasmissivo è stato adottato un protocollo di accesso multiplo al mezzo condiviso del tipo CSMA/CD (Carrier Sense Multiple Access / Collision Detection)

11 © 2013 - Cesare Faini per

RETE ETHERNET

Ethernet attualmente è il sistema LAN più diffuso per diverse ragioni: • è nato molto presto e si è diffuso velocemente, per cui

le uscite di nuove tecnologie come FDDI e ATM hanno trovato il campo occupato

• è più economico e facile da usare rispetto ai sistemi concorrenti e la diffusione delle componenti hardware ne ha facilitato l'adozione

• funziona bene e genera pochi problemi • è adeguato all'utilizzo con il protocollo TCP/IP

Page 13: Network essentials

12 © 2013 - Cesare Faini per

RETE ETHERNET: FUNZIONAMENTO

Il mittente invia il frame nella rete senza alcun handshake iniziale in modalità broadcast: il frame attraversa tutta la rete e viene ricevuto da tutti gli adattatori presenti, ma solo l'adattatore che vi riconosce il proprio indirizzo di destinazione lo recepirà, mentre tutti gli altri lo scarteranno. Il frame ricevuto può contenere errori, la maggior parte dei quali sono verificabili dal controllo Cyclic Redundancy Check (CRC). Un frame che non supera il controllo CRC viene scartato. Ethernet non prevede la ritrasmissione del frame scartato, né una notifica della sua perdita agli strati superiori. Ethernet non è quindi affidabile, ma grazie a ciò è semplice ed economico. Il compito di provvedere alla ritrasmissione dei frame perduti viene demandato agli strati superiori (ad esempio il protocollo IP). La gestione delle collisioni e dell'occupazione simultanea ovvero condivisa del canale di trasmissione viene gestita mediante il CSMA/CD (Carrier Sense Multiple Access with Collision Detection).

Page 14: Network essentials

13

Lo stack TCP/IP è un modello di riferimento simile al modello OSI, solo che quest'ultimo è assai più generico. Infatti, mentre nel modello OSI per ciascun livello possono esistere più protocolli (teoricamente interscambiabili, senza dover modificare quelli presenti nei livelli superiori o inferiori), nel TCP/IP non è sempre possibile. Infatti nel Livello di rete esiste solamente il protocollo IP.

© 2013 - Cesare Faini per

TRANSMISSION CONTROL PROTOCOL/INTERNET PROTOCOL

(TCP/IP)

Il modello TCP/IP risulta essere una descrizione dei protocolli esistenti, diversamente dal modello OSI, dove la realizzazione del modello ha preceduto quella dei protocolli. Rispetto al modello OSI, nel TCP/IP mancano i seguenti livelli: Presentazione, Sessione, Fisico e Data Link (collegamento dati). Questi ultimi due livelli, vengono visti dal livello di Rete come un unico livello, non specificato dal TCP/IP. Si specifica solo l'interfaccia che connette l'host alla rete per permettere l'invio e la ricezione dei pacchetti IP

Page 15: Network essentials

14 © 2013 - Cesare Faini per

OSI E TCP/IP

7. Application Layer

6. Presentation Layer

5. Session Layer

4. Transport Layer

3. Network Layer

2. Data Link Layer

1. Physical Layer

APPLICATION

TRANSPORT

INTERNET

NETWORK ACCESS

Lo standard ISO-OSI non è rigido: costituisce, piuttosto, un punto di riferimento per le architetture di rete a pacchetto, che possono distanziarsi più o meno da esso. La differenza sostanziale fra TCP/IP e ISO/OSI consiste nel fatto che nel TCP/IP i livelli di presentazione e di sessione sono esterni alla pila di protocolli (cioè è un'applicazione stand-alone che "usa" TCP/IP per comunicare con altre applicazioni). I livelli sono dunque solo quattro:

1. Applicazione

2. Trasporto

3. Livello di rete (internetworking)

4. Livello di collegamento (data link)

I livelli Sessione e Presentazione sono assenti perché implementati (eventualmente) altrove, cioè nell'applicazione stand-alone esterna.

Page 16: Network essentials

15 © 2013 - Cesare Faini per

E’ un protocollo di rete appartenente alla suite di protocolli Internet TCP/IP su cui è basato il funzionamento della rete Internet. È un protocollo di interconnessione di reti (Inter-Networking Protocol), classificato al livello di rete 3 del modello ISO/OSI (network layer), nato per interconnettere reti, occupandosi principalmente dell'Indirizzamento e lnstradamento (commutazione) tra reti e sottoreti eterogenee per tecnologia, prestazioni e gestione, pertanto implementato sopra altri protocolli di livello collegamento (data link layer) come Ethernet o ATM.

INTERNET PROTOCOL (IP)

È un protocollo a pacchetto senza connessione e di tipo di best effort nel senso che fa il massimo possibile senza garantire alcuna forma di affidabilità della comunicazione in termini di controllo di errore, controllo di flusso e controllo di congestione a cui quindi dovranno supplire i protocolli di trasporto di livello superiore (livello 4, transport layer) quale ad esempio TCP. La versione correntemente usata del protocollo IP è detta anche IPv4 per distinguerla dalla più recente IPv6, nata dall'esigenza di gestire meglio il crescente numero di computer (host) connessi ad Internet.

Page 17: Network essentials

• L'indirizzo IPv4 è costituito da 32 bit (4 byte) suddiviso in 4 gruppi da 8 bit (1 byte), separati ciascuno da un punto (notazione dotted) (es.1001001.00100100.10101111.00001111).

• Ciascuno di questi 4 byte è poi convertito in formato decimale di più facile identificazione (quindi ogni numero varia tra 0 e 255 essendo 2^8=256). Un esempio di indirizzo IPv4 è 195.24.65.215.

16 © 2013 - Cesare Faini per

IP V4

Page 18: Network essentials

L'indirizzo IPv6 è costituito da 128 bit (16 byte), viene descritto da 8 gruppi di 4 numeri esadecimali che rappresentano 2 byte ciascuno (quindi ogni numero varia tra 0 e 65535) separati dal simbolo "due punti". Un esempio di indirizzo IPv6 è 2001:0DB8:0000:0000:0000:0000:0000:0001, che può essere abbreviato in

2001:DB8::1 (i due punti doppi rappresentano la parte dell'indirizzo che è composta di soli zeri consecutivi. Si può usare una sola volta, per cui se un indirizzo ha due parti composte di zeri la più breve andrà scritta per esteso).

17 © 2013 - Cesare Faini per

IP V6

I dispositivi connessi ad una rete IPv6 ottengono un indirizzo di tipo unicast globale, vale a dire che i primi 48 bit del suo indirizzo sono assegnati alla rete a cui esso si connette, mentre i successivi 16 bit identificano le varie sottoreti a cui l'host è connesso. Gli ultimi 64 bit sono ottenuti dall'indirizzo MAC dell'interfaccia fisica.

Page 19: Network essentials

TCP è un protocollo orientato alla connessione, ovvero prima di poter trasmettere dati deve stabilire la comunicazione, negoziando una connessione tra mittente e destinatario, che rimane attiva anche in assenza di scambio di dati e viene esplicitamente chiusa quando non più necessaria. Possiede quindi le funzionalità per creare, mantenere e chiudere/abbattere una connessione.

Il servizio offerto da TCP è il trasporto di un flusso di byte bidirezionale tra due applicazioni in esecuzione su host differenti. Il protocollo permette alle due applicazioni di trasmettere contemporaneamente nelle due direzioni, quindi il servizio può essere considerato "Full-Duplex" anche se non tutti i protocolli applicativi basati su TCP utilizzano questa possibilità.

Il flusso di byte viene frazionato in blocchi per la trasmissione dall'applicazione a TCP (che normalmente è implementato all'interno del sistema operativo), per la trasmissione all'interno di segmenti TCP e la consegna all'applicazione che lo riceve, ma questa divisione in blocchi non è necessariamente la stessa nei diversi passaggi.

TCP garantisce che i dati trasmessi, se giungono a destinazione, lo facciano in ordine e una volta sola ("at most once"). Più formalmente, il protocollo fornisce ai livelli superiori un servizio equivalente ad una connessione fisica diretta che trasporta un flusso di byte. Ciò si realizza attraverso vari meccanismi di acknowledgment e di ritrasmissione su timeout.

TCP offre funzionalità di controllo di errore sui pacchetti pervenuti grazie al

campo checksum contenuto nella sua Protocol Data Unit (PDU).

18 © 2013 - Cesare Faini per

TRANSMISSION CONTROL PROTOCOL (TCP)

TCP possiede funzionalità di controllo di flusso tra terminali in comunicazione e controllo della congestione sulla connessione. Ciò permette di ottimizzare l'utilizzo della rete anche in caso di congestione, e di condividere equamente la capacità disponibile tra diverse sessioni TCP attive su uno stesso collegamento. TCP fornisce un servizio di multiplazione delle connessioni su un host, attraverso il meccanismo delle porte.

Page 20: Network essentials

A differenza del TCP, l'UDP è un protocollo di tipo connectionless e non gestisce il riordinamento dei pacchetti né la ritrasmissione di quelli persi. Per questo è generalmente considerato di minore affidabilità.

In compenso è molto rapido (non c'è latenza per riordino e ritrasmissione) ed efficiente per le applicazioni "leggere" o time-sensitive. Ad esempio, è usato spesso per la trasmissione di informazioni audio-video real-time.

Le applicazioni in tempo reale richiedono spesso un bit-rate minimo di trasmissione, non possono ritardare eccessivamente la trasmissione dei pacchetti e possono tollerare qualche perdita di dati: il modello di servizio TCP può non essere particolarmente adatto alle loro caratteristiche.

L'UDP fornisce soltanto i servizi basilari del livello di trasporto, ovvero multiplazione delle connessioni, ottenuta attraverso il meccanismo di assegnazione delle porte e verifica degli errori (integrità dei dati) mediante una checksum, inserita in un campo dell'intestazione (header) del pacchetto, mentre TCP garantisce anche il trasferimento affidabile dei dati, il controllo di flusso e il controllo della congestione.

L'UDP è un protocollo stateless, ovvero non tiene nota dello stato della connessione dunque ha, rispetto al TCP, meno informazioni da memorizzare: un server dedicato ad una particolare applicazione che scelga UDP come protocollo di trasporto può supportare quindi molti più client attivi.

19 © 2013 - Cesare Faini per

USER DATAGRAM PROTOCOL (UDP)

Page 21: Network essentials

Le applicazioni di rete che hanno la necessità di un trasferimento affidabile dei loro dati si affidano ovviamente a TCP, mentre le applicazioni più elastiche riguardo alla perdita dei dati e strettamente dipendenti dal tempo si affidano invece a UDP. Inoltre si utilizza UDP per comunicazioni in broadcast (invio a tutti i terminali in una rete locale) e multicast (invio a tutti i terminali iscritti ad un servizio).

Principali servizi Internet e protocolli adottati:

20 © 2013 - Cesare Faini per

TCP E UDP

Page 22: Network essentials

• La comunicazione avviene attraverso delle porte

• Ogni porta può utilizzata può essere associata ad un singolo servizio.

• Esistono 65.536 porte TCP e 65.536 porte UDP. Le prime 1024 sono definite dall’ Internet Assigned Numbers Authority (IANA); le altre sono libere anche se alcuni processi ormai di uso quotidiano le utilizzano ed alcune sono diventate uno standard de facto

• Ogni oggetto collegato alla rete ha bisogno di un indirizzo IP.

• Un indirizzo IP è composto da 4 numeri di 8 bit, 256 combinazioni numeriche (da 0 a 255) che funzionano esattamente come un numero telefonico. Ogni numero identifica un oggetto collegato in rete e non possono esistere 2 oggetti con lo stesso indirizzo IP

21 © 2013 - Cesare Faini per

INDIRIZZI E PORTE

Page 23: Network essentials

Un indirizzo IP è un'etichetta numerica che identifica univocamente un dispositivo (host) collegato a una rete informatica che utilizza l'Internet Protocol come protocollo di comunicazione.

Un indirizzo IP serve essenzialmente a identificare un dispositivo sulla rete e di conseguenza fornirne il percorso per la sua raggiungibilità da un altro terminale o dispositivo di rete in una comunicazione dati a pacchetto.

Più esattamente l'indirizzo IP viene assegnato a una interfaccia (ad esempio una scheda di rete) che identifica l'host di rete, che può essere un personal computer, un palmare, un router, ecc.

Va considerato, infatti, che un host può contenere più

di una interfaccia: ad esempio, un router ha diverse

interfacce (minimo due) per ognuna delle quali occorre

un indirizzo IP.

L'indirizzo IP è un indirizzo di livello 3 del modello

ISO-OSI che si rende necessario per

l'instradamento indiretto tramite l'omonimo

protocollo di rete IP ovvero per interconnettere

(internetworking) più sottoreti diverse all'interno

del paradigma TCP/IP della rete Internet.

Si contrappone all'indirizzo fisico di livello 2 o

indirizzo MAC utilizzato invece per l'instradamento

diretto all'interno di una sottorete locale.

22 © 2013 - Cesare Faini per

INDIRIZZO IP

Page 24: Network essentials

23

Esistono 5 tipi di mascherature di un indirizzo IP e sono denominate classi. Quelle di uso comune nelle reti locali sono: ◾ Classe A 255.0.0.0 ◾ Classe B 255.255.0.0 ◾ Classe C 255.255.255.0 La subnet di classe A è caratterizzata dall’avere il primo ottetto compreso tra 0 e 127, un esempio a tal proposito può essere 10.56.32.08 La subnet di classe B ha il primo ottetto tra 128 e 191, ecco un esempio di subnet in tal senso: 172.12.56.10 Infine le subnet mask appartenenti alla terza classe (classe C) hanno il primo ottetto tra 192 e 223 ed un uso più comune: 192.168.0.2. La notazione di Classe è sintetizzabile anche tramite una seconda notazione "slash notation" che è la somma dei bit presenti nella subnet mask e che facilita la notazione ed è calcolabile come segue: 255.0.0.0 = 8+0+0+0 la classe A e può essere indicata con /8; 255.255.0.0 = 8+8+0+0 la classe B e può essere indicata con /16; 255.255.255.0 = 8+8+8+0 la classe C e può essere indicata con /24. 255.255.255.255 = 8+8+8+8 = 32 corrispondente ad 1 bit, la notazione indica un unico host. 255.255.255.254 = 8+8+8+7 = 31 corrisponde a 2 bit ecc. quindi un ip 10.0.0.0/8 indica tutti gli host di una classe A, un gruppo di computer notevole. La saturazione dello spazio di IPv4 ha portato all'introduzione di nuovi concetti che hanno rivoluzionato la teoria delle reti. Vanno citati l'abbandono del concetto di classi di indirizzi IP e il conseguente utilizzo sempre maggiore di indirizzi classless (privi del concetto di classe)

© 2013 - Cesare Faini per

CLASSI DI INDIRIZZAMENTO

Classificazione ufficiale delle reti IP

Page 25: Network essentials

Una subnet, o sottorete, è una parte della suddivisione di una singola rete IP (Internet

Protocol).

Tale suddivisione è realmente visibile solo dalla parte logica della rete, ciò vuol dire che la differenza tra una rete e una sottorete sta nel tipo di configurazione di rete che si dà al proprio Computer.

Il processo di subnetting è la divisione di una singola rete in gruppi di computer che hanno in comune nell'indirizzo IP un determinato prefisso di routing.

L'operazione di Subnetting rompe una rete in piccoli intervalli, che possono utilizzare lo spazio di indirizzi esistenti in modo più efficiente, e, quando fisicamente separati, possono impedire eccessivi tassi di collisione dei pacchetti in una rete più ampia.

24 © 2013 - Cesare Faini per

SUBNET

Page 27: Network essentials

26 © 2013 - Cesare Faini per

CLASSLESS INTER-DOMAIN ROUTING

IP/CIDR Δ to last IP addr Mask Hosts (*) Size Notes

a.b.c.d/32 +0.0.0.0 255.255.255.255 1 1/256 C

a.b.c.d/31 +0.0.0.1 255.255.255.254 2 1/128 C d = 0 ... (2n) ... 254

a.b.c.d/30 +0.0.0.3 255.255.255.252 4 1/64 C d = 0 ... (4n) ... 252

a.b.c.d/29 +0.0.0.7 255.255.255.248 8 1/32 C d = 0 ... (8n) ... 248

a.b.c.d/28 +0.0.0.15 255.255.255.240 16 1/16 C d = 0 ... (16n) ... 240

a.b.c.d/27 +0.0.0.31 255.255.255.224 32 ⅛ C d = 0 ... (32n) ... 224

a.b.c.d/26 +0.0.0.63 255.255.255.192 64 ¼ C d = 0, 64, 128, 192 a.b.c.d/25 +0.0.0.127 255.255.255.128 128 ½ C d = 0, 128

a.b.c.0/24 +0.0.0.255 255.255.255.000 256 1 C

a.b.c.0/23 +0.0.1.255 255.255.254.000 512 2 C c = 0 ... (2n) ... 254

a.b.c.0/22 +0.0.3.255 255.255.252.000 1,024 4 C c = 0 ... (4n) ... 252

a.b.c.0/21 +0.0.7.255 255.255.248.000 2,048 8 C c = 0 ... (8n) ... 248

a.b.c.0/20 +0.0.15.255 255.255.240.000 4,096 16 C c = 0 ... (16n) ... 240

a.b.c.0/19 +0.0.31.255 255.255.224.000 8,192 32 C c = 0 ... (32n) ... 224

a.b.c.0/18 +0.0.63.255 255.255.192.000 16,384 64 C c = 0, 64, 128, 192

a.b.c.0/17 +0.0.127.255 255.255.128.000 32,768 128 C c = 0, 128

a.b.0.0/16 +0.0.255.255 255.255.000.000 65,536 256 C = 1 B

a.b.0.0/15 +0.1.255.255 255.254.000.000 131,072 2 B b = 0 ... (2n) ... 254

a.b.0.0/14 +0.3.255.255 255.252.000.000 262,144 4 B b = 0 ... (4n) ... 252

a.b.0.0/13 +0.7.255.255 255.248.000.000 524,288 8 B b = 0 ... (8n) ... 248

a.b.0.0/12 +0.15.255.255 255.240.000.000 1,048,576 16 B b = 0 ... (16n) ... 240

a.b.0.0/11 +0.31.255.255 255.224.000.000 2,097,152 32 B b = 0 ... (32n) ... 224

a.b.0.0/10 +0.63.255.255 255.192.000.000 4,194,304 64 B b = 0, 64, 128, 192

a.b.0.0/9 +0.127.255.255 255.128.000.000 8,388,608 128 B b = 0, 128

a.0.0.0/8 +0.255.255.255 255.000.000.000 16,777,216 256 B = 1 A

a.0.0.0/7 1.255.255.255 254.000.000.000 33,554,432 2.00 AM a = 0 ... (2n) ... 254

a.0.0.0/6 3.255.255.255 252.000.000.000 67,108,864 4.00 AM a = 0 ... (4n) ... 252

a.0.0.0/5 7.255.255.255 248.000.000.000 134,217,728 8.00 AM a = 0 ... (8n) ... 248

a.0.0.0/4 15.255.255.255 240.000.000.000 268,435,456 16 A a = 0 ... (16n) ... 240

a.0.0.0/3 31.255.255.255 224.000.000.000 536,870,912 32 A a = 0 ... (32n) ... 224

a.0.0.0/2 63.255.255.255 192.000.000.000 1,073,741,824 64 A a = 0, 64, 128, 192

a.0.0.0/1 127.255.255.255 128.000.000.000 2,147,483,648 128 A a = 0, 128

0.0.0.0/0 255.255.255.255 000.000.000.000 4,294,967,296 256 A

Per le subnet più grandi di /31 o /32, 2 indirizzi riservati devono essere sottreatti dal numero totale di quelli disponibili: l’indirizzo più grande, che viene usato per i broadcast e quello più piccolo che viene usato per identificare la rete stessa (network base). Inoltre ogni border router di una subnet utilizza un indirizzo dedicato.

Network calculator http://www.subnetmask.info

Page 28: Network essentials

27

• Nelle reti informatiche un pacchetto destinato ad un solo computer e l'indirizzo usato per inviare tale pacchetto è detto Unicast.

• Questo è il caso più comune nella destinazione di contenuti agli utenti, ma differenti tipologie di trasmissione, quali ad esempio Multicast e Broadcast, sono spesso utilizzate per lo streaming di dati.

• Concettualmente una connessione unicast corrisponde ad una connessione punto-punto.

• Un pacchetto destinato a tutti i calcolatori di una rete è detto Broadcast, uno destinato a molti è Multicast, uno destinato ad un indirizzo qualunque di un gruppo è detto Anycast

© 2013 - Cesare Faini per

UNICAST MULTICAST BROADCAST ANYCAST

Unicast Multicast Broadcast Anycast

Page 29: Network essentials

28

Con il termine multicast, si indica la distribuzione simultanea di informazione verso un gruppo di destinatari.

Un indirizzo che si riferisce a un gruppo di destinazioni è detto a sua volta indirizzo Multicast.

Il modello di servizio multicast prevede che un computer invii i pacchetti ad un indirizzo associato al gruppo multicast; il computer sorgente invia una sola copia dell'informazione (indipendentemente dal numero di destinatari), saranno poi gli M-Router (Multicast Router) che moltiplicheranno l'informazione quando necessario. In questo modo se 50 computer (Gruppo) devono ricevere lo stesso file dalla stessa sorgente, quest'ultima invierà una sola copia del file, man mano che si naviga nella rete saranno gli M-Router che moltiplicheranno le informazioni fino al raggiungimento dei 50 computer. I computer che vogliono ricevere le "trasmissioni" del gruppo multicast si devono registrare per quel gruppo, e la rete si occuperà di consegnare i pacchetti multicast a tutti quelli che si sono registrati. Spesso non c'è modo di controllare né chi trasmette su un gruppo multicast né quali computer possono ricevere, se non in modo piuttosto grossolano.

Il servizio di multicast è stato pensato per permettere la diffusione efficiente di programmi multimediali, in analogia con la radio e la televisione trasmesse nell'etere, e viene anche utilizzato per funzioni di gestione della rete (per risolvere problemi come "trova tutti i computer su una sottorete che implementano la funzione X o che hanno bisogno della funzione Y", basta che questi si iscrivano tutti ad uno stesso gruppo multicast).

Per la natura del servizio di rete multicast, risulta molto difficile usare protocolli di trasporto orientati alla connessione come TCP, per cui si usano protocolli senza connessione come UDP.

Il Multicast è implementato in ethernet in modo abbastanza semplice: una classe di indirizzi ethernet è riservata all'uso come indirizzi multicast. Questi pacchetti sono trattati dalla rete come se fossero broadcast, ovvero sono ritrasmessi a tutti i computer collegati. Se un processo è interessato a ricevere la trasmissione su un gruppo multicast, il sistema operativo lo comunica alla scheda di rete, che riceve il pacchetto e lo passa al sistema operativo, il quale a sua volta lo passa al processo interessato. Naturalmente questo sistema non è scalabile all’infinito, in quanto tutto il traffico multicast viene fisicamente inviato a tutti i computer interessati collegati alla rete, rischiando di saturare tutta la banda disponibile.

In Internet, il servizio multicast è implementato solo parzialmente, e in modo molto più complesso, perché la

funzionalità di routing multicast deve essere aggiunta a tutti i router. Il protocollo Internet Group

Management Protocol (IGMP) viene usato dai computer per richiedere di essere iscritti ad un

gruppo multicast, ed esistono appositi algoritmi di routing per il traffico multicast, come Distance

Vector Multicast Routing Protocol (DVMRP) e Protocol Independent Multicast (PIM).

Come per il traffico unicast, ci si appoggia ad eventuali meccanismi di multicast forniti dalle reti utilizzate.

© 2013 - Cesare Faini per

MULTICAST

Multicast

Page 30: Network essentials

Il termine Broadcast indica una modalità di instradamento per la quale un pacchetto inviato ad un indirizzo particolare (detto appunto di broadcast) verrà consegnato a tutti i computer collegati alla rete (ad esempio, tutti quelli su un segmento di rete ethernet, o tutti quelli di una sottorete IP).

Per via dei costi gli indirizzamenti broadcast non sono consentiti a livello globale (internet), ma risultano vincolati nell'ambito di una rete locale. Il Broadcast può essere eseguito su diversi livelli del modello OSI. A livello Data Link (Secondo Livello) l'invio del pacchetto o richiesta viene eseguito sfruttando il MAC Address (Indirizzo Fisico) impostandolo al suo valore più alto (FF:FF:FF:FF:FF:FF).

A livello Network (Terzo Livello) l'invio del pacchetto o richiesta viene eseguita sfruttando l'IP (indirizzo logico) impostandolo sempre al suo valore più alto facendo attenzione alla relativa subnet di appartenenza. Si definisce broadcast, in generale, la spedizione contemporanea della stessa informazione a più nodi di arrivo contemporaneamente. Si chiama broadcasting l'utilizzo di questo metodo di comunicazione. Un sistema definito broadcast consente l'elaborazione e l'invio di pacchetti di dati che, grazie all'inserimento di un codice speciale nel campo indirizzo, può essere ricevuto da tutti i computer contemporaneamente collegati, invece che da uno solo. Nel caso di un funzionamento di questo tipo si è soliti dire che il dispositivo di rete opera in broadcasting.

Il broadcast non esiste in IP v6

29 © 2013 - Cesare Faini per

BROADCAST

Broadcast

Page 31: Network essentials

30 © 2013 - Cesare Faini per

PRINCIPALI APPARATI DI RETE

Hub

Switch

Router

Gateway

Bridge

Firewall

Access Point

Page 32: Network essentials

31 © 2013 - Cesare Faini per

HUB

Questo permette a due dispositivi di comunicare attraverso l'hub come se questo non ci fosse, a parte un piccolo ritardo aggiuntivo nella trasmissione oltre a quello standard di propagazione. La conseguenza del comportamento dell'hub è che la banda totale disponibile in uscita viene frazionata e ripartita tra i vari segnali portanti inviati a causa del moltiplicarsi dei dati da inviare. Un hub non ha bisogno di riconoscere i confini dei dati che lo attraversano, quindi è considerato un dispositivo di livello 1 (fisico) nel modello OSI in quanto ritrasmette semplicemente i segnali elettrici e non entra nel merito dei dati. Nel gergo delle reti Ethernet, un hub crea un unico dominio di collisione unendo tutti i calcolatori o le reti connessi alle sue porte, ovvero se due calcolatori collegati a porte diverse trasmettono contemporaneamente si verifica una collisione di pacchetti in ricezione e la trasmissione deve essere ripetuta. Infatti l'hub non distingue i segmenti di LAN e ritrasmette tutti i segnali che riceve. Ciò crea anche delle limitazioni al numero di nodi che si possono connettere nella LAN vista nella sua complessità. Inoltre, a causa di questa sua semplice funzione, non è possibile connettere segmenti Ethernet di tipologia e di velocità diversa in quanto l'hub non è neanche fornito di buffer. In pratica dunque la LAN nel suo complesso va vista come un'unica rete fisica.

Nel caso diffuso delle reti Ethernet, un hub è un dispositivo che inoltra i dati in arrivo da una qualsiasi delle sue porte su tutte le altre, cioè in maniera diffusiva (broadcasting). Per questa ragione può essere definito anche un «ripetitore multiporta».

Page 33: Network essentials

32 © 2013 - Cesare Faini per

SWITCH

inoltrando selettivamente i frame ricevuti verso una porta di uscita cioè verso un preciso destinatario grazie a una corrispondenza univoca porta-indirizzo. Attraverso l'instradamento è in grado di ridurre quindi il cosiddetto dominio di collisione presente nelle reti locali broadcast in maniera efficiente Come con un hub, due nodi possono comunicare attraverso uno switch come se questo non ci fosse, ovvero il suo comportamento è trasparente. A differenza però di quanto farebbe un hub, uno switch normalmente inoltra i frame in arrivo da una qualsiasi delle sue porte soltanto a quella cui è collegato il nodo destinatario del frame. Uno switch possiede quindi l'intelligenza necessaria a riconoscere i confini dei frame nel flusso di bit, immagazzinarli, decidere su quale porta inoltrarli, trasferirli verso una porta in uscita, trasmetterli. Normalmente uno switch opera al livello datalink del modello di riferimento ISO/OSI. Lo switch gode maggiore espandibilità in termini di numero di porte e performance migliori Inoltre uno switch di fascia medio alta fornisce tipicamente le seguenti caratteristiche: • possibilità di gestione • supporto di più istanze del protocollo Spanning Tree; • supporto di LAN virtuali (VLANs) secondo lo standard 802.1Q • mirroring delle porte • supporto della QoS (Quality of Service)

Nella tecnologia delle reti informatiche, uno switch (commutatore) è un dispositivo di rete o nodo interno di rete che si occupa di commutazione a livello 2 cioè livello datalink del modello ISO/OSI cioè di indirizzamento e instradamento all'interno di reti locali attraverso indirizzi MAC

Page 34: Network essentials

33 © 2013 - Cesare Faini per

STACKABLE SWITCH

Sono macchine più evolute dotate di funzionalità che permettono l'interconnessione backbone in cui rami con caratteristiche di velocità e capacità inferiori confluiscono ordinatamente su rami con caratteristiche superiori: per questi collegamenti vengono utilizzate velocità che possono arrivare anche a 10Gbps. Generalmente in una macchina stackabile le porte adibite a queste connessioni sono dotate di interoperabilità o sono addirittura modulari, rendendo flessibile la modalità di link, ad es. nella scelta di velocità e trasporto fisico (rame o fibra). Caratteristiche significative della macchine stackable sono: • La possibilità di impilare varie macchine; • La possibilità di gestirle assieme come fossero una; • La possibilità di interconnettere macchine di tipo diverso switch, hub, router; • La possibilità di realizzare sistemi tolleranti ai guasti (se si rompe una macchina le altre continuano a

funzionare e allo stesso modo se una porta non funziona se ne collega un'altra).

Page 35: Network essentials

34 © 2013 - Cesare Faini per

ROUTER

Un router (instradatore) è un dispositivo instradare i dati fra reti diverse. È un nodo interno di rete deputato alla commutazione di livello 3 del modello OSI o del livello internet nel modello TCP/IP. L'instradamento può avvenire verso reti direttamente connesse su interfacce fisiche distinte oppure verso altre sottoreti non limitrofe che, grazie alle informazioni contenute nelle tabelle di instradamento, siano raggiungibili attraverso altri nodi della rete. Può essere visto come un dispositivo di interfacciamento tra diverse sottoreti anche eterogenee, che ne permette l’interoperabilità (internetworking) a livello di indirizzamento. Utilizza gli indirizzi IP (livello 3) tramite tabelle di instradamento (o routing table) che possono contenere informazioni corrispondenti a singoli host o a intere reti, ovvero sottoinsiemi anche molto ampi dello spazio di indirizzamento. Questo è fondamentale per la scalabilità delle reti in quanto permette di gestire reti anche molto grandi facendo crescere le tabelle di instradamento in modo meno che lineare rispetto al numero di host. Un router può interconnettere reti di livello 2 eterogenee, come ad esempio reti LAN, con reti geografiche in varie tecnologie. Un router è in grado di bloccare il traffico broadcast. Sia che operi un instradamento verso il successivo router (next hop) che un instradamento nella rete locale adiacente le funzionalità di livello inferiore dedicate al trasporto dati avvengono sempre con il particolare protocollo di trasporto del collegamento geografico realizzato per interconnetere due o più sottoreti (es. Frame Relay e ATM) oppure direttamente con quello della sottorete attraversata (ad es. Ethernet tramite protocollo ARP). Dal punto di vista fisico i router non sono altro che sistemi di elaborazione dedicati al solo scopo (special purpose) di indirizzare/instradare pacchetti siano essi normali computer che fanno girare un software apposito o apparati (hardware e software) specializzati. I router di fascia più alta sono progettati per ottenere prestazioni wire speed, letteralmente alla velocità della linea.

Page 36: Network essentials

35 © 2013 - Cesare Faini per

GATEWAY

Un gateway (dall'inglese, portone, passaggio) è un dispositivo di rete che opera al livello di rete e superiori del modello ISO/OSI. Il suo scopo principale è quello di veicolare i pacchetti di rete all'esterno di una rete locale (LAN) Gateway è un termine generico che indica il servizio di inoltro dei pacchetti verso l'esterno; il dispositivo hardware che porterà a termine questo compito è tipicamente un router. Nelle reti più semplici è presente un solo gateway che inoltra tutto il traffico diretto all'esterno verso la rete internet. In reti più complesse in cui sono presenti parecchie subnet, ognuna di queste fa riferimento ad un gateway che si occuperà di instradare il traffico dati verso le altre sottoreti o a rimbalzarlo ad altri gateway. Spesso i gateway non si limitano a fornire la funzionalità di base di routing, ma integrano altri servizi da e verso la rete locale come proxy DNS, firewall, NAT etc, che sono appunto servizi di strato di rete più elevato ovvero applicativo.

Page 37: Network essentials

36 © 2013 - Cesare Faini per

BRIDGE

Un bridge (letteralmente ponte) è un dispositivo di rete che si colloca al livello datalink del modello ISO/OSI e che traduce da un mezzo fisico ad un altro all'interno di una stessa rete locale. Esso è quindi in grado di riconoscere, nei segnali elettrici che riceve dal mezzo trasmissivo, dei dati organizzati in strutture dette trame (in inglese frame), di individuare all'interno di esse l'indirizzo del nodo mittente e quello del nodo destinatario e in base a questi operare un indirizzamento dei pacchetti tra più segmenti di rete ad esso interconnessi. Tipicamente un bridge è munito di porte con cui è collegato a diversi segmenti della rete locale indirizzando pacchetti tra essi. Quando riceve un frame su una porta, cerca di capire dall'indirizzo del destinatario se questi si trova nello stesso segmento del mittente oppure no. Nel primo caso evita di inoltrare il frame, in quanto presumibilmente il destinatario l'ha già ricevuto per condivisione del bus di comunicazione. Nel secondo caso invece il bridge inoltra il frame verso il segmento in cui si trova effettivamente il destinatario. Se non sa su quale segmento si trova il destinatario, il bridge inoltra il frame su tutte le porte tranne quella da cui l'ha ricevuta. Queste operazioni sono definite operazioni di filtraggio e inoltro. Nell'attraversare il bridge il pacchetto informativo subisce dunque un ritardo aggiuntivo rispetto a quello consueto di propagazione dovuto ai tempi di elaborazione che il bridge opera sul pacchetto per decidere su quale segmento, quindi su quale porta, inoltrarlo.

Page 38: Network essentials

37 © 2013 - Cesare Faini per

FIREWALL

Un firewall è un componente passivo di difesa perimetrale di una rete informatica, che può anche svolgere funzioni di collegamento tra due o più tronconi di rete, garantendo, attraverso una serie ben definita di regole, una protezione in termini di sicurezza informatica della rete stessa. Usualmente la rete viene divisa in due sottoreti: una, detta esterna, comprende l'intera Internet mentre l'altra interna, detta LAN (Local Area Network), comprende una sezione più o meno grande di un insieme di computer locali. In alcuni casi è possibile che si crei l'esigenza di creare una terza sottorete detta DMZ (o zona demilitarizzata) adatta a contenere quei sistemi che devono essere isolati dalla rete interna, ma che devono comunque essere protetti dal firewall ed essere raggiungibili dall'esterno (server pubblici). In realtà il firewall può essere usato per controllare tante reti quante sono le sue interfacce disponibili. Un firewall può essere realizzato con un semplice computer (con almeno due schede di rete e software apposito), può essere una funzionalità logica (software) inclusa in un router oppure può essere implementato su un apparato hardware dedicato. Esistono inoltre i cosiddetti "firewall personali", che sono programmi installati sui normali calcolatori client, che filtrano solamente i pacchetti che entrano ed escono da quel calcolatore, utilizzando in tal caso sola una scheda di rete. La funzionalità principale di creare un filtro sulle connessioni entranti ed uscenti, innalzando il livello di sicurezza della rete. Il firewall infatti agisce sui pacchetti in transito da e per la zona interna potendo eseguire su di essi operazioni di: • controllo • modifica • monitoraggio Tramite firewall è possibile creare anche tunnel cifrati per il collagamento di utenti e reti esterne. I firewall permettono anche una gestione mirata delle politiche di Network Address Translation e Port Address Translation Tipologie di firewall, in ordine crescente di complessità: • packet filter: è il più semplice e si limita a valutare gli header di ciascun pacchetto, decidendo quali far passare. • stateful inspection: tiene traccia di alcune relazioni tra i pacchetti che lo attraversano, ad esempio ricostruisce lo stato delle

connessioni TCP. • deep inspection: effettuano controlli fino al livello 7 della pila ISO/OSI, ovvero valutano anche il contenuto applicativo dei pacchetti • application layer firewall: sono apparati che intercettano le connessioni a livello applicativo.

Page 39: Network essentials

38 © 2013 - Cesare Faini per

ACCESS POINT

L’ Access Point (AP) permette all'utente di collegarsi ad una rete in modalità wireless (senza fili). È possibile collegare più access point alla stessa rete cablata e/o tra di loro per creare una rete più grande che permetta il collegamento multicanale tra terminali e rete wireless (WLAN). Collegato ad una rete cablata fa da interfaccia tra la parte wireless di accesso radio e la parte cablata di trasporto implementando un cambiamento di protocollo per il trasferimento dell'informazione tra le due sezioni di rete; se invece trasmette informazione tramite collegamento wireless agli altri access point (Wireless Distribution System) funziona come un semplice bridge. L'AP comunica in broadcast alle stazioni riceventi nel proprio raggio di copertura l'SSID della rete o delle reti locali wireless che sta servendo. Le celle di copertura degli AP sono spesso parzialmente sovrapposte per evitare buchi di copertura del segnale mentre la parte cablata è generalmente una rete Ethernet. Esistono diversi standard wireless per la trasmissione: • 802.11a con trasmissione a 54 Mb/s a 5 GHz • 802.11b con trasmissione a 11 Mb/s a 2,4 GHz • 802.11g con trasmissione a 54 Mb/s a 2,4 GHz • 802.11n con trasmissione a 300 Mb/s a 2,4 GHz e 5 GHz

Page 40: Network essentials

39

Il routing è l'instradamento effettuato a livello di rete

Le tabelle di instradamento possono essere popolate con una combinazione di diversi metodi:

• routing per reti direttamente connesse: quando una interfaccia di rete di un host IP viene configurata con un indirizzo IP ed una maschera di sottorete, l'host conosce automaticamente la rotta per raggiungere tutti gli host di quella sottorete. Nel caso molto semplice di una rete costituita da diverse sottoreti connesse ad un solo router, questo automatismo è sufficiente a popolare la tabella di routing di quel singolo router con tutti gli elementi necessari.

• routing statico: le rotte possono essere configurate manualmente sui vari router. Questo metodo è poco scalabile, difficile da gestire per reti più che banali, e non consente alla rete di utilizzare percorsi multipli quando questi sono disponibili per raggiungere una determinata destinazione.

• routing dinamico: le tabelle di instradamento vengono popolate da appositi protocolli di routing, eseguiti sui router, che permettono ai router di scambiarsi tra loro informazioni circa la topologia attuale della rete, e quindi di costruire e aggiornare (update) automaticamente le tabelle di instradamento. Questi protocolli permettono alla rete di adattarsi automaticamente ad eventuali modifiche (aggiunta o caduta di nodi e di collegamenti), ed in particolare di reinstradare il traffico in caso di caduta di un collegamento su percorsi alternativi che permettono di raggiungere la destinazione finale (IP destination).

© 2013 - Cesare Faini per

ROUTING

Page 41: Network essentials

Il network address translation (NAT, traduzione degli indirizzi di rete, conosciuto anche come network masquerading, native address translation) è una tecnica che consiste nel modificare gli indirizzi IP dei pacchetti in transito su un sistema che agisce da router all'interno di una comunicazione tra due o più host.

Sono molto note anche alcune tipologie specifiche di NAT, come l'IP masquerading e il port forwarding.

Il NAT è spesso implementato dai router e dai firewall.

Si può distinguere tra source NAT (SNAT) e destination NAT (DNAT), a seconda che venga modificato l'indirizzo sorgente o l'indirizzo destinazione del pacchetto che inizia una nuova connessione.

I pacchetti che viaggiano in senso opposto verranno modificati in modo corrispondente, in modo da dare ad almeno uno dei due computer che stanno comunicando l'illusione di parlare con un indirizzo IP diverso da quello effettivamente utilizzato dalla controparte.

40 © 2013 - Cesare Faini per

NETWORK ADDRESS TRANSLATION (NAT)

Page 42: Network essentials

Il Port Address Translation (PAT) è una particolare tecnica di Network address translation che permette di effettuare una 'mappatura' (stabilire una corrispondenza) tra più indirizzi IP di una rete privata (ad es. una LAN o di una rete protetta da un firewall) e un singolo indirizzo IP di una rete pubblica (ad es. Internet).

Il PAT permette quindi di utilizzare un singolo indirizzo IP pubblico per accedere a numerosi servizi da una rete locale che utilizza indirizzi IP privati. Un indirizzo IP pubblico può gestire oltre 64000 connessioni contemporanee sul lato interno della rete.

Il dispositivo che funziona da PAT cancella periodicamente le varie assegnazioni dalla propria tabella man mano che esse non sono più utilizzate. Il numero della porta è un intero senza segno a 16 bit (0-65535), quindi è molto ridotta la probabilità che un computer dall'interno non riesca ad effettuare l'operazione desiderata.

Le quintuple che definiscono la connessione, ovvero il socket, sono costituite da:

• Protocollo

• IP di destinazione

• Porta di destinazione

• IP sorgente

• Porta sorgente (non è fissata a priori)

Di fatto si realizza la "traduzione" di una porta in un indirizzo.

Ovviamente tale «mapping» è effimero e dinamico.

41 © 2013 - Cesare Faini per

PORT ADDRESS TRANSLATION (PAT)

Page 43: Network essentials

42 © 2013 - Cesare Faini per

LAYER-3 SWITCH

Uno switch Layer 3 lavora come un router perché ha la stessa tabella di routing IP, tuttavia, nel nome viene inclusa la parola switch perché: • assomiglia a uno switch. Ha un minimo di 24 porte Ethernet e nessuna interfacce WAN. • i comporta come uno switch quando viene collegato a dispositivi che sono sulla stessa rete. • può essere considerato uno switch con integrata la medesima intelligenza di routing IP di un router. • funziona molto rapidamente per commutare o dirigere i pacchetti che gli sono trasmessi.

In pratica, uno switch Layer 3 equivale a un router ad alta velocità privo della connettività Wan. La funzionalità di routing dello switch Layer 3 ha lo scopo di instradare il traffico fra sottoreti differenti o VLAN a partire da una LAN di medie dimensioni sino ad arrivare a una LAN di grandi dimensioni. Questo sta a significare che lo switch Layer 3 è l'ideale nelle grandi reti Ethernet che devono essere suddivise in un certo numero di sottoreti più piccole. Nella maggioranza dei casi, questo si ottiene usando delle VLAN. Quando si intende utilizzare uno switching Layer 3, si può puntare su due tipi di soluzioni: hardware o software. Nel primo caso, per funzionare il dispositivo usa unicamente un Application Specific Integrated Circuit (ASIC, un chip dedicato), nel secondo caso il dispositivo si avvale del processore del computer e di un software. Generalmente, gli switch Layer 3 e i router high-end instradano i pacchetti usando soluzioni hardware (ASIC) mentre i router generici seguono la via software per effettuare le funzioni di routing.

Page 44: Network essentials

Una VLAN è una Lan virtuale, ma è anche una sottorete IP.

La differenza fra suddividere semplicemente una rete in sottoreti e usare delle VLAN è che in quest'ultimo caso si ha una notevole flessibilità.

Un esempio per tutti: abbiamo una singola porta switch in una VLAN all'interno di un palazzo. A un centinaio di metri di distanza, abbiamo un'altra porta switch, in un palazzo differente.

Entrambe queste porte switch possono essere nella stessa VLAN e soltanto queste due porte switch possono comunicare, nonostante siano separate da diversi oggetti fisici e siano collegate da un cavo di fibra ottica lungo 100 m. Senza una VLAN, una struttura di questo tipo non sarebbe possibile.

In una VLAN tradizionale, gli switch contrassegnano il traffico e solo i dispositivi sulla stessa VLAN possono comunicare tra loro. Se devono comunicare dispositivi su VLAN differenti, lo possono fare solo attraverso una porta «tagged» o «trunk» su un

router.

Questa porta e la velocità di elaborazione del

processore del router creano però un collo di

bottiglia per le comunicazioni.

Con uno switch Layer 3, il routing e il trunking

sono invece effettuati a velocità molto elevata.

Oltre a queste funzionalità, una VLAN ha diverse

altre caratteristiche come:

• Prestazioni e controllo di broadcast

• Separazione di dipartimenti o reti di progetto

• Sicurezza

43 © 2013 - Cesare Faini per

VIRTUAL LAN (VLAN)

Page 45: Network essentials

44 © 2013 - Cesare Faini per

ACCESSO ALLA RETE IP

Per poter accedere ad una rete IP è necessario avere 2 parametri fondamentali

Per poter uscire dalla propria rete è necessario avere anche almeno un

Un altro elemento importante ma non fondamentale per una navigazione comoda è il

Page 46: Network essentials

Sulla rete sono presenti innumerevoli servizi: alcuni sono servizi standard, altri sono in fase di definizione e altri ancora sono creati ad hoc basandosi su servizi esistenti (Web Services, Service Oriented Architecture…), tramite protocolli e linguaggi come XML (eXtensible Markup Language) o HL7 (Health Level Seven, molto usato per l’interoperabilità delle applicazioni sanitarie)

Sostanzialmente un servizio è un sistema progettato per supportare l'interoperabilità tra diversi elaboratori in rete.

Di questi, 2 sono servizi di base del sistema TCP/P

• DynamicHost Configuration Protocol (DHCP)

• Domain Name System (DNS)

45 © 2013 - Cesare Faini per

SERVIZI

Page 47: Network essentials

46 © 2013 - Cesare Faini per

DYNAMIC HOST CONFIGURATION PROTOCOL (DHCP)

Il Dynamic Host Configuration Protocol (DHCP, protocollo di configurazione IP dinamica) è un protocollo di rete di livello applicativo che permette ai dispositivi o terminali di una certa rete locale di ricevere dinamicamente ad ogni richiesta di accesso ad una rete IP (quale ad esempio Internet) la configurazione IP necessaria per stabilire una connessione ed operare su una rete più ampia basata su Internet Protocol ed interoperare con tutte le altre sottoreti scambiandosi dati, purché anch'esse integrate allo stesso modo con il protocollo IP. DHCP supporta questo compito automaticamente ed in maniera dinamica solo quando richiesto dall'host. Viene utilizzato soprattutto in reti locali, in particolare su Ethernet. In altri contesti funzioni simili sono svolte dal protocollo PPP. Una volta ricevuta la configurazione di rete la stazione o computer della rete locale diventa a tutti gli effetti un host (ospite) della rete Internet e può intraprendere sessioni di navigazione Web e tutti gli altri servizi offerti dalla Rete stessa. Il protocollo DHCP viene usato anche per assegnare al computer diversi parametri necessari per il suo corretto funzionamento sulla rete a cui è collegato. Tra i più comuni, oltre all'assegnazione dinamica dell'indirizzo IP, si possono citare: • Maschera di sottorete • Default gateway • Indirizzi dei server DNS • Nome di dominio DNS di default • Indirizzi dei server WINS • Indirizzi dei server NTP • Indirizzo di un server TFTP e nome di un file da caricare per calcolatori che caricano dalla rete l'immagine del sistema operativo. DHCP utilizza il protocollo UDP, le porte registrate sono la 67 per il server e la 68 per il client.

Page 48: Network essentials

47 © 2013 - Cesare Faini per

DOMAIN NAME SYSTEM (DNS)

Il Domain Name System, è un sistema utilizzato per la risoluzione di nomi dei nodi della rete (host) in indirizzi IP e viceversa. Il servizio è realizzato tramite un database distribuito, costituito dai server DNS. I nomi DNS, o "nomi di dominio", sono una delle caratteristiche più visibili di Internet. L'operazione di conversione da nome a indirizzo IP è detta risoluzione DNS; la conversione da indirizzo IP a nome è detta risoluzione inversa. Ad un nome DNS possono corrispondere diversi tipi di informazioni e per questo esistono diversi tipi di record DNS. I principali tipi sono: • A - Indica la corrispondenza tra un nome ed uno (o più) indirizzi IP (per la precisione indirizzi IPv4, ovvero la

versione attualmente in uso). • MX - (Mail eXchange) indica a quali server debba essere inviata la posta elettronica per un certo dominio. • CNAME - Sono usati per creare un alias, ovvero per fare in modo che lo stesso host sia noto con più nomi. Uno

degli utilizzi di questo tipo di record consiste nell'attribuire ad un host che offre più servizi un nome per ciascun servizio. In questo modo, i servizi possono poi essere spostati su altri host senza dover riconfigurare i client, ma modificando solo il DNS.

• PTR - Il DNS viene utilizzato anche per realizzare la risoluzione inversa, ovvero per far corrispondere ad un indirizzo IP il corrispondente nome di dominio. Per questo si usano i record di tipo PTR.

• AAAA - È come il Record A ma lavora con l'IPv6 e restituisce un indirizzo IPv6. • SRV - Identificano il server per un determinato servizio all'interno di un dominio. Possono essere considerati una generalizzazione dei record MX. • TXT - Associano campi di testo arbitrari ad un dominio. Questi campi possono contenere una descrizione informativa oppure essere utilizzati per realizzare servizi. Vi sono anche tipi di record "di servizio", necessari al funzionamento del database distribuito.

Domain Information Groper - http://dig.menandmice.com

Page 49: Network essentials

48 © 2013 - Cesare Faini per

PIÙ NOTI

HyperText Transfer Protocol (HTTP)

File Transfer Protocol

(FTP)

Telnet Secure Shell (SSH)

Simple Mail

Transfer Protocol (SMTP)

Post Office

Protocol (POP)

Internet Message

Access Protocol (IMAP)

Page 50: Network essentials

Server Message

Block/Common Internet File

System (SMB/CIFS)

Network File System (NFS)

Simple Network

Management Protocol (SNMP)

Windows Internet Name Service (WINS)

Network Basic Input/Output

System (NetBIOS)

49 © 2013 - Cesare Faini per

MOLTO USATI

Page 51: Network essentials

Session Initiation

Protocol (SIP) H.323

Real-time Transport Protocol

(RTP)

Real-time Transport Streaming Protocol (RTSP)

50 © 2013 - Cesare Faini per

MULTIMEDIALI

Page 52: Network essentials

Routing Information

Protocol (RIP) (Distance

Vector)

Open Shortest Path First

(OSPF) (Link State)

Border Gateway Protocol

(BGP)

Exterior Gateway Protocol

(EGP) (obsoleto)

51 © 2013 - Cesare Faini per

GESTORI DEL TRAFFICO

Page 53: Network essentials

52 © 2013 - Cesare Faini per

Internet Control

Message Protocol (ICMP)

Address Resolution

Protocol and Reverse (ARP/RARP)

Bootstrap Protocol (BOOTP)

Lightweight Directory

Access Protocol (TFTP)

MENO NOTI

Page 54: Network essentials

53 © 2013 - Cesare Faini per

Ping

•Packet internet grouper

•Verifica l’esistenza di un host

Tracert

•Traccia la rotta per raggiungere un host

Netstat

•Visualizza informazioni sulle connessioni attive

Arp

•Visualizz e modifica le tabelle di conversione tra IP e MAC

Telnet

•Aapre una sessione su un host remoto

Nslookup

•Interroga il DNS

Route

•Visualizza e modifica le tabelle di routing

COMANDI FONDAMENTALI

Page 55: Network essentials

54 © 2013 - Cesare Faini per

SICUREZZA E CONTROLLO DEGLI ACCESSI

IP Security (IPSEC)

Layer Two Tunneling Protocol

(L2TP)

Point to Point Tunnelling Protocol

(PPTP)

Secure Socket Layer (SSL)

Network Access Control (NAC)

Certificati Digitali

Page 57: Network essentials

Il termine streaming identifica un flusso di dati audio/video trasmessi da una sorgente a una o più destinazioni tramite una rete telematica. Questi dati vengono riprodotti man mano che arrivano a destinazione, analogamente alla tradizionale trasmissione radio o video in broadcast.

I dati sono trasmessi utilizzando opportune compressioni per alleggerire più possibile il carico sulla rete. La compressione dei contenuti introduce nel flusso un ritardo di circa dieci secondi e di solito questo ritardo non costituisce un problema.

Generalmente la trasmissione in streaming avviene utilizzando il protocollo RTSP a livello di applicazione mentre a livello di trasporto si utilizza prevalentemente il protocollo UDP. La distribuzione dei dati di streaming può essere di tipo Multicast, Unicast, HTTP, Peer to Peer

56 © 2013 - Cesare Faini per

STREAMING

Page 58: Network essentials

57 © 2013 - Cesare Faini per

VIDEOCONFERENZA

La videoconferenza è la combinazione di tecnologie che permettono l'interazione sincrona di audio, video e dati fra due o più soggetti.

Un qualunque sistema in grado di convogliare audio, video, dati rispondente agli standard della videoconferenza può essere considerato un terminale di videoconferenza. In questa definizione rientrano un'ampia gamma di prodotti con caratteristiche tecniche, funzionali e costi notevolmente diversi.

Lo standard qualità del servizio minimale da garantire in una videoconferenza è l'audio perché costituisce l’elemento di base che determina la buona riuscita di una videoconferenza.

Oltre alla possibilità di ascoltare e vedere il proprio interlocutore, la videoconferenza permette a volte di disporre di

• un pannello di controllo dove sono indicati i soggetti partecipanti.

• uno spazio di lavoro virtuale comune, in cui tutti i partecipanti possono condividere testi, immagini, tabelle ed altre informazioni.

Standard usati

Sono necessari apparati che supportino la cattura, codifica, trasmissione e decodifica di audio e

video e dalla loro capacità di colloquiare secondo protocolli standard comuni. I protocolli

maggiormente diffusi sono H.320 e H.323. Vi sono altre suite di protocolli che interessano la

videoconferenza ma il livello di sviluppo, consolidamento e diffusione non è ancora capillare,

così come esistono sviluppi proprietari di tecnologie di videocomunicazione

(es. Cisco Telepresence ed Health Presence)

Tra i principali protocolli, in funzione del tipo di rete utilizzata, si annoverano:

• Su reti pubbliche commutate il protocollo H.324. (videotelefoni )

• Su reti ISDN il protocollo H.320. per le modalità di comunicazione audio, video e dati sia punto a punto che multi-punto

• Su reti ATM il protocollo H.321.

• Su reti internet IP, tramite TCP/IP, il protocollo H.323 o in alternativa il protocollo SIP che definiscono le modalità di comunicazione audio, video e dati sia punto a punto che multi-punto, a volte compromessi dalla perdita di pacchetti o dal ritardo in ritrasmissione (latenza).

• Su reti UMTS il protocollo H.324M che viene definito videochiamata

Oggi viene usata molto anche la multiconferenza Audio/Video/Web che mette in comunicazione tra loro dispositivi diversi (pc con o senza webcam, telefono fisso o mobile, videoconferenza) rendendoli interattivi

Page 59: Network essentials

58 © 2013 - Cesare Faini per

HIGH EFFICIENCY VIDEO CODING

• High Efficiency Video Coding (HEVC o H.265) è uno standard di compressione video approvato il 25 gennaio 2013, erede dell'H.264/MPEG-4 AVC (Advanced Video Coding, codifica video avanzata), sviluppato dal Moving Picture Experts Group (MPEG) e dal Video Coding Expert Group (VCEG) dell'ITU-T sotto il nome di ISO/IEC 23008-2 MPEG-H Part 2 e ITU-T H.HEVC.

• MPEG e VCEG hanno stabilito un gruppo JCT-VC (Joint Collaborative Team on Video Coding) per sviluppare lo standard HEVC.

• HEVC migliora la qualità video, raddoppia il rapporto della compressione dei dati rispetto ad H.264 e supporta l'ultra definizione a 8k e risoluzioni maggiori fino a 8192×4320.

Page 60: Network essentials

59 © 2013 - Cesare Faini per

Dati personali

Dati Sensibili

Identificazione dell’utente

Protezione dei sistemi

Convergenza

IN OSPEDALE

Page 61: Network essentials

60

Network Protocol Analizer: Wireshark

Un network monitor analizer, altrimenti noto come “packet sniffer”, cattura e decodifica i pacchetti di informazioni all’inerno di una rete. Gli analizzatori di rete sono utili agli amministratori di rete per diagnosticare e risolvere i problemi, ma sono utilizzati anche da utenti malintenzionati per ottenere informazioni non autorizzate.

Wireshark può essere utilizzato per catturare e analizzare i pacchetti di rete e per ottenere una vasta gamma di informazioni:

• Pproblemi di rete

• Individuazione di colli di bottiglia

• Rilevamento delle intrusioni di rete

• Log del traffico di rete per l'analisi forense

• Rilevamento di attacchi DoS (denial-of-service)

Può anche essere utilizzato da malintenzionati per scopi più malvagi quali:

• Catturare nomi utente e password

• OS fingerprinting

• Acquisizione di informazioni sensibili o proprietarie

• Mappatura della rete

Network Monitoring Tool: Paessler PRTG

Esegue il monitoraggio delle apparecchiature, dei server, dei pc e di tutto ciò che è collegato alla rete effettuando anche una profonda mappatura della rete attraverso uno strumento di network discovery

Network Discovery: Fing

Prodotto completo e potente per mappatura della rete. Purtroppo nella versione Windows

non esiste interfaccia grafica. Si utilizza tramite comand prompt in Windows, Linux e MacOS X.

Altre versioni (Android e iOS) hanno invece l’inerfaccia grafica

NETWORK TOOL

60 © 2013 - Cesare Faini per

Page 63: Network essentials

Cesare Faini

[email protected]

62 © 2013 - Cesare Faini per

Grazie per l’attenzione