已注册的 I/O 套接字和 TCP 窗口大小

huangapple go评论65阅读模式
英文:

Registered I/O Sockets and Tcp Window size

问题

由于Windows Registered I/O (RIO)套接字没有内部缓冲区,并且SO_RCVBUF套接字选项不适用,那么如何计算/通告这些套接字的TCP窗口呢?

英文:

Since Windows Registered I/O (RIO) Sockets don't have an internal buffer and SO_RCVBUF socket option doesn't apply. How is the Tcp window calculated/advertised for those?

答案1

得分: 1

RIO API extensions 更适用于大量小消息传输场景。它使用队列技术加快接收和发送操作。

对于多个 RIOReceive,您可以使用不同的 RIO_BUF 结构的不同偏移量和长度指向已注册缓冲区中的不同子缓冲区。

已注册的缓冲区不会影响接收窗口大小。如果您想要更改它,请参考以下文档。

Windows 中的 TCP 接收窗口自动调整级别功能

SIO_SET_COMPATIBILITY_MODE 控制代码

Win32_NetworkAdapterConfiguration 类的 SetTcpWindowSize 方法

英文:

RIO API extensions are more helpful for large numbers of small messages transmission scenario. It uses queue technique to speed up receiving and sending operations.

For multiple RIOReceive, you can point to different sub-buffer in the registered buffer using different Offset and Length of the RIO_BUF structure.

Registered buffer will not affect the receive window size. Refer to the following documents if you want to change it.

TCP Receive Window Auto-Tuning Level feature in Windows

SIO_SET_COMPATIBILITY_MODE Control Code

SetTcpWindowSize method of the Win32_NetworkAdapterConfiguration class

huangapple
  • 本文由 发表于 2020年1月3日 15:35:18
  • 转载请务必保留本文链接:https://go.coder-hub.com/59574802.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定