1
00:00:00,000 --> 00:00:05,000
Nella sua forma base, TCP può avere una dimensione della finestra pari

2
00:00:06,000 --> 00:00:10,000
a 1, il che significa che per ogni segmento

3
00:00:11,000 --> 00:00:16,000
trasmesso dal mittente il ricevente invia un riconoscimento per quel singolo segmento.

4
00:00:17,000 --> 00:00:19,000
Ciò tuttavia rallenta notevolmente il

5
00:00:20,000 --> 00:00:23,000
throughput poiché il mittente non può trasmettere più

6
00:00:24,000 --> 00:00:29,000
dati fino a quando non riceve il riconoscimento di quel singolo segmento trasmesso.

7
00:00:30,000 --> 00:00:32,000
Il throughput sarebbe molto basso a seconda

8
00:00:33,000 --> 00:00:34,000
del timer del

9
00:00:35,000 --> 00:00:38,000
round trip tra l'invio di dati e la ricezione del riconoscimento.

10
00:00:39,000 --> 00:00:42,000
TCP tuttavia consente di avere dimensioni di finestra maggiori per consentire la trasmissione di

11
00:00:43,000 --> 00:00:44,000
più segmenti prima di ricevere

12
00:00:49,000 --> 00:00:50,000
un riconoscimento. 12 La

13
00:00:51,000 --> 00:00:52,000
finestra è il numero di

14
00:00:53,000 --> 00:00:56,000
segmenti di dati che il mittente può inviare senza ricevere una conferma dal ricevitore.

15
00:00:57,000 --> 00:00:58,000
In questo caso,

16
00:00:59,000 --> 00:01:02,000
abbiamo impostato su 1 che significa che quando l'host A vuole

17
00:01:03,000 --> 00:01:07,000
inviare traffico all'host B può inviare 1 segmento perché la dimensione della finestra è

18
00:01:03,000 --> 00:01:07,000
impostata su 1 host B, una volta che riceve quel segmento, invia un riconoscimento.

19
00:01:14,000 --> 00:01:18,000
In questo esempio, supponiamo che l'host A invii il segmento con il numero di sequenza di 1

20
00:01:19,000 --> 00:01:21,000
host B che riconoscerà per il segmento 2.

21
00:01:22,000 --> 00:01:24,000
L'host A invierà quindi il segmento

22
00:01:25,000 --> 00:01:29,000
2 e l'host B, una volta ricevuto correttamente quel segmento confermerà o

23
00:01:30,000 --> 00:01:32,000
ACK per il segmento 3.

24
00:01:33,000 --> 00:01:36,000
L'host A invierà quindi il segmento 3 all'host B.

25
00:01:37,000 --> 00:01:41,000
Questo processo continuerà quindi per tutta la durata della sessione, che

26
00:01:42,000 --> 00:01:46,000
ovviamente è molto affidabile, tuttavia il throughput è molto basso.

27
00:01:47,000 --> 00:01:50,000
A avrebbe bisogno di bufferizzare i segmenti in uscita fino

28
00:01:51,000 --> 00:01:54,000
a quando non riceve un riconoscimento per il segmento trasmesso.

29
00:01:55,000 --> 00:01:57,000
ora per argomento diciamo che ci vuole 1

30
00:01:58,000 --> 00:02:00,000
secondo per il traffico con l'inizio con

31
00:04:04,000 --> 00:04:06,000
la dimensione della finestra piccola e quindi

32
00:04:07,000 --> 00:04:10,000
aumentare in modo esponenziale le dimensioni della finestra per misurare la

33
00:04:11,000 --> 00:04:15,000
quantità di dati che il ricevitore può ricevere e ciò che la rete può gestire.

34
00:04:16,000 --> 00:04:20,000
Probabilmente lo avrete notato, quando inizialmente scaricate un file da internet la

35
00:04:21,000 --> 00:04:23,000
velocità di download è lenta ma

36
00:04:24,000 --> 00:04:27,000
poi aumenta fino a un certo punto nel tempo.

37
00:04:28,000 --> 00:04:31,000
Questo perché le dimensioni della finestra inizialmente sono piccole ma aumentano

38
00:04:32,000 --> 00:04:35,000
in modo esponenziale fino a quando un pacchetto non viene

