距离矢量路由算法_简单聊聊路由协议
帥天今天難得一次寫兩篇文章,希望兄弟們給點(diǎn)力,點(diǎn)個(gè)贊。碼字不易啊。
這篇文章簡(jiǎn)單的聊聊路由協(xié)議,注意這里是簡(jiǎn)單,路由協(xié)議太復(fù)雜,了解一下即可。
我們?cè)诖髮W(xué)里面學(xué)習(xí)計(jì)算機(jī)網(wǎng)絡(luò)與數(shù)據(jù)結(jié)構(gòu)的時(shí)候,知道求最短路徑常用的有兩種方法,一種是 Bellman-Ford 算法,一種是 Dijkstra 算法。在計(jì)算機(jī)網(wǎng)絡(luò)中基本也是用這兩種方法計(jì)算的。
距離矢量路由
距離矢量路由算法,基于 Bellman-Ford 算法。
有以下幾個(gè)特征:
好消息傳的快,壞消息傳的慢。如果有個(gè)路由器加入了這個(gè)網(wǎng)絡(luò),它的鄰居就能很快發(fā)現(xiàn)它,然后將消息廣播出去。要不了多久,整個(gè)網(wǎng)絡(luò)就都知道了。但是一旦一個(gè)路由器掛了,掛的消息是沒(méi)有廣播的。當(dāng)每個(gè)路由器發(fā)現(xiàn)原來(lái)的道路到不了這個(gè)路由器的時(shí)候,感覺(jué)不到它已經(jīng)掛了,而是試圖通過(guò)其他的路徑訪問(wèn),直到試過(guò)了所有的路徑,才發(fā)現(xiàn)這個(gè)路由器是真的掛了。比如某個(gè)人走丟了,問(wèn)了一圈兒親戚朋友才確定沒(méi)看到你,才確定人丟了,這時(shí)候才報(bào)警,太慢了。
每次發(fā)送的時(shí)候,要發(fā)送整個(gè)全局路由表。網(wǎng)絡(luò)大了,誰(shuí)也受不了。它適用于小型網(wǎng)絡(luò)(小于 15 跳)。
鏈路狀態(tài)路由
鏈路狀態(tài)路由(link state routing),基于 Dijkstra 算法,典型代表 OSPF 協(xié)議。
這種算法的基本思路是,當(dāng)一個(gè)路由器啟動(dòng)的時(shí)候,首先是發(fā)現(xiàn)鄰居,向鄰居say hello,鄰居都回復(fù)。并計(jì)算和鄰居的距離,發(fā)送一個(gè) echo,要求馬上返回,除以二就是距離。
然后將自己和鄰居之間的鏈路狀態(tài)包廣播出去,發(fā)送到整個(gè)網(wǎng)絡(luò)的每個(gè)路由器。這樣每個(gè)路由器都能夠收到它和鄰居之間的關(guān)系的信息。因而,每個(gè)路由器都能在自己本地構(gòu)建一個(gè)完整的圖,然后針對(duì)這個(gè)圖使用 Dijkstra 算法,找到兩點(diǎn)之間的最短路徑。
不像距離距離矢量路由協(xié)議那樣,更新時(shí)發(fā)送整個(gè)路由表。鏈路狀態(tài)路由協(xié)議只廣播更新的或改變的網(wǎng)絡(luò)拓?fù)?#xff0c;這使得更新信息更小,省了路由器帶寬和 CPU 利用率。而且一旦一個(gè)路由器掛了,它的鄰居都會(huì)廣播這個(gè)消息,可以使得壞消息迅速收斂。
距離矢量路由
基于距離矢量路由算法的 BGP。
BGP 協(xié)議使用的算法是路徑矢量路由協(xié)議(path-vector protocol)。它是距離矢量路由協(xié)議的升級(jí)版。一般用于運(yùn)營(yíng)商之間的大型網(wǎng)絡(luò)。
如果喜歡這篇文章,請(qǐng)點(diǎn)個(gè)關(guān)注,你的關(guān)注是我最大的動(dòng)力。
總結(jié)
以上是生活随笔為你收集整理的距离矢量路由算法_简单聊聊路由协议的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 电脑怎么重装预装系统盘 电脑如何重装预装
- 下一篇: 对话框 未能返回新代码元素 可能 没有n