成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

網(wǎng)絡協(xié)議 6 -路由協(xié)議

Drinkey / 1127人閱讀

摘要:動態(tài)路由協(xié)議基于鏈路狀態(tài)路由算法的開放式最短路徑優(yōu)先協(xié)議,廣泛應用在數(shù)據(jù)中心的協(xié)議。基于距離矢量路由算法的針對網(wǎng)絡之間的路由協(xié)議,稱為外網(wǎng)路由協(xié)議,簡稱每個數(shù)據(jù)中心都有自己的路由配置。

????前面例子中,我們都是在一個局域網(wǎng)內折騰。今天就讓我們擴大范圍,在多個局域網(wǎng)甚至到廣闊的互聯(lián)網(wǎng)世界中遨游,看看這中間會發(fā)生什么。

????這個過程中,跨網(wǎng)關訪問是我們要了解的第一個內容。

跨網(wǎng)關訪問

????當我們要了解跨網(wǎng)關訪問時,就牽扯到 MAC 地址和 IP 地址的變化,因此,我們先來看下 MAC 頭和 IP 頭的細節(jié)。

MAC 頭和IP 頭的細節(jié)

????如圖,在 MAC 頭里,先是目標 MAC 地址,然后是源 MAC 地址,最后是協(xié)議類型。

????在 IP 頭里,最重要的就是源 IP 地址和目標 IP 地址。除此之外,還有版本號,也就是我們常說的 IPv4 和 IPv6、服務類型 TOS(表示數(shù)據(jù)包優(yōu)先級)、TTL(數(shù)據(jù)包生存周期)以及標識協(xié)議(TCP 和 UDP)

????當我們訪問博客園時,經過的第一個網(wǎng)關應該就是我們配置的默認網(wǎng)關。當本機訪問默認網(wǎng)關時,還是走局域網(wǎng)內部訪問的步驟:

將源地址和目標 IP 地址放入 IP 頭;

通過 ARP 協(xié)議獲得網(wǎng)關的 MAC 地址;

將源 MAC 地址和網(wǎng)關的 MAC 地址放入 MAC 頭中,發(fā)送給網(wǎng)關。

????而我們的網(wǎng)關,一般就是指家里的路由器,是一個三層轉發(fā)的設備。它會把 MAC 頭和 IP 頭都取下來,然后根據(jù)里面的內容,看看接下來把數(shù)據(jù)包轉發(fā)到哪里。

????很多情況下,人們把網(wǎng)關叫做路由器。其實并不準備,用這個比喻應該更為恰當些:

路由器是一臺設備,它有五個網(wǎng)口或者網(wǎng)卡,相當于有五只手,分別連著五個局域網(wǎng)。每只手的 IP 地址都和局域網(wǎng)的 IP 地址有著相同的網(wǎng)段,每只手都是它握住的那個局域網(wǎng)的網(wǎng)關。

????任何一個想發(fā)往其他局域網(wǎng)的包,都會到達其中一只手,被拿進來,拿下 MAC 頭和 IP 頭,然后根據(jù)自己的路由算法,選擇另一只手,加上 IP 頭和 MAC 頭,然后扔出去。

????注意,在上面這個過程中,有出現(xiàn)路由算法。接下來,我們就來認識下它。

路由算法

????路由算法,又名選路算法,是提高路由協(xié)議功能,盡量減少路由時所帶來的開銷的算法。

????路由算法可以根據(jù)多個特性來加以區(qū)分,找到到達目的地的最佳路由。

路由算法的區(qū)分點有很多,有

靜態(tài)與動態(tài)

單路徑與多路徑

平坦與分層

主機智能與路由器智能

域內與域間

鏈接狀態(tài)與距離向量

????這里主要介紹靜態(tài)與動態(tài)路由算法。

靜態(tài)路由

????靜態(tài)路由算法,實質上是由網(wǎng)關配置好的映射表。

????我們家里的路由器,可能會有這樣的路由配置

訪問博客園,從 2 號口出去,下一跳是 IP2;
訪問百度,從 3 號口出去,下一跳是 IP3。

