《TCP IP詳解卷1 協議》讀書筆記之鏈路層

2021-08-31 19:43:49 字數 1269 閱讀 9684

首先看下圖來了解各個協議層對資料的封裝,當應用程式用tcp傳送資料時,資料被送入協議棧中,然後逐個通過每一層直到被當作一串位元流送入網路,其中每一層對收到的資料都要增加一些首部資訊,該過程如下圖所示:

從圖中可以看出,應用程式使用tcp或udp來傳送資料,運輸層協議在生成報文首部時要存入乙個應用程式的識別符號,tcp和udp都用乙個16bit的埠號來表示不同的應用程式,tcp和udp把源埠號和目的埠號分別存入報文首部,而網路介面分別要傳送和接收ip、arp和rarp資料,因此也必須在乙太網的幀首部中加入某種標識,以指明生成資料的網路層協議。

在tcp/ip協議族中鏈路層主要有三個目的:1.為ip模組傳送和接收ip資料;2.為arp模組傳送arp請求和接收arp應答;3.為rarp傳送rarp請求和接收rarp應答。tcp/ip支援多種不同的鏈路層協議,這取決於網路所使用的硬體,如乙太網、令牌環網、fddi及rs-232序列線路等。在tcp/ip世界中,乙太網ip資料報的封裝是在rfc894中定義的,而ieee802網路的ip資料報封裝在rfc1042中定義的,如下圖所示了兩種不同形式的封裝格式:

兩種幀格式都採用48bit的目的位址和源位址,接下來的2個位元組在兩種幀格式中互不相同,802標準定義的幀格式中,長度欄位是指它後續資料的位元組長度,但不包括crc檢驗碼,乙太網的型別字段定義了後續資料型別。在802標準定義的幀格式中型別欄位則是由後續的子網接入協議的首部給出。crc欄位用於幀內後續位元組差錯的迴圈冗餘碼檢驗。802.3標準定義的幀和乙太網的幀都有最小長度要求,802.3規定資料部分必須至少為38位元組,乙太網要求最少為46位元組,為了保證這一點,必須在不足的空間插入填充位元組。

大多數產品都支援環迴介面,以允許執行在同一臺主機上的客戶程式和伺服器程式通過tcp/ip進行通訊,a類網路號127就是為環迴介面預留的,大多數系統把ip位址127.0.0.1分配給這個介面,並命名為localhost。環迴介面處理ip資料報的簡單過程如下圖所示:

傳給環迴位址的任何資料均作為ip輸出,傳給廣播位址或多播位址的資料報複製乙份傳給環迴介面,然後送到乙太網上,任何傳給該主機ip位址的資料均送到環迴介面。

乙太網和802.3對資料幀的長度都有限制。其最大值分別為1500和1492位元組。鏈路層的這個特性稱為mtu,最大傳輸單元,不同型別的網路大多數都有乙個上限,如果ip層的資料報的長度比鏈路層的mtu還大,那麼ip層就需要進行分片,把資料分成若干小片。當在同乙個網路上的兩台主機互相進行通訊時,該網路的mtu是非常重要的,但是如果兩台主機在不同的網路上通訊,那麼每個鏈路層就有可能有不同的mtu,重要的不是兩台主機所在網路的mtu的值,重要的是兩台通訊主機路徑中的最小mtu,它被稱為路徑mtu,它取決於當時所選的路由。

讀書筆記 《TCP IP協議詳解 卷1 協議》

tcp ip協議詳解 卷1 協議 第6章 icmp internet控制報文協議 1 icmp採用udp,在ip資料報內部所傳輸 2 有幾種情況下不會導致產生icmp差錯報文 icmp 差錯報文 廣播或多播 ip資料報,非 ip分片的第一片 3 icmp差錯報文必須包括生產該差錯報文的的資料報ip首...

《TCP IP詳解,卷一 協議》讀書筆記

ftp協議流程圖。應用層和傳輸層是端到端協議,只有端系統會使用者兩層協議,傳輸層的tcp可以保證可靠性。網路層是逐跳協議,所有中間系統和端系統都會使用這一層。網路層不保證可靠性。網橋在鏈路層使主機互聯 路由器在網路層使主機互聯。igmp是internet組管理協議,用來把乙個udp資料報多播到多個主...

《TCP IP詳解卷1 協議》讀書筆記之概述

tcp ip協議簇是為了讓不同廠家生產的各種型號並執行完全不同作業系統的計算機相互進行通訊。詳情請見 osi七層網路模型與tcp ip四層模型介紹 假設在乙個區域網 lan 如乙太網中有兩台主機,二者都執行ftp協議,圖1 2列出了該過程所涉及到的所有協議。描述 大多數的網路應用程式都被設計成客戶 ...