傳輸層:
TCP 和 UDP 兩個(gè)協(xié)議
UDP 長度: 首部 + 數(shù)據(jù)長度
校驗(yàn)和:
首部前面拼接12位 計(jì)算(源ip 目標(biāo) ip )晕换,不傳至網(wǎng)絡(luò)層
TCP:
源端口:
目的端口:
數(shù)據(jù)偏移: 4位 (5-15) 乘以4 = 首部長度
Tips: TCP的數(shù)據(jù)長度忘苛,沒有字段
= 網(wǎng)絡(luò)層總長度 - 網(wǎng)絡(luò)層首部長度 - 傳輸層首部長度
保留: 6位 全為0
校驗(yàn)和: 和 UDP一樣吼拥,首部拼接12 個(gè)字節(jié)(source address(4) des address(4) zeros(1) protocol(1) tcpLength(2))
TCP標(biāo)志位:
URG: = 1時(shí),緊急指針才有效歇式,優(yōu)先發(fā)送
ACK: =1 時(shí)掌眠,確認(rèn)號(acknowledgement)才有效
PSH:
RST : =1 連接嚴(yán)重出錯(cuò),重新請求
SYN: SYN = 1 ACK = 0 時(shí)標(biāo)志建立連接請求
如果對方同意建立鏈接寥闪,則回復(fù)SYN = 1 ACK = 1
FIN: = 1 數(shù)據(jù)已經(jīng)發(fā)送完畢太惠,要求釋放連接
序號: Sequence Number
4字節(jié)
傳輸過程每一個(gè)字節(jié)都有一個(gè)序號。
在建立連接后疲憋,序號代表:這一次傳給對方TCP數(shù)據(jù)部分第一個(gè)字節(jié)的編號
確認(rèn)號: Acknowledgment Number
4字節(jié)
在建立鏈接后凿渊,確認(rèn)號代表期望對方下一次傳過來的TCP數(shù)據(jù)部分的第一個(gè)字節(jié)編號
窗口: Window
2個(gè)字節(jié)
流量控制,告知對方下一次允許發(fā)送的數(shù)據(jù)大小
連續(xù)ARQ協(xié)議 + 滑動(dòng)窗口協(xié)議: