TCP 为什么是三次握手,而不是两次或四次?
-
PS1:SYN=1,ACK=0表示该报文段为连接请求报文。
-
PS2:x为本次TCP通信的字节流的初始序号。TCP规定:SYN=1的报文段不能有数据部分,但要消耗掉一个序号。
-
PS1:SYN=1,ACK=1表示该报文段为连接同意的应答报文。
-
PS2:seq=y表示服务端作为发送者时,发送字节流的初始序号。
-
PS3:ack=x+1表示服务端希望下一个数据报发送序号从x+1开始的字节。
-
PS1:FIN=1表示该报文段是一个连接释放请求。
-
PS2:seq=u,u-1是A向B发送的最后一个字节的序号。
-
PS1:ACK=1:除TCP连接请求报文段以外,TCP通信过程中所有数据报的ACK都为1,表示应答。
-
PS2:seq=v,v-1是B向A发送的最后一个字节的序号。
-
PS3:ack=u+1表示希望收到从第u+1个字节开始的报文段,并且已经成功接收了前u个字节。