TCP IP協議詳解 第三章 IP 網際協議

2021-09-05 12:49:44 字數 3608 閱讀 9523

1.ip協議的特點

不可靠(無法保證ip資料報能成功地到達目的地)、無連線(無法保證資料到來的先後順序)

2.ip首部

3.4位版本號目前協議版本號是4

首部長度指的是首部佔 32 bit字的數目,包括任何選項。由於它是乙個 4位元字段,因此

首部最長為6 0個位元組。

20*8 = 160 = 32*5

網路位元組序低位放報文起始位

總長度字段是指整個ip資料報的長度,以位元組為單位。由於它是16位元,所以ip資料報最長可達65536位元組。但是鏈路層會對ip資料報進行分片。而且主機也要求不能接受超過576位元組的資料報。

長度欄位是 i p首部中必要的內容,因為一些資料鏈路(如乙太網)需要填充一些資料

以達到最小長度。儘管乙太網的最小幀長為 4 6位元組,但是 i p資料可能會更短。如

果沒有總長度字段,那麼 i p層就不知道4 6位元組中有多少是i p資料報的內容。

標識字段唯一地標識主機傳送的每乙份資料報。通常每傳送乙份報文它的值就會加 1。

ip通過8位協議來對資料報進行分用

t t l(t i m e - t o - l i v e)生存時間字段設定了資料報可以經過的最多路由器數。它指定了資料

報的生存時間。 t t l的初始值由源主機設定(通常為 3 2或6 4),一旦經過乙個處理它的路由器,

它的值就減去 1。當該字段的值為 0時,資料報就被丟棄,並傳送 i c m p報文通知源主機。

首部檢驗和字段是根據 i p首部計算的檢驗和碼。它不對首部後面的資料進行計算。 i c m p、

i g m p、 u d p和t c p在它們各自的首部中均含有同時覆蓋首部和資料檢驗和碼。

如何理解ip檢驗和(原碼加反碼 所有位都是1)

為了計算乙份資料報的 i p檢驗和,首先把檢驗和字段置為 0。然後,對首部中每個 16 bit

進行二進位制反碼求和(整個首部看成是由一串 16 bit的字組成),結果存在檢驗和字段中。當

收到乙份 i p資料報後,同樣對首部中每個 16 bit進行二進位制反碼的求和。由於接收方在計算過

程中包含了傳送方存在首部中的檢驗和,因此,如果首部在傳輸過程中沒有發生任何差錯,

那麼接收方計算的結果應該為全 1。如果結果不是全 1(即檢驗和錯誤),那麼i p就丟棄收到的

資料報。但是不生成差錯報文,由上層去發現丟失的資料報並進行重傳。

補充:有符號數即正負數在計算機是以補碼形式儲存的(因為有正負之分)

正整數的原碼、反碼、補碼完全一樣,即符號位固定為0,數值位相同

補碼是從原碼的基礎上來的

原碼:乙個整數,按照絕對值大小轉換成的二進位制數,稱為原碼。

反碼:原碼按位取反。

為了便於加減計算,正負數用補碼來表示,正數的補碼就是原碼;

負數的補碼是原碼的反碼再加1

加法法則: 0+0=0,0+1=1,1+0=1,1+1=0

減法,當需要向上一位借數時,必須把上一位的1看成下一位的(2)10。

減法法則: 0-0 =0,1-0=1,1-1=0,0-1=1 有借位,借1當(10) 看成 2 則 0 - 1 - 1 = 0 有借位 1 - 1 - 1 = 1 有借位。

乘法法則: 0×0=0,0×1=0,1×0=0,1×1=1

除法應注意: 0÷0 =0(無意義),0÷1 =0,1÷0 =0(無意義)

除法法則: 0÷1=0,1÷1=1

4.ip路由選擇

如果目的主機與源主機直接相

連(如點對點鏈路)或都在乙個共享網路上(乙太網或令牌環網),那麼i p資料報就直接送到

目的主機上。否則,主機把資料報發往一預設的路由器上,由路由器來**該資料報。

ip層既可以配置成路由器的功能,也可以配置成主機的功能。們可以為它指定主機和路由器都可以使用的簡單路由演算法。本質上的區別在於主機從不把資料報從乙個介面**到另乙個介面,而路由器則要**資料報。內含路由器

功能的主機應該從不**資料報,除非它被設定成那樣。

