TCP協議中URG與PSH的區別



    URG和PSH都屬於TCP包頭中的標誌位,URG和PSH爲 1 時,都表示當前有緊急數據。不同的是對緊急數據的處理方式不同。


     URG:爲1時,表明緊急指針字段有效,它告訴系統此報文段中有緊急數據,應儘快傳遞,相當於高優先級,不再需要在接收隊列中排隊。例如,當我們想使用Ctrl+C終止一個遠程進程時,會將URG置1,發送應用進程就告訴發送方的TCP有緊急數據要傳送,於是發送方將緊急數據插入到本報文段數據的最前面,在緊急數據後面的數據仍是普通數據。urg爲1的報文段不進入接收緩衝區而直接向上交付

    TCP首部中只有緊急指針指出緊急數據的位置,它所指的字節爲緊急數據,但沒有辦法指定緊急數據的長度


     PSH:爲1時,表示該報文段需要儘快發送到接收端的應用進程,有緊急事件需要應用程序去處理(例如希望得到接收方的立刻應答),這時就會把接收緩衝中排好序的那一段數據交給上層,而不用等待整個緩存都填滿之後再向上交付。


     因此,我們通常這樣說,URG是緊急位,PSH是急迫位。


    ------muhuizz整理


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章