Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Reti di Elaboratori, Dispense di Reti Di Calcolatori

Riassunto dei libri: - Reti di Calcolatori ed Internet, un approccio top-down - Computer Networking, a top-down approach (Sixth Edition) ROSS | KUROSE

Tipologia: Dispense

2015/2016

In vendita dal 18/01/2016

MicAra
MicAra 🇮🇹

4.5

(6)

15 documenti

1 / 209

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Reti di Elaboratori
Michael Aratari
11 gennaio 2016
Indice
I Internet e reti di calcolatori 9
1 Cos’`e Internet? 9
1.1 Gliingranaggidellarete ................................ 9
1.2 Descrizionedeiservizi ................................. 10
1.3 Cos`eunprotocollo? .................................. 11
2 Ai confini della rete 12
2.1 Programmi Client e Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2 Leretidiaccesso .................................... 12
2.2.1 Accessoresidenziale............................... 13
2.2.2 Accessoaziendale................................ 14
2.2.3 AccessoWireless ................................ 14
2.3 Mezzitrasmissivi .................................... 15
2.3.1 Doppinointrecciato............................... 15
2.3.2 Cavocoassiale.................................. 16
2.3.3 Fibraottica ................................... 16
2.3.4 Canali radio terrestri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 Il nucleo della rete 17
3.1 Commutazione di pacchetto (Packet Switching) . . . . . . . . . . . . . . . . . . . 17
3.1.1 Trasmissione store-and-forward . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.2 Ritardi di coda e perdita dei pacchetti . . . . . . . . . . . . . . . . . . . . 18
3.1.3 Forwarding Tables e Routing Protocols . . . . . . . . . . . . . . . . . . . . 19
3.2 Commutazione di circuito (Circuit Switching) . . . . . . . . . . . . . . . . . . . . 19
3.2.1 Multiplexing nelle reti a commutazione di circuito . . . . . . . . . . . . . . 20
3.3 Packet Switching VS Circuit Switching . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4 ISPedorsaliInternet.................................. 23
4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 24
4.1 Panoramica sul ritardo nelle reti a commutazione di pacchetto . . . . . . . . . . . 25
4.2 Tipidiritardo...................................... 25
4.2.1 Ritardo di elaborazione (Processing Delay) . . . . . . . . . . . . . . . . . . 25
4.2.2 Ritardo di accodamento (Queuing delay) . . . . . . . . . . . . . . . . . . . 25
4.2.3 Ritardo di trasmissione (Transmission Delay) . . . . . . . . . . . . . . . . 26
4.2.4 Ritardo di propagazione (Propagation Delay) . . . . . . . . . . . . . . . . 26
4.2.5 Confronto dei ritardi di trasmissione e i ritardi di propagazione . . . . . . . 26
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Anteprima parziale del testo

Scarica Reti di Elaboratori e più Dispense in PDF di Reti Di Calcolatori solo su Docsity!

