详解TCP协议(一) 全面解析三次握手和四次握手

本文详细介绍了TCP协议中的确认应答机制、超时重传机制和连接管理机制,包括三次握手建立连接和四次挥手断开连接的过程。在连接管理中,解释了为何不能采用两次握手和三次挥手的原因,并解析了关键状态如LISTEN、ESTABLISHED、CLOSE_WAIT和TIME_WAIT的含义。
摘要由CSDN通过智能技术生成

一、确认应答(ACK)机制
TCP面向字节流,TCP会将每个字节的数据都进行编号,即序列号,每一个ACK都带有对应的确认序列号。
二、超时重传机制
确认应答是比较理想的情况,数据在传输过程中,可能会丢包
丢包:1.发送请求丢失
2.回复的ack丢失
不管哪种情况都会触发重新传输报文。
原理:当发送了一条数据之后,TCP内部就会自动启动一个定时器,达到一定时间也没有收到ack,定时器就会触发重传消息机制。
三、连接管理机制
1.建立连接 三次握手过程
在这里插入图片描述
ACK:确认应答 SYN:同步报文段(尝试与对方建立连接)
“三次握手”:如上图1、2、3步,主机A发出SYN请求与主机B建立连接,主机B收到确认应答发送ACK,并且也向主机A发送SYN建立连接,主机A收到主机B的ACK应答已经连接请求,再给主机B发送确认ACK。

为什么第二步SYN和ACK可以合并为一步呢?
因为java SocketAPI中,客户端new Socket(ip,port),内核就会发送SYN请求,SYN与ACK都是内核决定的,所以可以合并。

在建立连接的过程中 不能"两次握手",但是可以"四次握手",但是没必要,如果把第

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值