虛擬網絡路由的制作方法
【專利說明】虛擬網絡路由
[0001 ]
[0002]虛擬化允許許多計算環境通過軟件和/或硬件被實現成主計算設備內的虛擬機。虛擬機可包括其自己的文件結構、虛擬硬盤、操作系統、應用等。因此,虛擬機可用作自包含計算環境,盡管其可能是底層軟件和/或硬件資源的抽象。以此方式,主計算設備可主存多個虛擬機。
[0003]挺述
[0004]提供本概述以便以簡化形式介紹將在以下的詳細描述中進一步描述的一些概念。本概述并不旨在標識出所要求保護的主題的關鍵因素或必要特征,也不旨在用于限定所要求保護的主題的范圍。
[0005]特別地,在此提供用于將虛擬交換機連接到多個路由器(例如,多個IP子網、多個網絡、多個葉路由等)、用于實現IP地址路由的虛擬路由器和/或用于MAC地址蓋寫的一個或多個系統和/或技術。
[0006]在將虛擬交換機連接到多個路由器的示例中,虛擬交換機將第一服務器連接到第一路由器(例如,3層網絡體系結構的第一葉路由器)。第一路由器對應于第一IP子網。虛擬交換機將第一服務器連接到第二路由器(例如,3層網絡體系結構的第二葉路由器)。第二路由器對應于第二IP子網。可以理解虛擬交換機可將第一服務器連接到任何數量的路由器。虛擬交換機可被配置來基于路由準則(例如,負載平衡路由準則、故障轉移路由準則等)以通過第一路由器和/或第二路由器路由與第一服務器相關聯的通信包。例如,虛擬交換機可基于第二路由器相對于第一路由器具有更多的可用路由資源(例如,基于第一路由器當前承當更大量的路由任務,第一路由器可能相比于第二路由器具有更少的可用資源,諸如帶寬)而將數據包通過第二路由器來路由。在另一個示例中,基于檢測到第二路由器故障,虛擬交換機可通過第一路由器路由數據包,或反之亦然。
[0007]在實現IP地址路由的虛擬路由器的示例中,虛擬路由器被主存在第一服務器上。虛擬路由器可在第一服務器和第一路由器(例如,3層網絡體系結構的具有第一 IP子網的第一葉路由器)之間建立第一連接。虛擬路由器可在第一服務器和第二路由器(例如,3層網絡體系結構的具有第二 IP子網的第二葉路由器)之間建立第二連接。可以理解虛擬路由器可將第一服務器連接到任何數量的路由器。虛擬路由器可基于IP地址路由(例如與MAC地址轉發相對)通過第一路由器和/或第二路由器來將與第一服務器相關聯的通信包路由到目的地。在一個示例中,虛擬路由器可包括原本可由硬件路由器執行的路由功能(例如,IP地址路由)的軟件實現。例如,路由功能的軟件實現可被用于修改主存在第一服務器上的虛擬交換機,以在第一服務器內創建虛擬路由器。
[0008]在MAC地址蓋寫的示例中,第一連接在第一服務器和第一路由器(例如,3層網絡體系結構的具有第一 IP子網的第一葉路由器)之間被建立。第二連接可在第一服務器和第二路由器(例如,3層網絡體系結構的具有第二 IP子網的第二葉路由器)之間被建立。可以理解第一服務器可被連接到任何數量的路由器。與第一服務器相關聯的通信包可被接收(例如從第一服務器主存的虛擬機接收)。第一路由器或第二路由器(基于等價多徑(ECMP)分發、負載平衡路由準則、故障轉移路由準則,和/或其它路由準則選擇的路由器)的目的地MAC地址可被插入通信包以創建經修改的通信包。經修改的通信包可基于目的地MAC地址被轉發到第一路由器或第二路由器以供遞送到目的地。
[0009]為實現上述內容和相關目的,以下描述和附圖闡述了各個說明性方面和實現。這些方面和實現僅指示可以使用一個或多個方面的各種方式中的一些。結合附圖閱讀以下詳細描述,則本公開的其他方面、優點、以及新穎特征將變得顯而易見。
[0010]附圖簡述
[0011]圖1是示出用于通過將虛擬交換機連接到多個路由器來促進服務器和多個路由器之間的并發連接性的示例系統的組件框圖。
[0012]圖2是示出用于通過實現用于IP地址路由的虛擬路由器來促進服務器和多個路由器之間的并發連接性的示例系統的組件框圖。
[0013]圖3是示出用于通過實現MAC地址蓋寫來促進服務器和多個路由器之間的并發連接性的示例方法的流程圖。
[0014]圖4是示出用于通過實現MAC地址蓋寫來促進服務器和多個路由器之間的并發連接性的示例系統的組件框圖。
[0015]圖5是示例性計算機可讀介質的圖示,其中可包括被配置成實現此處所闡述的原理中的一個或多個的處理器可執行指令。
[0016]圖6示出其中可實現本文中所闡述的措施中的一個或多個的示例性計算環境。
[0017]詳細描述
[0018]現在參考附圖來描述所要求保護的主題,所有附圖中一般使用相同的附圖標記來指代相同的元素。在以下描述中,為解釋起見,闡明了眾多具體細節以提供對所要求保護的主題的理解。但是顯而易見的是,沒有這些具體細節也可實踐所要求保護的主題。在其他實例中,以框圖形式示出了各個結構和設備以便于描述所要求保護的主題。
[0019]圖1示出了用于促進服務器和多個路由器之間的并發連接性的系統100的示例。系統100可以與網絡102相關聯。在一個示例中,網絡102(例如,由數據中心實現)可包括3層網絡體系結構(例如,包括邊界路由器、脊路由器、葉路由器等)。網絡102可包括一個或多個路由器,例如第一路由器104(例如,第一葉路由器)、第二路由器106(例如,第二葉路由器)、和/或其它未示出的路由器。第一路由器104可與第一 IP子網相關聯。第二路由器106可與不同于第一IP子網的第二IP子網相關聯。在一個示例中,第二IP子網可與第一IP子網相同,使得第一路由器104和第二路由器106實際上具有相同的IP子網。
[0020]一個或多個服務器可通過虛擬交換機被連接到網絡102。例如,系統100可包括一個或多個虛擬交換機,諸如由第一服務器110主存的第一虛擬交換機108、由第二服務器120主存的第二虛擬交換機118、和/或其它未示出的虛擬交換機。第一虛擬交換機108可被配置來在第一服務器110和第一路由器104之間建立第一連接122。第一虛擬交換機108可被配置來在第一服務器110和第二路由器106之間建立第二連接124。第一虛擬交換機108可將第一服務器110并發地連接到第一路由器104和第二路由器106。第一虛擬交換機108可被配置來基于路由準則(例如,負載平衡路由準則、故障轉移路由準則等)通過第一路由器104和/或第二路由器106來路由與第一服務器相關聯的通信包。(例如,第一服務器主存的虛擬機(諸如虛擬機(A)112、虛擬機(B)114、和/或虛擬機(C)116等)和通過網絡102可訪問的不同服務器或虛擬機之間的通信)。
[0021]在負載平衡的示例中,基于第二路由器106相比第一路由器104而言具有更多可用路由資源,第一虛擬交換機108可將通信包從虛擬機(A)112路由到第二路由器106以供遞送到目的地(例如,未示出的第三服務器上虛擬機(X))。在故障轉移的事例中,基于檢測到第二路由器106故障,第一虛擬交換機108可將通信包從虛擬機(C)116路由到第一路由器104以供遞送到目的地。以此方式,可在3層網絡內(諸如跨在服務器上運行的多個IP子網)實現負載平衡(例如,兩個網絡適配器和/或葉路由器之間的雙向負載平衡)和/或故障轉移(例如,透明故障轉移,因為葉路由器可在服務器可用時跨路由器網絡廣而告之服務器的IP