C 修改windows中套接字缓冲区大小的默认值

C 修改windows中套接字缓冲区大小的默认值,c,windows,sockets,C,Windows,Sockets,在socket编程中,当RAM的大小大于19MB时,SO_SNDBUF和SO_RCVBUF的默认值为8192字节 现在,我想更改套接字的套接字缓冲区大小。我知道一种方法是通过setsockopt。但是,我希望将更改应用于系统默认值,并且能够为我在系统中创建的所有套接字使用套接字缓冲区的修改值。请让我知道在windows平台中在何处进行配置更改?这里有对其工作原理的描述: 解决办法应该是: [HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Servi

在socket编程中,当RAM的大小大于19MB时,SO_SNDBUF和SO_RCVBUF的默认值为8192字节


现在,我想更改套接字的套接字缓冲区大小。我知道一种方法是通过setsockopt。但是,我希望将更改应用于系统默认值,并且能够为我在系统中创建的所有套接字使用套接字缓冲区的修改值。请让我知道在windows平台中在何处进行配置更改?

这里有对其工作原理的描述:

解决办法应该是:

[HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services \Afd \Parameters]
DefaultReceiveWindow = 16384
DefaultSendWindow = 16384

虽然我添加了这个参数,但是套接字没有选择这个值。它只使用默认值。您有什么建议吗?@sreepurna修改注册表项后是否重新启动了服务?您可以使用netsh(但我不知道excat命令),也可以重新启动系统。