Inside Linux TCP stack: Overview
Inside Linux TCP stack: Overview
Inside Linux TCP stack: Overview
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Create new connections<br />
tcp_v4_do_rcv()<br />
tcp_rcv_state_process()<br />
tcp_rcv_synsent_state_process()<br />
Client: SYN-ACK / ACK<br />
如果是 SYN_SENT 状态,就继续处理<br />
如果处理失败返回 tcp_v4_do_rcv() ,从而导致发送RST<br />
解析 <strong>TCP</strong> options<br />
如果ACK标志置位 {<br />
检查 ACK 的序号与 snd_nxt 是否相同<br />
timestamp 检查<br />
RST?<br />
有没有 SYN?<br />
更新 window /scaling factor / timestamp<br />
初始化 <strong>TCP</strong> MTUP/MSS/rcv MSS/<br />
设置 ESTABLISHED 状态<br />
拥塞避免处理初始化<br />
发送 ACK<br />
}