一、UDP概述
首部格式
圖1
UDP和TCP一樣都使用IP作為網絡層協議,TCP數據報被封裝在一個IP數據包内。由于UDP不象TCP一樣提供可靠的傳輸,因此UDP的報文格式相對而言較簡單。
整個UDP首部有如下标識:
二、TCP VS UDP
圖2
IP packet
網絡層收到傳輸層的TCP數據段後會再加上網絡層IP頭部信息。普通的IP頭部固定長度為20個字節(不包含IP選項字段)。
IP報文頭主要由以下字段組成:報文長度是指頭部占32比特字的個數,包括任何選項。由于它是一個4比特字段,24=16,除掉全0項共有15個有效值比特字段,其中最大值也為15,表示頭部占15個32比特。因此32*15/8=60字節,頭部最長為60字節。
版本号(Version)字段标明了IP協議的版本号,目前的協議版本号為4。下一代IP協議的版本号為6。8比特的服務類型(TOS,Type of Service)字段包括一個3比特的優先權字段(COS,Class of Service),4比特TOS字段和1比特未用位。4比特TOS分别代表最小時延、最大吞吐量、最高可靠性和最小費用。總長度(Total length)是整個IP數據報長度,包括數據部分。由于該字段長16比特,所以IP數據報最長可達65535字節。盡管可以傳送一個長達65535字節的IP數據報,但是大多數的鍊路層都會對它進行分片。而且,主機也要求不能接收超過576字節的數據報。UDP限制用戶數據報長度為512字節,小于576字節。而事實上現在大多數的實現(特别是那些支持網絡文件系統NFS的實現)允許超過8192字節的IP數據報。标識符(Identification)字段唯一地标識主機發送的每一份數據包。通常每發送一份報文它的值就會加1。生存時間(TTL,Time to Live)字段設置了數據包可以經過的路由器數目。一旦經過一個路由器,TTL值就會減1,當該字段值為0時,數據包将被丢棄。協議字段确定在數據包内傳送的上層協議,和端口号類似,IP協議用協議号區分上層協議。TCP協議的協議号為6,UDP協議的協議号為17。報頭校驗和(Head checksum)字段計算IP頭部的校驗和,檢查報文頭部的完整性。源IP地址和目的IP地址字段标識數據包的源端設備和目的端設備IP地址信息。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!