Reti di Elaboratori

 - 11 gennaio Michael Aratari 
  • I Internet e reti di calcolatori Indice
  • 1 Cos’`e Internet?
    • 1.1 Gli ingranaggi della rete
    • 1.2 Descrizione dei servizi
    • 1.3 Cos’`e un protocollo?
  • 2 Ai confini della rete
    • 2.1 Programmi Client e Server
    • 2.2 Le reti di accesso
      • 2.2.1 Accesso residenziale
      • 2.2.2 Accesso aziendale
      • 2.2.3 Accesso Wireless
    • 2.3 Mezzi trasmissivi
      • 2.3.1 Doppino intrecciato
      • 2.3.2 Cavo coassiale
      • 2.3.3 Fibra ottica
      • 2.3.4 Canali radio terrestri
  • 3 Il nucleo della rete
    • 3.1 Commutazione di pacchetto (Packet Switching)
      • 3.1.1 Trasmissione store-and-forward
      • 3.1.2 Ritardi di coda e perdita dei pacchetti
      • 3.1.3 Forwarding Tables e Routing Protocols
    • 3.2 Commutazione di circuito (Circuit Switching)
      • 3.2.1 Multiplexing nelle reti a commutazione di circuito
    • 3.3 Packet Switching VS Circuit Switching
    • 3.4 ISP e dorsali Internet
  • 4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto
    • 4.1 Panoramica sul ritardo nelle reti a commutazione di pacchetto
    • 4.2 Tipi di ritardo
      • 4.2.1 Ritardo di elaborazione (Processing Delay)
      • 4.2.2 Ritardo di accodamento (Queuing delay)
      • 4.2.3 Ritardo di trasmissione (Transmission Delay)
      • 4.2.4 Ritardo di propagazione (Propagation Delay)
      • 4.2.5 Confronto dei ritardi di trasmissione e i ritardi di propagazione
    • 4.3 Ritardo di accomodamento e perdita di pacchetti
      • 4.3.1 Ritardo di accomodamento
      • 4.3.2 Perdita di pacchetti
    • 4.4 Ritardo end-to-end
      • 4.4.1 Sistemi terminali, applicazioni e altri ritardi
    • 4.5 Throughput nelle reti di calcolatori
  • 5 Livelli di protocollo e loro modelli di servizio
    • 5.1 Architettura a livelli
      • 5.1.1 Stratificazione di protocolli
      • 5.1.2 Livello di Applicazione
      • 5.1.3 Livello di Trasporto
      • 5.1.4 Livello di Rete
      • 5.1.5 Livello di Link
      • 5.1.6 Livello Fisico
      • 5.1.7 Modello OSI
    • 5.2 Incapsulamento
  • 6 Reti sotto attacco
    • 6.1 Malware installati sugli host tramite Internet
    • 6.2 Attacchi ai server e all’infrastruttura di rete
    • 6.3 Analisi dei pacchetti
    • 6.4 Mascheramento
    • 6.5 Cancellazione e modifica dei messaggi
  • II Livello di applicazione
  • 1 I principi delle applicazioni di rete
    • 1.1 Architetture delle applicazioni della rete
    • 1.2 Processi comunicanti
      • 1.2.1 Processi Client e Server
      • 1.2.2 L’interfaccia tra il processo e l’applicazione di rete
    • 1.3 I servizi di trasporto disponibili per le applicazioni
      • 1.3.1 Trasferimento dati affidabile
      • 1.3.2 Throughput
      • 1.3.3 Temporizzazione
      • 1.3.4 Sicurezza
    • 1.4 Servizi di trasporto offerti da Internet
      • 1.4.1 Servizi di TCP
      • 1.4.2 Servizi di UDP
      • 1.4.3 Servizi non forniti dai protocolli di trasporto Internet
      • 1.4.4 Indirizzamento
    • 1.5 Protocolli a livello di applicazione
    • 1.6 Applicazioni di rete trattate nel testo
  • 2 Web e HTTP
    • 2.1 Panoramica su HTTP
    • 2.2 Connessioni Persistenti e non persistenti
      • 2.2.1 HTTP con connessioni non persistenti
      • 2.2.2 HTTP con connessioni persistenti
    • 2.3 Formato dei messaggi HTTP
      • 2.3.1 Messaggio di richiesta HTTP
      • 2.3.2 Messaggio di risposta HTTP
    • 2.4 Interazione utente-server: i cookie
    • 2.5 Caching web
    • 2.6 GET condizionale
  • 3 Trasferimento di file: FTP
    • 3.1 Comandi e risposte FTP
  • 4 Posta elettronica in Internet
    • 4.1 SMTP
    • 4.2 Confronto con HTTP
    • 4.3 Formati dei messaggi di posta
    • 4.4 Protocolli di accesso alla posta
      • 4.4.1 POP3
      • 4.4.2 IMAP
  • 5 DNS: il servizio di directory di Internet
    • 5.1 Servizi di DNS
    • 5.2 Panoramica su DNS
      • 5.2.1 Database distribuiti e gerarchici
      • 5.2.2 Caching DNS
    • 5.3 Record e messaggi DNS
      • 5.3.1 Messaggi DNS
  • 6 Applicazioni peer-to-peer
    • 6.1 Distribuzione di file P2P
      • 6.1.1 Scalabilit`a dell’architettura P2P
      • 6.1.2 BitTorrent
    • 6.2 Ricerca di informazioni di una comunit`a P2P
      • 6.2.1 Directory centralizzata
      • 6.2.2 Query flooding
      • 6.2.3 Copertura gerarchica
    • 6.3 Un caso concreto: telefonia Internet P2P con Skype
  • III Livello di trasporto
  • 1 Introduzione e servizi a livello di trasporto
    • 1.1 Relazione tra i livelli di trasporto e di rete
    • 1.2 Panoramica sul livello di trasporto in Internet
  • 2 Multiplexing e demultiplexing - 2.0.1 Multiplexing e demultiplexing senza connessione - 2.0.2 Multiplexing e demultiplexing orientati alla connessione
  • 3 Trasporto senza connessione UDP
    • 3.1 Struttura dei segmenti UDP
  • 4 Principi del trasferimento dati affidabile
    • 4.1 Costruzione di un protocollo di trasferimento dati affidabile
      • 4.1.1 Trasferimento dati affidabile su un canale perfettamente affidabile: rdt1.0
      • 4.1.2 Trasferimento dati affidabile su un canale con errori sui bit: rdt2.0
      • 4.1.3 Trasferimento dati affidabile su un canale con perdite ed errori su bit: rdt3.0
    • 4.2 Protocolli per il trasferimento dati affidabile con pipeline
    • 4.3 Go-Back-N
    • 4.4 Ripetizione selettiva
  • 5 Trasporto orientato alla connessione: TCP
    • 5.1 Connessione TCP
    • 5.2 Struttura dei segmenti TCP
      • 5.2.1 Numeri di sequenza e numeri di riscontro
    • 5.3 Trasferimento dati affidabile
    • 5.4 Controllo di flusso
    • 5.5 Gestione della connessione TCP
  • 6 Principi di controllo di congestione
    • 6.1 Approcci al controllo di congestione
  • 7 Controllo di congestione TCP
    • 7.1 Incrementa additivo e decremento moltiplicativo (AIMD)
    • 7.2 Partenza lenta
    • 7.3 Reazione ai timeout
  • IV Livello di rete
  • 1 Introduzione
    • 1.1 Inoltro e instradamento
      • 1.1.1 Instaurazione della connessione
    • 1.2 Modelli di servizi di rete
  • 2 Reti a circuito virtuale e a datagramma
    • 2.1 Reti a circuito virtuale
    • 2.2 Reti a datagramma
    • 2.3 Origini delle reti a circuito virtuale e a datagramma
  • 3 Cosa si trova all’interno di un Router?
    • 3.1 Porte d’ingresso
    • 3.2 Struttura di commutazione
    • 3.3 Porte d’uscita
    • 3.4 Dove si verifica l’accodamento?
  • 4 Protocollo Internet (IP): inoltro e indirizzamento in Internet
    • 4.1 Formato dei datagrammi
      • 4.1.1 Frammentazione dei datagrammi IP
    • 4.2 Indirizzamento IPv4
      • 4.2.1 Come ottenere un blocco di indirizzi
      • 4.2.2 Come ottenere l’indirizzo di un host: DHCP
      • 4.2.3 Traduzione degli indirizzi di rete
      • 4.2.4 UPnP
    • 4.3 Internet Control Message Protocol
    • 4.4 IPv6
      • 4.4.1 Formato dei datagrammi IPv6
      • 4.4.2 Passaggio da IPv4 a IPv6
    • 4.5 Breve panoramica sulla sicurezza IP
  • 5 Algoritmi d’instradamento
    • 5.1 Algoritmo d’instradamento a stato del collegamento (LS)
      • 5.1.1 Algoritmo LS dal nodo origine a u
    • 5.2 Algoritmo d’instradamento con vettore distanza (DV)
      • 5.2.1 Algoritmo DV con vettore distanza
      • 5.2.2 Algoritmo con vettore distanza: modifica dei costi e guasti dei collegamenti
      • 5.2.3 Algoritmo con vettore distanza: aggiunta dell’inversione avvelenata
      • 5.2.4 Confronto tra gli algoritmi LS e DV
    • 5.3 Instradamento gerarchico
  • 6 Instradamento in Internet
    • 6.1 Instradamento interno al sistema Internet
      • 6.1.1 Routing Information Protocol - RIP
    • 6.2 Instradamento nei sistemi autonomi in Internet
    • 6.3 Instradamento tra sistemi autonomi
      • 6.3.1 Fondamenti di BGP
      • 6.3.2 Attributi del percorso e rotte BGP
  • 7 Instradamento broadcast e multicast
    • 7.1 Algoritmi d’instradamento broadcast
      • 7.1.1 Flooding incontrollato
      • 7.1.2 Flooding controllato
      • 7.1.3 Broadcast con spanning tree
    • 7.2 Multicast
      • 7.2.1 Internet Group Management Protocol
      • 7.2.2 Instradamento multicast in Internet
  • V Livello di collegamento e reti locali
  • 1 Introduzione e servizi
    • 1.1 I servizi offerti dal livello di collegamento
    • 1.2 Dove `e implementato il livello di collegamento?
  • 2 Tecniche di rilevazione e correzione degli errori
    • 2.1 Controllo di parit`a
    • 2.2 Somma di controllo (Checksum)
    • 2.3 Controllo a ridondanza ciclica
  • 3 Protocolli di accesso multiplo
    • 3.1 Protocolli a suddivisione del canale
    • 3.2 Protocolli ad accesso casuale
      • 3.2.1 Slotted ALOHA
      • 3.2.2 ALOHA
      • 3.2.3 CSMA: accesso multiplo a rilevazione della portante
    • 3.3 Protocolli a rotazione
    • 3.4 Reti locali
  • 4 Indirizzi a livello di collegamento
    • 4.1 Indirizzi MAC
    • 4.2 Protocollo per la risoluzione degli indirizzi (ARP)
      • 4.2.1 Come inviare un datagramma a un nodo esterno alla sottorete
  • 5 Ethernet
    • 5.1 Struttura dei pacchetti Ethernet
      • 5.1.1 Servizio senza connessione non affidabile
    • 5.2 CSMA/CD: protocollo di accesso multiplo di Ethernet
      • 5.2.1 Efficienza di Ethernet
    • 5.3 Tecnologie Ethernet
  • 6 Switch a livello di collegamento
    • 6.1 Switch: inoltro e filtraggio
    • 6.2 Autoapprendimento
    • 6.3 Propriet`a della commutazione a livello di collegamento
      • 6.3.1 Switch e Router a confronto
  • 7 PPP: Protocollo punto-punto
    • 7.1 Framing di dati
      • 7.1.1 Byte stuffing
  • VI Wireless e reti mobili
  • 1 Introduzione
  • 2 Collegamenti Wireless e caratteristiche di rete
    • 2.1 CDMA
  • 3 Wi-Fi 802.11 Wireless LAN
    • 3.1 Architettura 802.11
      • 3.1.1 Canali e associazioni
    • 3.2 Protocollo MAC 802.11
      • 3.2.1 Terminali nascosti: RTS e CTS
      • 3.2.2 Utilizzo di 802.11 come collegamento punto-punto
    • 3.3 Pacchetto IEE 802.11
      • 3.3.1 Campi Payload e CRC
      • 3.3.2 Campo indirizzo
      • 3.3.3 Campi numero di sequenza, durata e controllo del pacchetto
    • 3.4 Mobilit`a in una sottorete IP
    • 3.5 Oltre 802.11: Bluetooth e Wi-Max
      • 3.5.1 Bluetooth
      • 3.5.2 Wi-Max
  • 4 Accesso cellulare a Internet
    • 4.1 Analisi schematica dell’architettura cellulare
      • 4.1.1 Architettura della rete
      • 4.1.2 Tecniche di accesso
    • 4.2 Standard e Tecnologie cellulari
      • 4.2.1 Seconda generazione (2G)
      • 4.2.2 Terza Generazione (3G)
      • 4.2.3 Quarta Generazione (4G)
  • 5 Gestione della mobilit`a
    • 5.1 Indirizzamento
    • 5.2 Instradamento verso il nodo mobile
      • 5.2.1 Instradamento indiretto verso il nodo mobile
      • 5.2.2 Instradamento diretto verso un nodo mobile
  • 6 Mobile IP
    • 6.1 Ricerca Agente
    • 6.2 Registrazione presso l’agente domestico
  • 7 Mantenere la mobilit`a nelle reti cellulari
    • 7.1 Instradamento delle chiamate verso utenti mobili
    • 7.2 Handoff in GSM
  • 8 Wireless e mobilit`a: l’impatto sui livelli superiori
  • VII Reti Multimediali
  • 1 Applicazioni multimediali di rete
    • 1.1 Esempi di applicazioni multimediali
      • 1.1.1 Streaming audio/video memorizzato
      • 1.1.2 Streaming audio/video in tempo reale (IPTV)
      • 1.1.3 Audio/video interattivo in tempo reale
    • 1.2 Ostacoli alla multimedialit`a in Internet
    • 1.3 Compressione audio e video
      • 1.3.1 Compressione Audio
      • 1.3.2 Compressione video in Internet
  • 2 Streaming Memorizzati
    • 2.1 Accesso ad audio e video tramiter server Web
    • 2.2 Invio di contenuti multimediali da server di streaming ad applicazioni helper
    • 2.3 Protocolli di streaming in tempo reale (RSTP)
  • 3 Utilizzo ottimale del servizio Best-Effort
    • 3.1 Limiti del servizio Best-Effort
      • 3.1.1 Perdita dei pacchetti
      • 3.1.2 Ritardo end-to-end
      • 3.1.3 Jitter di pacchetto
    • 3.2 Rimozione del Jitter audio
    • 3.3 Recupero dei pacchetti perduti
      • 3.3.1 Correzione dell’errore in avanti (FEC)
      • 3.3.2 Interlacciamento
      • 3.3.3 Recupero di steam audio danneggiati
    • 3.4 Reti per la distribuzione di contenuti multimediali
  • 4 Protocolli per applicazioni interattive in tempo reale
    • 4.1 RTP
      • 4.1.1 Introduzione a RTP
      • 4.1.2 Intestazione dei pacchetti RTP
    • 4.2 Procollo di controllo di RTP (RTCP)
      • 4.2.1 Pacchetti RTCP
    • 4.3 SIP
      • 4.3.1 Inizializzazione delle chiamate verso un indirizzo IP
  • 5 Fornitura di pi`u classi di servizio
    • 5.1 Introduzione agli scenari
      • 5.1.1 Scenario 1: Applicazione audio a 1 Mbps e trasferimento FTP
      • 5.1.2 Scenario 2: Applicazione audio a 1 Mbps e trasferimento FTP ad alta priorita
        • FTP 5.1.3 Scenario 3: Applicazione audio con comportamento scorretto e trasferiento
    • 5.2 Meccanismi di scheduling e sorveglianza
      • 5.2.1 Meccanismi di scheduling
      • 5.2.2 Sorveglianza con Leaky Bucket
  • 6 Fornire garanzie di qualit`a del servizio
    • 6.1 Un esempio
    • 6.2 Prenotazione di risorse, ammissioni e instaurazione della chiamata

