Il 0% ha trovato utile questo documento (0 voti)
68 visualizzazioni39 pagine

RDC - Reti Di Calcolatori

Caricato da

filippo.zam
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
68 visualizzazioni39 pagine

RDC - Reti Di Calcolatori

Caricato da

filippo.zam
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

ha formattato ...

Formattato ...
Nota: questo documento contiene all’inizio le sintesi ufficiali del libro di testo, e dopo delle sintesi personali ha formattato ...
delle slide del corso. Il documento non vuole sostituirsi al materiale didattico ufficiale in quanto Formattato ...
volutamente esclude, ai fini della sintesi e non, alcune informazioni invece contenute nelle slide; è
ha formattato ...
consigliato come materiale di ripasso e non di studio.
Formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Indice ha formattato ...
Indice 1 ha formattato ...
Mappa concettuale 5 livelli delle reti 4 ha formattato ...
Sommario libro di testo 5 ha formattato ...
Capitolo 1 - Introduzione 5 ha formattato ...

Capitolo 2 - Il livello fisico 5 ha formattato ...


ha formattato ...
Capitolo 3 - Il livello data link 6
ha formattato ...
Capitolo 4 - Il livello MAC 7
ha formattato ...
Capitolo 5 - Lo strato network 9
ha formattato ...
Capitolo 6 - Lo strato trasporto 9
ha formattato ...
Capitolo 7 - Lo strato applicazione 10
ha formattato ...
Capitolo 8 - Sicurezza delle reti 11 ha formattato ...
Introduzione 12 ha formattato ...
Modelli di riferimento 12 ha formattato ...
Modello OSI 12 ha formattato ...
Internet Protocol Suite 12 ha formattato ...
TCP vs OSI 13 ha formattato ...

Esempi di reti 13 ha formattato ...


ha formattato ...
Esempio di architettura a livello: WAP 13
ha formattato ...
Livello fisico 14
ha formattato ...
Materiali 14
ha formattato ...
Modulazioni 14
ha formattato ...
Definizioni 14
ha formattato ...
Commutazioni 14
Formattato ...
Commutazione di pacchetto 14 ha formattato ...
Livello data link 15 ha formattato ...
Servizi 15 ha formattato ...
Funzionamento 16 Formattato ...
Tecniche di framing 16 ha formattato ...
Conteggio di caratteri 16 ha formattato ...

Delimitatori e byte stuffing 16 ha formattato ...


ha formattato ...
Delimitatori e bit stuffing 16
ha formattato ...
Gestione degli errori 16
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Protocolli 17 ha formattato ...
Protocollo a finestra scorrevole 17 ha formattato ...
Protocollo go-back-n 17 ha formattato ...
Protocollo selective repeat 17 ha formattato ...
Protocollo HDLC 18 ha formattato ...
Protocollo PPP 18 ha formattato ...

Il sottolivello MAC 18 ha formattato ...


ha formattato ...
Protocolli ad accesso casuale 18
ha formattato ...
Protocollo Aloha 18
ha formattato ...
Protocollo CSMA 19
ha formattato ...
Protocolli ad accesso controllato 19
ha formattato ...
Protocollo senza collisioni 19
ha formattato ...
Protocollo a contesa limitata 19 ha formattato ...
Rete ad anello 19 ha formattato ...
Standard IEEE 19 ha formattato ...
Ethernet 19 ha formattato ...
802.3 20 ha formattato ...
802.5 - Token Ring 20 ha formattato ...

Confronto 802.3 - 802.5 20 Formattato ...

802.2 - LLC 20 ha formattato ...


ha formattato ...
Reti wireless 20
ha formattato ...
Il livello rete 21
Formattato ...
Problemi dell’architettura dello strato network 21
ha formattato ...
Servizi forniti allo stato trasporto 21
ha formattato ...
Subnet e servizi 21
ha formattato ...
Algoritmi di routing 22 ha formattato ...
Shortest path routing 22 ha formattato ...
Flooding 23 ha formattato ...
Flow-based routing 23 ha formattato ...
Distance vector routing 23 ha formattato ...
Link state routing 23 ha formattato ...

Routing gerarchico 23 ha formattato ...

Algoritmi per il controllo della congestione 24 ha formattato ...


ha formattato ...
Open loop 24
ha formattato ...
Qualità del servizio 25
ha formattato ...
Collegamento tra reti (internetwork) 25
ha formattato ...
Tunneling 25
ha formattato ...
Frammentazione 26
ha formattato ...
Gatetway 26 ha formattato ...
Routing 26 ha formattato ...
Lo strato network in Internet 26 ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
IP 26 ha formattato ...
Il livello transport 27 ha formattato ...
Gli elementi dei protocolli di trasporto 27 ha formattato ...
Attivazione della rete: 3-way handshaking 27 ha formattato ...
Rilascio 28 Formattato ...
Multiplex 28 ha formattato ...

I protocolli di trasporto Internet TCP e UDP 28 ha formattato ...


ha formattato ...
TCP 28
Formattato ...
UDP 29
ha formattato ...
Il livello applicazione 29
ha formattato ...
DNS: il sistema dei nomi di dominio 29
ha formattato ...
Domini 29
ha formattato ...
Name server 29 ha formattato ...
Servizi internet 30 ha formattato ...
La posta elettronica 30 ha formattato ...
Servizi multimediali 31 ha formattato ...
World Wide Web 31 ha formattato ...
Il protocollo HTTP 31 ha formattato ...

Documenti web 32 ha formattato ...

Documenti web statici 32 ha formattato ...


ha formattato ...
Documenti web dinamici 32
ha formattato ...
Documenti web attivi 32
ha formattato ...
Differenze tra documenti web 33
ha formattato ...
Implementazione di documenti web 33
ha formattato ...
Name services 33
ha formattato ...
Directory service e discovery service 34 ha formattato ...
Esempio: GNS - global name service 34 ha formattato ...
Esempio: X.500 34 ha formattato ...
Gestione delle reti 34 Formattato ...
Monitoring 34 Formattato ...
Paradigma fetch-store 34 ha formattato ...

Sicurezza 35 ha formattato ...

Crittografia 35 ha formattato ...


ha formattato ...
Crittografia a chiave segreta 35
ha formattato ...
Crittografia a chiave pubblica 35
ha formattato ...
Autenticazione e firma digitale 36
ha formattato ...
Sicurezza delle comunicazioni 36
ha formattato ...
IPsec 36
ha formattato ...
Sicurezza wireless 36 ha formattato ...
Sicurezza email 36 ha formattato ...
Sicurezza web 36 ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Privacy e anonimato 37 ha formattato ...
Applicazioni su reti 37 ha formattato ...
Applicazioni peer-to-peer 37 ha formattato ...
Distribuzione dei contenuti (CDN) 37 ha formattato ...
Multimedia streaming 38 Formattato ...
Accesso cellulare a internet 38 ha formattato ...

2G 38 ha formattato ...
ha formattato ...
3G 38
Formattato ...
4G - LTE 38
ha formattato ...
5G 38
ha formattato ...
Comunicazione 39
ha formattato ...
IP multicast 39
ha formattato ...
Primitive 39 ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Mappa concettuale 5 livelli delle reti ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Formattato ...
ha formattato ...
ha formattato ...
ha formattato ...
Formattato ...
Formattato ...
ha formattato ...
Formattato ...
ha formattato ...
Formattato ...
Sommario libro di testo Formattato: SpazioPrima: 16 pt, Dopo: 4 pt

Capitolo 1 - Introduzione
Le reti di computer hanno molti usi, per le aziende come per i privati. Per le aziende, le reti di personal
computer connessi a server condivisi sono spesso lo strumento per accedere alle informazioni aziendali.
Generalmente seguono il modello client-server, dove le postazioni client sulla scrivania degli utenti ha formattato: Tipo di carattere: Non Grassetto
accedono a potenti server collocati nella sala macchine. Per i privati, le reti danno accesso ad una vasta
quantità d’informazioni e intrattenimento. Di solito accedono ad Internet chiamando un ISP servendosi di
un modem, anche se un numero crescente di persone ha una connessione fissa presso la propria abitazione.
Un’area in veloce sviluppo è costituita dalle reti senza filo o wireless, con nuove applicazioni com l’accesso
mobile alla e-mail e l’e-commerce.
A grandi linee le reti si possono dividere in LAN, MAN, WAN e internetwork, ciascuna con le proprie
caratteristiche, tecnologie, velocità e nicchie. Le reti LAN coprono un edificio e lavorano ad alta velocità. Le ha formattato: Tipo di carattere: Non Grassetto
reti MAN coprono una città, come il sistema televisivo via cavo usato da molti per accedere a Internet. Le ha formattato: Tipo di carattere: Non Grassetto
WAN coprono una nazione o continente. Le reti LAN e MAN non sono commutate (cioè non hano router), ha formattato: Tipo di carattere: Non Grassetto
mentre le WAN sono commutate. Le reti wireless stanno diventando molto popolari, specialmente le LAN ha formattato: Tipo di carattere: Non Grassetto
senza fili. Le reti si possono collegare per formare internetwork. ha formattato: Tipo di carattere: Non Grassetto
Il software di rete è composto da protocolli, che sono le regole seguite dai processi per comunicare. I ha formattato: Tipo di carattere: Non Grassetto
protocolli sono senza connessione oppure orientati alla connessione. La maggior parte delle reti supporta le ha formattato: Tipo di carattere: Non Grassetto
gerarchie di protocolli, dove ogni strato offre un servizio allo strato superiore e lo isola dai dettagli dei ha formattato: Tipo di carattere: Non Grassetto
protocolli usati negli strati inferiori. Le pile di protocolli sono solitamente basate sul modello OSI oppure su ha formattato: Tipo di carattere: Non Grassetto
quello TCP/IP. Entrambe hanno strati network, trasporto e applicazione, ma differiscono negli altri starti. ha formattato: Tipo di carattere: Non Grassetto
Le reti offrono ai loro utenti dei servizi, che possono essere orientati alla connessione oppure senza ha formattato: Tipo di carattere: Non Grassetto
connessione. In alcune reti è offerto un servizio senza connessione in uno strato e un servizio orientato alla ha formattato: Tipo di carattere: Non Grassetto
connessione in quello sovrastante. ha formattato: Tipo di carattere: Non Grassetto
Internet, ATM, Ethernet e IEE 802.11 sono reti molto note. Internet si è evoluta da ARPA-NET, alla quale ha formattato: Tipo di carattere: Non Grassetto
furono aggiunte altre reti per formare una internetwork. L’attuale Internet non è una rete unica ma una ha formattato: Tipo di carattere: Non Grassetto
raccolta di migliaia di reti, caratterizzate dall’utilizzo della pila di protocolli TCP/IP. ATM è largamente ha formattato: Tipo di carattere: Non Grassetto
impiegato all’interno della rete telefonica per il trasporto del traffico dati a lunga distanza. Ethernet è la ha formattato: Tipo di carattere: Non Grassetto
LAN più usata, e si ritrova nella maggior parte delle aziende di grandi dimensioni ed università. Infine, LAN
wireless con velocità sorprendentemente alte (fino 54 Mbps) (libro evidentemente obsoleto) sono agli inizi di ha formattato: Tipo di carattere: Non Corsivo
un’adozione su vasta scala.
Per garantire la comunicazione tra più computer è necessaria molta standardizzazione, nell’hardware e nel
software. Organizzazioni come ITU-T, ISO, IEEE e IAB gestiscono porzioni differenti del processo di
standardizzazione.

Capitolo 2 - Il livello fisico Formattato: SpazioPrima: 12 pt, Dopo: 3 pt, Bordo:


Superiore: (Nessun bordo), Inferiore: (Nessun bordo), A
Lo strato fisico è la base di tutte le reti. La natura impone due limiti fondamentali su tutti i canali, che
sinistra: (Nessun bordo), A destra: (Nessun bordo), Tra :
determinano la loro ampiezza di banda: il limite di Nyquist, che si occupa dei canali senza rumore, e il limite (Nessun bordo)
di Shannon, che si occupa dei canali rumorosi.
I mezzi di trasmissione possono essere guidati e non guidati. I principali mezzi di trasmissione guidati sono
il doppino telefonico, il cavo coassiale e la fibra ottica. I mezzi non guidati includono le onde radio, le ha formattato: Tipo di carattere: Non Grassetto
microonde, i raggi infrarossi e i laser trasmessi attraverso l’aria. Un sistema di trasmissione in sviluppo è la ha formattato: Tipo di carattere: Non Grassetto
comunicazione via satellite, in particolare i sistemi LEO. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Un elemento chiave nella maggior parte delle reti geografiche è il sistema telefonico. I suoi componenti
principali sono i collegamenti locali, le linee e i commutatori. I collegamenti locali sono analogici, basati su
doppini telefonici, per questo la trasmissione di dati digitali richiede l’uso dei modem. ADSL riesce ad
offrire velocità che arrivano a 50 Mbps dividendo il collegamento locale in molti canali virtuali, e modulando
ogni canale separatamente. I collegamenti locali wireless sono un altro nuovo sviluppo che vale la pena di
tenere d’occhio, specialmente i sistemi LMDS.
Le linee sono digitali e possono essere unite in multiplexing in diversi modi, tra cui FDM, TDM e WDM. ha formattato: Tipo di carattere: Non Grassetto
Sono importanti sia la comutazione di circuito sia quella di pacchetto. Il sistema telefonico fisso non è
adatto alle applicazioni mobili; oggi si usano ovunque i telefoni cellulari per trasmettere la voce, e presto
saranno adoperati anche per scambiare dati. La prima generazione è stata analogica, dominata da AMPS; la
seconda generazione è stata digitale, con D-AMPS, GSM e CDMA; la terza generazione sarà digitale e si
baserà su CDMA a banda larga.
Un sistema alternativo di accesso alle reti è il sistema televisivo via cavo, che si è evoluto gradualmente da
antenna collettiva a ibrido fibra/coassiale. Potenzialmente offre un’ampiezza di banda molto grande, ma in
realtà l’ampiezza di banda disponibile dipende molto dal numero di utenti attivi e dalle loro operazioni.

Capitolo 3 - Il livello data link Formattato: SpazioPrima: 12 pt, Dopo: 3 pt, Bordo:
Superiore: (Nessun bordo), Inferiore: (Nessun bordo), A
Lo strato data link ha il compito di convertire il flusso di bit in ingresso dallo strato fisico in un flusso di
sinistra: (Nessun bordo), A destra: (Nessun bordo), Tra :
frame da passare allo strato network. Si usano diversi metodi per il framing, fra cui il conteggio dei caratteri, (Nessun bordo)
il byte stuffing e il bit stuffing. I protocolli data link possono prendersi carico della correzione degli errori e ha formattato: Tipo di carattere: Non Grassetto
della ritrasmissione dei frame persi o danneggiati. Con il controllo del flusso i protocolli data link ha formattato: Tipo di carattere: Non Grassetto
prevengono situazioni in cui una sorgente veloce inonda una destinazione lenta. Il metodo sliding window è ha formattato: Tipo di carattere: Non Grassetto
largamente usato per integrare in modo conveniente il controllo degli errori e del flusso. ha formattato: Tipo di carattere: Non Grassetto
I protocolli sliding window sono caratterizzati dalla dimensione delle finestre sorgente e destinazione. ha formattato: Tipo di carattere: Non Grassetto
Quando sono entrambe uguali a 1, il protocollo è stop-and-wait. Quando la dimensione della finestra della ha formattato: Tipo di carattere: Non Grassetto
sorgente è maggiore di 1 (per esempio, per evitare che la sorgente si possa bloccare su un circuito che ha un ha formattato: Tipo di carattere: Non Grassetto
lungo ritardo di propagazione) la destinazione può essere programmata in due modi: o per scartare tutti i ha formattato: Tipo di carattere: Non Grassetto, Non
frame eccettuato il successivo in sequenza, o per mettere in un buffer i frame ricevuti fuori sequenza prima Corsivo
del loro uso.
Il protocollo 1 è pensato per un ambiente privo di errori in cui la destinazione può gestire tutto il flusso che
gli viene mandato, indipendentemente dalla velocità di trasmissione. Il protocollo 2 considera ancora un
ambiente privo di errori, ma aggiunge il controllo di flusso (buffer). Il protocollo 3 gestisce gli errori
introducendo i numeri di sequenza e usando un algoritmo stop-and-go. Il protocollo 4 permette la
comunicazione bidirezionale ed introduce il concetto di piggybacking. Il protocollo 5 usa un procollo sliding ha formattato: Tipo di carattere: Non Grassetto, Non
window con metodo go back n. Infine il protocollo 6 usa la ripetizione selettiva e l’acknowledgment Corsivo

