免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3029 | 回复: 5
打印 上一主题 下一主题

[网络子系统] linux 源码/net/ipv4中拥塞窗口snd_cwnd单位和设置 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-20 15:07 |只看该作者 |倒序浏览
在linux源码目录下,net/ipv4文件夹中,tcp_cong.c中有结构体tcp_sock,
该结构体定义了u32 snd_cwnd ; /* Sending congestion window */  
这个变量被多个.c文件引用,如tcp_input.c,tcp_ipv4.c等,
我现在的问题是,这个窗口的单位是什么?
是字节,还是“数据包大小”?
这个窗口在增长时是按字节还是数据包大小递增呢?
按我的理解,这个窗口值就是慢启动窗口的初始值,
如果我一次要发送66k数据,要求一个RTT就能传送完,做得到吗?
是将snd_cwnd设置为66K吗?

论坛徽章:
0
2 [报告]
发表于 2013-03-05 20:01 |只看该作者
窗口在增长由
tp->snd_cwnd++
看是根据数据个数递增 但是增加可以发送多少个包之后 发送端再确定发送发送队列中的数据包 不管大小 就发送...

论坛徽章:
0
3 [报告]
发表于 2013-03-06 08:55 |只看该作者
回复 2# SCDXMOE


thanks,这问题我已经解决了   

论坛徽章:
0
4 [报告]
发表于 2013-03-06 16:04 |只看该作者
不客气  如果可以的话 分享一下您的理解....

论坛徽章:
0
5 [报告]
发表于 2013-03-07 13:33 |只看该作者
回复 4# SCDXMOE
snd_cwnd是以MSS为单位的,比如说10的窗口,就是10*MSS = 10*1500Byte,这1500Byte包括40Byte的头部。发送判断会处理当前滑动窗口(就是发送窗口,这个有点复杂)所能容纳的包。


   

论坛徽章:
0
6 [报告]
发表于 2013-03-08 14:47 |只看该作者
谢谢 分享....
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP