首先我们需要知道,tcp/ip协议并不是一个协议,而是一个协议族,里面包好tcp,udp,ip等协议,tcp/ip网络协议栈包括应用层,传输层,网络层和链路层。
tcp协议是一中面向连接的,可靠的传输层协议。连接过程就像打电话的过程。现在简要介绍其三次握手的过程:
第一次握手:客户A向客户B发送一个连接请求,在这个包中,syn=1,seq=x,
第二次握手:客户B接受到了A发送的包,然后发送一个包进行确认,该包中syn=1,ack=1,ack_seq=x+1,seq=y;
第三次握手:客户A收到了B发送的包,也发送一个确认包,该包中ack=1.ack_seq=y+1,seq=x+1;
图解如下:
关于四次挥手的图解如下
解释:
第一次挥手:当客户A要断开Tcp连接时,发送一个包,其中fin=1,ack=1,seq=x,ack_seq=x;
第二次挥手:客户B知道A要断开后,发送一个确认包,其中ack=1,seq=y,ack_seq=x+1;
第三次挥手:客户B也断开Tcp连接,此时发送一个包,其中,fin=1,seq=y+1,
第四次挥手:客户A收到B的断开请求后,发送一个确认包:ack=1,seq=x+1,ack_seq=y+2;