TCP的三次握手
tcp 三次握手过程: (1)男---> [SYN] ----->女 男孩要追这个女孩,想要给这个女孩建立一个可靠链接。
当男孩要和女孩通信时,男孩首先想女孩发送一个SYN(Synchronize)的标记包,告诉女孩请求建立链接。-------MM能认识一下吗?
说明:一个SYN包就是一个仅仅SYN标记设为1的TCP包,因为这是女孩答应男孩认识请求的标记,只有女孩接收男孩发来的SYN包,才可以建立链接,初次之外别无其他的方法。
就像iptables的output chain 一般设置为ACCPET ,这样SYN包可以出去,当回来的时候由于-m state --state ESTABLISHED 的ACCEPT,所以可以建立主动连接。(防火墙可能理解有错误,请指正) (2)男 <---- [SYN/ACK] <-----女 女孩收到后会发送对SYN包的一个确认包(SYN/ACK),表示对第一个SYN包的确认,并继续握手操作。 --------- 哇哦帅哥哦,可以啊~~~
说明:SYN/ACK包仅仅是SYN和ACK标记为1的包。 (3) 男----> [ACK] -----> 女
男孩收到SYN/ACK包,并且发送一个确认包(ACK),通知女孩建立链接,完成了三次握手。 ------ 哈哈 我追上了~~~ (4) 男 <----- [RST] <------女 RST是复位包的标记。当tcp受到一个不属于该主机的任何一个链接分段,就想对方发送一个复位包。------- 你不是我喜欢的GG %>_<% 结果:被复位了,可靠链接没建立成功,MM没追到收。