pacchetto attraversa, `e definito percorso (o Route o Path).

I sistemi terminali accedono ad internet attraverso gli Internet Service Provider (ISP). Un provider `e un insieme di commutatori di pacchetto e collegamenti di comunicazione. Inoltre ne esistono vari tipi:

  • ISP residenziali (come le compagnie telefoniche)
  • ISP universitari
  • ISP aziendali
  • ISP che forniscono accesso a reti senza fili negli aeroporti, bar, hotel e cos`ı via

I tipi di accesso che invece possono offrire sono:

  • accessi DIAL-UP
  • accessi residenziali a banda larga
  • accessi in rete locale ad alta velocita
  • accessi wireless

Un altro aspetto importante di internet sono i protocolli, i quali analizzeremo nel dettaglio piu avanti, mae giusto citarli per avere una panoramica completa del funzionamento della rete. I sistemi terminali, i commutatori di pacchetto e altre parti di internet, fanno uso dei protocolli i quali forniscono un servizio di controllo sull’invio delle informazioni all’interno della rete. Due dei pi`u importanti protocolli utilizzati sono:

  • il Trasmission Control Protocol (TCP) che si occupa del controllo di trasmissione ovvero rende affidabile la comunicazione dati in rete tra mittente e destinatario
  • l’Internet Protocol (IP) il quale specifica il formato dei pacchetti che vengono scambiati tra router e sistemi terminali.

