3. Definizioni (Definitions)
I seguenti termini, parametri e variabili di stato sono usati come definiti nei documenti precedenti:
Terminologia TCP di base
SND.UNA: Il numero di sequenza non riconosciuto più vecchio (oldest unacknowledged sequence number). Questo è definito nella sezione 3.4 di [RFC9293].
SND.NXT: Il prossimo numero di sequenza da inviare (next sequence number). Questo è definito nella sezione 3.4 di [RFC9293].
ACK duplicato (duplicate ACK): Un riconoscimento è considerato un "riconoscimento duplicato (duplicate acknowledgment)" o "dupack" quando (a) il ricevitore dell'ACK ha dati in sospeso, (b) il riconoscimento in arrivo non trasporta dati, (c) i bit SYN e FIN sono entrambi spenti, (d) il numero di riconoscimento è uguale a SND.UNA, e (e) la finestra annunciata nel riconoscimento in arrivo è uguale alla finestra annunciata nell'ultimo riconoscimento in arrivo. Questo è definito nella sezione 2 di [RFC5681].
FlightSize: La quantità di dati che è stata inviata ma non ancora riconosciuta cumulativamente. Questo è definito nella sezione 2 di [RFC5681].
Receiver Maximum Segment Size (dimensione massima del segmento del ricevitore, RMSS): Il RMSS è la dimensione del segmento più grande che il ricevitore è disposto ad accettare. Questo è il valore specificato nell'opzione MSS inviata dal ricevitore durante l'avvio della connessione (vedere sezione 3.7.1 di [RFC9293]). Oppure, se l'opzione MSS non è utilizzata, un valore predefinito di 536 byte per IPv4 o 1220 byte per IPv6 (vedere sezione 3.7.1 di [RFC9293]). Questa dimensione non include le intestazioni e le opzioni TCP/IP. Il RMSS è definito nella sezione 2 di [RFC5681] e nella sezione 3.8.6.3 di [RFC9293].
Sender Maximum Segment Size (dimensione massima del segmento del mittente, SMSS): Il SMSS è la dimensione del segmento più grande che il mittente può (può) trasmettere. Questo valore può (può) essere basato sull'unità massima di trasmissione (Maximum Transmission Unit, MTU) della rete, l'algoritmo di scoperta dell'MTU del percorso [RFC1191] [RFC8201] [RFC4821], RMSS o altri fattori. Questa dimensione non include le intestazioni e le opzioni TCP/IP. Questo è definito nella sezione 2 di [RFC5681].
Receiver Window (finestra del ricevitore, rwnd): La finestra del ricevitore annunciata più di recente, in byte. In qualsiasi momento, la connessione non deve (non deve) inviare dati con un numero di sequenza superiore alla somma di SND.UNA e rwnd. Questo è definito nella sezione 2 di [RFC5681].
Congestion Window (finestra di congestione, cwnd): Una variabile di stato che limita la quantità di dati che una connessione può (può) inviare. In qualsiasi momento, una connessione non deve (non deve) inviare dati se inflight (vedere sotto) corrisponde o supera cwnd. Questo è definito nella sezione 2 di [RFC5681].
Slow Start Threshold (soglia di avvio lento, ssthresh): La variabile di stato della soglia di avvio lento (ssthresh) è utilizzata per determinare se l'algoritmo di avvio lento o di prevenzione della congestione è utilizzato per controllare la trasmissione dei dati. Durante il ripristino rapido, ssthresh è la dimensione della finestra target per la fase di ripristino rapido, come determinato dall'algoritmo di controllo della congestione. Questo è definito nella sezione 3.1 di [RFC5681].
Terminologia specifica di PRR
PRR definisce variabili e termini aggiuntivi:
Delivered Data (dati consegnati, DeliveredData): La migliore stima del mittente dei dati del numero totale di byte che l'ACK corrente indica essere stati consegnati al ricevitore dall'ultimo ACK ricevuto.
In-Flight Data (dati in volo, inflight): La migliore stima del mittente dei dati del numero di byte non riconosciuti in volo nella rete, cioè byte inviati ma né persi né ricevuti dal ricevitore dei dati.
Recovery Flight Size (dimensione di volo di ripristino, RecoverFS): La stima del mittente del numero di byte che possono (può) essere consegnati durante la fase PRR corrente.
SafeACK: Una variabile booleana locale che indica che l'ACK corrente suggerisce che il ripristino sta procedendo bene, e il mittente può (può) inviare più aggressivamente se appropriato, aumentando inflight.
SndCnt: Una variabile locale che indica quanti byte dovrebbero (dovrebbe) essere inviati in risposta a ciascun ACK.
Voluntary window reductions (riduzioni volontarie della finestra): Scegliere di non inviare dati in risposta a qualche ACK, allo scopo di ridurre la dimensione della finestra di invio e la velocità dei dati.