2016-12-15 7 views
0

Я попытался увеличить значение SO_RCVBUF на getsockopt (udp_fd, SOL_SOCKET, SO_RCVBUF, & rcvBufferSize, & sockOptSize), но я не в состоянии увеличить его более rmem_max значение.Как увеличить net.core.rmem_max значение из кода С

Так что, пожалуйста, расскажите, как я могу увеличить его по коду C. Я не хочу, чтобы увеличить его с помощью команды:

$ sysctl -w net.core.rmem_max=value 
+0

В чем проблема с [ ваш предыдущий вопрос] (http://stackoverflow.com/questions/41158628/how-to-increase-net-core-rmem-max-value-by-c-code/41158780#41158780) ??? – LPs

ответ

0

В ядрах Linux 2.6.14 и выше, мы имеем SO_RCVBUFFORCE, которые могут быть использованы для переопределения предела rmem_max. Однако для этого необходимо установить CAP_NET_ADMIN.

Проверить https://linux.die.net/man/7/socket.

0

Так скажите, пожалуйста, как я могу увеличить его на C кодекс

Если процесс имеет права администратора, то пусть printf нужный номер в

/proc/sys/net/core/rmem_max 
+0

максимальные ограничения существуют по причине. Если бы вы могли изменить его без каких-либо привилегий, это победит цель этих ограничений. –