TCP三次握手
TCP三次握手就像两个人在隔着30米的看见对方,但是看不清楚,所以要通过招手的方式来确定对方是否认识自己。
假如这两个人一个叫王大,一个叫李二。王大先向李二招手,李二看到王大像自己招手后,向对方点了点头并笑了一下。
王大看到李二的笑容,明白李二认出了自己。但是李二也担心自己认错了,所以他也向王大招了招手。王大看到李二对
自己招手,知道他是在寻求自己的确认。于是王大也回应了一个笑容。李二看到王大的笑容,知道自己没有认错人。
于是进入了,established状态。
这中发生了四个事件,
1王大招手
2李二微笑
3李二招手
4王大微笑
2,3其实可以合并成一个动作。这就是三次握手的本质。
中间的两个状态2,3.叫做半打开状态。就是向对方发送消息了,但是还没有得到回应的确认。
syn_sent: syn package has been sent
syn_rcvd: syn package has been received
客户端是主动打开方,服务器是被动打开方。