1、urg緊急位
緊急資料的起始點=序號;
緊急資料的終止點=序號+緊急指標;
(綜上,緊急指標就是記錄緊急資料的位元組數,緊急指標永遠為正數)
1)在緊急資料後面的資料為普通資料,需要按序快取
2)視窗為0也可以傳送緊急資料
3)緊急資料都處理完成後,tcp就告訴程序恢復到正常操作
例如,已經傳送了很長的乙個程式要在遠地的主機上執行。但後來發現了一些問題,需要取消程式的執行。因此使用者從鍵盤發出中斷命令(ctrl+c)。如果不使用緊急資料,那麼這兩個字元會被儲存在接受tcp的快取末尾。只有在所有的資料被處理完畢後這兩個字元才會被交付給接收方。這樣就浪費了很多時間。
urg強調的是直接讀取資料,我們不會將該資料複製到快取中,我個人認為,這個資料(緊急指標指向的資料)並不是真正意義上的"資料",而是對真正意義上"資料"的一種操作.
2、psh推送位
psh=1,該報文希望,到達對端時,將這個報文及快取區之間快取尚未交付的資料一併交付給程序。
1)psh的資料=本報文資料+快取區資料
2)psh的方向--->單方向(接收psh報文的一端)
psh強調的是盡快將資料交付給上層(協議),而不需要經過強迫資料互動(預設tcp/ip是將資料快取到一定的上限,再將資料遞交給上層,以提高網路效能).可見,該部分資料是需要複製到快取中的
3、區別
urg交付給程序的資料:只有緊急資料
psh交付給程序的資料:緩衝區排好序的資料及當前報文中的資料
兩者的共同點:都是一種對資料的處理方式.只不過urg是處理在前端(收到資料後立馬對真正意義上"資料"進行操作,所以說"緊急.而psh是在處理的後端,告訴核心,不用等待"滿了"再遞交資料遞交到上層.
URG和PSH的區別與聯絡
急指標是乙個正的偏移量,和序號欄位中的值相加表示緊急資料最後乙個位元組的序號。t c p的緊急方式是傳送端向另一端傳送緊急資料的一種方式。緊急指標指向包內資料段的某個位元組 資料從第一位元組到指標所指位元組就是緊急資料,不進入接收緩衝就直接交給上層程序,餘下的資料要進入接收緩衝的 在乙個互動程式中,...
URG與PSH的區別及聯絡
tcp中有6個標誌位,分別為urg psh ack rst syn fin,每個標誌位都有其特殊的含義,現重點討論urg與psh這兩個標誌位 含義 urg 表示本報文段中傳送的資料是否包含緊急資料,當urg 1,表示有緊急資料,後面的緊急指標字段只有當urg 1時才有效 psh 告訴對方收到該報文段...
URG和PSH的區別及聯絡
tcp協議頭部一共有六個控制位 其中包括urg ack psh rst syn fin.1 緊急urg緊急指標,告訴接受tcp模組緊要指標域指著緊要資料 2 推送psh置1時請求的資料段在接收方得到後就可直接送達應用程式,而不必等到緩衝區滿時才傳送 3 復位rst置1時重新連線。如果接收到rst位,...