我女朋友都能看懂的三握四挥

今天,我们来说一下这个面试中经常问到的“三握四挥”。不过,我们不从技术层面来说,毕竟对于小白来说,弄的太高大上,未必就是好的。我将以全国(梵蒂冈)最简单的方式来说这个问题。

如下图:小强想和热巴谈恋爱,首先,得是小强去追求热巴,为什么是小强追求热巴呢?这个问题不难理解,让热巴来追你,你在想屁吃。所以小强给热巴说“我爱你,做我女朋友吧”,很幸运,热巴也喜欢我们的小强,所以给小强回了句“俺愿意”,最后,小强简直不敢相信,所以再次向热巴确认,“真的吗?太好了”,后来,他么就幸福的在一起生活了。

我女朋友都能看懂的三握四挥
同理,我们的“三次握手也是一个道理”,且看下图:
我女朋友都能看懂的三握四挥
第一次握手:建立连接时,客户端发送syn包(syn=x)到服务器,并进入SYN_SENT状态,等待服务器确认,SYN:同步序列编号。

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。