1
00:00:00,000 --> 00:00:05,000
TCP o Transmission Control Protocol è un protocollo del livello di trasporto che risiede

2
00:00:06,000 --> 00:00:10,000
nello strato 4 nel modello OSI ed è orientato alla connessione

3
00:00:11,000 --> 00:00:17,000
ancora una volta consente ai protocolli ad alto livello l'accesso al livello di rete o IP ma

4
00:00:18,000 --> 00:00:20,000
in questo caso fornisce affidabilità.

5
00:00:21,000 --> 00:00:23,000
È orientato alla connessione prima della

6
00:00:24,000 --> 00:00:27,000
trasmissione e viene stabilita una sessione tra 2 dispositivi.

7
00:00:28,000 --> 00:00:31,000
TCP generalmente implementa una modalità di funzionamento full duplex.

8
00:00:32,000 --> 00:00:34,000
Ci sono alcune eccezioni ma qui non entreremo

9
00:00:35,000 --> 00:00:38,000
in esse. In altre parole, una connessione TCP è una coppia di

10
00:00:39,000 --> 00:00:42,000
circuiti virtuali uno in ogni direzione che operano in modalità full duplex.

11
00:00:43,000 --> 00:00:47,000
Il trasmettitore può ricevere dati contemporaneamente alla sua trasmissione.

12
00:00:48,000 --> 00:00:52,000
Entrambi gli host in una conversazione possono trasmettere e ricevere allo stesso tempo.

13
00:00:53,000 --> 00:00:55,000
c'è un controllo degli errori in

14
00:00:56,000 --> 00:01:00,000
TCP perché c'è un checksum nel datagramma per verificare che non ci sia corruzione.

15
00:01:05,000 --> 00:01:08,000
I segmenti TCP sono anche numerati in sequenza

in modo che la destinazione possa riordinare i segmenti e determinare se mancano i dati.

16
00:01:09,000 --> 00:01:15,000
C'è anche il riconoscimento della ricezione dei dati, quindi tutti i dati vengono riconosciuti dal destinatario.

17
00:01:20,000 --> 00:01:25,000
il trasmettitore o il mittente può ritrasmettere il segmento o terminare la connessione se determina

18
00:01:26,000 --> 00:01:29,000
che il ricevitore non è più coinvolto nella conversazione.

19
00:01:30,000 --> 00:01:32,000
TCP implementa funzionalità di recupero dati, in altre

20
00:01:33,000 --> 00:01:35,000
parole ci può essere ri-trasmissione dei dati persi.

21
00:01:36,000 --> 00:01:39,000
Quindi se non c'è riconoscimento di un segmento, il segmento verrà ritrasmesso.

22
00:01:40,000 --> 00:01:44,000
Il segmento TCP viene inviato utilizzando i pacchetti IP.

23
00:01:45,000 --> 00:01:51,000
L'intestazione TCP seguirà l'intestazione IP fornendo informazioni specifiche per il protocollo TCP.

24
00:01:52,000 --> 00:01:56,000
Come potete vedere qui l'intestazione TCP ha molte più opzioni rispetto all'intestazione UDP.

25
00:01:57,000 --> 00:02:01,000
Quindi, in primo luogo si dispone di un numero di porta di origine a 16 bit che identifica la porta di invio.

26
00:02:02,000 --> 00:02:06,000
Abbiamo una porta di destinazione a 16 bit, che identifica la porta di ricezione.

27
00:02:07,000 --> 00:02:13,000
C'è un numero di sequenza a 32 bit, se il bit SYN è impostato, questo è

28
00:02:14,000 --> 00:02:16,000
il numero di sequenza iniziale.

29
00:02:17,000 --> 00:02:23,000
Il numero di sequenza del primo byte di dati effettivo è quindi questo numero di sequenza più 1.

30
00:02:24,000 --> 00:02:30,000
Se il bit SYN non è impostato, il numero di sequenza è il numero di sequenza accumulato del primo byte

31
00:02:31,000 --> 00:02:34,000
di dati di questo pacchetto per la sessione corrente.

32
00:02:35,000 --> 00:02:38,000
Quindi ha un numero di riconoscimento a 32 bit.

33
00:02:39,000 --> 00:02:43,000
Se il flag ACK è impostato o il bit è impostato, il valore del

34
00:02:44,000 --> 00:02:46,000
numero di riconoscimento è il numero

