Differenza tra net.core.rmem_max e net.ipv4.tcp_rmem


14

Qual è la differenza tra net.core.rmem_max e il terzo valore di net.ipv4.tcp_rmem? Qual è la priorità più alta per le connessioni tcp?

Per i seguenti due esempi, qual è il buffer massimo per le connessioni tcp?

Case 1:
sysctl -w net.core.rmem_max=7388608
sysctl -w net.ipv4.tcp_rmem='4096 87380 8388608'

Case 2:
sysctl -w net.core.rmem_max=8388608
sysctl -w net.ipv4.tcp_rmem='4096 87380 7388608'

Priorità correlata a tcp?
Nils,

@Nils Sì, per connessioni tcp.
bydsky,

Risposte:


5

Core è il buffer di ricezione max complessivo, mentre tcp si riferisce solo a quel protocollo.

Per quanto riguarda la domanda prioritaria: sembra che l'impostazione tcp abbia la precedenza rispetto all'impostazione massima comune, il che è un po 'confuso. L'impostazione di max non ha alcun effetto sull'impostazione corrente di tcp (appena testata su CentOS 5).

Una descrizione più corretta sarebbe stata: default_max - ma era probabilmente troppo lungo.


1
La tua spiegazione ha senso, ma questo è in conflitto con quanto man tcpdice sul tcp_rmemvalore massimo del: the maximum size of the receive buffer used by each TCP socket. This value does not override the global net.core.rmem_max- vedi anche stackoverflow.com/questions/31546835/… . È man tcpsbagliato?
nh2,

@ nh2 Non sarebbe la prima volta che una pagina man è sbagliata.
Nils,

1
Come lo hai provato esattamente?
Wildcard

1
@Wildcard Ho impostato il valore e ho letto l'altro valore dopo Impostazioni il primo
Nils

3
@Nil, semplicemente leggere i valori non ti dirà se uno sostituisce un altro - devi effettivamente provare a ottenere un buffer TCP che superi il buffer net.core. [Wmem / rmem] _max per testare tale override.
Jordan Pilat,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.