1.TCP報文
?序號字段占4個字節。TCP連接中傳送的數據流中每一個字節都編上一個序號。序號字段的值則是本報文段所發送的數據第一個字節的序號。
確認序號占4個字節。是期望收到的對方的下一個報文段字節胡序號。首部長度占4個字節。指出TCP首部長度在20-60字節之間,所以,該字段值取值范圍是5-15之間
緊急URG 當URG=1時有效
確認號ACK 當ACK=1時有效
推送PSH 當接受到PSK=1的報文段,就盡快交付接受應用進程,而不再等到整個緩存都填滿了向上交付。
同步SYN =1表示這是一個連接請求或連接接受報文。
終止FIN 用來釋放一個連接,FIN=1表示報文段發送端的數據已發送完畢,并要求釋放傳輸連接。
復位RST RST=1表明TCP連接中出現嚴重差錯,必須釋放連接再重新連接。
窗口字段占2字節,窗口字段椒由接收窗口和擁塞窗口中較小的一個決定。
校驗和占2字節。
緊急指針字段占16位
選項字段長度可以變
填充字段為了是整個首部長度是4字節的整數倍
?
TCP的連接管理
面向鏈接傳輸需要進行3個階段:連接建立,數據傳輸和連接終止。
TCP連接建立稱三次握手,終止連接為四次握手
?
2.TCP的三次握手
?
?
A的TCP向B發出請求連接請求報文字段,其首部中的同步位SYN=1,并選擇序號seq=x,表明傳送數據時的第一個數據字節的序號為x。
B的TCP收到連接請求報文段后,如果同意,則發回請求。B在確認報文段應使SYN=1,使ACK=1,其確認號為ack=x+1,自己選擇的序號為seq=y
A收到此報文段后向B給出確認,其ack=1,確認號為acky+1,A的TCP通知上層應用程序,連接已經建立
B的TCP收到主機A的確認后,也通知其上層應用程序,TCP連接已經建立。
?
3.TCP與UDP的區別
TCP面向連接,UDP面向非連接的協議
TCP可靠傳輸,UDP不提供可靠性
TCP流量控制,UDP不提供流量控制
TCP傳輸速度比UDP慢
TAP協議開銷大,UDP協議開銷小
?