請(qǐng)求 Fast Open Cookie 的過(guò)程如下:
客戶端發(fā)送一個(gè) SYN 包,頭部包含 Fast Open 選項(xiàng)敏晤,且該選項(xiàng)的Cookie 為空贱田,這表明客戶端請(qǐng)求 Fast Open Cookie
服務(wù)端收取 SYN 包以后,生成一個(gè) cookie 值(一串字符串)
服務(wù)端發(fā)送 SYN + ACK 包嘴脾,在 Options 的 Fast Open 選項(xiàng)中設(shè)置 cookie 的值
客戶端緩存服務(wù)端的 IP 和收到的 cookie 值
總結(jié):
1.這邊cookie會(huì)過(guò)期
2.如果第二次請(qǐng)求syn包攜帶tfo打開(kāi)標(biāo)志和cookie以及數(shù)據(jù)湘换,如果cookie過(guò)期,server會(huì)丟掉SYN包中的數(shù)據(jù)统阿,同時(shí)返回一個(gè)SYN-ACK包來(lái)確認(rèn)SYN包中的系列號(hào)(不會(huì)確認(rèn)數(shù)據(jù)包中的序列號(hào)彩倚,從而客戶端知道自己的cookie過(guò)期數(shù)據(jù)被丟失,會(huì)重新在ack階段傳遞數(shù)據(jù))