????類似上述這樣的規(guī)則就是靜態(tài)路由,按照一定的語法保存在路由器里。

????每當要選擇從哪個口拋出去的時候,就一條一條的匹配規(guī)則,找到符合的規(guī)則,就按規(guī)則辦事,從指定口拋出去,找下一跳 IP。

過網(wǎng)關的“變”與“不變”

????之前我們了解到,MAC 地址是一個局域網(wǎng)內才有效的地址。因此,MAC 地址只要過網(wǎng)關,就肯定會改變。而 IP 地址在過網(wǎng)關后 ,就不一定會改變了。

????經過網(wǎng)關 A 后,如果IP 地址沒有改變,那 A 就是轉發(fā)網(wǎng)關,否則,就是NAT網(wǎng)關。

轉發(fā)網(wǎng)關

????如上圖,服務器 A 要訪問服務器 B,要經過過程:

1)服務器 A 到 網(wǎng)關 A

檢查 B 的網(wǎng)段,發(fā)現(xiàn)不在同一個網(wǎng)段,因此發(fā)給網(wǎng)關

由于網(wǎng)關的 IP 地址是已經配置好了,因此發(fā)送 ARP 獲取網(wǎng)關的 MAC 地址

發(fā)送包

而最后發(fā)送包的內容主要有:

源 MAC:服務器 A 的 MAC

模板 MAC:192.168.1.1 網(wǎng)關的 MAC

源 IP:192.168.1.101

目標 IP:192.168.4.101

????數(shù)據(jù)包到達 192.168.1.1 這個網(wǎng)口后,網(wǎng)口發(fā)現(xiàn) MAC 地址是它的,就將包收進來,然后開始“思考”往哪里轉發(fā)。

????這時候,路由器 A 中配置了規(guī)則 A1:

要訪問 192.168.4.0/24,就從 192.168.56.1 這個網(wǎng)口出去,下一跳是 192.168.56.2

2)網(wǎng)關 A 到 網(wǎng)關 B

????于是,路由器 A 匹配了 A1,要從 192.168.56.1 這個口發(fā)出去,發(fā)給 192.168.56.2。于是,又開始了這個過程:

檢查 B 的網(wǎng)段,發(fā)現(xiàn)在同一個網(wǎng)段, ARP 獲取 MAC 地址

發(fā)送包

數(shù)據(jù)包的內容是:

源 MAC:192.168.56.1 的 MAC

模板 MAC:192.168.56.2 的 MAC

源 IP:192.168.1.101

目標 IP:192.168.4.101

????數(shù)據(jù)包到達 192 .168.56.2 網(wǎng)口,網(wǎng)口發(fā)現(xiàn) MAC 地址是它的,就將包收進來,然后去檢查路由規(guī)則。

????路由器 B 配置以下規(guī)則 B1:

想訪問 192.168.4.0/24,就從 192.168.4.1

????而路由器 B 發(fā)現(xiàn),它的右網(wǎng)口就是目標地址網(wǎng)段的,因此就沒有下一跳了。

3)網(wǎng)關 B 到 服務器 B

路由器 B 匹配上 B1。從 192.168.4.1 出口,發(fā)給 192.168.4.101。數(shù)據(jù)包內容:

源 MAC:192.168.4.1 的 MAC

模板 MAC:192.168.4.101 的 MAC

源 IP:192.168.1.101

目標 IP:192.168.4.101

????服務器 B 收到數(shù)據(jù)包,發(fā)現(xiàn) MAC 地址是它的,就把包收進來。

????通過上面的過程可以看出,每到一個新的局域網(wǎng), MAC 地址都是要變的,而 IP 地址則都不變。在 IP 頭里面,不會保存任何網(wǎng)關的 IP 地址。

????而我們說的下一跳,就是某個 IP 要將這個 IP 地址轉換為 MAC 放入 MAC 頭

NAT 網(wǎng)關

????NAT 網(wǎng)關,也就是 Network Address Translation。

