Perché MSS è necessario nei cookie SYN?

2

Stavo leggendo RFC4987 che descrive i cookie SYN e sembra che il Maximum Segment Size (MSS) sia codificato nel SYN cookie e io non sono sicuro del perché sia così? Qualcuno può spiegare perché abbiamo bisogno dell'MSS nel cookie SYN?

    
posta Hooman 07.11.2016 - 17:52
fonte

1 risposta

2

Questo ha qualcosa a che fare con MTU e Percorso MTU Discovery (PMTUD).

Supponiamo che il tuo MTU sia 1400 e MTU del tuo server sia 1500. Quando provi a scaricare il file, senza MSS o PMTUD, il server proverà ad inviarti file in circa 1500 pacchetti di byte che verrebbero eliminati dal tuo MTU solo 1400.

Con Path MTU Discovery, il server può scoprire qual è la dimensione MTU, il fatto è che si basa su ICMP. Quindi, quando il pacchetto viene eliminato, il messaggio ICMP viene rinviato. Tuttavia, se ICMP è bloccato, il server deve fare affidamento sul valore MSS incluso nel pacchetto SYN. Quindi, se si riduce il MTU, anche il valore MSS nei pacchetti SYN verrà abbassato, così i server ora sapranno come dimensionare i pacchetti.

Il router può anche alterare il campo MSS nei pacchetti SYN per adattarsi a MTU della linea a banda larga come ADSL. È la funzione di iptables "SYN TCPMSS clamp to PMTU". Questo perché se il tuo MTU di linea a banda larga è inferiore al tuo MTU WIFI (che normalmente è 1500), il router potrebbe aver bisogno di applaudirlo per far sì che i pacchetti provenienti dai server di Internet siano dimensionati per la tua banda larga e non WIFI.

    
risposta data 07.11.2016 - 18:34
fonte

Leggi altre domande sui tag