tcp的滑动窗口

今天阅读了TCP中滑动窗口部分的内容,总结如下:

滑动窗口:又叫缓冲区,是两台主机间传送数据时的缓冲区。每台TCP/IP主机支持两个滑动窗口:一个用于接收数据,另一个用于发送数据。
窗口尺寸表示计算机可能缓冲的数据量大小。 

为什么要有滑动窗口
a)每次只发送出一个数据包。
b)为什么不一次发送完所有数据包?
在Internet中,可能同时存在着数百万条TCP连接。如果这些连接同时无节制的发送数据包,那么整个网络都会被堵死,没有数据包能到达目的地。
因此TCP需要根据网络状况,每次发送若干数据包。

1、滑动窗口的意义:

       因特网中有数以万计的TCP连接,它们需要共享带宽,缓存等网络资源。 TCP希望能最大效率的利用网络资源,

       并将资源公平的分配到每条TCP连接上,还要尽量保证不让网络超负荷。滑动窗口机制有效的解决了这些问题。

2、滑动窗口的作用:
        滑动窗口机制是TCP用来控制发送数据包速率的。 发送方每次只能发送滑动窗口内部的数据包。


3、滑动窗口的运行方式:
        每收到一个新的确认(ack),滑动窗口的位置就向右移动一格。
        滑动窗口大小,受拥塞窗口(cwnd)和通告窗口(awnd)的制约。swnd = min [ cwnd , awnd ]。
        拥塞窗口是为了不造成阻塞,网络对发送方发包数量的限制。
        通告窗口是接收方TCP缓存当前的大小。它阻止由于发包数量过多,超出接收方缓存的容量。


滑动窗口设计的原则:
1.滑动窗口过大:带宽利用率较高,容易产生丢包现象的网络,则需要多次发送重复的数据,会造成重传太多,也同样耗费了网络带宽,通信效率严重下降
2.滑动窗口过小:则需要在网络上频繁的传输确认信息,占用了大量的网络带宽;也会造成通信效率下降

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值