????由于各個局域網(wǎng)都有各自的網(wǎng)段,很容易出現(xiàn) IP 沖突的情況。如上圖,美國服務器 A 的 IP 地址和 法國服務器 B 的 IP 地址都是 192.168.1.101/24,從 IP 上看,好像是自己訪問自己,但實際上從美國的 192.168.1.101 訪問法國的 192.168.1.101。

????如何解決這個問題呢?既然局域網(wǎng)之間沒有商量好 IP 分配,各管各的,那到國際上,也就是中間的局域網(wǎng)里面,就需要使用另外的地址,就像出國后,我們要改用護照一樣。

????首先,目標服務器 B 在國際上要有一個國際的身份,我們給它一個 190.168.56.2.在網(wǎng)關 B 上,我們記下來,國際身份 192.168.56.2 對應國內身份 192.168.1.101.凡是要訪問 192.168.56.2 的,網(wǎng)關都要轉成 192.168.1.101。

????于是,源服務器 A 要訪問目標服務器 B,目標地址就變成國際 IP 地址 192.168.56.2。過程如下:

1)源服務器 A 發(fā)數(shù)據(jù)包到網(wǎng)關 A

檢查服務器 B IP,不在同一網(wǎng)段

ARP 獲取網(wǎng)關 MAC 地址

發(fā)送包

數(shù)據(jù)包的內容是這樣的:

源 MAC:服務器 A 的 MAC

目標 MAC:192.168.1.1 這個網(wǎng)口的 MAC

源 IP:192.168.1.101

目標 IP:192.168.56.2

????路由器 A 中 192.168.1.1 這個網(wǎng)口收到數(shù)據(jù)包后,檢查 MAC 地址一致,將包收進來。

????在路由器 A 中配置了規(guī)則:

想訪問 192.168.56.2/24,就從 192.168.56.1 網(wǎng)口發(fā)出去,發(fā)給 192.168.56.2,沒有下一跳。

????由于路由器的右網(wǎng)口(192.168.56.1) IP 地址和目標 IP 地址在同一網(wǎng)段,因此沒有下一跳。

2)網(wǎng)關 A 到網(wǎng)關 B
當網(wǎng)絡包發(fā)送到中間的局域網(wǎng)時,服務器 A 也需要有個國際身份。因此,源 IP 地址 192.168.1.101 要改成 192.168.56.1,所以數(shù)據(jù)包的內容是:

源 MAC:192.168.56.1 的 MAC

目標 MAC:192.168.56.2 的 MAC

源 IP:192.168.56.1

目標 IP:192.168.56.2

????包到達 192.168.56.2 這個網(wǎng)口后,發(fā)現(xiàn) MAC 一致,就將包收進來。

????而路由器 B 是 NAT 網(wǎng)關,它上面配置了,國際身份 192.168.56.2 對應國內的 192.168.1.101,于是目標地址改為 192.168.1.101。

????同樣的,路由器 B 中配置了規(guī)則:

想訪問 192.168.1.101,就從 192.168.1.1 網(wǎng)口出去,沒有下一跳。

????于是,數(shù)據(jù)包就從 192.168.1.1 這個網(wǎng)口發(fā)給 192.168.1.101。

3)網(wǎng)關 B 到服務器 B
數(shù)據(jù)包從 192.168.1.1 網(wǎng)口發(fā)出后,同樣經過這些步驟:

檢查服務器 B 的 IP,在同一網(wǎng)段

ARP 獲取服務器 B 的 MAC 地址

發(fā)送包

這時的數(shù)據(jù)包就變成了:

源 MAC:192.168.1.1 的 MAC

目標 MAC:192.168.1.101 的 MAC

源 IP:192.168.56.1

目標 IP:192.168.1.101

????服務器收到包后,檢查 MAC 地址一致,就將數(shù)據(jù)包收進來。

????從服務器 B 接收的數(shù)據(jù)包可以看出,源 IP 為 服務器 A 的國際身份,因而發(fā)送返回包的時候,也發(fā)給這個國際身份,由路由器 A 做 NAT,轉換為國內身份。

動態(tài)路由
動態(tài)路由算法
距離矢量路由算法

1)基本思路

