|
Post by account_disabled on Oct 23, 2023 6:24:01 GMT
分组的时间 是往返时间当 远大于 时通信效率就会非常低。为了提高传输效率可以采用流水线传输例如连续 协议和窗口滑动机制。 连续 连续 规定每收窗口向前滑动个分组的位置接收方般采用累积确认的方式就是说接收方不必对收到的分组逐个确认只需要对按序到达的最后个分组进行确认。优点是实现容易即使确认丢失也不必重传确认是不能向发送方反映出接收方已经正确收到的所有分组的消息。例如发送方发生了 个分组第 个分组丢失了接收方只能确认前 个发送方必须把后面 个都重新发送。 滑动窗口机制 滑动窗口以字节为单位。 发送端有个发送窗口窗口重的序号是允许发送的序号窗口的后沿是已经发送并且确认的序号窗口的前沿是不允许发送的序号。窗口的后沿可能不动代表没有收到新的确认也有可能前移代表收到了新的确认但是不会后移不可能撤销建 最后的数据库 能已经确认的数据。窗口的前沿般是向前的也有可能不动表示没有收到新的请求或对方的接收窗口变小也有可能收缩但是 强烈不建议这么做因为发送端在收到通知前可能已经发送了很多数据此时如果收缩窗口可能会产生错误。 滑动窗口的状态需要 个指针 和。 之前的序号表示已经发送并且确认的 到 的序号表示已经发送但还没有确认的 到 表示允许发送的序号也叫可用窗口 到 表示发送窗口 之后的序号表示不可发送的。 发送缓存用来暂时存放发送应用程序传给发送方 准备发送的数据和已经发送但还没确认的数据。 接收缓存用来暂时存放按序到达的但尚未被应用程序读取的数据未按序到达的数据。 注意三点①发送窗口根据接收窗口设置但并不总是样大还要根据网络的拥塞情况调整。②对于不按序到达的数据 通常存放在接收窗口等到字节流缺少的字节收到后再按序交付上层应用程序。
|
|