TCP-流量控制

TCP连接中,接收方的缓存管理至关重要。流量控制确保发送方速率与接收方读取速率匹配,防止接收缓存溢出。TCP通过接收窗口变量rwd动态调整发送速率,确保LastByteRcvd - LastByteRead <= RcvBuffer,维持缓存空间的安全。接收窗口大小rwd=RcvBuffer-[LastByteRcvd - LastByteRead],这一机制确保了数据传输的稳定性。
摘要由CSDN通过智能技术生成

一条TCP连接每一侧主机都应为该连接设置接收缓存,当TCP收到正确、按序的字节后,它将数据放入接收缓存。相关的应用进程从该缓存中读取数据,应注意,读取缓存可能并不是数据一到达就立即读取,因为接收方应用可能正忙于其他任务。这时问题就产生了,如果接收方读取太慢发送发发送太快、太多,那么接收缓存会发生溢出

流量控制:用来消除发送方使接收方缓存溢出的可能性。流量控制是一个速度匹配服务,即发送方的发送速率与接收方应用程序的读取速率相匹配。

尽管流量控制和拥塞控制都是对发送方的抑制,但它们是针对完全不同的原因而采取的措施。

流量控制是因为发送速率与读取速率不匹配。

拥塞控制是因为IP网络的拥塞。

TCP让发送发维护一个接收窗口的变量来提供流量控制。

接收窗口:接收方还有多少可用的缓存空间。

因为TCP是全双工通信,接收方也会维护一个接收窗口。

具体流量控制如下:

定义三个变量,分别是:

RcvBuffer:接收缓存的大小

LastByteRead:接收方的应用进程从缓存中读取的数据流的最后一个字节的编

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值