基于Bellman-Ford 算法。每個路由器都保存一個路由表,包含多行,每行對應網(wǎng)絡中的一個路由器,每一行包含兩部分信息,一個是要到目標路由器,從哪條線出去,另一個是到目標路由器的距離

2)存在問題

a. 好消息傳得塊,壞消息傳的慢。

新加入的路由器能夠很快的新路由器信息廣播出去。但是如果一個路由器掛了,掛的消息沒有廣播。每個經過這個宕機節(jié)點的路由器,無法得知該節(jié)點一宕機,而是試圖通過其他的路徑訪問,直到試過了所有的路徑,才發(fā)現(xiàn)這個路由器已經宕機了。

示例:

b. 每次發(fā)送消息,要發(fā)送整個全局路由表

????上面的兩個問題,限制了距離矢量路由的網(wǎng)絡規(guī)模,僅適用于小型網(wǎng)絡(小于 15 跳)。

鏈路狀態(tài)路由算法

1)基本思路

基于Dijkstra 算法。當一個路由器加入網(wǎng)絡是,首先是發(fā)現(xiàn)鄰居,給鄰居說 hello,鄰居都回復。然后計算和鄰居的距離,發(fā)送一個 echo,要求馬上返回,除以 2 就是距離。接著將自己和鄰居之間的鏈路狀態(tài)包廣播出去,發(fā)送到整個網(wǎng)絡的每個路由器。

????這種算法中,每個路由器都能在自己本地構建一個完整的圖,然后針對這個圖使用 Dijkstra 算法,找到兩點之間的最短路徑。

????不像距離矢量路由協(xié)議那樣,更新時發(fā)送整個路由表。鏈路狀態(tài)路由協(xié)議只廣播更新的或改變的網(wǎng)絡拓撲,這使得更新信息更小,節(jié)省了寬帶和 CPU 利用率。而且一旦一個路由器掛了,它的鄰居都會廣播這個消息,可以使得壞消息迅速收斂。

動態(tài)路由協(xié)議
基于鏈路狀態(tài)路由算法的 OSPF
OSPF(Open Shortest Path First, 開放式最短路徑優(yōu)先)協(xié)議,廣泛應用在數(shù)據(jù)中心的協(xié)議。由于主要用在數(shù)據(jù)中心內部,用于路由決策,因此稱為內部網(wǎng)關協(xié)議(Interior Gateway Protocol,簡稱 IGP)

????內部網(wǎng)關協(xié)議的重點就是找到最短路徑。當存在多個最短路徑時,可以在這多個路徑中進行負載均衡,這常常被稱為等價路由

????等價路由不僅可以用來分攤流量,還可以提高容錯率,當一條路徑不通時,還可以通過另外一條路到達目的地。

基于距離矢量路由算法的 BGP
針對網(wǎng)絡之間的路由協(xié)議,稱為外網(wǎng)路由協(xié)議(Border Gateway Protocol,簡稱 BGP)

????每個數(shù)據(jù)中心都有自己的路由配置。例如,哪些外部 IP 可以讓內部知曉,哪些內部 IP 可以讓外部知曉,哪些可以通過,哪些不能通過。

????因此,在各個數(shù)據(jù)中心進行交互時,需要一種協(xié)議,通過這種協(xié)議,可以知道相鄰數(shù)據(jù)中心的路由配置,從而找到數(shù)據(jù)中心之間最好的路由。

????BGP 協(xié)議就是這樣的協(xié)議。它不著眼于發(fā)現(xiàn)和計算路由,而在于控制路由的傳播和選擇最好的路由。

總結

數(shù)據(jù)包要離開本局域網(wǎng),就要經過網(wǎng)關,網(wǎng)關就是路由器的一個網(wǎng)口;

路由器是一個三層設備,理由有如何尋找下一跳的規(guī)則;

經過路由器之后的 MAC 頭肯定會變。如果 IP 不變,就是 轉發(fā)網(wǎng)關,否則就是 NAT網(wǎng)關;

路由分靜態(tài)路由和動態(tài)路由,動態(tài)路由可以配置復雜的策略路由,控制轉發(fā)策略;

