SSH协议通道数据窗口大小的目的是什么?

时间:2011-04-01 01:29:47

标签: ssh network-protocols putty

我在谈论安全外壳(SSH)连接协议RFC(RFC 4254)中定义的数据传输“窗口大小”。

我已经看到一些建议使SSH窗口大小与TCP窗口大小相同,以获得最佳数据传输速率。

如果它是用于缓冲,则套接字层已经在处理SSH的缓冲。

那有什么好处?

1 个答案:

答案 0 :(得分:8)

ssh默认情况下会对缓冲区和窗口做很多愚蠢的事情。匹兹堡超级计算中心的HPN-SSH网站可以很好地概述需要调整的内容,以及为各种OpenSSH版本进行调整的补丁。

但是关于软件中的缓冲和窗口:是的,内核套接字层会进行缓冲。它具有有限的缓冲区空间,必须在所有网络活动中共享;用户空间程序可以存储更多,而且他们可以这样做而不会导致上下文切换向缓冲区添加更多数据(这会变得很昂贵,特别是当它一次完成一个角色时)。