成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

TCP/IP協議棧--IP選項處理

網絡 網絡管理
IP輸入函數將在驗證分組格式(檢驗和,長度等)之后,確定分組是否到達目的地之前,對選項進行處理。

[[121153]]

IP輸入函數(ipintr)將在驗證分組格式(檢驗和,長度等)之后,確定分組是否到達目的地之前,對選項進行處理。這表明分組所遇到的每個路由器以及最終的目的主機都對要分組的選項進行處理。

IP分組內可以包含某些在分組被轉發或被接收之前處理的可選字段。IP實現可以用任意順序處理選項。標準IP首部之后最多可跟40字節的選項。

 

 

1.選項格式

IP選項字段可能包含0個或多個單獨選項。選項有兩種類型,單字節和多字節。如圖所示:

 

 

所有選項都以1字節類型type字段開始。在多字節選項中,類型字段后面緊接著一個長度len字段,其他字段時數據data。許多選項數據字段的***個字節時1字節的位域offset字段,指向數據字段內的某個字節。長度字節的計算覆蓋了類型、長度和數據字段。類型被繼續分成三個子字段:1bit備份copied標志,2bit類class字段和5bit數字number字段。下圖列出了目前定義的IP選項。前兩個選項時單字節選項;其他的是多字節選項。

 

 

第1列顯示了Net/3的選項常量,第2列和第3列是該類型的十進制和二進制值,第4列是選項的長度。Net/3列顯示的是在Net3中由ip_dooptions實現的選項。IP必須自動忽略所有它不識別的選項。其中安全和流ID沒有在Net/3中實現,流ID選項時過時的,安全選項主要時美國軍方使用。

當Net/3對一個有選項的分組進行分片時,它將檢查copied標志位。該標志位之處是否把所有選項都備份到每個分片的IP首部。class字段把相關的選項按下圖進行分組,除時戳選項具有class為2外,所有選項都是class為0.

2.ip_dooptions函數

ipintr在檢測分組的目的地址之前調用ip_dooptions.該函數處理分組中它所直到的所有選項。

ip_dooptions順序讀取每個選項并進行處理:如果遇到EOL選項則終止該循環,如果遇到NOP選項,則忽略它,如果需要未知選項則忽略。

分組選項被處理后,如果分組需要被轉發,分組被傳給ip_forward。如果處理選項時出現了錯誤,函數就會進入錯誤處理,發出適當的ICMP錯誤報文。下面幾節會具體說明選項的處理。

3.記錄路由選項

記錄路由選項使得分組在穿過互聯網時所經過的路由被記錄在分組內部,項的大小是源主機在構造時確定的,必須足夠保存所有預期的地址。我們記得在IP分組的首部,選項最多只能有40個字節。記錄路由選項可以有3個字節的開銷。后面緊跟地址的列表(每個地址4個字節),如果該選項是唯一選項,則最多可以有9個(3+4*9=39)地址出現。一旦分配給該選項的空間被填滿,

就按通常的情況對分組進行轉發,中間的系統就不再記錄地址。下圖說明了一個記錄路由選項的格式。

 

 

如果IP目的地址時某個系統地址(分組已到達目的地),則把接收接口的地址記錄在選項中;否則把ip_rtaddr函數提供的外出接口的地址記錄下來。如果ip_rtaddr無法找到目的地路由,則發送一個ICMP主機不可達差錯報文。

ip_rtaddr函數:該函數查詢路由緩存,必要時查詢完整的路由表,來找到到給定IP地址的路由。函數返回一個指向in_ifaddr結構的指針,該指針與該路由的外出接口有關。該函數中,rtalloc函數搜索路由表,尋找到目的地的路由。

4.源站和記錄路由選項

通常在中間路由器所選擇的路徑上轉發分組。源站和記錄路由選項允許源站明確制定一條到目的地的路由,覆蓋掉中間路由器的路由選擇決定。而且在分組到達目的地的過程中,把該路由記錄下來。

嚴格路由包含了源站和目的站之間的每個中間路由器的地址。寬松路由只指定某些中間路由器地址,在寬松路由中,路由器可以自由選擇兩個系統之間的任何路徑;而在嚴格路由中,則不允許路由器這么做。

如下圖,A,B和C是路由器,而HS和HD是源和目的主機。因為每個接口都有自己的IP地址,所以我們看到路由器A有三個地址:

A1,A2,A3。同樣,B和C也有多個地址。

 

 

IP首部的源和目的地址以及在選項中列出的位移和地址表,指定了路由以及分組目前在該路由中所處的位置。下圖顯示了當分組按照這個寬松路由從HS經過A,B,C到HD,信息時如何改變的,每行代表當分組被第1列顯示的系統發送時的狀態,***一行顯示分組被HD接收。#p#

每個系統都把接口的地址放到選項去。通過這種方法, 分組所采用的路由都被記錄在選項中。被記錄的路由將被目的系統倒轉過來放到應答分組上,讓他們沿著原始的路由的逆方向發送。除了UDP,Net/3在應答時總是把收到的源路由逆轉過來。

 

 