negativo. ha formattato: Tipo di carattere: Non Grassetto


ha formattato: Tipo di carattere: Non Grassetto
Esistono diverse tecniche per creare modelli formali dei protocolli, usati per dimostrare la correttezza (o per
trovare eventuali errori di progetto). I modelli con macchine a stati finiti o reti di Petri sono frequentemente
impiegati a questo scopo.
Molte reti usano, per lo strato data link, un protocollo orientato ai bit come per esempio SDLC, HDLC, ha formattato: Tipo di carattere: Non Grassetto
ADCCP, LAPB. Tutti questi protocolli usano dei flag byte per delimitare i frame e il bit stuffing per evitare ha formattato: Tipo di carattere: Non Grassetto
che un flag byte venga erroneamente inserito nei dati. Un’altra loro caratteristica comune è l’uso del ha formattato: Tipo di carattere: Non Grassetto
controllo di flusso di tipo sliding window. Il protocollo data link principale per le linee punto-punto di ha formattato: Tipo di carattere: Non Grassetto
Internet è il PPP. ha formattato: Tipo di carattere: Non Grassetto
Capitolo 4 - Il livello MAC Formattato: SpazioPrima: 12 pt, Dopo: 3 pt, Bordo:
Superiore: (Nessun bordo), Inferiore: (Nessun bordo), A
Alcune reti hanno un solo canale impiegato per tutta la comunicazione. In queste reti il problema chive è
sinistra: (Nessun bordo), A destra: (Nessun bordo), Tra :
l’assegnazione del canale alle diverse stazioni che competono per poterlo utilizzare. Sono stati escogitati (Nessun bordo)
numerosi algoritmi di allocazione, e la tabella sottostante mostra un riepilogo dei metodi più importanti.

Metodo Descrizione Tipo Formattato: Controlla righe isolate, Bordo: Superiore:


