
网络编程
文章平均质量分 74
@最爱吃兽奶
为了以后能轻松地生活也要加倍努力
展开
-
最通俗易懂的TCP三次握手四次挥手详解
TCP的三次握手和四次挥手实质就是TCP通信的连接和断开。三次握手:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。四次挥手:即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。1、三次握手TCP协议位于传输层,作用是提供可靠的字节流服务,为了准确无误地将数据送达目的地,TCP协议采纳三次握手策略。三次握手原理:第1次握手:客户端发送一个带有SYN(s原创 2023-03-09 08:20:04 · 15524 阅读 · 2 评论 -
TCP粘包与拆包发生原因及解决方法
TCP 是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有成对的 socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方,使用了优化方法(Nagle 算法),将多次间隔较小且数据量小的数据,合并成一个大的数据块,然后进行封包。这样做虽然提高了效率,但是接收端就难于分辨出完整的数据包了,因为面向流的通信是无消息保护边界的。由于 TCP 无消息保护边界,需要在接收端处理消息边界问题,也就是我们所说的粘包、拆包问题。对图的说明: 假设客户端分别发送原创 2023-02-09 21:18:53 · 299 阅读 · 0 评论