詳解策略路由和路由策略的區(qū)別

一、路由策略
路由策略,是路由發(fā)布和接收的策略。其實(shí),選擇路由協(xié)議本身也是一種路由策略,因?yàn)橄嗤木W(wǎng)絡(luò)結(jié)構(gòu),不同的路由協(xié)議因?yàn)閷?shí)現(xiàn)的機(jī)制不同、開銷計(jì)算規(guī)則不同、優(yōu)先級(jí)定義不同等可能會(huì)產(chǎn)生不同的路由表,這些是最基本的。通常我們所說的路由策略指的是,在正常的路由協(xié)議之上,我們根據(jù)某種規(guī)則、通過改變某些參數(shù)或者設(shè)置某種控制方式來改變路由產(chǎn)生、發(fā)布、選擇的結(jié)果,注意,改變的是結(jié)果(即路由表),規(guī)則并沒有改變,而是應(yīng)用這些規(guī)則。
下面給出一些事例來說明。
改變參數(shù)的例子:例如,A路由器和B路由器之間是雙鏈路(分別為AB1和AB2)且?guī)捪嗤?,運(yùn)行是OSPF路由協(xié)議,但是兩條鏈路的穩(wěn)定性不一樣,公司想設(shè)置AB1為主用電路,當(dāng)主用電路(AB1)出現(xiàn)故障的時(shí)候才采用備用電路(AB2),如果采取默認(rèn)設(shè)置,則兩條電路為負(fù)載均衡,這時(shí)就可以采取分別設(shè)置AB1和AB2電路的COST(開銷)值,將AB1電路的COST值改小或?qū)B2電路的COST值設(shè)大,OSPF會(huì)產(chǎn)生兩條開銷不一樣的路由,COST(開銷)越小路由代價(jià)越低,所以優(yōu)先級(jí)越高,路由器會(huì)優(yōu)先采用AB1的電路。還可以不改COST值,而將兩條電路的帶寬(BandWidth)設(shè)置為不一致,將AB1的帶寬設(shè)置的比AB2的大,根據(jù)OSPF路由產(chǎn)生和發(fā)現(xiàn)規(guī)則,AB1的開銷(COST)會(huì)比AB2低,路由器同樣會(huì)優(yōu)先采用AB1的電路。
改變控制方式的例子,基本就是使用路由過濾策略,通過路由策略對(duì)符合一點(diǎn)規(guī)則的路由進(jìn)行一些操作,例如最普通操作的是拒絕(deny)和允許(Permit),其次是在允許的基礎(chǔ)上調(diào)整這些路由的一些參數(shù),例如COST值等等,通常使用的策略有ACL(Acess Control List訪問控制列表)、ip-prefix、AS-PATH、route-policy等等。大部分的路由策略都和BGP協(xié)議配合使用中,屬于路由接收和通告原則。
例如,上圖中AS1不向AS2發(fā)布19.1.1.1/32這個(gè)網(wǎng)段,可以設(shè)置ACL列表,在RTB上設(shè)置(以華為的路由器為例):
[RTB]acl number 1 match-order auto
[RTB-acl-basic-1]rule deny source 19.1.1.1 0
[RTB-acl-basic-1]rule permit source any
[RTB]bgp 1
[RTB-bgp]peer 2.2.2.2 as-number 2
[RTB-bgp] import-route ospf
[RTB-bgp] peer 2.2.2.2 filter-policy 1 export
如果B向C發(fā)布了這條路由,但是C不想接收這條路由,則C可以設(shè)置:
[RTC]acl number 1 match-order auto
[RTC-acl-basic-1]rule deny source 19.1.1.1 0
[RTC-acl-basic-1]rule permit source any
[RTC]bgp 2
[RTC-bgp]peer 2.2.2.1 as-number 1
[RTC-bgp] peer 2.2.2.1 filter-policy 1 import
再舉個(gè)ip-prefix的例子:
例如RTB不向RTC發(fā)布19.1.1.0/24這個(gè)網(wǎng)段的路由,則可以設(shè)置
[RTB]ip ip-prefix test index 10 deny 19.1.1.0 24
[RTB]ip ip-prefix test index 20 permit any
[RTB]bgp 1
[RTB-bgp]peer 2.2.2.2 as-number 2
[RTB-bgp] import-route ospf
[RTB-bgp] import-route direct
[RTB-bgp]peer 2.2.2.2 ip-prefix test export
ip-prefix是精確匹配的,如果想實(shí)現(xiàn)模糊匹配,可以通過后面的參數(shù)less-equal或greater-equal來實(shí)現(xiàn),例如ip ip-prefix test index 10 deny 19.1.1.0 24 less-equal 31就表示從19.1.1.0/24、19.1.1.0/25、19.1.1.0/26一直到19.1.1.0/31都能匹配上,否則這僅僅表示只匹配目的網(wǎng)絡(luò)是19.1.1.0/24這一條路由,而19.1.1.0/25不滿足該條件,具體可以參考命令手冊(cè),這里不詳細(xì)解釋了。
上面講的都是路由的運(yùn)行和禁止,下面講更靈活的路由策略設(shè)置方式:route-policy中if-match和apply的匹配,這里不僅能設(shè)置允許或禁止某些路由,還能對(duì)允許的路由設(shè)置其屬性。
上圖中RTB與RTC之間跑的是IBGP協(xié)議,RTA與RTB、RTC之間跑的是EBGP協(xié)議。Router_ID按A、B、C、D從小到大排序。正常情況下,RTA到RTD之間的通信會(huì)選擇RTB做中轉(zhuǎn),RTD到RTA的通信也會(huì)選擇RTB,在默認(rèn)情況下,所有參數(shù)都相同,BGP會(huì)選擇router_ID較小的一條路徑。現(xiàn)在想讓RTD到RTA之間的通信都走RTB,而RTA到RTD之間的通信都通過RTC,即兩臺(tái)路由器中RTB專門負(fù)責(zé)自治域內(nèi)路由器與域外路由器之間的出口通信,而RTC專門做自治域外路由器與域內(nèi)路由器的進(jìn)口通信,我們可以用route-policy中的as-path來實(shí)現(xiàn),在RTB上做:
[rtb]route-policy test permit node 10
[rtb-route-policy]apply as-path 300 400 //添加虛假的路徑,使as-path增長(zhǎng)
[rtb-bgp]peer 1.1.1.1 route-policy test export //向RTA發(fā)布路由信息的時(shí)候使用策略
這樣B在向A發(fā)布BGP路由的時(shí)候,加大路由的AS-Path值,根據(jù)BGP路由選擇規(guī)則,優(yōu)先選用AS-Path較短的路由,這樣RTA向RTD通信的時(shí)候,優(yōu)先選用AS-Path短的RTC這條路由,而RTD在選擇到RTA路由的時(shí)候仍然選擇的是RTB,因?yàn)閷?duì)RTD來說,影響路由的參數(shù)什么都沒有任何變化。其實(shí)也可以使用改變Med值來設(shè)定,這里用路由策略來舉例。
這種方法特別靈活在apply語句中能設(shè)置多種參數(shù),除了as-path,還有ip next hop(設(shè)置下一跳)、local-preference(本地出口優(yōu)先級(jí))、cost(開銷)、origin(起源,來自igp、egp還是incomplete)、tag(標(biāo)記)。
二、策略路由
2.2.2.2/30
2.2.2.1/30
1.1.1.2/30
RTB
1.1.1.1/30
10.10.10.0/24
策略路由是在路由表已經(jīng)產(chǎn)生的情況下,不按照現(xiàn)有的路由表進(jìn)行轉(zhuǎn)發(fā),而是根據(jù)需要,某些通信流量選擇其他路由的方式。
PC2
PC1
交換機(jī)
RTA
如圖,RTA和RTB之間的通信有2條鏈路,其中上面那條電路是主用,帶寬是1000M的,下面的電路是備用,帶寬是10M的,目前10M基本是空閑,大部分的通信都走主用上走,PC1(10.10.10.10/24)是某個(gè)特別重要的客戶,他發(fā)的信息要求被立即傳送,我們根據(jù)這種情況,我們可以將他的發(fā)送通信量單獨(dú)使用下面?zhèn)溆秒娐返姆椒ā?br />#P#
rule-map intervlan permitpc1 ip 10.10.10.10 0.0.0.0 any
flow-action next2 redirect ip 2.2.2.2
eacl abc permitpc1 next2
然后在和10.10.10.0/24網(wǎng)絡(luò)直連的端口上使用 access-group eacl abc命令下發(fā)應(yīng)用。
這是一個(gè)策略路由的典型應(yīng)用。這個(gè)應(yīng)用是根據(jù)源地址來選擇轉(zhuǎn)發(fā)路徑的,還可以根據(jù)協(xié)議類型(例如將UDP和TCP分開跑不同的電路)、應(yīng)用(例如某些視頻應(yīng)用要求實(shí)時(shí)傳送,可以將rstp流單獨(dú)使用一條電路來跑)、報(bào)文大小或它們的組合等來設(shè)置轉(zhuǎn)發(fā)條件。其實(shí)就是將acl規(guī)則應(yīng)用到數(shù)據(jù)轉(zhuǎn)發(fā)上,rule-map的規(guī)則同ACL,這里就不在舉再多的例子了,熟悉ACL的技術(shù)人員都知道。
這里flow-action做的動(dòng)作redirect就是設(shè)置下一條,使用flow-action還可以進(jìn)行QoS相關(guān)的操作,例如使用cos或car動(dòng)作對(duì)數(shù)據(jù)包進(jìn)行隊(duì)列匹配,再根據(jù)相關(guān)設(shè)置的流量模型規(guī)則進(jìn)行操作,具體參閱命令參考手冊(cè)。
三、聯(lián)系與區(qū)別
聯(lián)系:
雙方都是為了轉(zhuǎn)發(fā)數(shù)據(jù)包而進(jìn)行路徑選擇的策略,都是根據(jù)某種規(guī)則改變某些參數(shù)或控制手段來設(shè)置不同的轉(zhuǎn)發(fā)路徑。
區(qū)別:
路由策略是根據(jù)一些規(guī)則,使用某種策略改變規(guī)則中影響路由發(fā)布、接收或路由選擇的參數(shù)而改變路由發(fā)現(xiàn)的結(jié)果,最終改變的是路由表的內(nèi)容。是在路由發(fā)現(xiàn)的時(shí)候產(chǎn)生作用。
策略路由是盡管存在當(dāng)前最優(yōu)的路由,但是針對(duì)某些特別的主機(jī)(或應(yīng)用、協(xié)議)不使用當(dāng)前路由表中的轉(zhuǎn)發(fā)路徑而單獨(dú)使用別的轉(zhuǎn)發(fā)路徑。在數(shù)據(jù)包轉(zhuǎn)發(fā)的時(shí)候發(fā)生作用、不改變路由表中任何內(nèi)容。
策略路由的優(yōu)先級(jí)比路由策略高,當(dāng)路由器接收到數(shù)據(jù)包,并進(jìn)行轉(zhuǎn)發(fā)的時(shí)候,會(huì)優(yōu)先根據(jù)策略路由的規(guī)則進(jìn)行匹配,如果能匹配上,則根據(jù)策略路由來轉(zhuǎn)發(fā),否則按照路由表中轉(zhuǎn)發(fā)路徑來進(jìn)行轉(zhuǎn)發(fā)。
概括一點(diǎn)講就是,路由策略是路由發(fā)現(xiàn)規(guī)則,策略路由是數(shù)據(jù)包轉(zhuǎn)發(fā)規(guī)則。其實(shí)將“策略路由”理解為“轉(zhuǎn)發(fā)策略”,這樣更容易理解與區(qū)分。由于轉(zhuǎn)發(fā)在底層,路由在高層,所以轉(zhuǎn)發(fā)的優(yōu)先級(jí)比路由的優(yōu)先級(jí)高,這點(diǎn)也能理解的通。其實(shí)路由器中存在兩種類型和層次的表,一個(gè)是路由表(routing-table),另一個(gè)是轉(zhuǎn)發(fā)表(forwording-table)。轉(zhuǎn)發(fā)表是由路由表映射過來的,策略路由直接作用于轉(zhuǎn)發(fā)表,路由策略直接作用于路由表。
四、優(yōu)缺點(diǎn)
網(wǎng)絡(luò)通信的規(guī)則是先有路由,才有轉(zhuǎn)發(fā)。路由策略由于僅僅在路由發(fā)現(xiàn)的時(shí)候產(chǎn)生作用,在路由表產(chǎn)生且穩(wěn)定之后,如果網(wǎng)絡(luò)不發(fā)生變化,路由表通常都不會(huì)變化,這時(shí)候,路由策略沒有應(yīng)用就不會(huì)占用資源。而策略路由是在轉(zhuǎn)發(fā)的時(shí)候發(fā)生作用,路由器在初始產(chǎn)生路由表之后,基本工作量都在數(shù)據(jù)包轉(zhuǎn)發(fā)上,如果沒有策略路由,路由器只要分析每一個(gè)數(shù)據(jù)包的目的地址,再按路由表來匹配就可以決定下一跳;但是如果有策略路由,策略路由就一直處于應(yīng)用狀態(tài),如果策略路由特別復(fù)雜,路由器要根據(jù)規(guī)則來判斷數(shù)據(jù)包的源地址、協(xié)議或應(yīng)用等附加信息,這樣就會(huì)一直占用大量的資源,所以除非不得已,盡量使用路由策略,而不要使用策略路由。網(wǎng)絡(luò)優(yōu)化的時(shí)候需要考慮這一點(diǎn),如果策略路由特別復(fù)雜,能通過將網(wǎng)絡(luò)進(jìn)行簡(jiǎn)單分解而達(dá)到取消策略路由的盡量進(jìn)行分解,否則路由器負(fù)擔(dān)很重.
相關(guān)文章
微軟新版Outlook將推出郵件分類快捷鍵及多項(xiàng)優(yōu)化:5月開始部署
微軟計(jì)劃在新版Outlook for Windows中引入郵件分類快捷功能,用戶可通過預(yù)設(shè)快捷鍵快速對(duì)郵件進(jìn)行分類,從而大幅提升工作效率并優(yōu)化管理流程2025-04-21rsync The --password-file option may only be used when accessing a
客戶端上傳文件執(zhí)行命令出錯(cuò),提醒The --password-file option may only be used when accessing an rsync daemon.查找資料也很少這樣的說法,最后發(fā)現(xiàn)是冒號(hào)的問題2025-02-26郵箱密碼忘記了怎么找回來? 網(wǎng)易郵箱密碼找回流程
郵箱在使用的時(shí)候,由于各種原因,有時(shí)候我們可能會(huì)遇到忘記密碼、賬號(hào)被盜等問題,這時(shí)候就需要進(jìn)行163郵箱找回操作,本文將為大家介紹如何進(jìn)行163郵箱找回操作2025-02-01電子郵件注冊(cè)教程! 郵箱號(hào)怎么注冊(cè)看這篇就夠了
電子郵件成為了我們?nèi)粘I詈凸ぷ髦胁豢苫蛉钡囊徊糠?,無論是注冊(cè)社交媒體、購(gòu)物平臺(tái),還是與他人溝通,一個(gè)穩(wěn)定的郵箱賬號(hào)都變得至關(guān)重要,本文將為您提供詳細(xì)的電子郵件2025-02-01wps調(diào)用Outlook 批量發(fā)送電子郵件時(shí)持續(xù)彈出警告框怎么辦?
如何解決程序調(diào)用outlook時(shí)一直警告,wps調(diào)用outlook發(fā)送郵件時(shí),發(fā)送的時(shí)候,會(huì)一直出現(xiàn)警告,需要你一個(gè)個(gè)點(diǎn)確定或拒絕,本文介紹如何解決這個(gè)警告2025-02-01QQ郵箱文件怎么發(fā)送微信? 電腦qq郵箱中轉(zhuǎn)站中文件分享到微信的方法
在使用郵箱軟件的時(shí)候,有的用戶想要通過QQ郵箱文件,QQ郵箱中存在這種功能,但是很多小伙伴不知道到底要如何操作,下面小編就給大家?guī)鞶Q郵箱文件發(fā)送微信教程,感興趣的2024-09-29微信電腦版怎么獨(dú)立窗口中打開訂閱號(hào)? 訂閱號(hào)獨(dú)立窗口顯示的教程
微信電腦版看訂閱號(hào)的時(shí)候,想要獨(dú)立窗口顯示訂閱號(hào),該怎么操作呢?下面我們就來看看詳細(xì)的教程2024-09-29Outlook在windows系統(tǒng)中有哪些快捷鍵? Outlook的鍵盤快捷方式大全
Outlook可以用它來收發(fā)電子郵件、管理聯(lián)系人信息、記日記、安排日程、分配任務(wù),新版Outlook for Windows帶來了許多新功能,今天我們就來看看Outlook快捷鍵匯總2024-09-13微信怎么調(diào)默認(rèn)瀏覽器? 微信設(shè)置默認(rèn)瀏覽器打開網(wǎng)頁(yè)鏈接的教程
微信怎么調(diào)默認(rèn)瀏覽器?只需簡(jiǎn)單設(shè)置,在微信就可以使用默認(rèn)瀏覽器打開網(wǎng)站,該怎么設(shè)置呢?詳細(xì)請(qǐng)看下文介紹2024-08-14GameViewer怎么刪除設(shè)備 GameViewer刪除設(shè)備的步驟
GameViewer怎么刪除設(shè)備?GameViewer 是一款專為游戲玩家設(shè)計(jì)的遠(yuǎn)程控制助手,下文中為大家?guī)砹薌ameViewer刪除設(shè)備步驟,需要的朋友快來看看吧2024-06-17