[学习的资源](网络协议 HTTP 视频教程全集(9P)| 7 小时从入门到精通_哔哩哔哩_bilibili)
起因: 最近面试被问到 Tcp三次握手的内容,和为什么是三次,和四次挥手是什么? 我顿住了,因为我真的不太清楚,所以我去找了些视频,这个是我找到说得比较清楚。在这里自己总结一下
1 不管应用层是什么协议,它的请求都需要调用传输层(控制层),传输层就会发起连接,这边主要说tcp的链接,会通过三次握手建立链接,不是真正物理意义的链接。 (1) 客户端发送syn给服务端 (2) 服务端收到,回复客户端 syn+ack (3) 客户端收到服务端回复,回复服务端 ack 在这个过程中,确认双方都有发送数据和接收数据的能力,开辟接受内存和发送内存,双方资源对应的,上层应用层就是基于这个资源读取数据,称为Io模式,在这里还有socket扮演重要的角色,socket 对读取内存进行了封装,可以精准的用四元唯一确认一个链接 四元:源Ip+源port+目IP+源IP+目Port 四者任一不同,链接不同 三次握手确保tcp协议具有这两个(1)面向链接 (2)可靠传输 特性
四次挥手 就是资源释放的过程 (1) 客户端 发送 fin 给服务端 (2)服务端收到,回复fin+ack,客户端收到回复 (3) 服务端发送fin (4) 客户端收到,发送fin+ack 通过四次挥手,释放双方的收发资源 以上是我学习到内容,不完全正确,如有错误,欢迎提出