路由器网际网路操纵讯息规约[指南]

讯息网  时间:2021-03-25  阅读:()

網際網路控制訊息規約

一 、說明

任何一個網路系統或多或少都會有些錯誤發生這些錯誤或機器失效會使系統不能正確的運作例如傳輸線損壞TTL的計時器可能用光目的主機可能已經斷線使網際網路規約無法順利傳送資料包中間的路由器可能相當壅塞而無法處理不斷流入的資料包。

當這些情形發生時網際網路軟體系統怎麼辦?一般硬體系統若發生錯誤或失效都會設計有相關的機制告訴主機發生錯誤。相對的通訊軟體也應該要有軟體來報告錯誤或失效的訊息。因此網際網路上加入了一個訊息控制的機制到TCP/IP的規約土此機制稱之為網際網路控制訊息規約(lntenet Control MessageProtocol稱ICMP)

路由器如何使用相關的ICMP機制來報告資料包傳遞的訊息此外主機如何利用它來測試目的地主機是否可順利到達。 ICMP基本上是一套錯誤報告的機制它只負責將錯誤報告回原始的主機再由原來的主機針對錯誤的敘述通知給相關的應用程式知道上以便採取適當的步驟改正錯誤。所以ICMP只負責「通知」 而改正問題或錯誤的處理則不在ICMP的定義範圍內。

在這裡有個重點是 ICMP通知「原始主機」 這是因為在IP的資料包裡只有原始主機與目的地主機兩個IP位址而已從資料包我們無法獲知它所走過的路徑除非利用IP的「記錄路徑」的選項 所以ICMP報告只能報告給原始主機而已。另外I CMP只負責報告而已並不負責更正。

二 、 ICMP訊息的格式

ICMP的訊息是放置在IP資料包的資料區。如下圖

ICMP資料區

IP資料區

訊框資料區

ICMP的訊息是放置在IP的資料區裡形成IP的資料包整個IP的資料包是訊框的資料包" 。如此一層一層的封裝。另外一方面解封裝由訊框的型態

0800來獲知是IP。

IP的表頭之「規約」欄位如果註明01即表示資料包內包著ICMP的資料。雖然每一ICMP的訊息都有著它自己的格式但是起頭的三個欄位為 8位元的

「型態」  8位元「編碼」及16位元的「檢查碼」應該都一樣。

我們要介紹的是「型態」(type)  ICMP常見的型態如下表。

「編號」則是在特定型態底下更細的分類。我們在討論相關的型態時會再仔細的說明編號所代表的意思。

I CMP常見的型態

在ping指令頇指明IP位址另外也可加入送出資料塊的大小選項若不加以說明規定則以32個位元組回覆回來的訊息有bytes=32, time=1 ms TTL=254分別表示回覆資料塊為32位元組回覆時間為l x 10-3秒TTL值254。表示「回音請求」與「回音回覆」的格式。

下圖的例子中第一份資料包是由主機140.113.167.203向主機140.113.167.195發送一份「回音請求」 。第二份資料包是主機140.113.167.195回送一份「回音回覆」 。

140.113.167.203 140.113.167.195

45000020 版本=4 表頭長度=5 服務型態=00 總長度=0X20

00000000 資料包編號=0 旗標=0 資料塊位差=0fa01586b 存活時間=0xfa 規約編號=01 表頭檢查碼=0x586b

8c71 a7cb 來源端IP位址=140.113.167.203

8c71a7c3 目的端IP位址=140.113.167.195

080052f9 ICMP型態=08 編碼=00檢查碼=52f9

95060f00 訊息編號=0x9506 訊息流水碼=0x0f00

45000020 版本=4 表頭長度=5 服務型態=00 總長度=0X20af3e0000 資料包編號=af 旗標=3e 資料塊位差=0ff01 a42c 存活時間=0xff規約編號=01 表頭檢查碼=0xa42c

8c71a7c3 來源端IP位址=140.113.167.195

8c71 a7cb 目的端IP位址=140.113.167.203

00005af9 ICMP型態=00 編碼=00檢查碼=5af9

95060f00 訊息編號=0x9506 訊息流水碼=0x0f00

四 、資料包無法抵達目的地