(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
FDM Dedica una banda di frequenza a Divisione del canale (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
ogni stazione
Formattato: Controlla righe isolate, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
WDM Schema FDM dinamico per la Divisione del canale (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
fibra bordo)
Formattato ...
TDM Dedica un intervallo temporale a Divisione del canale
Formattato: Controlla righe isolate
ogni stazione
Formattato ...
ALOHA puro Trasmissione non sincronizzata Accesso casuale Formattato: Controlla righe isolate

che può iniziare in qualunque ha formattato: Tipo di carattere: Non Grassetto

istante Formattato ...


Formattato: Controlla righe isolate
ALOHA slotted Trasmissione casuale in intervalli Accesso casuale
ha formattato: Tipo di carattere: Non Grassetto
di tempo ben definiti
Formattato ...

CSMA 1-persistente Capacità standard di rilevamento Accesso casuale Formattato: Controlla righe isolate

della portante ad accesso multiplo ha formattato: Tipo di carattere: Non Grassetto


Formattato ...
CSMA non persistente Ritardo casuale quando il canale è Accesso casuale Formattato: Controlla righe isolate
occupato ha formattato: Tipo di carattere: Non Grassetto
Formattato ...
CSMA p-persistente CSMA, ma con una probabilità p Accesso casuale
Formattato: Controlla righe isolate
di persistenza
ha formattato: Tipo di carattere: Non Grassetto
CSMA/CD CSMA, con interruzione in caso Accesso casuale Formattato ...
di collisione Formattato: Controlla righe isolate
ha formattato: Tipo di carattere: Non Grassetto
Mappa di bit Pianificazione a turno mediante Accesso controllato
Formattato ...
una mappa di bit
Formattato: Controlla righe isolate
Conteggio binario Seleziona la stazione pronta Accesso controllato ha formattato: Tipo di carattere: Non Grassetto
associata al numero più alto Formattato ...
ha formattato: Tipo di carattere: Non Grassetto
Tree walk Contesa ridotta mediante Accesso controllato
Formattato ...
attivazione selettiva
Formattato: Controlla righe isolate

MACA, MACAW Protocolli LAN wireless ha formattato: Tipo di carattere: Non Grassetto
Formattato ...
Ethernet CSMA/CD con backoff Pre-802.3 Formattato: Controlla righe isolate
esponenziale binario Formattato ...
ha formattato: Tipo di carattere: Non Grassetto
FHSS Spettro ditribuito a frequenza 802.11
Formattato ...
variabile
Formattato ...
DSSS Spettro distribuito a sequenza 802.11g Formattato: Controlla righe isolate, Bordo: Superiore:
diretta (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
CSMA/CA Capacità di rilevamento della Accesso casuale
Formattato: Controlla righe isolate, Bordo: Superiore:
portante ad accesso multiplo con (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
annullamento delle collisioni (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
Gli schemi di allocazione più semplice sono FDM e TDM, che sono efficienti quando il numero di stazioni è
Formattato: Controlla righe isolate
piccolo e costante e il traffico è continuo. Entrambi sono ampiamente usati sotto queste condizioni, per
ha formattato: Tipo di carattere: Non Grassetto
esempio per dividere la banda sulle linee telefoniche. Quando il numero di stazioni aumenta o è variabile, e i
ha formattato: Tipo di carattere: Non Grassetto
dati sono trasmessi a cadenza irregolare, FDM e TDM non funzionano bene. Il protocollo ALOHA, normale
ha formattato: Tipo di carattere: Non Grassetto
e slotted, è stato proposto come alternativa. Assieme alle sue numerose varianti e derivati è stato
ha formattato: Tipo di carattere: Non Grassetto
ampiamente descritto, analizzato e utilizzato nei sistemi reali.
ha formattato: Tipo di carattere: Non Grassetto
Quando è possibile analizzare lo stato del canale, le stazioni possono evitare di iniziare una trasmissione
ha formattato: Tipo di carattere: Non Grassetto
mentre un’altra stazione ha già iniziato a trasmettere. Questa tecnica, basata sulla capacità di rilevamento
ha formattato: Tipo di carattere: Non Grassetto
della portate, ha dato vita a diversi protocolli che possono essere utilizzati sia su LAN sia su MAN.
ha formattato: Tipo di carattere: Non Grassetto
È nota anche una classe di procolli che elimina completamente la contesa o almeno la riduce in modo
considerevole. Il conteggio binario elimina completamente la contesa. Il protocollo tree walk la riduce ha formattato: Tipo di carattere: Non Grassetto, Non
dividendo dinamicamente le stazioni in due gruppi disgiunti, uno dei quali ha il permesso di trasmettere e Corsivo

l’altro no; il protocollo tenta di creare la divisione in modo tale che solo una stazione pronta alla ha formattato: Tipo di carattere: Non Grassetto

trasmissione riceve il permesso di procedere. ha formattato: Tipo di carattere: Non Grassetto


ha formattato: Tipo di carattere: Non Grassetto, Non
Le LAN wireless hanno i loro problemi con le relative soluzioni. Il problema maggiore è causato dalle
Corsivo
stazioni nascoste, che impedisce a CSMA di funzionare. Una classe di soluzioni, rappresentata da MACA e
ha formattato: Tipo di carattere: Non Grassetto
MACAW, tenta di stimolare le trasmissioni intorno alla destinazione in modo da far funzionare meglio
CSMA. Sono utilizzate anche le tecniche a spettro distribuito a frequenza variabile (FHSS) e sequenza diretta ha formattato: Tipo di carattere: Non Grassetto
(DSSS). IEEE 802.11 combina CSMA e MACAW per produrre CSMA/CA. ha formattato: Tipo di carattere: Non Grassetto
Ethernet è la forma dominante nelle reti locali. Utilizza CSMA/CD per assegnare il canale. Versioni più ha formattato: Tipo di carattere: Non Grassetto
vecchie utilizzavano un cavo che si snodava da macchina a macchina, mentre ora sono più comuni i doppini ha formattato: Tipo di carattere: Non Grassetto
collegati agli hub o agli switch. Le velocità, cresciute da 10 Mbps a 1 Gbps, continuano ad aumentare.
Le LAN wireless stanno diventato comuni, con lo standard 802.11 che domina il campo. Il suo strato fisico ha formattato: Tipo di carattere: Non Grassetto
supporta cinque modalità di trasmissione, inclusa quella infrarossi, vari schemi di diffusione di spettro e un ha formattato: Tipo di carattere: Non Grassetto
sistema FDM multicanale. Può operare con una stazione base in ogni cella, ma può anche funzionare senza
alcuna stazione base. Il protocollo è una variante di MACAW, con capacità di rilevamento della portante
virtuale.
Le MAN wireless stanno iniziando ad apparire. Sono sistemi a banda larga che usano le onde radio al posto
dell’ultimo miglio delle connessioni telefoniche, e utilizzano le tecniche tradizionali di modulazione a banda
stretta. La qualità del servizio è importante, e lo standard 802.16 definisce quattro classi principali (una a bit-
rate costante, due a bit-rate variabili e una best effort).
Anche il sistema Bluetooth è wireless, ma è pensato per le connessioni a breve distanza come quelle che
consentono al telefono cellulare di collegarsi all’auricolare, o al computer di comunicare con le perirferiche
senza far uso di cavi. Come nel caso di 802.11, utilizza una tecnica a spettro distribuito a frequenza variabile
nella banda ISM. A causa dell’alto livello di rumore di molti ambienti e per la necessità di un’interazione in
tempo reale, nei suoi protocolli è stato integrato un elaborato sistema di correzione degli errori.
L’esistenza di molte LAN differenti fa nascere l’esigenza di un sistema per collegarle. I bridge e gli switch
sono utilizzati a questo scopo. L’algoritmo spanning tree è utilizzato per costruire bidge plug-and-play. Le
VLAN separano la topologia logica delle LAN dalla loro topologia fisica. Un nuovo formato di frame
Ethernet (802.1Q) è stato creato per facilitare l’introduzione delle VLAN nelle aziende.

Capitolo 5 - Lo strato network


Lo strato network fornisce servizi allo strato trasporto. Può basarsi su circuiti virtuali o datagrammi; in ha formattato: Tipo di carattere: Non Grassetto
entrambi i casi, il suo compito principale è instradare i pacchetti dalla sorgente alla destinazione. Nelle ha formattato: Tipo di carattere: Non Grassetto
sottoreti a circuito virtuale la decisione di routing è presa durante l’impostazione del circuito virtuale, nelle ha formattato: Tipo di carattere: Non Grassetto
sottoreti a datagrammi la decisione è presa per ogni pacchetto. Nelle reti di computer si usano molti ha formattato: Tipo di carattere: Non Grassetto
algoritmi di routing. Gli algoritmi statici includono il routing basato sul percorso più corto e il flooding; gli ha formattato: Tipo di carattere: Non Grassetto
algoritmi dinamici includono il routing basato sul vettore delle distanze e quello basato sullo stato dei ha formattato: Tipo di carattere: Non Grassetto
collegamenti. La maggior parte delle reti utilizza uno di questi algoritmi. Altri importanti argomenti che ha formattato: Tipo di carattere: Non Grassetto
riguardano il routing sono il routing gerarchico, il routing per gli host mobili, il routing broadcast, quello ha formattato: Tipo di carattere: Non Grassetto
multicast e il routing nelle reti peer to peer.
ha formattato: Tipo di carattere: Non Grassetto
Le sottoreti possono facilmente congestionarsi, aumentando il ritardo e diminuendo la capacità di trasporto ha formattato: Tipo di carattere: Non Grassetto
dei pacchetti. I progettisti di reti tentano di evitare le congestioni con un’attenta progettazione; le tecniche ha formattato: Tipo di carattere: Non Grassetto
disponibili includono il criterio di ritrasmissione, la memorizzazione in cache, il controllo di flusso e così ha formattato: Tipo di carattere: Non Grassetto
via. Quando si crea una congestione è necessario affrontare il problema, inviando choke packet alla
ha formattato: Tipo di carattere: Non Grassetto
sorgente, gettando via il carico o applicando altri metodi.
ha formattato: Tipo di carattere: Non Grassetto
Il passo successivo alla gestione della congestione è tentare di ottenere realmente la qualità di servizio ha formattato: Tipo di carattere: Non Grassetto
promessa. I metodi che possono essere utilizzati a questo scopo includono il buffering sul client, la
ha formattato: Tipo di carattere: Non Grassetto
modellazione del traffico, la prenotazione delle risorse e il controllo di accesso. Le strategie progettate per
ha formattato: Tipo di carattere: Non Grassetto
ottenere una buona qualità di servizio includono i servizi integrati (tra cui RSVP), i servizi differenziati e
ha formattato: Tipo di carattere: Non Grassetto, Non
MPLS. Corsivo
Le reti possono differire per molti aspetti, perciò quando vengono interconnesse molte reti possono nascere ha formattato: Tipo di carattere: Non Grassetto
problemi. Qualche volta i problemi si possono ridurre inviando attraverso un tunnel i pacchetti che devono ha formattato: Tipo di carattere: Non Grassetto
transitare per la rete aliena, ma l’approccio non funziona se la rete sorgente e quella di destinazione sono ha formattato: Tipo di carattere: Non Grassetto
diverse. Quando reti differenti adottano dimensioni massime di pacchetto diseguali si può utilizzare la ha formattato: Tipo di carattere: Non Grassetto
frammentazione. ha formattato: Tipo di carattere: Non Grassetto
Internet supporta una grande varietà di protocolli collegati allo strato network. Tra questi, il protocollo di ha formattato: Tipo di carattere: Non Grassetto
trasporto dati IP, ma anche i protocolli di controllo ICMP, ARP, e RARP, e i protocolli di routing OSPF e ha formattato: Tipo di carattere: Non Grassetto
BGP. Internet sta esaurendo rapidamente gli indirizzi IP, perciò è stata sviluppata una nuova versione di IP
chiamata IPv6. ha formattato: Tipo di carattere: Non Grassetto

Capitolo 6 - Lo strato trasporto


Lo strato trasporto è la chiave per capire i protocolli a strati. Fornisce molti servizi, il più importante dei
quali è un flusso di byte affidabile, end-to-end e orientato alla connessione dal mittente al ricevente. È ha formattato: Tipo di carattere: Non Grassetto
possibile accedervi con primitive di servizio che consentono la costituzione, l’utilizzo e il rilascio delle ha formattato: Tipo di carattere: Non Grassetto
connessioni. Una nota interfaccia per lo strato trasporto è quella fornita dai socket Berkeley. ha formattato: Tipo di carattere: Non Grassetto
I protocolli di trasporto devono essere in grado di gestire la connessione sulle reti inaffidabili. La
costituzione della connesione è complicata dall’esistenza di pacchetti duplicati e ritardati che possono
ricomparire in momenti inopportuni. Per gestirli, servono handshake a tre vie per stabilire le connessioni. ha formattato: Tipo di carattere: Non Grassetto
Rilasciare una connessione è più facile che stabilirla, ma comunque l’operazione non è semplice a causa del
problema dei due eserciti.
Anche quando lo strato network è completamente affidabile, lo strato trasporto ha molto lavoro da svolgere.
Deve gestire tutte le primitive di servizio, gestire le connessioni e i timer, allocare e utilizzare i crediti.
Internet possiede due protocolli di traporto principali: UDP e TCP. UDP è un protocollo senza connessione ha formattato: Tipo di carattere: Non Grassetto
che fondamentalmente è un involucro per i pacchetti IP, con la funzionalità aggiuntiva del multiplexing e ha formattato: Tipo di carattere: Non Grassetto
del demultiplexing di più processi su un singolo indirizzo IP. UDP può essere utilizzato per le interazioni ha formattato: Tipo di carattere: Non Grassetto
client/server, per esempio utilizzando RPC. Può anche essere utilizzato per costruire protocolli in tempo
reale come RTP.
Il protocollo di trasporto Internet principale è TCP. Fornisce un flusso di byte bidirezionale e affidabile.
Utilizza un’intestazione di 20 byte su tutti i segmenti. I segmenti possono essere frammentati dai router
all’interno di Internet, pertanto gli host devono essere in grado di eseguire il riassemblaggio. Molto lavoro è
stato dedicato all’ottimizzazione delle prestazioni di TCP, utilizzando gli algoritmi di Nagle, Clark,
Jocobson, Karn e altri. I collegamenti wireless aggiungono diverse complicazioni a TCP. TCP transazionale
è un’estensione di TCP che gestisce le interazioni client/server con un numero ridotto di pacchetti.
Le prestazioni della rete sono generalmente dominate dagli overhead del protocollo e di elaborazione della
TPDU: questa situazione può peggiorare alle alte velocità. I protocolli dovrebbero essere progettati per
ridurre il numero di TPDU, quello dei cambiamenti di contesto e delle copie delle TPDU. Nelle reti gigabit
si devono usare protocolli semplici.

Capitolo 7 - Lo strato applicazione


L’assegnazione dei nomi in Internet utilizza uno schema gerarchico chiamato sistema dei nomi di dominio
(DNS, domain name system). Al primo livello si trovano i domini generici ben noti, tra cui figurano com, ha formattato: Tipo di carattere: Non Grassetto
edu, e altri 200 domini nazionali. Il DNS è implementato come un sistema di database distribuito con server ha formattato: Tipo di carattere: Non Grassetto
in tutto il mondo. Il DNS mantiene i record con gli indirizzi IP, quelli di mail exchange e altre informazioni. ha formattato: Tipo di carattere: Non Grassetto
Interrogando un server DNS, un processo può associare un nome di dominio Internet all’indirizzo IP ha formattato: Tipo di carattere: Non Grassetto
utilizzato per comunicare con il dominio. ha formattato: Tipo di carattere: Non Grassetto
La posta elettronica è (era) una delle applicazioni fondamentali per Internet. La maggior parte dei sistemi e- ha formattato: Tipo di carattere: Non Grassetto
mail nel mondo utilizza il sistema di posta elettronica definito RFC 2821 e 2822. I messaggi inviati in ha formattato: Tipo di carattere: 11 pt, Non Corsivo
accordo a questo standard utilizzano le intestazioni ASCII di sistema per definire le proprietà del ha formattato: Tipo di carattere: Non Grassetto
messaggio. Usando MIME si possono inviare molti tipi di contenuto. I messaggi sono inviati con SMTP, che ha formattato: Tipo di carattere: Non Grassetto
lavora con una connessione TCP dall’host di origine a quello di destinazione, consegnando direttamente la ha formattato: Tipo di carattere: Non Grassetto
posta elettronica sulla connessione TCP. ha formattato: Tipo di carattere: Non Grassetto
L’altra applicazione fondamentale di Internet è il World Wide Web. Il web è un sistema per il collegamento ha formattato: Tipo di carattere: Non Grassetto
di documenti ipertestuali. In origine, ogni documento era una pagina scritta in HTML, con collegamenti ha formattato: Tipo di carattere: Non Grassetto
ipertestuali ad altri documenti. Oggi XML sta gradualmente iniziando a prendere il posto di HTML, e una ha formattato: Tipo di carattere: Non Grassetto
grande quantità di contenuto è generata dinamicamente utilizzando script sul lato server (PHP, JSP, ASP) ha formattato: Tipo di carattere: Non Grassetto
nonché script sul lato client (in particolare JavaScript). Un browser può visualizzare un documento
ha formattato: Tipo di carattere: Non Grassetto
stabilendo una connessione TCP al suo server, chiedendo il documento e poi chiudendo la connessione. I
ha formattato: Tipo di carattere: Non Grassetto
messaggi di richiesta contengono diverse intestazioni per fornire informazioni aggiuntive. Il caching, la
ha formattato: Tipo di carattere: Non Grassetto
replica e le reti di consegna del contenuto sono largamente impiegate per migliorare le prestazioni del web.
ha formattato: Tipo di carattere: Non Grassetto
Il web wireless è ai suoi esordi. I primi sistemi a disposizione sono WAP e i-mode, con schermi piccoli e
ha formattato: Tipo di carattere: Non Grassetto
banda limitata, ma la successiva generazione sarà più potente.
ha formattato: Tipo di carattere: Non Grassetto
Il multimedia è un’altra stella nascente nel firmamento delle reti. Consente la digitalizzazione e il trasporto
ha formattato: Tipo di carattere: Non Grassetto
elettronico di audio e video. L’audio richiede meno banda, pertanto è molto più evoluto. L’audio in
streaming, le radio Internet e Voice over IP sono già una realtà; nuove applicazioni vengono prodotte ogni
giorno. Il video su richiesta (on demand, streaming) è un’area promettente verso cui c’è molto interesse. Per ha formattato: Tipo di carattere: Non Corsivo
finire, MBone è un servizio sperimentale per una televisione digitale mondiale trasmessa in tempo reale su
Internet.
Capitolo 8 - Sicurezza delle reti
La crittografia è uno strumento che può essere usato per mantenere e assicurare la confidenzialità,
l’integrità e l’autenticità delle informaizoni. Tutti i sistemi crittografici moderni sono basati sul principio di
Kerckhoff, che consiste nell’utilizzare un algoritmo noto pubblicamente con una chiave segreta. Molti
algoritmi crittografici usano delle trasformazioni complesse che contengono sostituzioni e permutazioni
usate per trasformare il testo in chiaro in quello cifrato. Tuttavia, se la crittografia quantistica si dimostrerà
utilizzabile nella pratica, l’utilizzo di blocchi monouso darà origine a sistemi crittografici realmente
imbattibili.
Gli algoritmi crittografici possono esser divisi in algoritmi a chiave simmetrica e algoritmi a chiave
pubblica. Gli algoritmi a chiave simmetrica funzionano mescolando i bit del testo in chiaro con una serie di
cicli parametrati dalla chiave; il risultato è il testo cifrato. Gli algoritmi a chiave simmetrica più diffusi oggi
sono DES triplo e Rijndael (AES). Questi algoritmi si possono usare con modalità diverse, fra cui: electronic
code book, cipher block, chaining, stream cipher, contatore e altri.
Gli algoritmi a chiave pubblica hanno la proprietà di utilizzare delle chiavi diverse per la cifratura e la
decifazione, inoltre la chiave di decifrazione non può essere ricavata da quella di cifratura. Queste proprietà
rendono possibile la pubblicazione della chiave di cifratura. Il principale algoritmo a chiave pubblica è RSA,
che deriva la sua forza dalla grande difficoltà computazionale associata al problema della scomposizione in
fattori dei grandi numeri.
I documenti commerciali, legali e altri, necessitano di un qualche tipo di firma. Per questo motivo sono stati
sviluppati schemi per le firme digitali, che usano sia gli algoritmi a chiave simmetrica sia quelli a chiave
asimmetrica. Di norma, i messaggi da firmare vengono prima passati attraverso un algoritmo di hashing,
come MD5 o SHA-1, e poi viene firmato l’hash invece del messaggio originale.
La gestione delle chiavi pubbliche può essere fatta tramite l’uso dei certificati, che sono documenti che
legano i protagonisti alle loro chiavi crittografiche. I certificati sono firmati da autorità fidate o da qualcuno
che è stato certificato da un’autorità fidata. Perché il sistema funzioni, la root della catena deve essere nota
in anticipo, infatti normalmente i browser vengono rilasciati con i certificati di diverse root già preinseriti.
Questi strumenti crittografici si possono impiegare per rendere sicuro il traffico di rete. IPsec lavora nello
strato network, cifrando il flusso dei pacchetti da un host all’altro. I firewall sono usati per controllare il
traffico che entra ed esce da una rete aziendale, tramite regole sul protocollo e verifica delle porte utilizzate.
Le virtual private network possono simulare il funzionamento delle vecchie linee dedicate, e fornire quindi
certe proprietà di sicurezza desiderabili. Infine, le reti wireless necessitano di un buon grado di sicurezza,
ma 802.11 e WEP non sono in grado di fornirlo. La situazione dovrebbe migliorare considerevolmente con
802.11i.
Due soggetti che vogliono stabilire una sessione per comunicare in modo sicuro, devono avere un metodo
per autenticarsi reciprocamente e stabilire una chiave di sessione condivisa in caso di necessità. Esistono
svariati protocolli di autenticazione, che utilizzano metodi differenti come una terza parte fidata, Diffide-
Hellman, Kerberos e la crittografia a chiave pubblica.
Si può ottenere la sicurezza della e-mail usando una combinazione delle tecniche che abbiamo elencato.
PGP, per esempio, comprime i messaggi, poi li cifra usando IDEA, quindi invia la chiave IDEA cifrandola
con la chiave pubblica del ricevente. Inoltre, PGP calcola e trasmette anche l’hash del messaggio ottenendo
così una verifica dell’integrità. La iscurezza del web è un altro argomento importante, che inizia con la
sicurezza della risoluzione dei nomi. DNSsec fornisce un metodo per prevenire gli attacchi di DNS spoofing;
un altro metodo per risolvere questo problema è l’uso di nomi auto certificanti. La maggior parte dei siti web
di e-commerce utilizza SSL per stabilire sessioni sicure e autenticate fra il client e il server. Per gestire il
codice mobile si adottano più tecniche, in particolare sandbox e code signing.
Internet solleva molte questioni dove la tecnologia si trova a interagire con la politica e le leggi. Alcune di
queste aree includono la privacy, la libertà di parola e il copyright.

Introduzione Formattato: SpazioDopo: 5 pt

Modelli di riferimento Formattato: SpazioPrima: 16 pt, Dopo: 4 pt

Modello OSI Formattato: SpazioPrima: 12 pt


Il modello OSI (Open Systems Interconnection, realizzato dalla ISO) è composto da 7 livelli.
Il livello fisico ha a che fare con la trasmissione di bit “grezzi” su un canale di comunicazione. Qui si ha formattato: Tipo di carattere: Non Grassetto
stabiliscono le tensioni scelte per rappresentare 0 ed 1, e la durata in microsecondi di ciascun bit, oltre ha formattato: Tipo di carattere: Non Grassetto
all’eventuale trasmissione dei dati simultanea in due direzioni.
Il livello data link serve a far sì che un mezzo fisico trasmissivo appaia al livello superiore come una linea di ha formattato: Tipo di carattere: Non Grassetto
trasmissione esente da errori di trasmissione. Spezzetta i dati provenienti dal livello superiore in frame, e ha formattato: Tipo di carattere: Non Grassetto
aspetta un ack per ogni frame inviato. ha formattato: Tipo di carattere: Non Grassetto
Il livello network deve controllare il funzionamento della subnet di comunicazione. I suoi compiti principali ha formattato: Tipo di carattere: Non Grassetto
sono la scelta del routing (cioè la scelta del cammino da utilizzare), se statico o dinamico, e la conversione ha formattato: Tipo di carattere: Non Grassetto
dei dati nel passaggio da una rete ad un’altra.
Il livello transport deve accettare i dati del livello superiore, spezzettarli in pacchetti, passarli al livello ha formattato: Tipo di carattere: Non Grassetto
network e assicurarsi che arrivino alla peer entity che si trova all’altra estremità della connessione (end-to- ha formattato: Tipo di carattere: Non Corsivo
end). È il primo livello end-to-end, ossia le peer entity di questo livello portano avanti una conversazione
senza intermediari. Gestisce anche le connessioni 1 a 1, 1 a molti, o molti a 1 con il livello network.
I livelli sessione e presentazione offrono rispettivamente servizi più raffinati di quelli offerti a livello
trasporto e funzioni legate alla specifica della sintassi e della semantica delle informazioni da trasferire.
Il livello applicazione, il più alto, ospita tutta la varietà di protocolli che sono necessari per offrire i vari ha formattato: Tipo di carattere: Non Grassetto
servizi agli utenti, come ad esempio il terminale, il browser e la posta elettronica.

Internet Protocol Suite Formattato: SpazioDopo: 3 pt


L’evoluzione del modello OSI è l’IPS, che abolisce i livelli di presentazione e sessione, e sostituisce il livello
network con internet, e i livelli data link e fisico con il livello host-to-network.
Il livello internet permette ad un host di iniettare pacchetti in una qualunque rete e fare il possibile per farli
viaggiare, indipendentemente gli uni dagli altri e magari per strade diverse, fino alla destinazione, che può
essere situata anche in un’altra rete (connectionless). Sono definiti un formato ufficiale dei pacchetti ed un ha formattato: Tipo di carattere: Non Grassetto, Non
protocollo, l’IP (Internet Protocol). Corsivo

Il livello transport consente la conversazione delle peer entity (end-to-end). In questo livello sono definiti
due protocolli:
- il TCP (Transmission Control Protocol), connesso e affidabile; Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- l’UDP (User Datagram Protocol), non connesso e non affidabile.
di: 1,27 cm
TCP vs OSI
Hanno funzionalità simili per i vari livelli e si caratterizzano entrambi per protocolli indipendenti.
L’OSI è un modello di riferimento, dove i protocolli vengono solo successivamente, mentre, contrariamente,
il TCP/IP nasce coi protocolli, ed è il modello di riferimento a venire a posteriori. Inoltre l’OSI è un modello
generale con esperienza limitata, mentre il TCP/IP è molto efficiente ma non generale (difficile sostituire
protocolli).
Formattato: Allineato a sinistra

Esempi di reti Formattato: SpazioDopo: 4 pt, Interlinea: singola

Esempio di architettura a livello: WAP Formattato: SpazioPrima: 12 pt, Dopo: 3 pt


La WAP (Wireless Application Protocol) è una vecchia architettura di protocolli pensata per telefoni
cellulari. Ha una struttura simile e semplificata all’architettura di internet.
Livello fisico
L’informazione viene trasmessa a distanza variando una caratteristica fisica del metodo scelto per la
trasmissione, tra cui mezzi elettrici (cavi), mezzi wireless (onde radio) e mezzi ottici (led, laser, fibra).
La trasmissione può avvenire con due modalità: tramite il segnale analogico, che varia gradualmente in un
range infinito di valori, o tramite il segnale digitale, che varia bruscamente in un intervallo molto limitato di
valori. Il segnale può essere periodico o aperiodico.
L’informazione è rappresentata tramite una funzione g(t), ossia una combinazione lineare di funzioni
sinusoidali; ogni funzione sinuisoidale ha:
- ampiezza A; Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- periodo T;
di: 1,27 cm
- frequenza f, il reciproco del periodo, cioè i cicli al secondo;
- fase, cioè la posizione rispetto al tempo 0.

Materiali Formattato: SpazioPrima: 16 pt, Dopo: 4 pt

La prima versione di cavo è il doppino intrecciato, molto poco prestante.


La seconda è il cavo coassiale, che permette di arrivare a bande fino all’ordine dei GHz.
L’ultima versione di cavi è la fibra ottica, teoricamente capace di raggiungere velocità fino ai 50 mila Gbps.
Esistono due tipi di fibre ottiche:
- le fibre multimodali, ossia raggi diversi che seguono diversi cammini, con un core (filamento di Formattato: Struttura + Livello:1 + Stile numerazione:
vetro) di 50μm; Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
- le fibre monomodali, con un core di 8-10 μ, più adatte per distanze maggiori.
L’informazione può essere trasmessa anche wireless, sfruttando particolari porzioni dello spettro ha formattato: Tipo di carattere: Non Grassetto
elettromagnetico, in particolare dalle onde radio agli uv.
Un sistema satellitare essere su orbite alte (GEO), medie (MEO) o basse (LEO). Più l’orbita è vicina alla ha formattato: Tipo di carattere: Non Grassetto
latenza, minore è la latenza, ma maggiore è il numero di satelliti che serve inserire per una copertura
completa.

Modulazioni
La velocità di trasmissione dipende dall’ampiezza, dalla frequenza e dalla fase d’onda, che vanno quindi ha formattato: Tipo di carattere: Non Grassetto
tutte modulate al meglio. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Definizioni
- banda passante: dipende dal mezzo fisico di trasmissione; intervallo di frequenze che passa Formattato: Struttura + Livello:1 + Stile numerazione:
attraverso il mezzo con una minima attenuazione; Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
- baud rate: numero di campioni (simboli, parti di informazione) raccolti al secondo; equivale alla
frequenza dei simboli;
- tecnica di modulazione: determina il numero di bit per simbolo;
- frequenza di bit: quantità di informazione inviata sul canale: simboli/s × (bit/simbolo) ⇒ bps

Formattato: SpazioPrima: 12 pt
Commutazioni
ha formattato: Tipo di carattere: 11 pt, Non Grassetto
Commutazione di pacchetto Formattato: Controlla righe isolate, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
Datagram Circuito virtuale (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
Risorse Senza prenotazione di risorse. Risorse allocate o in setup o su domanda Formattato: Allineato a sinistra, Controlla righe isolate,
Allocazione su domanda. Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Routing Con indirizzo di destinazione Indirizzo parziale di circuiti virtuali, non end-to-end.
Formattato: Allineato a sinistra, Controlla righe isolate,
Stessa strada dei pacchetti. Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Ritardo Anche elevato Variabile bordo), Tra : (Nessun bordo)
Formattato: Allineato a sinistra, Controlla righe isolate,
Implementazione A livello 3 (network) A livello 2 (data-link) Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Uso Internet (suite TCP/IP) WAN a commutazione come Frame relay e reti ATM bordo), Tra : (Nessun bordo)
Formattato: Allineato a sinistra, Controlla righe isolate,
Altre note Buona efficienza di uso delle Si fa uso di una tabella di connessione dei C.V. fra Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
risorse due switch.
bordo), Tra : (Nessun bordo)
Uso delle 3 fasi: connessione-invio-disconnessione.
ha formattato: Tipo di carattere: Non Corsivo
Formattato: Allineato a sinistra, Controlla righe isolate,
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
Livello data link bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Lo scopo del livello data link è di offire una comunicazione affidabile ed efficiente a due macchine adicenti.
Formattato: Allineato a sinistra, Controlla righe isolate,
Si comporta come un “tubo digitale”, cioè i bit partono e arrivano nello stesso ordine; questo comporta Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
errori e disturbi occasionali, un data rate finito, e un ritardo nella propagazione. bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Si occupa di offrire servizi al livello network con un’interfaccia ben definita, di determinare come i bit del
livello fisico sono raggruppati in frame (framing), di gestire gli errori di trasmissione, e di regolare il flusso
della tramsissione fra sorgente e destinatario.
L’acknowledgment è un messaggio inviato dal destinatario al mittente per informarlo se il frame è arrivato ha formattato: Tipo di carattere: Non Grassetto
correttamente o se è errato. Si distinguono quindi i frame dati e i frame di ack, destinati ai rispettivi scopi.
Il frame è diviso in due campi: l’header, dove ci sono i campi kind, seq e ack; il campo info, che contiene il
pacchetto di livello network completo.

Servizi
Si ricorda che lo scopo principale del livello data link è quello di trasferire i dati dal livello network della
macchina di origine a quello della macchina di destinazione.
Il livello data link può funzionare in più configurazioni:
- connectionless non confermato: ha formattato: Tipo di carattere: Non Grassetto

➔ si mandano frame indipendenti che non vengono confermati; Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
➔ non si stabilisce una connessione; di: 1,27 cm
➔ i frame persi non si recuperano (in questo livello); Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
➔ appropriato per canali con tasso d’errore molto basso, a traffico real-time e le LAN;
di: 1,27 cm
- connectionless confermato:
Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
➔ i frame vengono confermati; se ciò non succede, il mittente può rispedire il frame; Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
➔ utile su canali non affidabili (sistemi wireless) Imposta un rientro di: 1,27 cm, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
- connection oriented confermato: (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
➔ sofisticato, prevede 3 fasi: apertura connessione, invio dati, chiusura connessione; bordo)

➔ garantisce che ogni frame sia ricevuto esattamente una volta e nell’ordine giusto ha formattato: Tipo di carattere: Non Grassetto

➔ fornisce al livello network un flusso di pacchetti affidabile ha formattato: Tipo di carattere: Non Grassetto
Funzionamento
In trasmissione, spezza il flusso di bit in arrivo dal livello 3 in una serie di frame, calcola il checksum per
ciascuno e lo inserisce al suo interno; infine consegna il frame al livello 1, che lo spedisce come sequenza di
bit.
In ricezione, riceve una sequenza di bit dal livello 1, ricostruisce i frame, ricalcola per ognuno il checksum e
verifica che corrisponda a quello contenuto dentro il frame stesso.

Tecniche di framing

Conteggio di caratteri Formattato: SpazioPrima: 12 pt, Bordo: Superiore:


(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
Un campo nell’header indica quanti caratteri ci sono nel frame. È semplice ma c’è rischio errori (potrebbe
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
rovinarsi quel campo e sballare l’interpretazione). bordo)

Delimitatori e byte stuffing


In questa tecnica, ogni frame inizia e finisce con una particolare sequenza di caratteri ASCII. In caso di
errore si ricercano i caratteri di terminazione.
Nella trasmissione di dati binari tuttavia, il byte corrispondente alla codifica di fine frame può apparire
dentro al frame stesso, confondendo la trasmissione. Per risolvere questo problema, il livello 2 sorgente
aggiunge davanti a tale byte un altro DLE (codifica per la fine del frame); poi, prima di consegnarli al livello
3, li rimuove (character stuffing).

Delimitatori e bit stuffing


Questa strategia è molto simile alla precedente, con l’unica differenza che anziché avere caratteri (8 bit)
abbiamo singoli bit usati come delimitatori. In realtà si usano più che altro sequenze di bit, solitamente più
corte di 8.
Chiaramente si ripresenta il problema precedente, che viene risolto in maniera similare: alle sequenze di bit
viene aggiunto un bit alla fine di ogni sequenza in modo da poterle separare senza ambiguità poi nel livello
successivo.

Gestione degli errori


Ci sono due possibili approcci al trattamento degli errori: si può includere sufficiente informazione
aggiuntiva in modo da ricostruire il messaggio originario (correzione dell’errore), oppure si può includere
meno informazione aggiuntiva, rilevando l’errore ma non necessariamente correggendolo (rilevazione
dell’errrore).
Il bit di parità consiste nell’aggiungere un solo bit, tuttavia 1 bit è anche la massima tolleranza di errore.
Calcolando il checksum, al costo di un certo overhead, è possibile trattare i dati come interi; questo permette
di gestire errori multipli, ma non tutti gli errori.
Un frame (delimitatori esclusi) consiste di n = m + r bit, dove m sono i bit dell’informazione e r sono i bit
ridondanti. Una sequenza di n bit fatta in tal modo si dice codeword. ha formattato: Tipo di carattere: Non Corsivo

La distanza di Hamming è il numero di bit per cui due codeword differiscono. Un insieme prefissato di ha formattato: Tipo di carattere: Non Grassetto
codeword costituisce un codice. La distanza di Hamming di un codice è il minimo delle distanze di
Hamming fra tutte le possibili coppie di codeword del codice.
Nella Cyclic Redundancy Code (CRC) si considerano le stringhe di bit come rappresentazioni di polinomi a
coefficienti 0 e 1 (un numero ad m bit corrisponde ad un polinomio di grado m-1). Il ricevente divide il frame
con checksum per G(x), e se il risultato è diverso da 0 c’è stato un errore. Un codice polinomiale con r bit
rileva tutti gli errori di lunghezza ≤ r.
Un checksum a 16 bit corregge errori fino a 16 bit e quasi certamente anche di 17 e 18 bit.

Protocolli
I protocolli principali del livello data link sono 3:
- Protocollo 1, per canale simplex senza vincoli (per questo motivo chiamato heaven, chiaramente ha formattato: Tipo di carattere: Non Grassetto
irrealistico). Si assume che gli strati network della sorgente e della destinazione siano sempre pronti, ha formattato: Tipo di carattere: Non Grassetto, Non
che il tempo per elaborare i dati possa essere ignorato, che sia disponibile un buffer infinito e che Corsivo

non si facciano mai errori. Formattato: Struttura + Livello:1 + Stile numerazione:


Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- Protocollo 2, per canale simplex stop and wait. Qui si rimuove l’assunzione meno realistica del di: 1,27 cm
protocollo 1, ossia il buffer infinito; si utilizzeranno quindi richieste di autorizzazione all’invio da ha formattato: Tipo di carattere: Non Grassetto
parte del mittente, e conferme da parte del destinatario.
- Protocollo 3, per canale simplex con canale rumoroso. In questo protocollo, oltre alle assunzioni del ha formattato: Tipo di carattere: Non Grassetto
protocollo 2, si considera anche l’opzione che il canale di comunicazione possa commettere degli
errori.
Con simplex si intende che i dati vengano trasmessi in una sola direzione.

Protocollo a finestra scorrevole


Per poter inviare dati in due direzioni, al posto che sprecare un secondo canale per il ritorno, è possibile
guardare il campo kind nell’intestazione del frame in arrivo, e la destinazione può determinare se si tratta di
dati oppure di ack.
Ad ogni istante il mittente mantiene una finestra scorrevole sugli indici dei frame da trasmettere, mentre il
destinatario mantiene una finestra con gli indici dei frame che possono essere accettati.
Il protocollo a finestra scorrevole di 1 bit è stop-and-wait. Il mittente fa partire un timer quando invia un
frame, nella cui finestra di tempo ci si aspetta che arrivi un ack corretto come risposta, altrimenti verrà
reinviato il frame. Il destinatario invia quindi l’ack non appena riceve il frame, e lo passa al livello network
se non è un duplicato.

Protocollo go-back-n
Nel protocollo go-back-n il destinatario quando riceve un frame danneggiato o con un numero di sequenza ha formattato: Tipo di carattere: Non Grassetto
non progressivo, lo ignora assieme ai successivi in quell’unità di tempo. ha formattato: Tipo di carattere: Non Grassetto
Il mittente invece, quando scatta il timeout sul frame inviato con errore, ritrasmette la sequenza di frame
che inizia con quello per il quale si è verificato il timeout. Il mittente mantiene in un apposito buffer tutti i ha formattato: Tipo di carattere: Non Grassetto
frame non confermati per poterli eventualmente ritrasmettere, bloccando il livello network in caso sia pieno. ha formattato: Tipo di carattere: Non Grassetto

Protocollo selective repeat


Il destinatario mantiene nel suo buffer tutti i frame ricevuti successivamente ad un eventuale frame rovinato, ha formattato: Tipo di carattere: Non Grassetto
in modo da poterli reinvare in caso sia ricevuto il frame precedentemente errato in forma corretta. Per ogni ha formattato: Tipo di carattere: Non Grassetto
frame arrivato correttamente, il destinatario invia un ack col numero più alto della sequenza completa
arrivata fino a quel momento.
Sia mittente che destinatario devono gestire un buffer per mantenervi i frame, rispettivamente non ha formattato: Tipo di carattere: Non Grassetto
confermati e successivi ad un errore. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Con questo protocollo, non necessariamente i frame sono ricevuti in ordine dal destinatario a livello data
link. Vi è inoltre un basso spreco di memoria, che si potrebbe ulteriormente diminuire mandando un NACK
(negative acknoledgment) per tutti i frame danneggiati o inattesi.

Protocollo HDLC
Il protocollo high-level data link control è standard ISO. Si tratta di un protocollo bit oriented che utilizza la
tecnica del bit stuffing. Può essere configurato normalmente oppure in modalità asincrona. ha formattato: Tipo di carattere: Non Grassetto

La comunicazione avviene punto a punto o per link multipunto.


I frame trasmessi possono essere di tre tipi: informazione (dati e ack), supervisione e non numerati (per il
sistema). Il tipo di un frame ne definisce i campi.

Protocollo PPP
Il protocollo point to point è adatto sia a connessioni telefoniche che a linee router-router. Fornisce
funzionalità, oltre al framing, come il rilevamento degli errori, la negoziazione dell’indirizzo IP e
l’autenticazione.
È un protocollo byte oriented che utillizza il byte stuffing. Si serve in oltre di altri protocolli a livello 2 per ha formattato: Tipo di carattere: Non Grassetto
garantire le proprie funzionalità:
- per stabilire il collegamento, LCP; Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- per l’autenticazione, AP; Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- per interfacciarsi con il livello 3, NCP.
Formattato: Struttura + Livello:1 + Stile numerazione:
Il formato del frame è simile a quello dell’HDLC. Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm

Il sottolivello MAC
I protocolli per decidere quale sia la prossima stazione a cui trasmettere tramite un canale broadcast (detto
anche multiaccess channel) appartengono al sottolivello Medium Access Control. Sono usati nelle LAN, ma
anche nelle WAN basate su satelliti.
Per allocare il canale ai vari utenti in competizione esistono due meccanismi:
- l’allocazione statica, che prealloca la banda, rendendola adatta solamente ad un numero di utenti e ad ha formattato: Tipo di carattere: Non Grassetto
un data rate costanti; Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- l’allocazione dinamica, più sofisticata, che si adatta alle esigenze del momento. Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
ha formattato: Tipo di carattere: Non Grassetto
Protocolli ad accesso casuale
Formattato: Struttura + Livello:1 + Stile numerazione:
In questi protocolli tutte le stazioni sono paritarie, non esiste alcun elemento centralizzato e per questo c’è Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
un algoritmo distribuito per accedere al mezzo. di: 1,27 cm

Non esiste un tempo predefinito per l’accesso al mezzo da parte di ogni stazione (random access); inoltre
non esiste una regola per stabilre qual è la prossima stazione a trasmettere (competizione). Si possono
oltretutto avere delle collisioni.

Protocollo Aloha
Nel protocollo pure Aloha, le stazioni trasmettono quando vogliono, e durante la trasmissione ascoltano il
canale e confrontano ciò che ricevono con ciò che hanno spedito; in caso di collisione (errore) ripetono
l’invio dopo un tempo casuale. Il tempo di attesa per ritrasmettere è casuale per diminuire la probabilità di
successive collisioni.
Nel protocollo Slotted Aloha, si divide il tempo in intervalli discreti, ognuno iniziante con un segnale
speciale. In questo modo si riescono a ridurre le collisioni e ad aumentare il throughput.
Protocollo CSMA
Nel protocollo con ascolto di canale le stazioni possono ascoltare il canale e regolarsi di conseguenza,
ottenendo un’efficienza molto più alta (Carrier Sense).
Ci sono 3 sottoprotocolli:
- l’1-persistent entra in gioco quando il canale è libero; Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- il non persistent subito dopo che si è liberato il canale aspetta un tempo random prima di Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
trasmettere;
- il p-persistent, quando il canale è occupato, aspetta lo slot con probabilità 1-p, se è libero trasmette Formattato: Struttura + Livello:1 + Stile numerazione:
con probabilità p; più è basso p migliore è il throughput. Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
Il CSMA/CD (Collision Detection) aggiunge al precedente il rilevamento delle collisioni, individuate quando
la potenza del segnale ricevuto è superiore a quella trasmessa. Quando si verifica una collisione, la stazione
aspetta un tempo casuale e al termine prova a ritrasmettere.
Vi è un’alternanza di periodi di contesa, di trasmissione e di inattività. Il periodo di contesa è modellato
come uno Slotted Aloha.

Protocolli ad accesso controllato

Protocollo senza collisioni


Si tratta di un protocollo a mappa di bit su prenotazione, dove n stazioni trasmettono sul canale condiviso. Il ha formattato: Tipo di carattere: Non Grassetto
periodo di contesa risulta quindi diviso in n intervalli. ha formattato: Tipo di carattere: Non Grassetto
Le stazioni trasmettono in ordine numerico, e segnalano il proprio intento con il valore 1. L’ordine
numerico, cioè l’indice, è anche ciò che stabilisce la priorità; questo lo rende non equo. ha formattato: Tipo di carattere: Non Grassetto

Protocollo a contesa limitata


Si attua un meccanismo simmetrico: ogni stazione cerca di ottenere il canale con probabilità p: più sono le
stazioni che cercano di ottenere il canale, minore è la probabilità che ci riusciranno.
Le stazioni sono divise in gruppi anche non disgiunti. I gruppi vengono definiti dinamicamente tramite un
Adaptive Tree Walk. ha formattato: Tipo di carattere: Non Grassetto

Rete ad anello
Una rete ad anelli consiste di una collezione di interfacce di rete, collegate a coppie da linee punto a punto. ha formattato: Tipo di carattere: Non Grassetto

Non sono basate su un mezzo trasmissivo broadcast, per cui non c’è una significativa componente analogica
per la rilevazione delle collisioni (che non possono verificarsi); inoltre l’anello è intrinsecamente equo. ha formattato: Tipo di carattere: Non Grassetto

Ogni bit che arriva nell’interfaccia è copiato in un buffer interno. ha formattato: Tipo di carattere: Non Grassetto

L’interfaccia di rete può operare in listen mode o in transmit mode. In listen mode i bit in ingresso vengono ha formattato: Tipo di carattere: Non Grassetto

copiati nel buffer interno (dove possono essere modificati) e ritrasmessi con un ritardo di 1 bit. In transmit
mode l’anello è aperto, e i bit in arrivo vengono rimossi; nuovi bit vengono trasmessi sull’anello. Una
speciale configurazione binaria, il token, gira in continuazione se nessuno vuole trasmettere. ha formattato: Tipo di carattere: Non Grassetto, Non
Corsivo

Standard IEEE
I vari standard IEEE differiscono a livello fisico e nel sottolivello MAC, ma sono compatibili a livello data
link.

Ethernet
Si tratta di uno strandard per un protocollo CSMA/CD, di tipo 1-persistent, funzionante a 10Mbps.
802.3
802.3 è l’evoluzione dello standard Ethernet, ma sono largamente compatibili in quanto ne conserva la
maggior parte delle caratteristiche, comprese quelle appena scritte sopra.
Ogni stazione contiene un’interfaccia di rete (scheda Ethernet) che incapsula e codifica i dati del livello
superiore, gestisce il protocollo MAC, e decapsula i dati ottenuti in ricezione.
Prima di trasmettere, la stazione aspetta che il canale sia libero; appena lo è inizia a trasmettere. Se c’è una
collisione viene inviata una sequenza di jamming di 32 bit, per avvisare le altre stazioni. Se invece la
trasmissione non riesce, la stazione attende una quantità di tempo casuale, regolata dall’algoritmo binary ha formattato: Tipo di carattere: Non Corsivo
backoff exponential algorithm, e poi riprova.
Le prestazioni sono molto buone (nota: obsoleto), migliori di quelle stimabili in via teorica. Sotto carico ha formattato: Tipo di carattere: Non Corsivo
medio 2-3% dei pacchetti ha una collisione e qualche pacchetto su 10000 ha più di una collisione. ha formattato: Tipo di carattere: Non Corsivo

802.5 - Token Ring


Il cablaggio è basato su doppino telefonico.
Si utilizzano token per iniziare le trasmissioni.
Ogni ring ha un monitor, che viene designato all’avvio dell’anello. I suoi compiti sono rigenerare il token se
esso si perde, e ripulire il ring dai resti di frame danneggati o da frame orfani.

Confronto 802.3 - 802.5


802.3 802.5 ha formattato: Tipo di carattere: 11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
enorme diffusione Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
buon funzionamento buon funzionamento e prestazioni sotto forte carico bordo), Tra : (Nessun bordo)
Formattato: Controlla righe isolate, Bordo: Superiore:
ha sostaziose componenti analogiche per il totalmente digitale (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
rilevamento delle collisioni
bordo)

prestazioni degradate in presenza di forte carico si manifesta comunque ritardo anche senza forte Formattato: Controlla righe isolate, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
carico (tempo per ottenere il token) (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
ha bisogno di un monitor per rilevare Formattato: Controlla righe isolate, Bordo: Superiore:
malfunzionamenti (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
802.2 - LLC Formattato: Controlla righe isolate, Bordo: Superiore:
Il sottolivello Logical Link Control fornisce al livello network un’interfaccia unica, nascondendo le (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
differenze fra i vari sottolivelli MAC; inoltre fornisce un servizio più sofisticato di quello offerto dai vari
bordo)
sottolivelli MAC: servizi datagram confermati e non, e servizi affidabili orientati alla connessione.
Formattato: Controlla righe isolate, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
Reti wireless (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
Lo standard per le reti WLAN è l’802.11.
I vari standard sono:
- l’FHSS (frequency hopping spread spectrum), che usa una banda libera da 2.4ghz e delle sottobande, Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
in cui la trasmissione salta ad intervalli temporali definiti da una frequenza all’altra; Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- il DSSS (direct sequence spread spectrum), che usa una banda libera da 2.4ghz, in cui il tempo di un
Formattato: Struttura + Livello:1 + Stile numerazione:
bit è suddiviso in m intervalli temporali Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
Servizi
Il basic service set (BSS) è utilizzato per reti wireless con stazioni fisse o mobili e una stazione base (access ha formattato: Tipo di carattere: Non Grassetto, Non
Corsivo
point AP) opzionale.
ha formattato: Tipo di carattere: Non Grassetto
L’extended service set (ESS) si usa per reti wireless con 2 o più BSS con AP, connesse tra di loro tramite un
Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
sistema di distribuzione che connette i rispettivi AP. Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
ha formattato: Tipo di carattere: Non Grassetto, Non
Corsivo
ha formattato: Tipo di carattere: Non Grassetto, Non
Il livello rete Corsivo
ha formattato: Tipo di carattere: Non Grassetto, Non
Lo scopo del livello rete è spostare i pacchetti dal mittente al destinatario, attraverso subnet intermedi
Corsivo
(router).
ha formattato: Tipo di carattere: Non Grassetto, Non
Per raggiungere questo scopo, è necessario: Corsivo

- conoscere la topologia della rete Formattato: Struttura + Livello:1 + Stile numerazione:


Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- scegliere di volta in volta il cammino migliore (routing)
di: 1,27 cm
- gestire il flusso dei dati e le congestioni (flow control e congestion control)
ha formattato: Tipo di carattere: (Predefinito) Spectral,
- gestire le problematiche derivanti dalla presenza di puà reti diverse (internetworking) 11 pt, Non Grassetto
Formattato: Controlla righe isolate, Bordo: Superiore:
Problemi dell’architettura dello strato network (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
Nella realizzazione del livello netowork si devono prendere decisioni in merito ai servizi offerti a livello bordo)
transport e all’organizzazione interna della subnet di comunicazione. ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
Servizi forniti allo stato trasporto Formattato: Allineato a sinistra, Controlla righe isolate,
Nei servizi orientati alla connessione le peer entity stabiliscono una connessione, negozionadone i Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
parametri, alla quale viene associato un ID, che verrà poi inserito in ogni pacchetto che verrà inviato. La bordo), Tra : (Nessun bordo)
comunicazione è bidirezionale e il controllo di flusso è fornito attraverso alcuni dei parametri negoziati. ha formattato: Tipo di carattere: (Predefinito) Spectral,
Nei servizi senza connessione la sottorete è giudicata inerentemente inaffidabile, perciò gli host devono 11 pt, Non Grassetto

provvedere per conto proprio alla correzione degli errori e al controllo di flusso. Il servizio offerto dal livello Formattato: Allineato a sinistra, Controlla righe isolate,
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
netowork deve essere datagram, e i pacchetti viaggiano indipendentemente, ciascuno contentente bordo), A sinistra: (Nessun bordo), A destra: (Nessun
un’identificatore che ne stabilisca la destinazione. bordo), Tra : (Nessun bordo)
ha formattato: Tipo di carattere: (Predefinito) Spectral,
Servizi orientati alla connessione Servizi senza connessione 11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
Indirizzo di destinazione Presente (durante l’attivazione) Presente (in ogni pacchetto)
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Ordine dei pacchetti Garantito Non garantito bordo), Tra : (Nessun bordo)
ha formattato: Tipo di carattere: (Predefinito) Spectral,
Attivazione della connessione Presente Assente 11 pt, Non Grassetto
Formattato ...
Negoziazione di QoS Presente Assente
ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
Identificatori di connessione Presente Assente
Formattato ...
Controllo del flusso Presente Assente ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto

Subnet e servizi Formattato ...


ha formattato: Tipo di carattere: (Predefinito) Spectral,
Subnet basata su connessioni Subnet connectionless 11 pt, Non Grassetto
Formattato ...
Banda trasmissiva Minore (piccoli ID in ogni Maggiore (intero indirizzo di ha formattato: Tipo di carattere: (Predefinito) Spectral,
pacchetto) destinazione in ogni pacchetto) 11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
Spazio sui router Maggiore (strutture dati per i Minore Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
circuiti virtuali) bordo), Tra : (Nessun bordo)
ha formattato: Tipo di carattere: (Predefinito) Spectral,
Ritardo per il setup Presente Assente
11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
Ritardo per il routing Assente Presente
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Congestione Minore (risorse allocate in Maggiore (possibile in ogni bordo), Tra : (Nessun bordo)
anticipo) momento) ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
Vulnerabilità Alta Bassa Formattato: Allineato a sinistra, Controlla righe isolate,
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
I servizi offerti sono indipendenti dalla realizzazione interna della subnet.
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Algoritmi di routing ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
La funzione principale del livello netowork è di instradare i pacchetti sulla subnet, facendo fare loro molti
Formattato: Allineato a sinistra, Controlla righe isolate,
hop (salti) da un router ad un altro. Un algoritmo di routing serve a stabilire in quale linea di uscita
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
instradare un pacchetto che è arrivato: bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
- in una subnet datagram l’algoritmo viene applicato ex novo ad ogni pacchetto;
- in una subneta basata su circuiti virtuali l’algoritmo viene applicato solo nell’iniziale fase di setup del ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
circuito (session routing).
Formattato: Allineato a sinistra, Controlla righe isolate,
Gli obiettivi generali degli algoritmi sono minimizzare il ritardo medio dei pacchetti e massimizzare il loro Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
throughput. bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Negli algoritmi non adattivi (static routing) le decisioni sono prese in anticipo, all’avvio della rete, mentre
ha formattato: Tipo di carattere: (Predefinito) Spectral,
negli algoritmi adattivi (dynamic routing) le decisioni sono formulate in base allo stato della rete. 11 pt, Non Grassetto
L’insieme dei cammini ottimi da tutti i router ad uno specifico router di destinazione costituiscono un Formattato: Allineato a sinistra, Controlla righe isolate,
albero, detto sink tree per quel router. Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
Nome algoritmo Tipo di routing
Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
Shortest path routing statico
Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
Flooding statico di: 1,27 cm
ha formattato: Tipo di carattere: (Predefinito) Spectral,
Flow-based routing statico 11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
Distance vector routing dinamico
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Link state routing dinamico bordo), Tra : (Nessun bordo)
Formattato ...
Shortest path routing Formattato ...
Un host di gestione della rete mantiene un grafo che rappresenta la subnet. All’avvio della rete l’algoritmo Formattato ...
applica al grafo un algoritmo per il calcolo del cammino minimo ed invia i risultati a tutti i ruoter. Formattato ...
Formattato ...
Flooding
Si invia a tutte le linee eccetto a quella da cui il pacchetto è arrivato.
Esistono delle tecniche per limitare il traffico generato:
- inserire in ogni pacchetto un contatore che viene decrementato ad ogni op, scartando il pacchetto Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
quando arriva a 0 Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- inserire informazioni per evitare che lo stesso pacchetto giri più volte
- inviare solo i pacchetti che vanno all’incirca nella giusta direzione (selective flooding) Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
Il flooding non è utilizzabile in generale come algoritmo di routing, però è utile per esempio in campo di: 1,27 cm
militare (affidabilità e robustezza).