I principali protocolli internet sono noti con il nome collettivo TCP/IP e vista la loro importanza sulla rete, e fondamentale conoscere il loro funzionamento. Qui entrano in gioco gli standard in- ternet che vengono sviluppati dalla IETF (Internet Engineering Task Force). La documentazione sugli standard internet, detta RFC (Request For Comment),e piuttosto tecnica e accurata, ma fornisce il funzionamento dettagliato di vari protocolli come SMTP (posta elettronica – Simple Mail Transfer Protocol ), HTTP (protocollo di rete) ecc..

L’Internet pubblica e la rete per antonomasia, ma esistono anche reti minori, piu ristrette, le quali vengono istituite da industrie e pubbliche amministrazioni. Queste sono reti private, dove gli host non possono scambiare informazioni al di fuori della rete stessa, ma utilizzano lo stesso tipo di sistemi terminali, router, collegamenti e protocolli che utilizza la rete internet e per questo sono chiamate Intranet.

1.2 Descrizione dei servizi

Adesso descriveremo internet da un punto di vista diverso dal precedente, cio`e come un infrastrut- tura che fornisce servizi alle applicazioni, le quali includono la posta elettronica, navigazione Web, messaggistica istantanea, telefonia su internet (VoIP ), streaming video, condivisione file su base peer-to-peer (P2P ) e molte altre ancora oltre a quelle che verrano introdotte nel tempo.

Le varie applicazioni sono dette distribuite in quanto coinvolgono vari sistemi terminali che scam- biano informazioni tra di loro. La cosa piu rilevantee che esse girano, proprio sugli host e non sui packet switch del nucleo della rete.

Ma come fa una parte di applicazione che gira su di un host ad istruire internet in modo che recapiti dati ad un altro host che fa girare anch’esso una parte di applicazione?

Dobbiamo sapere che i sistemi terminali collegati ad internet forniscono un API (Application Programming Interface) che specifica proprio come la parte di applicazione che gira su di host sia in grado di riferire ad internet a quale altro host debba fornire i dati. La API internet e un insieme di regole che il modulo software mittente deve seguire in modo tale che i dati siano recapitati al modulo software di destinazione. Vediamo un esempio che ci fara capire meglio tale concetto: supponiamo che Alice debba inviare una lettera a Roberto, utilizzando il servizio postale. Cio che deve fare Alicee inserire la lettera in una busta, scrivergli sopra il nome completo del destinatario, seguito dall’indirizzo e il CAP. Deve poi sigillare la busta, incollare un francobollo ed imbucarla. Tutto questo procedimento che Alice svolge, costituisce l’ API del servizio postale, ovvero le regole che lei deve rispettare per far si che la busta venga recapitata a Roberto.

1.3 Cos’`e un protocollo?