39
00:04:36,000 --> 00:04:40,000
rilasciato o l'host di ricezione non può gestire la quantità di dati che sta ricevendo.

40
00:04:41,000 --> 00:04:43,000
Quindi noterai inizialmente che la velocità di download è

41
00:04:44,000 --> 00:04:47,000
molto lenta e aumenta molto rapidamente, quindi arriva a un punto e quindi rimane

42
00:04:48,000 --> 00:04:49,000
intorno a quella velocità.

43
00:04:50,000 --> 00:04:51,000
Quindi, ancora una volta,

44
00:04:52,000 --> 00:04:55,000
supponiamo che gli host in questo esempio abbiano una dimensione fissa della finestra di 3.

45
00:04:56,000 --> 00:05:01,000
Ciò significa che A può inviare 3 segmenti prima di ricevere un riconoscimento.

46
00:05:02,000 --> 00:05:05,000
Quindi in questo caso l'host A invia il segmento

47
00:05:06,000 --> 00:05:10,000
1,2 e 3 l'host B riconosce per il segmento 4 consentendo così

48
00:05:11,000 --> 00:05:15,000
a A di sapere che ha ricevuto con successo il segmento 1,2

49
00:05:16,000 --> 00:05:21,000
e 3 l'host A quindi invia i segmenti 4,5 e 6 perché ha una dimensione di

50
00:05:22,000 --> 00:05:25,000
finestra fissa di 3 e l'host B riconosce per

51
00:05:26,000 --> 00:05:31,000
il segmento 7 consentendo a A di sapere che aveva ricevuto segmenti 4,5 e 6.

52
00:05:32,000 --> 00:05:37,000
Ricordare con riconoscimenti, riconoscere il segmento successivo che si desidera ricevere non il segmento che

53
00:05:41,000 --> 00:05:44,000
si è già ricevuto. 80 Quindi l'host B non riconosce per il segmento

54
00:05:45,000 --> 00:05:46,000
6 ma riconosce il segmento 7.

55
00:05:47,000 --> 00:05:52,000
Come ho detto, una finestra scorrevole consente agli host di misurare la quantità di dati

56
00:05:53,000 --> 00:05:57,000
che il ricevitore può ricevere e ciò che la rete può gestire.

57
00:05:58,000 --> 00:06:01,000
Quindi, in questo esempio, supponiamo che l'host stia utilizzando

58
00:06:02,000 --> 00:06:05,000
una finestra scorrevole nel modo in cui determinano cosa

59
00:06:06,000 --> 00:06:10,000
può gestire la rete quando un pacchetto viene rilasciato dalla rete, l'host rallenta.

60
00:06:11,000 --> 00:06:13,000
Questa informazione è trattata in modo

61
00:06:14,000 --> 00:06:17,000
molto più dettagliato in corsi che contengono qualità del servizio.

62
00:06:18,000 --> 00:06:20,000
Con questo corso basti pensare

63
00:06:21,000 --> 00:06:23,000
che quando un pacchetto si

64
00:06:24,000 --> 00:06:32,000
interrompe riducono drasticamente le dimensioni della finestra in breve, la dimensione della finestra è o la finestra concessa al mittente dal ricevitore

65
00:06:33,000 --> 00:06:38,000
o una finestra calcolata chiamata finestra di congestione o CWND la finestra di

66
00:06:39,000 --> 00:06:45,000
congestione o CWND è inizialmente impostato su un valore molto basso al momento della creazione della

67
00:06:46,000 --> 00:06:49,000
connessione e quindi aumenta ad una velocità esponenziale.

68
00:06:50,000 --> 00:06:53,000
Per ogni segmento perso, la finestra di congestione è

69
00:06:54,000 --> 00:06:57,000
per metà dopo che il segmento perso è stato

70
00:06:58,000 --> 00:07:01,000
correttamente ritrasmesso la finestra di congestione cresce di nuovo

71
00:07:02,000 --> 00:07:05,000
fino a raggiungere un valore pari a metà della

72
00:07:06,000 --> 00:07:11,000
finestra di congestione originale, quindi rallenta la sua crescita, utilizzando un algoritmo chiamato evitamento della congestione.

