《TCP IP詳解》筆記 網路介面層

2021-08-20 11:09:34 字數 3110 閱讀 1433

在《tcp/ip詳解》筆記——tcp/ip基本工作原理概述,簡述了tcp/ip的四層協議以及各層的作用及常用協議,資料傳輸中的封裝和拆封過程,舉例說明主機a至主機b在區域網和廣域網傳輸概述。接下來幾節將詳細講解tcp/ip各層協議及作用。本節講述最低層網路介面層。

1、概述

2、乙太網和ieee802的封裝

3、slip、cslip、ppp

4、最大傳輸單元 mtu

在tcp/ip協議族中,網路介面層主要有三個目的:

1)為ip模組傳送和接收資料

2)為arp模組傳送arp請求和接收arp應答

3)為rarp模組傳送rarp請求和接收rarp應答

tcp/ip支援多種不同的鏈路層協議,這取決於網路所使用的硬體,如乙太網,令牌環網,fddi(光纖分布式資料介面)及rs-232序列線路等。

網路介面層層的協議資料單元——幀:將ip層(網路層)的資料報新增首部和尾部封裝成幀。

網路介面層層協議有許多種,都會解決三個基本問題,封裝成幀,透明傳輸,差錯檢測。

兩者前面都分別用兩個6位元組來表示目的位址和源位址,這個位址指的是實體地址,也就是mac位址(48bit)。

2)源位址後面2個位元組兩者表示的不同

ieee802.2/802.3中表示後面跟的資料的長度,也就是表示的從dsap到crc之前(不包括crc),長度的範圍是:46-1500。減去後面格式占用的8個位元組,也就是ip資料報占用的長度為38-1492;

乙太網表示的為後面跟的資料的型別, 其中0800表示後面封裝的為ip資料報, 0806表示的是arp請求/應答,8035表示的是rarp請求/應答。

那麼這兩種封裝怎麼區分?很簡單,對於ieee802.2/802.3長度的合理範圍是:46-1500,而對於乙太網型別部分有三個值:分別為0800,0806,8035換成10進為:2048,2054,32821,後面的三個值都不在46-1500範圍內,所以不會產生衝突。

3)ieee802.2/802.3後面8個位元組簡述

dsap:目的訪問點,通常為0xaa;

ssap:源訪問點,通常為0xaa;

cntl:控制字段,通常為0x03;

org code:通常為0x00;

型別:與乙太網類似,用於區分arp和rarp。

在網路介面層的資料傳輸中,主要有三種傳輸協議,slip、cslip和ppp,可根據實際需要選擇不同的處理方式。

序列線路 ip (slip)用於執行 tcp/ip 的點對點序列連線。 slip 通常專門用於序列連線,有時候也用於撥號,使用的線路速率一般介於 1200bps 和 19.2kbps 之間。 slip 允許主機和路由器混合連線通訊(主機 - 主機、主機 - 路由器、路由器 - 路由器都是 slip 網路通用的配置),因而非常有用。

slip 只是乙個包組幀協議,僅僅定義了在序列線路上將資料報封裝成幀的一系列字元。它沒有提供定址、包型別標識、錯誤檢查 / 修正或者壓縮機制。

1) ip資料報以乙個稱作end(0 x c 0)的特殊字元結束。同時,為了防止資料報到來之前的線路雜訊被當成資料報內容,大多數實現在資料報的開始處也傳乙個e n d字元(如果有線路雜訊,那麼e n d字元將結束這份錯誤的報文。這樣當前的報文得以正確地傳輸,而前乙個錯誤報文交給上層後,會發現其內容毫無意義而被丟棄)。

2) 如果i p報文中某個字元為end,那麼就要連續傳輸兩個位元組0 x d b和0 x d c來取代它。0 x d b這個特殊字元被稱作slip的esc字元,但是它的值與ascii碼的e s c字元(0 x 1 b)不同。

3) 如果i p報文中某個字元為slip的esc字元,那麼就要連續傳輸兩個位元組0 x d b和0 x d d來取代它。

壓縮序列線路 ip (cslip)在傳送出的 ip 分組上執行 van jacobson 頭部壓縮。cslip(即壓縮slip)的新協議,它在rfc 1144[jacobson 1990a]中被詳細描述。c s l i p一般能把上面的4 0個位元組壓縮到3或5個位元組。它能在c s l i p的每一端維持多達1 6個t c p連線,並且知道其中每個連線的首部中的某些字段一般不會發生變化。這個壓縮過程顯著提高了互動式會話吞吐量。

ppp包括以下三部分:

1) 在序列鏈路上封裝i p資料報的方法。p p p既支援資料為8位和無奇偶檢驗的非同步模式(如大多數計算機上都普遍存在的序列介面),還支援面向位元的同步鏈結。

2) 建立、配置及測試資料鏈路的鏈路控制協議( l c p:link control protocol)。它允許通訊雙方進行協商,以確定不同的選項。

3) 針對不同網路層協議的網路控制協議( n c p:network control protocol)體系。當前r f c定義的網路層有i p、o s i網路層、d e c n e t以及a p p l e ta l k。例如,ip ncp允許雙方商定是否對報文首部進行壓縮,類似於c s l i p(縮寫詞n c p也可用在t c p的前面)。

ppp協議都以標誌字元0x7e開始和結束,緊接著是乙個位址位元組,值始終是0xff,然後是乙個0x03的控制位元組。接下來是協議字段。

0x0021:ip資料報

0xc021:鏈路控制資料

0x8021:網路控制資料

最大傳輸單元(maximum transmission unit,mtu)是指一種通訊協議的某一層上面所能通過的最大資料報大小(以位元組為單位)。

如果在ip層要傳輸乙個資料報比鏈路層的mtu還大,那麼ip層就會對這個資料報進行分片。乙個資料報會被分為若干片,每個分片的大小都小於或者等於鏈路層的mtu值。

當同一網路上的主機互相進行通訊時,該網路的mtu對通訊雙方非常重要。但當主機間要通過很多網路才能通訊時,對通訊雙方最重要的是通訊路徑中最小的mtu,因為在通訊路徑上不同網路的鏈路層mtu不同。通訊路徑中最小的mtu被稱為路徑mtu。

網路中一些常見鏈路層協議mtu的預設數值如下:

網路介面層

網路介面層對應osi的資料鏈路層,物理層。資料鏈路層分為 mac子層 介質訪問控制層。完成幀的封裝與拆封,物理介質傳輸差錯的檢測 定址,實現介質訪問控制協議。llc子層 邏輯鏈路層。連線管理 建立和釋放連線 是與高層的介面,保證幀的可靠性,按序傳輸激流量控制。邏輯上的資料傳輸控制,作為一種資料傳輸思...

網路介面層

本文參考 計算機網路 第七版 謝希仁編著,博文僅供學習使用,用來記錄筆記 網路介面層包括資料鏈路層和物理層。物理層考慮的是怎樣才能在連線各種計算機的傳輸 上傳輸資料位元流,而不是指具體的傳輸 物理層的作用正是要盡可能地遮蔽掉這些傳輸 和通訊手段的差異,使物理層上面的資料鏈路層感覺不到這些差異。物理層...

TCP IP協議架構介紹(一) 網路介面層

目錄tcp ip協議架構是通訊協議的統稱,常被稱為tcp ip協議族,包括兩個核心協議 tcp 傳輸控制協議 和ip 網際協議 tcp ip協議的開發始於20世紀60年代後期,早於osi參考模型,由於tcp ip模型更加簡潔易用,目前大多採用tcp ip模型。一共包括4層 應用層 傳輸層 網路層和網...