Dopo averli accennati nel paragrafo 1.1.1 vediamo qualcosa di pi`u specifico.

Cos’`e un protocollo? Cosa fa? Come lo si riconosce?

Probabilmente il metodo piu semplice per introdurre la nozione di protocolloe fare un ana- logia con un esempio di vita reale. Si pensi a quando si vuole chiedere l’ora a qualcuno. Il “protocollo umano” impone come prima cosa un saluto per iniziare la comunicazione con qualcun altro. La tipica risposta e un messaggio di ritorno “ciao”. Tipicamente se arriva una risposta cordiale la persona che chiede l’orae pronta ad esporre la sua richiesta all’altra, ma nel caso avessimo una risposta diversa (come “non mi scocciare!”, o “non parlo italiano”), questa potrebbe indicare o una scarsa propensione a comunicare, o l’incapacit`a di farlo.

Figura 2: Protocollo Umano e Protocollo di Rete

  1. accesso aziendale, che collega alla rete i sistemi terminali degli uffici;
  2. accesso wireless, che connette alla rete i sistemi terminali senza fili;

2.2.1 Accesso residenziale

L’accesso residenziale si riferisce alla connessione di sistemi terminali domestici ad un edge router. Un tipo di accesso residenziale e il modem dial-up tramite un ISP residenziale ed una semplice linea telefonica. Il modem di casa converte il segnale del PC in modo da trasmetterlo sulla linea telefonica. All’altro capo della linea telefonica un modem dell’ISP riconverte il segnale analogico in segnale digitale. La frequenza di trasmissione che puo raggiungere tale accesso e di 56 kbps. Inoltre, tale accesso, occupa per intero la linea telefonica tradizionale, infatti none possibile n´e ricevere n´e effettuare chiamate. Tale tecnica infatti e in abbandono, poich´e le nuove modalita accesso a bandalarga permettono agli utenti di navigare pi`u velocemente, di fare telefonate ed ovviamente riceverle mentre sono sulla rete. Esistono due tipi comuni di accesso residenziale a bandalarga:

  1. Digital Subscriber Line (DSL) L’accesso DSL viene solitamente fornito da una compagnia telefonica internazionale (Es. Verizon), talvolta in partnership con un ISP indipendente. Questo rappresenta una nuova tecnologia basata su modem che sfrutta le linee a doppino telefonico, con distanza ridotta tra utente ed ISP. Grazie a questa tecnica la DSL puo trasmettere e ricevere dati a frequenze superiori. Le due frequenze pero non sono simmetriche: questo perch´e un utente e piu un consumatore che un produttore di informazioni, percio la frequenza di trasmissione dal router ISP all’utentee maggiore di quella inversa (Download e Upload ) La DSL, come abbiamo detto in precedenza, permette l’uso del telefono di casa durante la navigazione. Questo vantaggio e possibile grazie alla suddivisione del collegamento di comunicazione tra utente e ISP in tre bande di frequenza non sovrapposte: - un canale di downstream ad alta velocita (Download) - un canale di upstream a velocita media (Upload) - un canale telefonico ordinario a due vie (Telefonate in entrata e uscita)

