1. 程式人生 > >TCP/UDP 協議格式

TCP/UDP 協議格式

UDP協議格式:
這裡寫圖片描述
16位UDP長度,表示整個資料報(UDP首部+UDP資料)的最大長度
即:一個UDP能傳輸的資料最大長度是64K
如果我們要傳輸的資料大於64K,那麼我們需要在應用層手動分包,多次傳送,並在接收端手動拼裝
UDP沒有傳送緩衝區,應用層傳送資料,由核心傳給網路層協議進行後續額傳輸動作。
UDP有接受快取區,但是接受快取區不能保證和傳送的的資料順序一致,如果接受區快取滿了,再到達的UDP資料被丟棄

不可靠
無連線
面向資料報

基於UDP的應用層協議:

NFS:網路檔案系統
TFTP:簡單檔案傳輸協議
DHCP:動態主機配置協議
BOOTP:啟動協議
DNS:域名解析協議

TCP協議格式:
這裡寫圖片描述

6位標誌位:

URG:緊急指標是否有效
ACK:確認號是否有效
PSH:提示接收端應用程式立即從TCP緩衝區把資料讀走
RST:對方要求重新建立連線,復位報文段
SYN:請求建立連線,同步報文段
FIN:通知對方,本端要關閉了,結束報文段

4位TCP首部長度:
表示該TCP頭部有多少個32位bit位(有多少個4位元組),所以TCP頭部最大長度是 15*4 = 60 位元組
(4位表示的最大數為15).

16位校驗和:
CRC校驗,校驗不通過,則認為資料有問題。

16位緊急指標:
標識那部分資料是緊急資料

16位視窗大小:


博主部落格中有專門分析。

可靠
有連線
面向資料流

基於TCP應用層協議:

HTTP
HTTPS
SSH
Telnet
FTP
SMTP