Flow-based routing
È basato sull’idea di calcolare in anticipo il traffico atteso su ogni linea, per poi stimare il ritardo medio
atteso per ciascuna ed effettuare, in base a queste conclusioni, le decisioni di routing. Per fare queste stime
serve conoscere la topologia della rete, la matrice della quantità di traffico e la capacità (in bps) delle linee.

Distance vector routing


In ogni router mantiene una tabella (vector) con archiviate la distanza dal router in oggetto e la linea in
uscita da usare per arrivarci.
Per i suoi vicini immediati il router stima direttamente la distanza dei collegamenti corrispondenti, inviando
speciali pacchetti ECHO e misurando il tempo di attesa per la risposta.
A intervalli regolari queste tabelle vengono scambiate reciprocamente tra tutti i vicini.
Quando un router riceve nuove informazioni, calcola una nuova tabella scegliendo la concatenazione
migliore fra la distanza del router stesso, e quella tra il vicino immediato e il router remoto.
È l’algoritmo di routing di Arpanet; è un algoritmo buono ma molto lento nell’adattamento.
A lungo andare, tutti i router vedono lentamente aumentare sempre più la distanza per arrivare ad A: è il
problema del count-to-infinity.

Link state routing


Ogni router mantiene informazioni sullo stato dei collegamenti con i vicini immediati (misurando il ritardo
di ogni linea) e distribuisce tali informazioni a tutti. Ciascuno li utilizza per ricostruire localmente la
topologia completa della rete e per calcolare il cammino minimo fra sé e gli altri.
Invia un pacchetto HELLO su tutte le linee in uscita. In risposta riceve dai vicini i loro indirizzi.
La costruzione e l’invio di pacchetti, formati da identità del mittente, numero di sequenza, età, e lista dei
vicini con i relativi ritardi, si verifica ad intervalli regolari o quando accade un evento significativo.
Il link state routing è molto usato attualmente in Internet OSPF (open shortest path first) e in IS-IS
(intermediate system - intermediate system.

Routing gerarchico
La rete viene divisa in zone (dette regioni). All’interno di una regione ogni router (detto interno) applica un
algoritmo di routing verso tutti gli altri router della regione; quando un router interno deve spedire un
pacchetto ad un router esterno, lo invia ad un particolare router della propria regione, detto di confine. Il
router di confine comunica con gli altri router di confine delle altre regioni.
Questo meccanismo introduce due livelli di routing, il primo all’interno di ogni regione, e il secondo fra i
router di confine.
I router interni mantengono delle loro tabelle di routing, con una riga per ogni router interno ed una per
ogni altra regione (router di confine). I router di confine invece conservano soltanto una riga per ogni altra
regione con l’indicazione del prossimo router di confine da contattare e della linea da usare per
raggiungerlo.

Algoritmi per il controllo della congestione


La congestione in un router può derivare da diversi fattori:
- la capacità di limitata del buffer Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- il processore troppo lento Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- la linea di trasmissione troppo lenta, che causa congestione della coda
Formattato: Struttura + Livello:1 + Stile numerazione:
Il controllo della congestione è un problema globale di tutta la rete, ed è diverso dal problema del controllo Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di flusso. di: 1,27 cm

Ci sono due approcci al problema della congestione:


- l’open loop, cioè senza contro-reazione, cerca di prevenire la congestione e, in caso si verifichi, non Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
la corregge; Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- il closed loop, cioè con contro-reazione, cerca di evitare la congestione, controllando lo stato della
Formattato: Struttura + Livello:1 + Stile numerazione:
rete ed intraprendendo le azioni opportune quando necessario. Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
Open loop
Nell’algoritmo leaky bucket (metafora del secchio bucato) si realizza sull’host un buffer che immette
pacchetti sulla rete ad un tasso costante b bps e mantiene i pacchetti accodati per la trasmissione. Se l’host ha formattato: Tipo di carattere: Non Corsivo
genera più pacchetti di quelli contenibili dal buffer, ovvero se data rate > b si ha perdita di pacchetti. L’host ha formattato: Tipo di carattere: Non Corsivo
può anche produrre un traffico bursty senza che ciò provochi perdita di pacchetti finché data rate < b bps. ha formattato: Tipo di carattere: Non Corsivo
L’algoritmo token bucket (metafora del secchio di gettoni) consente irregolarità controllate nel flusso in ha formattato: Tipo di carattere: Non Corsivo
uscita sulla rete. Quando non trasmette, la stazione accumula un credito trasmissivo con un certo data rate; ha formattato: Tipo di carattere: Non Corsivo
il secchio contiene dei token, creati con cadenza prefissata fino a quando il loro numero raggiunge un valore
massimo M. Se si devono trasmettere h pacchetti e il secchio ha k token, se h > k i primi k sono trasmessi
subito, mentre gli altri aspettano nuovi token. Per trasmettere si sfrutta tutto il credito disponibile e si invia
alla massima velocità consentita dalla linea. I pacchetti non vengono mai scartati, al più si avverte il livello
superiore di fermare l’afflusso di dati.
Closed loop
La flow specification è molto efficace se tutti (sorgente, subnet e destinazione) si accordano in merito prima
di trasmettere. Per ottenere tale accordo bisogna specificare le caratteristiche del traffico che si vuole
inviare e quelle sulla qualità del servizio. L’admission control è una politica di ammissione per attivare nuovi
circuiti virtuali; in caso non ci siano sufficienti risorse per gestirne uno nuovo, si può negarne l’attivazione.
Nel choke packet e hop by hop il router controlla il grado di utilizzo delle sue linee di uscita, misurando per
ciascuna linea, l’utilizzo istantaneo U. Viene accumulata, entro una media esponenziale M, la storia passata.
Quando M è vicina ad una soglia di pericolo prefissata per il router, viene inviato all’host di origine un
choke packet per diminuire il flusso. Quando l’host sorgente riceve il choke packet, diminuisce il flusso,
ignora i successivi choke packet per un tempo prefissato, e successivamente si rimette in attesa di eventuali
choke packet. La reazione è molto lenta, ed un miglioramento possibile è far rallentare ogni router sul
percorso non appena riceve i choke, anche se ciò richiede più spazio nei router.
Qualità del servizio
Per valutare l’affidabilità delle prestazioni, si utilizzano tecniche di analisi, valutazione e previsione che si
avvalgono di misure e modelli per trarre conclusioni.
Le tecniche descritte nei precedenti paragrafi sono state progettate per ridurre la congestione e migliorare le
prestazioni della rete, ma con lo sviluppo delle reti multimediali spesso queste misure ad hoc non sono
sufficienti: bisogna fare sforzi significativi per garantire la qualità del servizio attraverso architetture di
protocollo e di rete.

Collegamento tra reti (internetwork)


Per connettere fra loro reti eterogenee si devono superare problemi non banali, tra cui difformità nei formati
dei pacchetti, nei meccanismi di controllo di errori e congestione, e nelle architetture di rete.
I bridge sono degli elementi di interconnessione a livello data link che controllano l’indirizzo ed eseguono
l’instradamento, ma non esaminano il contenuto dei pacchetti. Possono esserci anche a livello network.
I collegamenti con hub avvengono a livello fisico, mentre bridge e switch a livello data link. Hub connette un
insieme di linee: riceve da una linea e trasmette su tutte le altre.

Nome Funzione Dominio di Velocità linee Altro ha formattato: Tipo di carattere: 11 pt, Non Grassetto
collisione Formattato: Allineato a sinistra, Controlla righe isolate,
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
HUB Connette HUB Tutte alla stessa Il segnale non viene amplificato e l’indirizzo bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
un insieme velocità non viene filtrato
Formattato: Allineato a sinistra, Controlla righe isolate,
di linee Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
BRIDGE Connette Ogni linea Velocità diverse Estrae dal frame l’indirizzo e lo confronta con bordo), Tra : (Nessun bordo)
un insieme valori in tabelle per determinare la Formattato: Allineato a sinistra, Controlla righe isolate,
di LAN destinazione Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
SWITCH Connette Ogni porta ? - estrae dal frame l’indirizzo e lo instrada a
Formattato: Allineato a sinistra, Controlla righe isolate,
un insieme destinazione Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
di - ha più schede di linea del bridge bordo), A sinistra: (Nessun bordo), A destra: (Nessun
computer - ha buffer sulle porte bordo), Tra : (Nessun bordo)

