TCP长连接与短连接的区别
1 什么是长连接和短连接 三次握手和四次挥手 TCP区别于UDP最重要的特点是TCP必须建立在可靠的连接之上,连接的建立和释放就是握手和挥手的过程。 三次握手为连接的建立过程,握手失败则连接建立失败。 四次挥手为连接的 完整 释放过程,也会发生某个消息丢失或者超时的情况,有一方主动发送 FIN 消息即表示连接即将释放。 注: SYN、ACK、FIN消息具有哪些含义,以及连接的状态,请参考《TCP/IP详解 卷1》第18章。 长连接 长连接,也叫持久连接,在TCP层握手成功后, 不立即 断开连接,并在此连接的基础上进行多次消息(包括心跳)交互,直至连接的任意一方(客户端OR服务端)主动断开连接,此过程称为一次完整的长连接。HTTP 1.1相对于1.0最重要的新特性就是引入了长连接。 短连接 短连接,顾名思义,与长连接的区别就是,客户端收到服务端的响应后, 立刻发送FIN消息 ,主动释放连接。也有服务端主动断连的情况,凡是在一次消息交互(发请求-收响应)之后立刻断开连接的情况都称为短连接。 注:短连接是建立在TCP协议上的,有完整的握手挥手流程,区别于UDP协议。 2 如何快速区分当前连接使用的是长连接还是短连接 1、 凡是在一次完整的消息交互(发请求-收响应)之后,立刻断开连接(有一方 发送FIN消息 )的情况都称为短连接 ; 2、长连接的一个明显特征是会有心跳消息