《TCP/IP詳解卷一:協議》學習筆記一
一、分層
1、網路協議通常分不同層次進行開發,每一層分別負責不同的通訊功能。
2、TCO/IP通常被認為是一個四層協議系統:
1)、鏈路層,有時候也被稱作資料鏈路層或網路介面層,通常包括作業系統中的裝置驅動程式和計算機中對應的網路介面卡。它們一起處理與電纜(或其他任何傳輸媒介)的物理介面細節。
2)、網路層,有時也稱作網際網路層,處理分組在網路中的活動。在TCP/IP協議族中,網路層協議包括IP協議(網際協議),ICMP協議(internet網際網路控制報文協議),以及IGMP協議(internet組管理協議)。
3)、運輸層主要為兩臺主機上的應用程式提供端到端的通訊。在TCP/IP協議族中,有兩個互不相同的傳輸協議:TCP(傳輸控制協議)和UDP(使用者資料報協議)。
4)、應用層負責處理特定的應用程式細節。
3、在TCP/IP協議族中,網路層IP提供的是一個不可靠的服務,它只是儘可能快地把分組從源節點送到目的節點,不提供任何可靠性的保證。另一方面,TCP在不可靠的IP層上提供一個可靠的運輸層。
二、TCP/IP的分層
1、TCP/IP協議族中不同層次的協議
2、TCP使用不可靠的IP服務,但是它提供一種可靠的運輸層服務。
3、UDP為應用程式接收和傳送資料報。但是EDP是不可靠的,它不保證資料報能安全無誤的到達目的地。
4、IP是網際層的主要協議,同時被TCP和UDP使用。
5、ICMP是IP的附屬協議。IP層用它來與其他主機或路由器交換錯誤報文和其他重要的資訊。
6、IGMP是Internet組管理協議。它用來把一個UDP資料報多播到多個主機。
7、ARP(地址解析協議)和RARP(逆地址解析協議)是某些網路介面使用的特殊協議,用來轉換IP層和網路介面層使用的地址。
三、網際網路的地址
1、網際網路上的每個介面必須有一個唯一的Internet地址(也稱作IP地址)。IP地址長32bit。Internet地址並不採用平面形式的地址空間。IP地址具有一定的介面,五類不同的網際網路地址格式如下:
2、32位IP地址“點分十進位制表示法”
3、有三類IP地址
1)、單播地址(目標為單個主機)
2)、廣播地址(目的端為給定網路上的左右主機)
3)、多播地址(目的端為同一組類的所有主機)
四、域名系統
1、域名系統是一個分佈的資料庫,由它來提供IP地址和主機名之間的對映資訊。
五、封裝
1、資料進入協議棧的封裝過程:
1)、幀頭和幀尾所標註的數字是典型乙太網首部的長度。
2)、乙太網資料幀的物理特性是其長度必須在46~1500位元組之間。
3)、圖中IP和網路介面層傳送的資料單元應該是分組。分組既可以是一個IP資料報,也可以是IP資料報的一個片。
4)、UDP資料和TCP資料基本一致。唯一不同的是UDP傳送給IP的資訊單元稱作UDP資料報,而UDP首部的長度為8位。
5)、由於TCP、UDP、ICMP、IGMP都要向IP傳送資料,因此IP必須在生成的IP首部加入某種標識,以表明資料屬於那一層。IP在首部存入一個長度為8位的數值,稱作協議域。1表示IGMP協議,2表示ICMP協議,6表示TCP協議,17表示UDP協議。
6)、TCP、UDP、網路介面也要在首部加入識別符號。
2、當應用程式用TCP傳送資料時,資料被送入協議棧中,然後逐個通過每一層直到被當作一串位元流送入網路。其中每一層對收到的資料都要新增一些首部資訊(有時還要新增尾部資訊)。
3、TCP傳給IP的資料單元稱作TCP報文段或簡為TCP段,IP傳給網路介面層的資料單元稱作IP資料報。通過乙太網傳輸的位元流稱作資料幀。
六、分用
1、當目的主機收到一個乙太網資料幀時,資料就開始從協議棧中由低往上升,同時去掉各層協議加上的報文首部。每層協議盒都要去檢查報文首部中的協議標識,以確定接受資料的上層協議。這個過程稱作分用。
2、乙太網資料幀的分用過程
七、客戶-伺服器模型
1、伺服器提供的服務分兩種型別:
1)、重複型
2)、併發型
2、重複型伺服器通過以下步驟進行互動:
I、等待一個客戶請求的到來
II、處理客戶請求
III、傳送響應給傳送請求的客戶
IV、返回第I步
3、併發型伺服器採用以下步驟:
I、等待一個客戶請求的到來
II、啟動一個新的伺服器來處理這個請求
III、返回第I步
4、一般來說,TCP伺服器是併發的,而UDP伺服器是重複的,但也存在一些例外。
八、埠號
1、伺服器一般都是通過知名埠號來識別的。客戶使用臨時設定的埠號。
2、大多數TCP/IP實現給臨時埠分配1024~5000之間的埠號。大於5000的埠號是為其他伺服器預留的。
3、Uinx系統有保留埠號的概念。只有超級使用者特權的程序才允許給它自己分配一個保留埠號。