【Java】三次握手和四次挥手

一、三次握手

它的作用是为了保证连接的建立。

它的过程是这样的:客户端一开始会往服务器发送接连的请求,它需要等待服务端去确认。

由此可见,这个连接不是你说连就连的,而是需要先发请求再进行确认。

此时服务器就需要去响应一个确认消息,相当于就是服务器告诉客户端:我已经接收到了你的请求,现在我允许你来连接。

现在压力就给到了客户端,客户端此时已经接收到了这个确认请求,此时它会再次发出确认消息,这个时候连接才是真正的建立。

因此三次握手为什么是三次,其实就是有一个反复确认的过程。

image-20240508152727750

二、四次挥手

四次挥手的作用:确保连接断开,且连接通道中的数据处理完毕。

它的过程是这样的:首先客户端发送请求,这个请求就是取消连接的请求,将这个请求发送给服务端。

服务端就需要响应,告诉客户端:我已经收到了你的这个请求,但是你别忙,连接通道里面还有数据我还没处理呢。

所以这个时候客户端还需要等待,等待服务器将最后的数据处理完毕,一旦它处理完毕后,它会再次发送一个确认取消信息给客户端。

这个时候客户端才是真正的断开连接。

由此可见四次挥手为什么是四次呢?其实就是多了这么一个过程:它需要保证服务端已经把链接通道里面的数据已经处理完毕了,此时连接才能断开。

image-20240508153101301
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值