Ogni rete può comunicare con le altre reti a lei conformi attraverso una porzione di rete costituita di router
multiprotocollo (es. OSI, IP). Nella subnet così costituita circolano pacchetti di entrambe le architetture, che
vengono instradati secondo le regole di competenza dell’architettura di cui fanno parte.
Se tutte le reti interessate offrono servizi connessi nel livello network, è possibile costruire un circuito
virtuale che si estende attraverso più reti eterogenee come concatenazione di circuiti virtuali che
attraversano ciascuno una delle reti. Ai confrini fra ogni rete ci sono router multiprotocollo che creano la
porzione di circuito virtuale che attraversa la rete di competenza, ed instradano poi i pacchetti lungo tale
circuito.

Tunneling
Si utilizza per mettere in comunicazione due reti uguali (A) attraverso una rete diversa (B) quando
quest’ultima non ha a disposizione un router multiprotocollo. Sono le due reti A, agli estremi, ad averlo, in
modo da poter incapsulare i loro messaggi dentro pacchetti di tipo B e tradurli non appena raggiungono
l’altro estremo.
Questa tecnica si utilizza nella pratica per connettere host o reti isolate, o per introdurre nuove
caratteristiche (per esempio ipv6 su ipv4). La rete risultante sopra all’ospitante (B) è detta overlay; non è
tuttavia possibile raggiungere i nodi di questa rete.

