06-RSVP配置
本章節下載: 06-RSVP配置 (389.99 KB)
目 錄
RSVP(Resource Reservation Protocol,資源預留協議)是一種用來在網絡上請求預留資源的信令協議。RSVP經擴展後支持MPLS標簽的分發,在傳送標簽綁定消息的同時攜帶資源預留信息。這種擴展後的RSVP可以作為MPLS TE的標簽分發協議,沿著指定路徑分發MPLS標簽並預留資源,以建立CRLSP(Constraint-based Routed Label Switched Paths,基於約束路由的LSP)。擴展後的RSVP稱為RSVP-TE。
RSVP消息分為以下幾種:
· Path消息:由發送者沿數據報文傳輸的方向向下遊發送,在沿途所有節點上保存路徑狀態。
· Resv消息:由接收者沿與數據報文傳輸相反的方向發送,在沿途所有節點上進行資源預留,並創建和維護預留狀態。
· PathTear消息:由發送者或中間節點向下遊發送,用來刪除沿途節點的路徑狀態和相關的預留狀態。
· ResvTear消息:由接收者或中間節點向上遊發送,用來刪除沿途節點的預留狀態。
· PathErr消息:如果接收者或中間節點在處理Path消息的過程中發生了錯誤,就會向上遊發送PathErr消息,PathErr消息不影響沿途節點的狀態,隻是把錯誤報告給發送者。
· ResvErr消息:如果發送者或中間節點在處理Resv消息的過程中發生了錯誤,或者由於搶占導致預留被破壞,就會向下遊節點發送ResvErr消息。
· ResvConf消息:該消息發往接收者,用於對預留消息進行確認。
· Hello消息:用來在兩個直連的RSVP鄰居之間建立和維持鄰居關係,以檢測鄰居的狀態。隻有開啟RSVP的Hello擴展功能後,才會發送該消息。
RSVP-TE對RSVP消息的擴展主要是在Path消息和Resv消息中增加了新的對象。新增對象除了可以攜帶標簽信息外,還可以攜帶在沿途尋找路徑時的限製信息,從而實現對約束條件和快速重路由的支持。
Path消息新增的對象包括:
· LABEL_REQUEST:用來請求下遊節點分配標簽。
· EXPLICIT_ROUTE:用來攜帶Ingress節點計算出的路徑信息,確保沿著該路徑建立CRLSP。
· RECORD_ROUTE:用來記錄CRLSP實際經過的路徑及各個節點分配的標簽。
· SESSION_ATTRIBUTE:用來攜帶MPLS TE隧道的屬性信息,如建立優先級、保持優先級、親和屬性等。
Resv消息新增的對象包括:
· LABEL:用來將下遊節點分配的標簽通告給上遊節點。
· RECORD_ROUTE:用來記錄CRLSP實際經過的路徑及各個節點分配的標簽。
圖1-1 CRLSP建立過程
如圖1-1所示,使用RSVP-TE建立CRLSP的過程為:
(1) Ingress LSR產生攜帶LABEL_REQUEST對象的Path消息,沿著通過CSPF計算出的路徑逐跳發送給Egress LSR。Path消息經過的LSR,都依據Path消息生成路徑狀態。
(2) Egress LSR收到Path消息後,產生攜帶預留信息和LABEL對象的Resv消息,沿著Path消息的相反路徑逐跳發送給Ingress LSR。Resv消息通告標簽的同時,在沿途的LSR上預留一定的資源,並生成預留狀態。
(3) 當Ingress LSR收到Resv消息時,CRLSP建立成功。
由於RSVP是軟狀態協議,因此需要定時發送消息來維護節點上的資源預留狀態。
資源預留狀態包括路徑狀態和預留狀態,分別保存在如下狀態塊中:
· PSB(Path State Block,路徑狀態塊):由Path消息創建,用來保存LABEL_REQUEST對象。
· RSB(Reservation State Block,預留狀態塊):由Resv消息創建,用來保存LABEL對象。
路徑狀態和預留狀態分別由周期性發送的Path消息和Resv消息來刷新。對於某個狀態,如果在一定時間內沒有收到刷新消息,則PSB或RSB中相應的狀態將被刪除,根據該狀態建立的CRLSP也將被刪除。
用來刷新資源預留狀態的Path和Resv消息,統稱為Refresh消息。Refresh消息除了刷新資源預留狀態外,還可以用於恢複丟失的RSVP消息。
由於Refresh消息是周期性發送的,當網絡中的RSVP會話比較多時,Refresh消息會加重網絡負擔,此時Path和Resv消息的刷新時間間隔不易過小;而對於時延敏感的應用,當RSVP消息丟失時,希望能夠盡快通過Refresh消息恢複丟失的消息,此時Path和Resv消息的刷新時間間隔不易過大。簡單地調整刷新間隔並不能同時解決這兩類問題。
Srefresh(Summary Refresh,摘要刷新)和RSVP消息的可靠傳遞功能可以很好地解決上述問題。
摘要刷新功能的工作機製為:發送Path和Resv消息時,在消息中攜帶Message ID,用來唯一標識一個消息;RSVP通過發送攜帶待刷新消息Message ID的Srefresh消息,來刷新對應的Path和Resv消息。
采用摘要刷新功能後,不必傳送標準的Path和Resv消息,隻需傳遞攜帶Path和Resv消息摘要的Srefresh消息,即可實現對RSVP路徑和預留狀態進行刷新,減少了網絡上的Refresh消息流量,並加快了節點對刷新消息的處理速度。
RSVP消息沒有重傳機製,消息丟失後發送端無法獲悉,無法重傳丟失的消息。通過RSVP消息的可靠性傳遞功能可以提高消息傳遞的可靠性。
RSVP消息的可靠傳遞功能是指對端設備需要應答本端發送的RSVP消息,否則將會重傳此消息。其工作機製為:節點發送了攜帶Message_ID對象的消息,且Message_ID對象的ACK_Desired標識(是否需要應答標識)置位後,如果在重傳時間Rf內沒有收到攜帶對應Message_ID_ACK對象的消息,則重傳時間Rf超時後重傳此消息,並將重傳時間置為(1+Delta)×Rf。節點持續按照上述方法重傳此消息,直到節點在重傳時間超時前接收到對應的應答消息,或消息傳送次數達到3次。
RSVP認證功能可以用來確保RSVP消息不會被篡改,以防止偽造的資源預留請求非法占用網絡資源。
RSVP認證功能是指:發送RSVP消息時使用MD5算法對認證密鑰和消息內容計算出消息摘要,並將消息摘要添加到發送的RSVP消息中。對端接收到RSVP消息後,進行同樣地計算,並將計算結果和消息中的摘要進行比較。如果一致,則認證通過,接收該消息;否則認證失敗,丟棄該消息。
通過在消息中攜帶序列號,RSVP認證功能還可以用來防止報文重放攻擊。設備記錄接收到的RSVP消息的序列號,並根據記錄的序列號判斷後續消息是否符合要求。隻有收到的消息的序列號在允許的範圍內時,才接收該消息;否則,丟棄該消息。
RSVP GR(Graceful Restart,平滑重啟)功能是指在信令協議或控製平麵出現異常時,保持轉發表項信息,以保證數據轉發不中斷。
參與RSVP GR過程的設備分為以下兩種角色:
· GR Restarter:GR重啟路由器,指由管理員手工或設備故障觸發而重啟協議的設備,它必須具備GR能力。
· GR Helper:GR Restarter的鄰居,與重啟的GR Restarter保持鄰居關係,並協助其恢複重啟前的轉發狀態,它也必須具備GR能力。
目前,設備隻能作為RSVP GR的GR Helper。
RSVP GR依賴於RSVP的Hello擴展能力,通過Hello消息向鄰居通告自己的GR能力和相關時間參數。設備和鄰居如果都具備RSVP GR能力,那麼在完成GR參數的交互後,就可以在檢測到對方發生GR重啟時,充當對方的GR Helper,保證在GR Restarter重啟的過程中,數據轉發不會中斷。
當GR Restarter發生重啟時,GR Helper連續丟失或錯誤的Hello消息次數達到了配置的值,GR Helper由此判定GR Restarter發生了重啟。此時GR Helper會保留與該鄰居相關的軟狀態信息,並保持向對方周期性發送Hello消息,直到重啟定時器(Restart Timer)超時。
在重啟定時器超時前,如果GR Helper接收到了GR Restarter發送的Hello消息,那麼啟動恢複定時器,並觸發信令消息交互以恢複原有的軟狀態;否則,將刪除與該鄰居相關的所有RSVP軟狀態信息和轉發表項。恢複定時器超時後,刪除仍然沒有恢複的軟狀態和轉發表項。
與RSVP相關的協議規範有:
· RFC 2205:Resource ReSerVation Protocol
· RFC 3209:RSVP-TE: Extensions to RSVP for LSP Tunnels
· RFC 2961:RSVP Refresh Overhead Reduction Extensions
· RFC 4461:Signaling Requirements for Point-to-Multipoint Traffic-Engineered MPLS Label Switched Paths (LSPs)
· RFC 4875:Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs)
RSVP配置任務如下:
(1) 開啟RSVP能力
在MPLS TE隧道經過的所有節點和接口上都需要開啟RSVP能力。
(2) (可選)配置RSVP的Refresh消息刷新功能
(3) (可選)配置RSVP摘要刷新功能
(4) (可選)配置RSVP消息的可靠傳遞功能
(5) (可選)配置RSVP的Hello擴展功能
(6) (可選)配置RSVP認證功能
(7) (可選)配置發送的RSVP報文的DSCP優先級
(8) (可選)在GR helper設備上配置RSVP GR
(9) (可選)配置RSVP與BFD聯動
為了建立MPLS TE隧道,在MPLS TE隧道經過的所有節點和接口上都需要開啟RSVP能力。
(1) 進入係統視圖。
system-view
(2) 全局開啟RSVP能力,並進入RSVP視圖。
rsvp
缺省情況下,全局RSVP能力處於關閉狀態。
(3) 退回係統視圖。
quit
(4) 進入接口視圖。
interface interface-type interface-number
(5) 開啟接口的RSVP能力。
rsvp enable
缺省情況下,接口的RSVP能力處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入RSVP視圖。
rsvp
(3) 配置路徑消息和預留消息的刷新時間間隔。
refresh interval interval
缺省情況下,路徑消息和預留消息的刷新時間間隔為30秒。
(4) 配置PSB和RSB的老化超時倍數。
keep-multiplier number
缺省情況下,PSB和RSB的老化超時倍數為3。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟RSVP摘要刷新功能。
rsvp reduction srefresh
缺省情況下,RSVP摘要刷新功能處於關閉狀態。
開啟摘要刷新功能後,將不會周期性發送Refresh消息維護路徑和預留狀態。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟RSVP消息的可靠傳遞功能。
rsvp reduction srefresh reliability
缺省情況下, RSVP消息的可靠傳遞功能處於關閉狀態。
(4) (可選)配置RSVP消息可靠傳遞功能的重傳參數
¡ 配置RSVP消息可靠傳遞功能的重傳增量。
rsvp reduction retransmit increment increment-value
缺省情況下,RSVP消息可靠傳遞功能的重傳增量為1。
¡ 配置RSVP消息可靠傳遞功能的重傳時間間隔。
rsvp reduction retransmit interval interval
缺省情況下,RSVP消息可靠傳遞功能的重傳時間間隔為500毫秒。
RSVP消息的可靠傳遞功能的重傳時間為(1+Delta)×Rf,其中Delta為重傳增量,Rf為重傳時間間隔。
在接口視圖下開啟RSVP的Hello擴展功能後,設備會通過該接口發送和接收Hello消息,通過Hello消息檢測鄰居的狀態。
在hello interval命令指定的時間內,如果沒有收到鄰居發送的Hello Request消息,則主動向鄰居發送Hello Request消息;如果收到了鄰居發送的Hello Request消息,則立即向鄰居回應Hello Ack消息。
當連續未收到Hello消息或收到錯誤的Hello消息的次數達到hello lost命令配置的次數時,認為鄰居設備發生故障。如果配置了GR功能,則本地設備作為GR Helper協助鄰居進行GR重啟;如果沒有配置GR功能,但配置了FRR(Fast Reroute,快速重路由)功能,則進行FRR切換。
FRR的詳細介紹,請參見“MPLS配置指導”中的“MPLS TE”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟RSVP的Hello擴展功能。
rsvp hello enable
缺省情況下,RSVP的Hello擴展功能處於關閉狀態。
(4) (可選)配置RSVP的Hello擴展功能的參數。
a. 退回係統視圖。
quit
b. 進入RSVP視圖。
rsvp
c. 配置Hello消息連續丟失或錯誤的最大次數。
hello lost times
缺省情況下,Hello消息連續丟失或錯誤的最大次數為4次。
d. 配置Hello Request消息的發送時間間隔。
hello interval interval
缺省情況下,Hello Request消息的發送時間間隔為5秒。
為防止偽造的資源預留請求非法占用網絡資源,RSVP采用逐跳認證機製來驗證RSVP消息的合法性。一條鏈路兩端的接口上需要配置相同的認證密鑰,隻有這樣,接口之間才可以正確地交互RSVP消息。
建議不要在同一個接口上同時配置快速重路由功能和RSVP認證功能,否則可能導致認證失敗。
RSVP認證功能可以在如下視圖配置:
· RSVP視圖:該視圖下的配置對所有RSVP SA生效。
· RSVP鄰居視圖:該視圖下的配置隻對與指定RSVP鄰居之間的RSVP SA生效。
· 接口視圖:該視圖下的配置隻對根據指定接口下的配置生成的RSVP SA生效。
三個視圖下配置的優先級從高到低依次為:RSVP鄰居視圖、接口視圖、RSVP視圖。
(1) 進入係統視圖。
system-view
(2) 進入RSVP視圖。
rsvp
(3) 創建RSVP認證鄰居,並進入RSVP鄰居視圖。
peer ip-address
(4) 為指定RSVP鄰居開啟RSVP認證功能,並配置認證密鑰。
authentication key { cipher | plain } string
缺省情況下,RSVP認證功能處於關閉狀態,即不進行RSVP認證。
(5) (可選)為指定RSVP鄰居開啟RSVP認證的challenge-response握手功能。
authentication challenge
缺省情況下,認證的challenge-response握手功能處於關閉狀態。
(6) (可選)為指定RSVP鄰居配置RSVP SA(Security Association,安全聯盟)的空閑老化時間。
authentication lifetime life-time
缺省情況下,RSVP SA的空閑老化時間為1800秒(30分鍾)。
(7) (可選)為指定RSVP鄰居配置對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量。
authentication window-size number
缺省情況下,對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量為1。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 在接口下開啟RSVP認證功能,並配置認證密鑰。
rsvp authentication key { cipher | plain } string
缺省情況下,RSVP認證功能處於關閉狀態,即不進行RSVP認證。
(4) (可選)在接口下開啟RSVP認證的challenge-response握手功能。
rsvp authentication challenge
缺省情況下,RSVP認證的challenge-response握手功能處於關閉狀態。
(5) (可選)在接口下配置RSVP SA的空閑老化時間。
rsvp authentication lifetime life-time
缺省情況下,RSVP SA的空閑老化時間為1800秒(30分鍾)。
(6) (可選)在接口下配置對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量。
rsvp authentication window-size number
缺省情況下,對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量為1。
(1) 進入係統視圖。
system-view
(2) 進入RSVP視圖。
rsvp
(3) 全局開啟RSVP認證功能,並配置認證密鑰。
authentication key { cipher | plain } string
缺省情況下,RSVP認證功能處於關閉狀態,即不進行RSVP認證。
(4) (可選)全局開啟RSVP認證的challenge-response握手功能。
authentication challenge
缺省情況下,認證的challenge-response握手功能處於關閉狀態。
(5) (可選)全局配置RSVP SA的空閑老化時間。
authentication lifetime life-time
缺省情況下,RSVP SA的空閑老化時間為1800秒(30分鍾)。
(6) (可選)全局配置對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量。
authentication window-size number
缺省情況下,對於帶有認證信息的RSVP消息,最大可允許的亂序消息數量為1。
DSCP(Differentiated Services Code Point,區分服務編碼點)攜帶在IP報文中的ToS字段,用來體現報文自身的優先等級,決定報文傳輸的優先程度。通過本配置可以指定發送的RSVP報文中攜帶的DSCP優先級的取值。
(1) 進入係統視圖。
system-view
(2) 進入RSVP視圖。
rsvp
(3) 配置發送的RSVP報文的DSCP優先級。
dscp dscp-value
缺省情況下,RSVP報文的DSCP優先級為48。
RSVP GR功能依賴於RSVP的Hello擴展能力,因此在配置RSVP GR功能時必須開啟RSVP的Hello擴展能力。
(1) 進入係統視圖。
system-view
(2) 進入RSVP視圖。
rsvp
(3) 開啟RSVP的GR功能。
graceful-restart enable
缺省情況下,RSVP的GR功能處於關閉狀態。
在MPLS TE網絡中,LSR鄰居之間的鏈路發生故障將導致MPLS TE轉發報文失敗,而MPLS TE本身無法快速檢測到鏈路故障。通過在MPLS TE隧道內的兩個RSVP鄰居上分別配置RSVP與BFD(Bidirectional Forwarding Detection,雙向轉發檢測)聯動,可以快速地感知鄰居之間鏈路的故障,確保鏈路出現故障時將業務從主路徑切換到備份路徑上。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
該接口上需要開啟RSVP能力。
(3) 配置通過BFD檢測本地設備和RSVP鄰居之間鏈路的狀態。
rsvp bfd enable
缺省情況下,不會通過BFD檢測本地設備和RSVP鄰居之間鏈路的狀態。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後RSVP的運行情況,用戶可以通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除RSVP統計信息。
表1-1 RSVP的顯示和維護
操作 |
命令 |
顯示RSVP的信息 |
display rsvp [ interface [ interface-type interface-number ] ] |
顯示本地設備與RSVP鄰居建立的RSVP SA信息 |
display rsvp authentication [ from ip-address ] [ to ip-address ] [ verbose ] |
顯示RSVP建立的CR-LSP信息 |
display rsvp lsp [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ lsp-id lsp-id ] [ verbose ] |
顯示RSVP鄰居的信息 |
display rsvp peer [ interface interface-type interface-number ] [ ip ip-address ] [ verbose ] |
顯示向上遊設備發送的RSVP資源預留請求的信息 |
display rsvp request [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ prevhop ip-address ] [ verbose ] |
顯示RSVP資源預留狀態信息 |
display rsvp reservation [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ nexthop ip-address ] [ verbose ] |
顯示RSVP路徑狀態信息 |
display rsvp sender [ destination ip-address ] [ source ip-address ] [ tunnel-id tunnel-id ] [ lsp-id lsp-id ] [ verbose ] |
顯示RSVP統計信息 |
display rsvp statistics [ interface [ interface-type interface-number ] ] |
手工清除RSVP SA |
reset rsvp authentication [ from ip-address to ip-address ] |
清除RSVP的統計信息 |
reset rsvp statistics [ interface [ interface-type interface-number ] |
· 設備Router A、Router B、Router C和Router D運行IS-IS,都是Level-2設備;
· 使用RSVP-TE建立一條從Router A到Router D的MPLS TE隧道,實現兩個IP網絡通過MPLS TE隧道傳輸數據流量,該隧道需要的帶寬為2000kbps;
· 隧道沿途的鏈路最大帶寬為10000kbps,最大可預留帶寬為5000kbps。
圖1-2 使用RSVP-TE配置MPLS TE隧道組網圖
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
|
Router A |
Loop0 |
1.1.1.9/32 |
Router C |
Loop0 |
3.3.3.9/32 |
|
GE1/0/1 |
10.1.1.1/24 |
|
GE1/0/1 |
30.1.1.1/24 |
|
GE1/0/2 |
100.1.1.1/24 |
|
GE1/0/2 |
20.1.1.2/24 |
Router B |
Loop0 |
2.2.2.9/32 |
Router D |
Loop0 |
4.4.4.9/32 |
|
GE1/0/1 |
10.1.1.2/24 |
|
GE1/0/1 |
30.1.1.2/24 |
|
GE1/0/2 |
20.1.1.1/24 |
|
GE1/0/2 |
100.1.2.1/24 |
(1) 配置各接口的IP地址
按照圖1-2配置各接口的IP地址和掩碼,具體配置過程略。
(2) 配置IS-IS協議發布接口所在網段的路由,包括Loopback接口
# 配置Router A。
<RouterA> system-view
[RouterA] isis 1
[RouterA-isis-1] network-entity 00.0005.0000.0000.0001.00
[RouterA-isis-1] quit
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] isis enable 1
[RouterA-GigabitEthernet1/0/1] isis circuit-level level-2
[RouterA-GigabitEthernet1/0/1] quit
[RouterA] interface loopback 0
[RouterA-LoopBack0] isis enable 1
[RouterA-LoopBack0] isis circuit-level level-2
[RouterA-LoopBack0] quit
# 配置Router B。
<RouterB> system-view
[RouterB] isis 1
[RouterB-isis-1] network-entity 00.0005.0000.0000.0002.00
[RouterB-isis-1] quit
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] isis enable 1
[RouterB-GigabitEthernet1/0/1] isis circuit-level level-2
[RouterB-GigabitEthernet1/0/1] quit
[RouterB] interface gigabitethernet 1/0/2
[RouterB-GigabitEthernet1/0/2] isis enable 1
[RouterB-GigabitEthernet1/0/2] isis circuit-level level-2
[RouterB-GigabitEthernet1/0/2] quit
[RouterB] interface loopback 0
[RouterB-LoopBack0] isis enable 1
[RouterB-LoopBack0] isis circuit-level level-2
[RouterB-LoopBack0] quit
# 配置Router C。
<RouterC> system-view
[RouterC] isis 1
[RouterC-isis-1] network-entity 00.0005.0000.0000.0003.00
[RouterC-isis-1] quit
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] isis enable 1
[RouterC-GigabitEthernet1/0/1] isis circuit-level level-2
[RouterC-GigabitEthernet1/0/1] quit
[RouterC] interface gigabitethernet 1/0/2
[RouterC-GigabitEthernet1/0/2] isis enable 1
[RouterC-GigabitEthernet1/0/2] isis circuit-level level-2
[RouterC-GigabitEthernet1/0/2] quit
[RouterC] interface loopback 0
[RouterC-LoopBack0] isis enable 1
[RouterC-LoopBack0] isis circuit-level level-2
[RouterC-LoopBack0] quit
# 配置Router D。
<RouterD> system-view
[RouterD] isis 1
[RouterD-isis-1] network-entity 00.0005.0000.0000.0004.00
[RouterD-isis-1] quit
[RouterD] interface gigabitethernet 1/0/1
[RouterD-GigabitEthernet1/0/1] isis enable 1
[RouterD-GigabitEthernet1/0/1] isis circuit-level level-2
[RouterD-GigabitEthernet1/0/1] quit
[RouterD] interface loopback 0
[RouterD-LoopBack0] isis enable 1
[RouterD-LoopBack0] isis circuit-level level-2
[RouterD-LoopBack0] quit
# 配置完成後,在各設備上執行display ip routing-table命令,可以看到相互之間都學到了到對方的路由,包括Loopback接口對應的主機路由。
(3) 配置LSR ID,開啟MPLS、MPLS TE和RSVP能力
# 配置Router A。
[RouterA] mpls lsr-id 1.1.1.9
[RouterA] mpls te
[RouterA-te] quit
[RouterA] rsvp
[RouterA-rsvp] quit
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] mpls enable
[RouterA-GigabitEthernet1/0/1] mpls te enable
[RouterA-GigabitEthernet1/0/1] rsvp enable
[RouterA-GigabitEthernet1/0/1] quit
# 配置Router B。
[RouterB] mpls lsr-id 2.2.2.9
[RouterB] mpls te
[RouterB-te] quit
[RouterB] rsvp
[RouterB-rsvp] quit
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] mpls enable
[RouterB-GigabitEthernet1/0/1] mpls te enable
[RouterB-GigabitEthernet1/0/1] rsvp enable
[RouterB-GigabitEthernet1/0/1] quit
[RouterB] interface gigabitethernet 1/0/2
[RouterB-GigabitEthernet1/0/2] mpls enable
[RouterB-GigabitEthernet1/0/2] mpls te enable
[RouterB-GigabitEthernet1/0/2] rsvp enable
[RouterB-GigabitEthernet1/0/2] quit
# 配置Router C。
[RouterC] mpls lsr-id 3.3.3.9
[RouterC] mpls te
[RouterC-te] quit
[RouterC] rsvp
[RouterC-rsvp] quit
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] mpls enable
[RouterC-GigabitEthernet1/0/1] mpls te enable
[RouterC-GigabitEthernet1/0/1] rsvp enable
[RouterC-GigabitEthernet1/0/1] quit
[RouterC] interface gigabitethernet 1/0/2
[RouterC-GigabitEthernet1/0/2] mpls enable
[RouterC-GigabitEthernet1/0/2] mpls te enable
[RouterC-GigabitEthernet1/0/2] rsvp enable
[RouterC-GigabitEthernet1/0/2] quit
# 配置Router D。
[RouterD] mpls lsr-id 4.4.4.9
[RouterD] mpls te
[RouterD-te] quit
[RouterD] rsvp
[RouterD-rsvp] quit
[RouterD] interface gigabitethernet 1/0/1
[RouterD-GigabitEthernet1/0/1] mpls enable
[RouterD-GigabitEthernet1/0/1] mpls te enable
[RouterD-GigabitEthernet1/0/1] rsvp enable
[RouterD-GigabitEthernet1/0/1] quit
(4) 配置IS-IS TE
# 配置Router A。
[RouterA] isis 1
[RouterA-isis-1] cost-style wide
[RouterA-isis-1] mpls te enable level-2
[RouterA-isis-1] quit
# 配置Router B。
[RouterB] isis 1
[RouterB-isis-1] cost-style wide
[RouterB-isis-1] mpls te enable level-2
[RouterB-isis-1] quit
# 配置Router C。
[RouterC] isis 1
[RouterC-isis-1] cost-style wide
[RouterC-isis-1] mpls te enable level-2
[RouterC-isis-1] quit
# 配置Router D。
[RouterD] isis 1
[RouterD-isis-1] cost-style wide
[RouterD-isis-1] mpls te enable level-2
[RouterD-isis-1] quit
(5) 配置鏈路的MPLS TE屬性
# 在Router A上配置鏈路的最大帶寬和最大可預留帶寬。
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] mpls te max-link-bandwidth 10000
[RouterA-GigabitEthernet1/0/1] mpls te max-reservable-bandwidth 5000
[RouterA-GigabitEthernet1/0/1] quit
# 在Router B上配置鏈路的最大帶寬和最大可預留帶寬。
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] mpls te max-link-bandwidth 10000
[RouterB-GigabitEthernet1/0/1] mpls te max-reservable-bandwidth 5000
[RouterB-GigabitEthernet1/0/1] quit
[RouterB] interface gigabitethernet 1/0/2
[RouterB-GigabitEthernet1/0/2] mpls te max-link-bandwidth 10000
[RouterB-GigabitEthernet1/0/2] mpls te max-reservable-bandwidth 5000
[RouterB-GigabitEthernet1/0/2] quit
# 在Router C上配置鏈路的最大帶寬和最大可預留帶寬。
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] mpls te max-link-bandwidth 10000
[RouterC-GigabitEthernet1/0/1] mpls te max-reservable-bandwidth 5000
[RouterC-GigabitEthernet1/0/1] quit
[RouterC] interface gigabitethernet 1/0/2
[RouterC-GigabitEthernet1/0/2] mpls te max-link-bandwidth 10000
[RouterC-GigabitEthernet1/0/2] mpls te max-reservable-bandwidth 5000
[RouterC-GigabitEthernet1/0/2] quit
# 在Router D上配置鏈路的最大帶寬和最大可預留帶寬。
[RouterD] interface gigabitethernet 1/0/1
[RouterD-GigabitEthernet1/0/1] mpls te max-link-bandwidth 10000
[RouterD-GigabitEthernet1/0/1] mpls te max-reservable-bandwidth 5000
[RouterD-GigabitEthernet1/0/1] quit
(6) 配置MPLS TE隧道
# 在Router A上配置MPLS TE隧道Tunnel1:目的地址為Router D的LSR ID(4.4.4.9);采用RSVP-TE信令協議建立MPLS TE隧道;隧道所需的帶寬為2000kbps。
[RouterA] interface tunnel 1 mode mpls-te
[RouterA-Tunnel1] ip address 7.1.1.1 255.255.255.0
[RouterA-Tunnel1] destination 4.4.4.9
[RouterA-Tunnel1] mpls te signaling rsvp-te
[RouterA-Tunnel1] mpls te bandwidth 2000
[RouterA-Tunnel1] quit
(7) 配置靜態路由使流量沿MPLS TE隧道轉發
# 在Router A上配置靜態路由,使得到達網絡100.1.2.0/24的流量通過MPLS TE隧道接口Tunnel1轉發。
[RouterA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 配置完成後,在Router A上執行display interface tunnel命令可以看到隧道接口狀態為up。
[RouterA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 64000
Internet address: 7.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
# 在Router A上執行display mpls te tunnel-interface命令可以看到隧道的詳細信息。
[RouterA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up, Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 23331 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 2000 kbps
Reserved Bandwidth : 2000 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Disabled Record Label : Disabled
FRR Flag : Disabled Backup Bandwidth Flag: Disabled
Backup Bandwidth Type: - Backup Bandwidth : -
Route Pinning : Disabled
Retry Limit : 10 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
# 在Router A上執行display ip routing-table命令,可以看到路由表中有以Tunnel1為出接口的靜態路由信息。
· 設備Router A、Router B和Router C運行IS-IS,都是Level-2設備;
· 使用RSVP-TE建立從Router A到Router C的MPLS TE隧道;
· 設備Router A、Router B和Router C支持RSVP的Hello擴展能力;
· Router A、Router B和Router C為RSVP鄰居,通過開啟GR能力,鄰居之間可以在對方發生GR Restart的時候提供GR Helper支持。
圖1-3 RSVP GR配置組網圖
(1) 配置各接口的IP地址
按照圖1-3配置各接口的IP地址和掩碼,具體配置過程略。
(2) 配置IS-IS協議發布接口所在網段的路由,包括Loopback接口(具體配置過程略)
(3) 配置LSR ID,開啟MPLS、MPLS TE、RSVP和RSVP的Hello擴展能力
# 配置Router A
<RouterA> system-view
[RouterA] mpls lsr-id 1.1.1.9
[RouterA] mpls te
[RouterA-te] quit
[RouterA] rsvp
[RouterA-rsvp] quit
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] mpls enable
[RouterA-GigabitEthernet1/0/1] mpls te enable
[RouterA-GigabitEthernet1/0/1] rsvp enable
[RouterA-GigabitEthernet1/0/1] rsvp hello enable
[RouterA-GigabitEthernet1/0/1] quit
# 配置Router B
<RouterB> system-view
[RouterB] mpls lsr-id 2.2.2.9
[RouterB] mpls te
[RouterB-te] quit
[RouterB] rsvp
[RouterB] quit
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] mpls enable
[RouterB-GigabitEthernet1/0/1] mpls te enable
[RouterB-GigabitEthernet1/0/1] rsvp enable
[RouterB-GigabitEthernet1/0/1] rsvp hello enable
[RouterB-GigabitEthernet1/0/1] quit
[RouterB] interface gigabitethernet 1/0/2
[RouterB-GigabitEthernet1/0/2] mpls enable
[RouterB-GigabitEthernet1/0/2] mpls te enable
[RouterB-GigabitEthernet1/0/2] rsvp enable
[RouterB-GigabitEthernet1/0/2] rsvp hello enable
[RouterB-GigabitEthernet1/0/2] quit
# 配置Router C
<RouterC> system-view
[RouterC] mpls lsr-id 3.3.3.9
[RouterC] mpls te
[RouterC-te] quit
[RouterC] rsvp
[RouterC-rsvp] rsvp
[RouterC-mpls] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] mpls enable
[RouterC-GigabitEthernet1/0/1] mpls te enable
[RouterC-GigabitEthernet1/0/1] rsvp enable
[RouterC-GigabitEthernet1/0/1] rsvp hello enable
[RouterC-GigabitEthernet1/0/1] quit
(4) 配置IS-IS TE(具體配置過程略)
(5) 配置MPLS TE隧道(具體配置過程略)
(6) 配置RSVP GR
# 配置Router A
[RouterA] rsvp
[RouterA-rsvp] graceful-restart enable
# 配置Router B
[RouterB] rsvp
[RouterB-rsvp] graceful-restart enable
# 配置Router C
[RouterC] rsvp
[RouterC-rsvp] graceful-restart enable
# 在Router A和Router C之間創建隧道且運行穩定後,通過命令可以看到鄰居的GR狀態已經為Ready狀態。
<RouterA> display rsvp peer verbose
Peer: 10.1.1.2 Interface: GE1/0/1
Hello state: Up Hello type: Active
PSB count: 0 RSB count: 1
Src instance: 0x1f08 Dst instance: 0x22
Summary refresh: Disabled Graceful Restart state: Ready
Peer GR restart time: 120000 ms Peer GR recovery time: 0 ms
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!