tcp协议里拥塞控制,流量控制用了一些滑动窗口。在一般的tcp教材里都有详细的介绍。 哪位GG能说说,这玩意在开发应用程序的时候,有什么具体作用么?还只是一些理论上的东西, 作为协议的开发才需要。
tcp的特点之一是提供体积可变的滑动窗口机制,支持端到端的流量控制。tcp的窗口以字节为单位进行调整,以适应接收方的处理能力。处理过程如下: (1)tcp连接阶段,双方协商窗口尺寸,同时接收方预留数据缓存区; (2)发送方根据协商的结果,发送符合窗口尺寸的数据字节流,并等待对方的确认; (3)发送方根据确认信息,改变窗口的尺寸,增加或者减少发送未得到确认的字节流中的字节数。调整过程包括:如果出现发送拥塞,发送...
动态优化 GNU/Linux tcp/IP 栈 看/proc/sys/net/ipv4/ipfrag_high_thresh和/proc/sys/net/ipv4/ipfrag_low_thresh了解系统可以处理的包的数目 标准的 GNU/Linux 发行版试图对各种部署情况都进行优化。这意味着标准的发行版可能并没有对您的环境进行特殊的优化。 解决方案 GNU/Linux 提供了很多可调节的内核参数,您可以使用这些参数为您自己的用途对操作系统进行动态配置。下面我们来了解一下影响 socket 性能的...
我们知道tcp因为流量控制和拥塞控制的要求,在一个连接中保留的未确认的分组数应该小于等于min{拥塞窗口大小,接收窗口大小},这里的接收窗口应该是对方的接收窗口吧?对方通过将接收窗口反馈给本地,从而通知本地调整发送速度。那tcp数据段中的窗口大小字段是指哪一方的窗口呢?比如本地发送一个tcp数据段,其中的窗口大小字段是指本地的窗口大小吗?小弟最近在自学计算机网络,还望各位高手指教!
linux收到tcp的FIN请求时,将FINACK和FIN合成了一个segment. 请问有没有办法拆开发送呢?或者哪位达人指教一下怎么修改内核源码,我胡乱查了一下源码还是没有头绪