本申請要求于2015年5月12日提交的美國專利申請序列No.14/710,533和于2014年8月29日提交的美國臨時專利申請序列No.62/044,161的權益,通過引用將這兩個申請的公開整體上合并于此。
技術領域:
本文描述的主題涉及使用從層2導出的拓撲信息來執(zhí)行層3路由。
背景技術:
:在層2拓撲域(諸如最短路徑橋接(SPB)或生成樹協(xié)議(STP)域)中,層2節(jié)點對直接連接的設備執(zhí)行層2分組轉(zhuǎn)發(fā)。為了在這樣的網(wǎng)絡中執(zhí)行層3路由,層2節(jié)點將分組轉(zhuǎn)發(fā)到層3路由器,該層3路由器通常在VLAN之間路由(routes)分組。因此,分組必須穿過層2拓撲域到達層3路由器,從層3路由器穿過層2拓撲域返回,并到達目的地。這種對2層網(wǎng)絡的雙重遍歷不是期望的,因為它增加了轉(zhuǎn)發(fā)每個分組所需的時間。此外,可以在層3路由器上運行路由器冗余協(xié)議來為網(wǎng)絡中的主機和服務器提供冗余。在數(shù)以千計的VLAN上支持的成千上萬個用戶的網(wǎng)絡中,在所有VLAN上潛在地運行路由器冗余協(xié)議會是衰弱的(debilitating),并降低網(wǎng)絡性能以及增加在運行協(xié)議的路由器上的CPU利用率。因此,存在對改進的用于虛擬架構路由的方法、系統(tǒng)和計算機可讀介質(zhì)的需求。技術實現(xiàn)要素:本文所述的主題包括用于虛擬架構路由的方法、系統(tǒng)和計算機可讀介質(zhì)。一種系統(tǒng)包括用于提供對層3路由的訪問的至少一個虛擬架構路由(VFR)服務路由器中介(agent)。該系統(tǒng)還包括至少一個VFR代理轉(zhuǎn)發(fā)器設備,用于對穿過虛擬架構路由域內(nèi)的虛擬局域網(wǎng)(VLAN)的分組執(zhí)行層3路由,并且用于向由至少一個VFR服務路由器中介提供的地址轉(zhuǎn)發(fā)其中層3地址解析失敗的分組。如本文所使用的,術語“VFR域”是指如本文所述的執(zhí)行虛擬架構路由的VFR代理轉(zhuǎn)發(fā)器設備和關聯(lián)的服務路由器的全部或子集。VFR域內(nèi)的節(jié)點可以參與層2拓撲發(fā)現(xiàn)協(xié)議,以了解域中的其它節(jié)點。本文所述的主題可以使用其上存儲有可執(zhí)行指令的非暫態(tài)計算機可讀介質(zhì)來實現(xiàn),所述可執(zhí)行指令在由計算機的處理器執(zhí)行時控制計算機執(zhí)行步驟。用于實現(xiàn)本文所述的主題的示例性計算機可讀介質(zhì)可以包括芯片存儲器設備、盤存儲器設備、可編程邏輯設備和專用集成電路。此外,實現(xiàn)本文所述的主題的計算機可讀介質(zhì)可以位于單個設備或計算平臺上,或者可以分布在多個設備或計算平臺上。附圖說明現(xiàn)在將參考附圖描述本文所述的主題的優(yōu)選實施例,其中:圖1是示出根據(jù)本文所述的主題的實施例的常規(guī)路由模型的網(wǎng)絡圖;圖2是示出根據(jù)本文所述的主題的實施例的、用于虛擬架構路由的系統(tǒng)的網(wǎng)絡圖;圖3是示出根據(jù)本文所述的主題的實施例的、用于VFR代理轉(zhuǎn)發(fā)器設備的示例性體系架構的框圖;圖4是示出根據(jù)本文所述的主題的實施例的、用于與VFR代理轉(zhuǎn)發(fā)器設備交互的服務路由器的示例性體系架構的框圖;圖5是示出根據(jù)本文所述的主題的實施例的虛擬架構路由的示例性處理的流程圖;及圖6A-圖6D示出了在最短路徑橋接網(wǎng)絡上的不同路由方法和關聯(lián)的鏈路成本。具體實施方式概述虛擬架構路由–本文所述的主題在任何層2網(wǎng)絡基礎結構上提供高度可擴展和高效的虛擬化層3路由。該架構可以從單個機箱擴展到使用任何層2協(xié)議的設備的大集合,以形成其拓撲。層2拓撲協(xié)議可以是形成單路徑(如生成樹)或多路徑服務(如最短路徑橋接(SPB))的協(xié)議。在本文所述的主題的一個實現(xiàn)中,層2服務將所有VLAN增殖到VFR域內(nèi)被稱為VFR代理轉(zhuǎn)發(fā)器的分組轉(zhuǎn)發(fā)設備。本文所述的主題的一個方面是提供通過充分利用(leveraging)層2基礎結構的拓撲協(xié)議代替層3拓撲協(xié)議來最高效地利用層2基礎結構的路由解決方案。興趣在于那些支持多個出口路徑、具有所有VLAN的知識并允許主機在整個層2域中自由移動的層2服務。虛擬架構路由支持全網(wǎng)絡的分布式虛擬路由系統(tǒng)的建立,其中系統(tǒng)中的所有設備作為單個共同的(collective)層3轉(zhuǎn)發(fā)機制工作。在這樣的實現(xiàn)中,路由變成層2域的集成服務,并且更加優(yōu)化了從源到最終目的地的分組轉(zhuǎn)發(fā)。例如,最短路徑橋接或SPB是由IEEE802定義的層2技術,它增強了IEEE802生成樹協(xié)議以利用多個路徑,并且定義SPBV(SPB的一個類型)以服務多個VLAN。在SPBV網(wǎng)絡中,路由器附連在SPBV網(wǎng)絡的邊緣處以轉(zhuǎn)發(fā)客戶VLAN之間的流量。在網(wǎng)絡邊緣處的路由器接收來自網(wǎng)絡中的節(jié)點的IP分組、對分組進行路由、確定對于分組的適當VLAN,并將分組轉(zhuǎn)發(fā)回到不同VLAN上的層2網(wǎng)絡中。在層2網(wǎng)絡內(nèi)的分組轉(zhuǎn)發(fā)節(jié)點不具有任何層3路由能力。因為路由器接收分組并將分組轉(zhuǎn)發(fā)回到相同的層2網(wǎng)絡中,所以路由器常常被稱為“單臂路由器”。雖然這種單臂路由功能是可行的,但它不提供通過網(wǎng)絡的最直接路徑。如圖1中所示,經(jīng)路由的分組從一個VLAN上的SPB節(jié)點A100離開層2網(wǎng)絡到連接路由器(傳統(tǒng)路由器X102),該路由器將分組轉(zhuǎn)發(fā)到相同的層2網(wǎng)絡內(nèi)的另一個VLAN上,由此穿過層2網(wǎng)絡兩次。此外,路由器102和第二路由器104可以在每個VLAN接口上運行虛擬路由冗余協(xié)議(VRRP),以支持用于客戶端主機的冗余。VRRP廣告消耗參與路由器的網(wǎng)絡帶寬和CPU資源,尤其是當擴展到數(shù)百甚至數(shù)千個VLAN時。在圖1中,節(jié)點100、106和108形成層2轉(zhuǎn)發(fā)域。每個節(jié)點100、106和108運行SPB或SPBV來支持多個VLAN。如上所述,當節(jié)點100、106或108之一接收到需要路由的分組時,分組被轉(zhuǎn)發(fā)到傳統(tǒng)路由器102和104之一,該傳統(tǒng)路由器執(zhí)行層3路由查找并將經(jīng)路由的分組轉(zhuǎn)發(fā)回到VLAN上的層2網(wǎng)絡中,這些VLAN不同于由接收到的分組所使用的那些VLAN。然后,層2節(jié)點100、106和108使用層2轉(zhuǎn)發(fā)將分組傳送到它們的層2目的地(主機)。例如,在圖1中,來自VLAN2上的主機B110的分組可以被層3尋址到主機D114。對于這樣的分組,主機B110將分組發(fā)送到SPB節(jié)點A100,層2將分組切換(轉(zhuǎn)發(fā))到相同VLAN(VLAN1)上的層3路由器102。層3路由器102執(zhí)行層3地址查找,并在與目的地D114關聯(lián)的不同VLAN(VLAN2)上轉(zhuǎn)發(fā)分組。SPB節(jié)點B106層2將分組切換到VLAN116上的目的地D。因此,源自主機B110的分組兩次穿過層2網(wǎng)絡以到達目的地D114。對于來自主機A118的分組發(fā)生類似的路由情景。在圖1所示的示例中,被層3尋址到目的地G120的源自主機A118的分組離開VLAN1上的主機A。SPB節(jié)點100接收分組并且將分組層2轉(zhuǎn)發(fā)到相同VLAN(VLAN1)上的路由器102。路由器102對分組執(zhí)行層3地址查找并且將分組轉(zhuǎn)發(fā)到不同VLAN上的目的地G120。在這種情況下,分組沒有穿過層2網(wǎng)絡兩次,但是所有需要路由的分組都通過層3路由器102,對于離開層2網(wǎng)絡的分組,該層3路由器102可能是瓶頸。因此,在圖1中,當主機B110向主機D114發(fā)送分組時,到主機D114的路徑必須穿過傳統(tǒng)路由器(傳統(tǒng)路由器X102或傳統(tǒng)路由器Y104),從而導致對于每個分組有3跳。從主機C122到主機E124的路徑甚至比先前的示例更加低效。在圖1中,離開主機E124的分組去往VLAN2上的SPBC108。SPBC108不能解析分組中的IP地址,因此SPBC108將分組層2切換到SPBA100。SPBA100同樣不能解析分組中的層3或IP地址,因此SPBA100將分組層2切換到傳統(tǒng)路由器102。傳統(tǒng)路由器102解析分組中的層3地址,并將分組轉(zhuǎn)發(fā)到VLAN1上的SPBB106。SPBB106將分組轉(zhuǎn)發(fā)到VLAN1上的SPBC108。SPBC108將分組轉(zhuǎn)發(fā)到主機E124。因此,盡管主機C和E本地連接到相同的SPB節(jié)點108,從C到E的分組從源到目的地要經(jīng)過5跳。除了圖1中所示的路由低效之外,還可以由每個VLAN上的路由器102和104運行VRRP。隨著網(wǎng)絡在數(shù)以千計的VLAN上支持成千上萬個用戶,在所有VLAN上潛在地運行VRRP會是衰弱的,并且降低網(wǎng)絡性能以及增加在運行VRRP協(xié)議的路由器上的CPU利用率。本文所述的用于虛擬架構路由的主題將分組直接路由到目的地,并且不需要VRRP協(xié)議來支持路由器冗余。VFR在具有用于直接連接的節(jié)點的層3路由能力的VFR代理轉(zhuǎn)發(fā)器中提供集成路由服務。VFR利用層2特征(諸如VLAN傳播、多路徑拓撲、快速收斂和MAC可達性)來提供消除或減少對路由協(xié)議的需要的更簡單和高效的路由服務。通過消除或減少對路由協(xié)議的需要,本文所述的主題可以擴展到支持跨可以在復雜L2域中存在的數(shù)以千計的VLAN接口的路由。消除或減少對L3路由協(xié)議的需要還消除或減少了對在L2拓撲改變和L3拓撲改變之間發(fā)生的交互的需要。虛擬架構路由以以下原理操作:層2域內(nèi)的主機離其它主機最多只有一個路由跳。假設所有VLAN接口都在每個邊緣設備上,VFR代理轉(zhuǎn)發(fā)器可以使用層2服務直接路由到其目的地,以執(zhí)行多路徑和MAC可達性。只有當VFR代理轉(zhuǎn)發(fā)器不能路由時,它才必須轉(zhuǎn)發(fā)到可以路由的邊界或服務路由器。在某種意義上,這種方法在整個SPB域中分布有限的路由,從而對于退出VFR域的分組在幾個選定的服務路由器上留下完整的IP轉(zhuǎn)發(fā)。本文所使用的術語“服務路由器”是指包括層3路由功能和VFR服務路由器中介功能(在下文定義)的設備。術語“路由器”是指包括層3路由功能但不一定包括VFR服務路由器中介功能的設備。當VFR服務路由器中介功能被添加到路由器時,該路由器變成服務路由器。VFR代理轉(zhuǎn)發(fā)器設備可以利用由VRRP描述的虛擬IP尋址概念,從而允許在參與的設備上部署簡單和共享的路由配置。雖然啟用了VFR的設備可以與允許經(jīng)路由的分組通過層2域運送的路由協(xié)議共存,但是VFR服務最適合于通常在需要路由的企業(yè)網(wǎng)絡和數(shù)據(jù)中心中使用的邊緣路由情景,包括使用多個VLAN的配置。圖2示出了在使用SPB作為層2服務的層2節(jié)點上啟用的VFR代理轉(zhuǎn)發(fā)器設備。在圖2中,節(jié)點100A、106A和108A是VFR代理轉(zhuǎn)發(fā)器設備,該VFR代理轉(zhuǎn)發(fā)設備代表一個或多個服務路由器102A和104A在VFR域內(nèi)的VLAN之間執(zhí)行單跳層3路由,并將VFR代理轉(zhuǎn)發(fā)器100A、106A和108A不能解析(基于缺乏對目的地的了解而不能轉(zhuǎn)發(fā))的分組重定向到用作目的地的服務路由器102A和104A之一。服務路由器102A和104A是集成了層2節(jié)點并且具有完全路由器能力的邊界路由器??梢酝ㄟ^層2拓撲協(xié)議來廣告路由器102A和104A的存在以表示外部路由能力,即,對于不能由VFR代理轉(zhuǎn)發(fā)器設備100A、106A和108A路由的分組,服務路由器102A或104A可以是默認路由。VFR代理轉(zhuǎn)發(fā)器設備100A、106A和108A可以通過層2協(xié)議字段、通過另一個OSI層的字段、通過專有消息傳送或靜態(tài)配置來發(fā)現(xiàn)路由器102A和104A。這使得代理轉(zhuǎn)發(fā)器100A、106A和108A能夠維持可用路由器及其對應MAC地址的列表,并由此直接支持路由器冗余,而不需要每個VLAN上都有VRRP。如下面將詳細描述的,在一個實施例中,VFR服務路由器中介可以將服務路由器的層2地址傳送到VFR代理轉(zhuǎn)發(fā)器。此外,由層2拓撲或其它協(xié)議攜帶的路由能力信息可以包含優(yōu)先級字段,當在轉(zhuǎn)發(fā)平面中選擇路由器MAC時允許VFR代理轉(zhuǎn)發(fā)器100A、106A和108A考慮該優(yōu)先級字段。在上面的SPBV示例中,用來攜帶路由器能力的層2拓撲協(xié)議是支持用于路由器的參數(shù)的中間系統(tǒng)到中間系統(tǒng)(IS-IS)。虛擬架構路由與傳統(tǒng)的路由配置的不同之處在于,VFR代理轉(zhuǎn)發(fā)器100A、106A和108A運行層2拓撲協(xié)議,并且可以對每個設備上的每個VLAN具有完全相同的路由器接口配置。傳統(tǒng)的路由設置要求每個路由器上的每個接口具有不同的IP地址、活動冗余協(xié)議(如VRRP)、和/或靜態(tài)路由配置、和/或L3拓撲協(xié)議(如開放最短路徑優(yōu)先(OSPF))。在圖2中,當VFR代理轉(zhuǎn)發(fā)器設備100A接收到來自主機B110的被層3尋址到VLAN2上的目的地D114的分組時,VFR代理轉(zhuǎn)發(fā)器設備100A對分組執(zhí)行層3地址查找,而不是自動將分組轉(zhuǎn)發(fā)到服務路由器102A。因為可通過直接連接到VFR代理轉(zhuǎn)發(fā)器設備100A的VFR代理轉(zhuǎn)發(fā)器設備106A而到達目的地D114,所以地址查找解析到目的地D114,并且VFR代理轉(zhuǎn)發(fā)器設備100A將分組轉(zhuǎn)發(fā)到VLAN1上的VFR代理轉(zhuǎn)發(fā)器設備106A,其中VLAN1與接收分組的VLAN2不同。因此,除了執(zhí)行層3地址查找之外,VFR代理轉(zhuǎn)發(fā)器設備100A還對尋址到下一跳在VFR轉(zhuǎn)發(fā)域內(nèi)的主機的分組執(zhí)行VLAN切換。VFR代理106A從VLAN1上的VFR代理轉(zhuǎn)發(fā)器設備100A接收分組,并且執(zhí)行層2MAC橋接操作,以將分組轉(zhuǎn)發(fā)到同一VLAN(VLAN1)上的目的地D114。從主機B110到主機D114的分組使用VFR轉(zhuǎn)發(fā)穿過2跳(一個層3路由器跳和一個層2橋接跳)。這可以與圖1中的示例形成對比,在圖1中,從主機B到主機D的分組穿過3跳(層2橋接跳、繼之以層3路由器跳,繼之以層2橋接跳)。在另一個示例中,當主機A118將VLAN122上的被層3尋址到目的地G120的分組發(fā)送到VFR代理轉(zhuǎn)發(fā)器設備100A時,VFR代理轉(zhuǎn)發(fā)器設備100A嘗試執(zhí)行層3地址查找,并確定它不具有為目的地G提供的層3地址。因此,VFR代理轉(zhuǎn)發(fā)器設備100A將分組轉(zhuǎn)發(fā)到在相同VLAN(VLAN1)上的服務路由器102A。服務路由器102A對分組執(zhí)行層3地址查找、解析分組的IP地址,并將分組轉(zhuǎn)發(fā)到目的地G120。在將IP地址不能解析的分組轉(zhuǎn)發(fā)到服務路由器102A時,由VFR代理轉(zhuǎn)發(fā)器設備100A執(zhí)行的操作不同于圖1中所示的轉(zhuǎn)發(fā)機制。在圖1中,需要層3地址查找的所有分組都被轉(zhuǎn)發(fā)到其中一個服務路由器。在圖2中,只有IP地址不能被VFR代理100A解析的分組才被發(fā)送到服務路由器102A。用于將分組發(fā)送到服務路由器102A的機制是重定向到相同VLAN上的服務路由器MAC地址。在另一個路由示例中,離開主機C122的、被層3尋址到主機E124的分組僅通過網(wǎng)絡中的單跳,因為VFR代理108A對分組執(zhí)行層3地址查找并將分組從主機C轉(zhuǎn)發(fā)到主機E。這可以與圖1中所示的傳統(tǒng)情況形成對比,在圖1中,這樣的分組在網(wǎng)絡中穿過5跳。應當注意到,對于從VFR域的外部進入VFR域的分組,第一跳將是層3路由器跳(到路由器、到VFR代理或者到目的地主機(如在上述C-E的情況中一樣))。在圖1中所示的SPB網(wǎng)絡中,對于來自VFR域的外部的分組的第一跳是到路由器或者到SPB域中的另一個節(jié)點的層2橋接跳。圖1和圖2中所示的結構之間的另一個區(qū)別在于,在圖1中,傳統(tǒng)路由器102和104以主動備用配置起作用,而在圖2中,路由器102A和104A以主動-主動配置起作用。因此,路由器102A和104A不需要運行VRRP或其它路由器冗余協(xié)議,這減少了路由器102A和104A上的處理負擔。以下是本文所述的主題的示例性特征。但是,本文所述的主題不限于包括這些特征的任意組合的設備、系統(tǒng)或方法。(1)VFR代理轉(zhuǎn)發(fā)的概念虛擬架構路由是支持建立全網(wǎng)絡的分布式虛擬路由系統(tǒng)的概念。VFR系統(tǒng)中的分組轉(zhuǎn)發(fā)節(jié)點支持使用VFR代理的層3轉(zhuǎn)發(fā),并且作為單個共同的轉(zhuǎn)發(fā)機制工作。通過在VLAN和層2連接域內(nèi)的層2轉(zhuǎn)發(fā)(MAC橋接)之間執(zhí)行分組的單跳層3路由,VFR代理轉(zhuǎn)發(fā)器設備代表服務路由器進行服務,由此利用通過網(wǎng)絡的最高效的路徑。(2)公共路由接口配置在一個示例性實現(xiàn)中,層2架構確保每個VLAN存在于VFR轉(zhuǎn)發(fā)域內(nèi)的每個節(jié)點上。可以使用相同的配置命令集合或者公共的文件來實現(xiàn)具有公共路由接口配置,其中相同的配置命令集合或者公共的文件可以被復制到所有VFR代理轉(zhuǎn)發(fā)器設備,或者使用簡單網(wǎng)絡管理協(xié)議(SNMP)管理信息庫(MIBS)、可擴展標記語言(XML)模式經(jīng)由管理系統(tǒng)安裝,或者通過標準協(xié)議或包括對標準協(xié)議的私有擴展的私有協(xié)議來分布。與在傳統(tǒng)路由網(wǎng)絡中通常發(fā)現(xiàn)的那些配置相比,在所有VFR代理轉(zhuǎn)發(fā)設備上部署公共路由接口配置的益處是行政管理負擔的減少、更快的部署和減少的配置錯誤??赡艿氖?,軟件定義網(wǎng)絡(SDN)或L3協(xié)議(如邊界網(wǎng)關協(xié)議(BGP))可以分發(fā)配置和/或公共轉(zhuǎn)發(fā)表。在這種環(huán)境中,這可以導致在VFR代理轉(zhuǎn)發(fā)器設備上的較少配置或沒有配置。另外,有可能在單個設備中進行改變,并允許經(jīng)由現(xiàn)有協(xié)議或新的協(xié)議將該改變傳播到每個VFR代理轉(zhuǎn)發(fā)器設備,從而確保網(wǎng)絡一致性。(3)路由器MAC地址的發(fā)現(xiàn)–在默認情況下,VFR代理轉(zhuǎn)發(fā)將存在于VFR域內(nèi)的所有層2邊緣設備(即,VFR代理轉(zhuǎn)發(fā)器設備)上。VFR代理轉(zhuǎn)發(fā)器設備的分布式轉(zhuǎn)發(fā)平面知道在其不能解析目的地IP地址時要使用的服務路由器集合。然后,分組被轉(zhuǎn)發(fā)到附連到層2域的合適服務路由器的MAC地址之一。在一個示例性實現(xiàn)中,VFR代理轉(zhuǎn)發(fā)器設備利用默認的MAC地址將無法解析的L3分組轉(zhuǎn)發(fā)到服務路由器。用作服務路由器的邊界路由器MAC可以被靜態(tài)地設置或動態(tài)地學習。本文所述的主題的一個方面包括在層2協(xié)議中攜帶路由器能力和優(yōu)先級以支持路由器冗余。例如,SPB使用IS-IS協(xié)議來形成層2拓撲,從而允許攜帶作為LSP廣告中的類型-長度-值(TLV)的路由器能力。對于廣告路由器能力的具有IS-IS協(xié)議能力的節(jié)點,它們的MAC被認為是合格的路由器。VFR代理轉(zhuǎn)發(fā)器設備(也是具有IS-IS協(xié)議能力的節(jié)點)可以了解攜帶這些TLV的路由器集合,并管理可用的服務路由器MAC地址的列表?;谶@個服務路由器和屬性的列表,VFR代理轉(zhuǎn)發(fā)器設備可以使用路由器優(yōu)先級和/或拓撲節(jié)點度量來確定向哪個路由器MAC地址轉(zhuǎn)發(fā)無法解析的主機分組。經(jīng)由該單個機制,路由器冗余和負載平衡都是可能的。當路由器節(jié)點加入或離開網(wǎng)絡時,拓撲協(xié)議通知VFR代理轉(zhuǎn)發(fā)器設備,從而給予VFR代理轉(zhuǎn)發(fā)器設備正確管理其服務路由器集合的能力。(4)虛擬化的默認網(wǎng)關以支持交換架構域內(nèi)的用戶、主機、客戶端和服務器的移動性。VFR代理轉(zhuǎn)發(fā)器設備充當在VFR轉(zhuǎn)發(fā)域內(nèi)識別出的VLAN上的主機的默認網(wǎng)關,而不使用層3協(xié)議或冗余選擇協(xié)議。VFR代理轉(zhuǎn)發(fā)器設備在層2地址表中安裝虛擬MAC,以便接收和轉(zhuǎn)發(fā)去往默認網(wǎng)關的分組。層2域內(nèi)的VFR代理轉(zhuǎn)發(fā)器設備不將虛擬MAC作為源MAC傳播。雖然任何層2拓撲協(xié)議都可以工作,但是在一個示例性實現(xiàn)中,只有單個VFR代理轉(zhuǎn)發(fā)器接收要轉(zhuǎn)發(fā)給給定主機的分組。SPB確保這個行為,而某些基本的跨越(spanning)環(huán)境則可能不能確保。(5)消除層3路由協(xié)議由于層2協(xié)議可以建立多路徑拓撲域,因此在一個示例性實現(xiàn)中,不需要在相同的層2轉(zhuǎn)發(fā)域內(nèi)形成層3路由拓撲。VFR代理轉(zhuǎn)發(fā)器利用多路徑L2拓撲,因為層2域內(nèi)的主機不超過1路由跳遠。此外,在一個示例性實現(xiàn)中,不需要具有如VRRP的路由器冗余協(xié)議,因為在服務路由器的幫助下,邊緣VFR代理轉(zhuǎn)發(fā)器用作該目的。即,可以通過使用攜帶關于路由器能力的附加信息的層2拓撲協(xié)議來提供路由器冗余。圖3是示出根據(jù)本文所述的主題的實施例的、用于VFR代理轉(zhuǎn)發(fā)器設備的示例性體系架構的框圖。參考圖3,VFR代理轉(zhuǎn)發(fā)器設備100A、106A或108A包括至少一個處理器300和至少一個相關聯(lián)的存儲器302。VFR代理轉(zhuǎn)發(fā)器設備100A、106A或108A還包括由(一個或多個)處理器300執(zhí)行或在(一個或多個)處理器300中實施的VFR代理轉(zhuǎn)發(fā)模塊304,用于執(zhí)行本文所述的用于VFR代理轉(zhuǎn)發(fā)的操作。這些操作包括代表服務路由器對穿過VLAN并尋址到虛擬架構路由域內(nèi)的節(jié)點的分組執(zhí)行層3路由,并將層3地址解析失敗的分組層2轉(zhuǎn)發(fā)到服務路由器的層2地址。此外,VFR代理轉(zhuǎn)發(fā)模塊對每個VLAN執(zhí)行分組的層2轉(zhuǎn)發(fā)(通常為IEEE802MAC橋接)。由VFR代理轉(zhuǎn)發(fā)模塊304使用的層3路由信息可以是完全或部分地靜態(tài)配置或半靜態(tài)配置,或者由VFR代理轉(zhuǎn)發(fā)模塊304使用層2或?qū)?拓撲發(fā)現(xiàn)協(xié)議或與拓撲發(fā)現(xiàn)協(xié)議分離的協(xié)議來學習。用于給定VFR代理轉(zhuǎn)發(fā)設備的L3路由信息可以包括對于VFR域內(nèi)的節(jié)點的全部或子集的層3轉(zhuǎn)發(fā)信息。在一個示例中,用于給定VFR代理轉(zhuǎn)發(fā)器設備的L3路由信息可以包括對于VFR代理轉(zhuǎn)發(fā)器設備的單個路由跳內(nèi)的節(jié)點的層3轉(zhuǎn)發(fā)信息。在所示的示例中,VFR代理轉(zhuǎn)發(fā)器還包括層2拓撲協(xié)議模塊306(諸如SPB)以構建底層的層2拓撲。L2拓撲協(xié)議模塊306可以利用層2拓撲發(fā)現(xiàn)協(xié)議(諸如IS-IS)來了解服務路由器的MAC地址。這個模塊還可以包含L2轉(zhuǎn)發(fā)數(shù)據(jù)庫(FDB)。在一個實施例中,VFR代理轉(zhuǎn)發(fā)模塊304可以使用對IS-IS的擴展來了解服務路由器的MAC和/或IP地址。例如,服務路由器中介可以將其VFR能力信息插入到IS-ISLSP-0消息中作為實驗TLV250,并將該消息發(fā)送到層2域中的VFR代理轉(zhuǎn)發(fā)器設備。TLV可以以具有被設置為不在服務中的虛擬架構路由標志而存在,或者TLV可以根本不存在。當特征退出配置并且以若干(可能是三個)LSP刷新間隔的時段發(fā)送特征時,可以使用存在TLV但VFR標志被設置為不在服務中的情況。下面的表1示出了可以包括在TLV250中以支持VFR的示例性字段。表2示出了用以支持VFR的TLV250的標志字段的示例性標志位。表3示出了用以支持VFR的非保留標志位的值。字節(jié)字段描述(默認值)1IS-IS實驗TLV(250)2長度(11)3-5Enterasys/ExtremeOUI(0x00001D)6RaaS子類型(1)7長度(6)8標志(1)9優(yōu)先級(100)10-13唯一IPv4路由器ID(0)是有效的14-33唯一IPv6地址表1:用以支持VFR的TLV250字段01234567RRRRRNVI表2:用以支持VFR的TLV250中的標志字段的標志位位描述(默認)0保留(0)1保留(0)2保留(0)3保留(0)4保留(0)5N(0)–不在服務中,1是不在服務中,0是在服務中6V(0)-IPV6地址,1是存在,0是不存在7I(1)-IPV4地址,1是存在,0是不存在表3:標志位的值在表3中,如果用于TLV250的標志位的位5被設置為“在服務中”,并且位6被設置為“IPv6地址存在”,則接收方VFR代理轉(zhuǎn)發(fā)器設備100A、106A或108A知道IS-IS實驗TLV250包含IPv6地址。將在IS-IS實驗TLV250的字節(jié)14-33中攜帶IPv6地址。當VFR代理轉(zhuǎn)發(fā)器設備100A、106A或108A接收到這種IS-ISTLV時,接收方VFR代理轉(zhuǎn)發(fā)器設備100A、106A或108A更新其層3地址表,以將服務路由器的IPv6地址與路由器默認MAC地址關聯(lián),其中路由器默認MAC地址可以在VFR代理轉(zhuǎn)發(fā)器100A、106A或108A內(nèi)靜態(tài)配置。服務路由器上的無償?shù)腁RP為了避免來自VFR網(wǎng)絡或VFR域內(nèi)的下游VFR代理轉(zhuǎn)發(fā)器設備的未知MAC地址的泛濫,服務路由器可以周期性地向VFR代理轉(zhuǎn)發(fā)器設備發(fā)送無償?shù)腁RP請求,以在過濾器數(shù)據(jù)庫中保持服務路由器的MAC地址,其中過濾器數(shù)據(jù)庫保持了解到的MAC地址以及在其上了解了該地址的物理端口。如果沒有這樣的無償?shù)腁RP請求,由路由器用于ARP消息的并由VFR代理轉(zhuǎn)發(fā)器設備維護的MAC地址將過時并被刪除。由于過時,會發(fā)生不期望的泛濫。可以在面向VFR的接口上發(fā)送無償?shù)腁RP請求,以僅對于下游轉(zhuǎn)發(fā)設備維護其MAC地址。無償?shù)腁RP請求之間的間隔可以與FDB過時定時器減去預定時間段同步,該預定時間段被設計為確保在過時定時器過期之前在每個VFR代理轉(zhuǎn)發(fā)器設備中更新MAC路由器地址。間隔可以在下一個定時器對FDB過時進行任何改變之后進行更新,并且可以在VFR被禁用時停止。此外,當未找到服務路由器的FDB條目時,可以由VFR代理轉(zhuǎn)發(fā)器設備將單播ARP請求發(fā)送到服務路由器的路由器-id。這些努力是為了在每個VLANID(VID)的每個VFR代理轉(zhuǎn)發(fā)器的轉(zhuǎn)發(fā)數(shù)據(jù)庫中維護服務路由器的MAC地址,并且避免在非對稱路由情景中通常發(fā)現(xiàn)的未知MAC的泛濫。TLV250的VFR代理轉(zhuǎn)發(fā)器處理在本文所述的主題的一個實現(xiàn)中,在另一個VFR代理轉(zhuǎn)發(fā)器設備加入或離開VFR拓撲時,VFR代理轉(zhuǎn)發(fā)器設備可以調(diào)用被稱為“自定義用戶退出”的處理。將由VFR代理轉(zhuǎn)發(fā)器接收具有TLV250的IS-ISLSP-0或LSP-1消息。在VFR代理轉(zhuǎn)發(fā)器設備上運行的IS-IS可以調(diào)用自定義用戶退出來解碼TLV。使用“更新”調(diào)用將服務路由器信息傳遞到VFR代理轉(zhuǎn)發(fā)器設備的L3轉(zhuǎn)發(fā)元件。(Action、Router-ID、SYSID(MAC))Action–0是刪除,1是更新(新的或改變的)。Router-ID必須存在并且在整個SPB網(wǎng)絡中是唯一的。VFR代理轉(zhuǎn)發(fā)器設備從自TLV250獲得的節(jié)點的SYSID獲得路由器MAC地址,并且對于所有VLAN接口可以是相同的。如果TLV不再存在或設置了“不在服務中”標志,則可以利用刪除動作調(diào)用自定義用戶退出。SPB代碼可以存儲對于每個SYSID的VFR狀態(tài)標志,以加速處理并知道何時進行用戶退出調(diào)用。本文所述的主題不限于使用層2拓撲發(fā)現(xiàn)協(xié)議將服務路由器MAC地址傳送到VFR代理轉(zhuǎn)發(fā)器。在替代實施例中,可以使用現(xiàn)有的或新的(例如,專有的)協(xié)議將服務路由器MAC地址傳送到VFR代理轉(zhuǎn)發(fā)器設備。在又一個替代實施例中,VFR代理轉(zhuǎn)發(fā)器可以配置有服務路由器的MAC地址。圖4是根據(jù)本文所述的主題的實施例的服務路由器102A或104A的框圖。在圖4中,服務路由器102A或104A包括至少一個處理器400和至少一個相關聯(lián)的存儲器402。服務路由器102A或104A包括對IP地址不能被VFR代理轉(zhuǎn)發(fā)器解析的IP分組進行路由的路由模塊406。服務路由器102A或104A還包括L3拓撲協(xié)議模塊406,該L3拓撲協(xié)議模塊406實現(xiàn)L3拓撲協(xié)議(諸如邊界網(wǎng)關協(xié)議(BGP)、開放最短路徑優(yōu)先(OSPF)或路由信息協(xié)議(RIP)),以建立和保持其層3路由表。如上所述,服務路由器是具有VFR服務路由器中介的層3路由器。因此,服務路由器102A或104A包括VFR服務路由器中介407。VFR服務路由器中介407可以包括可實現(xiàn)層3冗余方法中介407的層3冗余協(xié)議模塊408,如果知道替代路徑或冗余活動路徑,則層3冗余協(xié)議模塊408可以在通告消息中向VFR代理轉(zhuǎn)發(fā)設備通告那個信息??梢越?jīng)由若干機制來了解替代路徑或冗余活動路徑,這些機制包括:基于與VFR服務路由器中介407合并的功能的現(xiàn)有協(xié)議、專有協(xié)議、手動和自動配置和知識。通常,模塊408向通告模塊409提供替代路徑信息,通告模塊409將那個信息發(fā)送到VFR代理轉(zhuǎn)發(fā)設備。服務路由器102A或104A還可以包括層2拓撲協(xié)議模塊306,該層2拓撲協(xié)議模塊306運行與VFR代理轉(zhuǎn)發(fā)器設備相同的層2拓撲協(xié)議,使得服務路由器102A或104A可以了解層2域的拓撲。這個模塊還可以包含L2轉(zhuǎn)發(fā)數(shù)據(jù)庫(FDB)。服務路由器102A或104A可以使用上述IS-IS擴展或本文所述的任何替代機制將其MAC地址和VFR服務能力傳送到VFR代理轉(zhuǎn)發(fā)器設備。VFR服務路由器代理407通過使服務路由器102A或104A的MAC地址對VFR代理轉(zhuǎn)發(fā)器可用,提供對服務路由器102A或104A的層3路由服務的訪問。VFR服務路由器中介407可以以任何合適的方式(諸如層2拓撲發(fā)現(xiàn)協(xié)議)使MAC地址對VFR代理轉(zhuǎn)發(fā)器可用。雖然在所示的示例中,VFR服務路由器中介407是服務路由器102A或104A的組件,但是本文所述的主題不限于這種實施例。VFR服務路由器中介407可以在設備(諸如與層3路由器分離的具有處理器和存儲器的計算平臺)上操作。術語“VFR服務路由器中介設備”在本文中一般被用來指在其上執(zhí)行VFR服務路由器中介的設備,無論該設備是路由器、另一個網(wǎng)絡節(jié)點還是服務器設備。VFR服務路由器中介407包括上面提到的層3冗余協(xié)議模塊408(它是可選的)和向VFR代理轉(zhuǎn)發(fā)器設備通告(從模塊404接收到的)路由器的MAC地址的通告協(xié)議模塊409。這通常是通過在通告協(xié)議(包括但不限于上面提到的層2拓撲發(fā)現(xiàn)協(xié)議)中提供層3路由器接口的層2地址來完成的??梢允褂脤S袇f(xié)議或可擴展協(xié)議(諸如IS-IS)或手動操作來向VFR代理轉(zhuǎn)發(fā)器設備提供接口信息。VFR服務路由器中介407還包括VFR服務功能404。VFR服務功能404識別與為VFR域提供層3服務的路由器的接口??偟膩碚f,VFR服務路由器中介407包括實現(xiàn)組件404、408和409中的一些或全部的設施或軟件。這些部件可以被添加到傳統(tǒng)路由器以創(chuàng)建服務路由器??商娲?,VFR服務路由器中介407可以部分地或整體上添加到網(wǎng)絡系統(tǒng)的其它設備。圖5是示出根據(jù)本文所述的主題的實施例的用于虛擬架構路由的示例性處理的流程圖。參考圖5,在步驟500中,在VFR代理轉(zhuǎn)發(fā)器設備處接收IP分組。例如,可以在圖2中所示的VFR代理轉(zhuǎn)發(fā)器100A處接收IP分組。在步驟502中,VFR代理轉(zhuǎn)發(fā)器設備嘗試使用其層3路由信息來解析IP地址。例如,VFR代理轉(zhuǎn)發(fā)器設備100A可以在其層3路由表中執(zhí)行查找,以嘗試解析分組中的目的地IP地址。在步驟504中,確定解析是否成功。如果解析成功,則控制前進到步驟506,其中分組被層3路由(代理路由器轉(zhuǎn)發(fā)路徑)。如果解析不成功,則控制前進到步驟508,其中分組被轉(zhuǎn)發(fā)到路由器或服務路由器的地址。在一個實施例中,地址可以是由VFR服務路由器中介提供的服務路由器的層2地址,并且可以修改分組來包括該層2地址。為了轉(zhuǎn)發(fā)到路由器或服務路由器的層2地址而對分組的修改可以包括使分組中的源層2地址保持不變、使分組中的層3報頭不變、以及將目的地層2(MAC)地址替換為路由器或服務路由器的層2(MAC)地址。一旦分組中的目的地層2地址被替換為路由器或服務路由器的層2地址,該分組就被轉(zhuǎn)發(fā)到VFR服務路由器。VFR域中的中間跳將被層2轉(zhuǎn)發(fā)到路由器或服務路由器。在步驟510中,路由器或服務路由器使用其層3路由表來解析分組中的層3地址,并轉(zhuǎn)發(fā)分組(傳統(tǒng)路由路徑)。圖5中所示的示例假設由VFR代理轉(zhuǎn)發(fā)器設備接收到的分組是這樣的IP分組,VFR代理轉(zhuǎn)發(fā)器設備將嘗試使用分組中的目的地IP地址對該IP分組進行層3路由地址解析。這種分組通常將被層2尋址到VFR代理轉(zhuǎn)發(fā)器設備的層2地址。如果由VFR代理轉(zhuǎn)發(fā)器設備接收到的分組實際上被尋址到不是接收VFR代理轉(zhuǎn)發(fā)器設備的層2地址的層2地址,則接收VFR代理轉(zhuǎn)發(fā)器設備基于分組中的目的地層2地址在其層2轉(zhuǎn)發(fā)數(shù)據(jù)庫中執(zhí)行查找。如果找到匹配,則分組被層2轉(zhuǎn)發(fā)(橋接)到與分組中的層2地址對應的VFR域中的下一跳層2節(jié)點。VFR代理轉(zhuǎn)發(fā)通過減少在VFR域內(nèi)路由時的延遲時間來改進層2和層3分組轉(zhuǎn)發(fā)的
技術領域:
。在相同大小的網(wǎng)絡中,VFR代理轉(zhuǎn)發(fā)器設備的L3轉(zhuǎn)發(fā)表比傳統(tǒng)路由器需要的轉(zhuǎn)發(fā)表更小。VFR代理轉(zhuǎn)發(fā)設備中的L3轉(zhuǎn)發(fā)表不需要包括用于VFR域外部的設備或網(wǎng)絡的轉(zhuǎn)發(fā)表條目。因為VFR代理轉(zhuǎn)發(fā)器對于每個接口可以具有完全相同的路由配置,所以相對于傳統(tǒng)網(wǎng)絡,配置顯著減少。因為在VFR域中VLAN轉(zhuǎn)發(fā)的任務被分布到VFR代理轉(zhuǎn)發(fā)器設備的全部或子集,VFR域內(nèi)的VLAN轉(zhuǎn)發(fā)比傳統(tǒng)網(wǎng)絡(參見圖1)中更容易。因此,延遲時間減少。因此,被配置用于VFR代理服務路由的VFR代理轉(zhuǎn)發(fā)器設備或服務路由器構成了改進層2和層3分組轉(zhuǎn)發(fā)的
技術領域:
的專用計算設備。VFR轉(zhuǎn)發(fā)功能分布在整個層2或VFR域中的一個優(yōu)點是,當與傳統(tǒng)路由方法相比時,這種分布改善了總體路徑成本。通過從VFR代理轉(zhuǎn)發(fā)器設備直接轉(zhuǎn)發(fā),VFR域中可能的轉(zhuǎn)發(fā)路徑中的鏈路度量總和將永遠不會大于傳統(tǒng)方法。此外,當客戶端主機的數(shù)量大于網(wǎng)絡中網(wǎng)橋節(jié)點的數(shù)量時,從所有客戶端主機到每個其它客戶端主機的所有路徑成本總和將具有更低的聚合路徑成本。與使用單臂路由器的對應傳統(tǒng)拓撲(參見圖1)相比,這種更低的路徑成本將導致相等或更低的延遲。圖6A-圖6D示出了在最短路徑橋接網(wǎng)絡上的路由方法和相關聯(lián)的鏈路成本。在圖6A中,3個主機600、602和604駐留在唯一的VLAN上,因此相互之間需要L3轉(zhuǎn)發(fā)。如圖6B中所示,主機600、602和604經(jīng)由SPB節(jié)點100和106以及傳統(tǒng)路由器102相互連接。圖6B中所示的將節(jié)點和主機互連的每條鏈路可以被分配成本(例如,基于鏈路的帶寬)。在所示的示例中,主機和SPB節(jié)點之間的鏈路上的成本是10,并且SPB節(jié)點和路由器102之間的成本是1。因為需要路由在不同VLAN之間發(fā)送消息,所以離開主機A600去往主機C604的分組必須從主機A600出發(fā)、到SPB網(wǎng)橋100、到路由器102、到SPB網(wǎng)橋106,并且從SPB網(wǎng)橋106到主機C604,總成本為22。從主機A600到主機B602以及從主機B602到主機C604的路由的成本也是22。加上節(jié)點之間的路由的鏈路成本,圖6B中所示的網(wǎng)絡的總成本為66。圖6C示出了其中SPB橋106和傳統(tǒng)路由器102被組合成單個節(jié)點608的示例。在這種示例中,從主機A600到主機B602的分組仍然必須通過路由器608,其鏈路成本為22。從主機A600到主機C604的分組通過SPB橋100和路由器608,其總鏈路成本為21。類似地,從主機A600到主機C604的分組從SPB網(wǎng)橋100出發(fā)、通過路由器608并到達主機C604,其總成本為21。圖6C中的路由的聚合鏈路成本為64。圖6D示出了根據(jù)本文所述的主題的實施例的使用虛擬架構路由的鏈路成本。在圖6D中,因為每個VFR代理轉(zhuǎn)發(fā)器設備100A和106A可以將分組路由到直接連接到另一個VFR代理轉(zhuǎn)發(fā)器設備的節(jié)點(包括切換VLAN),所以消除了到服務路由器和從服務路由器返回的路徑,從而導致降低的聚合鏈路成本。例如,在圖6C中所示的網(wǎng)絡中,從主機A600到主機B602的分組僅穿過VFR代理轉(zhuǎn)發(fā)器設備100A,VFR代理轉(zhuǎn)發(fā)器設備100A執(zhí)行層3路由查找并將分組從主機A600路由到主機B602,其總鏈路成本為20。從主機A600到主機C604的分組被VFR代理轉(zhuǎn)發(fā)器設備100A路由到VFR代理轉(zhuǎn)發(fā)器設備106A。VFR代理轉(zhuǎn)發(fā)器設備106A將分組層2轉(zhuǎn)發(fā)到主機C604,其總鏈路成本為21。從主機B602到主機C604的分組被VFR代理轉(zhuǎn)發(fā)器設備100A路由到VFR代理轉(zhuǎn)發(fā)器設備106A。VFR代理轉(zhuǎn)發(fā)器設備106A將分組層2轉(zhuǎn)發(fā)到主機C604。在圖6D中的主機之間轉(zhuǎn)發(fā)的總聚合鏈路成本為62,這低于圖6B或圖6C中所示的示例的總聚合成本,因此示出了如本文所述的VFR代理轉(zhuǎn)發(fā)的又一個示例。除了路徑成本分析之外,當使用L2轉(zhuǎn)發(fā)代替L3轉(zhuǎn)發(fā)時,處理要求也更少。另外,VFRL3能力的有限的L3轉(zhuǎn)發(fā)比傳統(tǒng)路由器更快。這可以導致更好的CPU性能、更低的成本和更低的轉(zhuǎn)發(fā)延遲。應當理解,在不背離本公開的主題的范圍的情況下,可以改變本公開的主題的各種細節(jié)。此外,前述描述僅僅是為了說明目的,而不是為了限制目的。當前第1頁1 2 3