一、協議族體系結構
TCP/IP協議族分為四層協議系統,自底向下分別為數據鏈路層、網絡層、傳輸層、應用層。
數據鏈路層常用ARP(地址解析協議)和RARP(逆地址解析協議)。在網絡層使用IP尋址,而在數據鏈路層使用物理地址尋址,ARP就是將IP地址轉化為物理地址供數據鏈路層使用。RARP將物理地址映射為IP地址,適用于某些無盤工作站(不能儲存自己的IP)向服務器查詢。
網絡層實現數據包的選路和轉發。選擇中間節點(路由器),確定兩臺主機之間的通信路徑。網絡層的核心協議是IP協議,IP協議根據數據包的目的IP地址來選擇如何投遞:選擇合適的下一跳并交給路由器轉發。另一個重要協議是ICMP協議,分為兩類差錯報文和查詢報文。
傳輸層為兩臺計算機上的應用程序提供端到端的通信,只關心起始端和目的端不在乎數據包的中轉過程。
其中實線表示各層之間的實體通信,虛線箭頭表示邏輯通信線路。
傳輸層主要協議有三個:TCP協議、UDP協議和SCTP協議。TCP為應用層提供可靠的、面向連接的和基于流的服務。UPD為應用層提供不可靠、無連接和基于數據報的服務。SCTP是一種較新的傳輸層協議,為因特網上傳輸電話信號而設計。
應用層負責處理應用程序的邏輯。其他層需要保證穩定高效都在內核空間中實現,應用層在用戶空間中實現。其中在應用層主要有:ping應用程序,它不是協議。telnet協議是一種遠程登陸協議。
二、封裝
應用程序數據在發送到物理網絡上之前,將沿著協議棧從上往下依次傳遞。沒層協議都在上層數據的基礎上加上自己的頭部信息(有時還包含尾部信息),以實現該層的功能。
經過數據鏈路層封裝的數據稱為幀,傳輸媒介不同,幀的類型也不同。在以太網上傳輸以太網幀,令牌環網絡上傳輸令牌環幀。以太網幀最大攜帶1500字節數據,所以過長的IP數據包需要分片。
三、分用
當幀到達目的主機時,將沿著協議棧自底向上傳遞。各層協議依次處理幀中本層負責的頭部數據,最終將幀交給目標應用程序,這個過程稱為分用。
四、ARP協議工作原理
主機向自己所在的網絡廣播一個ARP請求,該請求包含目的機器的網絡地址。此網絡上的其他機器都將收到這個請求,但只有被請求的機器會回應一個ARP應答,其中包含自己的物理地址。(知道他人的IP后通過IP找到他人的物理地址)
五、DNS工作原理
DNS是一套分布式域名服務系統。每個DNS服務器上存放著大量的機器名和IP地址的映射。DNS查詢和應答報文如下:
?