在ldp協議中實現lsp平滑切換的方法及系統的制作方法
【專利摘要】本發明公開了一種在LDP協議中實現LSP平滑切換的方法及系統,涉及通信技術中的標簽分發和標簽交換領域。該方法包括:通過LDP實現LSP保持定時器;當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器;在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,當前路由器的LDP更新LSP;否則當前路由器的LDP刪除原有的LSP。本發明不僅適用范圍比較廣泛,能夠滿足用戶的需求,而且使用成本較低,性價比較高。
【專利說明】在LDP協議中實現LSP平滑切換的方法及系統
【技術領域】
[0001]本發明涉及通信技術中的標簽分發和標簽交換領域,具體涉及一種在LDP協議中實現LSP平滑切換的方法及系統。
【背景技術】
[0002]LDP(Label Distribut1n Protocol,標簽分發協議)是一種在MPLS (Mult1-Protocol Label Switching,多協議標簽交換)中使用的標簽分發協議,LDP用于控制LSP(Label Switched Path,標簽交換路徑)的建立和刪除。LDP能夠通過在RFC5036 (LDP Specificat1n)中定義的 3 個屬性:標簽發布方式(Label AdvertisementMode)、標簽分配控制方式(Label Distribut1n Control Mode)、標簽保留方式(LabelRetent1n Mode)來定制LSP的建立過程。
[0003]標簽發布方式是指LSR(Label Switched Router,標簽交換路由器)是否需要收到上游的標簽請求消息才進行標簽分配與分發的處理方式,標簽發布方式分為以下2種:
[0004](I)下游自主方式(Downstream Unsolicited):是指對于一個特定的FEC (Forwarding Equivalence Class,轉發等價類),LSR無須從上游獲得標簽請求消息即進行標簽分配與分發。
[0005](2)下游按需方式(Downstream on Demand):是指對于一個特定的FEC, LSR獲得標簽請求消息之后才進行標簽分配與分發。
[0006]標簽分配控制方式是指LSR何時向上游LSR通告標簽映射的處理方式,標簽分配控制方式分為以下兩種:
[0007](I)獨立標簽分配控制(Incbpendent):是指本地LSR可以自主地分配一個標簽綁定到某個FEC,并通告給上游LSR,而無需等待下游的標簽。
[0008](2)有序標簽分配控制(Ordered):是指對于LSR上某個FEC的標簽映射,只有當該LSR已經具有此FEC下一跳的標簽映射消息、或者該LSR就是此FEC的出節點時,該LSR才能夠向上游發送此FEC的標簽映射。
[0009]標簽保留方式是指LSR對收到的、且暫不需要的標簽映射的處理方式,標簽保留方式分為以下兩種:
[0010](I)自由標簽保留方式(Liberal):是指對于從鄰居LSR收到的標簽映射,無論鄰居LSR是不是自己的下一跳均保留。
[0011](2)保守標簽保留方式(Conservative):是指對于從鄰居LSR收到的標簽映射,只有當鄰居LSR是自己的下一跳時才保留。
[0012]目前在應用LDP技術的組網環境中,標簽發布方式采用下游自主方式;標簽分配控制方式采用有序標簽控制方式;標簽保留方式采用自由標簽保留方式。這種配置方式也是目前IPRAN(IP Rad1 Access Network, IP化的無線接入網)網絡中使用的方式。
[0013]在應用LDP技術的組網環境中,經常會出現存在主備鏈路的情況。當主用鏈路故障時,業務從主鏈路LSP切換到備鏈路LSP ;當主用鏈路故障消除時,業務從備鏈路LSP切回主鏈路LSP。為了在主用鏈路故障和恢復的過程中減小業務流量損失,需要縮短主備鏈路LSP之間的切換時間,即業務能夠在主備鏈路LSP之間平滑切換。
[0014]參見圖1所示,常見的LDP組網方式為4臺順次連接的路由器(Rl?R4),R2和R3之間設置有I臺備用路由器R5。LDP組網方式在初始狀態時,LDP組網方式采用主鏈路LSP,其路徑為R1-R2-R3-R4。R2和R3之間的鏈路(主鏈路)發生故障時,R2上到R4的路由的下一跳由R3變為R5 ;由于LDP建立的LSP需要和路由協議保持一致,因此LSP由主鏈路變為備鏈路LSP,其路徑為:R1-R2-R5-R3-R4。R2和R3之間的鏈路(主鏈路)故障消除時,R2上到R4的路由的下一跳由R5又變回R3 ;因為LDP建立的LSP需要和路由保持一致,所以此時LDP需要將LSP更新為:R1-R2-R3-R4。但是LDP需要在R2和R3之間重新建立LDP會話交換標簽映射消息來建立新的LSP, IGP(Inter1r Gateway Protocol,內部網關協議)協議路由的變化比LDP會話建立要快很多,進而導致刪除舊的LSP與建立新的LSP之間存在一定的時間間隔(即業務中斷時間)。
[0015]為了縮短業務中斷時間,RFC 5443 (LDP IGP Synchronizat1n,同步)提出了一種解決方案:LDP IGP同步,即在LDP和IGP協議之間建立同步機制,抑制路由的變化,減緩路由的變化速度。例如當R2和R3之間鏈路的故障消除時,IGP抑制路由變化,等待LDP完成LDP會話建立和標簽映射信息交換后,通告IGP協議,這時IGP路由才變化。
[0016]LDP IGP同步在實現過程中通常需要3個定時器:IGP保持Down狀態定時器、IGP保持最大代價定時器、等待LDP完成標簽分發建立新LSP的定時器。LDP IGP同步有效地縮短了業務中斷時間。
[0017]參見圖2所示,LDP常見的環形拓撲組網方式為順次首尾相連的設備B1、A1?A4、B2 ;為了使所有的A (Al?A4)設備能夠形成主備鏈路雙歸接入BI和B2,所以會將BI和B2之間的鏈路架設代價較大。以A2為例,A2主鏈路接入BI,路徑為:A2-A1-B1。A2備鏈路接入B2,路徑為:A2-A3-A4-B2。環形拓撲組網方式在初始狀態時,BI到A2的LSP路徑為:B1-A1-A2,當Al和A2之間的鏈路出現故障,BI到A2的LSP路徑變為:B1-B2-A4-A3_A2。
[0018]當Al和A2之間的故障消除后,在配置了 LDP IGP同步情況下,因為LDP是根據路由信息來判斷上下游節點,LDP只會給上游節點分配標簽,而不會給下游節點分配標簽,而且Al到A2的路由下一跳為BI,即BI為Al至A2的下游節點,因為Al的IGP不會收到LDP通告,Al不會改變路由,所以Al的LDP不會給BI分配至A2的標簽。BI到A2的LSP:B1-A1-A2始終無法建立成功,由于使用LDP IGP同步時,LDP新建LSP時必須依賴IGP改變路由,而IGP改變路由又需要依賴LDP通告新建LSP,因此在圖2中的環形拓撲組網方式使用LDP IGP同步會出現死鎖情況,LDP IGP同步無法應用。
[0019]綜上所述,雖然LDP IGP同步在絕大部分場景下可以有效地縮短業務中斷時間(舊LSP和新LSP切換的時間間隔),但是LDP IGP同步無法縮短圖2中的環形拓撲組網方式的業務中斷時間,應用效果較差。因此,LDP IGP同步的適用范圍比較單一,難以滿足用戶的需求。
【發明內容】
[0020]針對現有技術中存在的缺陷,本發明的目的在于提供一種在LDP協議中實現LSP平滑切換的方法及系統,不僅適用范圍比較廣泛,能夠滿足用戶的需求,而且使用成本較低,性價比較高。
[0021]為達到以上目的,本發明采取的技術方案是:一種在LDP協議中實現LSP平滑切換的方法,包括以下步驟:
[0022]A、通過LDP實現LSP保持定時器,在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器;
[0023]B、當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器;
[0024]在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP ;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
[0025]在上述方案的基礎上,步驟B中當路由器的路由發生變化之后,還包括以下步驟:判定當前路由器的LDP收到下一跳的標簽,當前路由器的LDP更新LSP。
[0026]在上述方案的基礎上,步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到路由更新消息;判定當前路由器的LDP未收到下一跳的標簽,確定需要配置LSP保持定時器,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器;
[0027]在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP通信;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP,結束;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
[0028]在上述方案的基礎上,所述確定當前路由器的LDP收到路由更新消息之后,還包括以下步驟:判定當前路由器的LDP收到下一跳的標簽,當前路由器的LDP更新LSP,結束。
[0029]在上述方案的基礎上,所述判定當前路由器的LDP未收到下一跳的標簽之后,還包括以下步驟:確定不需要配置LSP保持定時器,當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
[0030]在上述方案的基礎上,步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到標簽映射消息;判定當前路由器的LDP收到的標簽映射消息來自當前路由的下一跳對應的節點;判定當前路由器的LSP保持定時器已經啟動,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP,結束。
[0031]在上述方案的基礎上,所述確定當前路由器的LDP收到標簽映射消息之后,還包括以下步驟:判定當前路由器的LDP收到的標簽映射消息不是來自當前路由的下一跳對應的節點,結束。
[0032]在上述方案的基礎上,所述判定當前路由器的LDP收到的標簽映射消息來自當前路由的下一跳對應的節點之后,還包括以下步驟:判定當前路由器的LSP保持定時器未啟動,當前路由器的LDP更新LSP,結束。
[0033]在上述方案的基礎上,步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到路由刪除消息;判斷當前路由器的LSP保持定時器是否已經啟動,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
[0034]一種實現上所述方法的在LDP協議中實現LSP平滑切換的系統,包括LSP保持定時器、定時器設置模塊和定時器使用模塊;
[0035]所述定時器設置模塊用于:在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器;
[0036]所述定時器使用模塊用于:當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器;
[0037]在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP ;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
[0038]與現有技術相比,本發明的優點在于:
[0039](I)本發明使用時,當路由器的路由發生變化時(例如鏈路出現故障、鏈路修復等),LDP會收到路由更新消息,當新的LSP無法建立時,本發明能夠啟動LSP保持定時器、并通過LSP保持定時器保持原有的LSP,進而使得路由器通過原有的LSP承載業務流量,進而縮短業務中斷時間。當路由器的LDP建立新的LSP后,本發明能夠停止LSP保持定時器,通過新的LSP承載業務流量。
[0040]因此,本發明能夠在路由器的路由發生變化時(例如鏈路出現故障、鏈路修復等),仍然通過原有的LSP承載業務流量,不僅顯著的縮短了業務中斷時間,而且與現有技術中無法通過LDP IGP同步縮短環形拓撲組網方式的業務中斷時間相比,本發明能夠在還沒有建立新的LSP的情況下,通過原有的LSP承載業務流量,能夠適用于環形拓撲組網方式,不僅適用范圍比較廣泛,而且能夠滿足用戶的需求。
[0041](2)與現有技術中LDP IGP同步實現時需要3個定時器相比,本發明只需要一個LSP保持定時器,不僅使用成本較低,而且本發明縮短業務中斷時間的效果與LDP IGP同步的效果相同,本發明的性價比較高。
【專利附圖】
【附圖說明】
[0042]圖1為【背景技術】中能夠應用LDP IGP同步場景的拓撲圖;
[0043]圖2為【背景技術】中無法應用LDP IGP同步場景的拓撲圖;
[0044]圖3為本發明中實施例中LDP處理路由更新消息的流程圖;
[0045]圖4為本發明中實施例中LDP處理標簽映射消息的流程圖;
[0046]圖5為本發明中實施例中LDP處理路由刪除消息的流程圖。
【具體實施方式】
[0047]本發明實施例提供一種在LDP協議中實現LSP平滑切換的方法,包括以下步驟:
[0048]S1:通過LDP實現可配置時間的LSP保持定時器,在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器。
[0049]S2:當路由器的路由發生變化時,判斷當前路由器的LDP是否收到下一跳的標簽,若是,當前路由器的LDP更新LSP ;否則設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器。在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量。判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP ;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
[0050]步驟S2具體包括以下步驟:
[0051]S210:當路由器的路由發生變化時,確定當前路由器的LDP收到的消息,若當前路由器的LDP收到路由更新消息,轉到步驟S220 ;若當前路由器的LDP收到標簽映射消息,轉到步驟S230 ;若當前路由器的LDP收到路由刪除消息,轉到步驟S240。
[0052]S220:判斷當前路由器的LDP是否收到下一跳的標簽,若不是,轉到步驟S221 ;否則轉到步驟S224。
[0053]S221:確定是否需要配置LSP保持定時器,若是,轉到步驟S222,否則轉到步驟S223。
[0054]S222:設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器。在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP通信;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,轉到步驟S224 ;否則轉到步驟S223。
[0055]S223:當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
[0056]S224:當前路由器的LDP更新LSP,結束。
[0057]S230:判斷當前路由器的LDP收到的標簽映射消息是否來自下游對等體(即路由下一跳對應的節點),若是,轉到步驟S231,否則結束。
[0058]S231:判斷當前路由器的LSP保持定時器是否已經啟動,若是,轉到步驟S232,否則轉到步驟S233。
[0059]S232:停止當前路由器的LSP保持定時器,轉到步驟S233。
[0060]S233:當前路由器的LDP更新LSP,結束。
[0061]S240:判斷當前路由器的LSP保持定時器是否已經啟動,若是,轉到步驟S241,否則轉到步驟S242。
[0062]S241:停止當前路由器的LSP保持定時器,轉到步驟S242。
[0063]S242:當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
[0064]本發明實施例的工作原理如下:
[0065]通常發生鏈路故障和鏈路修復時,路由會發生變化。若目的地址依然有路由可達,LDP會收到路由更新消息;若目的地址沒有路由可達,LDP會收到路由刪除消息。只有路由更新消息,但沒有新LSP標簽的情況下,才需要啟動定時器;收到路由刪除消息、標簽映射消息時,在已啟動定時器情況下,需要取消已啟動的定時器,否則會造成資源殘留或異常。
[0066]路由器的LDP收到標簽映射消息時,若已經啟動LSP保持定時器,則需要取消LSP保持定時器,進而能夠避免在業務流量已經從舊LSP切換到新LSP后,LSP保持定時器超時而刪除LSP的情況。
[0067]路由器的LDP收到路由刪除消息時,若已經啟動LSP保持定時器,則需要先取消LSP保持定時器,在刪除LSP,進而能夠避免LSP刪除后,還有相關的LSP保持定時器運行。
[0068]本發明實施例還提供一種實現上述方法的在LDP協議中實現LSP平滑切換的系統,包括LSP保持定時器、定時器設置模塊和定時器使用模塊。
[0069]定時器設置模塊用于:在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器。
[0070]定時器使用模塊用于:當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器。
[0071]在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP ;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
[0072]本發明不局限于上述實施方式,對于本【技術領域】的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發明的保護范圍之內。本說明書中未作詳細描述的內容屬于本領域專業技術人員公知的現有技術。
【權利要求】
1.一種在LDP協議中實現LSP平滑切換的方法,其特征在于,包括以下步驟: A、通過標簽分發協議LDP實現標簽交換路徑LSP保持定時器,在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器; B、當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器; 在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
2.如權利要求1所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:步驟B中當路由器的路由發生變化之后,還包括以下步驟:判定當前路由器的LDP收到下一跳的標簽,當前路由器的LDP更新LSP。
3.如權利要求1所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到路由更新消息;判定當前路由器的LDP未收到下一跳的標簽,確定需要配置LSP保持定時器,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器; 在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP通信;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP,結束;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
4.如權利要求3所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:所述確定當前路由器的LDP收到路由更新消息之后,還包括以下步驟:判定當前路由器的LDP收到下一跳的標簽,當前路由器的LDP更新LSP,結束。
5.如權利要求3所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:所述判定當前路由器的LDP未收到下一跳的標簽之后,還包括以下步驟:確定不需要配置LSP保持定時器,當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
6.如權利要求1所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到標簽映射消息;判定當前路由器的LDP收到的標簽映射消息來自當前路由的下一跳對應的節點;判定當前路由器的LSP保持定時器已經啟動,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP,結束。
7.如權利要求6所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:所述確定當前路由器的LDP收到標簽映射消息之后,還包括以下步驟:判定當前路由器的LDP收到的標簽映射消息不是來自當前路由的下一跳對應的節點,結束。
8.如權利要求6所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:所述判定當前路由器的LDP收到的標簽映射消息來自當前路由的下一跳對應的節點之后,還包括以下步驟:判定當前路由器的LSP保持定時器未啟動,當前路由器的LDP更新LSP,結束。
9.如權利要求1所述的在LDP協議中實現LSP平滑切換的方法,其特征在于:步驟B具體包括以下步驟:當路由器的路由發生變化時,確定當前路由器的LDP收到路由刪除消息;判斷當前路由器的LSP保持定時器是否已經啟動,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP,結束。
10.一種實現權利要求1至9任一項所述方法的在LDP協議中實現LSP平滑切換的系統,其特征在于:包括LSP保持定時器、定時器設置模塊和定時器使用模塊; 所述定時器設置模塊用于:在需要使用的每I臺路由器的LDP節點上均設置LSP保持定時器; 所述定時器使用模塊用于:當路由器的路由發生變化時,判定當前路由器的LDP未收到下一跳的標簽,設定LSP保持定時器的定時時間,啟動當前路由器的LSP保持定時器;在定時時間內,通過LSP保持定時器保持原有的LSP,當前路由器與其他路由器之間通過原有的LSP承載業務流量;判斷定時時間內當前路由器的LDP是否收到下一跳的標簽,若是,停止當前路由器的LSP保持定時器,當前路由器的LDP更新LSP ;否則當前路由器的LDP刪除原有的LSP,等待創建新的LSP。
【文檔編號】H04L12/751GK104253752SQ201410455033
【公開日】2014年12月31日 申請日期:2014年9月9日 優先權日:2014年9月9日
【發明者】高軍, 張峰 申請人:烽火通信科技股份有限公司