TCP/IP四層模型

文的源主機地址和接收IP報文的目標主機地址。  
  可選項字段:佔32比特。用來定義一些任選項:如記錄路徑、時間戳等。這些選項很少被使用,同時並不是所有主機和路由器都支持這些選項。可選項字段的長度必須是32比特的整數倍,如果不足,必須填充0以達到此長度要求。 
 
  2、TCP數據段格式  
  TCP是一種可靠的、面向連接的字節流服務。源主機在傳送數據前需要先和目標主機建立連接。然後,在此連接上,被編號的數據段按序收發。同時,要求對每個數據段進行確認,保證了可靠性。如果在指定的時間內沒有收到目標主機對所發數據段的確認,源主機將再次發送該數據段。  
  如圖2-5所示,是TCP頭部結構(RFC 793、1323)。

            圖2-5  TCP頭部結構  
  ●源、目標端口號字段:佔16比特。TCP協議通過使用"端口"來標識源端和目標端的應用進程。端口號可以使用0到65535之間的任何數字。在收到服務請求時,操作系統動態地爲客戶端的應用程序分配端口號。在服務器端,每種服務在"衆所周知的端口"(Well-Know Port)爲用戶提供服務。
  ●順序號字段:佔32比特。用來標識從TCP源端向TCP目標端發送的數據字節流,它表示在這個報文段中的第一個數據字節。  
  ●確認號字段:佔32比特。只有ACK標誌爲1時,確認號字段纔有效。它包含目標端所期望收到源端的下一個數據字節。  
  ●頭部長度字段:佔4比特。給出頭部佔32比特的數目。沒有任何選項字段的TCP頭部長度爲20字節;最多可以有60字節的TCP頭部。  
  ●標誌位字段(U、A、P、R、S、F):佔6比特。各比特的含義如下:  
  ◆URG:緊急指針(urgent pointer)有效。  
  ◆ACK:確認序號有效。  
  ◆PSH:接收方應該儘快將這個報文段交給應用層。  
  ◆RST:重建連接。  
  ◆SYN:發起一個連接。  
  ◆FIN:釋放一個連接。  
  ●窗口大小字段:佔16比特。此字段用來進行流量控制。單位爲字節數,這個值是本機期望一次接收的字節數。  
  ●TCP校驗和字段:佔16比特。對整個TCP報文段,即TCP頭部和TCP數據進行校驗和計算,並由目標端進行驗證。  
  ●緊急指針字段:佔16比特。它是一個偏移量,和序號字段中的值相加表示緊急數據最後一個字節的序號。  
  ●選項字段:佔32比特。可能包括"窗口擴大因子"、"時間戳"等選項。
  
  3、UDP數據段格式  
  UDP是一種不可靠的、無連接的數據報服務。源主機在傳送數據前不需要和目標主機建立連接。數據被冠以源、目標端口號等UDP報頭字段後直接發往目的主機。這時,每個數據段的可靠性依靠上層協議來保證。在傳送數據較少、較小的情況下,UDP比TCP更加高效。  
  如圖2-6所示,是UDP頭部結構(RFC 793、1323):

  ●源、目標端口號字段:佔16比特。作用與TCP數據段中的端口號字段相同,用來標識源端和目標端的應用進程。  
  ●長度字段:佔16比特。標明UDP頭部和UDP數據的總長度字節。  
  ●校驗和字段:佔16比特。用來對UDP頭部和UDP數據進行校驗。和TCP不同的是,對UDP來說,此字段是可選項,而TCP數據段中的校驗和字段是必須有的。  

  2.3 套接字  
  在每個TCP、UDP數據段中都包含源端口和目標端口字段。有時,我們把一個IP地址和一個端口號合稱爲一個套接字(Socket),而一個套接字對(Socket pair)可以唯一地確定互連網絡中每個TCP連接的雙方(客戶IP地址、客戶端口號、服務器IP地址、服務器端口號)。
  
  如圖2-7所示,是常見的一些協議和它們對應的服務端口號。

            圖2-7  常見協議和對應的端口號
  
  需要注意的是,不同的應用層協議可能基於不同的傳輸層協議,如FTP、TELNET、SMTP協議基於可靠的TCP協議。TFTP、SNMP、RIP基於不可靠的UDP協議。  
  同時,有些應用層協議佔用了兩個不同的端口號,如FTP的20、21端口,SNMP的161、162端口。這些應用層協議在不同的端口提供不同的功能。如FTP的21端口用來偵聽用戶的連接請求,而20端口用來傳送用戶的文件數據。再如,SNMP的161端口用於SNMP管理進程獲取SNMP代理的數據,而162端口用於SNMP代理主動向SNMP管理進程發送數據。  
  還有一些協議使用了傳輸層的不同協議提供的服務。如DNS協議同時使用了TCP 53端口和UDP 53端口。DNS協議在UDP的53端口提供域名解析服務,在TCP的53端口提供DNS區域文件傳輸服務。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章