TCP协议和UDP协议简述

TCP/IP协议

TCP/IP协议包含了一系列的协议,也叫TCP/IP协议族或TCP/IP。
在这里插入图片描述
TCP/IP协议的应用层主要协议有:HTTP、Telnet、FTP、SMTP等,是用来读取来自传输层的数据或者将数据传输写入传输层;
传输层的主要协议有UDP、TCP,实现端对端的数据传输;
网络层的主要协议有ICMP、IP、IGMP,主要负责网络中数据包的传送等;
链路层有时也称作数据链路层或网络接口层,主要协议有ARP、RARP。

关于TCP需要知道三次握手和四次挥手:

在这里插入图片描述

1.三次握手,建立连接

在这里插入图片描述
常见问题:
问1:为什么连接建立的时候是三次握手,可以改成两次握手吗?
答:三次握手可以有效防止已经失效的请求报文SYN突然又传到服务器引起错误,所以三次握手本质上是为了解决网络通信不可靠的问题。

问2:如何处理丢包问题,如何处理乱序问题
答:发送报文内容:序列号+长度+数据内容。 回复确认:ACK=序列号+长度=下一包起始序列号,假设发送过程中出现丢包现象,接收端可以要求发送端重传。从而解决丢包问题。

至于乱序问题,发送端可以将数据进行切割发送,接收端根据序列号和长度将接收到的数据进行重构,还原出原数据。
在这里插入图片描述

1.四次挥手,关闭连接

在这里插入图片描述
问题3:为什么客户端需要超时等待时间

:假设客户端发送完最后一次的ACK就立刻释放连接,那么一旦ACK包在网络中丢失,服务端会一直停留在LAST—ACK状态。相反,如果客户端发送完最后一次ACK并进入等待时间,若服务端没有收到此ACK会重发FIN包,客户端会重新响应这个FIN包,重发ACK包,并重刷超时时间。

他的作用同三次握手一样,是为了进行可靠的连接断开确认。

UDP协议

UDP协议是基于非连接的,发送数据就是简单的把数据封装一下,然后通过网卡发送出去,没有复杂的确认过程(自己只管发,不管对方收到的情况怎么样)。
特点是:传输简单,速度快,但是容易丢包,稳定性弱

TCP协议和UDP协议对比

TCP:稳定可靠,适用于对网络通讯质量要求较高的场景。比如传输文件、发送邮件、浏览网页等。

UDP:速度快,适用于对实时性要求高,但对丢包不敏感。例如域名查询,视频直播,语音通话等。
此外UDP还有一个特别重要的应用场景,就是隧道网络,比如常用的VPN。

内容来源:

一条视频讲清楚TCP协议与UDP协议-什么是三次握手与四次挥手-哔哩哔哩
史上最全TCP协议

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值