|
|
|
| << | < | > | >> |Indice
Prefazione XIII
1 Introduzione 1
1.1 Breve storia della rete Internet 1
1.2 Protocolli e standard 6
1.3 Le organizzazioni che definiscono gli standard 7
1.4 Gli standard Internet 10
1.5 Amministrazione della rete Internet 12
1.6 Esercizi 14
2 Modello OSI e protocolli TCP/IP 15
2.1 Il modello OSI 15
2.2 I livelli del modello OSI 19
2.3 I protocolli TCP/IP 29
2.4 L'indirizzamento 32
2.5 Versioni IP 36
2.6 Esercizi 37
3 Le tecnologie di rete 39
3.1 Reti locali (LAN) 40
3.2 WAN punto-a-punto 52
3.3 WAN commutate 61
3.4 I dispositivi di connessione 68
3.5 Esercizi 75
4 Gli indirizzi IP: indirizzamento con classi 77
4.1 Introduzione 77
4.2 L'indirizzamento con classi 81
4.3 Aspetti ulteriori 93
4.4 Subnetting e supernetting 101
4.5 Esercizi 109
5 Gli indirizzi IP: indirizzamento senza classi 113
5.1 I blocchi di lunghezza variabile 113
5.2 Il subnetting 121
5.3 Assegnamento degli indirizzi 126
5.4 Esercizi 128
6 Consegna e instradamento dei pacchetti IP 131
6.1 La consegna 131
6.2 L'inoltro 134
6.3 L'instradamento 150
6.4 Struttura di un router 153
6.5 Esercizi 157
7 Protocolli ARP e RARP 159
7.1 Protocollo ARP 161
7.2 Progetto di un package software ARP 167
7.3 Protocollo RARP 174
7.4 Esercizi 176
8 Protocollo Internet (IP) 179
8.1 I datagram 180
8.2 La frammentazione 187
8.3 Le opzioni 192
8.4 Checksum 201
8.5 Progetto di un package software IP 204
8.6 Esercizi 210
9 Internet Control Message Protocol (ICMP) 213
9.1 Possibili messaggi ICMP 214
9.2 Formato dei messaggi 215
9.3 Segnalazione d'errore 216
9.4 Messaggi di richiesta 224
9.5 Checksum 229
9.6 Strumenti di diagnostica 230
9.7 Progetto di un package software ICMP 236
9.8 Esercizi 238
10 Internet Group Management Protocol (IGMP) 241
10.1 La gestione dei gruppi 241
10.2 I messaggi IGMP 242
10.3 Funzionamento del protocollo IGMP 243
10.4 Incapsulamento di un messaggio IGMP 248
10.5 Progetto di un package software IGMP 252
10.6 Esercizi 256
11 User Datagram Protocol (UDP) 259
11.1 Comunicazioni processo-processo 260
11.2 Il datagram utente 265
11.3 Checksum 266
11.4 Funzionamento del protocollo UDP 269
11.5 Possibili campi di impiego del protocollo UDP 272
11.6 Progetto di package software UDP 273
11.7 Esercizi 276
12 Transmission Control Protocol (TCP) 279
12.1 I servizi TCP 280
12.2 Le caratteristiche del protocollo TCP 284
12.3 I segmenti 286
12.4 La connessione TCP 289
12.5 Diagramma delle transizioni di stato 297
12.6 Controllo del flusso 305
12.7 Controllo d'errore 311
12.8 Il controllo della congestione 319
12.9 I timer TCP 327
12.10 Le opzioni 333
12.11 Progetto di un package software TCP 342
12.12 Esercizi 347
13 Stream Control Transmission Protocol (SCTP) 351
13.1 I servizi SCTP 352
13.2 Le caratteristiche di SCTP 355
13.3 Il formato dei pacchetti 359
13.4 L'associazione SCTP 370
13.5 Il diagramma delle transizioni di stato 377
13.6 Il controllo del flusso 382
13.7 Il controllo degli errori 385
13.8 Il controllo della congestione 388
13.9 Esercizi 389
14 Protocolli di instradamento UNICAST
(RIP, OSPF e BGP) 393
14.1 Instradamento interno ed esterno 394
14.2 Instradamento Distance Vector 395
14.3 Il protocollo RIP 401
14.4 Link State Routing 408
14.5 Il protocollo OSPF 413
14.6 Instradamento path vector o
a vettori di percorso 431
14.7 Il protocollo BGP 434
14.8 Esercizi 441
15 Modalità e protocolli di instradamento
multicast 445
15.1 Unicast, multicast e broadcast 445
15.2 Applicazioni multicast 448
15.3 Instradamento multicast 449
15.4 Instradamento multicast link state: MOSPF 453
15.5 Instradamento multicast distance vector: DVMRP 454
15.6 Il protocollo CBT (Core-Based Tree) 458
15.7 I protocolli PIM
(Protocol Independent Multicast) 460
15.8 La dorsale MBONE 462
15.9 Esercizi 463
16 Protocolli BOOTP e DHCP 465
16.1 Il protocollo BOOTP 465
16.2 Dynamic Host Configuration Protocol (DHCP) 471
16.3 Esercizi 476
17 Domain Name System (DNS) 479
17.1 Spazio dei nomi 479
17.2 Spazio dei nomi di dominio 480
17.3 Distribuzione delle informazioni relative
allo spazio dei nomi 483
17.4 I server DNS della rete Internet 485
17.5 Risoluzione 489
17.6 Messaggi DNS 491
17.7 Tipi di record 494
17.8 Compressione 497
17.9 DDNS 501
17.10 Incapsulamento 502
17.11 Esercizi 502
18 Login remoto: TELNET 505
18.1 Alcuni concetti basilari 505
18.2 Network Virtual Terminai (NVT) 508
18.3 Caratteri NVT 508
18.4 Embedding 509
18.5 Opzioni 510
18.6 Negoziazione delle opzioni 511
18.7 Negoziazione delle sotto-opzioni 514
18.8 Controllo del server 515
18.9 Segnalazione fuori banda 517
18.10 Caratteri di escape 517
18.11 Modalità di funzionamento 518
18.12 Interfaccia utente 519
18.13 Alcune osservazioni sulla sicurezza 521
18.14 Esercizi 521
19 Trasferimento di file: FTP e TFTP 523
19.1 Il protocollo FTP 523
19.2 Le connessioni 524
19.3 Comunicazione 525
19.4 I comandi usati dal protocollo FTP 528
19.5 Trasferimento dei file 533
19.6 Anonymous FTP 537
19.7 Il protocollo TFTP 538
19.8 Esercizi 547
20 Posta elettronica: protocolli SMTP, POP e IMAP 549
20.1 L'architettura 549
20.2 Gli user agent 553
20.3 Message Transfer Agent: il protocollo SMTP 563
20.4 Message Access Agent: i protocolli POP e IMAP 572
20.5 Posta Web-based 573
20.6 Esercizi 574
21 Gestione delle reti: il protocollo SNMP 577
21.1 I concetti fondamentali 577
21.2 Le componenti della gestione 578
21.3 Il protocollo SMI 581
21.4 Il protocollo MIB 587
21.5 Il protocollo SNMP 592
21.6 I messaggi 594
21.7 Le porte UDP 597
21.8 La sicurezza 598
21.9 Esercizi 598
22 Il World Wide Web e il protocollo HTTP 601
22.1 L'architettura 601
22.2 I documenti Web 605
22.3 Il protocollo HTTP 612
22.4 Esercizi 620
23 Il protocollo IP mobile 623
23.1 L' indirizzamento 623
23.2 Gli agenti 625
23.3 Le tre fasi 626
23.4 L'inefficienza nel protocollo IP mobile 631
23.5 Esercizi 633
24 Applicazioni Internet multimediali e
relativi protocolli 635
24.1 La digitalizzazione di audio e video 636
24.2 La compressione audio e video 637
24.3 Audio video streaming memorizzato ("on demand")643
24.4 Audio/video streaming live 646
24.5 Audio/video interattivo in tempo reale 647
24.6 Il protocollo RTP 652
24.7 Il protocollo RTCP 654
24.8 Il protocollo VoIP 656
24.9 Esercizi 661
25 Reti private, reti private virtuali e NAT 663
25.1 Reti private 663
25.2 Reti private virtuali (VPN) 664
25.3 Traduzione degli indirizzi di rete (NAT) 668
25.4 Esercizi 671
26 Protocolli di futura generazione: IPv6 e
ICMPv6 673
26.1 IPv6 674
26.2 Indirizzi IPv6 674
26.3 Formato dei pacchetti IPv6 682
26.4 ICMPv6 694
26.5 Transizione da IPv4 a IPv6 703
26.6 Esercizi 706
Indice analitico 709
|
| << | < | > | >> |Pagina 292.3 I protocolli TCP/IPLa famiglia di protocolli TCP è precedente al modello OSI, pertanto i livelli dei protocolli TCP/IP non combaciano esattamente con quelli del modello OSI. I protocolli TCP/IP sono costituiti da cinque livelli: fisico, collegamento dati, rete, trasporto e applicativo. I primi quattro livelli dei protocolli TCP/IP, corrispondenti ai primi quattro livelli del modello OSI, gestiscono gli standard fisici, l'interfaccia di rete, l'internetworking e le funzioni di trasporto. I tre livelli superiori del modello OSI corrispondono al solo livello applicativo del modello TCP/IP (Figura 2.15). I protocolli TCP/IP hanno struttura gerarchica e sono costituiti da moduli interagenti, ma non necessariamente interdipendenti, ognuno dei quali assolve a specifiche funzioni. Mentre nel modello OSI è specificato quali funzioni debbano essere svolte da ogni singolo livello, la famiglia TCP/IP contiene protocolli relativamente indipendenti che possono essere combinati a seconda delle necessità del sistema. I protocolli TCP/IP sono detti gerarchici perché ogni livello è sostenuto da uno o più livelli inferiori.
Il livello trasporto TCP/IP definisce tre protocolli: Transmission Control
Protocol (TCP), User Datagram Protocol (UDP) e Stream Control Transmission
Protocol (SCTP). Il protocollo più importante di livello rete è
l'Internetworking Protocol (IP), ma vi sono altri protocolli che supportano il
trasferimento di dati in questo livello.
Livello fisico e livello collegamento dati La famiglia TCP/IP non prevede alcun protocollo specifico per i livelli fisico e collegamento dati, ma può operare sopra qualsiasi protocollo standard.
Una rete in un'inter-rete TCP/IP può essere locale (LAN) o geografica (WAN).
Livello rete
A livello rete (o, più precisamente, a livello di internetwork) il TCP/IP
utilizza l'Internetworking Protocol (IP). A sua volta l'IP utilizza quattro
protocolli di supporto: ARP, RARP, ICMP e IGMP. Tali protocolli verranno
descritti più dettagliatamente nei capitoli seguenti.
Internetworking Protocol (IP) L' Internetworking Protocol (IP) è il meccanismo di trasmissione usato dai protocolli TCP/IP; esso è un protocollo non affidabile e senza connessioni, ovvero un servizio di consegna best effort. La locuzione best effort vuol dire che l'IP non effettua la rilevazione e il controllo degli errori. L'IP, inoltre, parte dal presupposto dell'inaffidabilità dei livelli sottostanti e, pur facendo del suo meglio per condurre a buon fine la trasmissione, non fornisce nessuna garanzia di successo. Il trasporto di dati con il protocollo IP avviene in pacchetti chiamati datagram, ognuno dei quali viene trasmesso separatamente. I datagram possono seguire percorsi differenti, giungere in ordine diverso da quello di partenza ed essere addirittura duplicati. L'IP non tiene traccia dei diversi percorsi e non si occupa di riordinare i datagram dopo il loro arrivo a destinazione.
Le capacità limitate del protocollo IP non vanno considerate come una sua
debolezza: esso si limita a svolgere le funzioni basilari della trasmissione e,
lasciando piena libertà all'utente di aggiungere solo le funzioni necessarie per
le applicazioni da lui utilizzate, assicura grande efficienza all'intero
processo di trasmissione. L'IP verrà trattato nel Capitolo 8.
Address Resolution Protocol (ARP)
L'
Address Resolution Protocol
(ARP) associa l'indirizzo IP a quello fisico. In una rete fisica, per esempio
una LAN, ogni dispositivo di ogni collegamento è individuato da un indirizzo
fisico (o di postazione) scritto direttamente sulla scheda dell'interfaccia di
rete (NIC). Il protocollo ARP determina l'indirizzo fisico del nodo quando sia
noto il suo indirizzo IP. Per una discussione più ampia del protocollo
ARP si rimanda al Capitolo 7.
Reverse Address Resolution Protocol (RARP)
Il
Reverse Address Resolution Protocol
(RARP) permette a un host di determinare il suo indirizzo IP a partire da quello
fisico. Tale protocollo viene usato quando un calcolatore viene connesso a una
rete per la prima volta o quando viene eseguito il processo di boot di un
computer privo di disco. Per una discussione più ampia del protocollo RARP si
rimanda al Capitolo 7.
Internet Control Message Protocol (ICMP)
L'
Internet Control Message Protocol
(ICMP) consente a host e gateway di notificare al mittente eventuali problemi
relativi ai datagram. L'ICMP invia richieste o messaggi con il resoconto degli
errori che si sono verificati durante la trasmissione. Il protocollo ICMP verrà
discusso approfonditamente nel Capitolo 9.
Internet Group Message Protocol (IGMP)
L'
Internet Group Message Protocol
(IGMP) è usato per permettere la trasmissione simultanea di un messaggio a più
destinatari. Il protocollo IGMP verrà discusso approfonditamente nel Capitolo
10.
Livello trasporto
In passato i protocolli TCP e UDP erano i due protocolli TCP/IP di livello
trasporto. L'IP è un protocollo
host-to-host,
ovvero è un protocollo che si occupa del trasferimento di dati tra due
dispositivi. I protocolli UDP e TCP, invece, sono protocolli di livello
trasporto che trasferiscono messaggi tra due processi (programmi in
esecuzione). È stato ora sviluppato un nuovo protocollo di livello trasporto,
l'SCTP, per soddisfare le esigenze di alcune nuove applicazioni.
User Datagram Protocol (UDP)
Lo
User Datagram Protocol
(UDP) è il più semplice tra i due protocolli di trasporto standard TCP/IP; è un
protocollo processo-processo che si limita ad aggiungere indirizzi di porta,
checksum per il controllo d'errore e informazioni sulla lunghezza del messaggio
ai dati provenienti dai livelli superiori. Verrà trattato nel Capitolo 11.
Transmission Control Protocol (TCP)
Il
Transmission Control Protocol
(TCP) fornisce alle applicazioni tutti i servizi del livello trasporto. Il TCP è
un protocollo affidabile per il trasporto di flussi; la parola flusso
sott'intende l'uso delle connessioni: è necessario aprire una
connessione tra due nodi prima che i dispositivi ai due capi possano inviare
dati. Ogniqualvolta viene inviato un messaggio, il TCP suddivide il flusso di dati
in unità dette
segmenti.
Ogni segmento contiene un numero di sequenza che serve a riordinare i segmenti
dopo la ricezionè e un numero che segnala il riscontro dei segmenti ricevuti. I
segmenti vengono trasportati lungo la rete all'interno dei datagram; dopo la
ricezione il TCP raccoglie i datagram e li riordina sulla base dei
numeri di sequenza. Il TCP verrà trattato nel Capitolo 12.
|