计算机网络面试题/TCP
创始人
2024-06-02 14:40:29
0

TCP 三次握手

在这里插入图片描述
过程:

  • 客户端 SYN=1, seq=x 服务端
  • 服务端 SYN=1, ACK=1, ack=x+1, seq=y 客户端
  • 客户端 ACK=1, ack=y+1, seq=x+1 服务端

解释:

  • SYN代表连接建立请求
  • seq是数据段开始序号
  • ACK代表确认号启用,ACK=1时,ack才有效
  • ack是对对方发送数据的确认,期望收到的对方下一个数据段的起始编号

为什么要有三次分手:

  • 简单来讲就是你对我的服务,需要得到我的确认。类似于你在餐厅点菜,你点完菜后,服务员给你念一遍询问你是不是点这些菜,你再确认一下。这样的三次握手的过程,可以避免你最开始的错误点菜。
  • 三次握手是为了防止已失效的客户端连接请求报文段突然又传送到了服务端。

TCP 四次挥手

在这里插入图片描述
过程:

  • 客户端 FIN=1, seq=u 服务端
  • 服务端 ACK=1, ack=u+1, seq=v 客户端,注意这一步没有FIN
  • 服务端 FIN=1, ACK=1, ack=u+1, seq=w 客户端
  • 客户端 ACK=1, ack=w+1, seq=u+1 服务端

解释:

  • FIN代表连接结束请求
  • Close Wait此时处于半关闭状态,客户端无数据发送,服务端可能还有数据发送
  • MSL(Maximum Segment Lifetime)指一个片段在网络中最大的存活时间,2MSL就是一个发送和一个回复所需的最大时间,可以简单理解为一个RTT。如果直到2MSL,Client都没有再次收到FIN,那么Client推断ACK已经被成功接收,则结束TCP连接。

为什么要有四次分手:

  • 简单来说,类似于高考时提前交卷,需要得到监控老师的同意,监控老师同意后可能还会给你交代一些事情并让你签字,你同意之后才能离开考场
  • 四次分手主要是存在一个半关闭状态,当客户端无数据发送时,服务端可能还有数据要发送,于是服务端先同意客户端的关闭请求,服务端发完自己的数据后,再关闭自己

为什么需要等到2MSL:

  • 避免客户端最后一次ACK服务端没有收到。若服务端没有收到,客户会进行超时重传。超时重传是一种可靠传输机制。
  • 也是为了防止已失效的客户端连接关闭请求报文段突然又传送到了服务端。

TCP TIME-WAIT 等待 2MSL

为什么需要等到2MSL:

  • 避免客户端最后一次ACK服务端没有收到。若服务端没有收到,客户会进行超时重传。超时重传是一种可靠传输机制。
  • 也是为了防止已失效的客户端连接关闭请求报文段突然又传送到了服务端。

TCP SYN FLOOD

TCP 可靠传输

在这里插入图片描述
可靠传输是一种综合机制,包括,编号,确认和超时重传。流量控制,拥塞控制,校验和

  • 编号是对每一个byte进行编号,也就是TCP是面向字节的协议
  • 确认是通信一方对收到的另一方的数据的确认,可以进行累积确认
  • 超时重传是超过时间限制后,发送方没有收到接收方的确认时,自动重发接收方没有收到的数据
  • 流量控制在传输层是跨网络的,接收方控制发送方发送TCP报文速度的一种方式,流量控制是通过滑动窗口来实现的,在传输层,滑动窗口的数值是能够变化的,在数据链路层的流量控制滑动窗口的大小是固定的。
  • 拥塞控制是用来控制网络拥塞的,网络拥塞是增多网络中的报文量网络吞吐量反而下降的现象,报文超时重传是网络拥塞的征兆,传输层的拥塞控制涉及“慢开始”,“拥塞避免”和“快恢复”这三个算法
  • 发送窗口的大小由接收窗口和拥塞窗口共同决定

TCP 拥塞控制

在这里插入图片描述
介绍:横轴是RTT(往返时延,从开始发送数据到接收确认的时间),纵轴是CWnd(拥塞窗口)

在这里插入图片描述
介绍:横轴是RTT(往返时延,从开始发送数据到接收确认的时间),纵轴是CWnd(拥塞窗口)

在这里插入图片描述

拥塞控制是用来控制网络拥塞的,网络拥塞是增多网络中的报文量网络吞吐量反而下降的现象,报文超时重传是网络拥塞的征兆,传输层的拥塞控制涉及“慢开始”,“拥塞避免”和“快恢复”这三个算法

  • 慢开始算法,收到一个确认后,拥塞窗口值变为原来的两倍,以2的n次方形式进行指数增长
  • 达到门限值后,执行拥塞避免,收到一个确认后,拥塞窗口值增加1
  • 发生超时重传,此时网络可能发生了拥塞,降低门限值为此时拥塞窗口的一半,再又开始执行慢开始算法
  • 快恢复算法,当执行拥塞避免后的某一刻收到连续的3个重复ack加上初始ack共4个ack,可能是接收方收到的TCP报文丢失,重复,失序,而重复和失序不一定是网络拥塞造成的,丢失可能是由于网络拥塞造成的,因此执行快恢复算法,拥塞窗口和门限值都为此时拥塞窗口的一半

TCP 最大连接数限制

TCP 粘包/拆包的产生和解决

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...