第九章 T/TCP 的實作:TCP 輸出
本章介紹為了支援 T/TCP 而對 tcp_output 函數所做的修改。在 TCP 中有許多程式段都要調用該函數來決定是否應該發出一個封包段,并且如果必要就發出一個。在 T/TCP 中作了以下修改:
1)兩個隐藏的狀态标志可以打開 TH_SYN 和 TH_FIN 标志。
2)T/TCP 可以在 SYN_SENT 狀态下發出多個封包段,但其前提是确知對等端也支援 T/TCP。
3)發送程式糊塗視窗避免機制必須考慮到新的 TF_NOPUSH 标志。
4)可以發出新的 T/TCP 選項(CC、CCnew 和 CCecho)。
T/TCP 在原本 500 行的 tcp_output 函數上增加了大約 100 行代碼。增加的大部分代碼都與發送新增的 T/TCP 選項 CC、CCnew 和 CCecho 等有關。
另外,如果對等端支援 T/TCP,T/TCP 的 tcp_output 函數可以在 SYN_SENT 狀态下發送多個封包段。
希望我的總結可以幫助大家,感謝閱讀我的部落格!