Le effettive frequenze di downstream e upstream sono in funzione della distanza tra il modem dell’utente e quello dell’ISP.

Figura 3: Rete di accesso DSL

  1. Hybrid Fiber-Coaxial Cable (HFC) Mentre il dial-up e la DSL utilizzano le ordinarie linee telefoniche, le reti di accesso HFC sono estensioni delle attuali reti per la televisione via cavo. In questi sistemi le fibre ottiche connettono la terminazione del cavo (la centrale) a giunzioni a livello di quartiere, dalle quali parte poi un rete di distribuzione di cavi coassiali ed amplificatori che connette le varie abitazioni. L’utilizzo delle reti HFC richiede un particolare modem detto cable modem, il quale viene messo a disposizione da chi offre accesso ad Internet in modo tale che i clienti possano comprarlo o affittarlo. Questo si connette al PC di casa tramite una porta Ethernet. Un importante caratteristica di HFC `e il fatto di rappresentare un mezzo di trasmissione condiviso. Presenta due canali, uno di Downstream sul quale viaggia ogni pacchetto inviato dalla terminazione principale e uno di Upstream sul quale viaggia ogni pacchetto inviato verso la terminazione principale.

Figura 4: Rete di accesso HFC

2.2.2 Accesso aziendale

Nelle aziende o nelle universita si utilizza normalmente una rete locale LAN (Local Area Network ) per collegare gli host all’edge router. Esistono vari tipi di LAN che vedremo piu avanti, ma la tecnologia Ethernet e attualmente la piu diffusa. Utilizza un doppino intrecciato di rame o un cavo coassiale per collegare numerosi sistemi terminali ad uno Switch Ethernet, il quale si incarica di instradare i pacchetti verso una destinazione che si trova al di fuori della LAN. Ethernet utilizza un mezzo condiviso e ad oggi opera a 100 Mbps.

2.2.3 Accesso Wireless

Sempre piu spesso, dispositivi come iPhone, BlackBerry e dispositivi Android vengono utilizzati per inviare e-mail, navigare sul Web, Tweet, e scaricare musica mentre ci si sposta. Questi dispositivi utilizzano la stessa infrastruttura wireless utilizzata dalla telefonia cellulare per inviare e ricevere pacchetti attraverso una stazione base chee gestita dal provider di rete cellulare. Le societa di telecomunicazioni hanno fatto enormi investimenti in cosiddetti wireless di terza generazione (3G), che forniscono un’ampia area di accesso wireless a Internet con velocita superiori a 1 Mbps. Ma ancora con piu elevata velocita sono le tecnologie di quarta generazione (4G). Di ulteriore sviluppo sono le tecnologie LTE (”Long-Term Evolution””) le quali hanno le loro radici nella tecnologia 3G, ma possono potenzialmente raggiungere una velocit`a superiore a 10 Mbps.