網路系統並非完美無缺的有時會出現硬體故障或連線損壞的情形。在這種狀況下資料包就會有可能無法順利的抵達目的地。當資料包無法繼續向前傳遞時 ICMP會傳出一份ICMP的資料包型態註明了表示目的無法抵達此一資料包會傳回給最初的的發送站。

同時在資料的部分會填上原先被丟棄資料的IP表頭再加前64位元的資料。

請下圖的格式。

五 、資料包壅塞與流量的控制

由於資料包的傳送是非連線式的傳送所以路由器並不會為特定的資料包事前保留暫存記憶體位置或通訊相關的資源因此當大量的資料包湧入路由器時很可能很快的會用盡路由器的各項網路資源按著下來就是路由器無法負荷資料包流通量而發生系統停滯或當機的現象。舉例而言網際網路透過路由器達到網網相連這網路的連結情形就像公路系統的道路網一般想像一下如果有大量的車潮湧入高速公路就會造成高速公路塞車如果車潮不退反增高速公路會癱瘓就像一座條形的大停車場一般。那如何控制車流流入高速公路閘道儀控管制是一種不錯的方法。

哪些情形可能會產生網路的壅塞

1 因為網際網路並非事前經整體規劃整體鋪設所以某些高速電腦主機可能會瞬間產生大量的資料湧入網路中來一般高速主機會連接到高速的區域網路上但當資料是指定給遠方的主機此時資料可能會經過低速的廣域網路才能到達對方。因此資料會擠在廣域網路的節點上而造成這些節點的壅塞。

2尖峰時段所引起的某些時段正好有大量的主機同時將資料送入網路來而造成瞬間的壅塞現象。

路由器若發現有壅塞的情形時可透過I C MP送出「原始主機熄火」的訊息來疏解壅塞。原始主機熄火訊息是用來通知發送資料的主機降低傳送得速

六 、路徑更改要求

在一般的情形下路由器由於會參與路由規約的運作所以它應知道正確的路徑安排而主機並不參與路由規約的運作它只能由路由器端學習到新的路徑。所以當路由器發現主機所利用的路徑並非最佳的路徑時路由器會發送ICMP「更改方向」的訊息要求主機更改方向下圖即表示路徑更改的例子。

在下圖A主機S要送資料給主機D假設走的路徑是:主機S 路由器G 路由器G2 主機D。但當路由器G2在轉送由主機S來的資料包時發現主機S是與G2有直接相連G2在轉送資料包給主機D後會送出路徑更改的ICMP訊息要求主機S更改路由表。下次主機S有資料包要送給主機D時會由主機S 路由器G2 主機D的路徑中間不會再經過路由器G 如下圖B。

另一值得注意的問題是 ICMP的路徑更改是路由器發出給主機並不能給其

造成路徑更改的原因如下表

R1與R2 在R1的路由表中要到目的地主機B下一站頇送到R2 反過來R2的路由表中要到主機B下一站頇送到R1 因此有個資料要送到主機B若經過路由器R1或R2就會陷入環狀路徑中而繞不出來。下圖即顯示此一現

象。

為了解決此環狀路徑的錯誤會因資料繞不出來而癱瘓環狀路徑上的路由器。在IP的表頭中我們設計有一個存活時間T T L(t ime-to-liv e)的欄位或稱中繼

路由器會送出ICMP「逾時」通知它此一資

料包路徑過長而被丟掉。

另一種情形是分割後的資料包是分別到達目的地主機所以針對每一分割的資料包當分割後資料包第一份到達時我們起動一個計時器然後開始等其

存資源被佔用而不釋放這時IP的運作是在計時器用完走後就清除沒到齊的資料塊將之丟棄然後送出ICMP 「逾時」的訊息給原始主機通知它此資料包逾時而被丟棄。

八 、資料包的追蹤

在UN IX作業系統中有一個「trac ero ute」的指令可以用來追蹤瞭解資料包由原始主機到目的主機所定的路徑。下圖即是在140.130.45.136的主機之UN IX系統上執行trac ero ute的指令。

#tracero ute 140.113.167.195traceroute to 140.113.167.195(140.113.167.195),30 hops max,40 byte p ackets

1 pc450254(140.130.45.254) 1.329ms 1.289ms 1.011ms

