win10和win server 2016新的TCP功能介绍

简介:

TCP Fast Open (TFO) - RFC 7413
TFO允许在TCP握手期间发送和接收初始SYN分组中的数据。如果客户端和服务器都支持TFO功能,则可以减少建立到同一服务器的多个TCP连接的延迟。这是通过在初始TCP握手之后在客户端上存储TFO cookie来实现的。如果客户端稍后重新连接,则此TFO cookie将发送到服务器,从而允许连续的TCP握手跳过一个往返延迟,从而减少延迟。
TCP快速打开默认情况下在Windows 10周年更新和更新的Linux 3.7 +内核中启用。它在Chrome中不适用于个人电脑(仅适用于Android / Chrome操作系统,请参阅: Chrome : / / flags /并查找“TCP快速打开”标志)。它可以在MS Edge浏览器中启用(请参阅关于:About:Flags setting "TCP Fast Open")。
您可以在命令提示符中使用以下命令查看当前值:
netsh int tcp show global
它可以使用以下方法设置:
netsh int tcp set global fastopen=enabled (default: enabled, possible values: enabled, disabled, default)
建议:保持默认值,在操作系统中启用即可,因为应用程序需要单独支持/启用它。它仍然需要更广泛的试用和适配。
注意:它可能会导致一些较旧的中间件/路由器/防火墙丢弃的数据包出现问题,这些中间件/路由器/防火墙不喜欢报头较大的SYN数据包。

Initial Congestion Window (IW, or ICW) - RFC 6928
初始拥塞窗口确定TCP在等待确认和根据线路条件调整传输速度之前可以发送多少数据。传统上(RFC 3390),这是在2和4段之间,然而,随着更快的宽带连接,已经建议将允许的TCP初始窗口( IW )增加到10段。
Windows 10和Server 2012 R2中的默认值为4 MSS,使用周年更新时,Internet模板的默认值将增加到10 MSS,这是一件好事。它不能直接在Windows 10 Home / Pro上更改,您必须将模板更改为“compat”以限制它,这将适得其反。
官方建议: 10比4好。

Tail Loss Probe (TLP) - experimental IETF draft
旨在提高丢包恢复能力。默认情况下,对于RTT超过10ms的连接启用此选项。
官方建议:最好保持启用状态,这是默认设置。

Recent ACKnowledgement (RACK) - experimental IETF draft
根据时间检测数据包丢失,而不是检查数据包序列。默认情况下,对于使用SACK的10ms RTT以上的连接启用此选项。客户端Windows 10操作系统已在“Internet”模板中启用,在“compat”模板中禁用,并且设置为只读。
官方建议: 尚不完全清楚,在某些边缘情况下可能有用,而收益可能会被间接费用抵消。需要进一步测试。

Windows Low Extra Delay BAckground Transport (LEDBAT) - RFC 6817
它是为后台传输设计的拥塞控制模块,因此它们仅消耗未使用的后台带宽,而不会干扰其他TCP连接。它是没有文档记录的、实验性的,并且不容易配置。
官方建议: 不相干,因为我们不能测试、改变或使用它
相关文章
|
5月前
|
网络协议 关系型数据库 MySQL
启动mysql时的异常为:[ERROR] Can‘t start server: Bind on TCP/IP port. Got error: 98: Address already in used
启动mysql时的异常为:[ERROR] Can‘t start server: Bind on TCP/IP port. Got error: 98: Address already in used
|
网络协议
TCP实现聊天功能
TCP实现聊天功能
112 0
TCP实现聊天功能
|
网络协议
TCP server
TCP server
101 0
|
网络协议 Java
Java网络编程Demo,使用TCP 实现简单群聊功能Groupchat,创建一个服务端,使多个客户端都能收到消息
Java网络编程Demo,使用TCP 实现简单群聊功能Groupchat,创建一个服务端,使多个客户端都能收到消息
206 0
Java网络编程Demo,使用TCP 实现简单群聊功能Groupchat,创建一个服务端,使多个客户端都能收到消息
|
网络协议 Java
Java网络编程Demo,使用TCP 实现简单群聊功能GroupchatSimple,多个客户端输入消息,显示在服务端的控制台
Java网络编程Demo,使用TCP 实现简单群聊功能GroupchatSimple,多个客户端输入消息,显示在服务端的控制台
188 0
Java网络编程Demo,使用TCP 实现简单群聊功能GroupchatSimple,多个客户端输入消息,显示在服务端的控制台
|
网络协议 Linux 测试技术
我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)
我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)
350 0
我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)
|
网络协议 Linux C语言
我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)
我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)
177 0
|
负载均衡 网络协议 Linux
我个人的Linux TCP server和client测试源码,C语言(3)(★firecat推荐★)
我个人的Linux TCP server和client测试源码,C语言(3)(★firecat推荐★)
298 0
|
网络协议 NoSQL Linux
我个人的Linux TCP server和client测试源码,C语言(1)(★firecat推荐★)
我个人的Linux TCP server和client测试源码,C语言(1)(★firecat推荐★)
243 0