2.3.2 Cavo coassiale

Il cavo coassiale `e composto da un singolo conduttore di rame posto al centro del cavo (anima) e da un dielettrico che lo separa da uno schermo esterno costituito da fili metallici intrecciati (maglia), garantendo costantemente l’isolamento tra i due conduttori e aiutando a bloccare le interferenze. Come visto in precedenza questi cavi sono utilizzati nei sistemi televisivi via cavo e sono abbinati a particolari modem per fornire agli utenti un accesso ad internet su frequenze da 1Mbps o superiori. Inoltre possono essere utilizzati come mezzo condiviso guidato.

Figura 6: Struttura interna del cavo coassiale

2.3.3 Fibra ottica

La fibra ottica e un mezzo sottile e flessibile che conduce impulsi di luce, ciascuno dei quali rap- presenta un bit. Tale mezzoe immune alla onde elettromagnetica e presenta attenuazioni di segnale molto basse. Le caratteristiche di sicurezza del mezzo, che non permette derivazioni non autorizzate, e la notevole velocita di trasmissione fino a decine o centinaia di Gbps, rendono la fibra ottica una soluzione ideale per le connessioni su lunghe distanze e nei sistemi che richiedono livelli di sicurezza elevati. Tuttavia il loro costoe elevato e per questo non sono utilizzate in collegamenti a corto raggio ma per collegamenti intercontinentali.

2.3.4 Canali radio terrestri

I canali radio trasportano segnali elettromagnetici. Si tratta di un segnale interessante poich´e non comporta l’installazione di cavi fisici, e in grado di fornire connettivita ad utenti mobili e, potenzialmente, riesce a trasportare segnali a lunghe distanze. Proprio riguardo le distanze pero, c’e da dire che se queste sono limitate poich´e durante il percorso pu`o verificarsi la perdita del segnale, causato da:

  • attenuazione d’ombra =⇒ che diminuisce la forza del segnale che viaggia per lunghe distanze e attraversa vari ostacoli
  • attenuazione multi-percorso =⇒ dovuta alla riflessione del segnale da parte degli ostacoli che incontra
  • interferenza =⇒ dovuta ad altri canali radio o segnali elettromagnetici

3 Il nucleo della rete

Dopo aver esaminato i confini della rete Internet, approfondiamone in dettaglio il nucleo.

(a) Rete d’accesso (b) Nucleo della rete

Figura 7: La struttura di una rete dall’esterno all’interno

Esistono due approcci fondamentali per trasferire dati attraverso una rete di collegamenti e switch:

  1. commutazione di pacchetto (Packet Switching)
  2. commutazione di circuito (Circuit Switching)

3.1 Commutazione di pacchetto (Packet Switching)

In un’applicazione di rete, i sistemi terminali interagiscono tra di loro scambiandosi messaggi per eseguire i loro compiti. Per inviare un messaggio da un Host di origine a un Host di destinazione, il mittente rompe i messaggi lunghi in blocchi piu piccoli di dati, noti come pacchetti. Per viaggiare dall’origine alla destinazione, ogni pacchetto si muove attraversando collegamenti di comunicazio- ne e commutatori di pacchetto. I pacchetti vengono trasmessi su ciascun collegamento di comunicazione ad una velocita pari a quella di trasmissione.

3.1.1 Trasmissione store-and-forward

La maggior parte dei commutatori di pacchetti utilizza la trasmissione store-and-forward (im- magazzinamento e rilancio). Store-and-forward significa che il commutatore deve ricevere l’intero pacchetto prima che possa iniziare a trasmettere il primo bit dello stesso pacchetto sul link in uscita. Di conseguenza questa tecnica produce un ritardo all’ingresso di ciascun collegamento lungo il percorso del pacchetto.

