URG和PSH都屬于TCP包頭中的標志位,URG和PSH為 1 時,都表示當前有緊急數據。不同的是對緊急數據的處理方式不同。
URG:為1時,表明緊急指針字段有效,它告訴系統此報文段中有緊急數據,應盡快傳遞,相當于高優先級,不再需要在接收隊列中排隊。例如,當我們想使用Ctrl+C終止一個遠程進程時,會將URG置1,發送應用進程就告訴發送方的TCP有緊急數據要傳送,于是發送方將緊急數據插入到本報文段數據的最前面,在緊急數據后面的數據仍是普通數據。urg為1的報文段不進入接收緩沖區而直接向上交付。
TCP首部中只有緊急指針指出緊急數據的位置,它所指的字節為緊急數據,但沒有辦法指定緊急數據的長度
PSH:為1時,表示該報文段需要盡快發送到接收端的應用進程,有緊急事件需要應用程序去處理(例如希望得到接收方的立刻應答),這時就會把接收緩沖中排好序的那一段數據交給上層,而不用等待整個緩存都填滿之后再向上交付。
因此,我們通常這樣說,URG是緊急位,PSH是急迫位。
------muhuizz整理
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。