计网必会:UDP差错检测,检验和、可靠数据传输原理
文章目录
- [前言]
- UDP套接字
- 无连接运输
- UDP 的优势
- UDP的差错检测
- 可靠数据传输
- 可靠传输的方式总结
- 构造可靠数据传输协议
- 可靠信道
- 具有比特差错的信道
- 三种可能
[前言]
之前一节我们介绍了运输层的总体概述以及多路复用,多路分解以及TCP和UDP的服务,下面将带领大家了解UDP的具体功能,首先回忆一下最后一小部分的内容。
UDP套接字
二元组作为标识,包含IP地址和目的端口号。因此如果两个UDP报文段有不同的源IP地址和/或源端口号,但具有相同的目的IP地址和目的端口号,那么这两个报文段通过相同套接字来传到相同的目的进程。
无连接运输
注意:选择UDP连接就好像是之间与IP地址进行互动
- UDP没有握手过程,是无连接的
- DNS是使用UDP服务的典型范例,如果没有收到响应,则会向另一DNS服务器发请求,直到发现怎么都没有响应(需要了解具体的可以点击:计网必会之DNS详解
UDP 的优势
- UDP的数据传输,让开发者能够更为靳准的控制应用层,
- UDP及时性较好,不需要建立连接,时延小
- UDP的报文首部开销较小。减少开销
UDP的差错检测
UDP的差错检测用来确定当UDP报文段从源到达目的地移动时,其中的比特是否发生改变,发送方的UDP对报文段中的所有16比特字的和进行反码计算。
例如
00001111
+10001000
-------------------
10010111
+10000000
————————
=00010111
结果显然溢出了,这时候我们把它变成反码
11101000
注意:结果不是全1,就说明传输出错了。
可靠数据传输
- 可靠数据传输协议是各种在传输上可靠的协议如
TCP
的总称- 可靠的意思就是数据能保证稳定不变的传输过去。也有的书上说是有序,只要理解即可。
可靠传输的方式总结
- 差错检测(校验和)
- 重传和定时器
- 累计确认(ACK)
- 序号和确认号
构造可靠数据传输协议
在此向伟大的计算机网络专业领袖前辈致敬。
可靠信道
RDT1.0协议
提供了可靠的信道,接收端不需要提供任何反馈给发送方了,不必担心差错
具有比特差错的信道
RDT2.0协议
自动重传请求协议
- 肯定确认:正确接收
- 否定确认:再发一次
自动重传请求协议的三种功能(顺序)
- 差错检测
- 接收方反馈
- 重传
注意:当发送方处于等待回应状态的时候,他不能从上层获取更多的数据,所以RDT2.0也叫停等协议
三种可能
- 如果接收方无法理解发送方的要求
- 如果检验能力增强,使其不仅能检验还能更正
- 如果接收方无法知道上次发送的回应报文能不能被发送发收到,无法预知接收的是新的还是重新传输的
解决问题:
添加新字段,让发送方对数据进行分组编号,接受方检查编号,确定收到的分组是否一次重传,对于停等协议,1比特的就足够了,这样可以让接收方知道发送方是否在重传一个发送分组或者新分组。
关于后续的解答我放到明天进行整理,因为这几个协议我感觉还是堆叠一起更好让人理解。
计网必会:UDP差错检测,检验和、可靠数据传输原理相关推荐
- 计算机网络自顶向下方法 第三章 运输层 3.4 可靠数据传输原理
计算机网络自顶向下方法总结3.4可靠数据传输原理 目录 3.4 可靠数据传输原理 3.4.1 构造可带数据传输协议 3.4.2 流水线可靠数据传输协议 3.4.3 回退N步 3.4.4 选择重传 3. ...
- 计算机网络(14)——可靠数据传输原理
文章目录 可靠数据传输原理 构造可靠数据传输协议 经完全可靠信道的可靠数据传输:rdt 1.0 经具有比特错误信道的可靠数据传输:rdt 2.0 经具有比特错误信道的可靠数据传输:rdt 2.1 经具 ...
- 可靠数据传输原理详细图解
可靠数据传输原理 概述 rdt1.0 rdt2 rdt2.0 rdt2.1 rdt2.2 rdt3.0 流水线可靠数据传输协议 为什么使用流水线 流水线对可靠数据传输协议带来的影响 流水线协议中恢复差 ...
- 计网必会:电子邮件、SMTP协议
文章目录 SMTP概念 SMTP的操作过程--发送邮件-接收邮件 细品:发送邮件 与HTTP的对比 邮件报文格式和MIME 邮件访问协议 SMTP概念 SMTP是电子邮件中的主要协议,它能使用TCP可 ...
- 可靠数据传输原理1(构造可靠数据传输协议)
TCP向调用它的因特网应用所提供的服务模型(服务抽象) 数据可以通过一条可靠的信道进行传输.借助于可靠的信道,传输比特就不会受到损坏或丢失,而且所有数据都是按其发送顺序进行交付. 可靠传输协议 实现服 ...
- 计算机网络(自顶向下方法)学习记录---3.4 可靠数据传输原理
文章目录 前言 一.构造可靠传输协议 1.rdt1.0 2.rdt2.0 3.rdt2.1 4.rdt3.0 二.GBN 总结 前言 在学习3.5节TCP传输之前,我们需要先了解到可靠数据的传输原理, ...
- CRC 循环冗余检验【计网必考】
CRC 循环冗余检验作为一个重点,也是数据链路层必考的一个考点,所以我把差错检测单独拿出来分析一起看一下.总结不易,一个简单的攒,Thanks♪(・ω・)ノ 目录 一.介绍及工作原理 二.校验计算过程 ...
- 计网实验原理-TCP/UDP套接字编程
计算机网络自顶向下结构--第7版 第二章实验,套接字编程 代码运行环境:window10,python 3.8.对于书上代码略作修改. 进程与计算机网络之间的接口 多数应用程序是由通信进程队组成的,每 ...
- 计网必会:HTPP详解(非常全面)、cookie、缓存
文章目录 应用层协议 Web和HTTP HTTP 概述 采用非持续连接的HTTP RTT 往返时间的定义 **三次握手过程** 采用持续连接的HTTP HTTP到底采用哪个? HTTP 的报文格式 请 ...
最新文章
- elgamal java_ElGamal - 源码下载|系统编程|加密解密|源代码 - 源码中国
- 2.9 穆尔彭罗斯伪逆
- pytorch学习——基本优化思想与最小二乘法
- android--多View切换viewpager
- 如何实现插入数据时自动更新另外一个表的内容
- asx根据时间点播放
- loadrunner 11下载及破解
- f2fs文件系统的页缓存
- Phase2 Day3 List
- python求三角形的角度
- Centos7重置用户密码
- windows 远程桌面客户端
- 现货期货价格关系(现货期货价格关系分析)
- svm matlab 图像分割,勇哥的视觉实验:SVM分类器(二) 支持向量机的应用例子,图片分割...
- 如何临时修改ip地址,永久修改ip地址
- oracle中dlink使用,create dlink(oracle)
- Linux三剑客用法整理
- CAD文件转换为SVG文件
- N1文法 ーー 可能・不可能・禁止
- Flutter MaterialApp 和 Scaffold 组件