第一次挥手:告诉接收方,我数据发送完了,需要释放连接,于是自己进入了等待状态1。
第二次挥手:接收方告诉发送方,我接收到你的请求了。于是进入了等待状态2.
这个等待主要为了,让接收方成功接收完发送发发出的数据,如果接收方接收完所有数据,就会进行第三次挥手。
第三次挥手:告诉接收方,你的数据我接收完成,并告诉它我也可以结束连接了。
第四次挥手,当发送方接收到第三次挥手之后,就会给发送者发送消息告诉它我收到你的消息了,现在我们来把这个连接一起关了吧。
为什么要使用等待计时器呢????
这个定时器是我们学到的第三个计时器:
一般MSL是2分钟,每一个tcp都会占用一个端口,如果关闭当前程序,想另外一个程序也用这个端口,那么在2MSL内是不能用的,因为这个端口还在占用中,这个链接在等待中是不会释放的(端口依然被占用)。
定时器的第二个作用: