|
Post by mostafiz8ui on Apr 8, 2024 5:57:30 GMT
连续 连续 规定每收到个确认就把发送窗口向前滑动个分组的位置接收方般采用累积确认的方式就是说接收方不必对收到的分组逐个确认只需要对按序到达的最后个分组进行确认。优点是实现容易即使确认丢失也不必重传确认是不出接收方已经正确收到的所有分组的消息。例如发送方发生了 个分组第 个分组丢失了接收方只能确认前 个发送方必须把后面 个都重新发送。 滑动窗口机制 滑动窗口以字节为单位。发送端有个发送窗口窗口重的序号是允许发送的序号窗口的后沿是已经发送并且确认的序号窗口的前沿是不允许发送的序号。窗口的后沿可能不动代表没有收到新的确认也有可能前移代表收到了新的确认但是不会后移不可能撤销已经确认的数据。 窗口的前沿般是向前的也有可能不动表示没有收到新的请求或对方的接收窗口变小也有可能收缩但是 强烈不建议这么做因为发送端在收到通知前可能已经发送了很多数据此时如果收缩窗口可能会产生错误。 滑动窗口的状态需要 个指针 和。之前的序 越南 手机号码 表示已经发送并且确认的 到 的序号表示已经发送但还没有确认的 到 表示允许发送的序号也叫可用窗口 到 表示发送窗口 之后的序号表示不可发送的。 发送缓存用来暂时存放发送应用程序传给发送方 准备发送的数据和已经发送但还没确认的数据。 接收缓存用来暂时存放按序到达的但尚未被应用程序读取的数据未按序到达的数据。 注意三点①发送窗口根据接收窗口设置但并不总是样大还要根据网络的拥塞情况调整。 对于不按序到达的数据 通常存放在接收窗口等到字节流缺少的字节收到后再按序交付上层应用程序。③接收方必须有累积确认功能可以减小传输开销可以在合适的时候发送确认也可以在自己有数据需要发送时捎带确认。但是接收方不能过分推迟发送确认不能超过 秒。 流量控制 般我们都希望发送数据的速度尽可能快但如果发送数据的速度过快接收端来不及接收就可能导致数据丢失的问题。所谓流量控制就是根据接收端的接收能力动态地调整发送端的发送速度确保接收端来的及接收。流量控制主要是通过滑动窗口机制实现的。 发送窗口不能超过接收方的接收窗口在 窗口通知后可能会出现死锁问题接收方的接收缓冲又有了些存储空间但该通知丢失了发送方和接收方互相等待消息。
|
|