在上一节讲过TCP是面向连接
的 什么是面向连接,面向连接就是数据通讯的时候需要进行三次握手
,断开通信的时候进行四次挥手
名词描述
1.seq(sequence number),序列号随机生成的
2.ack(acknowledgement number)确认号 ack = seq + 1
3.ACK (acknowledgement)确定序列号有效
4.SYN(synchronous)发起新连接
具体步骤讲解
三次握手很像对讲机通话
,一个发送,一个接受,也可以反之。
1.首先客户端会发送一个段这个段就是SYN
报文,想跟服务端
进行连接,并且会携带一个序列号
,下次发送的数据序列号还会进行+1。
2.服务端收到了SYN + seq 字段之后,服务端也会生成一个对应服务端seq序列号,这时候就会携带ACK确认号,表示之前的SYN 收到了,还会有一个小写的ack 把 客户端的seq + 1
3.客户端收到服务端的响应之后会发送一个ACK确定序列号有效,并且还会发送seq注意这里的seq会通过算法计算出来是否跟服务端的ack值相等,然后会发送一个新的ack这里的ack是服务端的seq值+1,确保一切正常。
原文链接:https://juejin.cn/post/7230450989592363068 作者:小满zs