tcp/http 协议是常用的协议,关于tcp的三次握手和四次挥手也是经常问到的,下面简单介绍下过程。
TCP三次握手
这天起了大雾,盖伦正在路上逛街,正好在十字路口等红灯,这时候他发现马路对面好像是他的梦中女神—卡特琳娜!但是雾太大了,看不清脸,一个激动他就像对面奋力挥手(syn),想引起卡特注意。卡特看到对面有个屌丝在像自己挥手,看那屌丝身形就是盖伦,无奈也不能装作不认识啊,只能微微一笑(ack)。盖伦看到卡特笑了,激动不已,立马进入了estalished状态。卡特看着对面这个傻子手舞足蹈,想着难道不是盖伦,是赵信?然后她也向对面挥了挥手(syn)。盖伦看到卡特也挥手了,立马也露出个大码笑脸(ack),卡特看到对面那张大码笑脸,确定是盖伦傻子无疑了,进入了established状态。然后,绿灯了,两人就像对方走去~
所以本质上TCP三次握手实际是四次动作,只不过卡特的 笑脸 和 挥手可以一起做,然后就变成了:
客户端发起链接请求(syn) --> 服务端空闲
客户端接受确认和ack,进入(estalished) <-- 服务端确认请求(ack)(syn)
客户端发起确认(ack) --> 服务端确认ack,进入(established)
四次挥手
待续