35
00:02:47,000 --> 00:02:50,000
di sequenza successivo che il ricevitore si aspetta di ricevere.

36
00:02:51,000 --> 00:02:54,000
Questo campo conferma la ricezione di tutti i byte precedenti.

37
00:02:55,000 --> 00:03:00,000
Il pugno ACK o la conferma inviata da ciascuna estremità

38
00:03:01,000 --> 00:03:06,000
conferma l'altro numero di sequenza iniziale ma nessun dato.

39
00:03:07,000 --> 00:03:15,000
La lunghezza dell'intestazione o l'offset dei dati specifica la dimensione dell'intestazione TCP in parole da 32 bit.

40
00:03:16,000 --> 00:03:21,000
La dimensione minima dell'intestazione è di 5 parole e il massimo è di 15 parole.

41
00:03:22,000 --> 00:03:25,000
La dimensione minima dell'intestazione è 20

42
00:03:26,000 --> 00:03:29,000
byte e la dimensione massima dell'intestazione

43
00:03:30,000 --> 00:03:37,000
è di 60 byte in IPv4, che consente fino a 40 byte di opzioni nell'intestazione.

44
00:03:38,000 --> 00:03:43,000
La riserva riempie il set a 0 ed è riserva per uso futuro.

45
00:03:44,000 --> 00:03:49,000
Ora ci sono molti flag o bit di controllo disponibili nell'intestazione TCP e non li

46
00:03:50,000 --> 00:03:51,000
esamineremo tutti.

47
00:03:52,000 --> 00:03:57,000
Il flag di riduzione della finestra di congestione fa parte di un meccanismo

48
00:03:58,000 --> 00:04:02,000
di notifica della congestione utilizzato insieme al bit ECE

49
00:04:03,000 --> 00:04:08,000
o al flag o al flag di eco di notifica di congestione dell'eco.

50
00:04:09,000 --> 00:04:10,000
Ancora una volta utilizzato nella notifica di congestione.

51
00:04:11,000 --> 00:04:15,000
Questo può essere usato in termini di qualità del servizio in cui

52
00:04:16,000 --> 00:04:19,000
la rete e l'host comunicano per indicare la congestione,

53
00:04:20,000 --> 00:04:23,000
facendo quindi sapere al trasmettitore che deve rallentare.

54
00:04:24,000 --> 00:04:27,000
Il flag URG può indicare che questo segmento è urgente e deve essere

55
00:04:28,000 --> 00:04:29,000
elaborato il prima possibile.

56
00:04:30,000 --> 00:04:34,000
Il flag ACK come menzionato viene utilizzato per il riconoscimento dei dati.

57
00:04:35,000 --> 00:04:41,000
PSH è il flag impostato dal mittente TCP per far passare immediatamente il ricevitore TCP 60 i

58
00:04:45,000 --> 00:04:48,000
dati di quel segmento al socket dell'applicazione del

59
00:04:49,000 --> 00:04:55,000
ricevitore insieme a tutti gli altri dati dell'ordine che il ricevitore deve ancora fornire a tale applicazione.

60
00:04:56,000 --> 00:05:01,000
Reset; ripristina la connessione in altre parole, la connessione viene disattivata.

61
00:05:02,000 --> 00:05:05,000
SYN è usato per sincronizzare i numeri di sequenza.

62
00:05:06,000 --> 00:05:12,000
Solo il primo pacchetto inviato da ciascuna estremità avrà questo flag impostato.

63
00:05:13,000 --> 00:05:17,000
FIN significa che non ci sono più dati dal mittente.

64
00:05:18,000 --> 00:05:21,000
La dimensione della finestra che è lunga 16 bit

65
00:05:22,000 --> 00:05:24,000
specifica la dimensione della finestra ricevuta,

66
00:05:25,000 --> 00:05:30,000
che è il numero di byte che il ricevitore è attualmente disposto a ricevere, parleremo di

67
00:05:31,000 --> 00:05:35,000
più sul controllo del flusso e le dimensioni delle finestre in un momento.

68
00:05:36,000 --> 00:05:39,000
TCP include anche un checksum TCP a 16 bit che

69
00:05:40,000 --> 00:05:43,000
viene utilizzato per il controllo dell'errore dell'intestazione e dei dati.

70
00:05:44,000 --> 00:05:49,000
Il puntatore urgente a 16 bit viene utilizzato con il flag URG che,

