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

讯息网  时间: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目的地到達訊息。

亚州云-美国Care云服务器,618大带宽美国Care年付云活动服务器,采用KVM架构,支持3天免费无理由退款!

官方网站:点击访问亚州云活动官网活动方案:地区:美国CERA(联通)CPU:1核(可加)内存:1G(可加)硬盘:40G系统盘+20G数据盘架构:KVM流量:无限制带宽:100Mbps(可加)IPv4:1个价格:¥128/年(年付为4折)购买:直达订购链接测试IP:45.145.7.3Tips:不满意三天无理由退回充值账户!地区:枣庄电信高防防御:100GCPU:8核(可加)内存:4G(可加)硬盘:...

享有云:美国BGP云服务器低至20元/月起,首月打折;香港2核2G2M仅50元/月起

享有云怎么样?享有云是一家新的国内云服务器商家,目前提供国内、香港及海外地区的云服务器,拥有多线路如:BGP线路、CN2线路、高防等云服务器,并且提供稳定、安全、弹性、高性能的云端计算服务,实时满足您的多样性业务需求。目前,美国bgp云服务器,5M带宽,低至20元/月起,270元/年起,首月打折;香港2核2G2M仅50元/月起,450元/年起!点击进入:享有云官方网站地址享有云优惠活动:一、美国B...

ThomasHost(月付5美元)美国/法国/英国/加拿大KVM,支持Windows

ThomasHost域名注册自2012年,部落最早分享始于2016年,还算成立了有几年了,商家提供基于KVM架构的VPS,数据中心包括美国、法国、英国、加拿大和爱尔兰等6个地区机房,VPS主机套餐最低2GB内存起步,支持Windows或者Linux操作系统,1Gbps端口不限制流量。最近商家提供了一个5折优惠码,优惠后最低套餐月付5美元起。下面列出部分套餐配置信息。CPU:1core内存:2GB硬...

讯息网为你推荐
phpweb破解怎样破解握手包googleprGOOGLE PR是什么意思conn.asp数据库连接出错,请打开conn.asp文件检查连接字串。sqlserver2000挂起SQL server2000 安装为什么老是提示挂起?netshwinsockreset游戏出现battlEye Launcher 怎么办oa办公软件价格一般中小企业用的OA办公系统需要多少钱?灌水机什么是论坛灌水机?在哪里可以下载到呢?drupal教程搭建一个多店家订餐网站,可以用joomla,wordpress完成吗?求教程站点管理有关站点的知识介绍?网上支付功能网银有什么功能?
青岛虚拟主机 域名到期查询 如何注册中文域名 国外永久服务器 独享100m 樊云 紫田 免费名片模板 双11抢红包攻略 godaddy 线路工具 ubuntu更新源 windows2003iso 一点优惠网 地址大全 777te 智能骨干网 坐公交投2700元 河南m值兑换 phpmyadmin配置 更多