ip層在記憶體中有乙個路由表。當資料報來自某個網路介面時, i p首先檢查目的i p位址是否為本機的 i p位址之一或者i p廣播位址。如果確實是這樣,資料報就被送到由 i p首部協議欄位所指定的協議模組進行處理。如果資料報的目的不是這些位址,那麼(1)如果 i p層被設定為路由器的功能,那麼就對資料報進行**

(也就是說,像下面對待發出的資料報一樣處理);否則(2)資料報被丟棄。

路由表中的每一項都包含下面這些資訊:

• 目的i p位址。它既可以是乙個完整的主機位址,也可以是乙個網路位址,由該表目中的標

志字段來指定(如下所述)。主機位址有乙個非0的主機號,以指定某一特定的

主機,而網路位址中的主機號為0,以指定網路中的所有主機(如乙太網,令牌環網)。

• 下一站(或下一跳)路由器(next-hop router)的i p位址,或者有直接連線的網路 i p地

址。下一站路由器是指乙個在直接相連網路上的路由器,通過它可以**資料報。下

一站路由器不是最終的目的,但是它可以把傳送給它的資料報**到最終目的。

• 標誌。其中乙個標誌指明目的 i p位址是網路位址還是主機位址,另乙個標誌指明下一

站路由器是否為真正的下一站路由器,還是乙個直接相連的介面。

• 為資料報的傳輸指定乙個網路介面

i p路由選擇主要完成以下這些功能:

1) 搜尋路由表,尋找能與目的 i p位址完全匹配的表目(網路號和主機號都要匹配)。如果

找到,則把報文傳送給該錶目指定的下一站路由器或直接連線的網路介面(取決於標

志字段的值)。

2) 搜尋路由表,尋找能與目的網路號相匹配的表目。如果找到,則把報文傳送給該錶目

指定的下一站路由器或直接連線的網路介面(取決於標誌欄位的值)。目的網路上的所

有主機都可以通過這個表目來處置。例如,乙個乙太網上的所有主機都是通過這種表

目進行尋徑的。

這種搜尋網路的匹配方法必須考慮可能的子網掩碼。

3) 搜尋路由表,尋找標為「預設(d e f a u l t)」的表目。如果找到,則把報文傳送給該錶目

指定的下一站路由器。

如果上面這些步驟都沒有成功,那麼該資料報就不能被傳送。如果不能傳送的資料報來自

本機,那麼一般會向生成資料報的應用程式返回乙個「主機不可達」或「網路不可達」的錯誤。

主機號 網路號  子網劃分 參見下面**

arp協議的理解

5.子網掩碼

給定i p位址和子網掩碼以後,主機就可以確定 i p資料報的目的是:( 1)本子網上的主機;

(2)本網路中其他子網中的主機;( 3)其他網路上的主機。如果知道本機的 i p位址,那麼就知道

它是否為a類、 b類或c類位址(從i p位址的高位可以得知),也就知道網路號和子網號之間的分

界線。而根據子網掩碼就可知道子網號與主機號之間的分界線。

TCP IP詳解,卷1 協議,第三章IP 網際協議

小結 1.對ip首部的講解。2.ip路由選擇 如果目的主機在直接相連的網路上,那麼就把資料報直接傳給目的主機,否則傳給預設路由器。3.在進行路由選擇決策時,主機和路由器都使用路由表。在表中有三種型別的路由 特定主機型 特定網路型和預設路由型。主機路由 網路路由 預設路由。4.ip路由是通過逐跳來實現...

tcp ip詳解 筆記 第三章

ip協議是tcp ip協議簇中最為核心的協議。所有的tcp udp icmp igmp資料都以ip資料報格式傳輸。而ip協議是不可靠的,因為ip僅提供最好的傳輸服務,也就是以最快速度 資料報,而資料報能不能到達終點,能不能按照傳送的順序到達終點都是不能保證的。圖為ip資料報格式及首部中的各欄位 本章...

第三章 IP網際協議

1.ip首部 ip資料報的格式如圖。普通的ip首部長為20位元組,除非含有選項字段 其中總長度欄位是指整個ip資料報的字段,以位元組為單位。利用首部長度和總字段長度,就可以知道ip資料報中資料內容的起始位置和長度。由於該字段長6位元,所以ip資料報最長可達65535位元組。2.ip路由選擇 ip路由...