请求 Fast Open Cookie 的过程如下:
客户端发送一个 SYN 包,头部包含 Fast Open 选项,且该选项的Cookie 为空,这表明客户端请求 Fast Open Cookie
服务端收取 SYN 包以后,生成一个 cookie 值(一串字符串)
服务端发送 SYN + ACK 包,在 Options 的 Fast Open 选项中设置 cookie 的值
客户端缓存服务端的 IP 和收到的 cookie 值
总结:
1.这边cookie会过期
2.如果第二次请求syn包携带tfo打开标志和cookie以及数据,如果cookie过期,server会丢掉SYN包中的数据,同时返回一个SYN-ACK包来确认SYN包中的系列号(不会确认数据包中的序列号,从而客户端知道自己的cookie过期数据被丢失,会重新在ack阶段传递数据)
网友评论