关于tcp慢启动阈值SSthresh变化的问题
RT
一台XP客户机通过Ftp从linux服务器中下载文件,20端口tcp连接初始通告窗口客户机win=65535,linux服务器win=5840;
我在服务器端测得:慢启动过程cwnd从3开始增大,ssthresh初始值一开始比较大(2万多),当慢启动过程进入拥塞避免是ssthresh第一次发生变化。但是重复测试发现ssthresh第一次变化后值是不稳定的。下面是几组数据:
<1> cwnd=50 ssthresh=49
<2> cwnd=37 ssthresh=36
<3> cwnd=33 ssthresh=32
<4> cwnd=29 ssthresh=28
测试环境是 8Mb 带宽,30ms时延,1‰丢包率,不存在信道容量不足的问题。linux内核版本 2.6.32
问题:慢启动阶段ssthresh初值如何确定的,快重传结束之后ssthresh、cwnd如何变化?(希望能结合具体的linux tcp实现给出答案,或者告诉我在哪可以找到,tcp/ip详解上面的就不要了)