73
00:07:12,000 --> 00:07:17,000
Aumenta in modo esponenziale fino a metà della dimensione originale della finestra di congestione

74
00:07:18,000 --> 00:07:21,000
e poi aumenta lentamente alla velocità lineare.

75
00:07:22,000 --> 00:07:27,000
Nella qualità del servizio può essere utilizzato il rilevamento anticipato o il WRED casuale

76
00:07:28,000 --> 00:07:33,000
ponderato per migliorare l'efficienza delle trasmissioni TCP attraverso il collegamento mentre i pacchetti vengono

77
00:07:34,000 --> 00:07:39,000
rilasciati casualmente da vari flussi o varie sessioni che attraversano un'interfaccia individuale piuttosto che

78
00:07:40,000 --> 00:07:41,000
pacchetti provenienti

79
00:07:42,000 --> 00:07:45,000
da più mittenti che vengono rilasciati allo stesso tempo.

80
00:07:46,000 --> 00:07:49,000
questo evita un problema chiamato sincronizzazione globale in cui i pacchetti provenienti da

81
00:07:50,000 --> 00:07:54,000
più sessioni TCP vengono rilasciati contemporaneamente e quindi più host riducono le dimensioni e il rallentamento della

82
00:08:02,000 --> 00:08:04,000
finestra allo stesso tempo 110 e quindi aumentare

83
00:08:05,000 --> 00:08:08,000
gradualmente le dimensioni della finestra e quindi la velocità effettiva allo stesso tempo.

84
00:08:09,000 --> 00:08:14,000
Quindi molti host rallentano e accelerano allo stesso tempo

85
00:08:15,000 --> 00:08:17,000
con WRED, alcuni

86
00:08:18,000 --> 00:08:24,000
host rallenteranno e altri host aumenteranno il loro throughput o cadute casuali.

87
00:08:25,000 --> 00:08:30,000
Per ulteriori dettagli su WRED, fare riferimento alla documentazione sulla qualità del servizio. In

88
00:08:34,000 --> 00:08:39,000
questo esempio, supponiamo di iniziare con la dimensione iniziale della finestra di 3.

89
00:08:40,000 --> 00:08:49,000
Quindi A trasmette 3 segmenti a B, tuttavia solo i segmenti 1 e 2 arrivano all'host B, il

90
00:08:50,000 --> 00:08:52,000
segmento 3 scompare.

91
00:08:53,000 --> 00:09:00,000
L'host B può ridurre le dimensioni della finestra in questo esempio a 2 e riconoscere il segmento 3.

92
00:09:01,000 --> 00:09:08,000
Ricorda che il riconoscimento è per il prossimo pacchetto che gli host si aspettano di ricevere e poiché l'host

93
00:09:10,000 --> 00:09:12,000
B non ha ricevuto il

94
00:09:13,000 --> 00:09:17,000
segmento 3 sta confermando il ricevimento dei segmenti 1 e 2.

95
00:09:18,000 --> 00:09:25,000
L'host A ritrasmetterà il segmento 3 e in questo esempio invia il segmento 4 ma richiede anche una dimensione della finestra

96
00:09:26,000 --> 00:09:27,000
di 3.

97
00:09:28,000 --> 00:09:32,000
Entrambi questi segmenti sono ricevuti con successo dall'host B, pertanto l'host B confermerà

98
00:09:33,000 --> 00:09:35,000
il segmento 5, ma in questo

99
00:09:36,000 --> 00:09:39,000
esempio, desidera ancora una dimensione della finestra pari a 2.

100
00:09:40,000 --> 00:09:45,000
L'host A invierà solo 2 segmenti perché la dimensione della finestra negoziata è 2

101
00:09:46,000 --> 00:09:51,000
ma A potrebbe comunque richiedere che la dimensione della finestra aumenti a 3.

102
00:09:52,000 --> 00:09:57,000
Con la finestra scorrevole, esiste una negoziazione dinamica delle dimensioni di una finestra e la

103
00:09:58,000 --> 00:10:02,000
dimensione della finestra può cambiare notevolmente durante una sessione, a seconda di

104
00:10:03,000 --> 00:10:07,000
cosa può elaborare il ricevitore e di cosa può gestire la rete.