2 140.130.251.123(140.130.251.123) 2.364ms 1.632ms 1.555ms

3 TANet-NCTU.edu.tw(203.72.38.113) 27.560 ms 23.651 ms 17.133 ms4 TANet-HcRC.nctu.edu.tw(140.113.247.254) 18.536 ms* 51.900 ms

5 ATM-Gw-GE.nctu.edu.tw(140.113.57.253) 54.112 ms 48.941 ms 45.533 ms

6 CIS-E3sw.nctu.edu.tw(140.113.53.63) 41.518 ms 49.590 ms 44.106 ms

7 Monet.cis.nctu.edu.tw(140.113.167.195) 31.846 ms 41.426 ms 33.733 ms#

由主機140.130.45.136出發經140.130.45.254、 140.130.251.123 、…、

140.113.53.63到140.113.167.195主機。

那trac ero ute指令是如何製作的?事實上由原始主機送出一份資料給

140.113.167.195 在IP的表頭中TT L的欄位填l 那麼這份資料到達第l個路由器時T TL的值會減去l 變為0。此時TC P/IP的軟體會認為此份資料逾時則會送出一份ICMP 「逾時」的訊息回給原始主機140.130.45.137 。在trace ro ute這應用程式收到「逾時」訊息它可由「逾時」訊息中取出發送此訊息主機之IP位址此即為第一站。接下來trac ero ute應用程式會送出TT L值為2的資料所以第1站的路由器減去1以後TTL還剩1 接下來第1站路由器將這份資料往下送到第2站時TTL值會被減為0 此時若未到達目的地主機時則會送回ICMP 「逾時」之訊息若已到達目的地主機時則會回送ICMP目的地到達訊息。

pacificrack:$12/年-1G内存/1核/20gSSD/500g流量/1Gbps带宽

pacificrack在最新的7月促销里面增加了2个更加便宜的,一个月付1.5美元,一个年付12美元,带宽都是1Gbps。整个系列都是PR-M,也就是魔方的后台管理。2G内存起步的支持Windows 7、10、Server 2003\2008\2012\2016\2019以及常规版本的Linux!官方网站:https://pacificrack.com支持PayPal、支付宝等方式付款7月秒杀VP...

wordpress简洁英文主题 wordpress简洁通用型高级外贸主题

wordpress简洁英文主题,wordpress简洁通用大气的网站风格设计 + 更适于欧美国外用户操作体验,完善的外贸企业建站功能模块 + 更好的移动设备特色模块支持,更高效实用的后台自定义设置 + 标准高效的代码程序功能结构,更利于Goolge等国际搜索引擎的SEO搜索优化和站点收录排名。点击进入:wordpress简洁通用型高级外贸主题主题价格:¥3980 特 惠 价:¥1280安装环境:运...

ProfitServer折优惠西班牙vps,荷兰vps,德国vps,5折优惠,不限制流量

profitserver正在对德国vps(法兰克福)、西班牙vps(马德里)、荷兰vps(杜廷赫姆)这3处数据中心内的VPS进行5折优惠促销。所有VPS基于KVM虚拟,纯SSD阵列,自带一个IPv4,不限制流量,在后台支持自定义ISO文件,方便大家折腾!此外还有以下数据中心:俄罗斯(多机房)、捷克、保加利亚、立陶宛、新加坡、美国(洛杉矶、锡考克斯、迈阿密)、瑞士、波兰、乌克兰,VPS和前面的一样性...

讯息网为你推荐
includedgoogle操作http360公司迁至天津请问360公司的全称是什么?三友网三友联众集团怎么样?腾讯公司电话腾讯公司总部电话多少加多宝与王老吉加多宝王老吉有什么区别吗?闪拍网闪拍网是真的吗玖融网泰和网理财可信吗,泰和网理财是不是骗人的啊????????电子商务世界电子商务都有什么内容即时通请问有没有人知道即时通是什么?怎样先可以开??
免费网站空间申请 www二级域名 厦门域名注册 buyvm zpanel hkbn fastdomain mediafire下载工具 标准机柜尺寸 小米数据库 空间合租 免费dns解析 电信主机 如何注册阿里云邮箱 网站在线扫描 双12 万网主机管理 工信部网站备案查询 日本代理ip 网站加速 更多