流水线机制、滑动窗口协议、GBN、SR
一、滑动窗口协议
为了解决停等操作的性能问题(发了一个分组之后一直等到确认了这个分组才发下一个),推出了流水线机制,提供资源利用率。就是允许发送方在收到对方的ACK前,发送多个分组
其中窗口是一个范围管理发出去还没确认的分组,随着不断传输,这个窗口不断滑动,名称的由来。窗口左端的序号收到了ACK,就可以往右滑动了。
滑动窗口协议有GBN、SR
二、滑动窗口协议的实现:GBN
1.分组头部包含序列号
2.窗口如下,大小为N,最多允许N个分组未确认
3.ACK(n),则表示确认从开始到n(包含n)的序列号全部正确接收
4.会空中在传的分组设置一个Timer计时器,处理超时,如果收到了timeout(n)事件,那么会重传的是n以及n以后的所有分组(尽管后面的可能已经收到了,这就是回退,回退到n开始传,GBN)
5.接收方会有一个期望序列号,如果收到的不是期望的分组,直接丢弃
三、滑动窗口协议的实现:SR(选择重传)
GBN缺陷,累积确认机制导致回退到N,重复传了很多。解决这个。
1.对每个分组分别确认,不再只接收期望的,接到不期望的,就先缓存(设置缓存机制),接到期望的才交付上层
2.发送方只需要重传那些没收到ACK的分组了
3.产生了接收方窗口(GBN只有发送方窗口),用来缓存,现在有两窗口了
4.序列号的位数是K的话,那么得满足 接收方窗口大小N+发送方N<= 2的k次方,防止因为接收方ACK丢失导致发送重发k号分组,而此时接收方滑到了新窗口,新窗口有新的k号分组(不是原来的,共用序号产生的),导致出错
转载于:https://www.cnblogs.com/chz-blogs/p/9526618.html
流水线机制、滑动窗口协议、GBN、SR相关推荐
- 三句话介绍清楚滑动窗口协议/GBN/SR
滑动窗口协议.GBN.SR之间不得不说的故事 首先我们来介绍什么是滑动窗口协议 滑动窗口协议(Sliding Window Protocol),属于TCP协议的一种应用,用于网络数据传输时的流量控制, ...
- rdt滑动窗口协议Java实现_可靠传输数据概述之RDT到滑动窗口协议的发展
主要思想是有限状态机. RDT1.0 RDT1.0是模拟信道可靠的情况下. RDT1.0存在的问题: 信道完全可靠是理论的模型 RDT2.0 RDT2.0是模拟信道不可靠的情况下(数据位翻转,但不丢失 ...
- TCP 滑动窗口协议 详解
滑动窗口机制 (1).窗口机制 滑动窗口协议的基本原理就是在任意时刻,发送方都维持了一个连续的允许发送的帧的序号,称为发送窗口:同时,接收方也维持了一个连续的允许接收的帧的序号,称为接收窗口. ...
- 计算机网络 TCP 滑动窗口协议 详解
滑动窗口机制解析: 1.窗口机制 滑动窗口协议的基本原理就是在任意时刻,发送方都维持了一个连续的允许发送的帧的序号,称为发送窗口:同时,接收方也维持了一个连续的允许接收的帧的序号,称为接收窗口.发送窗 ...
- 滑动窗口协议 c语言,TCP滑动窗口协议详解.docx
本文源自CSDN博客: HYPERLINK "/THISISPAN" /THISISPAN欢迎各位访问博客,进行技术交流 滑动窗口机制 (1)?窗口机制 滑动窗口协议的基本原理就是 ...
- 【计算机网络】数据链路层 : 流量控制 ( “流量控制“ 机制 | 停止-等待协议 | 滑动窗口协议 | 后退 N 帧协议 GBN | 选择重传协议 SR | 滑动窗口 与 流量控制、可靠传输 )
文章目录 一. 数据链路层 流量控制 二. 数据链路层 与 传输层 流量控制 机制 三. 数据链路层 流量控制 四. 数据链路层 流量控制 方法分类 五.停止等待协议 六.滑动窗口协议 七.滑动窗口协 ...
- 计算机网络笔记(5) 传输层滑动窗口协议(GBN、SR)
文章目录 滑动窗口协议(Sliding-window protocol) GBN(Go-Back-N/后退N帧协议) SR协议(Selective Repeat/选择重传协议) 滑动窗口协议(Slid ...
- 网络通信-滑动窗口协议-SWP
本篇主要讲解:网络通信-滑动窗口协议-SWP 参考链接1 参考链接2 参考链接3 目录 文章目录 网络通信-滑动窗口协议-SWP TCP可靠传输 窗口介绍 窗口和缓存的关系 功能作用 窗口大小 工作原 ...
- TCP连续ARQ协议和滑动窗口协议
TCP协议通过使用连续ARQ协议和滑动窗口协议,来保证数据传输的正确性,从而提供可靠的传输. 一.ARQ协议 ARQ协议,即自动重传请求(Automatic Repeat-reQuest),是OSI模 ...
- WireShark 探索网络请求过程(五层网络模型、三次握手、滑动窗口协议)
当我们在浏览器输入URL点击确认后,浏览器展示出网页信息.可你曾想过这其中的过程是怎样的?理论性较强的朋友可能知道后续DNS会解析地址,然后TCP/IP三次握手建立起连接,紧接着客户端与服务器开始传 ...
最新文章
- 史上最详细“截图”搭建Hexo博客——For Windows
- python打印log重复问题
- 利用Flask来构建项目的大概步骤
- 用python绘制好看的图形_如何使用Python绘制好word cloud,怎么,画出,好看,的,词,云图...
- python热力图背景_python 绘制场景热力图的示例
- ubuntu14安装python_ubuntu14.04 安装python3.7
- [微博]页面table 闪动问题解决
- 机器学习及深度学习相关资料汇总
- 十大算法(动图讲解)❤️超详细!
- 从吴军的书《见识》总结的49条商业本质、为人方法
- nginx: worker process is shutting down
- java SpringBoot报错Servlet.service() for servlet 和No converter for的解决办法
- Axure RP9教程 内部框架
- 软件生存周期的图示——DO-178B/ED-12B学习笔记之九
- MATLAB中均值、方差、均方差的计算方法
- linux在线ipa签名,利用Cydia Impactor免越狱安装未签名APP教程 | ZMMOO
- 【纯萌新】初学KOA的一些避雷一点点经验
- 【网络篇】第三篇——源端口号和目的端口号
- 新氧打出精细化运营组合拳 激活医美发展新动力
- 三极管电路--低通滤波器