面试tcp协议-【深度讲解+面试回答】tcp/ip协议三次握手、四次挥手,通俗易懂,亲自解答

AID:
CID:
视频图片:
作者头像:
弹幕地址:
视频描述:

热门回复:

  • 一一风荷举zzz:TCP/IP 协议是传输层的一个面向连接的安全可靠的一个传输协议,三次握手的机制是为了保证能建立一个安全可靠的连接,那么第一次握手是由客户端发起,客户端会向服务端发送一个报文,在报文里面:SYN标志位置为1,表示发起新的连接。当服务端收到这个报文之后就知道客户端要和我建立一个新的连接,于是服务端就向客户端发送一个确认消息包,在这个消息包里面:ack标志位置为1,表示确认客户端发起的第一次连接请求。以上两次握手之后,对于客户端而言:已经明确了我既能给服务端成功发消息,也能成功收到服务端的响应。但是对于服务端而言:两次握手是不够的,因为到目前为止,服务端只知道一件事,客户端发给我的消息我能收到,但是我响应给客户端的消息,客户端能不能收到我是不知道的。所以,还需要进行第三次握手,第三次握手就是当客户端收到服务端发送的确认响应报文之后,还要继续去给服务端进行回应,也是一个ack标志位置1的确认消息。通过以上三次连接,不管是客户端还是服务端,都知道我既能给对方发送消息,也能收到对方的响应。那么,这个连接就被安全的建了。
  • 幻月sunshine:我认为教程类视频不能以数据论,我觉得一个教程能给人带来启发和进步就是成功的。要播放量好看还是要靠有梗和追热点,感觉现在B站上看正经教程的人还是比较少,原因是B站正在开始转型中(要成为一个学习软件)等到B站的学习氛围开始形成以后估计这样的视频出彩才有可能成为常态吧
  • 你的瓦尔登湖:【三次握手】 男:我们在一起吧 女:好的啊 男:好的,从现在开始吧 【四次挥手】 男:我们分手吧 女:我想一下 女:我们分手吧 男:好的,现在就结束吧
  • 我們敲代碼的不懂這個:客户端:你在线吗? 服务器:我在,你在线吗? 为什么不是两次握手? 因为在这两次握手之后,对于客户端来说,发送和接收都没有问题,但是对于服务器,只知道接受没有问题,发送的消息客户端有没有收到,服务器是不知道的,因此需要第三次握手,也就是 客户端:我也在 此时三次握手之后,服务器知道了自己发送是没问题,因此连接是可靠的。 为什么不是四次握手? 这是两种情况,第一种是把服务器的确认ACK和连接SYN分两次发送,这种在理论上是可行的,就好比 服务器:我在 服务器:你在线吗? 但是一次性能干完的事情,非分两次,太浪费资源了。 第二种情况就是客户端再次发送确认消息,也是同理,三次握手就已经保证了双方的连接是可靠的,客户端再确认也是浪费资源
  • 我們敲代碼的不懂這個:客户端:我数据传完了,我要下线了 服务器:知道了,我还有点数据,你等下 一段时间后 服务器:我数据发完了,你可以下线了 客户端:好的 为啥不是三次挥手? 因为客户端要关闭连接的时候,无法保证服务器已经将数据发送完成,所以此时服务器只能告诉客户端我收到你的关闭请求,知道你的数据发送完成。在服务器把数据发送完成之后,告知客户端,数据发送完了,可以关闭连接。此时,客户端也要应答,同意关闭连接