如何注册一个设计网站,wordpress 简历,南昌高端网站开发费用表,销售管理软件排名文章目录 流程考点 流程
主动方打算关闭连接#xff0c;此时会发送一个TCP首部FIN标志位被置为1的报文#xff0c;也即FIN报文#xff0c;之后主动方进入FIN_WAIT_1状态。被动方收到该报文后#xff0c;就向主动方发送ACK应答报文#xff0c;接着被动方进入CLOSE_WAIT状态… 文章目录 流程考点 流程
主动方打算关闭连接此时会发送一个TCP首部FIN标志位被置为1的报文也即FIN报文之后主动方进入FIN_WAIT_1状态。被动方收到该报文后就向主动方发送ACK应答报文接着被动方进入CLOSE_WAIT状态。主动方收到被动方的ACK应答报文后进入FIN_WAIT_2状态。等待被动方处理完数据之后也向主动方发送FIN报文之后被动方进入LAST_ACK状态。主动方收到被动方发送的FIN报文后回一ACK应答报文之后进入TIME_WAIT状态。被动方收到了ACK应答报文之后就进入了CLOSED状态至此被动方已经完成连接的关闭。主动方在经过2MSL一段时间之后自动进入CLOSED状态至此主动方也完成了连接的关闭
考点
为什么主动方发了最后一次ACK后还要等待2MSL后才能进入关闭连接
答因为最后等待2MSL是为了防止最后一次ACK丢失如果ACK丢失了在2MSL中会再次收到FIN那就再回一个ACK如果没有再次收到FIN就证明ACK没有丢失就可以放心进入CLOSE状态了如果不等待就关闭并且ACK包丢失了那么被动方就会一直重复发FIN包。
被动方在收到FIN后为什么要立刻回一个ACK等一会再发FIN
答要将之前收到的数据都处理完再回复FIN包立刻回ACK是为了防止超时重传因为如果处理数据的时间过长就会触发超时重传机制。