Perché la dimensione massima del pacchetto SSH è 32k?

5

La mia domanda ha due parti.

Innanzitutto, perché un server SSH deve avere almeno una dimensione massima del pacchetto di 32678 bit? Sembra un po 'eccessivo per la maggior parte degli usi di SSH, escluso il trasferimento di file. È comune che i pacchetti SSH abbiano queste dimensioni, o sono pensati specificamente per il trasferimento di file?

In secondo luogo, sarebbe sconsigliabile ignorare lo standard e supportare una dimensione di pacchetto massima inferiore? Sto sviluppando uno stack SSH con un utilizzo di RAM molto basso, e semplicemente non posso permettermi di supportare una dimensione di pacchetti così grande. Posso supportare, ad esempio, pacchetti fino a 4096, e assicurarmi che certi servizi come il trasferimento dei file non vengano mai utilizzati?

Grazie

    
posta user2059810 24.07.2017 - 19:17
fonte

1 risposta

1

First, why must an SSH server have at least a maximum packet size of 32678 bits?

Perché è IETF standard (RFC 4253) e se vuoi rimanere interoperabile con altre applicazioni che usano questo standard, dovresti seguirlo. Se scegli un valore di amante diverso, prima o poi, potresti riscontrare errori imprevisti.

Dire che altri strumenti non supportano un pacchetto così grande non è vero. OpenSSH us utilizzando la dimensione massima del pacchetto di 256 K .

Second, would it be ill-advised to ignore the standard, and support a lower maximum packet size?

Bene ... puoi provarlo. Se l'implementazione viene eseguita nel modo in cui esiste un'unica costante che è possibile modificare in seguito, la implementerai e vedrai cosa succede ai tuoi clienti e al tuo caso d'uso. Dipende sempre da quale compatibilità stai mirando. Se vuoi supportare pochi client che gestisci, probabilmente è ok, ma se miri al servizio pubblico con client sconosciuti, potrebbe essere una cattiva idea.

    
risposta data 24.07.2017 - 22:15
fonte

Leggi altre domande sui tag