選項處理主要包含以下幾個部分:

1)源路由的結束

如果IP首部的目的地址是某個本地地址,并且offset所指向的超過了源路由的末尾,源路由中沒有地址了,則分組已經到達了目的地,調用save_rte將源路由保存在如下圖所示的ip_srcrt結構中,因為在最終目的地,運輸協議必須能夠使用分組中被記錄下來的路由,運輸協議必須把該路由倒過來并附在所有應答的分組上。

 

 

2)為下一跳更新分組

如果IP首部目的地址是一個本地地址,并且offset指向選項內的一個地址,則該系統是源路由中指定的一個中間系統,分組還沒有到達目的地。在嚴格路由中,下一個系統必須位于某個直接相連的網絡上,而在寬松路由中,如果沒有找到下一個系統的接口或路由,則發送一個ICMP源路由失敗差錯報文。

如果找到一個接口或一條路由,則更新IP目的地址設置為offset指向的IP地址。在源路由選項內,用外出接口的地址代替中間系統的地址,把offset增加,指向路由的下一個地址。

3)多播目的地

如果新的目的地址不是多播地址,在處理完所有選項后,應該把分組轉發不是返回給ipintr。

源路由中的多播地址允許兩個多播路由器通過不支持多播的中間路由器進行通信。

5.時間戳選項

當分組穿過一個互聯網時,時間戳選項使各個系統把它當前的時間表示記錄在分組的選項內。時間是以從UTC的午夜開始計算的毫秒計,被記錄在一個32bit的字段里。

如果系統沒有準確的UTC或沒有每秒更新至少15次,就不把它作為標準時間,非標準時間必須把時間戳字段的高位置位。

有三種時間戳選項,Net/3通過下圖所示的ip_timestamp結構訪問。

 

 

ip_flg指定的三種時間戳選項如下:

 

 

初始主機必須構造一個具有足夠大的數據區存放可能的時間戳和地址的地址的時間戳選項,對于ipt_flg為3的時間戳選項,

初始主機在構造該選項時,填寫要記錄時間戳的系統的地址。下圖顯示了三種時間戳選項的結構。

 

 

因為IP選項只有40個字節,所以時間戳選項限制只能有9個時戳,或4個地址和時間時戳對。

責任編輯:林琳 來源: CSDN博客
相關推薦

2010-09-08 15:11:36

TCP IP協議棧

2010-06-13 14:54:40

TCP IP協議棧linux

2010-09-08 15:15:12

TCP IP協議棧

2010-09-27 13:25:58

TCP IP協議棧

2010-09-08 15:24:28

TCP IP協議棧

2010-09-08 15:34:27

TCP IP協議棧

2010-06-13 13:39:46

TCP IP協議棧

2021-07-06 21:29:16

TCPIP協議棧

2021-07-09 08:55:23

LinuxTCPIP

2019-09-30 09:28:26

LinuxTCPIP

2022-06-27 08:59:21

數據包TCP/IP協議棧

2010-09-09 14:43:08

TCP IP協議棧

2020-07-09 08:14:43

TCPIP協議棧

2010-09-08 15:18:54

單片機TCP IP協議棧

2010-06-19 13:32:36

TCP IP協議棧

2021-05-12 00:07:27

TCPIP協議

2010-06-19 14:10:35

TCP IP協議棧

2014-11-21 09:16:23

TCPIP

2019-08-21 05:48:06

TCPIP協議棧

2010-06-08 13:32:19

TCP IP協議基礎
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品国产乱码久久久久久影片 | 日本免费一区二区三区四区 | 国产精品久久久久久久久久三级 | 久久亚洲综合 | 99精品久久 | 日韩视频免费在线 | 天天综合久久网 | 中文字幕第100页 | 国内精品一区二区 | 毛片久久久 | 欧美精品一区二区三区在线播放 | 精品网 | 国产精品久久久久一区二区三区 | 欧美mv日韩mv国产网站91进入 | 久久综合一区二区三区 | 人人干人人爽 | 久久亚洲精品国产精品紫薇 | 亚洲欧美在线一区 | 色婷婷综合久久久中字幕精品久久 | 国产精品国产三级国产a | 色成人免费网站 | 国产99热精品 | 日韩一区二区三区在线视频 | 五月婷婷丁香 | avhd101在线成人播放 | 久色视频在线 | 韩日在线观看视频 | 国产精品久久777777 | av在线免费观看网站 | 成人精品一区二区三区中文字幕 | 国产成人免费视频网站高清观看视频 | 大象视频一区二区 | 日韩成人| 激情欧美一区二区三区中文字幕 | 99久久婷婷国产综合精品电影 | 台湾佬成人网 | 精品福利av导航 | 久久精品免费一区二区三 | 97精品国产97久久久久久免费 | 国产小u女发育末成年 | 成人影院在线观看 |