TCP IP卷一(第四章學習)

2021-07-11 05:48:17 字數 1092 閱讀 7982

arp:位址解析協議

當一台主機把乙太網資料幀傳送到位於同意區域網上的另一台主機時,是根據48bit的乙太網位址來確定目的介面。裝置驅動程式從不檢查ip資料報中的目的ip位址。

舉例說明arp:

當我們敲入% ftp bsdi   這個命令,會進行以下步驟:

1)應用程式ftp客戶端呼叫函式gethostbyname(3)把主機名(bsdi)轉換成32bit的ip位址。這個函式在dns(網域名稱系統)中稱作解析器。

2)ftp客戶端請求tcp用得到的ip位址建立連線。

3)tcp傳送乙個連線請求分段到遠端的主機,即用上述ip位址傳送乙份ip資料報。

4)如果目的主機在本地網路上(如乙太網,令牌環網或點對點連線的另一端),那麼ip資料報可以直接送到目的主機上。如果目的主機在乙個遠端網路上,那麼就通過ip選路函式來確定位於本地網路上的下一站路由器位址,並讓它**ip資料報。

5)假定是乙個乙太網,那麼傳送短主機必須把32bit的ip位址變換成48bit的乙太網位址,從邏輯internet位址到對應的物理硬體位址需要進行翻譯。這就是arp的功能。

6)arp傳送乙份稱作arp請求的乙太網資料幀給乙太網上的每乙個主機。這個過程稱作廣播。

7)目的主機的arp層收到這份廣播報文後,識別出這是傳送端在尋問它ip位址,於是傳送乙個arp應答。這個arp應答包含ip位址及對應的硬體位址。

8)收到arp應答後,使arp進行請求——應答交換的ip資料報現在就可以傳送了。

9)傳送ip資料報到目的主機。

在arp背後有乙個基本概念,那就是網路介面有乙個硬體位址(乙個48bit的值,標識不同的乙太網或令牌環網網路介面)。在硬體層次上進行的資料幀交換必須有正確的介面位址。核心(如乙太網驅動程式)必須知道目的端的硬體位址才能傳送資料。arp的功能是在32bit的ip位址和採用不同網路技術的硬體位址之間提供動態對映。點對點鏈路不適用arp。

如果arp請求是從乙個網路的主機發往另乙個網路上的主機,那麼連線這兩個網路的路由器就可以回答該請求,這個過程稱作委託arp或arp**。這樣可以欺騙發起arp請求的傳送端,使他誤以為路由器就是目的主機,而事實上目的主機是在路由器的「另一邊」。路由器的功能相當於目的主機的**,把分組從其他主機**給它。

《UNIX網路程式設計》卷一第四章學習筆記

includeint socket int family,int type,int protocol 返回值 出錯返回 1,否則返回非負描述符famliy引數指明協議族 取值含義 af inet ipv4協議 af inet6 ipv6協議 af local unix域協議 af route 路由套...

python學習第四章

1.建立字典 每個鍵和它的值之間用冒號隔開,項之間用逗號隔開,整個字典使用一對大括號括起來。2.字典基本操作 len d 返回d中項的數量。d k 返回關聯到鍵k上的值。d k v將值v關聯到鍵k上。del d k 刪除鍵位k的項。k in d檢查d中是否有含有鍵為k的項。3.字典的格式化字串 可以...

C Primer 學習(第四章)

1.左值和右值 c 中可以這樣簡單的理解左值和右值 能夠取位址的 有名字的就是左值,反之,不能取位址的 沒有名字的就是右值。當乙個物件被用作右值的時候,用的是物件的值 內容 當物件被用作左值的時候,用的是物件的身份 在記憶體中的位置 乙個重要的原則是在需要右值的地方可以用左值來代替,但是不能把右值當...