)
tcp異常終止(reset報文)
tcp的異常終止是相對於正常釋放tcp連線的過程而言的,我們都知道,tcp連線的建立是通過三次握手完成的,而tcp正常釋放連線是通過四次揮手來完成,但是有些情況下,tcp在互動的過程中會出現一些意想不到的情況,導致tcp無法按照正常的四次揮手來釋放連線,如果此時不通過其他的方式來釋放tcp連線的話,這個tcp連線將會一直存在,占用系統的部分資源。在這種情況下,我們就需要有一種能夠釋放tcp連線的機制,這種機制就是tcp的reset報文。reset報文是指tcp報頭的標誌欄位中的reset位置一的報文,如下圖所示:
tcp異常終止的常見情形
我們在實際的工作環境中,導致某一方傳送reset報文的情形主要有以下幾種:
1,客戶端嘗試與伺服器未對外提供服務的埠建立tcp連線,伺服器將會直接向客戶端傳送reset報文。
2,客戶端和伺服器的某一方在互動的過程中發生異常(如程式崩潰等),該方系統將向對端傳送tcp reset報文,告之對方釋放相關的tcp連線,如下圖所示:
3,接收端收到tcp報文,但是發現該tcp的報文,並不在其已建立的tcp連線列表內,則其直接向對端傳送reset報文,如下圖所示:
4,在互動的雙方中的某一方長期未收到來自對方的確認報文,則其在超出一定的重傳次數或時間後,會主動向對端傳送reset報文釋放該tcp連線,如下圖所示:
5,有些應用開發者在設計應用系統時,會利用reset報文快速釋放已經完成資料互動的tcp連線,以提高業務互動的效率,如下圖所示:
reset報文的利用
1安全裝置利用reset報文阻斷異常連線
安全裝置(如防火牆、入侵檢測系統等)在發現某些可疑的tcp連線時,會構造互動雙方的reset報文發給對端,讓對端釋放該tcp連線。比如入侵檢測檢測到黑客攻擊的tcp連線,其構造成被攻擊端給黑客主機傳送reset報文,讓黑客主機釋放攻擊連線。
2利用reset報文實施攻擊
安全裝置可以利用reset報文達到安全防護的效果,黑客和攻擊者也可以利用reset報文實現對某些主機的入侵和攻擊,最常見的就是tcp會話劫持攻擊。關於tcp會話劫持的相關知識請參考第三章《tcp會話劫持》一文。
TCP連線異常終止分析
cp的異常終止是相對於正常釋放tcp連線的過程而言的,我們都知道,tcp連線的建立是通過三次握手完成的,而tcp正常釋放連線是通過四次揮手來完成,但是有些情況下,tcp在互動的過程中會出現一些意想不到的情況,導致tcp無法按照正常的四次揮手來釋放連線,如果此時不通過其他的方式來釋放tcp連線的話,這...
執行緒異常終止
trycatch exception e finally 釋放資源 有人可能覺得 exception 有些大了,實際不然,因為你也不知道會丟擲什麼異常。被0除,numberformatexception,是一些不是必須捕獲的異常,遇到這些異常不處理會造成一些不必要的麻繁。為了執行緒不會被這些異常終止...
TCP 三 異常報文分析
亂序與丟包 1 tcp previous segment not captured tcp previous segment not captured 報文指的是在tcp傳送端傳輸過程中,該seq前的報文缺失了。一般在網路擁塞的情況下,造成tcp報文亂序 丟包時,會出現該標誌。需要注意的是,tcp ...