Frammentazione
È necessario che il livello network della rete di origine (e di quella di destinazione) prevedano meccanismi di
spezzettamento dei pacchetti in frammenti prima di consegnarli alla rete di transito, e di ricomposizione dei
frammenti non appena essi giungono dalla rete di transito a quella di destinazione. La frammentazione può
essere trasparente, quando i pacchetti vengono frammentati e ricomposti ad ogni cambio di rete, o non
trasparente, quando i pacchetti non vengono ricomposti fino alla destinazione finale.

Gatetway
L’internetworking transport gateway è piuttosto diffuso a livello transport ed offere servizi connessi in quasi
tutte le architetture. Poiché operano a livello transport, essi ricevono i dati dal livello application di patenza
e li consegnano al livello application d’arrivo. Possono interfacciare connessioni di trasporto con reti aventi
diversi protocolli.
L’application gateway invece converte i dati a livello application e traduce la semantica dei messaggi
connettendo diversi protocolli di livello applicazione.

Routing
In una internetwork le singole reti componenti sono entità autonome e vengono chiamate AS (Autonomous
System).
Il routing complessivo è a due livelli:
- un primo livello è costuitto dall’Interior Gateway Protocol (IGP) che identifica l’algoritmo di routing Formattato: Struttura + Livello:1 + Stile numerazione:
usato da un AS al proprio interno; diversi AS possono usare diversi IGP; Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
- un secondo livello è dato dall’Exterior Gateway Protocol (EGP) che è l’algoritmo che si usa per
gestire il routing fra diversi AS; esso deve tener conto di specifiche leggi nazionali a cui vanno
adattate le decisioni di routing.

Lo strato network in Internet


Internet è una collezione di AS interconnessi. Ha una struttura flessibile, di cui fanno parte le backbone
(dorsali) principali, le reti regionali, nazionali e locali.

IP
L’IP è un protocollo datagram:
- riceve i dati dal livello transport e li incapsula in pacchetti; Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- instrada i pacchetti sulla subnet, eventualmente frammentandoli lungo il viaggio Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
A destinazione, riassembla i frammenti in pacchetti, estrae i dati del livello transport e infinne li consegna
Formattato: Struttura + Livello:1 + Stile numerazione:
nell’ordine in cui sono arrivati. Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
Un indirizzo IP è formato da 32 bit e codifica due cose:
- un network number, cioè un numero assegnato alla rete IP (detta network) su cui si trova Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
l’elaboratore Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- un host number, cioè un numero assegnato all’elaboratore
Formattato: Struttura + Livello:1 + Stile numerazione:
Per rappresentarlo si utilizza la notazione decimale puntata che rappresenta 4 byte. Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
di: 1,27 cm
Gli indirizzi IP devono essere univoci e per questo sono assegnati da autorità nazionali.
Per effettuare localmente dei test su un software di rete in fase di sviluppo, si utilizza la tecnica del
loopback: il pacchetto non viene inviato sulla rete ma viene elaborato come se fosse in arrivo.
Per gestire la crescente necessità di indirizzi IP, viene usata la procedura detta subnetting, dove reti interne
si presentano come una sola rete all’esterno.
L’ICMP (internet control message protocol) controlla l’operatività delle subnet.
Ci sono due tecniche per trovare un indirizzo, la prima (ARP, address resolution protocol) trova l’indirizzo di
livello data link a partire dall’indirizzo IP della destinazione, mentre la seconda (RARP, reverse addres
resolution protocol) fa l’esatto opposto: trova l’indirizzo IP di destinazione a partire da un indirizzo data
link.
La versione 6 di IP si pone come successore della versione 4 ed ha vantaggi come l’aumento del numero di
indirizzi, una maggiore efficienza nei router, un miglior supporto al traffico real time ed una maggiore
sicurezza per i dati riservati.

Il livello transport
Gestisce una conversazione diretta, cioè senza intermediari, fra sorgente e destinazione.
Il software di livello transport è presente solo sugli host, e non nei router della subnet di comunicazione.
I servizi principali offerti ai livelli superiori sono vari tipi di trasporto delle informazioni fra una transport
entity su un host e la sua peer entity su un altro host. Si tratta perlopiù di servizi affidabili orientati alla
connessione.
È possibile che ci sia una specifica della QoS (quality of service) desiderata, specie per servizi con
connessione, che include fattori come il massimo ritardo ammesso, il thoughput, il tasso d’errore tollerato e
il tipo di protezione adottata.
Le primitive a disposizione definiscono il modo di accedere ai servizi del livello.
I protocolli del livello transport assomigliano a quelli di livello data link, in quanto includono il controllo
degli errori, il controllo di flusso e il riordino dei TPDU (tranfer protocol data unit). Le principali differenze
tra il livello data link (2) e trasporto (4) sono che nel 2 vi è un singolo canale di comunicazione tra entità
paritarie, mentre nel 4 vi è l’intera subnet di comunicazione tra di esse. Il livello 2 non ha alcun servizio di
appoggio eccetto la trasmissione fisica, mentre il livello 4 usa i servizi del livello 3 (che siano affidabli o
meno). Il numero di connessioni data link è relativamente piccolo e stabile nel tempo, mentre le connessioni
trasporto sono anche molte e di numero ampiamente variabile. Le dimensioni dei frame sono stabili, quelle
dei TPDU molto più variabili.
A livello trasporto occorre indirizzare esplicitamente il destinatario ed è più complicato stabilire la
connessione. Data la capacità di memorizzazione della rete, si possono ricevere TPDU inaspettati a
destinazione: questo si può risolvere con tecniche di buffering e di controllo di flusso che comunque
richiedono un approccio differente che nel livello data link, a causa del numero molto variabile di
connessioni che si possono avere.

Gli elementi dei protocolli di trasporto

Attivazione della rete: 3-way handshaking Formattato: SpazioPrima: 12 pt


Se si vuole attivare una connessione, si deve definire la struttura dell’indirizzo di livello transport, detto
TSAP address (transport service access point address) con la forma NSAP address, informazione ha formattato: Tipo di carattere: Non Corsivo
supplementare. In internet un TSAP address ha la forma IP address: port number dove IP address è il NSAP ha formattato: Tipo di carattere: Non Corsivo
address e port number è l’informazione supplementare.
Il richiedente invia un TPDU di tipo [Link] un numero proposto come inizio della sequenza. Il
destinatario invece invia un TPDU di tipo ack contenente la conferma del numero proposto dal richiedente
e la proposta di un nuovo numero di inizio sequenza. Il richiedente infine invia un TPDU di tipo dati
contenente i primi dati del dialogo e la conferma del numero di inizio sequenza scelto dal destinatario.

Rilascio
Ci sono due tipi di rilascio: l’assimetrico, dove c’è una possibile perdita di dati in una direzione (quello
utilizzato dal sistema telefonico), e il simmetrico, dove vengono rilasciate due connessioni unidirezionali.
Per via del problema delle due armate è impossibile avere un protocollo che garantisca in modo affidabile il
rilascio tra due connessioni.
Controllo di flusso e buffering
Se il livello di trasporto dispone solo di servizi di livello 3 di tipo datagrm, l’entità sorgente (4) deve
mantenere in un buffer i TPDU spediti finché non sono confermati (come nel livello 2) e l’entità destinatario
(4) mantiene un pool di buffer globale e può perdere TPDY; il mittente ritrasmette fino a conferma.
Se i servizi network sono di tipo affidabile, se il mittente sa che il ricevente ha sempre spazio disponibile
può evitare di mantenere un buffer, altrimenti è costretto a mantenerlo, perché il destinatario potrebbe non
accettare i TPDU.
Il buffering deve gestire la variablità delle dimensioni dei TPDU: pool di buffer uguali risultano poco adatti.
Pool di buffer variabili hanno una gestione più complessa, ma sono più efficaci. Un singolo grande array
circolare per la connessione è adatto a connessioni gravose, altrimenti si ha uno spreco di spazio. Per
traffico bursty ma poco gravoso bastano buffer solo alla sorgente, mentre per traffico gravoso servono buffer
grandi a destinazione.

Multiplex
Se le connessioni di livello network sono costose da istituire, allora è conveniente convogliare molte
conversazioni transport su un’unica connessione network (upward multiplexing).
Viceversa, se si vuole ottenere una banda superiore a quella consentita a una singola connessione network,
allora si può ripartire la conversazione transport su più connessioni network (downward multiplexing).

I protocolli di trasporto Internet TCP e UDP


Il livello transport di Internet è basato su due protocolli: il TCP (transmission control protocol) e l’UDP (user
data protocol).

TCP
TCP è stato progettato per fornire un flusso di byte affidabile, da sorgente a destinazione, su una rete non
affidabile. Offre quindi un servizio realiable (affidabile) e connection oriented. Si occupa di:
- accettare i dati dal livello application e spezzettarli in segment Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- consegnarli al livello network, eventualmente ritrasmettendoli Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
Imposta un rientro di: 1,27 cm
- ricevere segmenti dal livello network e rimetterli in ordine, elminando buchi e doppioni
- infine consegnare i dati, in ordine, al livello application. Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
Il socket number costituisce il TSAP. I port number hanno 16 bit; quelli minori di 256 sono i cosiddetti well-
di: 1,27 cm
know port, riservati per i servizi standard.
Le caratteristiche più importanti sono che ogni byte del flusso TCP è numerato con un numero d’ordine a 32
bit, usato sia per il controllo di flusso che per la gestione degli ack.
TCP usa un meccanismo di sliding window di tipo go-back-n con timeout. Se questo scade, il segmento si
ritrasmette. Le dimensioni della finestra scorrevole e i valori degli ack sono espressi in numero di byte, non
in numero di segmenti.
TCP assume che, se gli ack non tornano in tempo, ciò sia dovuto a congestione della subnet piuttosto che ad
errori di trasmissione. Esso è preparato ad affrontare due tipi di problemi: la scarsità di buffer a destinazione
e, appunto, la congestione della subnet. Ciascuno dei problemi viene gestito dinamicamente da una specifica
finestra mantenuta dal mittente, la congestion window.

UDP
Fornisce un flusso di byte non affidabile utile per inviare dati in modalità senza connessione (es. client-
server).

Il livello applicazione
Nel livello applicazione vengono svolte le funzioni di utilità per l’utente.
In questo livello si trovano diverse tipologie di oggetti: protocolli si supporto a tutte le applicazioni, come il
DNS (domain name system), e protocolli si supporto ad applicazioni standardizzato, come SNMP, FTP, ha formattato: Tipo di carattere: Non Grassetto
SMTP e HTTP.
Esempi di applicazioni sulle reti sono l’email, il web, i messaggi di testo, lo streaming video, i social
network.
Nell’architettura cliente servente, l’host (servente) rimane sempre attivo con un indirizzo IP permanente; ci
si appoggia a data center per scalabilità. Il cliente invece comunica con il servente, anche in modo
intermittente, e utilizzando un indirizzo dinamico; non comunica con altri clienti.

DNS: il sistema dei nomi di dominio


Il DNS si occupa di tradurre l’indirizzo IP in un nome logico. Esso consiste di uno schema gerarchico di ha formattato: Tipo di carattere: Non Corsivo
nominazione basato sul concetto di dominio (domain), un database distribuito che lo implementa, e un
protocollo per il mantenimento e la distribuzione delle informazioni sulle corrispondenze.
Nel caso di un host, la forma del nome logico è costituita da un certo numero di sottostringhe separate da
punti, che rappresenta il cammino dalla foglia dell’albero gerarchico alla radice.

Domini
L’applicazione chiede di collegarsi ad una risorsa inviando il nome logico in una richiesta al DNS server
locale (resolver). Questo, se conosce la risposta, la invia direttamente al richiedente, altrimenti interroga a
sua volta un DNS server di livello superiore. Quando arriva la risposta, il DNS server locale la passa al
richiedente. Quando l’applicazione riceve la risposta (costituita dal numero IP della risorsa richiesta) crea
una connessione TCP con la (o spedisce segmenti UDP alla) destinazione, usando l’indirizzo IP appena
ricevuto.
Ogni dominio è responsabile dei sottodomini e fornisce il servizio DNS per gli host del dominio.

