tcp_rmem sysctl如何影响RAM的使用?

问题描述 投票:0回答:1

我想配置tcp_rmem,使其在低延迟和高延迟时都能工作。我想为tcp_rmem设置更高的值,这样它就可以在高延迟的情况下工作。想象一下,如果延迟很低,那么每个连接要为接收缓冲区分配多少内存?

例如,如果我把tcp_rmem设置为1MB(最小值) 2MB(默认值) 3MB(最大值).1. 2.它是否总是为每个连接分配2MB,还是根据需要分配2MB?2.它是否从1MB开始,当看到1MB不够时,就分配2MB,当看到2MB不够时,就分配3MB。无论延迟如何,它都会根据输入的速率分配1MB或2MB或3MB?

所以在我的测试中,速率是常数,延迟是可变的。90%的时候,延迟会非常低。但是为了处理这10%的高延迟情况,我必须把tcp_rmem改成高值,这也会影响90%的其他情况。

我找不到tcp_moderate_rcvbuf参数怎么用?根据什么参数分配内存。

networking tcp buffer throughput
1个回答
0
投票

min,default,max这两个字段的含义如下:min: 它总是保证分配最小的socket缓冲区大小,使用socket选项SO_RCVBUF,任何大小的缓冲区都可以作为接收缓冲区,但不能超过max。使用socket选项SO_RCVBUF,接收缓冲区的大小可以是任意大小,但不能超过最大值。

default.max:默认值。max: 如果使用SO_RCVBUF明确设置,则不能设置超过这个值的socket缓冲区大小。

SO如果设置了更高的min、default、max值。无论延迟和吞吐量如何,都会一直使用它们。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.