IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> TCP和UDP的相爱相杀 -> 正文阅读

[网络协议]TCP和UDP的相爱相杀

传输层主要有TCP和UDP两个协议

TCP:传输控制协议,是一种面向连接的可靠协议

UDP:用户数据报文协议,是一种非面向连接的不可靠协议

TCP的面向连接体现在三次握手和四次挥手,可靠性具体体现在确认重传排序流控

由这两个特性,体现出TCP协议的以下特点:

优点:连接稳定,数据不会丢失,不重复,有顺序

缺点:只能一对一传输,仅适合应用于网络负担较小,准确性要求较高的网络

与其相对的UDP协议,非面向连接的不可靠协议,虽然没有三次握手四次挥手那样的稳点建立,不过UDP的传输速度较快,并且可以使用在网络负担较大的连接中,例如视频会话、DNS、FTP等

什么是三次握手四次挥手?

三次握手是TCP协议中建立会话的过程,基于该协议的特征建立一对一的对话模式

废话少说,上图!

?分为三步,首先是客户端向服务端发送同步序列请求,希望建立连接,序列号seq=x

然后服务端收到该请求之后,向客户端发送确认包,里面也包含同步请求,序列号=Y,确认号=X+1

最后客户端回应服务端,序列号=x+1,确认号=Y+1,会话建立成功

四次挥手:

?分四步走,首先主机A也就是客户端发送了一个断开请求,包括序列号和确认号,确认号是回应服务端的上一个请求

服务端在接收到了请求后,立刻回复一个ack确认包,表示已经收到FIN请求

然后,等到自己手里的工作完成后(向客户端发送的包结束过),也会向客户端发送一个FIN请求

最后客户端收到回应一个确认包,会话结束

TCP和UDP的报头

TCP:

UDP:?

?

为什么是三次握手?


这个问题反过来回答,首先如果是两次挥手,也就是C向S发送了同步请求,但是不知道对方有没有收到该请求,因此过了一段时间会再次发送请求。
此时,如果S刚刚收到C发送的第一个请求包,发送确认包之后,又来了一个包,服务器懵了,又发送一个确认包。这样容易导致建立会话失败。
然后,如果是四次挥手,也就是说服务器发送过确认包之后再发送同步请求,这两个包中间有延迟可能出问题先不说,很明显发送1个包更节省时间和空间。

为什么是四次挥手?


把这个问题具体化就是为什么是四次挥手不是三次?也就是为什么同步请求中服务器的请求和确认可以发同一个包,然后断开的时候就必须分开发
这个问题很简单,假设现在客户请求断开,服务器此时正在向客户端发送其他包,如果立即中断可能会导致数据丢失。因此,为了避免该情况的发生,
就必须在其他包发送完成之后向客户发送fin包,所以产生了四次挥手

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-07-14 23:16:55  更:2021-07-14 23:17:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/29 9:48:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码