Name server
Il name server è un processo che gestisce le informazioni di corrispondenza fra nomi simbolici e indirizzi
IP.
Per ogni host del dominio esiste un resource record, detto authoritative record, gestito dal DNS server
responsabile del dominio.
Gestisce inoltre l’identità dei name server responsabili dei sottodomini inclusi nel dominio, così da poter
inviar loro le richieste che pervengono dall’alto, e l’identità del name server responsabile del dominio di
livello immediatamente superiore, così da potergli inviare le richieste che gli pervengono dal basso della
gerarchia.
Una richiesta che arriva ad un name server può viaggiare verso l’alto o verso il basso nella gerarchia. Lo
spazio di nomi è partizionato in zone, ed esistono name server principali e secondari.
La risposta viene tenuta dal server in una sua cache per un certo periodo.

Servizi internet
Un servizio internet è un’architettura software basata su un protocollo applicazione su TCP/IP. Può essere
sincrono, quando si ha un’attività simultanea tra siti basata su sessione, o asincrono, quando non richiede
un’attività simultanea.
Esistono servizi di tracciamento, di comunicazione, di cooperazione e di coordinazione.

La posta elettronica
Il sistema di posta elettronica permette la comunicazione asincrona 1-a-1 o 1-a-molti (mailing list).
Utilizza il protocollo di trasmissione RFC 821 e un formato del messaggio predefinito. C’è anche il formato
internet, caratterizzato da header e body separati da una linea vuota, che utilizza il protocollo RFC 822.
Gli indirizzi hanno la forma username@hostname, dove username è una stringa che identifica il ha formattato: Tipo di carattere: Non Corsivo
destinatario, hostname è un nome DNS o un indirizzo IP. Questo indirizzo viene fornito da un ISP (internet
service provider) o da altri che permettono di utilizzare gli stessi servizi.
La posta elettronica viene implementata in internet attraverso la cooperazione di due sottosistemi: il MUA
(mail user agent) e il MTA (mail transport agent). Il primo permette all’utente di comporre, ricevere, leggere,
salvare o eliminare messaggi, mentre il secondo si occupa di trasportarli fino a destinazione.
Corrispondentemente, sono definiti due protocolli principali per la posta elettronica: l’SMTP (simple mail
transfer protocol) per il trasporto di messaggi dal MUA di origine ad un MTA, e il POP3 (post office
protocol v3) per la consegna di un messaggio da parte di un MTA al MUA di destinazione.
Recentemente sono stati introdotti altri protocolli più sofisticati, l’IMAP (interactive mail access protocol) e
il DMSP (distributed mail system protocol).
Nel DNS ci sono opportuni record detti MX (mail exchange) che si occupano di indicare quale host
effettivamente fa da server SMTP per un dominio.
Il MIME (multipurpose internet mail extension) permette di inviare messaggi di posta contentente paroli di
linguaggi diversi e informazioni di qualsiasi tipo (per esempio multimediale).
Nel trasferimento di messaggi SMTP, la posta viene trasferita quando la macchina mittente ha stabilito una
connessione TCP alla porta 25 della macchina destinataria. Si tratta di un protocollo basato su ASCII.
Stabilita la connessione, opera come client e attende il destinatario server.
Il sistema di chat è un servizio di comunicazione sincrona punto a punto broadcast.

SMTP
SMTP è utilizzato per inviare e-mail da un server di posta elettronica a un altro. Il processo di invio di un'e- ha formattato: Tipo di carattere: Non Grassetto
mail utilizza una connessione tra il server di posta elettronica dell'utente che invia l'e-mail (chiamato server ha formattato: Tipo di carattere: Non Grassetto
SMTP "client") e il server di posta elettronica del destinatario (chiamato server SMTP "server"). Il server
SMTP client utilizza il protocollo SMTP per inviare l'e-mail al server SMTP server, che a sua volta utilizza il
protocollo SMTP per inoltrare l'e-mail al destinatario.
IMAP
L’IMAP (interactive mail access protocol) è più sofisticato, per la gestione da diversi computer.
IMAP è utilizzato per recuperare e-mail da un server di posta elettronica. Il client di posta elettronica ha formattato: Tipo di carattere: Non Grassetto
utilizza il protocollo IMAP per connettersi al server di posta elettronica e recuperare le e-mail. IMAP
consente anche di gestire le cartelle di posta, creare cartelle, eliminare e-mail, spostare e-mail tra cartelle e
altre operazioni. A differenza di SMTP che è un protocollo di trasporto, IMAP è un protocollo di accesso ha formattato: Tipo di carattere: Non Grassetto
alla posta. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
POP3
ha formattato: Tipo di carattere: Non Grassetto
Il POP (post office protocol) è un protocollo di lettura della posta, basato su comandi di connessione,
disconnessione, recupero messaggi e cancellazione.
POP3 (Post Office Protocol version 3) è utilizzato per recuperare le e-mail dal server di posta elettronica.
POP3 è simile a IMAP, ma ha alcune limitazioni nella gestione della posta.

Servizi multimediali
Documenti multimediali interattivi integrano diverse modalità di comunicazione e consentono l’interazione
con l’utente.
Il servizio WWW usa formati HTML, Java e JavaScript.
I segnali audio possono essere trasformati da analogici a digitali, ed essere compressi. MPEG (moving
picture expert group) è una codifica di compressione audio-video.
Nello streaming audio, vengono utilizzate tecniche di buffering da parte del lettore multimediale, che
memorizza parte del flusso audio proveniente dal server.
Per quanto riguarda la voce, esiste la pila di protocolli H.323 (ITU), di cui fa parte, tra l’altro, la qualità del
servizio. Inoltre ci sono altri protocolli (IETF) SIP (session initiation protocol), che vedono un modulo
coordinato con altre applicazioni, e i numeri di telefono definiti come URL.
Formati come il JPEG (joint photographic experts group) sono utilizzati per la compressione di immagini
statiche (foto).

World Wide Web


Il browser è il programma interattivo per la visualizzazione di informazioni dal www. Queste informazioni
permettono l’accesso ad altre informazioni tramite i collegamenti ipertestuali.
Il www è un sistema ipermediale distribuito ad accesso interattivo.
Il formato di un URL (uniform resource locator) è protocollo - nome dominio - percorso. ha formattato: Tipo di carattere: Non Corsivo

Il protocollo HTTP
Il protocollo http è client-server, senza connessione, ed è progettato per la distribuzione rapida di
documenti ipertestuali. Inoltre non c’è memoria di sessione (stateless). ha formattato: Tipo di carattere: (Predefinito) Spectral,
Il round trip time (RTT) è il tempo di invio e ritorno di un piccolo pacchetto da client a server. 11 pt, Non Grassetto
Formattato: Allineato a sinistra, Controlla righe isolate,
Connessioni HTTP non persistenti Connessioni HTTP persistenti Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
Richiedono almeno 2 RTT per oggetto Richiedono almeno un RTT per tutti gli oggetti di bordo), Tra : (Nessun bordo)

riferimento Formattato: Allineato a sinistra, Controlla righe isolate