動態(tài)路由主流算法有兩種,距離矢量算法和鏈路狀態(tài)算法。基于兩種算法產生兩種協(xié)議,BGP 協(xié)議和 OSPF 協(xié)議。

參考:

百度百科

劉超-趣談網(wǎng)絡協(xié)議系列課;

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/29673.html

相關文章

  • Confluence漏洞或致大規(guī)模網(wǎng)絡攻擊 客戶群體包括近6萬家公司和組織

    摘要:重要的是,分析人員已經調查了該漏洞,他們發(fā)現(xiàn)互聯(lián)網(wǎng)上有超過個暴露和易受攻擊的服務器。數(shù)據(jù)顯示,的網(wǎng)絡攻擊事件都與漏洞利用相關,由此可見安全漏洞在網(wǎng)絡攻擊中起到至關重要的作用。 .markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-size:15px;overflow-x:hidden;c...

    TwIStOy 評論0 收藏0
  • [ResNet系] 007 SENet

    摘要:前面層中的以類別無關的方式增強可共享的低層表示的質量。通過調整網(wǎng)絡各層間的連接機制來提升深層網(wǎng)絡的學習和表示性能?;径际浅R?guī)處理和訓練設置。根據(jù)輸入動態(tài)調整各通道的特征,增強網(wǎng)絡的表示能力。 SENet Squeeze-and-Excitation NetworksJie Hu, Li Shen, Gang Sun 摘要 卷積神經網(wǎng)絡顧名思義就是依賴卷積操作,使用局部感受區(qū)域(loc...

    huashiou 評論0 收藏0
  • 初學者怎么選擇神經網(wǎng)絡環(huán)境?對比MATLAB、Torch和TensorFlow

    摘要:本報告面向的讀者是想要進入機器學習領域的學生和正在尋找新框架的專家。其輸入需要重塑為包含個元素的一維向量以滿足神經網(wǎng)絡。卷積神經網(wǎng)絡目前代表著用于圖像分類任務的較先進算法,并構成了深度學習中的主要架構。 初學者在學習神經網(wǎng)絡的時候往往會有不知道從何處入手的困難,甚至可能不知道選擇什么工具入手才合適。近日,來自意大利的四位研究者發(fā)布了一篇題為《神經網(wǎng)絡初學者:在 MATLAB、Torch 和 ...

    yunhao 評論0 收藏0
  • 私有災備云解決方案

    摘要:災備服務支持本地災備異地災備公有云災備兩地三中心等多種服務方式,可根據(jù)業(yè)務特點和需求,靈活選擇災備方式,保證業(yè)務的和。公有云災備架構公有云災備服務支持多種業(yè)務部署方式,為云平臺業(yè)務提供不同指標,控制云平臺業(yè)務災備成本。UCloudStack 云平臺通過分布式存儲系統(tǒng)保證本地數(shù)據(jù)的安全性,同時通過遠程數(shù)據(jù)備份服務,為用戶提供遠程數(shù)據(jù)備份和容災備服務,可以將本地云端數(shù)據(jù)統(tǒng)一歸檔、備份至遠程云...

    youkede 評論0 收藏0
  • Python3網(wǎng)絡爬蟲實戰(zhàn)---36、分析Ajax爬取今日頭條街拍美圖

    摘要:上一篇文章網(wǎng)絡爬蟲實戰(zhàn)數(shù)據(jù)爬取下一篇文章網(wǎng)絡爬蟲實戰(zhàn)動態(tài)渲染頁面抓取本節(jié)我們以今日頭條為例來嘗試通過分析請求來抓取網(wǎng)頁數(shù)據(jù)的方法,我們這次要抓取的目標是今日頭條的街拍美圖,抓取完成之后將每組圖片分文件夾下載到本地保存下來。 上一篇文章:Python3網(wǎng)絡爬蟲實戰(zhàn)---35、 Ajax數(shù)據(jù)爬取下一篇文章:Python3網(wǎng)絡爬蟲實戰(zhàn)---37、動態(tài)渲染頁面抓取:Selenium 本節(jié)我們...

    Leck1e 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<