71
00:05:50,000 --> 00:05:55,000
se impostato su, indica che viene utilizzato il puntatore urgente a 16 bit.

72
00:05:56,000 --> 00:06:02,000
Ciò indica uno scostamento dal numero di sequenza che indica l'ultimo byte di dati urgenti.

73
00:06:03,000 --> 00:06:05,000
Ci sono anche varie opzioni

74
00:06:06,000 --> 00:06:10,000
disponibili nel TCP, ma questo non rientra nell'ambito di questo corso.

75
00:06:11,000 --> 00:06:15,000
E infine abbiamo i dati, che sono i dati dei protocolli di

76
00:06:16,000 --> 00:06:18,000
livello superiore incapsulati all'interno dell'intestazione TCP.

77
00:06:19,000 --> 00:06:26,000
Esistono alcuni esempi di applicazioni basate su TCP o UDP.

78
00:06:27,000 --> 00:06:33,000
Esempi includono protocolli di trasferimento file; FTP o File Transfer Protocol

79
00:06:34,000 --> 00:06:40,000
TFTP o Trivial File Transfer Protocol, NFS o Network File System.

80
00:06:41,000 --> 00:06:49,000
Nell'e-mail tendiamo a utilizzare POP3 o il protocollo Post Office per ricevere la posta Simple Mail Transfer Protocol o SMTP per inviare posta o IMAP

81
00:06:50,000 --> 00:06:54,000
o Internet Message Access Protocol, che è un altro protocollo utilizzato per il

82
00:06:55,000 --> 00:06:58,000
recupero della posta elettronica 86 Per il collegamento remoto

83
00:07:03,000 --> 00:07:05,000
ai dispositivi, è possibile utilizzare telnet

84
00:07:06,000 --> 00:07:09,000
che invia il traffico in chiaro e quindi è

85
00:07:10,000 --> 00:07:13,000
protetto o protetto da SHELL o SSH che consente

86
00:07:14,000 --> 00:07:16,000
una connessione sicura ai dispositivi remoti.

87
00:07:17,000 --> 00:07:23,000
Per la gestione della rete possiamo utilizzare Simple Network Management Protocol o SNMP e per la gestione

88
00:07:24,000 --> 00:07:27,000
dei nomi possiamo usare Domain Name System che consente

89
00:07:28,000 --> 00:07:31,000
l'uso di nomi piuttosto che indirizzi IP e

90
00:07:32,000 --> 00:07:35,000
traduce tali nomi di dominio significativi, in indirizzi

91
00:07:36,000 --> 00:07:40,000
IP quindi per esempio cisco. com verrà convertito in un indirizzo IP

92
00:07:41,000 --> 00:07:43,000
quando un utente naviga in Internet.

93
00:07:44,000 --> 00:07:47,000
Prima di continuare vorrei menzionare di nuovo come funzionano le mappature

94
00:07:48,000 --> 00:07:50,000
tra i diversi livelli del modello OSI.

95
00:08:09,000 --> 00:08:12,000
Al livello 2 in un frame Ethernet 2, c'è un campo chiamato numero di tipo

che consente a un host di distinguere tra più protocolli di livello 3

al livello 3, ricorda che potresti utilizzare un protocollo come IPv4 o IPv6

o ai vecchi tempi IPX o Apple Talk.

96
00:08:13,000 --> 00:08:20,000
Quindi, a livello 2, il NEC deve sapere quale protocollo di livello 3 inviare a questo traffico e il numero di

97
00:08:21,000 --> 00:08:25,000
tipo viene usato per differenziare i diversi protocolli di livello 3.

98
00:08:32,000 --> 00:08:37,000
Al livello 3 viene utilizzato un numero di protocollo per differenziare 105 i diversi protocolli in esecuzione al livello 4, quindi in

99
00:08:38,000 --> 00:08:43,000
un'intestazione IP il campo del protocollo indicherà dove viene utilizzato il TCP o l'UDP al livello 4 Al livello 4 viene utilizzato

100
00:08:53,000 --> 00:08:59,000
un numero di porta per differenziare più applicazioni in uso al livello 7. 108 Quindi è importante notare che al livello 4 il modo in

101
00:09:00,000 --> 00:09:04,000
cui TCP o UDP sanno a quale applicazione questo traffico è destinato dal numero di porta.
