路由引入與控制
通過配置路由引入可以實現不同協議間的路由資訊互動,但是隨著網路環境的變化,或者設計
及操作上的不當則很可能造成路由環路及次優路徑的產生,這將造成網路資源的不必要耗費,更嚴
重的將導致通訊產生故障。因此為了避免這些網路問題的產生,則需要在進行路由引入的操作時增
加一些限定條件,即藉助路由策略來實現路由控制。
1.路由策略介紹
路由策略是一種比基於目標網路進行路由更加靈活的資料包路由轉發機制,路由策略主要實現了路由過濾和路由屬性設定等功能,它通過改變路由屬性(包括可達性)來改變網路流量所經過的路徑。應用了路由策略,
路由器將通過路由圖決定如何對需要路由的資料包進行處理,路由圖決定了一個數據包的下一跳轉發路由器。
在特定的場景中,路由策略的6種過濾器也能單獨使用,實現路由過濾。若裝置支援 BGP to IGP功能,還能在GP引入BGP路由時,使用BGP私有屬性作為匹配條件。
2.路由策略原理
一個 Route-Policy由多個節點構成,路由進入路由策略後,按節點序號從小到大依次檢查各個節點是否匹配。一個節點包括多個 match和 apply子句。 if-match子句用來定義該節點的匹配條件, apply子句用
來定義通過過濾的路由行為。 if-match子句的過濾規則關係是“與”,即該節點的所有 f-match子句都必須匹配
Route-Policy節點間的過濾關係是“或”,即只要通過了一個節點的過濾,就可通過該 Route-Policy。如果
沒有通過任何一個節點的過濾,路由資訊將無法通過該 Route-Policy。對於同一個 Route-Policy節點,在匹
配過程中,各個 match子句間是“與”的關係,即路由資訊必須同時滿足所有匹配條件,才可以執行 apply
子句的動作。
當路由與該節點的所有 -match子句都匹配成功後,進入匹配模式選擇,不再匹配其他節點。匹配模式
分為 permit和deny兩種:如果匹配模式是 permit,那麼路由將被允許通過,並且執行該節點的Appy子句
對路由資訊的一些屬性進行設定;如果匹配模式是deny,路由將被拒絕通過。
3.路由選路工具
路由策略中|- match子句中匹配的的6種過濾器包括訪問控制列表( Access Control List,ACL)、地
址字首列表、AS路徑過濾器、團體屬性過濾器、擴展團體屬性過濾器和RD屬性過濾器。這6種過濾器具有各
自的匹配條件和匹配模式,因此這6種過濾器在以下特定情況中可以單獨使用,實現路由過濾。下面我們把常
用的訪問控制列表和地址字首列表進行講解
訪問控制列表( Access Control List,ACL)是由 permit或deny語句組成的一系列有順序規則的集合
它通過匹配報文的資訊實現對報文的分類。根據ACL定義的規則判斷哪些報文可以接收,哪些報文需要拒絕
從而實現對報文的過濾。ACL本身只是一組規則,只能區分某一類報文,無法實現過濾報文的功能。對這類報
文的處理方法,需要由引用ACL的具體功能來決定。
同時每個ACL作為一個規則組,可以包含多個規則。規則通過規則1D(rue-d)來標識,規則|D可以
由使用者進行配置,也可以由系統自動根據步長生成。一個ACL中所有規則均按照規則D從小到大排序。規則
D之間會留下一定的間隔。如果不指定規則|D時,具體間隔大小由“ACL的步長”來設定。使用者可以根據規
則|D方便地把新規則插入到規則組的某一位置。當報文到達裝置時,查詢引擎從報文中取出資訊組成查詢鍵值
鍵值與ACL中的規則進行匹配,只要有一條規則和報文匹配,就停止查詢,稱為命中規則。查詢完所有規則
如果沒有符合條件的規則,稱為未命中規則。華為ACL預設隱含最後一條規則為 permit。ACL型別根據不同
的劃分規則可以有不同的分類。
1.按照建立ACL時的命名方式分類
(1)數字型ACL
(2)命名型ACL
2.按照ACL的功能分類
(1)基於介面的ACL根據報文的入介面定義規則,實現對報文的匹配過濾。通過命令 traffic- filter呼叫
ACL。
(2)基本ACL可使用報文的源P地址、VPN例項、分片標記和時間段資訊來定義規則。
(3)高階ACL既可使用報文的源P地址,也可使用目的地址、IP優先順序、ToS、DSCP、|P協議型別、
CMP型別、TCP源埠/目的埠、UDP源埠/目的埠號等來定義規則。高階訪問控制列表可以定義比
基本訪問控制列表更準確、更豐富、更靈活的規則。
(4)二層ACL可根據報文的乙太網幀頭資訊來定義規則,如根據源MAC地址、目的MAC地址、以太幀協議型別等。
二,策略路由介紹
傳統的路由轉發原理是首先根據報文的目的地址查詢路由表,然後進行報文轉發。但是目前越來越多的用
戶希望能夠在傳統路由轉發的基礎上根據自己定義的策略進行報文轉發和選路。策略路由使網路管理者不僅能
夠根據報文的目的地址,而且能夠根據報文的源地址、報文大小和鏈路質量等屬性來制定策略路由,以改變數
據包轉發路徑,滿足使用者需求。
( Policy- Based Routing,PBR)是一種依據使用者制定的策略進行路由選擇的機制,分為本地策
策略路由
略路由、介面策略路由和智慧策略路由( Smart Policy Routing,SPR)。根據使用者實際需求制定策略進行路
由選擇,增強路由選擇的靈活性和可控性,使不同的資料流通過不同的鏈路進行傳送,提高鏈路的利用效率。
在滿足業務服務質量的前提下,選擇費用較低的鏈路傳輸業務資料,從而降低企業資料服務的成本。策略路由
支援基於ACL、報文長度等資訊,來靈活地指定資料包的轉發路徑。
1,本地策略路由原理
本地策略路由僅對本機下發的報文進行處理,對轉發的報文不起作用。一條本地策略路由可以配置多個策略點,並且這些策略點具有不同的優先順序,本機下發報文優先匹配優先順序高的策略點。
如圖42所示,本機下發報文時,根據本地策略路由節點的優先順序,依次匹配各節點繫結的匹配規則,本地策略路由支援基於ACL或報文長度的匹配規則。
如果找到了匹配的本地策略路由節點,則按照以下步驟傳送報文。
1.檢視使用者是否設定了報文的優先順序
(1)如果使用者設定了報文的優先順序,首先根據使用者設定的優先順序設定報文的優先順序,然後繼續向下執行。
(2)如果使用者未設定報文的優先順序,則繼續執行
2.檢視使用者是否設定了本地策略路由的出介面
(1)如果使用者設定了出介面,將報文從出介面傳送出去,不再執行後續步驟
(2)如果使用者未設定出介面,則繼續執行
3.檢視使用者是否設定了本地策略路由的下一跳(使用者可以設定兩個下一跳以達到負載分擔的目的)
(1)如果使用者設定了策略路由的下一跳,將報文發往下一跳,不再繼續執行。
(2)如果使用者未設定下一跳,按照正常流程根據報文的目的地址查詢路由。如果沒有查詢到路由,則繼
續執行
4.檢視使用者是否設定了本地策略路由的缺省出介面
(1)如果使用者設定了缺省出介面,將報文從缺省出介面傳送出去,不再執行後續步驟
(2)如果使用者未設定缺省出介面,則繼續執行。
檢視使用者是否設定了本地策略路由的預設下
(1)如果使用者設定了預設下一跳,將報文發往預設下一跳,不再繼續執行。
(2)如果使用者未設定預設下一跳,則繼續執行。
6.根據目的地址查詢路由
丟棄報文,產生| CMP UNREACH訊息,如果沒有找到匹配的本地策略路由節點,按照發送P報文的一般流程,根據目的地址查詢路由。
3介面策略路由原理
介面策略路由只對轉發的報文起作用,對本地下發的報文(比如本地的Png報文)不起作用。介面策略路由通過在流行為中配置重定向實現,只對介面入方向的報文生效。預設情況下,裝置按照路由表的下一跳進行報文轉發,如果配置了介面策略路由,則裝置按照介面策略路由指定的下一跳進行轉發。
在按照介面策略路由指定的下一跳進行報文轉發時,如果裝置上沒有該下一跳|P地址對應的ARP表項,裝置會觸發ARP學習。如果一直學習不到下一跳P地址對應的ARP表項,則報文按照路由表指定的下一跳進行轉發;如果裝置上有或者學習到了此ARP表項,則按照介面策略路由指定的下一跳|P地址進行報文轉發。
4.智慧策略路由原理
智慧策略路由是基於業務需求的策略路由,通過匹配鏈路質量和網路業務對鏈路質量的需求,實現智慧選路.隨著網路業務需求的多樣化,業務資料的集中放置,鏈路質量對網路業務越來越重要。越來越多的使用者把關注點從網路的連通性轉移到業務的可用性上,如業務的可獲得性、響應速度和業務質量等。這些複雜的業務需求給傳統的基於逐跳的路由協議提出了挑戰,它們無法感知鏈路的質量和業務的需求,所以帶給使用者的業務體驗也得不到保障,即使路由可達,但鏈路質量可能已經很差甚至無法正常轉發報文了。智慧策略路由( Smartblicy Routing.SPR)就是在這一背景下產生的一種策略路由,它可以主動探測鏈路質量並匹配業務的需求從而選擇一條最優鏈路轉發業務資料,可以有效地避免網路黑洞、網路震盪等問題
SPR支援通過以下屬性對業務進行區分:
SPR支援通過以下屬性對業務進行區分
(1)根據協議型別區分:|P,TCP,UDP,GRE,lGMP,IP|NP,OSPF,ICMP。
(2)根據報文應用區分:DSCP,TOS, IP Precedence, Fragment,VPN,TCP-flag。
(3)根據報文資訊區分: Source IP Address, Destination| P Address, Protocol, Source Port, Destination
Port, Source IP Prefi, Destination IP Prefiⅸx。
不同的業務對鏈路的時延D( Delay)、抖動時間J( Jitter、丟包率L(Los以及綜合度量指標( Composite
Measure Indicator,cM)有不同的要求,如果業務對鏈路的某一項質量引數沒有要求,就不需要配置該參
數的閾值。