verra perso. Come possiamo vedere in figura se la velocita di arrivo dei pacchetti al commutatore supera la velocit`a di uscita dei pacchetti su un collegamento, si verifica un ingorgo.

Figura 9: Funzionamento di un buffer d’uscita

3.1.3 Forwarding Tables e Routing Protocols

In precedenza, abbiamo detto che un router prende un pacchetto in arrivo su uno dei suoi colle- gamenti di comunicazione e lo inoltra su di un altro.

Ma con quale criterio il router determina qual `e il collegamento su cui inviare il pacchetto?

In realta esistono diversi modi, ma noi analizzeremo quello piu comune usato su Internet. In Internet, ogni Host ha un indirizzo chiamato indirizzo IP. Quando un sistema di origine vuole inviare un pacchetto ad un sistema di destinazione finale, la sorgente include l’indirizzo IP della destinazione nell’intestazione del pacchetto. Quando un pacchetto arriva a un router nella rete, viene esaminata una porzione di indirizzo di destinazione del pacchetto e quest’ultimo sara invia- to al router adiacente. Piu specificamente, ogni router ha una tabella di inoltro (Forwarding Table) che mette in relazione gli indirizzi di destinazione con i collegamenti di uscita. Quando un pacchetto giunge ad un router, questo esamina l’indirizzo di destinazione e consultando la propria tabella, determina il collegamento uscente appropriato sul quale inoltrare il pacchetto. Abbiamo appena appreso che un router utilizza l’indirizzo di destinazione di un pacchetto per indicizzare una forwarding table, da cui determiner`a il collegamento di uscita appropriata.

Ma come vengono impostate queste tabelle? Sono configurate manualmente in ogni router op- pure Internet utilizza una procedura pi`u automatizzata?

Per ora ci limitiamo a dire che Internet utilizza parecchi protocolli di instradamento (Routing Protocols), i quali sono in grado di determinare il cammino piu corto da ciascun router alla de- stinazione finale del pacchetto. Utilizzando i risultati forniti dai protocolli di routing, Internet, configura la tabella di inoltro. Questo problema sara studiato in modo approfondito nei capitoli successivi.

3.2 Commutazione di circuito (Circuit Switching)

Nelle reti a commutazione di circuito (Circuit Switching), le risorse richieste, lungo un per- corso che mette in comunicazione due sistemi terminali, sono riservate per l’intera durata della sessione di comunicazione. Le reti telefoniche tradizionali sono esempi di reti a commutazione di

circuito. Pensate a cosa succede quando una persona vuole inviare informazioni come chiamate o fax ad un altro soggetto. Prima che il mittente possa inviare le informazioni, la rete deve stabilire una connessione tra mittente e destinatario.

Nonostante il libro sia dedicato alle reti, ad Internet e alla commutazione di pacchetto, e impor- tante comprendere perche Internet, cosı come altre reti informatiche, utilizzino la commutazione di pacchetto anzich´e la piu tradizionale tecnologica a commutazione di circuito.

Figura 10: Rete a commutatore di circuito con 4 commutatori e 4 collegamenti

La Figura 9 illustra una rete a commutazione di circuito. In questa rete, i commutatori di circuito sono interconnessi da quattro collegamenti. Ciascuno di questi collegamenti dispone di quattro circuiti, in modo che ogni collegamento puo supportare quattro connessioni simultanee. Gli Host (ad esempio, PC e Workstation) sono tutti collegati direttamente ad uno dei commuta- tori. Quando due host vogliono comunicare, la rete stabilisce una connessione end-to-end dedicata a loro. Pertanto, affinch´e A comunichi con B, la rete deve riservare un circuito su ciascuno dei due collegamenti. In questo esempio, la connessione dedicata end-to-end utilizza il secondo circuito nel primo collegamento e il quarto circuito nel secondo. Poich´e ogni collegamento ha quattro circuiti, per ognuno di essi, la connessione ottiene un quarto della larghezza di banda totale di trasmissione del collegamento, per tutta la durata della connessione. Cosı, per esempio, se ogni collegamento tra gli switch adiacenti ha una velocita di trasmissione di 1 Mbps, allora ogni circuito interno ottiene 250 kbps di velocita di trasmissione dedicata. Al contrario, consideriamo cosa succederebbe in una rete con commutazione di pacchetto, co- me Internet. Il pacchetto viene inviato in rete, senza riservare alcun collegamento. Se uno dei collegamenti e occupato poich´e altri pacchetti devono essere trasmessi sullo stesso collegamento, allora il pacchetto dovra attendere in un buffer e automaticamente subire un ritardo, proprio come abbiamo visto in precedenza.

3.2.1 Multiplexing nelle reti a commutazione di circuito

Un circuito in un collegamento pu`o essere implementato in due modi:

  1. multiplexing a divisione di frequenza (FDM) Con FDM (Frequency-Division Multiplexing), lo spettro di frequenza di un collegamento viene suddiviso tra le connessioni stabilite tramite quel collegamento. Nello specifico, il