TCP的幾個狀态對于我們分析所起的作用。
在TCP層,有個FLAGS字段,這個字段有以下幾個辨別:SYN, FIN, ACK, PSH, RST, URG.
其中,對
于我們日常的分析有用的就是前面的五個字段。
它們的含義是:SYN表示建立連接配接,FIN表示關閉連接配接,ACK表示響應,PSH表示有 DATA資料傳
輸,RST表示連接配接重置。
其中,ACK是可能與SYN,FIN等同時使用的,比如SYN和ACK可能同時為1,它表示的就是建立連接配接之後的響應,
如果隻是單個的一個SYN,它表示的隻是建立連接配接。
TCP的幾次握手就是通過這樣的ACK表現出來的。
但SYN與FIN是不會同時為1的,因為前者表示的是
建立連接配接,而後者表示的是斷開連接配接。RST一般是在FIN之後才會出現為1的情況,表示的是連接配接重置。一般地,當出現FIN包或RST包時,我們
便認為用戶端與伺服器端斷開了連接配接;而當出現SYN和SYN+ACK包時,我們認為用戶端與伺服器建立了一個連接配接。PSH為1的情況,一般隻出現
在 DATA内容不為0的包中,也就是說PSH為1表示的是有真正的TCP資料包内容被傳遞。TCP的連接配接建立和連接配接關閉,都是通過請求-響應的模式
完成的。
jiahuafu