Formattato: Controlla righe isolate, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
- il browser può aprire connessioni TCP parallele - il server lascia la connessione aperta dopo aver Formattato: Struttura + Livello:1 + Stile numerazione:
per accelerare il recupero di oggetti spedito la risposta Punto elenco + Allinea a: 0,25 cm + Imposta un rientro
di: 0,75 cm, Controlla righe isolate, Bordo: Superiore:
- richieste HTTP successive dallo stesso cliente (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
sono inviate sulla connessione aperta (Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
- il client manda le richiesta appena incontra un
oggetto riferito

Overhead S.O. per ogni connessione TCP Possibili migliori prestazioni Formattato: Controlla righe isolate
Formattato: Rientro: Sinistro: 0 cm, Prima riga: 0 cm,
La prima parola sulla linea di richiesta rappresenta il metodo, cioè il comando da eseguire su un oggetto
Controlla righe isolate, Bordo: Superiore: (Nessun
generico. Esempi di metodi sono GET, POST, PUT. Per ogni richiesta viene dato un codice di risposta di 3 bordo), Inferiore: (Nessun bordo), A sinistra: (Nessun
cifre, di cui la prima rappresenta la categoria. bordo), A destra: (Nessun bordo), Tra : (Nessun bordo)

Il caching può avvenire nel client o anche in altri livelli, per esempio il proxy.
Se le pagine non contengono file HTML, ma altri tipi di file, occorre ricorrere ad estensioni del browser. Un
plugin è un modulo di codice prelevato dal browser, installato ed eseguito nello stesso; a fine utilizzo viene
rimosso.
Per quanto riguarda invece il lato server, il front end, cioè l’interfaccia per accettare richieste multiple, fa
uso di moduli (thread) per elaborarle singolarmente. Chiaramente esiste concorrenza tra i moduli, e per
questo vi è anche un controllo dei conflitti. Inoltre si sfrutta una memoria cache per i file usati più
recentemente.
I cookies compensano l’assenza di stato, cioè di sessione, del protocollo HTTP. Sono piccoli file che
vengono archiviati nel client che memorizzano la storia delle richieste fatte al server da parte di ciascun
utente.

Documenti web

Documenti web statici


I documenti web statici sono file associati ad un web server, ed hanno un contenuto stabilito dall’autore in
modo statico. Utilizzano il linguaggio HTML e forniscono una risposta stabile.
I form permettono di prendere una serie di informazioni dall’utente una volta che sono state inserite in
campi, consentendo quindi di inviarle come parametri ad altre pagine HTML.

Documenti web dinamici


I documenti web dinamici non hanno una forma predefinita: vengono creati dal web server a richiesta del
browser, tramite un programma applicativo eseguito nel server. Forniscono una risposta dipendente dal
tempo di richiesta. Si inseriscono questi piccoli script (in linguaggi com PHP) nelle pagine HTML.

Documenti web attivi


I documenti web attivi invece non sono completamente specificati dal web server, ma possono calcolarle e
visualizzare valori a richiesta del browser, quindi direttamente dal client. Un linguaggio noto per ottenere
questo scopo è JavaScript.
Nei documenti dinamici l’informazione è stabilita dinamicamente al momento della creazione, dopo cui
però non varia: non è possibile avere animazioni di alcun tipo. I documenti attivi invece offrono un continuo
aggiornamento dell’informazione.
Differenze tra documenti web

Vantaggi Svantaggi ha formattato: Tipo di carattere: (Predefinito) Spectral,


11 pt, Non Grassetto
Statici semplicità, affidabilità, scarsa flessibilità, cambiamenti Formattato: Controlla righe isolate, Bordo: Superiore:
prestazioni onerosi (tempo) (Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)
Dinamici informazioni sullo stato maggior costo, informazioni in
ha formattato: Tipo di carattere: (Predefinito) Spectral,
indistinguibili dal client (dagli evoluzione non visualizzabili,
11 pt, Non Grassetto
statici) obsolescenza delle informazioni,
Formattato: Allineato a sinistra, Controlla righe isolate,
potenza di elaborazione del Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
server, tempo di accesso, non si fa bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
caching
ha formattato: Tipo di carattere: (Predefinito) Spectral,
11 pt, Non Grassetto
Attivi aggiornamento continuo delle maggior costo di creazione, uso e
Formattato: Allineato a sinistra, Controlla righe isolate,
informazioni, caching messa a punto (test); potenza di
Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
elaborazione del client; sicurezza bordo), A sinistra: (Nessun bordo), A destra: (Nessun
bordo), Tra : (Nessun bordo)
ha formattato: Tipo di carattere: (Predefinito) Spectral,
Implementazione di documenti web
11 pt, Non Grassetto
I gateway programs (lato server) si comportano come canali tra HTTP server e altre risorse locali. Le
Formattato: Allineato a sinistra, Controlla righe isolate,
interazioni server-gateway program sono definite in linguaggio script CGI. Bordo: Superiore: (Nessun bordo), Inferiore: (Nessun
bordo), A sinistra: (Nessun bordo), A destra: (Nessun
CGI (common gateway interface) è un linguaggio di programmazione standard per comunicazione HTTP
bordo), Tra : (Nessun bordo)
server e programmi gateway server side. Per la realizzazione di uno script è possibile utilizzare un
linguaggio di programmazione standard, come C o Java, o un linguaggio script, come JavaScript o Python.
CGI specifica le interazioni fra server e applicazione che implementa un documento dinamico; si tratta di
uno schema generale, i dettagli sono lasciati al programmatore.
Il browser non effettua cache di documenti dinamici. Un programma CGI può avere parametri, e il server
passa gli argomenti.
L’AJAX (asynchronous javascript and xml) vede l’uso di varie tecnologie combinate (HTML + CSS + XML +
JavaScript …) ed è alla base del web 2.0, interattivo e dinamico rispetto alla staticità del precente.

Name services
I name service servono a creare un’applicazione distribuita offrendo un servizio di denominazione. Vengono
usati da processi (client) per ottenere informazioni (attributi) di oggetti e risorse, dato il loro nome.
Un esempio di name service è il DNS. In quel caso, il nome di dominio funge da nome da risolvere in
indirizzo IP.
L’URL (uniform resource locator) è un caso particolare di URI (uniform resource identifier).
L’URC (uniform resource characteristics) descrive l’oggetto con attributi e permette la ricerca di risorse nel
web tramite tali; è un sottoinsieme di URN (uniform resource name) che fornisce un nome persistente anche
in caso di rilocazione della risorsa.
Un name service contiene uno o più contesti di denominazione, che consistono in un’insieme di
associazioni (binding) da nomi testuali ad attributi di oggetti.
I requisiti generali di un name service sono espandiblità, scalabilità ed eterogeneità.
La navigazione è il processo di localizzazione dei dati denominati cercando fra i server, realizzato dal sw di
risoluzione del processo. Può essere iterativa, multicast o controllata dal server; in quest’ultimo caso si
distinguono le varianti ricorsiva e non ricorsiva. Si utilizza anche caching per aumentare prestazioni ed
affidabilità.
L’attuale implementazione del DNS si basa su partizionamento gerarchico della base dei nomi, replicazione ha formattato: Tipo di carattere: Non Grassetto
dei dati di denominazione e caching. ha formattato: Tipo di carattere: Non Grassetto
Il BIND (berkeley internet name domain) è un’implementazione del DNS per ambienti BSD Unix. I client ha formattato: Tipo di carattere: Non Grassetto
hanno una libreria resolver, i server hanno un demone per la denominazione. Il DNS che offre è abbastanza ha formattato: Tipo di carattere: Non Grassetto
efficiente e supporta il mail service in modo trasparente, ma è rigido e difficilmente modificabile. ha formattato: Tipo di carattere: Non Grassetto

Directory service e discovery service


Il directory service, dato un attributo, ricava il nome.
Il discovery service è un servizio directory che registra i servizi offerti in un ambiente di rete spontaneo. La
sua caratteristica principale è la dinamicità.

Esempio: GNS - global name service


Offre funzioni per la localizzazione delle risorse, l’indirizzamento mail, e l’autenticazione. Ha come obiettivi
la gestione di uno spazio di nomi molto grande ed eterogeneo, e la gestione di cambiamenti della struttura. ha formattato: Tipo di carattere: Non Grassetto

Si ha un partizionamento dell’albero delle directory in molti server, replicazione delle partizioni e caching. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Esempio: X.500
Si tratta di standard ITU e ISO, nel livello applicazione del modello OSI. Fornisce il servizio di accesso ad ha formattato: Tipo di carattere: Non Grassetto
informazioni di entità “reali”; si può usare come name service e come directory service.
Si caratterizza di due componenti principali: il DIT (directory information tree), cioè l’albero dei nomi, e il ha formattato: Tipo di carattere: Non Grassetto
DIB (directory information base), cioè l’intera struttura con tutta l’informazione. ha formattato: Tipo di carattere: Non Grassetto

Gestione delle reti


I software di gestione di rete controllano le componenti della rete, raccolgono informazioni sullo stato e
derivano statistiche.

Monitoring
Il controllo basato su monitoring fa uso del protocollo client (manager) - server (agent) del livello
applicazione. In caso di guasto hw che interrompe la comunicazione, qualsiasi livello lo può rilevare, ma
l’uso degli stessi protocolli di livello trasporto fa sì che il monitor osservi gli stessi ritardi degli altri
pacchetti applicativi, rilevando eventuali ritardi anonimi.
L’SNMP (simple network management protocol) definisce l’interazione fra manager e agent. I messaggi
sono in codifica ANS (abstract syntax notation).

Paradigma fetch-store
Si basa sulle due operazioni basilari fetch e store. La prima recupera il valore da una componente, la seconda
memorizza un valore in una componente. Ogni oggetto ha un nome unico e un valore (stato).
Il MIB (management information base) è l’insieme di tutte le informaizoni (oggetti) utilizzate da SNMP. Si
ha quindi una sperazione fra protocollo di comunicazione e definizione degli oggetti.
SNMP non specifica le variabili MIB, ma solo il formato e la codifica. Questo garantisce flessibilità,
adattabilità e modificabilità.
Sicurezza
La sicurezza consiste nella protezione delle risorse e delle informazioni.
Si distinguono poi vari sottocampi:
- l’autenticazione verifica l’autenticità, ovvero l’identità dell’utente Formattato: Struttura + Livello:1 + Stile numerazione:
Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- l’autorizzazione specifica le azioni permesse all’utente
di: 1,27 cm
- la riservatezza evita l’accesso non autorizzato (lettura) alle informazioni
- l’integrità evita la modifica non autorizzata (scrittura) delle informazioni
- la disponibilità garantisce l’accesso e l’uso delle risorse con continuità
- la paternità garantisce che il mittente non ripudi il messaggio
Orange book è uno standard per sistemi aperti; garantisce riservatezza dei dati e mandatory access control. ha formattato: Tipo di carattere: Non Grassetto
La struttura del progetto è incrementale: ogni livello ingloba gli elementi di sicurezza dei precedenti e ve ne ha formattato: Tipo di carattere: Non Grassetto
aggiunge di specifici per quel livello.
POSIX è uno standard per realizzare applicazioni portabili. Vengono definite interfacce per la gestione delle ha formattato: Tipo di carattere: Non Grassetto
informazioni di sicurezza. Stabilisce e controlla i diritti di accesso alle risorse. ha formattato: Tipo di carattere: Non Grassetto
Nel modello client/server, la sicurezza è basata sul sospetto reciproco: i messaggi inviati e le autorizzazioni ha formattato: Tipo di carattere: Non Grassetto
vengono usate una volta solo per evitare/limitare le intrusioni.

Crittografia
Il cifrario di sostituzione consiste in una permutazione sull’alfabeto dal testo in chiaro. È una semplice ha formattato: Tipo di carattere: Non Grassetto
trasformazione di simboli (256), non cambia il loro ordine. La chiave di cifratura è la tabella di ha formattato: Tipo di carattere: Non Grassetto
corrispondenza dei simboli. ha formattato: Tipo di carattere: Non Grassetto
Nel cifrario di trasposizione viene stabilito un periodo P di trasposizione, si sceglie una permutazione su ha formattato: Tipo di carattere: Non Grassetto
[1,P] e si fa corrispondere alla successione di simboli 1, 2, …, P la sua permutazione. I simboli non cambiano, ha formattato: Tipo di carattere: Non Grassetto
cambia il loro ordine: il testo risulta diviso in blocchi di P byte.
Ci sono diversi modi per crittografare un messaggio. La codifica si baserà su chiavi ed algoritmi, tra cui:
- a chiave segreta (algoritmi simmetrici) ha formattato: Tipo di carattere: Non Grassetto

- a chiave pubblica (algoritmi asimmetrici) Formattato: Struttura + Livello:1 + Stile numerazione:


Punto elenco + Allinea a: 0,63 cm + Imposta un rientro
- con funzioni hash di: 1,27 cm
Il principio di Kerckhoff stabilire che è la chiave a dover essere segreta, non l’algoritmo. ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Crittografia a chiave segreta
Nella crittografia a chiave segreta, A e B condividono la chiave segreta (simmetrica).
Algoritmi a chiave simmetrica sono il DES (data encryption standard), e l’AES (advanced encryption ha formattato: Tipo di carattere: Non Grassetto
standard). Il primo è molto usato ma non più sicuro, così è evoluto nel 3 DES, con cifratura tripla. Il secondo ha formattato: Tipo di carattere: Non Grassetto
è il successore di DES e può avere chiavi fino a 256 bit; usa dei blocchi che mischiano sostituzioni e
rotazioni ed è molto più resistente rispetto al predecessore agli attacchi di decifratura con forza bruta.

Crittografia a chiave pubblica


Nella crittografia a chiave pubblica, il messaggio viene cifrato utilizzando la chiave pubblica e può essere
decifrato solo utilizzando la chiave privata corrispondente. Questo tipo di crittografia consente di
comunicare in modo sicuro senza la necessità di condividere una chiave segreta tra le parti interessate.
La crittografia a chiave pubblica è più costosa e più lenta rispetto alla cifratura simmetrica.
La cifratura tramite RSA (rivest shamire adleman) è molto diffusa e basa la sua sicurezza sulla difficoltà di ha formattato: Tipo di carattere: Non Grassetto
fattorizzare grandi numeri.

Autenticazione e firma digitale


La firma digitale è un meccanismo di autenticazione del mittente di un messaggio, il quale codifica con
chiave privata.
Per evitare copie dei messaggi, si codifica il messaggio insieme alla marca temporale (timestamp) con data
ed ora della creazione del messaggio.
Per assicurare sia l’autenticazione del mittente che la privatezza del messaggio si possono usare due livelli di
codifica.

Sicurezza delle comunicazioni


Il filtro di pacchetti previene il libero accesso a host o servizi: evita che i pacchetti passino da una rete
all’altra tramite il router. La configurazione specifica a quali pacchetti si applica il filtro.
Il firewall è un filtro dei pacchetti utilizzato per proteggere una rete di una organizzazione da traffico
internet qualsiasi e indesiderato.

IPsec
IPsec aggiunge sicurezza ed autenticazione ad IP. ha formattato: Tipo di carattere: Non Grassetto

È basato su crittografia a chiave simmetrica. Le chiavi segrete sono configurate per pacchetti tra utenti ha formattato: Tipo di carattere: Non Grassetto
finali. Aggiunge un’intestazione AH inserita dopo IP in modalità di trasporto. ha formattato: Tipo di carattere: Non Grassetto

Si può utilizzare anche nella modalità tunnel. ha formattato: Tipo di carattere: Non Grassetto

L’ESP (encapsulating security payload) espande AH e fornisce segretezza e integrità.

Sicurezza wireless
I segnali wireless vengono trasmessi a tutti i ricevitori vicini, per questo si rende necessaria una password di
rete per i client o per il server che intendono accedervi.
I client eseguono l’autenticazione per l’infrastruttura e impostano una chiave di sessione, che viene
utilizzata per crittografare i pacchetti.
C’è un protocollo hadshake per l’impostazione della chiave di sessione 802.11i. Client e AP condividono una
chiave principale (password). Si usa inoltre un protocollo di integrità MIC (message integrity check) basato
sulla chiave di sessione, come una firma (autenticazione).
Protocolli per la distribuzione delle chiavi sono TKIP (temporary key integrity protocol) usato in WEP, ma
violato, e CCMP (counter mode with cipher block changing message authentication code protocol), che
invece è basato su AES con una chiave e una dimensione del blocco di 128 bit.

Sicurezza email
Il PGP (pretty good privacy) è un cifrario a blocchi chiamato IDEA (international encryption algorithm) con ha formattato: Tipo di carattere: Non Grassetto
chiave a 128 bit. Utilizza la crittografia a chiave pubblica e simmetrica per la segretezza e le firme della
posta elettronica, gestendo anche le chiavi stesse.

Sicurezza web
Un’applicazione della sicurezza web è la denominazione sicura per il DNS. Lo spoofing (falsificazione di
identità) della risoluzione DNS infatti, porta la persona A a comunicare con la persona C anziché con la
persona B come dovrebbe. DNSsec aggiunge una forte autenticazione al DNS per evitare lo spoofing; anche ha formattato: Tipo di carattere: Non Grassetto
SSL (secure sockets layer) contribuisce.

Privacy e anonimato
L’anonimato via mail si ottiene tramite re-mailer anonimi che nascondono l’identità del mittente,
differentemente da PGP, che invece nasconde solo i contenuti dei messaggi. Viene usata una catena per un
maggior anonimato.

Applicazioni su reti

Applicazioni peer-to-peer
Si tratta di un non always-on server: i peers sono connessi in modo intermittente e cambiano indirizzo IP.
Quando ci sono tanti client (peer) che intendono scaricare qualcosa da un server, la loro velocità di download
non sarà ottimale in quanto la banda di upload disponibile al server sarà divisa tra tutti. A questo si può
ovviare o aumentando la velocità di upload del server, oppure facendo in modo che i peer che hanno già
scaricato parti dei dati li possano condividere con gli altri, in modo da sfruttare tutta la banda (upload e ha formattato: Tipo di carattere: Non Grassetto
download) totale disponibile anziché soltanto la velocità di upload del singolo server.
I file vengono distribuiti in frazioni di dati, chunk, che vengono continuamente scambiati tramite upload e ha formattato: Tipo di carattere: Non Grassetto, Non
download fra tutti i peer, che hanno ciascuno un diverso sottoinsieme di chunk. Corsivo

Distribuzione dei contenuti (CDN)


Il traffico video ha avuto una crescita costante negli ultimi decenni, comportando un maggior consumo della
banda su internet.
Chiaramente, con un numero così ingente di richieste, il modello con un unico grande servente non può
funzionare, ed è quindi necessaria la scalabilità, creando un’infrastruttura distribuita a livello di ha formattato: Tipo di carattere: Non Grassetto
applicazione. ha formattato: Tipo di carattere: Non Grassetto
Vengono usate tecniche di ottimizzazione nelle immagini e nei fotogrammi, come la ridondanza, per ridurre
il numero di pixel (e cioè di bit) usati per la codifica dell’immagine.
Per quanto riguarda lo streaming multimediale, esiste la tecnica di streaming DASH (dynamic adaptive ha formattato: Tipo di carattere: Non Grassetto
streaming over http), anche detta MPEG-DASH. Il server partiziona il file video in un insieme di chunks, ha formattato: Tipo di carattere: Non Grassetto
ognuno memorizzato e codificato con diversa velocità; il manifest file fornisce gli url dei diversi chunk. Il ha formattato: Tipo di carattere: Non Grassetto, Non
client invece misura periodicamente la banda server-to-client e consulta il manifest, richiedendo un chunk Corsivo

alla volta, scelto tra quelli con la massiva velocità di codifica disponibile. Il client quindi determina quando
ricevere un chunk, quale velocità di codifica richiedere e dove richiederlo (server più vicino a lui).
La popolarità delle pagine web segue circa la legge di Zipf: c’è molto traffico su pochi siti. ha formattato: Tipo di carattere: Non Grassetto, Non
Corsivo
La server farm è un insieme di serventi che appare al client come unico server. Si utilizza un front end per
ha formattato: Tipo di carattere: Non Grassetto
bilanciare il carico tra server, e un DNS per distribuire le richieste.
ha formattato: Tipo di carattere: Non Grassetto
Il proxy web è un intermediario per cache e condivisione. Riduce il traffico e il tempo di risposta, può gestire
ha formattato: Tipo di carattere: Non Grassetto
richieste multiple e filtrare i contenuti.
ha formattato: Tipo di carattere: Non Grassetto
Un’altra soluzione è quella distribuita, che consiste nel memorizzare copie multiple dei video in molti server
ha formattato: Tipo di carattere: Non Grassetto
distribuiti geograficamente, guidando il client ad usare il nodo più vicino a lui. Si tratta della CDN (content
ha formattato: Tipo di carattere: Non Grassetto
distribution network).
ha formattato: Tipo di carattere: Non Grassetto
ha formattato: Tipo di carattere: Non Grassetto
Multimedia streaming
Per non trasmettere tutto il video prima della riproduzione sul client, viene inviato un metafile che lo
denomina, che viene poi passato al lettore multimediale che chiede al server multimediale il file in
questione.
Il multimedia streaming in tempo reale, in altre parole il live media, consente di usufruire di radio o tv
tramite internet.
È possibile adottare lo streaming multicast dello stesso contenuto a molti utenti tramite UDP, trattando ha formattato: Tipo di carattere: Non Grassetto
però la perdita di pacchetti. In alternativa, si può usare TCP senza multicast, con una copia del contenuto
per ogni client.
Il VoIP è una modalità con cui è possibile la telefonia tramite internet. In generale viene preferito UDP
perché è il protocollo con meno latenza.

Accesso cellulare a internet


La telefonia mobile ha visto più generazioni. La prima consisteva soltanto in segnale voce analogico; nella ha formattato: Tipo di carattere: Non Grassetto
seconda invece si comunica in digitale; nella terza (3G) vengono introdotti anche i dati, e poi seguono il 4G e ha formattato: Tipo di carattere: Non Grassetto
il 5G che sono ulteriori evoluzioni. ha formattato: Tipo di carattere: Non Grassetto
Il sistema è organizzato in celle, ciascuna risuddivisa in celle più piccole. In ogni cella si trovano un insieme ha formattato: Tipo di carattere: Non Grassetto
di frequenza diverse dalle celle adiacenti. Vengono gestite circa 10-15 chiamate per ogni frequenza. ha formattato: Tipo di carattere: Non Grassetto

2G
In questa generazione, ogni cella ha una stazione base collegata ad un dispositivo MSC (mobile switching
center).
Si ha un handoff quando vi è uno spostamento di un telefono fra le celle.
La voce digitale offre una maggiore sicurezza è la possibilità di inviare messaggi di testo, ma non esistono
ancora standard unici.

3G
L’architettura di rete per i telefoni cellulari, che sfrutta le sim card al loro interno, si chiama GSM. È
composta da VLR (visitor location register), ossia un database per ogni cella, e da HLR (home location
register), cioè un database con l’ultima posizione nota.
Il 3G introduce un modello dove il traffico dati è superiore al traffico voce, e permette l’accesso ad internet.

4G - LTE
Il 4G LTE (long term evolution) offre banda larga, ubiquità, riduzione del costo per bit trasferito, e gestione
dinamica delle risorse, oltre al multiplexing delle frequenze.
Le celle sono di forma irregolare, anche sovrapposte; si tendono a sviluppare celle piccole e dense.

5G
Il 5G cerca di sopperire alle necessità di un traffico dati enorme e in continua crescita, dell’avvento dell’IoT
e della realtà virtuale aumentata, ed in generale a maggiori requisiti di QoS.
Si tratta di un’architettura basata sui servizi, offerti tramite interfacce di un framework comune alle funzioni
che li possono usare. Si utilizza NRF (network repository functions) per scoprire i servizi offerti.
Comunicazione
IP multicast
Si tratta di una comunicazione a gruppi: un mittente invia un messaggio multicast a più destinatari. ha formattato: Tipo di carattere: Non Grassetto

Ogni host può appartenere a vari gruppi, quando un insieme di processi ha socket nel gruppo. È possibile
inviare al gruppo anche senza appartenervi.
Il TTL (time to live) è il limite al numero di passi tramite router nel cammino.
Gli indirizzi possono essere permanenti (anche vuoti) o temporanei (esistono solo se creati, eliminati se
vuoti).
I guasti possibili sono ereditati da UDP.

Primitive
La comunicazione può essere sincrona o asincrona, e le primitive bloccanti o non bloccanti.
Vantaggi e svantaggi dei due tipi di primitive:
❖ non bloccanti Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
➢ flessibilità
Imposta un rientro di: 1,27 cm
➢ possibilità di prevedere la durata
Formattato: SpazioDopo: 0 pt, Struttura + Livello:2 +
- possibile accesso multiplo all’area messaggi Stile numerazione: Punto elenco + Allinea a: 1,9 cm +
- impredicibilità dello stato dell’altro Imposta un rientro di: 2,54 cm

- testing più complesso Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +


Stile numerazione: Punto elenco + Allinea a: 1,9 cm +
❖ bloccanti Imposta un rientro di: 2,54 cm
➢ sicurezza Formattato: SpazioDopo: 0 pt, Struttura + Livello:1 +
- impossibilità di prevedere la durata Stile numerazione: Punto elenco + Allinea a: 0,63 cm +
- limite al grado di parallelismo Imposta un rientro di: 1,27 cm, Bordo: Superiore:
(Nessun bordo), Inferiore: (Nessun bordo), A sinistra:
(Nessun bordo), A destra: (Nessun bordo), Tra : (Nessun
bordo)

Potrebbero piacerti anche