TWI583151B - 實施及管理虛擬網路的系統與方法 - Google Patents

實施及管理虛擬網路的系統與方法 Download PDF

Info

Publication number
TWI583151B
TWI583151B TW101128256A TW101128256A TWI583151B TW I583151 B TWI583151 B TW I583151B TW 101128256 A TW101128256 A TW 101128256A TW 101128256 A TW101128256 A TW 101128256A TW I583151 B TWI583151 B TW I583151B
Authority
TW
Taiwan
Prior art keywords
packet
virtual
network
node
address
Prior art date
Application number
TW101128256A
Other languages
English (en)
Other versions
TW201322686A (zh
Inventor
丹 杜門翠
羅門 蘭傑特
吉賽普 侃迪
傑可 梅德森
Original Assignee
中界雲端公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中界雲端公司 filed Critical 中界雲端公司
Publication of TW201322686A publication Critical patent/TW201322686A/zh
Application granted granted Critical
Publication of TWI583151B publication Critical patent/TWI583151B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • H04L43/55Testing of service level quality, e.g. simulating service usage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

實施及管理虛擬網路的系統與方法
本揭示關於網路連接,且較具體而言關於實施及管理虛擬網路的系統與方法。
雲端運算的到來已經創造對服務提供者的新需求。服務提供者想要將虛擬網路提供給各個客戶,使其有能力新增主機且改變從實體網路解耦的拓樸。該網路的虛擬化會容許服務提供者創造一種客戶可配置的網路拓樸,該拓樸可藉由改變虛擬路由器及虛擬切換器來加以改變而沒有任何硬體的改變。虛擬路由器也容許客戶的資料為了安全性及用量導向的計價而被分開。專用硬體可提供一些此種特徵但可能很昂貴。仍有需要一種工具,其容許虛擬網路被覆蓋於現有網路之上且容許該虛擬網路的拓樸以獨立於內層網路的方式改變。
目前所揭示者為藉由使用被覆蓋於實體網路上的虛擬網路來促進封包路由的系統及方法。在各種實施例中,本揭示提供了在OSI模型的多層(包括L2(第2層,即鏈結層)、L3(第3層,即網路層)及L4(第4層,即傳輸層))之網路元件的彈性互連。網路元件可藉由虛擬L2切換器與L3路由器加以互連。虛擬L2網路的封包可 藉由使用穿隧而在現有L3網路之上傳輸,而無需任何L3網路的改變。各種穿隧方法可被使用,諸如GRE、IP之上的乙太網路、VXLan、IP之上的MPLS或CAPWAP。由虛擬L3路由器所路由的網際網路協定(IP)封包可在現有L3網路之上傳輸,而無需任何現有L3網路的改變。
在實施例中,虛擬L2切換器及虛擬L3路由器對於它們連接的元件而言像是實體L2切換器及實體L3路由器,儘管它們可能不是藉由使用實體L2及L3網路元件加以實施。可能有任意數量的虛擬網路元件(切換器或路由器),各者被虛擬連接至任意數量的網路元件。在一個組態中,各個虛擬L2切換器被連接至一個虛擬L3路由器,該虛擬L3路由器可被連接至任意數量的其他L3路由器。
系統的虛擬L2切換器及虛擬L3路由器可連接大量的網路元件,無論地理上的分隔。該系統可連接實體或者虛擬的元件,該等元件將例如伺服器電腦上所仿真的虛擬機器連接至被連接至網際網路的實體路由器。
用以創造及管理虛擬網路(包含複數個虛擬路由器及切換器)的方法及系統被提供。該方法及系統也可提供給L3/L4防火牆服務、來源及/或目的地網路位址轉譯服務、及負載平衡,如較詳細描述於下。目前所揭示者為一種將封包從第一節點路由至第二節點的方法,其包含:在內層網路的第一節點接收封包;存取虛擬路由表以決定虛擬網路拓樸中的封包之次一站(next hop)(該次一站為對內 (邏輯)埠或者對外(物化)埠),及繼續以串聯方式存取後續虛擬路由表直到決定該次一站為該網路的第二節點上的對外埠;以及送出該封包經過該內層網路至該第二節點的對外埠。存取虛擬路由表以決定該封包的次一站之步驟也可包括:在各個虛擬路由表中執行查找,此處該查找表含有該封包的次一站資料。在一個實施例中,該網路的第一節點被配置成存取外部網路,且該網路的第二節點被配置成主管一虛擬機器。該方法也可包括:施加路由前修改及/或路由後修改至該虛擬網路中的至少一個站的封包。在一個實施例中,封包的次一站係從來源位址及/或目的地位址加以決定。此外,路由前及路由後程序可利用該來源位址、來源埠、目的地位址及/或目的地埠以決定該封包的想要之修改或轉譯。該方法也可包含:儲存至少一個虛擬路由表於在該內層網路中的複數個節點上的分散式狀態中。在各種實施例中,該內層網路可包括乙太網路、私有IP網路、公共IP網路、或能夠提供節點間的連接之其他網路。
亦揭示者為一種路由封包的方法,包含下列步驟:在第一節點接收流程的封包;存取流程表且決定該封包不匹配現有的流程規則;傳送該封包至決策引擎;存取被儲存於複數個節點可存取的共享資料庫中的虛擬網路拓樸;創造該封包的流程規則;及傳送該流程規則至該流程表。創造流程規則的步驟可進一步包含:根據由網路租戶所建立的虛擬拓樸來決定該封包在該網路中的路由順序。
亦揭示者為一種用以刪除流程項目的有狀態(stateful)連接追蹤之方法,包含下列步驟:在具有流程可配置切換器的邊緣節點接收具有序號的FIN封包;在該流程可配置切換器中識別對應於該封包的流程規則;識別用於刪除的流程規則以及傳送所識別的流程規則至共用資料庫中的分散式狀態;及根據該對應的流程規則來傳送該封包。在實施例中,該系統提供用以模擬TCP連接狀態機且保留其狀態於該共用資料庫中的手段。
在實施例中,該流程可為TCP連接的輸入流程或輸出流程。該方法可進一步包括:在接收到對應於該FIN封包的ACK封包的時候,刪除所識別的流程。在實施例中,該方法也包含:識別該分散式狀態中所儲存的對應於該所識別的流程之反向流程;識別用於刪除的該反向流程;及在接收到對應於該FIN封包的ACK封包的時候,刪除該所識別的流程及該反向流程。
在另一實施例中,一種實施目的地網路位址轉譯的方法包含下列步驟:在第一節點接收第一封包,該第一節點具有目的地位址;創造對應於該第一封包的第一流程規則,此處該第一流程規則包含對穿越該虛擬網路拓樸中的複數個虛擬裝置的封包所作出之修改的聚集;施加該第一流程規則至該第一封包;回應於該第一封包,在第二節點接收第二封包,該第二封包具有來源位址;創造對應於該第二封包的第二流程規則;及從分散式狀態存取該第一流程且施加該目的地網路位址轉譯至該第二封包的來源位址。 該方法也可包含:在轉送該第一封包以前等待直到該第一流程規則被儲存於分散式狀態中,使得該第二封包不會被接收直到該第一流程規則被儲存於分散式狀態中。在一個實施例中,該第一封包及第二封包對應於TCP連接。在另一實施例中,該方法進一步包含:施加負載平衡演算法以平衡該內層網路資源上的負載。
一般參照第1至14圖,所揭示系統及方法的實施例關於運算系統,該等運算系統實施及管理虛擬網路且可提供軟體定義的網路解決方案。所揭示的系統及方法提供一種用以將網路虛擬化的軟體抽象層以改善雲端運算系統的有效性同時降低實體網路的複雜度以及相關的維護成本。
在各種實施例中,一種運算方法被揭示,其包括:接收抵達內層網路的第一節點之第一網路介面的封包。該第一網路介面可用硬體或軟體實施於該第一節點上。決策引擎可被調用以決定該封包將如何被處理。在一個態樣中,該封包及該封包在其上抵達至該網路中的網路介面之識別被傳送至該決策引擎而被處理。該決策引擎可模擬該封包將如何穿越一虛擬網路拓樸(包括該封包所遇到之複數個虛擬網路裝置各者)。除了模擬封包如何從一個裝置通過該虛擬網路而傳遞至次一裝置以外,該決策引擎也可模擬該等虛擬裝置的各者如何影響該封包,諸如藉由修改封包協定標頭。根據模擬結果,該系統可藉由施加所決定的修 改或該等修改的聚集之各者來處理該封包,使得該封包可從該網路的一個節點上的網路介面發射,此處在哪個特定網路介面上發射該封包係在決策引擎的模擬期間決定。
在通過虛擬網路拓樸的各個步驟,決策引擎決定該封包可能如何被後續裝置處理。在一個實例中,決策引擎可決定封包待被丟棄或忽略。丟棄封包可能在給定封包係與系統不再處理的通訊或流程關聯時產生。在其他實例中,封包可能因為虛擬裝置缺少足夠指令來處理所接收類型的封包而被丟棄。替代地,裝置可能不能夠成功地配送給定封包至指定之目的地。錯誤訊息或其他回應可被提供以警告該封包的傳送者該封包沒有到達其目的地。
針對許多封包,決策引擎將決定該封包應從對應於第二網路介面的虛擬埠發射。該第二網路介面可能在該內層網路的第一節點上或在第二或不同節點上,取決於該封包之目的地以及用以主管映射的虛擬埠。當該封包待被傳遞至第二節點上的第二網路介面時,決策引擎決定該封包如何被處理且接著該封包被該內層網路傳遞至該第二節點而被該第二網路介面發射。
在多個實施例中,封包的協定標頭可在傳遞至第二網路介面以前修改。該等協定標頭的修改可提供給網路位址轉譯、穿隧、VPN或其他特徵,如較完整加以討論於下。
在實施例中,該方法包括:維持節點識別符對內層網路上的節點之節點位址的映射。節點識別符可被用來區分用於內層網路上路由封包的個別節點。為了從第一節點傳 遞封包至第二節點,該封包可隨著穿隧協定封包(諸如乙太網路+IP+GRE)的酬載來轉送。在實施例中,該穿隧協定封包具有隧道金鑰,該隧道金鑰編碼第二網路介面的全域識別符。全域識別符可能在該網路內為特有的,使得各個網路介面為唯一識別。相反地,區域識別符可被用於節點內、或該網路的子集內,以唯一識別該網路的子集內的埠或介面。當該穿隧協定封包在第二節點接收時,含有原始封包的酬載隨著該隧道金鑰被擷取。該隧道金鑰可接著被解碼以決定第二虛擬網路介面識別符以及從該第二網路介面發射的封包。以此方式,該系統能夠利用決策引擎來決定封包在它穿越該系統時如何被處理,且一旦該決定被作出時亦有效率地傳輸該封包。
在其他實施例中,決策引擎決定封包應從一組網路介面發射。從一組網路介面發射可能在多播或廣播應用中是必要的。應從其發射該封包的網路介面可能為該網路的單一節點本地的介面、或可能被分散跨越二或更多個節點。在任何情況中,該系統決定該封包應從對應於介面組識別符的一組網路介面發射。該封包接著以傳遞該封包至該第一節點本地的該組中的各個網路介面來加以處理。該封包也經過隧道從該第一節點轉送(具有修改)至該第二節點。該封包可隨著使用隧道金鑰(其編碼該介面組識別符)的穿隧協定封包的該酬載來加以轉送。當該穿隧封包在該第二節點接收時,該隧道金鑰可被解碼以決定該介面組識別符、以及該組中包含之該第二節點本地的任何網路介面 上所發射的封包。與給定介面組識別符關聯的該組網路介面可被儲存於該系統的各個節點可存取的共享資料庫中。因此如果節點接收到未知的介面組識別符,該節點可存取該共享資料庫以決定哪些網路介面被含括於所識別的組中。此外,節點可儲存或快取網路介面對該節點本地上的介面組識別符之映射。然而當該介面組識別符改變時,本地快取的資料被作廢且該節點可存取該共享資料庫以擷取介面對介面組的目前或更新的映射。在實施例中,虛擬網路介面可能屬於超過一個介面組。
在內層網路支援多播(諸如IP多播)的應用中,各個介面組識別符可被映射至多播位址,且該內層網路的各個節點可維持對映射至該節點的至少一個虛擬網路介面所屬之各個該等介面組識別符的多播訂閱。封包可接著隨著穿隧協定封包的酬載而多播至第二節點或更多個節點。各個節點接著從對應於該組中的該節點本地的介面之任何網路介面發射該封包。在各種實施例中,該等介面組識別符被唯一地映射至多播位址。
如果內層網路不支援多播,決策引擎決定一組內層網路節點,其具有屬於該封包待被送至的該組網路介面的區域網路介面。該封包接著在穿隧協定封包中從該第一節點轉送至該組內層網路節點中的各個節點,如先前所述。各個節點接著發射該封包至與所識別的組關聯的對應網路介面。
決策引擎根據封包穿越該虛擬網路拓樸的模擬來決定 如何處理給定封包。在許多應用中,多個封包被關聯作為流程及該流程中的各個封包,此處該流程中的各個封包待以相同方式加以處理,例如,TCP連接的一個方向的所有封包。在實施例中,在接收到流程的第一封包的時候,系統調用該決策引擎以決定該流程的封包如何被處理。決策引擎可接著儲存用以處理該流程的後續封包之動作及規則。所儲存的動作及規則可被儲存於共享資料庫,使得該等規則可用於該系統的所有節點以供處理給定流程的封包。替代地,該等規則可在本地加以儲存。
在實施例中,決策引擎的輸出包括封包協定標頭型樣,其可被用來匹配該決策引擎的輸出與第一封包相同的其他封包。換句話說,該封包協定標頭型樣可被用來識別將以相同方式藉由施加針對第一封包所決定的動作或規則加以處理的封包。在實施例中,決策引擎的輸出為被實施以決定該封包如何被處理的模擬結果。該封包協定標頭型樣及對第一封包的模擬結果被儲存。在接收到第二封包的時候,該第二封包的標頭與該封包協定標頭型樣比較,同時忽略以每一封包基礎來改變的欄位(諸如TCP序號)。如果第二封包匹配該型樣,則該第二封包被視為相同流程的一部份,且先前所儲存之對第一封包的模擬結果被擷取且被施加至該第二封包。所儲存的模擬結果可從共享資料庫、區域快取或適於保留待被施加至該流程的封包之規則的任何其他記憶體來加以擷取。在實施例中,決策引擎可施加該等流程規則至第二封包及流程中的後續封包。然而 在其他實施例中,與第一封包關聯之用以決定流程規則的模擬以及施加這些規則至封包可被分開,以改善系統的速率或效率。
特定模擬結果的快取或儲存可被系統決定。例如,決策引擎可提示哪些模擬結果應被快取。在此情境中,提示可能包括特定結果受其他考量(諸如效率或可用的儲存容量)而被儲存的建議。在一個實例中,系統可選擇不儲存對很少使用的流程之模擬結果。決策引擎也可被通知有關哪些結果或模擬結果實際上被快取或哪些結果已經被作廢或從所快取的結果收回。所快取的結果可能為了各種原因而被作廢。在一個實例中,結果可能被收回以釋出儲存空間給新的或較常使用的流程。系統的性能可能隨著所儲存之流程規則的數量增加而降低,因此在一些實施例中,所儲存之流程規則的數量可能被限制以增加效率及操作的速率。
隨著時間,虛擬網路拓樸及/或虛擬裝置的組態可能改變。此可能造成先前所實施的模擬結果不再反映出被施加至一或更多個先前所建立之流程的後續封包的適當規則。系統可因此在共享資料庫、決策引擎、及其他組件間通訊以偵測及回應所快取的模擬結果之改變。在一個實施例中,決策引擎可在任何時刻根據如共享資料庫中儲存的全域狀態所反映之組態的改變來要求特定快取的項目被移除。當所快取的項目被移除時,在接收到對應於被移除流程之次一封包的時候,決策引擎將被調用且該模擬被重新計 算以決定該流程的封包如何被處理。重審的模擬結果可接著被儲存且施加至匹配與該流程關聯之封包協定標頭的後續封包。
系統可在封包的模擬期間決定一給定流程的封包協定標頭型樣。在實施例中,封包包括協定標頭(具有複數個欄位)且該型樣係藉由識別在決策引擎的模擬期間被讀取之欄位各者來加以決定。以此方式,隨著虛擬網路拓樸被穿越而加以讀取的各個欄位被識別,包括由複數個虛擬網路裝置所讀取的欄位。被讀取的各個欄位可被含括作為該型樣的一部份。相反地,未讀取且因此未影響該封包的處理之欄位可被指定作為通配符(wildcard)。
在又一實施例中,第一封包在內層網路的第二節點上接收且該第二節點產生協定標頭型樣,該協定標頭型樣可被用來識別具有與該第一封包相同的隧道金鑰之其他封包。該第二節點接著使用該協定標頭型樣以識別出匹配該封包協定標頭型樣的第二封包,且從與該第一封包被發射者相同的區域網路介面發射該第二(及後續)封包。以此方式,該第二節點精簡了決定在哪一個埠上發射該第二封包的程序且改善系統的效率。在實施例中,該節點上的流程可程式化切換器可能依靠該協定標頭型樣以及隧道金鑰、或可能僅依靠該隧道金鑰來識別將以類似於第一封包的方式加以處理的後續封包。
在另一實施例中,在決定對第一封包的模擬之同時,決策引擎可請求基本系統從網路介面或一組網路介面產生 一或更多個額外封包。在實施例中,可能需要額外封包來決定該網路的埠之性能。藉由請求額外封包,決策引擎可得到對該網路的一部分之額外資訊以協助模擬程序。該等額外封包的各者可實質上如同此處所述來加以處理、或可被給予不同處理(視決策引擎發展有關該網路的所需資訊的需要)。
在另一實施例中,一種運算方法包括:維持可從具有複數個節點的內層網路存取之共享資料庫。該共享資料庫儲存虛擬網路拓樸以及複數個虛擬網路裝置的虛擬裝置組態。網路封包抵達該內層網路的第一節點之第一網路介面。該方法進一步包括:根據該封包穿越該虛擬網路拓樸(包括該複數個虛擬網路裝置)的模擬來決定用以處理該網路封包的動作。在實施例中,該動作為一種可操作於流程可程式化切換器(可操作以處理抵達該內層網路的節點之封包)中的流程規則。
該封包穿越該虛擬網路拓樸的模擬可由決策引擎加以實施,諸如先前所討論的決策引擎。該決策引擎可能可操作於該複數個節點的各者上以實施在各個節點上所接收的封包之模擬。替代地,該決策引擎可操作於個別節點上,該個別節點與該等節點的接收到需要模擬的封包之各個節點通訊。
該虛擬網路拓樸包括對應於該複數個虛擬網路裝置的複數個虛擬埠。各個虛擬網路裝置具有一或更多個虛擬埠。虛擬埠可為對外埠(exterior facing port)或者對內埠 (interior facing port),該對外埠與該內層網路的節點之網路介面關聯,該對內埠與虛擬網路裝置間的虛擬鏈結關聯。虛擬鏈結表示一個虛擬埠對另一虛擬埠的邏輯連接,且也可被稱為虛擬電纜。
共享資料庫儲存該虛擬網路拓樸及虛擬裝置組態(包括該等虛擬埠的組態)。在實施例中,該共享資料庫可包括下列的一或更多者:該複數個虛擬埠各者的組態(包括作為對外埠或對內埠之一者的虛擬埠之識別)、與該複數個虛擬埠關聯之複數個虛擬網路裝置各者的組態、網路介面識別符對內層網路節點的識別符之映射、對外埠對內層網路節點的對應網路介面之雙向映射、及各裝置的各個對內埠對虛擬鏈結所連接之另一裝置的同儕對內埠之映射。如此處所使用,同儕對內埠為由邏輯連接所連接至給定虛擬埠的虛擬埠。對內埠具有單一同儕,因此各個對內虛擬埠為其被連接的對內虛擬埠之同儕。
虛擬埠的組態視系統的想要組態而為可配置,且系統使用者可定義該等虛擬埠。流入/流出對外虛擬埠的封包為進入/離開該虛擬網路。相反地,流入/流出對內虛擬埠的封包留在該網路中。以此方式,虛擬埠可能特徵為對外或對內,取決於是否該封包在通過該埠時進入/離開該虛擬網路。
在一個實施例中,決策引擎在本地操作於第一節點上且與共享資料庫(其含有虛擬網路拓樸及裝置組態)通訊。該共享資料庫可含有該拓樸及裝置組態資訊的權威( authoritative)副本或主副本。為了改善效率,該虛擬網路拓樸及虛擬網路組態資訊的至少一部分可被本地快取於個別節點上。快取的資料可在該共享資料庫被修改時加以更新。在一個實施例中,僅那些由給定節點所使用的拓樸或裝置組態之部分被快取於該節點上。在模擬封包抵達虛擬裝置的時候,系統可將該虛擬裝置的組態從該共享資料庫載入至實施該模擬的節點且可快取該裝置組態以供未來使用於該節點上。
運算方法的實施例也包括:映射該第一節點的第一網路介面至對應的虛擬埠以及從該共享資料庫擷取該虛擬埠的組態和與該虛擬埠關聯的裝置。用以處理該網路封包的動作接著根據與該虛擬埠關聯的裝置之模擬來加以決定。所決定的動作可包括下列之一或更多者:修改網路裝置的內部狀態;丟棄該封包;修改該封包的協定標頭;從網路裝置的一或更多個虛擬埠發射該封包;及從該網路裝置的一或更多個虛擬埠發射不同封包。在實施例中,從該網路裝置的一或更多個虛擬埠發射該封包可包括:從對外埠或對內埠發射該封包。
在決定如何處理封包中,決策引擎可穿越由對內虛擬埠所連接的多個虛擬裝置。在一個實施例中,該決策引擎決定第二虛擬埠的同儕對內埠以及擷取該同儕對內埠的組態和該同儕對內埠所位在的網路裝置。該決策引擎可接著模擬與該同儕對內埠關聯的網路裝置之操作以決定該封包如何被處理。以此方式,該決策引擎可模擬通過該虛擬網 路拓樸(包括任何數量的虛擬網路裝置)的路由,以便決定給定封包或流程如何被處理。
如果所決定的動作為從一或更多個對外虛擬埠發射封包,該系統映射各個對外虛擬埠至該內層網路之對應的網路介面及節點且接著從該等對應的網路介面各者發射該封包。
此處所述的模擬程序被重複直到決策引擎已經模擬該封包所穿越的最後虛擬裝置。該決策引擎提供待被施加至該封包及匹配封包協定標頭型樣的後續封包之模擬結果或動作。該模擬結果或動作包括該封包的聚集修改以根據經由穿越該虛擬網路拓樸所施加的所有修改,修改該封包的協定標頭來匹配該等標頭如同將被最後虛擬裝置發射的封包。以此方式,該決策引擎經由該模擬來決定對該封包的必要修改,使得封包可被有效率地修改及配送通過該網路。
如先前所討論,該封包包括具有複數個欄位的協定標頭。該系統根據該模擬結果,決定被用來識別出對其施加所決定的動作或流程規則的封包之封包協定標頭型樣。在一個實施例中,藉由識別該協定標頭的在該虛擬網路拓樸及該等虛擬網路裝置之模擬期間被讀取的各個欄位,該系統決定該封包協定標頭型樣。以此方式,穿越該網路中所依靠的協定標頭之欄位被識別,使得所決定的流程規則可被施加至應以相同方式加以處理的封包。該協定標頭的那些不被依靠的欄位可被當作通配符或者從匹配後續封包的 協定標頭至所決定的型樣之程序的考量中排除。該封包協定標頭型樣及對應的模擬結果可被儲存於節點上。在實施例中,該型樣及對應的模擬結果被儲存作為流程規則以供使用於流程可配置切換器(被配置成處理抵達該節點的後續封包)中。當封包抵達流程規則尚未被創造的節點時,該系統可調用該決策引擎以實施對該封包的模擬。
決策引擎所產生的模擬結果依據該虛擬網路拓樸及該虛擬裝置組態,至少對於那些在該模擬期間穿越的虛擬裝置。當該拓樸或裝置組態改變時,待被施加至封包的先前所決定的模擬結果及對應動作可能不再正確。為了適應此種改變,該系統被配置成在該虛擬網路拓樸或虛擬裝置組態改變的時候,作廢所儲存的封包協定標頭型樣及對應的所儲存之模擬結果。在一個實施例中,該系統在偵測到改變的時候作廢所有所儲存的型樣及模擬結果。在其他實施例中,僅那些依靠被改變的虛擬裝置之儲存結果被作廢。在一個實例中,在該模擬期間被穿越的一組被穿越的虛擬裝置係在該決策引擎的模擬期間加以決定。該組被穿越的虛擬裝置接著關聯於該封包協定標頭及/或模擬結果。當虛擬裝置的組態之改變被偵測到時,與任何組(含有被改變的虛擬裝置)被穿越的虛擬裝置關聯之所儲存的模擬結果可被作廢。以此方式,該系統根據給定虛擬裝置改變來有效率地決定哪些流程規則應被作廢。一種根據虛擬裝置組態的改變來決定一組被穿越的虛擬裝置且作廢流程之方法進一步在第1圖中加以示出。在其他實施例中,在該快 取為空間受限的資源時流程可被作廢或收回。例如,該系統可在本地(於第一節點上)追蹤所有被內層系統快取的決策引擎,追蹤決策的「最後匹配」時間(其為封包匹配決策的型樣且該決策的動作被施加至該封包的最後時間)。該系統可接著詢問所有決策的「最後匹配」時間且收回那些最久時間未被使用的決策。詢問該最後匹配時間可在特定頻率加以實施或可視需要加以實施以將所儲存決策的快取之大小維持在特定大小以下。該系統也可移除「最近」創造的隨機決策。移除最近創造的隨機決策可能在大部分的最近決策用於短暫的封包流程時有效率(相較於具有相對較高比例的長久的流程之較舊尚存的決策)。用以作廢流程的程序可被個別或組合使用以在想要的參數內管理該節點上所儲存之資料的快取。該系統也可根據決策引擎的新調用率(其關連至添加新決策至所儲存的快取)來調整作廢率或收回率。
該系統也被配置成有效率地(且對正確話務有最小破壞)聚集所快取的決策而與更新的虛擬裝置組態一致。快取的決策之聚集,其可能特徵為先前所儲存之流程的正確性導向的作廢或收回。如此處所使用,一致決策(相對於開始的虛擬網路組態加上一些改變)為一個以相同輸入封包與流入介面之決策引擎的新調用可以再次到達的決策。相反地,不一致決策為一個該決策引擎以相同輸入而不會作出的決策,因為虛擬網路裝置的新組態。在一個實施例中,針對時刻T,有一個受限週期P,在該週期內所有在 時刻T以前被快取的決策係與時刻T或時刻T以後的虛擬網路組態之狀態一致。為了聚集該等決策,該系統以針對該決策所模擬的裝置(這些表示該封包所穿越的虛擬裝置)及該決策被作出/快取的時刻來將本地快取的決策編索引。該系統接著接收虛擬裝置組態的區域更新以供時刻T所接收的第一虛擬裝置的組態更新、等待特定時間使得時刻T以前所作出及快取之決策的數量已經由空間導向的收回加以減少、且接著將時刻T以前所作出/快取的該組決策與模擬該第一虛擬裝置所需要的該組決策交叉。所生成的組中的決策必須接著藉由重新調用相同輸入(及目前組態)的該決策引擎來加以驗證。針對任何已經改變的決策,舊決策被作廢且根據已更新、目前組態的新模擬結果被安裝/快取以用於匹配該流程的後續封包。
在另一態樣中,目前所揭示的該運算方法及系統包括:模擬一或更多個MAC-學習橋接器,此處各個橋接器的對外埠被映射至該內層網路的一或更多個節點之介面,且此處該橋接器的各個對內埠被連接至虛擬路由器的對內埠。該運算方法包括:維持該橋接器的MAC-學習表之權威副本於該共用資料庫中。該MAC-學習表也可被稱為動態過濾資料庫,MAC位址對經由其到達該MAC的埠之映射,此處MAC係經由僅僅橋接器的埠之一者在任何時刻於正確配置的網路中可到達。該方法進一步包括:維持該橋接器的MAC-學習表之快取副本於每個節點(具有映射至該橋接器的對外埠之一者的介面)上、以及於每個模擬封 包穿越該橋接器的節點上。該MAC-學習表的快取副本可在該權威副本改變時更新。
在實施例中,該決策引擎的調用導致了抵達乙太網路橋接器的第一埠之乙太網路訊框被模擬,且該系統載入該乙太網路橋接器的狀態,如果沒有先前的決策引擎調用已經載入它的話。輸入的乙太網路訊框可具有單播目的地MAC位址。在實施例中,一種方法進一步包括:偵測該目的地MAC為單播位址;及決定該MAC-學習表中是否有用於該MAC的項目。如果該MAC-學習表包括了映射該MAC至該橋接器的第二埠之項目,該系統決定所模擬的橋接器將從該第二埠發射此種訊框。如果該MAC-學習表不包括用於該MAC的項目,該系統決定所模擬的橋接器將從其所有埠發射該訊框,除了它抵達的埠以外。
在另一實施例中,該輸入的乙太網路訊框具有指出該訊框應從多個埠發射的多播或廣播MAC。該運算方法的實施例可進一步包括:偵測該目的地MAC為多播或廣播位址以及決定所模擬的橋接器將從其所有埠發射此種訊框,除了它抵達的埠以外。在又一實施例中,該輸入的乙太網路訊框具有單播來源MAC位址。如果該MAC-學習表沒有用於此MAC的項目,該系統新增映射此MAC至該抵達埠的項目。該系統接著啟始此種MAC-學習表項目的參考計數(在該調用發生的節點本地),此處該計數係根據導致了具有相同來源MAC位址、抵達相同埠的訊框的所快取之決策的數量。參考計數此種快取的決策可能有用, 因為該決策引擎無法看見所有具有相同來源MAC抵達該埠的封包。因此,當此種快取的決策之數量到達零時,用於此來源MAC及抵達埠的MAC-學習表項目可能到期(或被設定成到期)。在每個具有該橋接器的MAC-學習表之快取副本的節點(因為其具有被映射至該橋接器的對外埠之介面、或因為其最近模擬了該橋接器)上,該系統學習到對該表的更新且收回任何根據缺少該MAC-學習表中用於該MAC的項目之快取的決策,因為那些流程/封包現在可被傳遞至該項目的埠,而非氾濫(flooding)至該橋接器的所有埠。
在其他實施例中,該MAC-學習表可能已經具有用於該MAC位址的項目,且該映射的埠與目前輸入的訊框的抵達埠相同。該系統可接著偵測該MAC-學習表項目有存在且不需被修改。如果該決策引擎的此調用導致快取的決策,該系統可增加該區域參考計數。替代地,該MAC-學習表可能已經具有用於該MAC位址的項目但該映射的埠可能與目前輸入的訊框的抵達埠不同。該系統接著從該MAC-學習表移除先前項目,且新增新項目至關聯該MAC位址與該訊框的抵達埠之MAC-學習表。在擁有介面(其對應於該先前項目的所映射之埠)的節點上,該系統學習到有關該項目的移除且收回任何參考計數該項目的決策,因為它們現在根據不正確的資訊。在每個具有該橋接器的MAC-學習表之快取副本的節點(因為其具有對應於該橋接器之對外埠的介面、或因為其最近模擬了該橋接器)上 ,該系統學習到對該表的更新且收回任何根據用於該MAC之先前MAC-學習表項目之快取的決策,因為它們現在根據不正確的資訊。為了進一步說明,一種用於MAC-學習的方法在第2圖中示出且一種用於MAC-忘記(unlearning)的方法在第3圖中示出。
在另一實施例中,一種在該MAC位址(從橋接器的各個埠可達到)預先已知時減少乙太網路橋接器上的氾濫封包(flooded packet)的方法被提供。例如,在訪客VM被附接至節點的網路介面之一者(被映射至虛擬橋接器的對外埠的一者)的情況中,該MAC位址可被預先得知,使得該MAC-學習表可用該已知MAC-埠項目加以預先填入。
在另一態樣中,該運算方法藉由攔截與回應於ARP請求來減少IP網路上的氾濫封包。該方法包括:藉由該共享資料庫中所儲存的ARP快取來加強橋接器的狀態。該ARP快取包括單播IP位址對單播MAC位址的映射。如同該MAC-學習表,該橋接器的ARP快取可用對應於任何經由對內埠連接至該橋接器的路由器之項目來加以預先填入。各個項目可藉由下列加以決定:審查該橋接器的對內埠之一者;擷取該同儕埠的組態;及擷取該同儕埠的MAC及IP位址。該方法也可包括:將任何其他預先已知的項目預先填入該橋接器的ARP快取,諸如在訪客虛擬機被使用者指派或該系統自動指派MAC及IP位址的雲端管理架構中。該方法也可包括:辨識IP封包及擷取該封 裝乙太網路訊框的來源IP位址與來源MAC位址以及因此推論IP-MAC對應性及新增適當項目至該ARP快取。
在又一實施例中,一種模擬一或更多個IPv4路由器的方法被提供,此處各個路由器的對外埠被映射至該內層網路的一或更多個節點的介面,且路由器的各個對內埠被連接至另一虛擬路由器或虛擬橋接器的對內埠。該方法包括:維持該路由器的ARP快取之權威副本(單播IP位址對單播MAC位址的映射)於該共享資料庫中;將所有該路由器的對內埠之同儕埠的(IPv4、MAC)位址對預先載入該ARP快取;維持該路由器的轉送表(一組規則/路由,其根據挑選具有最精確匹配IPv4目的地前置碼與匹配的來源前置碼之規則來決定哪一個路由器埠應發射封包)之權威副本於該共享資料庫中;維持該路由器的ARP快取之快取副本及轉送表於每個節點(具有映射至該路由器的一個對外埠之介面)中與最近模擬封包穿越該路由器的每個節點中。如果節點具有至少一個要求模擬該路由器之快取的決策引擎,該路由器已經在該節點上加以模擬。該方法也可包括:當該共享資料庫中的權威副本改變時更新該ARP快取的快取副本及該轉送表。在模擬封包抵達IPv4路由器的時候,該路由器的狀態可被載入於此節點中,如果沒有先前的決策引擎調用已經載入它的話。
該決策引擎也可模擬抵達IPv4路由器的第一埠之IPv4封包。輸入的IPv4封包之目的地位址可能等於該路由器的埠之一者。該系統將接著偵測該封包被定址至該路 由器的埠之一者,決定該路由器將在封包的協定未被辨識或未被處理時丟棄該封包,偵測是否該封包為偵測(ICMP回音)請求且在該情況中從該路由器的埠產生偵測回覆封包至該第一封包的IPv4來源位址,且調用該決策引擎的模擬邏輯以決定該偵測回覆封包從該埠通過該虛擬網路將採取的路徑。如果該模擬邏輯決定該偵測回覆將在(任何裝置的)特定對外埠離開該虛擬網路,則該系統將映射該埠至其對應的介面與內層網路節點,且請求該呼叫系統從該介面發射該偵測回覆封包。替代地,輸入的IPv4封包之目的地位址可能不是該路由器的埠的一個位址,在該情況中該系統詢問該路由器的轉送表以決定以該封包的來源與目的地IPv4位置之最匹配的路由。在沒有匹配的路徑被找到時,該系統決定在接收到該第一封包的時候,討論中的路由器將丟棄該封包且以ICMP錯誤(諸如路由不能到達)來回應,且調用該決策引擎的模擬邏輯以決定該ICMP錯誤從該埠通過該虛擬網路將採取的路徑。如果該模擬邏輯決定該ICMP將在特定對外埠離開該虛擬網路,則該系統映射該埠至其對應的介面與內層網路節點,且請求該呼叫系統從該介面發射該ICMP錯誤封包。以類似方式,ICMP錯誤封包可在該匹配的路由指明該目的地以管理方式被禁止時加以產生。
當該模擬決定了該最匹配的路由指明該封包經由路由器埠(例如次一站埠)轉送時,該系統可改變該封包的的來源乙太網路位址至該次一站埠的MAC。如果該路由的 次一站閘道器為無效(意指該目的地位址在與該次一站埠相同的L3子網路上),該系統詢問用於對應於該封包的IPv4目的地之MAC的區域ARP快取且改變該封包之目的地乙太網路位址至該MAC。如果該路由的次一站閘道器不是無效(意指該封包必須被轉送以在到達其目的地以前通過至少再多一個路由器),該系統詢問用於對應於該閘道器的IPv4位址之MAC的區域ARP快取且改變該封包之目的地乙太網路位址至該MAC。該系統可進一步決定在接收到該第一封包的時候(其在模擬先前穿越的虛擬裝置以後可能已經被修改),討論中的路由器將進一步如所述修改該封包且從該次一站埠發射它。
在該ARP快取不含有用於所詢問IPv4位址的項目時(諸如在該次一站埠為對外埠時),該系統可實施一種方法,其包括:產生用於想要的IPv4位址之ARP請求封包;及新增一(IPv4、無效-MAC)對(註有對目前時間所設定的最後送出時間)至該共享資料庫,以指出何時最後ARP請求被送出給該IPv4。該方法可進一步包括:映射該對外次一站埠至其對應的介面及內層網路節點;請求該呼叫系統從該介面發射該ARP請求;及週期性重複該ARP請求封包從該介面加以發射的請求。在實施例中,該ARP請求將被該基本系統傳遞(如同進入該虛擬網路的任何其他封包),且因此有可能經過隧道至不同節點。該方法可繼續直到逾時出現,且接著回應於該第一封包而產生ICMP路由不能到達錯誤訊息。替代地,該方法繼續直到 該ARP快取(其包括用於想要的IPv4位址之(IPv4,MAC)項目)的區域副本之更新被接收到,且該方法接著包括:改變該封包的目的地乙太網路位址至該項目的MAC;決定所模擬的路由器將如所述修改該封包且從該次一站埠發射它。在實施例中,如果該ARP請求從被映射至不同節點上的介面之埠加以發射,該ARP回覆將在與處理該第一封包不同的節點接收。以此方式,該決策引擎能夠經由該ARP快取而非藉由直接接收該ARP回覆來學習該ARP項目。當逾時出現且該ARP快取項目未被找到時,該系統可能如先前所述以路由不能取得ICMP錯誤加以回應。
在另一實施例中,該決策引擎的調用導致了模擬ARP請求封包抵達IPv4路由器的第一埠,且此處該ARP的目標協定位址(「TPA」)為該抵達/第一埠的IPv4位址。該系統可接著產生ARP回覆封包(具有被設定至該抵達埠的MAC位址之來源硬體位址(「SHA」))、調用該決策引擎的模擬邏輯以決定該ARP回覆封包從該第一封包的抵達埠通過該虛擬網路將採取的路徑。該ARP回覆可用與先前所討論之回應類似的類似方式加以發射。替代地,該決策引擎模擬可決定所模擬的路由器將丟棄該ARP請求封包。
在其他實施例中,該決策引擎的調用導致了模擬ARP回覆封包抵達IPv4路由器的第一埠。該系統可偵測是否該ARP回覆是回應於該路由器所產生的ARP請求。在一 個實施例中,該系統檢查該ARP快取中有(IPv4、MAC)項目(註有最近的最後送出時間),即使該MAC本身為無效。如果沒有項目,該系統決定該路由器將丟棄此種非請求ARP回覆以便阻擋阻斷服務攻擊(denial-of-service attacks)。替代地,該系統從該ARP回覆擷取該來源硬體位址、MAC位址、及該來源協定位址與IPv4位址且更新該ARP快取。該ARP快取可藉由該(IPv4、MAC)項目在本地加以更新且在共享資料庫中加以更新。
在另一態樣中,目前所揭示的運算系統被配置成實施一種方法,其包括:模擬虛擬裝置的流入過濾器與流出過濾器,此處該等過濾器包括個別過濾規則(被組織而成為可經由跳躍規則互相參照的列表)。該方法也可包括:指明一個可讀取且應用邏輯至封包的L2至L4網路協定標頭的任何或所有欄位的條件;及指明一個在封包匹配該條件時被執行的動作(例如DROP、ACCEPT以供進一步處理)。
在實施例中,該方法進一步包含:維持用於各個裝置的流入/流出過濾器的過濾規則於該共享資料庫中;維持裝置的過濾規則的區域副本於任何已經最近模擬該裝置的節點上;當該等規則的權威副本在該共享資料庫中改變時更新該裝置的過濾規則的區域副本;及/或當一裝置的過濾器被修改時,重新驗證(模擬一裝置所要求的)本地快取的流程轉送決策。該方法也可包括:模擬匹配每一流程(per-flow)連接狀態的過濾規則,此處每一流程連接狀 態係由各個被模擬裝置加以獨立地追蹤,且此處該組連接狀態值取決於該封包的傳輸(L4)協定。在一個實施例中,該系統被配置成實施一個方法,其包括:在開始模擬裝置的時候,在中央資料庫中具有專用空間以供儲存每一裝置與流程(per-device-and-flow)連接狀態;藉由使用該封包的流程簽章來詢問該中央資料庫以擷取該連接狀態。在一個實施例中,該流程簽章係藉由以此順序附加這些欄位來加以運算:該被模擬裝置的裝置ID、該封包的L3標頭(例如IP)的來源欄位、L3目的地欄位、L4協定類型(例如TCP)、L4標頭的來源欄位、L4標頭目的地欄位。如果沒有連接狀態在該中央資料庫中找到,則該封包繼續新流程,該新流程的連接狀態隱含地為此封包的網路協定的該組狀態之「開始」值。該方法也可顯露該連接狀態值以供此裝置的過濾裝置來匹配。在結束模擬該裝置以前,且如果該模擬決定該裝置將轉送該封包,該連接狀態係依據用於此封包的網路協定的該組連接狀態值的轉移規則針對此封包的流程簽章與此封包的返回流程簽章加以設定。在與以上類似的實施例中,該封包的返回流程簽章將藉由以此順序附加這些值來加以運算:該被模擬裝置的裝置ID、該封包的L3標頭之目的地欄位、L3來源欄位、L4協定類型、L4標頭之目的地欄位、及L4標頭來源欄位。正流程簽章及返回流程簽章也可藉由使用額外欄位(其可被使用於給定應用中)來加以定義。當用於該正流程的所快取的決策到期時,該系統可排程與該流程及該返回流程 兩者關聯的連接狀態之移除。為了進一步說明,一種用以追蹤連接的方法的一個實施例在第4圖中加以示出。
在實施例中,該方法進一步包括:模擬匹配該封包的流程的連接狀態的過濾規則,此處每一流程連接狀態係在所有被模擬裝置之間共享,且此處該組連接狀態值取決於該封包的傳輸(L4)協定。以此方式,連接狀態被視為該流程的性質,獨立於通過裝置網路所採取的路徑。該結果為對該決策引擎的單一呼叫中所模擬的所有裝置將同意該封包的流程與返回流程的連接狀態;且對該決策引擎的二個不同呼叫中所模擬的任二個裝置將同意那些連接狀態,如果下列的至少一者為真:返回流程在與該正流程被發射相同的裝置流入該虛擬網路;該返回流程封包具有公共(即全域特有)L3位址。在實施例中,該共享資料庫包括用以儲存每一流程連接狀態的專用空間。在開始模擬該封包穿越該虛擬網路的時候,該共享資料庫可藉由使用該封包的流程簽章來加以詢問。該流程簽章可能取決於該第一被模擬裝置的裝置ID,如果L3來源/目的地之至少一者不是公共(即全域唯一)。該流程簽章也可取決於該封包的L3標頭(例如IP)的來源欄位、L3目的地欄位、L4協定類型(例如TCP)、L4標頭的來源欄位、及L4標頭目的地欄位。如果沒有連接狀態在該中央資料庫中找到,則該封包繼續新流程,該新流程的連接狀態隱含地為此封包的網路協定的該組狀態之開始值。用以由任何被模擬裝置的過濾規則來匹配的連接狀態值可接著被顯露。在結束 模擬該封包歷經該虛擬網路之前,且如果該模擬決定該封包最終將從一些虛擬埠發射,該連接狀態係依據用於此封包的網路協定的該組連接狀態值的轉移規則,來設定此封包的流程簽章與此封包的返回流程簽章。該連接狀態在該封包被穿隧/轉送(且因此在返回該決策以前)以前被寫入至該共享資料庫,以便避免競爭情況(此處在該連接狀態被寫入至該共享資料庫完成以前,來自該返回流程的封包被模擬且觸發對該連接狀態的詢問)。該封包的返回流程簽章可用類似方式加以計算。如以上所述,當用於該正流程之所快取的決策到期時,排程與該流程及該逆流程兩者關聯的連接狀態之移除。
在另一態樣中,該方法包括:減少模擬時間(藉由在連接狀態將不會由該封包的模擬或由一返回封包(return packet)的模擬加以使用時避免詢問或寫入此狀態、藉由延遲詢問用於該封包的流程之連接狀態直到一些被模擬裝置中的過濾規則需要讀取此種狀態);決定是否該返回封包的可能路徑將包括模擬一需要讀取該返回流程的連接狀態之過濾規則;及在否定的情況中省略寫入正與返回流程連接狀態兩者至該共享資料庫。在實施例中,該連接狀態被保留在該共享資料庫中,使得如果來自相同流程的任何封包在稍後時間抵達第二節點的介面,該第二節點的決策引擎將到達相同決策,該決策有關如何處理該流程(在沒有虛擬網路組態改變的情況)。必需在流程的封包抵達該內層網路的超過一個節點之介面(因為外部路由決策)時 保護該流程的完整性。那些路由決策可能或可能不關連至節點的介面之潛在或真實的不能到達性。
在其他實施例中,該系統被配置成實施虛擬裝置的網路(即L3)與傳輸(即L4)位址轉譯的模擬。類似地,該系統被配置成模擬該網路的逆向轉譯及虛擬裝置的協定位址。這些程序可被統稱為「NAT」。在各種實施例中,個別NAT規則可在過濾規則之前或之後或穿插、指明一個可讀取且應用邏輯至封包的L2至L4網路協定標頭的任何或所有欄位的條件、指明在封包匹配該條件時該L3及L4欄位應如何被轉譯或逆向轉譯、及/或指明一個在轉譯已經出現時被執行的動作(例如ACCEPT以供該裝置進一步處理、CONTINUE在該規則組中處理)。該方法可進一步包括:維持用於各個裝置的流入/流出過濾器的轉譯規則於該共享資料庫中;維持裝置的過濾規則的區域副本於任何已經最近模擬該裝置的節點上;及當該等規則的權威副本在該共享資料庫中改變時更新該裝置的轉譯規則的區域副本。在模擬該裝置的期間,如果該封包處理到達該NAT規則,該方法包括:決定是否該封包(有可能已經由先前裝置或規則加以修改)滿足該規則的條件以及在肯定的情況中依據該規則所指明的轉譯或逆向轉譯來修改該封包。當裝置的轉譯被修改時,要求模擬該裝置之本地快取的流程轉送決策可接著被重新驗證。
在另一態樣中,該系統實施一個支援有狀態目的地NAT之實體分散式虛擬裝置,其中一些NAT規則容許L3 與L4目的地位址之轉譯目標的選擇且指明用以作出轉譯目標間的選擇之策略。在實施例中,該系統可儲存各個正流程之轉譯選擇於該共享資料庫中,由正流程簽章與逆流程簽章兩者所鎖上。該正流程簽章可由以此順序的這些值所構成:該虛擬裝置的ID、該封包的L3來源位址、L3目的地位址、L4協定號碼、L4來源位址、及L4目的地位址。該逆流程簽章可由以此順序的這些值所構成:該虛擬裝置的ID、該轉譯所選擇的L3位址、該封包的L3來源位址、L4協定號碼、該轉譯所選擇的L4位址、該封包的L4來源位址。所儲存的轉譯可編碼該封包的原始L3與L4目的地位址以及對該轉譯所選擇的L3與L4目的地位址。該方法進一步包括:在模擬裝置的期間,如果該封包處理到達此種NAT規則(其容許選擇目的地位址)且滿足該規則的條件,如以上所述構成用於該逆流程簽章的金鑰以及詢問該共享資料庫,以決定是否轉譯已經藉由先前決策引擎的執行(在本地或某遠端內層網路節點)加以儲存(且因此所轉譯的位址之選擇已經被作出)。如果此種儲存的轉譯在該共享資料庫中找到,則修改該封包的L3與L4目的地位址至所選定的L3與L4位址,且接著繼續該模擬。如果此種儲存的轉譯在該共享資料庫中未找到,則依據所指明的策略來作出選擇、依據該選擇來修改該封包的L3與L4目的地位址、如先前所述儲存該轉譯選擇至該共享資料庫、且接著繼續該模擬。在模擬裝置的期間,如果該封包處理到達了指明逆轉一選擇的逆向轉譯規 則,且該封包滿足該規則的條件,則假設該封包為所轉譯的正流程之返回封包、構成對應於該逆流程簽章的金鑰、且詢問該共享資料庫以決定是否轉譯已經針對該逆流程來加以儲存。該返回流程簽章可由以此順序的這些值所構成:該虛擬裝置的ID、該封包的L3來源位址、L3目的地位址、L4協定號碼、L4目的地位址、及L4來源位址。如果此種儲存的轉譯在該資料庫中找到,則藉由修改該封包的L3及L4來源位址至儲存的轉譯的原始L3與L4位址來逆向施加它至此封包、且接著繼續該模擬。如果此種儲存的轉譯在該共享資料庫中未找到,則該封包為所轉譯的正流程之返回封包的假設不正確,所以沒有逆向轉譯需要被施加,且因此繼續該模擬猶如該逆向規則的條件未被滿足。以此方式,該系統及方法容許儲存該等轉譯於共享資料庫中且處理競爭情況,使得該虛擬裝置正確地表現且與正確作用的硬體裝置沒有區別,但相較於硬體裝置該虛擬裝置的可用性增加。
在另一態樣中,一些NAT規則容許L3與L4來源位址之轉譯目標的選擇且指明用以作出該選擇之策略。在實施例中,該系統可儲存各個正流程之轉譯選擇於該共享資料庫中,由正流程簽章與返回流程簽章兩者所鎖上。所儲存的轉譯編碼該封包的原始L3與L4來源位址以及對該轉譯所選擇的L3與L4來源位址。在模擬裝置的期間,如果該封包處理到達此種NAT規則(其容許選擇來源位址)且滿足該規則的條件,如以上所述構成用於該正流程 簽章的金鑰以及詢問該共享資料庫,以決定是否轉譯已經藉由先前決策引擎的執行(在本地或某遠端內層網路節點)加以儲存(且因此所轉譯的位址之選擇已經被作出)。如果此種儲存的轉譯在該共享資料庫中找到,則該封包的L3與L4來源位址被修改至所選定的L3與L4位址,且接著繼續該模擬。如果此種儲存的轉譯在該共享資料庫中未找到,則選擇係依據所指明的策略加以作出、依據該選擇來建立該返回流程簽章及詢問該資料庫以確保沒有轉譯由該金鑰加以儲存、重複該選擇與資料庫檢查直到該資料庫返回對該金鑰沒有匹配、接著依據最終選擇來修改該封包的L3與L4來源欄位、如先前所述儲存該轉譯選擇至該共享資料庫、且接著繼續該模擬。該資料庫中對該逆流程金鑰的檢查可為了正確性而被使用且用以避免在配送返回流程時的不明確。在模擬裝置的期間,如果該封包處理到達了指明逆轉一選擇的逆向轉譯規則,且該封包滿足該規則的條件,則假設該封包為所轉譯的正流程之返回封包、構成對應於該返回流程簽章的金鑰、且詢問該共享資料庫以決定是否轉譯已經針對該返回流程來加以儲存。如果此種儲存的轉譯在該資料庫中找到,則藉由修改該封包的L3及L4來源位址至儲存的轉譯之原始L3與L4位址來逆向施加該儲存的轉譯至此封包、且接著繼續該模擬。如果儲存的轉譯在該共享資料庫中未找到,則該封包為所轉譯的正流程之返回封包的假設不正確,因此沒有逆向轉譯需要被施加,且因此可繼續該模擬猶如該逆向規則的條件未 被滿足。
在又一態樣中,選擇L3與L4位址轉譯(已經在該資料庫中)的嘗試次數可藉由分割該L3與L4位址範圍而成為可被個別節點預留的區塊來加以減少。當選擇用於轉譯的L3與L4位址時,節點在本地檢查是否在其本身區塊中有未使用位址組合,否則其預留新區塊。通常,此導致對該資料庫的一個往返通訊。如果該節點無法預留新區塊且沒有可用於新轉譯的未使用L3與L4位址組合,則其嘗試使用該規則所指明之限制內的隨機L3與L4位址組合。
在實施例中,路由協定全域操作為其針對建立與維持連接性和網路穩定性的全域影響加以設計及研究。然而任何單一路由器僅需要維持與其最接近同儕的路由器協定討論。一組織可能為了各種原因而操作與其鄰近網路的路由協定對話。作為實例,其可對鄰近者提示針對特定位址區塊之進入其網路的最佳路徑,且其可根據外部網路條件來調整其本身的轉送決策。這些路由對話本質上為有狀態,既因為該討論可經由一連接(諸如TCP)加以舉行(相對於無連接協定(諸如UDP))以及又因為目標為交換該等路由器接著用來決定轉送封包至哪裡的狀態。在實施例中,該系統使用設備模型(appliance model)來實施路由協定。在設備模型中,L2隔離被提供給在該內層上執行的該組虛擬網路。在該等路由協定的情況中,該設備模型可能有益處,因為該路由協定為一邏輯的特定部份及一個該 虛擬裝置本身為話務的來源與目的地之邏輯。在一個實施例中,不是放置整個L3路由器於設備中,只有虛擬埠與一些外部同儕間的路由協定被放置到設備中。以此方式,該系統較能容錯為儘管該設備可能為單點故障並不重要,該等路由協定藉由容許同儕間通過多個埠的多個對話而考慮到這個。
該系統可被進一步配置成藉由實施一種方法來支援虛擬IPv4路由器中的路由協定(例如BGP、iBGP、OSPF),該方法包括:儲存用於想要的路由協定與同儕對話的組態參數作為該虛擬埠(經由該虛擬埠該路由器將建立與其同儕的對話)的組態的一部份。此資訊可被儲存於該共享資料庫中。該方法也可包括:儲存具有該路由協定對話組態的該想要的已公佈路由(advertised route)於該共享資料庫中,當內層網路節點具有映射至虛擬埠(具有用於路由協定對話的組態)的公共介面時,該節點在本地啟動一容器中(例如VM中)的路由協定常駐程式。該容器得到該主機上的「私有」介面,且該等節點設立了轉送決策,該等轉送決策容許來自該路由協定對話(及選擇性的幾個其他流程,像是ARP與ICMP)的封包在該容器與該同儕間流動繞過該決策引擎。該方法也可包括:在一埠的路由協定對話組態暗示該同儕的封包將抵達對應的內層節點介面。類似地,從該虛擬路由器埠至該同儕的對話封包必須經由該對應的內層節點介面加以發射。然而,從該同儕至該虛擬網路的網路話務也將抵達相同介面,且來自該虛擬 網路的該虛擬路由器的轉送表指出的話務應經由該同儕必須被相同介面發射。每個正常流程(非路由協定流程)的第一封包將導致決策引擎呼叫。反之,該等路由協定流程的封包繞過該決策引擎。那些抵達該公共介面者直接從該私有介面發射,且反之亦然。該節點也探測該容器以既推動用於該路由協定對話的該虛擬埠的已公佈路由以及又看見由該容器中執行的該路由協定常駐程式所學習的路由(即該同儕所公佈的路由)。該節點處理(例如聚集)該同儕所公佈的路由且在設定它們的流出埠至具有該路由協定對話組態的虛擬埠的ID以後新增它們至該虛擬路由器的轉送表。如果該容器或對話失效,該節點移除所有其本身可能已經新增至該轉送表的此種路由。該結果在於該同儕將該路由器的埠認作送出及接收正常(終端主機)話務與路由協定對話話務兩者。由於該路由協定對話話務在每一埠被配置,虛擬IPv4路由器可能具有超過一個埠具有與一或更多個同儕的所配置的路由協定對話。藉由映射那些虛擬埠至不同內層網路節點上的介面,該虛擬路由器不是單點失效(像是實體路由器)。此相較於先前可用的系統進一步改善系統的容錯能力。
在又一態樣中,該系統提供用以實施或模仿虛擬私有網路(「VPN」)的方法。在一個實施例中,一種連接虛擬裝置至網際網路的不同部份中的遠端網路之方法被提供,其容許該虛擬裝置與該遠端網路交換封包猶如其被實體連接且其鏈結為安全且私有。以此方式,外人無法看見鏈 結話務也無法在該鏈結上注入話務。該方法可包括:容許虛擬L2與L3裝置埠組態被註有VPN組態物件的識別符(儲存於該共享資料庫中)。VPN組態可被指派給特定內層網路節點,或內層網路節點可能競爭以奪得對VPN組態的鎖,此處對VPN組態的鎖之獲取係示意了該鎖的擁有者負責管理對應的VPN鏈結。在後者的情況中,節點的失效導致該節點喪失該鎖且因此在該節點仍作用時破壞該節點上的VPN鏈結。由另一節點獲取該VPN鏈結因此有可能。VPN組態可包括私有埠識別符。該私有埠識別該裝置上的應被連接至該遠端網路的虛擬埠。該VPN被指派的內層網路節點在本地產生邏輯網路介面且映射它至該私有埠識別符。它接著啟動容器內的VPN管理常駐程式(例如OpenVPN)且連接該容器至新產生的介面。該節點經由該介面所發射的話務(即該虛擬網路從該虛擬埠所發射)因此抵達該VPN管理常駐程式(其接著將它加密且將它轉送至遠端網點)。此處該VPN組態指明該容器內的VPN管理常駐程式應經由該內層網路節點本身的網路連接來轉送加密話務至該遠端網點,該容器中的VPN管理常駐程式必須因此充當VPN用戶端(因為該內層網路節點可能不具有公共IPv4位址)。該VPN組態因此指明該區域常駐程式應連接的該遠端VPN管理常駐程式的公共IP位址。在另一態樣中,所有內層網路節點可能不具有對網際網路的直接存取且該加密VPN話務必須因此重新進入該虛擬網路而被穿隧至具有被連接至網際網路的 上鏈之虛擬裝置(例如具有BGP致能埠的L3邊緣路由器)。在實施例中,該VPN組態指明公共埠,其識別虛擬裝置上的可轉送(直接或間接)封包至網際網路的虛擬埠。該VPN組態也指明是否該區域VPN常駐程式應充當特定IPv4位址與TCP(或UDP)埠上的伺服器、或者一連接至遠端IPv4位址與TCP或UDP埠的用戶端。該VPN被指派的節點創造區域邏輯網路介面、映射它至該公共虛擬埠、且連接它至該VPN管理常駐程式容器。該VPN常駐程式被配置成從該介面送出其加密/穿隧話務,且將從該介面接收來自該遠端網點的加密話務。
在又一態樣中,該系統提供該虛擬網路上的DHCP性能且可配置具有對該虛擬網路的存取之主機(實體或虛擬)。以此方式,沒有單一DHCP伺服器會被需要,也不需要在單一L2網域上模擬。該DHCP組態可從L2網域提取且簡單定義為可與虛擬埠關聯的資源。當DHCP Discover或Request訊息抵達虛擬埠時(即抵達對應於虛擬裝置的對外埠之介面),該系統的網路模擬決策引擎檢查該埠的組態來看是否有關聯的DHCP組態。如果這樣,該決策引擎使用該關聯的DHCP組態以建構對那些訊息的回覆(分別為DHCP Offers及Replies)且指示該節點從該請求抵達的介面發射那些封包。替代地,該決策引擎模擬該封包穿越該網路,如對於任何抵達虛擬埠的其他網路封包。在此方面,DHCP為UDP所傳輸的另一協定,其接著為在IP上執行的L4。此方法容許DHCP資源獨立於網路拓樸 (且較具體而言獨立於L2網域)來加以設計。DHCP資源可因此依據使用者需要而在任意組的埠各處被分享。在實施例中,該系統儲存DHCP資源於該共享資料庫中。
在實施例中,DHCP資源被提供。該DHCP資源包括由具有對應值的一組選項所定義DHCP組態。該DHCP資源也包括動態IP位址庫、及潛在的一組對IPv4位址指派的靜態MAC位址。該DHCP資源的組件可能被捆紮且關聯於任何虛擬裝置對外埠。該系統可在一種方法中利用DHCP資源,該方法包括:儲存DHCP資源定義於該共享資料庫中;儲存對DHCP資源映射的對外虛擬埠於該共享資料庫中;使用該決策引擎以識別抵達虛擬埠的DHCP封包;及決定是否該虛擬埠被映射至DHCP資源。如果該虛擬埠未被映射至DHCP資源,使用先前所述的方法來決定該封包應如何被處理。如果該虛擬埠被映射至DHCP資源,使用該DHCP資源定義以依據該DHCP協定且依據發送者的MAC位址來建構對該封包的邏輯回覆。當發送者請求IPv4位址時,該系統進一步檢查是否存在針對該發送者的MAC位址之靜態指派且隨著所提供的IP位址返回該IPv4位址。當發送者請求IPv4位址且該DHCP資源不含有靜態IPv4位址指派時,該系統檢查是否該資源定義了動態分配的IPv4位址庫。如果這樣,且如果該庫中有未預留的位址,代表該用戶端來預留該等位址的一者(由MAC位址所識別),且該DHCP回覆訊息被建構成應經由接收到該請求的對外埠來加以發射。從DHCP資源中所 定義之動態可指派庫的IPv4位址預留可被儲存於該共享資料庫中以防止衝突或重新使用。該預留包括可由用戶端請求加以更新的租賃。當租賃被更新時,租賃到期時間可被該決策引擎更新以將該租賃維持所定義的一段時間。
在另一實施例中,該系統實施表象化狀態轉變(也稱為REST API)。該REST API可被該系統與該系統的租戶用來檢查、監測及修改該虛擬網路(包括該虛擬網路拓樸)。在實施例中,該REST API提供角色導向的存取控制且知道該虛擬拓樸的各個部份之擁有權。該REST API也可知道一或更多個租戶的角色及性能。在一個實例中,租戶可創造其本身的虛擬切換器與路由器,且藉由使用該REST API來管理所有方面。在一些情況中,諸如在IasS雲端中,可能有租戶(諸如服務提供者租戶)具有其可租給其他租戶的全域IP位址庫。在此種系統中,該服務提供者租戶可創造對內埠且如以上所述給予另一租戶連接至該埠的能力。
為了例示之目的,配置成實施目前所揭示方法的一或更多者之系統的實施例在第13及14圖中加以描繪。參照第5圖,系統的實體圖被示出,其被配置成用於VPN應用。具有VPN伺服器51的遠端網點50經過網際網路52對內層網路53通訊。在實施例中,VPN伺服器51可為OpenVPN伺服器。該內層網路可為私有IP網路。主機54可為被連接至該內層網路的節點且包括網路介面55。網路介面55被連接至隧道埠56。隧道埠56如先前所討論 可利用GRE穿隧或其他穿隧方法。網路介面55也可通過加密隧道62與容器中的VPN用戶端57通訊。該VPN用戶端可為OpenVPN用戶。該容器中的VPN用戶端57通過虛擬網路話務59與流程可程式化切換器58通訊。流程可控制切換器58也與決策引擎60(其與共享資料庫61通訊)通訊。應用目前所揭示的方法之一或更多者,該系統提供一種使用該主機的網路來到達在遠端網點的VPN伺服器之VPN管理常駐程式。
參照第6圖,系統的另一實施例之實體圖被示出以用於VPN應用。具有VPN伺服器71的遠端網點70經過網際網路72對第一主機73的網路介面74通訊。第一主機73包括決策引擎78(其與流程可程式化切換器76通訊)。流程可程式化切換器76通過隧道埠77與網路介面75通訊。第一主機73的網路介面被連接至內層網路79。該內層網路也被連接至第二主機80的網路介面81。在實施例中,內層網路79為與公共網際網路隔離的私有網路。第二主機80進一步包括流程可組態切換器83(其通過隧道埠82與網路介面81通訊)。流程可程式化切換器83也與決策引擎84以及容器中的VPN用戶端85通訊。決策引擎84也與共享資料庫86通訊,使得該共享資料庫提供分散式狀態資訊給該系統。應用目前所揭示的方法之一或更多者,該系統提供一種在雲端運算環境中使用該虛擬網路的上鏈來到達在遠端網點的VPN伺服器之VPN管理常駐程式。
在其他實施例中,藉由使用虛擬網路(覆蓋於內層網路之上)來促進封包路由的系統及方法目前被揭示。在實施例中,該內層網路為實體網路,然而在其他實施例中,該內層網路可為虛擬或邏輯網路。為了清楚,該內層網路可能在實體網路方面加以描述,然而一或更多個虛擬網路可被層疊於另一個上,各提供了內層網路給次一個覆蓋虛擬網路。
本揭示的系統可包括互連複數個節點的網路。該網路的節點可對應於與該網路通訊的實體組件,諸如伺服器、路由器、或其他運算裝置。各個裝置可支援一或更多個節點。在另一實施例中,該等節點可表示邏輯或虛擬裝置。該網路可為服務提供者所維持的私有網路,此處該服務伺服器銷售、出租、或者提供網路性能給複數個租戶。該網路可具有提供對公共網路的連接之一或更多個節點,諸如邊緣節點。在一個實例中,該網路包括複數個外部網際網路(Internet facing)節點,該等節點提供網際網路與該網路間的多個輸入/輸出通訊路徑。該等外部網際網路節點可為連接網際網路的路由器。在另一實例中,該網路包括被配置成主管租戶虛擬機器的複數個節點。主管租戶虛擬機器的節點可為具有必需資源以操作一或更多個租戶虛擬機器的主機伺服器或其他裝置。在一些實施方式中,節點可主管來自單一租戶的多個虛擬機器。在另一實施例中,節點可主管不同租戶所擁有的多個虛擬機器。在又一實施例中,節點可操作而既主管租戶虛擬機器且又提供網際 網路連接給該網路。
在各種實施例中,一種用以將封包從第一節點路由至第二節點的方法被揭示。該方法包括:在網路的第一節點接收封包。該方法進一步包括:調用決策引擎以模擬該封包將如何穿越虛擬網路。該模擬可包括:存取虛擬路由表以決定該封包的次一站(此處該次一站為對內埠(也稱為邏輯埠)或者對外埠(也稱為物化埠));及繼續以串聯方式存取後續虛擬路由表直到決定該次一站為該網路的第二節點上的對外埠。在該決策引擎已經決定如何處理該封包以後,該封包可被送出經過該內層網路至該第二節點的對外埠。在實施例中,該內層網路可為乙太網路、私有或公共IP網路、或提供該複數個節點間的連接之其他網路。
在一個實施例中,該網路的各個節點含有邊緣連接器。各個邊緣連接器含有在相同實體主機或節點上執行的流程可配置切換器及決策引擎之例子。在一個實施例中,流程可配置切換器可包含軟體,諸如Open vSwitch。該決策引擎可模擬一或更多個虛擬L2切換器及虛擬L3路由器。邊緣連接器可具有實體介面、虛擬介面、或兩者。虛擬介面為諸如例如TAP介面或核心級(kernel level)虛擬介面的介面。實體介面為例如實體網路介面卡(NIC)。
流程可配置切換器為一種施加動作列表至所有匹配流程規則之封包的軟體組件。與動作列表關聯的是流程匹配(其指明哪個封包匹配該流程)。在一些實施例中,該流 程匹配可由封包協定標頭型樣所指明。該流程匹配可能根據該封包資料的一或更多部分,包括例如來源及目的地埠、來源及目的地位址、MAC位址。該流程匹配也可根據封包資料或封包資料的子集之組合,諸如該來源或目的地位址的一部分。流程規則可包含至少一流程匹配及動作列表,且可被稱為「流程」。二個流程(一個輸入,一個輸出)形成一連接。一般而言,二個流程(輸入流程及輸出流程)形成一連接以供網路外側的用戶端與租戶的虛擬機器(或該網路內的其他被提供的服務)間的通訊。由一或更多個流程規則所表示的各個流程可被儲存於分散式狀態(被維持於共享資料庫中)中。在一個實施例中,各個流程被儲存於分散式狀態(被維持於該網路(所有要求存取該分散式狀態的其他節點可存取)的節點上)中。儲存的流程可用它們的流程匹配、或由其他與該等流程準則關聯的準則來加以編索引。
在一個實施例中,流程表可被維持,其快取針對一連接的一個方向中的第一封包所作出的路由決策。該流程表被維持於該流程可配置切換器內。該網路可具有對外部網路的多個可能的存取點,且連接的輸入與輸出不需要使用相同虛擬路由。容許不同輸入及輸出路由可在該網路的某些部分發生中斷時改善該系統的容錯能力。容許不同的輸入及輸出路由也可能藉由平衡該網路中不同路徑間的負載使網路資源的利用率被改善。
該網路也可含有將該網路的節點間的封包路由及切換 的轉送元件。該等轉送元件可為L2切換器、L3路由器、或L2切換器與L3路由器的組合之任一者。該等轉送元件可為實體或者虛擬,且該網路可包括實體及虛擬轉送元件的組合。實體轉送元件為硬體組件,而虛擬轉送元件可在軟體中實施。在一個實施例中,虛擬轉送元件藉由使用表來加以實施。例如,該決策引擎可被用來模擬依據針對該網路所建立的虛擬拓樸之封包的路由及切換。
在該網路中,虛擬路由器可被連接至其他虛擬路由器以建構可由虛擬網路圖所示出的虛擬網路拓樸。各個虛擬路由器可具有複數個虛擬埠,此處各個虛擬埠為對內(邏輯)埠或者對外(物化)埠。例如,各個虛擬路由器可包括虛擬路由表,且該等對內埠可藉由在該虛擬路由表中實施查找來加以識別,以決定被該虛擬路由器路由之封包的次一站。各個查找可導致另一虛擬路由器的同儕對內埠或對外埠,容許該決策引擎模擬虛擬拓樸(具有多個虛擬路由器)的穿越。在一個實施例中,對外埠可對應於流程可配置切換器中的埠,諸如隧道埠。在一些實施例中,對外埠可對應於提供網際網路連接的節點之位置。在另一實施例中,對外埠可對應於在該網路內操作之虛擬機器的位置。針對對內及對外埠兩者,在該共享組態樹中的虛擬埠的靜態組態明確含有該埠的類型(即對內或對外)以及在對內埠的情況中該虛擬鏈結另一端(即同儕對內埠)的通用唯一的識別符(「port_uuid」)。額外地,該等虛擬路由器可具有它們本身的IP位址。額外地,各個虛擬路由器 可支援諸如邊界閘道協定(「BGP」)及/或內部閘道協定(「IGP」)的協定。
在另一實施例中,該等邊緣連接器可具有隧道埠(其不是該等虛擬路由器的埠)。該隧道埠可被用來連接一個邊緣連接器跨越該網路至另一邊緣連接器。例如,一個邊緣連接器的流程可配置切換器可被隧道埠連接至另一邊緣連接器的流程可配置切換器。在一個實施例中,封包可抵達被預定至另一邊緣連接器的虛擬機器的一個邊緣連接器。當封包被預定至另一邊緣連接器上的對外埠時,其經由隧道送至該邊緣連接器。表可被維持於將埠映射至邊緣連接器的分散式狀態中以及維持於將邊緣連接器映射至隧道的表中。因此邊緣連接器可根據選定的(非區域)埠來決定通過哪一個隧道送出封包。在另一實施例中,對外埠對邊緣連接器的映射以及邊緣連接器對隧道的映射可被維持於個別節點上,且該等邊緣節點可與該個別節點通訊以決定用於封包的適合隧道。
在一個實施例中,各個節點上的邊緣連接器具有對分散式狀態的存取,該分散式狀態可被儲存於共享資料庫中。該分散式狀態由該等邊緣連接器所維持及共享。該分散式狀態可例如含有該組態樹及有關該虛擬及/或實體網路拓樸的其他資料。在一個實施例中,分散式狀態可藉由使用Zookeeper及memcache來加以實施。在另一實施例中,該分散式狀態的一部份為組態樹,但諸如雜湊表及n元樹的其他結構被考量。該組態樹及其他共享資料可視需要 由該等邊緣連接器加以存取,諸如由該決策引擎。
術語「用戶端」在此處被用來指示外部網路用戶端(諸如網路瀏覽器),其試著到達該系統內所主管的伺服器(例如)來存取虛擬機器的服務。術語「租戶」被用來指示該服務提供者的客戶。租戶可具有一或更多個虛擬機器或在該系統內的實體機器上操作的其他服務,且可想要動態建立這些虛擬機器與該等用戶端間的負載平衡或網路位址轉譯(「NAT」)規則。
現在參照第7圖,伺服器101被示出,具有二個網路介面卡NIC A 111及NIC B 112。為了例示之目的,一些節點可被標記為面對網際網路用戶端的邊緣節點,且提供網際網路連接給該網路。其他節點可被標記為主機節點,其被配置成主管租戶虛擬機器或該網路內的其他服務。為了例示之目的,該等邊緣節點及主機節點可被顯示成具有對稱架構,然而在各種實施例中,各種架構可被用於該系統中的各種節點。儘管在面對網際網路的邊緣節點及虛擬機器主機節點方面加以示出,該系統也可含有中間節點(包括資料儲存裝置)且支援欲促進該網路之操作的伺服器。如第7圖中所示,NIC A 111具有對網際網路151的連接且NIC B 112具有對內部提供者構造152(該內層網路)的連接。內部提供者構造152可為私有IP網路、或該等節點間的其他網路提供者IP連接。
該系統包括軟體組件(實施該實體網路上所覆蓋之虛擬網路的許多特徵)。為了示出該等軟體組件的操作,接 收到封包以後的動作針對選定操作加以描述。
在一個實施例中,SYN封包被接收以建立TCP連接。該SYN封包從網際網路151在NIC A 111上接收。封包由在流程可配置切換器161的邊緣連接器所接收以供切換。流程可配置切換器161嘗試藉由匹配與該封包關聯的資料至流程表162中所儲存的流程規則來識別流程規則。匹配的資料可例如包括來源及目的地埠、網路位址、MAC位址、或與該封包關聯的其他資料。該SYN封包典型為流程中的第一封包且因此流程可配置切換器161無法找到對應於流程表162中的第一封包的項目。在沒找到該流程表中的對應項目的時候,流程可配置切換器161對決策引擎165作出功能呼叫且傳送該封包至該決策引擎。該封包可抵達該流程可配置切換器的埠,且該流程可配置切換器可用該封包傳送輸入埠的ID至該決策引擎。儘管該流程可配置切換器及決策引擎的功能為了清楚而分開描述,將顯而易見的是,該等軟體組件可視需要加以整合。替代地,各個組件可被分割或與其他組件組合,只要該組件的功能被維持住。在一個實施例中,該決策引擎經由OpenFlow協定傳送至流程可配置切換器161且轉譯該流程可配置切換器的輸入埠的ID而成為虛擬埠ID(「vport」)。替代地,此映射可能根據MAC位址、或802.1x憑證而非輸入埠的ID。該封包的路由的其餘者可能依據其L3資訊。決策引擎165具有用以模擬該封包通過該虛擬網路拓樸的路由之邏輯。在一個實施例中,僅連線的第一 封包將造成對該決策引擎的呼叫,因為一旦該流程在流程表162中創造,該流程可被應用至相同流程的後續封包。
為了創造與新流程關聯的流程規則,在一個實施例中,該決策引擎建立了指出如何處理及轉送該封包的動作列表且將它插入作為該流程表中的流程規則。匹配用於該流程的準則之後續封包讓該動作列表被施加,其可包括:將該封包路由至給定埠。如果該封包欲用於在另一伺服器上執行的另一邊緣連接器,其可經由隧道埠路由至該另一邊緣連接器。隧道埠可連接該內層網路上的邊緣連接器或節點且被用來在邊緣連接器間轉送封包。反之,當封包欲用於另一邊緣連接器上的虛擬埠時,其通過隧道送至該邊緣連接器。該隧道協定在一個實施例中為GRE+IP。此穿隧協定容許伺服器101上的一個流程可配置切換器161經由內部提供者構造152來與另一伺服器(未圖示)上的另一流程可配置切換器(未圖示)通訊。第8圖示出複數個個別主機210、221、222(由該提供者的內部L3網路構造202所連接)上的複數個邊緣連接器203、204、205之實體互連。為了例示之目的,虛擬機器211及212在主機221上操作,而虛擬機器213及214在主機222上操作。管理控制台206也可被連接至內部網路構造202(其形成該內層網路)。第9圖示出被覆蓋於此實體網路上的虛擬拓樸。該穿隧協定容許該構造在流程可配置切換器間路由該等封包而沒有修改提供者構造152中的硬體。因為實際封包係相對於乙太網路(L2)經過IP(L3)來傳遞,該 網路是可擴展的且可能不受限於可適用於乙太網路通訊的距離限制。隧道的端點為該等邊緣連接器的流程可配置切換器之埠,但隧道埠以不同於對外埠的方式加以處理。該隧道封包標頭的IP部分容許該封包到正確的主機,且接著該標頭的GRE部分用來讓封包到對的隧道埠。然而該標頭中的另一金鑰用來識別目的地對外埠,使得接收的邊緣連接器可將該封包路由至正確的區域埠。
現在參照第8圖,包含三個邊緣連接器203、204、205的網路被示出,此處各個邊緣連接器位於主機上。繼續以上的實例,假設封包從網際網路151經由連接網際網路的路由器201而在邊緣連接器203於實體網路介面卡(NIC)上被接收且該封包被預定到虛擬機器211。回想到該封包為流程的第一封包,所以沒有對應於該流程表中的封包之流程規則。因為該流程表中沒有對應的流程項目,該決策引擎被調用。該決策引擎根據該封包在其上被該流程可配置切換器接收的埠(及可能藉由該MAC位址、與802.1x憑證)來決定虛擬埠(vport)。此例子中的vport為對應於NIC對外(物化)埠以及該流程可配置切換器中的埠。該決策引擎使用該vport來決定該埠被連接至哪個虛擬路由器或虛擬切換器。如以上所討論,虛擬路由器可由一表(該決策引擎可存取且被維持於分散式狀態中)來加以實施。一旦該決策引擎決定哪個虛擬路由器被連接至該對外埠,該決策引擎藉由識別在對應的虛擬路由器表中的目的地IP位址來選擇匹配的路由。在一個實施例中 ,該決策引擎可藉由使用負載平衡演算法來從數個路由、或數個等成本路由選擇一個路由。
在另一實施例中,當該決策引擎存取虛擬路由器表以查找IP位址時,路由前及路由後程序可被施加。該路由前程序可改變該封包(包括來源及目的地IP位址以及來源及目的地埠)以實施網路位址轉譯(「NAT」)。該路由方法可包含:擷取該來源及目的地IP位址、在對應於虛擬路由器的虛擬路由表中查找IP位址、選擇目的地(如果超過一個路由被找到)、及轉送該封包至對應於該路由項目的埠。該封包的轉送取決於是否該匹配的路由之次一站為對內(邏輯)埠或對外(物化)埠。由於虛擬路由器可被實施作為表,二個虛擬路由器間的路由包含後續虛擬路由器表中的查找。在一個實施例中,全域路由表係針對各個虛擬L3路由器加以維持。該全域路由表可被儲存於該共享資料庫中的分散式狀態中。替代地,該全域路由表可被儲存於選定的邊緣連接器上。在另一實施例中,該全域路由表被維持於各個邊緣連接器上且該等邊緣連接器合作以維持及更新該網路中的各個其他邊緣連接器上的全域路由表。
現在參照第9圖,虛擬拓樸被示出,其可被覆蓋於內層網路(諸如第8圖的實體網路)上。在一個實例中,封包可抵達對外埠(與虛擬L3路由器301關聯)且其目的地IP位址為VM 211的IP位址。該決策引擎可使用該封包抵達的vport以決定該vport被連接至哪個虛擬路由器 ,在此情況中為虛擬L3路由器301。在一個實施例中,虛擬L3路由器301可為提供者路由器,由操作該網路的服務提供者所創造及管理。該決策引擎可接著利用與該封胞關聯的IP位址來決定用於該封包的輸出埠。如果該輸出埠為區域對外埠,則流程在該流程可配置切換器中建立且該封包被路由至該區域對外埠。如果該對外埠不是區域埠,依據vport對主機表以及主機對隧道埠表該封包被路由出隧道埠。如果該埠為另一路由器或切換器的對內埠,則相同查找程序被重複直到對外埠被識別出。繼續第9圖,虛擬路由器301的表中的查找可能返回對應於虛擬路由器302的對內埠。在該查找以後或與該查找組合,路由後程序可視需要被施加至該封包。當該查找返回對應於另一虛擬埠的對內埠時(在此例子中為虛擬L3路由器302),該決策引擎可重複虛擬路由器302的相同程序。虛擬路由器302可為例如由租戶用以路由該租戶的虛擬機器(虛擬機器211及212)間的話務所創造之虛擬路由器。該租戶的虛擬機器可在相同主機上,或可位在該網路內的不同主機上。租戶可從該服務提供者租網路資源以操作任何數量的虛擬機器或者其他受到該服務提供者所建立之規則的網路性能內的服務。該決策引擎實施一模擬,其可包括:與虛擬L3路由器302關聯的任何路由前;在該虛擬路由表中查找IP位址以決定次一站;及任何路由後。在此實例中,該次一站為虛擬機器211,其被主管於與邊緣連接器203不同的邊緣連接器上。虛擬路由器302的虛擬路由 器表提供由該租戶或該服務提供者所配置之對應於VM 211的vport。在一個實施例中,該服務提供者可在該網路中的不同節點之間移動租戶虛擬機器,以管理設備利用率或在維護或修復該網路中的實體組件期間維持操作。該決策引擎接著在該分散式狀態中所維持之埠位置字典中查找該流出vport的實體位置。因為被切換器轉送的所有封包為L2封包,該等L2封包中有空間用於MAC位址。然而因為隧道埠在二個流程可配置切換器之間,MAC位址對於某些應用可能不必要。較具體而言,在某些實施例中,不需要轉送實際MAC位址,因為該流出邊緣連接器可根據其本身的區域資訊(使用ARP來決定該次一站MAC)來建構該MAC位址。反之,該目的地(在此情況中為VM 211)之vport被編碼至用於該MAC位址的空間中。該封包接著被包在GRE+IP中而該邊緣節點的IP位址作為該目的地。該封包現在準備好經由該L3網路加以路由。參照第7圖,含有任何路由前與路由後及該路由目的地之動作列表可被安裝於流程表162中以匹配此流程的所有未來封包,且該封包可經由該穿隧協定加以送出且通過作業系統路由器113並接著至NIC B 112。該封包在其離開NIC B 112以後被路由經過內部提供者構造152(如同任何其他IP封包),具有邊緣連接器204的目的地IP位址。
當該封包被邊緣連接器204接收到時,其在對應於該流程可配置切換器的隧道埠之隧道上加以接收。因為該封 包在隧道埠上加以接收,該邊緣連接器可用不同於在對外埠上輸入的封包之方式來處理此封包。該封包再次為此流程上所接收的第一封包且邊緣連接器204將調用該決策引擎。在一個實施例中,該隧道金鑰編碼該目的地vport id。該決策引擎可使用該vport id來決定MAC位址及虛擬機器211的區域埠數量。在一些例子中,該決策引擎可啟始ARP請求以決定VM 211的MAC位址。替代地,該MAC位址可被快取於ARP表中。ARP表(IP對MAC)以虛擬路由器的每一個埠加以維持。該ARP表可在共享資料庫中所儲存的分散式狀態中加以共享。在該決策引擎已經決定VM 211的vport以後,該系統可安裝流程於該流程表中以路由此流程的未來封包。該封包可接著被路由至對應於VM 211的流程可配置切換器之埠。儘管VM 211為在主機221(其也主管邊緣連接器204)上執行的區域虛擬機器,該決策引擎可能仍使用該目的地IP位址來找到該目的地MAC位址。以此方式,該系統總結該VM是否為本地或至另一路由器或切換器或標準埠以進一步證明該系統的彈性。
一旦該等流程已經被建立,相同連接上的隨後輸入封包將匹配邊緣連接器203與204的流程表中的流程且將由那些機器上的流程可配置切換器加以修改與轉送,而沒有調用決策引擎。此程序建立了通過該系統至想要的目的地之連接的輸入流程。
當VM 211對相同連接回應時,其送出的第一封包將 觸發該系統建立反方向中的對應的流程。當新流程被建立時,該決策引擎可存取該分散式狀態以決定是否流程先前在該反方向中建立。此分散式狀態促進其他程序(諸如NAT)的實施,且亦使該系統能夠清理終止的連接,如進一步描述於下。在其他實施例中,在不同實體組件上所主管的虛擬機器可被連接至相同的虛擬路由器。
現在參照第10圖,在實施上述方法的實施例之邊緣連接器上執行的程序之高階概述被示出。在實施例中,邊緣連接器在實體機器(具有至少一個CPU,其從諸如網際網路的外部網路接收封包)上執行,此處該等封包被定址至與該系統的租戶關聯的IP位址。該租戶IP位址可被指派給在該系統內的一或更多個主機上執行的租戶虛擬機器。在一個實施例中,與租戶虛擬機器關聯的IP位址可維持恆定,即使該租戶或服務提供者重新定位該虛擬機器至該系統內的不同主機。在實施例中,藉由容許一個上鏈上的多個IP位址被路由至不同邊緣連接器及不同租戶虛擬機器,該系統容許多個租戶分享一個服務提供者的上鏈。當在步驟410該邊緣連接器接收封包時,在步驟412其擷取複數個資料,包括但不限於來源與目的地位址及來源與目的地埠。在擷取該資料以後,該邊緣連接器在流程表中查找該複數個資料(步驟414)且決定是否該流程已經被建立(步驟416)。流程的實例將為TCP連接(以輸入與輸出流程組合而形成單一TCP連接)的一個方向。如果該流程已經存在,在步驟418中該流程動作列表被施加至 該封包且該封包被轉送至該流程動作列表所指出之流程可配置切換器的埠。
如果該流程不存在,此為該節點所接收之流程中的第一封包,且在步驟417中該邊緣連接器必須根據例如MAC位址、來源與目的地位址、或來源與目的地埠來決定該封包抵達哪個虛擬埠。一旦該邊緣連接器決定該虛擬埠ID,該邊緣連接器可決定該埠被連接至哪個虛擬轉送元件。在第10圖的實施例中,該虛擬轉送元件為虛擬路由器,但其他虛擬轉送元件(諸如虛擬切換器)可在系統中加以利用,如以下所討論。一旦該邊緣連接器決定該VFE,在步驟420中該邊緣連接器實施另一查找。該查找係藉由在一系列的虛擬轉送元件中查找該目的地IP位址來加以實施。該等虛擬轉送元件可包含虛擬路由器與虛擬切換器(包括虛擬路由表)的任意組合以決定被轉送封包的適當路徑。在所示實施例中,在步驟420中,該決策引擎決定第一虛擬轉送元件中的封包之目的地。該第一虛擬轉送元件可為虛擬路由器,在此情況中所返回之目的地可能為對外埠或者對內埠。如以上所述,對內埠被配對於第二虛擬路由器的另一對內埠,且該第二虛擬路由器具有另一路由表。如果對內埠被返回,在步驟420中該決策引擎在該第二虛擬路由器的路由表中查找該目的地位址且繼續直到對外埠被返回。在一個實施例中,各個租戶可具有單一虛擬路由器(被配置成路由該租戶所處理的所有封包)。在其他實施例中,一些租戶可具有複數個虛擬路由器、 虛擬切換器或其他虛擬轉送元件(定義該虛擬網路拓樸的該租戶的部分)。該決策引擎也從各個虛擬路由表建立一系列的對該封包實施的動作。各個路由步驟也可具有路由前或路由後程序,該等程序被新增至該動作列表且被併入至被施加至匹配該流程的封包之流程規則。
一旦對外埠已經被返回(步驟424),該邊緣連接器決定是否該對外埠為區域(步驟426)。如果該埠為區域,動作被新增至該動作列表(步驟428)以將該封包路由至該區域對外埠。在各種實施例中,該區域對外埠可為網路介面卡或虛擬機器。該流程規則接著被新增至該流程表(步驟430)且被施加至該封包(步驟418)。如果該對外埠非區域,則該埠在不同邊緣連接器上。在一個實施例中,邊緣連接器可被隧道埠連接,諸如GRE_IP隧道埠。在步驟432中,該邊緣連接器存取虛擬埠對隧道表以嘗試映射該對外埠至隧道埠。如果在該虛擬埠對隧道表映射中沒有對應項目,丟棄該封包且送出ICMP封包的動作被新增至該動作列表(步驟434),該流程規則被新增至該流程表(步驟430),且該流程規則被施加至該封包(步驟418)。
如果該對外埠係在該對外埠對隧道表中,則用以輸出該封包至該隧道的動作被新增至該動作列表(步驟436),該流程被新增至該流程表(步驟430),且該動作列表被施加至該封包(步驟418)。
在一個實施例中,該系統安裝該動作列表與流程規則 於該流程可配置切換器資料路徑,且該流程可配置切換器施加該動作列表至匹配該流程規則的任何後續封包,如在步驟416中所示。如以上所述,該動作列表的一部份包括該封包將在該流程可配置切換器的哪個埠上送出。該邊緣連接器在埠對主機IP表中查找該埠,且送出該封包至該IP位址。其接著儲存該動作列表於流程表中。具有匹配的複數個資料之所有後續封包將具有相同組的動作被施加至它們,導致它們被路由至相同IP位址。
在識別該等虛擬路由器中之目的地位址的程序之期間,該流程可能為不能路由、黑洞(black holed)、或匹配一拒絕路由(在此點丟棄該封包),或者ICMP封包被返回。在此實施例中,流程可被創造以丟棄所有匹配該流程規則的封包。以此方式,該系統可被配置成依據該服務提供者或租戶所建立的規則來處理不能路由封包或選擇性遮蔽不想要的資料。
在又一實施例中,主管租戶VM的邊緣連接器可具有多個IP位址及被連接至該內部構造網路的多個NIC。在此種情況中,該面對網際網路的邊緣連接器可選擇多個至該主管VM的邊緣連接器之路徑中的一者。進一步而言,主管VM的邊緣連接器(具有多個IP位址)可具有唯一ID以識別該邊緣連接器,且路由流程的決策引擎可選擇該主管VM的邊緣連接器的IP位址中的一者,例如藉由使用負載平衡演算法或隨機方式。
該系統的另一實施例可使用IP位址以外的用於該等 邊緣節點的識別符。例如,該網路構造可為電路導向,諸如多協定標籤交換(「MPLS」)或另一習知OpenFlow控制器(具有邊緣連接器間的專用電路)。在此實施例中,該等電路可替換邊緣節點上的流程可配置切換器間的GRE隧道。
在另一實施例中,該系統提供在路由階段前及路由階段後的路由前及路由後階段。路由前及路由後可被利用以實施網路位址轉譯(NAT)、負載平衡、或其他L3/L4特徵。在一個實施例中,該路由前階段可改變該流程之目的地(如同例如在網路位址轉譯中)且輸出路由可改變該流程的來源(再次地例如是網路位址轉譯)。為了協調由該正流程與逆流程(構成單一連接,諸如TCP連接)所實施的映射,連接轉譯可被儲存於該分散式狀態(具有長的逾時)中。這些轉譯也可在連接追蹤偵測到完全關閉的連接時被主動清理。
在本系統的一個實施例中,NAT藉由使用路由前及路由後變換來加以實施。在流程設定上,該NAT路由前階段決定是否流程先前在反方向(輸入vs輸出)中建立於該分散式狀態中,且如果這樣該先前創造的映射針對新流程而逆轉。因為該等流程規則被儲存於所有節點可存取的分散式狀態系統中,當在不同節點上創造新流程的時候,可能決定是否反向流程先前被創造。如果該反向流程不在該分散式狀態中,該決策引擎創造新轉譯且儲存其轉譯映射於與該新流程關聯的分散式狀態中。針對該輸入流程 、或替代地被建立的第一流程,該位址轉譯可在該路由步驟以前施加至該目的地位址且該路由步驟可根據所轉譯的IP位址來路由。針對該輸出流程、或替代地在該連接中的第二流程,NAT可在該路由以後實施,以轉譯該來源位址成為外部、非私有IP位址。該轉譯資訊可在轉送該流程的最初封包以前儲存於與該流程規則關聯的分散式狀態中,使得在該逆流程的最初封包在對應的邊緣連接器接收到時,該轉譯資訊係可存取。
在另一實施例中,目的地網路位址轉譯(DNAT)可被用來從公共可用的IP位址轉譯至私有網路位址,以將私有網路上所主管的服務顯露給一般網際網路。在一些實施例中,非軍事區(DMZ)可被設置於該一般網際網路與該私有網路之間。在DNAT程序中,該目的地位址可在該輸入的流程之路由前階段期間加以轉譯,且在對應的輸出流程中,該來源位址可在路由後階段期間加以轉譯。在一個實施方式中,該目的地位址可為數個可能伺服器的一者,且該目的地伺服器可藉由負載平衡演算法來加以選擇,諸如隨機演算法或循環(round-robin)演算法。
在來源網路位址轉譯(SNAT)中,私有LAN上的多個用戶端可共享相同的公共IP位址。與輸出連接(諸如從租戶虛擬機器至外部網路的連接)關聯的來源位址可被轉譯成輸出流程中的相同IP位址。在對應的輸入流程中,封包目的地IP位址可根據例如埠數量及來源IP位址而轉譯成對應的私有IP位址。
在另一實施例中,該系統可被配置成提供ARP欺騙(spoofing)給私有區域網路。該系統可允許單一網路主機(諸如虛擬機器訪客)藉由在該主機ARP給它們時假冒其他單一主機而被連接至虛擬路由器埠而沒有消耗閘道/廣播位址。在傳統的乙太網路導向的設計中,此將消耗至少/30位址範圍,包括該訪客的位址、該閘道位址、及該廣播位址、加上一個未使用位址。
作為一個減少所消耗IP位址的數量之方法,該路由器的各個埠可藉由MAC位址與網路前置碼(nw_prefix)以及旗標(指出是否被連接至該埠的單一主機)來加以配置。所使用的閘道位址可為該nw_prefix範圍中的第一位址。如果該單一主機旗標未設定,該路由器可依據其標準操作規則來處理往返該埠的話務。如果該單一主機旗標被被設定,該nw_prefix的位址部分指明該埠的單一網路主機的位址。該路由器的下游埠可被配置,使得它們包含非重疊nw_prefixes有單一主機旗標未設定)及具有單一主機旗標被設定的埠,其可共享由它們的nw_prefixes所指明的相同位址範圍。在許多實施例中,該單一主機及非單一主機埠所使用的位址範圍將不會重疊。
如果IP封包在具有單一主機旗標被設定的埠之間送出,該路由器可轉送該IP封包而沒有檢查或遞減存活時間(「TTL」)、仿真L2切換器。如果ARP請求係從一埠收到,以單一主機旗標設定與另一單一主機埠關聯之位址,該路由器回應於該ARP,假冒該目標。結果為想要送 出話務至主機(在其認為是它的區域段外)的單一主機將ARP給該閘道位址,且該路由器的正常表現將返回其埠的MAC且該主機將接著送出其IP封包。想要送出話務至主機(其認為是它的區域段的一部份)的單一主機將直接ARP給該主機。該路由器將回應於該ARP是否其具有用於該位址的單一主機埠,在此情況中該主機將接著送出其IP封包。不在單一主機旗標的埠上的主機之表現可能未改變。
在該系統的另一實施例中,有狀態連接追蹤可被用來追蹤一連接的生命週期,使得與那些連接關聯的資料可在某些事件(諸如終止該連接)的時候被清理。待被清理的資料可包括各種連接狀態資料(包括該分散式狀態中所儲存的資料,諸如有狀態NAT及LB映射),當該連接被完全關閉時。如果連接未完全關閉,例如如果一側或另一側當機或斷線,則該連接狀態可能在很長的可配置逾時以後到期。連接可為TCP連接,且由二個流程所構成:正流程及逆流程。在TCP的情況中,該系統可模擬該TCP連接狀態機以便決定該連接狀態。
在又一實施例中,該系統提供一連接的逆流程由不同於該連接的正流程之節點加以處理。此類型的連接可被稱為分流,特徵為正與逆流程由不同決策引擎加以處理。在一個實施例中,該系統支援分流藉由讓該決策引擎看見該正與逆流程傳送它們個別側的關閉。例如,處理該正流程的FIN之決策引擎可通知處理該逆流程的決策引擎以安 裝匹配該FIN的ACK之動作,或反之亦然。該等決策引擎合作而使得它們可識別出何時一連接的兩側已經被關閉且能夠清理與關閉的連接關聯之資料。該等決策引擎間的此通訊可經由該分散式狀態系統中的共享狀態而出現。額外地,該分散式狀態系統可識別某些條件(諸如連接的兩側之關閉),且可將通知傳送至處理該通訊的各個流程之決策引擎。
在又一實施例中,當邊緣節點或邊緣連接器處理一流程(正或者逆)的設定時(該流程為應被追蹤之連接的一部份(根據是否它為TCP連接,且是否需要有狀態追蹤,例如如果該連接被NAT時)),該邊緣連接器將新增一動作,該動作檢查TCP FIN位元且輸出該FIN封包。在接收FIN封包的時候,處理該逆流程的決策引擎可安裝用以檢查該FIN的ACK之動作。當該FIN的ACK時被該系統看見時,該連接被認為是半開放,使得預期沒有資料但僅有ACK。如果資料由半開放連接所接收,該系統可產生一錯誤訊息(指出該系統經歷到意料外的狀況)。
當決策引擎接收新流程時,其將安裝一檢查TCP FIN及RST旗標的規則。如果該系統接收RST封包,其將該連接的流程規則修改成具有短的逾時。如果該系統接收FIN封包,其將一匹配已確認序號為該FIN封包的序號之動作插入至該返回流程的動作列表中。如果該系統得到確認FIN的封包,其將該連接的那側標記為關閉。如果兩側被關閉,其將該連接的流程規則修改成具有短的逾時。在 一些例子中,該FIN的ACK可被丟棄,在此情況中該關閉側將重新發送具有相同序號的FIN封包。當該等流程規則到期時,該系統識別出該連接被關閉且可清理額外的狀態資料(諸如NAT追蹤)。
在目前所揭示之系統及方法的另一實施例中,虛擬切換器被設置作為額外的虛擬轉送元件。該系統可在該等邊緣連接器的埠(其為各個虛擬L2切換器的一部份)間發送L2封包。以此方式該系統可模擬實體L2切換器(在連接至該實體切換器的NIC間發送封包)的操作。該系統也可如以上所述藉由使用虛擬路由器來發送封包L3封包。當設定流程時,輸入的vport UUID係從流入埠或MAC位址的映射來加以識別。根據此vport UUID,該vport所屬的虛擬裝置被決定。根據虛擬裝置的類型(切換器或路由器),該封包被路由(如以上所述)或者被切換。那就是,如果該封包為L3封包,其如以上所述依據該虛擬路由器程序來加以處理。替代地,該封包為L2封包且被虛擬切換器處理,如第5及6圖中所示。第5及6圖中所示的程序實質上類似於第10圖中所示的程序。在步驟417中該VFE已經被決定以後,該邊緣連接器決定是否該VFE為虛擬路由器或虛擬切換器。如果該VFE為虛擬路由器,處理繼續,如第10圖中所述。如果該VFE為虛擬切換器,在點A(520)處理繼續,連接至第12圖的點A(520)。如第12圖中所示,如果該VFE為虛擬切換器,則該邊緣連接器決定是否該目的地MAC位址為 廣播位址或單播MAC位址(步驟610)。如果該MAC位址為廣播位址,則該封包被送至連接至該虛擬切換器的各個埠(步驟620)。在每一封包基礎上,此步驟可能與第10圖步驟426開始的程序相同。針對各個對內埠(為該VFE的構件),該封包被送至該區域埠或者至對應於該對外埠的隧道埠。
如果該封包不是廣播封包(例如單播封包),則該目的地MAC例如藉由在MAC對vport表中查找該目的地MAC來加以決定(步驟630)。如果沒有對應的項目(在步驟640中測試),則丟棄動作被新增至該動作列表(步驟650)。處理接著在第11圖的點B上繼續,此處該規則被新增至該流程表(430)且該動作被施加至該封包(418)。
步驟640中如果再MAC對vport表中有對應的vport,則處理在第11圖的點C上繼續,處理在步驟426繼續,如先前所述。
現在參照第7及8圖,目前所揭示之系統及方法的另一實施例被示出。如第13圖中所示,虛擬網路拓樸包括提供者虛擬路由器900,其具有對外部網路(諸如一般網際網路902)的多個連接901。在此組態中,該虛擬網路被設有至該外部網路的多個通訊路徑以容許該系統中的彈性與冗餘。提供者虛擬路由器900可具有對應於複數個邊緣節點的複數個對外埠,此處邊緣節點為一種提供對該外部網路的存取之實體組件。在一個實施例中,邊緣節點可 為一種面對網際網路的路由器或伺服器。該虛擬網路拓樸也可包含複數個租戶虛擬路由器。在一個組態中,各個租戶虛擬路由器可能與租戶虛擬資料中心關聯。如第13圖中所示,第一租戶虛擬資料中心903可包括與複數個第一租戶虛擬機器905通訊的第一租戶虛擬路由器904。第一租戶虛擬機器905也可與租戶虛擬切換器906通訊,其如所示可為虛擬乙太網路切換器。第一租戶虛擬機器905可能位於該網路中的一或超過一個伺服器或者主機節點上。
如第13圖中所示,該虛擬網路拓樸可具有第二租戶虛擬資料中心907,包括與提供者虛擬路由器900及複數個第二租戶虛擬機器909通訊的第二租戶虛擬路由器910。複數個第二租戶虛擬機器909也可與第二租戶虛擬切換器908通訊,其如所示可為虛擬乙太網路切換器。
該等虛擬路由器也可實施各個租戶所想要的額外功能,諸如負載平衡、DHCP、及/或網路位址轉譯。儘管針對各個租戶僅一個虛擬路由器被示出,在其他實施例中,租戶可採用創造租戶特定虛擬網路拓樸的複數個虛擬路由器。租戶特定虛擬網路拓樸可提供租戶虛擬機器被組織於想要配置中或者提供相同租戶所控制之虛擬機器間的隔離,諸如租戶利用該網路來主管多個離散功能或商業程序。
在另一實施例中,租戶虛擬路由器可提供對遠端租戶辦公室或其他位置的安全存取。如所示第二租戶虛擬路由器910提供對在第二租戶辦公室913的第二租戶VPN路由器911及第二租戶辦公室網路912之連接。以此方式, 各個租戶可定義其虛擬資料中心的組態。利用目前所揭示的系統及方法的服務提供者可因此提供實體網路上的許多租戶客製化解決方案。
現在參照第14圖,第13圖中所示之覆蓋於實體網路上的虛擬網路拓樸被顯示。該實體網路可包含複數個邊緣節點920,被配置成存取外部網路(諸如網際網路902)。該實體網路也可包括複數個主機節點921,被配置成主管虛擬機器。網路922可互連複數個邊緣節點920與複數個主機節點921且適於在該系統各處傳輸資料封包。在一個實施例中,該網路可為私有IP網路。邊緣節點920及主機節點921可具有對稱架構。在一個實施例中,邊緣節點920及主機節點921為被配置成在雲端運算系統中操作的一般用途伺服器。在另一實施例中,邊緣節點920為面對網際網路的專用路由器。在又一實施例中,伺服器或其他運算裝置可用作相同網路中的邊緣節點及主機節點兩者。該系統也包括分散式狀態系統,其通過該網路與該等邊緣節點各者及該等主機節點各者通訊。該分散式狀態系統可儲存與該虛擬網路拓樸關聯的資料且可被儲存於共享資料庫中。該系統可包括軟體組件,其在該等節點各者上操作且實施該虛擬網路拓樸(包括該提供者虛擬路由器及該等租戶虛擬路由器各者)。隨著新路由器被配置,在該等節點各者上操作的軟體組件可與該分散式狀態系統通訊,使得該分散式狀態維持了該虛擬網路拓樸與該系統的流程規則之綜合映射。在其他實例中,該分散式系統可被細分 ,使得多個分散式狀態係針對該虛擬網路的選定部分加以維持。
如第14圖中所示,該虛擬網路拓樸被覆蓋於該實體網路上。該提供者虛擬路由器可具有與邊緣節點920各者關聯的對外埠。提供者虛擬路由器900的對外埠可映射至用於網際網路服務提供者的一或更多個存取點且提供該系統與外部網路(諸如網際網路)間的多個連接。提供者虛擬路由器900也可具有對內部埠,其定義對租戶虛擬路由器的對應同儕對內埠之虛擬鏈結。如所示,該系統中各個虛擬鏈結的傳輸率可被選擇。例如,該服務提供者可提供50Mbps虛擬鏈結給第一租戶虛擬路由器904,但提供10Mbps虛擬鏈結給第二租戶虛擬路由器910。由於該等虛擬鏈結為可配置,如果該第二租戶希望購買較大傳輸率給其虛擬資料中心,該服務提供者可修改可用的傳輸率而沒有修改硬體。
在所示的實施例中,各個主機節點920主管一個與該第一租戶關聯的虛擬機器以及一個與該第二租戶關聯的虛擬機器。使用該虛擬網路拓樸,該服務提供者可重新分配可用主機節點之中的租戶虛擬機器而不用重新配置該實體網路硬體。該分散式狀態系統中所儲存的虛擬網路拓樸容許該系統被動態地重新配置。
在另一實施例中,該複數個租戶虛擬路由器的各者可被配置成顯露至少一個公共IP位址且可被配置成通過該複數個邊緣節點的一或更多者來存取外部網路。藉由使各 個租戶虛擬資料中心能夠通過複數個邊緣節點來存取該外部網路,單一邊緣節點的失效較不可能中斷該網路中操作的該租戶的服務可用性。
如此處所使用,術語「快取」或其他變型意指所有形式的暫時資料儲存器,無論是否資料被儲存於明確標記為快取的記憶體中。
儘管某些實施例已經被描述,必須理解各種改變可被作出且等效物可被取代而不背離精神或範圍。此外,許多修改可被作出以使特定情況或材料適於本揭示的教導而不背離其精神或範圍。
50‧‧‧遠端網點
51‧‧‧VPN伺服器
52‧‧‧網際網路
53‧‧‧內層網路
54‧‧‧主機
55‧‧‧網路介面
56‧‧‧隧道埠
57‧‧‧VPN用戶端
58‧‧‧流程可程式化切換器
59‧‧‧虛擬網路話務
60‧‧‧決策引擎
61‧‧‧共享資料庫
62‧‧‧加密隧道
70‧‧‧遠端網點
71‧‧‧VPN伺服器
72‧‧‧網際網路
73‧‧‧第一主機
74‧‧‧網路介面
75‧‧‧網路介面
76‧‧‧流程可程式化切換器
77‧‧‧隧道埠
78‧‧‧決策引擎
79‧‧‧內層網路
80‧‧‧第二主機
81‧‧‧網路介面
82‧‧‧隧道埠
83‧‧‧流程可程式化切換器
84‧‧‧決策引擎
85‧‧‧VPN用戶端
86‧‧‧共享資料庫
101‧‧‧伺服器
111‧‧‧網路介面卡A
112‧‧‧網路介面卡B
113‧‧‧作業系統路由器
151‧‧‧網際網路
152‧‧‧內部提供者構造
161‧‧‧流程可配置切換器
162‧‧‧流程表
165‧‧‧決策引擎
201‧‧‧連接網際網路的路由器
202‧‧‧內部網路構造
203‧‧‧邊緣連接器
204‧‧‧邊緣連接器
205‧‧‧邊緣連接器
206‧‧‧管理控制台
210‧‧‧主機
211‧‧‧虛擬機器
212‧‧‧虛擬機器
213‧‧‧虛擬機器
214‧‧‧虛擬機器
221‧‧‧主機
222‧‧‧主機
301‧‧‧虛擬L3路由器
302‧‧‧虛擬L3路由器
303‧‧‧虛擬L2切換器
900‧‧‧提供者虛擬路由器
901‧‧‧連接
902‧‧‧一般網際網路
903‧‧‧第一租戶虛擬資料中心
904‧‧‧第一租戶虛擬路由器
905‧‧‧第一租戶虛擬機器
906‧‧‧租戶虛擬切換器
907‧‧‧第二租戶虛擬資料中心
908‧‧‧第二租戶虛擬切換器
909‧‧‧第二租戶虛擬機器
910‧‧‧第二租戶虛擬路由器
911‧‧‧第二租戶VPN路由器
912‧‧‧第二租戶辦公室網路
913‧‧‧第二租戶辦公室
920‧‧‧邊緣節點
921‧‧‧主機節點
922‧‧‧網路
第1圖示出用以作廢流程的方法之實施例。
第2圖示出用於MAC-學習的方法之實施例。
第3圖示出用於MAC-忘記的方法之實施例。
第4圖示出用於連接追蹤的方法之實施例。
第5圖示出VPN管理的系統之實體圖。
第6圖示出VPN管理的另一系統之實體圖。
第7圖示出伺服器電腦(被該系統用來路由封包往返一般網路(諸如網際網路)至服務提供者的IP構造)的實例。
第8圖示出範例實體網路。
第9圖示出可被覆蓋於第8圖的實體網路上的範例虛擬網路。
第10圖示出在邊緣連接器上執行以路由虛擬拓樸(包含虛擬路由器)中的封包的程序。
第11圖示出在邊緣連接器上執行以切換及路由虛擬拓樸(包含虛擬路由器及虛擬切換器)中的封包的程序。
第12圖示出第11圖的程序之後續。
第13圖示出虛擬網路的實例。
第14圖示出第13圖的虛擬網路被覆蓋於實體網路上。
50‧‧‧遠端網點
51‧‧‧VPN伺服器
52‧‧‧網際網路
53‧‧‧內層網路
54‧‧‧主機
55‧‧‧網路介面
56‧‧‧隧道埠
57‧‧‧VPN用戶端
58‧‧‧流程可程式化切換器
59‧‧‧虛擬網路話務
60‧‧‧決策引擎
61‧‧‧共享資料庫
62‧‧‧加密隧道

Claims (67)

  1. 一種計算方法,包含:接收抵達內層網路的第一節點之第一網路介面的網路封包;傳送至少該封包及該第一網路介面的識別符至決策引擎(decision engine);根據該決策引擎對穿越包括複數個虛擬網路裝置的一虛擬網路拓樸的模擬,來決定該封包應如何被處理,其中該決策引擎與可從該內層網路存取的共享資料庫相通訊,該共享資料庫儲存該虛擬網路拓樸以及該複數個虛擬網路裝置的虛擬裝置組態;根據該模擬來處理該封包;及決定應從對應於介面組識別符的一組網路介面發射該封包,其中該等網路介面的至少一部分位於第二節點上,其中處理該封包包括傳遞該封包至該第一節點本地的該組網路介面中的各個網路介面、及使用編碼該介面組識別符的隧道金鑰,將該封包從該第一節點轉送至該第二節點,作為穿隧協定封包的該酬載。
  2. 如申請專利範圍第1項之計算方法,其中各個節點係配置成執行該決策引擎以實施該模擬,來決定抵達該節點的封包應如何被處理。
  3. 如申請專利範圍第1項之計算方法,其中決定該封包應如何被處理包括決定與該決策引擎模擬結果關聯的封包協定標頭型樣給該封包,該方法進一步包含: 儲存該封包的該封包協定標頭型樣及模擬結果;在該第一節點接收第二封包;比較該第二封包與該封包協定標頭型樣;如果該第二封包匹配該封包協定標頭型樣,則藉由擷取所儲存之該封包的模擬結果,來決定該第二封包應如何被處理;及根據用於該封包之該決策引擎的模擬的擷取結果,來處理該第二封包。
  4. 如申請專利範圍第3項之計算方法,其中該封包包括具有複數個欄位的協定標頭,且其中決定該封包協定標頭型樣包括:識別該協定標頭的在該決策引擎對穿越包括該複數個虛擬網路裝置該虛擬網路拓樸的模擬期間被讀取的各個欄位。
  5. 如申請專利範圍第4項之計算方法,其中該封包協定標頭包括用於該協定標頭的在該決策引擎進行的模擬期間未讀取的任何欄位之通配符(wildcard)。
  6. 如申請專利範圍第1項之計算方法,其中該封包包括協定標頭,其中該模擬進一步包括決定對該封包的協定標頭之修改作為將被虛擬網路裝置發射的封包,且其中處理該封包包括施加所決定的修改至該封包的協定標頭。
  7. 如申請專利範圍第1項之計算方法,其中決定該封包應如何被處理包括決定該應從該第一網路節點的第二網路介面發射的封包,及其中處理該封包包括從該第二介面發射該封包。
  8. 如申請專利範圍第1項之計算方法,其中決定該封包應如何被處理包括決定該封包應從該內層網路上的第二網路節點的第二網路介面發射,及其中處理該封包包括傳遞該封包至該內層網路的該第二節點及從該第二介面發射該封包。
  9. 如申請專利範圍第8項之計算方法,其中決定該封包應如何被處理包括決定在傳遞至該內層網路的第二節點以前該封包的協定標頭應如何被修改。
  10. 如申請專利範圍第8項之計算方法,其中處理該封包包括將該封包從該第一節點轉送至該第二節點作為具有隧道金鑰穿隧協定封包的酬載,其中該隧道金鑰編碼該第二網路介面的全域識別符。
  11. 如申請專利範圍第10項之計算方法,進一步包含:從該第二網路介面發射該封包而沒有調用該第二節點上的該決策引擎。
  12. 如申請專利範圍第10項之計算方法,其中該內層網路支援多播,該方法進一步包含:映射各個介面組識別符至多播位址;對於該內層網路的各個節點,維持多播訂閱給該節點的至少一個網路介面所屬之各個該等介面組識別符;多播作為該穿隧協定封包的酬載的該封包至至少該第二節點;及針對各個節點,從對應於為該節點本地的該介面組之 任何網路介面發射該封包。
  13. 如申請專利範圍第10項之計算方法,其中該內層網路不支援多播,該方法進一步包含:決定一組內層網路節點,其具有屬於該組網路介面的區域網路介面;將該封包從該第一節點轉送至該組內層網路節點中的各個節點;及針對各個節點,從對應於該節點本地的該介面組之任何網路介面發射該封包。
  14. 一種計算方法,包含:維持可從具有複數個節點的內層網路存取之共享資料庫,該共享資料庫儲存虛擬網路拓樸以及複數個虛擬網路裝置的虛擬裝置組態;接收抵達該內層網路的第一節點之第一網路介面的網路封包;根據該封包穿越包括該複數個虛擬網路裝置的該虛擬網路拓樸模擬,來決定用以處理該網路封包的動作;映射該第一網路介面至對應的虛擬埠以及擷取該埠的組態和與該埠關聯的網路裝置;及根據與該埠關聯的網路裝置之模擬,來決定用以處理該網路封包的動作。
  15. 如申請專利範圍第14項之計算方法,進一步包含:提供用以實施該封包穿越包括該複數個虛擬網路裝置 的該虛擬網路拓樸之模擬之決策引擎,其中該決策引擎係可操作於該複數個節點的各者上以實施在各個各別節點所接收的封包之模擬。
  16. 如申請專利範圍第14項之計算方法,其中該虛擬網路拓樸包括對應於該複數個虛擬網路裝置的複數個虛擬埠,其中各個虛擬埠對應於對外埠(exterior facing port)或對內埠(interior facing port)的一者,該對外埠與該內層網路的節點之網路介面關聯,該對內埠與虛擬網路裝置間的虛擬鏈結關聯。
  17. 如申請專利範圍第16項之計算方法,其中儲存虛擬網路拓樸及虛擬裝置組態的共享資料庫包括:該複數個虛擬埠各者的組態,包括該虛擬埠之識別碼為作為對外埠或對內埠之一;與該複數個虛擬埠關聯之複數個網路裝置各者的組態;網路介面識別符對該等內層網路節點的識別符之映射;對外埠對該內層網路節點的對應網路介面之映射;及各個裝置的各個對內埠對由虛擬鏈結所連接之另一裝置的同儕對內埠之映射。
  18. 如申請專利範圍第14項之計算方法,進一步包含:快取該內層網路之節點上的該虛擬網路拓樸以及虛擬裝置組態的至少一部分;及 當該共享資料庫被修改時,更新所快取的虛擬網路拓樸及虛擬裝置組態。
  19. 如申請專利範圍第14項之計算方法,進一步包含:在模擬封包抵達虛擬裝置的時候,載入該虛擬裝置的組態於實施該模擬的節點中。
  20. 如申請專利範圍第14項之計算方法,其中該動作包含下列之一或更多者:修改該網路裝置的內部狀態;丟棄該封包;修改該封包的協定標頭;從該網路裝置的一或更多個虛擬埠發射該封包;及從該網路裝置的一或更多個虛擬埠發射不同封包。
  21. 如申請專利範圍第14項之計算方法,其中該動作為從該網路裝置的第二虛擬埠發射該封包且其中該第二虛擬埠為對內埠,該方法進一步包含:決定該第二虛擬埠的同儕對內埠以及擷取該同儕對內埠的組態和與該同儕對內埠關聯的網路裝置;及根據與該同儕對內埠關聯的網路裝置之模擬,來決定用以處理該網路封包的動作。
  22. 如申請專利範圍第14項之計算方法,其中該動作為從一或更多個對外虛擬埠發射該封包,該方法進一步包含:映射各個對外虛擬埠至該內層網路之對應的網路介面 及節點;及從該等對應的網路介面各者發射該封包。
  23. 如申請專利範圍第14項之計算方法,其中該封包包括具有複數個欄位的協定標頭,該方法進一步包含:藉由識別該協定標頭的在該虛擬網路拓樸及該複數個虛擬網路裝置之模擬期間被讀取的各個欄位,決定封包協定標頭型樣;及儲存與該封包的模擬結果關聯的封包協定標頭型樣。
  24. 如申請專利範圍第23項之計算方法,進一步包含:匹配後續封包至所儲存的封包協定標頭型樣;及藉由擷取所儲存的模擬結果,來決定用以處理該後續封包的動作。
  25. 如申請專利範圍第23項之計算方法,進一步包含:在該虛擬網路拓樸或虛擬裝置組態改變的時候,作廢該所儲存的封包協定標頭型樣及該對應之所儲存的模擬結果。
  26. 如申請專利範圍第25項之計算方法,進一步包含:決定在該模擬期間被穿越的一組被穿越的虛擬裝置以及將該組被穿越的虛擬裝置關聯於用於該模擬的該所儲存的封包協定標頭型樣及該對應之所儲存的模擬結果之一者; 偵測該組被穿越的虛擬裝置中的一虛擬裝置之組態改變;及作廢與包括被偵測到該改變的虛擬裝置的各組被穿越的虛擬裝置關聯之該所儲存的封包協定標頭型樣及該對應之所儲存的模擬結果。
  27. 如申請專利範圍第16項之計算方法,其中該模擬進一步包括:模擬具有一或更多個對外埠及一或更多個對內埠的MAC-學習橋接器,該一或更多個對外埠被映射至該內層網路的一或更多個節點之網路介面,該一或更多個對內埠各連接至虛擬路由器的對內埠。
  28. 如申請專利範圍第27項之計算方法,進一步包含:維持用於各個MAC-學習橋接器的MAC-學習表於該共用資料庫中。
  29. 如申請專利範圍第28項之計算方法,進一步包含:維持用於給定MAC-學習橋接器的MAC-學習表之快取副本於該內層網路之各個節點,各節點具有被映射至該給定MAC-學習橋接器的網路介面。
  30. 如申請專利範圍第28項之計算方法,進一步包含:維持用於給定MAC-學習橋接器的MAC-學習表之快取副本於模擬該MAC-學習橋接器的各個虛擬裝置上。
  31. 如申請專利範圍第28項之計算方法,進一步包含:將已知MAC-埠項目預先填入於該MAC-學習表。
  32. 如申請專利範圍第27項之計算方法,其中模擬MAC-學習橋接器進一步包含:在虛擬橋接器的抵達虛擬埠上接收具有單播來源MAC位址的乙太網路訊框;及更新該MAC-學習表以將該MAC位址關聯於該虛擬橋接器的抵達虛擬埠。
  33. 如申請專利範圍第27項之計算方法,其中模擬MAC-學習橋接器進一步包含:在該虛擬橋接器的抵達虛擬埠上接收具有單播目的地MAC位址的乙太網路訊框,如果該MAC位址係在該MAC-學習表中,從與該MAC-學習表中的MAC位址關聯之虛擬橋接器的虛擬埠發射該訊框,且如果該MAC位址不在該MAC-學習表中,從該虛擬橋接器之除了該抵達虛擬埠以外的所有虛擬埠發射該訊框。
  34. 如申請專利範圍第27項之計算方法,其中模擬MAC-學習橋接器進一步包含:在該虛擬橋接器的抵達虛擬埠上,接收具有多播或廣播目的地MAC位址的乙太網路訊框;及從該虛擬橋接器之除了該抵達虛擬埠以外的所有虛擬 埠發射該訊框。
  35. 如申請專利範圍第27項之計算方法,進一步包含:維持作為該虛擬橋接器組態的一部份之ARP快取於該共享資料庫中。
  36. 如申請專利範圍第35項之計算方法,進一步包含:識別IP封包以及擷取封裝乙太網路訊框的來源IP位址與來源MAC位址,以及更新該虛擬橋接器的ARP快取,以關聯所識別的IP位址與MAC位址。
  37. 如申請專利範圍第16項之計算方法,其中該模擬進一步包括:模擬具有對外埠及一或更多個對內埠的路由器,該等對外埠被映射至該內層網路的一或更多個節點上的網路介面,該一或更多個對內埠被連接至虛擬路由器或虛擬橋接器的對內埠。
  38. 如申請專利範圍第37項之計算方法,其中該路由器為IPv4路由器。
  39. 如申請專利範圍第37項之計算方法,進一步包含:維持作為該路由器組態的一部份之ARP快取與轉送表於該共享資料庫中。
  40. 如申請專利範圍第39項之計算方法,進一步包含: 維持該ARP快取的快取副本於該內層網路的具有被映射至該路由器的一個對外埠之網路介面之各個節點。
  41. 如申請專利範圍第39項之計算方法,進一步包含:將在模擬該路由器以前已知的項目預先填入於該ARP快取。
  42. 如申請專利範圍第39項之計算方法,進一步包含:詢問該路由器的轉送表而由封包的來源及目的地網路(L3)位址來決定最匹配的路徑。
  43. 如申請專利範圍第14項之計算方法,其中該模擬進一步包括:模擬至少一個虛擬裝置的流入過濾器與流出過濾器的至少一者,其中各個過濾器包括待被施加至匹配特定條件的封包之過濾規則。
  44. 如申請專利範圍第43項之計算方法,進一步包含:維持用於各個虛擬裝置的過濾規則於該共享資料庫中。
  45. 如申請專利範圍第43項之計算方法,進一步包含:模擬具有匹配該封包的流程連接狀態之條件的過濾規則,其中每一流程(per-flow)連接狀態係由各個被模擬裝置加以獨立地監測,且其中每一流程連接狀態值取決於 該封包的傳輸(L4)協定。
  46. 如申請專利範圍第45項之計算方法,進一步包含:根據是否該連接狀態被封包的模擬所使用的決定,來選擇性寫入該每一流程連接狀態至該共享資料庫。
  47. 如申請專利範圍第45項之計算方法,其中該每一流程連接狀態在該模擬期間所模擬的各個虛擬裝置之間加以共享。
  48. 如申請專利範圍第45項之計算方法,進一步包含:決定各個流程特有的流程簽章;及將每一裝置與流程(per-device-and-flow)連接狀態儲存於與給定流程的流程簽章關聯的共享資料庫中。
  49. 如申請專利範圍第48項之計算方法,其中該流程簽章包含被模擬裝置的裝置識別碼以及封包的L3標頭來源欄位、L3標頭目的地欄位、L4協定類型、L4標頭來源欄位及L4標頭目的地欄位。
  50. 如申請專利範圍第48項之計算方法,進一步包含:決定各個流程特有的逆流程簽章;及將每一裝置與流程連接狀態儲存於與給定流程的逆流程簽章關聯的共享資料庫中。
  51. 如申請專利範圍第50項之計算方法,其中該逆流程簽章包含被模擬裝置的裝置識別碼以及封包的L3標頭 目的地欄位、L3標頭來源欄位、L4協定類型、L4標頭目的地欄位及L4標頭來源欄位。
  52. 如申請專利範圍第48項之計算方法,進一步包含:在該給定流程終止的時候,移除與該流程簽章及該逆流程簽章關聯的連接狀態。
  53. 如申請專利範圍第14項之計算方法,其中該模擬進一步包括:模擬待由虛擬裝置加以實施之網路(L3)位址轉譯及傳輸(L4)位址轉譯的至少一者。
  54. 如申請專利範圍第53項之計算方法,進一步包含:維持各個虛擬裝置的網路位址轉譯於該共享資料庫中。
  55. 如申請專利範圍第54項之計算方法,進一步包含:維持各個虛擬裝置的逆向網路位址轉譯於該共享資料庫中。
  56. 如申請專利範圍第53項之計算方法,進一步包含:決定是否該封包匹配網路位址轉譯規則條件以及當該規則條件被滿足時,依據該網路位址轉譯來修改該封包網路協定標頭。
  57. 如申請專利範圍第53項之計算方法,進一步包 含:儲存各個正流程之由正流程簽章與返回流程簽章兩者所鍵控的轉譯選擇於該共享資料庫中。
  58. 如申請專利範圍第57項之計算方法,進一步包含:決定與該網路(L3)位址轉譯及該傳輸(L4)位址轉譯之轉譯選擇關聯的正流程金鑰;詢問該共享資料庫以決定是否衝突轉譯先前被儲存、及是否衝突轉譯被識別;及針對該網路(L3)位址轉譯及該傳輸(L4)位址轉譯選擇不同之轉譯選擇。
  59. 如申請專利範圍第53項之計算方法,進一步包含:當該轉譯容許轉譯目標的選擇時,決定針對網路(L3)位址及傳輸(L4)位址的位址轉譯目標;從該共享資料庫決定是否該位址轉譯目標衝突到先前所儲存的轉譯;及從該轉譯目標的選擇,決定針對該網路(L3)位址及該傳輸(L4)位址的新位址轉譯目標。
  60. 如申請專利範圍第53項之計算方法,進一步包含:儲存流程的網路位址轉譯於該共享資料庫中以及以正流程簽章與逆流程簽章兩者鍵控該網路位址轉譯。
  61. 如申請專利範圍第57項之計算方法,進一步包 含:在轉送對應於該流程的封包以前,等待直到該流程的網路位址轉譯被儲存於該共享資料庫中。 注意:當有如何做該轉譯的選擇時避免競爭情況,使得另一封包不會在該規則被儲存以前抵達。
  62. 如申請專利範圍第14項之計算方法,進一步包含:儲存與虛擬埠關聯的DHCP資源定義於該共享資料庫中,其中該DHCP資源定義包括具有具對應值的一組選項之DHCP組態及動態IP位址庫;儲存對外埠對DHCP資源映射於該共享資料庫中;識別抵達被映射至DHCP資源的虛擬埠之DHCP封包;從該動態IP位址庫指派IP位址;及發射含有所指派的IP位址之DHCP回覆訊息。
  63. 一種計算系統,包含:由內層網路所互連的複數個節點,其中各個節點包括一或更多個網路介面;可操作於該複數個節點上的複數個虛擬裝置,各個虛擬裝置具有複數個虛擬埠,其中各個虛擬埠對應於對外埠或對內埠的一者,該對外埠與該內層網路的節點之一個網路介面關聯,該對內埠與虛擬網路裝置間的虛擬鏈結關聯;儲存虛擬網路拓樸的共享資料庫,該虛擬網路拓樸包 括該等虛擬埠及該等虛擬裝置的組態;及決策引擎,可操作以模擬網路封包從最初虛擬裝置至該虛擬網拓樸至最後虛擬裝置的歷程、決定待被施加至該網路封包的協定標頭修改,以匹配從該最後虛擬裝置發射之封包、且施加所決定的協定標頭修改至後續封包,以匹配與該等協定標頭修改關聯封包協定標頭型樣的,其中該決策引擎係進一步配置成模擬至少一個虛擬裝置的流入過濾器與流出過濾器的至少一者,其中各個過濾器包括待被施加至匹配特定條件的封包之過濾規則。
  64. 如申請專利範圍第63項之計算系統,其中該決策引擎係進一步可操作以模擬MAC-學習橋接器且更新用於各個MAC-學習橋接器的MAC-學習表於該共用資料庫中。
  65. 如申請專利範圍第63項之計算系統,其中該決策引擎係進一步可操作以識別IP封包且擷取封裝乙太網路訊框的來源IP位址與來源MAC位址,並且更新該虛擬橋接器的ARP快取以關聯所識別的IP位址與MAC位址。
  66. 如申請專利範圍第63項之計算系統,其中該控制器係進一步配置成模擬該等虛擬裝置的至少一者之網路位址轉譯且儲存正流程與逆流程兩者的網路位址轉譯於該共享資料庫中。
  67. 如申請專利範圍第63項之計算系統,其中該控制器係進一步配置成從DHCP資源動態指派IP位址且儲存所指派的IP位址於該共享資料庫中。
TW101128256A 2011-08-04 2012-08-06 實施及管理虛擬網路的系統與方法 TWI583151B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201161514990P 2011-08-04 2011-08-04

Publications (2)

Publication Number Publication Date
TW201322686A TW201322686A (zh) 2013-06-01
TWI583151B true TWI583151B (zh) 2017-05-11

Family

ID=47629723

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101128256A TWI583151B (zh) 2011-08-04 2012-08-06 實施及管理虛擬網路的系統與方法

Country Status (6)

Country Link
US (2) US9900224B2 (zh)
EP (1) EP2740242B8 (zh)
JP (1) JP6080313B2 (zh)
ES (1) ES2713078T3 (zh)
TW (1) TWI583151B (zh)
WO (1) WO2013020126A1 (zh)

Families Citing this family (491)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104022A1 (en) 2006-10-31 2008-05-01 Bank Of America Corporation Document indexing and delivery system
US9456054B2 (en) 2008-05-16 2016-09-27 Palo Alto Research Center Incorporated Controlling the spread of interests and content in a content centric network
US8923293B2 (en) 2009-10-21 2014-12-30 Palo Alto Research Center Incorporated Adaptive multi-interface use for content networking
EP2740242B8 (en) 2011-08-04 2019-01-23 Mido Holdings Ltd. System and method for implementing and managing virtual networks
EP2745473B1 (en) 2011-08-17 2018-09-19 Nicira, Inc. Hierarchical controller clusters for interconnecting different logical domains
JP5870192B2 (ja) 2011-08-17 2016-02-24 ニシラ, インコーポレイテッド 論理l3ルーティング
WO2013074847A1 (en) 2011-11-15 2013-05-23 Nicira, Inc. Migrating middlebox state for distributed middleboxes
US9106576B2 (en) * 2012-01-13 2015-08-11 Nec Laboratories America, Inc. Policy-aware based method for deployment of enterprise virtual tenant networks
US9127638B2 (en) 2012-02-08 2015-09-08 Denso Corporation Control apparatus for internal combustion engine
US9022010B2 (en) 2012-02-08 2015-05-05 Denso Corporation Ignition system
US9898317B2 (en) 2012-06-06 2018-02-20 Juniper Networks, Inc. Physical path determination for virtual network packet flows
US9847910B2 (en) * 2012-08-31 2017-12-19 Bce Inc. IP MPLS PoP virtualization and fault tolerant virtual router
US9680741B2 (en) * 2012-09-04 2017-06-13 Telefonaktiebolaget Lm Ericsson (Publ) Method of operating a switch or access node in a network and a processing apparatus configured to implement the same
US9178807B1 (en) 2012-09-20 2015-11-03 Wiretap Ventures, LLC Controller for software defined networks
US9280546B2 (en) 2012-10-31 2016-03-08 Palo Alto Research Center Incorporated System and method for accessing digital content using a location-independent name
US9400800B2 (en) 2012-11-19 2016-07-26 Palo Alto Research Center Incorporated Data transport by named content synchronization
US9166947B1 (en) * 2012-11-21 2015-10-20 Amazon Technologies, Inc. Maintaining private connections during network interface reconfiguration
US10430839B2 (en) 2012-12-12 2019-10-01 Cisco Technology, Inc. Distributed advertisement insertion in content-centric networks
GB2514057B (en) * 2012-12-12 2020-12-23 Pismo Labs Technology Ltd Method and system to reduce wireless network packets for centralized layer two network
EP2747386A1 (en) * 2012-12-20 2014-06-25 Telefonica S.A. Method and System for the creation, modification and removal of a distributed virtual customer premises equipment
WO2014105027A1 (en) * 2012-12-27 2014-07-03 Intel Corporation Reservation and execution image writing of native computing devices
CN103152267B (zh) * 2013-02-04 2017-02-22 华为技术有限公司 路由管理方法及路由方法及网络控制器及路由器
US9384454B2 (en) * 2013-02-20 2016-07-05 Bank Of America Corporation Enterprise componentized workflow application
CN104022953B (zh) * 2013-02-28 2018-02-09 新华三技术有限公司 基于开放流Openflow的报文转发方法和装置
US20140282542A1 (en) * 2013-03-14 2014-09-18 Infinio Systems Inc. Hypervisor Storage Intercept Method
US10541898B2 (en) * 2013-03-15 2020-01-21 Brian Weinberg System and method for creating, deploying, and administering distinct virtual computer networks
US9978025B2 (en) 2013-03-20 2018-05-22 Cisco Technology, Inc. Ordered-element naming for name-based packet forwarding
US11165660B2 (en) * 2013-05-07 2021-11-02 International Business Machines Corporation Dynamically grouping monitored resources in a cloud environment to collections representing a composite application
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US10212238B2 (en) * 2013-05-15 2019-02-19 Level 3 Communications, Llc Selecting a content providing server in a content delivery network
US9935791B2 (en) 2013-05-20 2018-04-03 Cisco Technology, Inc. Method and system for name resolution across heterogeneous architectures
US9014007B2 (en) * 2013-05-31 2015-04-21 Dell Products L.P. VXLAN based multicasting systems having improved load distribution
US9135042B2 (en) * 2013-06-13 2015-09-15 International Business Machines Corporation Provisioning a secure customer domain in a virtualized multi-tenant environment
US9413485B2 (en) * 2013-06-24 2016-08-09 Nec Corporation Network followed by compute load balancing procedure for embedding cloud services in software-defined flexible-grid optical transport networks
CN104253770B (zh) * 2013-06-27 2017-07-14 新华三技术有限公司 实现分布式虚拟交换机系统的方法及设备
US9467366B2 (en) * 2013-07-03 2016-10-11 Avaya Inc. Method and apparatus providing single-tier routing in a shortest path bridging (SPB) network
US9407580B2 (en) 2013-07-12 2016-08-02 Nicira, Inc. Maintaining data stored with a packet
US9282019B2 (en) 2013-07-12 2016-03-08 Nicira, Inc. Tracing logical network packets through physical network
US9197529B2 (en) 2013-07-12 2015-11-24 Nicira, Inc. Tracing network packets through logical and physical networks
WO2015013707A1 (en) * 2013-07-26 2015-01-29 Zte (Usa) Inc. Method and system for an adaptive software-defined networking controller
US9444722B2 (en) 2013-08-01 2016-09-13 Palo Alto Research Center Incorporated Method and apparatus for configuring routing paths in a custodian-based routing architecture
US9473573B2 (en) * 2013-08-07 2016-10-18 Nec Corporation Network followed by compute load balancing procedure for embedding cloud services in software-defined flexible-grid optical transport networks
US9787546B2 (en) * 2013-08-07 2017-10-10 Harris Corporation Network management system generating virtual network map and related methods
US9952885B2 (en) 2013-08-14 2018-04-24 Nicira, Inc. Generation of configuration files for a DHCP module executing within a virtualized container
US9887960B2 (en) 2013-08-14 2018-02-06 Nicira, Inc. Providing services for logical networks
US9432204B2 (en) 2013-08-24 2016-08-30 Nicira, Inc. Distributed multicast by endpoints
US9548965B2 (en) 2013-08-26 2017-01-17 Nicira, Inc. Proxy methods for suppressing broadcast traffic in a network
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US10298416B2 (en) 2013-09-05 2019-05-21 Pismo Labs Technology Limited Method and system for converting a broadcast packet to a unicast packet at an access point
CN104468462B (zh) * 2013-09-12 2017-12-15 新华三技术有限公司 分布式虚拟交换机系统的报文转发方法及设备
CN104468358B (zh) * 2013-09-25 2018-05-11 新华三技术有限公司 分布式虚拟交换机系统的报文转发方法及设备
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US20150100560A1 (en) 2013-10-04 2015-04-09 Nicira, Inc. Network Controller for Managing Software and Hardware Forwarding Elements
US9264330B2 (en) 2013-10-13 2016-02-16 Nicira, Inc. Tracing host-originated logical network packets
US9575782B2 (en) 2013-10-13 2017-02-21 Nicira, Inc. ARP for logical router
US10063458B2 (en) 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9998530B2 (en) 2013-10-15 2018-06-12 Nicira, Inc. Distributed global load-balancing system for software-defined data centers
CN104580025B (zh) * 2013-10-18 2018-12-14 华为技术有限公司 用于开放流网络中建立带内连接的方法和交换机
CN104572243B (zh) * 2013-10-25 2017-09-29 国际商业机器公司 用于共享Java虚拟机的方法和系统
TWI493377B (zh) * 2013-10-28 2015-07-21 Chunghwa Telecom Co Ltd A kind of cloud ARP and IP spoofing protection system
US9407549B2 (en) 2013-10-29 2016-08-02 Palo Alto Research Center Incorporated System and method for hash-based forwarding of packets with hierarchically structured variable-length identifiers
US9276840B2 (en) 2013-10-30 2016-03-01 Palo Alto Research Center Incorporated Interest messages with a payload for a named data network
CN104601346B (zh) 2013-10-30 2018-09-11 联想企业解决方案(新加坡)私人有限公司 管理交换机的网络连接的方法和装置
US9401864B2 (en) 2013-10-31 2016-07-26 Palo Alto Research Center Incorporated Express header for packets with hierarchically structured variable-length identifiers
WO2015066208A1 (en) 2013-11-04 2015-05-07 Illumio, Inc. Pairing in a distributed network management system that uses a logical multi-dimensional label-based policy model
US9686581B2 (en) 2013-11-07 2017-06-20 Cisco Technology, Inc. Second-screen TV bridge
US9311377B2 (en) 2013-11-13 2016-04-12 Palo Alto Research Center Incorporated Method and apparatus for performing server handoff in a name-based content distribution system
US10129365B2 (en) 2013-11-13 2018-11-13 Cisco Technology, Inc. Method and apparatus for pre-fetching remote content based on static and dynamic recommendations
US10101801B2 (en) 2013-11-13 2018-10-16 Cisco Technology, Inc. Method and apparatus for prefetching content in a data stream
US10089655B2 (en) 2013-11-27 2018-10-02 Cisco Technology, Inc. Method and apparatus for scalable data broadcasting
TW201521405A (zh) 2013-11-29 2015-06-01 萬國商業機器公司 查找網路纜線連接器之方法、資訊設備及程式產品
US9503358B2 (en) 2013-12-05 2016-11-22 Palo Alto Research Center Incorporated Distance-based routing in an information-centric network
US9967199B2 (en) 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US10158538B2 (en) 2013-12-09 2018-12-18 Nicira, Inc. Reporting elephant flows to a network controller
US9602385B2 (en) 2013-12-18 2017-03-21 Nicira, Inc. Connectivity segment selection
US9602392B2 (en) 2013-12-18 2017-03-21 Nicira, Inc. Connectivity segment coloring
US11349806B2 (en) 2013-12-19 2022-05-31 Vmware, Inc. Methods, apparatuses and systems for assigning IP addresses in a virtualized environment
US9379979B2 (en) * 2014-01-14 2016-06-28 Palo Alto Research Center Incorporated Method and apparatus for establishing a virtual interface for a set of mutual-listener devices
US9444723B1 (en) * 2014-01-15 2016-09-13 Cisco Technology, Inc. Passing data over virtual links
US9407504B1 (en) * 2014-01-15 2016-08-02 Cisco Technology, Inc. Virtual links for network appliances
US10098051B2 (en) 2014-01-22 2018-10-09 Cisco Technology, Inc. Gateways and routing in software-defined manets
US10172068B2 (en) 2014-01-22 2019-01-01 Cisco Technology, Inc. Service-oriented routing in software-defined MANETs
US9374304B2 (en) 2014-01-24 2016-06-21 Palo Alto Research Center Incorporated End-to end route tracing over a named-data network
US9954678B2 (en) 2014-02-06 2018-04-24 Cisco Technology, Inc. Content-based transport security
EP3107248A4 (en) * 2014-02-12 2017-10-18 Nec Corporation Information processing device, communication method, network control device, network control method, communication system, and program
JP6310721B2 (ja) * 2014-02-19 2018-04-11 国立大学法人京都大学 関係性グラフ評価システム
US9215214B2 (en) 2014-02-20 2015-12-15 Nicira, Inc. Provisioning firewall rules on a firewall enforcing device
US9678998B2 (en) 2014-02-28 2017-06-13 Cisco Technology, Inc. Content name resolution for information centric networking
US10089651B2 (en) 2014-03-03 2018-10-02 Cisco Technology, Inc. Method and apparatus for streaming advertisements in a scalable data broadcasting system
US9836540B2 (en) 2014-03-04 2017-12-05 Cisco Technology, Inc. System and method for direct storage access in a content-centric network
US9419889B2 (en) 2014-03-07 2016-08-16 Nicira, Inc. Method and system for discovering a path of network traffic
US9473405B2 (en) 2014-03-10 2016-10-18 Palo Alto Research Center Incorporated Concurrent hashes and sub-hashes on data streams
US9626413B2 (en) 2014-03-10 2017-04-18 Cisco Systems, Inc. System and method for ranking content popularity in a content-centric network
US9391896B2 (en) 2014-03-10 2016-07-12 Palo Alto Research Center Incorporated System and method for packet forwarding using a conjunctive normal form strategy in a content-centric network
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9225597B2 (en) 2014-03-14 2015-12-29 Nicira, Inc. Managed gateways peering with external router to attract ingress packets
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
US9407432B2 (en) 2014-03-19 2016-08-02 Palo Alto Research Center Incorporated System and method for efficient and secure distribution of digital content
US9916601B2 (en) 2014-03-21 2018-03-13 Cisco Technology, Inc. Marketplace for presenting advertisements in a scalable data broadcasting system
US9647883B2 (en) * 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
EP3624407B1 (en) * 2014-03-21 2023-05-17 Nicira Inc. Dynamic routing for logical routers
CN104954271B (zh) 2014-03-26 2018-11-30 国际商业机器公司 Sdn网络中的数据包处理方法和装置
US9363179B2 (en) 2014-03-26 2016-06-07 Palo Alto Research Center Incorporated Multi-publisher routing protocol for named data networks
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US9419874B2 (en) 2014-03-27 2016-08-16 Nicira, Inc. Packet tracing in a software-defined networking environment
US9338091B2 (en) 2014-03-27 2016-05-10 Nicira, Inc. Procedures for efficient cloud service access in a system with multiple tenant logical networks
US9825854B2 (en) 2014-03-27 2017-11-21 Nicira, Inc. Host architecture for efficient cloud service access
JP6211975B2 (ja) * 2014-03-27 2017-10-11 株式会社日立製作所 ネットワーク延伸システム、制御装置、およびネットワーク延伸方法
US9413644B2 (en) 2014-03-27 2016-08-09 Nicira, Inc. Ingress ECMP in virtual distributed routing environment
US9794186B2 (en) 2014-03-27 2017-10-17 Nicira, Inc. Distributed network address translation for efficient cloud service access
US9641435B1 (en) * 2014-03-28 2017-05-02 Juniper Neworks, Inc. Packet segmentation offload for virtual networks
US10742505B2 (en) 2014-03-28 2020-08-11 Hewlett Packard Enterprise Development Lp Reconciling information in a controller and a node
US9906494B2 (en) 2014-03-31 2018-02-27 Nicira, Inc. Configuring interactions with a firewall service virtual machine
US9338094B2 (en) * 2014-03-31 2016-05-10 Dell Products, L.P. System and method for context aware network
US9703743B2 (en) 2014-03-31 2017-07-11 Juniper Networks, Inc. PCIe-based host network accelerators (HNAS) for data center overlay network
US9794079B2 (en) 2014-03-31 2017-10-17 Nicira, Inc. Replicating broadcast, unknown-unicast, and multicast traffic in overlay logical networks bridged with physical networks
US9363086B2 (en) 2014-03-31 2016-06-07 Palo Alto Research Center Incorporated Aggregate signing of data in content centric networking
CN104954281B (zh) * 2014-03-31 2018-08-03 中国移动通信集团公司 通信方法、系统、资源池管理系统、交换机和控制装置
US9485191B2 (en) 2014-03-31 2016-11-01 Juniper Networks, Inc. Flow-control within a high-performance, scalable and drop-free data center switch fabric
US9294304B2 (en) * 2014-03-31 2016-03-22 Juniper Networks, Inc. Host network accelerator for data center overlay network
US9479457B2 (en) 2014-03-31 2016-10-25 Juniper Networks, Inc. High-performance, scalable and drop-free data center switch fabric
US9503427B2 (en) 2014-03-31 2016-11-22 Nicira, Inc. Method and apparatus for integrating a service virtual machine
US9215210B2 (en) 2014-03-31 2015-12-15 Nicira, Inc. Migrating firewall connection state for a firewall service virtual machine
US9716622B2 (en) 2014-04-01 2017-07-25 Cisco Technology, Inc. System and method for dynamic name configuration in content-centric networks
US9807004B2 (en) * 2014-04-01 2017-10-31 Google Inc. System and method for software defined routing of traffic within and between autonomous systems with enhanced flow routing, scalability and security
KR102262183B1 (ko) * 2014-04-04 2021-06-07 뉴라컴 인코포레이티드 수신 확인 방법 및 다중 사용자 전송 방법
US10075521B2 (en) 2014-04-07 2018-09-11 Cisco Technology, Inc. Collection synchronization using equality matched network names
US9473576B2 (en) 2014-04-07 2016-10-18 Palo Alto Research Center Incorporated Service discovery using collection synchronization with exact names
US9390289B2 (en) 2014-04-07 2016-07-12 Palo Alto Research Center Incorporated Secure collection synchronization using matched network names
US9451032B2 (en) 2014-04-10 2016-09-20 Palo Alto Research Center Incorporated System and method for simple service discovery in content-centric networks
US10222935B2 (en) 2014-04-23 2019-03-05 Cisco Technology Inc. Treemap-type user interface
US9992281B2 (en) 2014-05-01 2018-06-05 Cisco Technology, Inc. Accountable content stores for information centric networks
US9609014B2 (en) 2014-05-22 2017-03-28 Cisco Systems, Inc. Method and apparatus for preventing insertion of malicious content at a named data network router
US9455835B2 (en) 2014-05-23 2016-09-27 Palo Alto Research Center Incorporated System and method for circular link resolution with hash-based names in content-centric networks
US9648121B2 (en) * 2014-05-27 2017-05-09 Ravello Systems Ltd. Source-destination network address translation (SDNAT) proxy and method thereof
US9276751B2 (en) 2014-05-28 2016-03-01 Palo Alto Research Center Incorporated System and method for circular link resolution with computable hash-based names in content-centric networks
US9729512B2 (en) 2014-06-04 2017-08-08 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9537719B2 (en) 2014-06-19 2017-01-03 Palo Alto Research Center Incorporated Method and apparatus for deploying a minimal-cost CCN topology
US9516144B2 (en) 2014-06-19 2016-12-06 Palo Alto Research Center Incorporated Cut-through forwarding of CCNx message fragments with IP encapsulation
US9755951B2 (en) * 2014-06-30 2017-09-05 Cfph, Llc Financial network
US9426113B2 (en) 2014-06-30 2016-08-23 Palo Alto Research Center Incorporated System and method for managing devices over a content centric network
US9379956B2 (en) 2014-06-30 2016-06-28 Nicira, Inc. Identifying a network topology between two endpoints
US9553803B2 (en) 2014-06-30 2017-01-24 Nicira, Inc. Periodical generation of network measurement data
US9699198B2 (en) 2014-07-07 2017-07-04 Cisco Technology, Inc. System and method for parallel secure content bootstrapping in content-centric networks
US9621354B2 (en) 2014-07-17 2017-04-11 Cisco Systems, Inc. Reconstructable content objects
US9959156B2 (en) 2014-07-17 2018-05-01 Cisco Technology, Inc. Interest return control message
US9590887B2 (en) 2014-07-18 2017-03-07 Cisco Systems, Inc. Method and system for keeping interest alive in a content centric network
US9729616B2 (en) 2014-07-18 2017-08-08 Cisco Technology, Inc. Reputation-based strategy for forwarding and responding to interests over a content centric network
US9535968B2 (en) 2014-07-21 2017-01-03 Palo Alto Research Center Incorporated System for distributing nameless objects using self-certifying names
CN105282004A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 网络虚拟化处理方法、装置及系统
US9882964B2 (en) 2014-08-08 2018-01-30 Cisco Technology, Inc. Explicit strategy feedback in name-based forwarding
US9729662B2 (en) 2014-08-11 2017-08-08 Cisco Technology, Inc. Probabilistic lazy-forwarding technique without validation in a content centric network
US9503365B2 (en) 2014-08-11 2016-11-22 Palo Alto Research Center Incorporated Reputation-based instruction processing over an information centric network
US9391777B2 (en) 2014-08-15 2016-07-12 Palo Alto Research Center Incorporated System and method for performing key resolution over a content centric network
US9800637B2 (en) 2014-08-19 2017-10-24 Cisco Technology, Inc. System and method for all-in-one content stream in content-centric networks
US9467492B2 (en) 2014-08-19 2016-10-11 Palo Alto Research Center Incorporated System and method for reconstructable all-in-one content stream
EP3183831B1 (en) 2014-08-22 2021-05-12 Level 3 Communications, LLC Software defined networking portal
US20160065479A1 (en) * 2014-08-26 2016-03-03 rift.IO, Inc. Distributed input/output architecture for network functions virtualization
US9497282B2 (en) 2014-08-27 2016-11-15 Palo Alto Research Center Incorporated Network coding for content-centric network
US10204013B2 (en) 2014-09-03 2019-02-12 Cisco Technology, Inc. System and method for maintaining a distributed and fault-tolerant state over an information centric network
US9553812B2 (en) 2014-09-09 2017-01-24 Palo Alto Research Center Incorporated Interest keep alives at intermediate routers in a CCN
US10038629B2 (en) 2014-09-11 2018-07-31 Microsoft Technology Licensing, Llc Virtual machine migration using label based underlay network forwarding
JP6464631B2 (ja) * 2014-09-22 2019-02-06 日本電気株式会社 ネットワーク制御システム、ルータ仮想化装置、ネットワーク制御方法、ルータ仮想化方法およびプログラム
CN105515802B (zh) * 2014-09-22 2019-04-12 新华三技术有限公司 网络虚拟化方法及装置
US20160087887A1 (en) * 2014-09-22 2016-03-24 Hei Tao Fung Routing fabric
WO2016048390A1 (en) * 2014-09-26 2016-03-31 Hewlett Packard Enterprise Development Lp Link aggregation configuration for a node in a software-defined network
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US9798810B2 (en) * 2014-09-30 2017-10-24 At&T Intellectual Property I, L.P. Methods and apparatus to track changes to a network topology
US9825810B2 (en) 2014-09-30 2017-11-21 Nicira, Inc. Method and apparatus for distributing load among a plurality of service nodes
US10129077B2 (en) 2014-09-30 2018-11-13 Nicira, Inc. Configuring and operating a XaaS model in a datacenter
US10135737B2 (en) 2014-09-30 2018-11-20 Nicira, Inc. Distributed load balancing systems
US9768980B2 (en) 2014-09-30 2017-09-19 Nicira, Inc. Virtual distributed bridging
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US10020960B2 (en) 2014-09-30 2018-07-10 Nicira, Inc. Virtual distributed bridging
US10469342B2 (en) 2014-10-10 2019-11-05 Nicira, Inc. Logical network traffic analysis
JP6721166B2 (ja) * 2014-10-14 2020-07-08 ミド ホールディングス リミテッド 仮想ネットワークにおける分散型フロー状態p2p設定のためのシステムおよび方法
US10069933B2 (en) 2014-10-23 2018-09-04 Cisco Technology, Inc. System and method for creating virtual interfaces based on network characteristics
US9936014B2 (en) 2014-10-26 2018-04-03 Microsoft Technology Licensing, Llc Method for virtual machine migration in computer networks
US9923800B2 (en) * 2014-10-26 2018-03-20 Microsoft Technology Licensing, Llc Method for reachability management in computer networks
JP6507572B2 (ja) * 2014-10-31 2019-05-08 富士通株式会社 管理サーバの経路制御方法、および管理サーバ
US9866473B2 (en) 2014-11-14 2018-01-09 Nicira, Inc. Stateful services on stateless clustered edge
US11533255B2 (en) 2014-11-14 2022-12-20 Nicira, Inc. Stateful services on stateless clustered edge
US10044617B2 (en) 2014-11-14 2018-08-07 Nicira, Inc. Stateful services on stateless clustered edge
US9876714B2 (en) 2014-11-14 2018-01-23 Nicira, Inc. Stateful services on stateless clustered edge
CN104410541B (zh) * 2014-11-18 2017-09-15 盛科网络(苏州)有限公司 Vxlan内层虚拟机流量在中间交换机上进行统计的方法及装置
JP2016100625A (ja) * 2014-11-18 2016-05-30 富士通株式会社 経路情報提供プログラム、経路情報提供方法、経路情報提供装置、情報処理システムの経路制御方法、及び、情報処理システム
CN105704036B (zh) * 2014-11-27 2019-05-28 华为技术有限公司 报文转发方法、装置和系统
US9692727B2 (en) 2014-12-02 2017-06-27 Nicira, Inc. Context-aware distributed firewall
US10374833B2 (en) 2014-12-03 2019-08-06 Hewlett Packard Enterprise Development Lp Modifying an address to forward a packet to a service function
CN105721235B (zh) * 2014-12-05 2019-06-11 华为技术有限公司 一种检测连通性的方法和装置
US9590948B2 (en) 2014-12-15 2017-03-07 Cisco Systems, Inc. CCN routing using hardware-assisted hash tables
US9536059B2 (en) 2014-12-15 2017-01-03 Palo Alto Research Center Incorporated Method and system for verifying renamed content using manifests in a content centric network
US10237189B2 (en) 2014-12-16 2019-03-19 Cisco Technology, Inc. System and method for distance-based interest forwarding
US9846881B2 (en) 2014-12-19 2017-12-19 Palo Alto Research Center Incorporated Frugal user engagement help systems
US10003520B2 (en) 2014-12-22 2018-06-19 Cisco Technology, Inc. System and method for efficient name-based content routing using link-state information in information-centric networks
US9473475B2 (en) 2014-12-22 2016-10-18 Palo Alto Research Center Incorporated Low-cost authenticated signing delegation in content centric networking
US9660825B2 (en) 2014-12-24 2017-05-23 Cisco Technology, Inc. System and method for multi-source multicasting in content-centric networks
US9891940B2 (en) 2014-12-29 2018-02-13 Nicira, Inc. Introspection method and apparatus for network access filtering
US9967906B2 (en) 2015-01-07 2018-05-08 Cisco Technology, Inc. Wireless roaming using a distributed store
US9602596B2 (en) 2015-01-12 2017-03-21 Cisco Systems, Inc. Peer-to-peer sharing in a content centric network
US9832291B2 (en) 2015-01-12 2017-11-28 Cisco Technology, Inc. Auto-configurable transport stack
US9916457B2 (en) 2015-01-12 2018-03-13 Cisco Technology, Inc. Decoupled name security binding for CCN objects
US9946743B2 (en) 2015-01-12 2018-04-17 Cisco Technology, Inc. Order encoded manifests in a content centric network
US9954795B2 (en) 2015-01-12 2018-04-24 Cisco Technology, Inc. Resource allocation using CCN manifests
US9979645B2 (en) * 2015-01-14 2018-05-22 Futurewei Technologies, Inc. Hardware and software methodologies for creating and managing portable service function chains
US10061664B2 (en) * 2015-01-15 2018-08-28 Cisco Technology, Inc. High availability and failover
US9462006B2 (en) 2015-01-21 2016-10-04 Palo Alto Research Center Incorporated Network-layer application-specific trust model
US10079779B2 (en) 2015-01-30 2018-09-18 Nicira, Inc. Implementing logical router uplinks
US9552493B2 (en) 2015-02-03 2017-01-24 Palo Alto Research Center Incorporated Access control framework for information centric networking
US20160226753A1 (en) * 2015-02-04 2016-08-04 Mediatek Inc. Scheme for performing one-pass tunnel forwarding function on two-layer network structure
US10333840B2 (en) 2015-02-06 2019-06-25 Cisco Technology, Inc. System and method for on-demand content exchange with adaptive naming in information-centric networks
CN105991430B (zh) * 2015-03-05 2022-01-14 李明 跨多个自治网络系统的数据路由
US10075401B2 (en) 2015-03-18 2018-09-11 Cisco Technology, Inc. Pending interest table behavior
US10594743B2 (en) 2015-04-03 2020-03-17 Nicira, Inc. Method, apparatus, and system for implementing a content switch
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9942058B2 (en) 2015-04-17 2018-04-10 Nicira, Inc. Managing tunnel endpoints for facilitating creation of logical networks
CN104993941B (zh) * 2015-05-14 2018-07-03 西安电子科技大学 一种基于Openflow网络高容错性虚拟网络映射算法
FR3037463B1 (fr) * 2015-06-15 2017-06-23 Bull Sas Transformation d'infrastructures reseaux non structurees en topologies virtuelles structurees adaptees a des algorithmes de routage specifiques
WO2016204777A1 (en) * 2015-06-19 2016-12-22 Hewlett Packard Enterprise Development LP. Network communications
US10116605B2 (en) 2015-06-22 2018-10-30 Cisco Technology, Inc. Transport stack name scheme and identity management
US10075402B2 (en) 2015-06-24 2018-09-11 Cisco Technology, Inc. Flexible command and control in content centric networks
US10554484B2 (en) 2015-06-26 2020-02-04 Nicira, Inc. Control plane integration with hardware switches
US10243848B2 (en) 2015-06-27 2019-03-26 Nicira, Inc. Provisioning logical entities in a multi-datacenter environment
US9755903B2 (en) 2015-06-30 2017-09-05 Nicira, Inc. Replicating firewall policy across multiple data centers
US10225184B2 (en) 2015-06-30 2019-03-05 Nicira, Inc. Redirecting traffic in a virtual distributed router environment
US9519505B1 (en) 2015-07-06 2016-12-13 Bank Of America Corporation Enhanced configuration and property management system
US10505846B2 (en) 2015-07-22 2019-12-10 Cisco Technology, Inc. Resilient segment routing service hunting with TCP session stickiness
US9985837B2 (en) 2015-07-23 2018-05-29 Cisco Technology, Inc. Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment
US10701038B2 (en) 2015-07-27 2020-06-30 Cisco Technology, Inc. Content negotiation in a content centric network
JP6570033B2 (ja) * 2015-07-28 2019-09-04 日本電信電話株式会社 仮想スイッチ制御システム及び方法
US10693859B2 (en) 2015-07-30 2020-06-23 Oracle International Corporation Restricting access for a single sign-on (SSO) session
US9847938B2 (en) * 2015-07-31 2017-12-19 Nicira, Inc. Configuring logical routers on hardware switches
US9819581B2 (en) 2015-07-31 2017-11-14 Nicira, Inc. Configuring a hardware switch as an edge node for a logical router
US9967182B2 (en) 2015-07-31 2018-05-08 Nicira, Inc. Enabling hardware switches to perform logical routing functionalities
US9986034B2 (en) 2015-08-03 2018-05-29 Cisco Technology, Inc. Transferring state in content centric network stacks
US10129142B2 (en) 2015-08-11 2018-11-13 Nicira, Inc. Route configuration for logical router
US10701104B2 (en) * 2015-08-18 2020-06-30 Acronis International Gmbh Agentless security of virtual machines using a network interface controller
US10610144B2 (en) 2015-08-19 2020-04-07 Palo Alto Research Center Incorporated Interactive remote patient monitoring and condition management intervention system
US10313186B2 (en) 2015-08-31 2019-06-04 Nicira, Inc. Scalable controller for hardware VTEPS
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US9935862B2 (en) 2015-09-08 2018-04-03 At&T Intellectual Property I, L.P. Low-impact proactive monitoring of customer access to virtualized network elements in a cloud platform
US9832123B2 (en) 2015-09-11 2017-11-28 Cisco Technology, Inc. Network named fragments in a content centric network
US10355999B2 (en) 2015-09-23 2019-07-16 Cisco Technology, Inc. Flow control with network named fragments
US9977809B2 (en) 2015-09-24 2018-05-22 Cisco Technology, Inc. Information and data framework in a content centric network
US10313227B2 (en) 2015-09-24 2019-06-04 Cisco Technology, Inc. System and method for eliminating undetected interest looping in information-centric networks
US10454820B2 (en) 2015-09-29 2019-10-22 Cisco Technology, Inc. System and method for stateless information-centric networking
US10263828B2 (en) 2015-09-30 2019-04-16 Nicira, Inc. Preventing concurrent distribution of network data to a hardware switch by multiple controllers
US10230576B2 (en) 2015-09-30 2019-03-12 Nicira, Inc. Managing administrative statuses of hardware VTEPs
US9979593B2 (en) 2015-09-30 2018-05-22 Nicira, Inc. Logical L3 processing for L2 hardware switches
US9948577B2 (en) 2015-09-30 2018-04-17 Nicira, Inc. IP aliases in logical networks with hardware switches
US10778562B2 (en) 2015-10-12 2020-09-15 Telefonaktiebolaget Lm Ericsson (Publ) Path computation in a multi-tenant network
US10033647B2 (en) 2015-10-13 2018-07-24 Oracle International Corporation System and method for efficient network isolation and load balancing in a multi-tenant cluster environment
US10169203B2 (en) 2015-10-14 2019-01-01 At&T Intellectual Property I, L.P. Test simulation for software defined networking environments
US10263965B2 (en) 2015-10-16 2019-04-16 Cisco Technology, Inc. Encrypted CCNx
US9848237B2 (en) * 2015-10-21 2017-12-19 Rovi Guides, Inc. Systems and methods for identifying a source of a user interface from a fingerprint of the user interface
US9819996B2 (en) 2015-10-21 2017-11-14 Rovi Guides, Inc. Systems and methods for fingerprinting to track device usage
US10505982B2 (en) 2015-10-23 2019-12-10 Oracle International Corporation Managing security agents in a distributed environment
CN106656801B (zh) * 2015-10-28 2019-11-15 华为技术有限公司 业务流的转发路径的重定向方法、装置和业务流转发系统
US9794238B2 (en) 2015-10-29 2017-10-17 Cisco Technology, Inc. System for key exchange in a content centric network
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10200235B2 (en) 2015-10-31 2019-02-05 Nicira, Inc. Distributed database structure for logical and physical network data
US10009446B2 (en) 2015-11-02 2018-06-26 Cisco Technology, Inc. Header compression for CCN messages using dictionary learning
US9807205B2 (en) 2015-11-02 2017-10-31 Cisco Technology, Inc. Header compression for CCN messages using dictionary
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10250553B2 (en) 2015-11-03 2019-04-02 Nicira, Inc. ARP offloading for managed hardware forwarding elements
US10021222B2 (en) 2015-11-04 2018-07-10 Cisco Technology, Inc. Bit-aligned header compression for CCN messages using dictionary
US10594656B2 (en) * 2015-11-17 2020-03-17 Zscaler, Inc. Multi-tenant cloud-based firewall systems and methods
US10097521B2 (en) 2015-11-20 2018-10-09 Cisco Technology, Inc. Transparent encryption in a content centric network
US9912776B2 (en) 2015-12-02 2018-03-06 Cisco Technology, Inc. Explicit content deletion commands in a content centric network
US10097346B2 (en) 2015-12-09 2018-10-09 Cisco Technology, Inc. Key catalogs in a content centric network
US10078062B2 (en) 2015-12-15 2018-09-18 Palo Alto Research Center Incorporated Device health estimation by combining contextual information with sensor data
US9998375B2 (en) * 2015-12-15 2018-06-12 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9992112B2 (en) 2015-12-15 2018-06-05 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9917799B2 (en) 2015-12-15 2018-03-13 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
CN106936939B (zh) * 2015-12-31 2020-06-02 华为技术有限公司 一种报文处理方法、相关装置及nvo3网络系统
US10257271B2 (en) 2016-01-11 2019-04-09 Cisco Technology, Inc. Chandra-Toueg consensus in a content centric network
US9949301B2 (en) 2016-01-20 2018-04-17 Palo Alto Research Center Incorporated Methods for fast, secure and privacy-friendly internet connection discovery in wireless networks
US10305864B2 (en) 2016-01-25 2019-05-28 Cisco Technology, Inc. Method and system for interest encryption in a content centric network
US10200308B2 (en) 2016-01-27 2019-02-05 Oracle International Corporation System and method for supporting a scalable representation of link stability and availability in a high performance computing environment
US11018947B2 (en) 2016-01-27 2021-05-25 Oracle International Corporation System and method for supporting on-demand setup of local host channel adapter port partition membership in a high-performance computing environment
US10469621B2 (en) 2016-01-27 2019-11-05 Oracle International Corporation System and method of host-side configuration of a host channel adapter (HCA) in a high-performance computing environment
US11271870B2 (en) 2016-01-27 2022-03-08 Oracle International Corporation System and method for supporting scalable bit map based P_Key table in a high performance computing environment
US10873566B2 (en) * 2016-02-23 2020-12-22 Nicira, Inc. Distributed firewall in a virtualized computing environment
US11038845B2 (en) * 2016-02-23 2021-06-15 Nicira, Inc. Firewall in a virtualized computing environment using physical network interface controller (PNIC) level firewall rules
US10043016B2 (en) 2016-02-29 2018-08-07 Cisco Technology, Inc. Method and system for name encryption agreement in a content centric network
US10051071B2 (en) 2016-03-04 2018-08-14 Cisco Technology, Inc. Method and system for collecting historical network information in a content centric network
US10038633B2 (en) 2016-03-04 2018-07-31 Cisco Technology, Inc. Protocol to query for historical network information in a content centric network
US10742596B2 (en) 2016-03-04 2020-08-11 Cisco Technology, Inc. Method and system for reducing a collision probability of hash-based names using a publisher identifier
US10003507B2 (en) 2016-03-04 2018-06-19 Cisco Technology, Inc. Transport session state protocol
US9832116B2 (en) 2016-03-14 2017-11-28 Cisco Technology, Inc. Adjusting entries in a forwarding information base in a content centric network
US10212196B2 (en) 2016-03-16 2019-02-19 Cisco Technology, Inc. Interface discovery and authentication in a name-based network
US10067948B2 (en) 2016-03-18 2018-09-04 Cisco Technology, Inc. Data deduping in content centric networking manifests
US11436656B2 (en) 2016-03-18 2022-09-06 Palo Alto Research Center Incorporated System and method for a real-time egocentric collaborative filter on large datasets
JP7127537B2 (ja) * 2016-03-22 2022-08-30 日本電気株式会社 トランスポートネットワーク制御装置、通信システム、転送ノードの制御方法及びプログラム
US10091330B2 (en) 2016-03-23 2018-10-02 Cisco Technology, Inc. Interest scheduling by an information and data framework in a content centric network
US10033639B2 (en) 2016-03-25 2018-07-24 Cisco Technology, Inc. System and method for routing packets in a content centric network using anonymous datagrams
US10320760B2 (en) 2016-04-01 2019-06-11 Cisco Technology, Inc. Method and system for mutating and caching content in a content centric network
US9930146B2 (en) 2016-04-04 2018-03-27 Cisco Technology, Inc. System and method for compressing content centric networking messages
US10425503B2 (en) 2016-04-07 2019-09-24 Cisco Technology, Inc. Shared pending interest table in a content centric network
US10027578B2 (en) 2016-04-11 2018-07-17 Cisco Technology, Inc. Method and system for routable prefix queries in a content centric network
US10333849B2 (en) * 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10581793B1 (en) * 2016-04-29 2020-03-03 Arista Networks, Inc. Address resolution in virtual extensible networks
US10484515B2 (en) 2016-04-29 2019-11-19 Nicira, Inc. Implementing logical metadata proxy servers in logical networks
US10348685B2 (en) 2016-04-29 2019-07-09 Nicira, Inc. Priority allocation for distributed service rules
US10135727B2 (en) 2016-04-29 2018-11-20 Nicira, Inc. Address grouping for distributed service rules
US10841273B2 (en) 2016-04-29 2020-11-17 Nicira, Inc. Implementing logical DHCP servers in logical networks
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10944722B2 (en) 2016-05-01 2021-03-09 Nicira, Inc. Using activities to manage multi-tenant firewall configuration
US11171920B2 (en) 2016-05-01 2021-11-09 Nicira, Inc. Publication of firewall configuration
US10404450B2 (en) 2016-05-02 2019-09-03 Cisco Technology, Inc. Schematized access control in a content centric network
US10320675B2 (en) 2016-05-04 2019-06-11 Cisco Technology, Inc. System and method for routing packets in a stateless content centric network
US10547589B2 (en) 2016-05-09 2020-01-28 Cisco Technology, Inc. System for implementing a small computer systems interface protocol over a content centric network
US10063414B2 (en) 2016-05-13 2018-08-28 Cisco Technology, Inc. Updating a transport stack in a content centric network
US10084764B2 (en) 2016-05-13 2018-09-25 Cisco Technology, Inc. System for a secure encryption proxy in a content centric network
US10103989B2 (en) 2016-06-13 2018-10-16 Cisco Technology, Inc. Content object return messages in a content centric network
US10305865B2 (en) 2016-06-21 2019-05-28 Cisco Technology, Inc. Permutation-based content encryption with manifests in a content centric network
US10148572B2 (en) 2016-06-27 2018-12-04 Cisco Technology, Inc. Method and system for interest groups in a content centric network
US10129144B1 (en) * 2016-06-27 2018-11-13 Amazon Technologies, Inc. Extending virtual routing and forwarding using source identifiers
US10057162B1 (en) * 2016-06-27 2018-08-21 Amazon Technologies, Inc. Extending Virtual Routing and Forwarding at edge of VRF-aware network
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US10200343B2 (en) 2016-06-29 2019-02-05 Nicira, Inc. Implementing logical network security on a hardware switch
US11088990B2 (en) 2016-06-29 2021-08-10 Nicira, Inc. Translation cache for firewall configuration
US11258761B2 (en) 2016-06-29 2022-02-22 Nicira, Inc. Self-service firewall configuration
US10404788B2 (en) 2016-06-30 2019-09-03 Alibaba Group Holding Limited Express route transmissions between virtual machines and cloud service computing devices
US10009266B2 (en) 2016-07-05 2018-06-26 Cisco Technology, Inc. Method and system for reference counted pending interest tables in a content centric network
US9992097B2 (en) 2016-07-11 2018-06-05 Cisco Technology, Inc. System and method for piggybacking routing information in interests in a content centric network
US10419330B2 (en) * 2016-07-21 2019-09-17 Alibaba Group Holding Limited Express route transmissions between virtual machines and cloud service computing devices
US10122624B2 (en) 2016-07-25 2018-11-06 Cisco Technology, Inc. System and method for ephemeral entries in a forwarding information base in a content centric network
US10069729B2 (en) 2016-08-08 2018-09-04 Cisco Technology, Inc. System and method for throttling traffic based on a forwarding information base in a content centric network
US10956412B2 (en) 2016-08-09 2021-03-23 Cisco Technology, Inc. Method and system for conjunctive normal form attribute matching in a content centric network
US10938837B2 (en) 2016-08-30 2021-03-02 Nicira, Inc. Isolated network stack to manage security for virtual machines
US10333983B2 (en) 2016-08-30 2019-06-25 Nicira, Inc. Policy definition and enforcement for a network virtualization platform
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10326204B2 (en) 2016-09-07 2019-06-18 Cisco Technology, Inc. Switchable, oscillating near-field and far-field antenna
US10033642B2 (en) 2016-09-19 2018-07-24 Cisco Technology, Inc. System and method for making optimal routing decisions based on device-specific parameters in a content centric network
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10212248B2 (en) 2016-10-03 2019-02-19 Cisco Technology, Inc. Cache management on high availability routers in a content centric network
US10447805B2 (en) 2016-10-10 2019-10-15 Cisco Technology, Inc. Distributed consensus in a content centric network
US10911317B2 (en) * 2016-10-21 2021-02-02 Forward Networks, Inc. Systems and methods for scalable network modeling
CN107979630B (zh) * 2016-10-25 2020-04-03 新华三技术有限公司 一种信息获取方法及装置
US10135948B2 (en) 2016-10-31 2018-11-20 Cisco Technology, Inc. System and method for process migration in a content centric network
CN106412114A (zh) * 2016-11-16 2017-02-15 广州市品高软件股份有限公司 一种基于sdn的负载均衡方法及系统
US10243851B2 (en) 2016-11-21 2019-03-26 Cisco Technology, Inc. System and method for forwarder connection information in a content centric network
US10372520B2 (en) 2016-11-22 2019-08-06 Cisco Technology, Inc. Graphical user interface for visualizing a plurality of issues with an infrastructure
US10225106B2 (en) * 2016-11-29 2019-03-05 Vmware, Inc. Efficient update of per-interface address groupings
US10193862B2 (en) 2016-11-29 2019-01-29 Vmware, Inc. Security policy analysis based on detecting new network port connections
CN110168499B (zh) 2016-12-06 2023-06-20 Nicira股份有限公司 在主机上执行上下文丰富的基于属性的服务
US10739943B2 (en) 2016-12-13 2020-08-11 Cisco Technology, Inc. Ordered list user interface
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10212071B2 (en) 2016-12-21 2019-02-19 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10812451B2 (en) 2016-12-22 2020-10-20 Nicira, Inc. Performing appID based firewall services on a host
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router
US10803173B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Performing context-rich attribute-based process control services on a host
US11032246B2 (en) 2016-12-22 2021-06-08 Nicira, Inc. Context based firewall services for data message flows for multiple concurrent users on one machine
US10805332B2 (en) 2017-07-25 2020-10-13 Nicira, Inc. Context engine model
US10802857B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
US10581960B2 (en) 2016-12-22 2020-03-03 Nicira, Inc. Performing context-rich attribute-based load balancing on a host
CN106686085B (zh) 2016-12-29 2020-06-16 华为技术有限公司 一种负载均衡的方法、装置和系统
US10243840B2 (en) 2017-03-01 2019-03-26 Juniper Networks, Inc. Network interface card switching for virtual networks
US10200306B2 (en) 2017-03-07 2019-02-05 Nicira, Inc. Visualization of packet tracing operation results
US20180324061A1 (en) * 2017-05-03 2018-11-08 Extrahop Networks, Inc. Detecting network flow states for network traffic analysis
US10440723B2 (en) 2017-05-17 2019-10-08 Cisco Technology, Inc. Hierarchical channel assignment in wireless networks
US10681000B2 (en) * 2017-06-30 2020-06-09 Nicira, Inc. Assignment of unique physical network addresses for logical network addresses
US10555341B2 (en) 2017-07-11 2020-02-04 Cisco Technology, Inc. Wireless contention reduction
US10440031B2 (en) 2017-07-21 2019-10-08 Cisco Technology, Inc. Wireless network steering
US11570092B2 (en) 2017-07-31 2023-01-31 Nicira, Inc. Methods for active-active stateful network service cluster
US10951584B2 (en) 2017-07-31 2021-03-16 Nicira, Inc. Methods for active-active stateful network service cluster
US11296984B2 (en) 2017-07-31 2022-04-05 Nicira, Inc. Use of hypervisor for active-active stateful network service cluster
US11050730B2 (en) 2017-09-27 2021-06-29 Oracle International Corporation Maintaining session stickiness across authentication and authorization channels for access management
US10608887B2 (en) 2017-10-06 2020-03-31 Nicira, Inc. Using packet tracing tool to automatically execute packet capture operations
US10735981B2 (en) 2017-10-10 2020-08-04 Cisco Technology, Inc. System and method for providing a layer 2 fast re-switch for a wireless controller
US10797966B2 (en) 2017-10-29 2020-10-06 Nicira, Inc. Service operation chaining
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US10778651B2 (en) 2017-11-15 2020-09-15 Nicira, Inc. Performing context-rich attribute-based encryption on a host
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
US10375667B2 (en) 2017-12-07 2019-08-06 Cisco Technology, Inc. Enhancing indoor positioning using RF multilateration and optical sensing
US10802893B2 (en) 2018-01-26 2020-10-13 Nicira, Inc. Performing process control services on endpoint machines
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10862773B2 (en) 2018-01-26 2020-12-08 Nicira, Inc. Performing services on data messages associated with endpoint machines
US10659252B2 (en) 2018-01-26 2020-05-19 Nicira, Inc Specifying and utilizing paths through a network
US11012418B2 (en) * 2018-02-15 2021-05-18 Forcepoint Llc Multi-access interface for internet protocol security
US11153122B2 (en) 2018-02-19 2021-10-19 Nicira, Inc. Providing stateful services deployed in redundant gateways connected to asymmetric network
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
US10728174B2 (en) 2018-03-27 2020-07-28 Nicira, Inc. Incorporating layer 2 service between two interfaces of gateway device
US10862867B2 (en) 2018-04-01 2020-12-08 Cisco Technology, Inc. Intelligent graphical user interface
CN108600106B (zh) * 2018-04-28 2019-06-14 北京邮电大学 一种低时延的数据交换装置及方法
US10938778B2 (en) * 2018-05-02 2021-03-02 Forcepoint Llc Route reply back interface for cloud internal communication
CN110505176B9 (zh) * 2018-05-16 2023-04-11 中兴通讯股份有限公司 报文优先级的确定、发送方法及装置、路由系统
US10673618B2 (en) 2018-06-08 2020-06-02 Cisco Technology, Inc. Provisioning network resources in a wireless network using a native blockchain platform
US10505718B1 (en) 2018-06-08 2019-12-10 Cisco Technology, Inc. Systems, devices, and techniques for registering user equipment (UE) in wireless networks using a native blockchain platform
US10873636B2 (en) 2018-07-09 2020-12-22 Cisco Technology, Inc. Session management in a forwarding plane
US10671462B2 (en) 2018-07-24 2020-06-02 Cisco Technology, Inc. System and method for message management across a network
US11252040B2 (en) 2018-07-31 2022-02-15 Cisco Technology, Inc. Advanced network tracing in the data plane
US10735209B2 (en) 2018-08-08 2020-08-04 Cisco Technology, Inc. Bitrate utilization feedback and control in 5G-NSA networks
US10284429B1 (en) 2018-08-08 2019-05-07 Cisco Technology, Inc. System and method for sharing subscriber resources in a network environment
US10623949B2 (en) 2018-08-08 2020-04-14 Cisco Technology, Inc. Network-initiated recovery from a text message delivery failure
US10949557B2 (en) 2018-08-20 2021-03-16 Cisco Technology, Inc. Blockchain-based auditing, instantiation and maintenance of 5G network slices
US10374749B1 (en) 2018-08-22 2019-08-06 Cisco Technology, Inc. Proactive interference avoidance for access points
US10567293B1 (en) 2018-08-23 2020-02-18 Cisco Technology, Inc. Mechanism to coordinate end to end quality of service between network nodes and service provider core
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
US10652152B2 (en) 2018-09-04 2020-05-12 Cisco Technology, Inc. Mobile core dynamic tunnel end-point processing
US10230605B1 (en) 2018-09-04 2019-03-12 Cisco Technology, Inc. Scalable distributed end-to-end performance delay measurement for segment routing policies
US10779188B2 (en) 2018-09-06 2020-09-15 Cisco Technology, Inc. Uplink bandwidth estimation over broadband cellular networks
US11558288B2 (en) 2018-09-21 2023-01-17 Cisco Technology, Inc. Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks
US10285155B1 (en) 2018-09-24 2019-05-07 Cisco Technology, Inc. Providing user equipment location information indication on user plane
US11463361B2 (en) * 2018-09-27 2022-10-04 Hewlett Packard Enterprise Development Lp Rate adaptive transactions
WO2020080930A1 (en) * 2018-10-15 2020-04-23 Mimos Berhad System, virtual switch and method for establishing secured communication within network segment in virtualized environment
US10601724B1 (en) 2018-11-01 2020-03-24 Cisco Technology, Inc. Scalable network slice based queuing using segment routing flexible algorithm
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US11032155B2 (en) * 2018-11-27 2021-06-08 Nicira, Inc. Network mapping system
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
CN109617805B (zh) * 2018-12-17 2022-04-08 新华三技术有限公司合肥分公司 链路动态属性的获取方法、装置及路径选择方法、装置
US11240160B2 (en) 2018-12-28 2022-02-01 Alibaba Group Holding Limited Method, apparatus, and computer-readable storage medium for network control
US11363063B2 (en) * 2018-12-28 2022-06-14 Charter Communications Operating, Llc Botnet detection and mitigation
US11201853B2 (en) 2019-01-10 2021-12-14 Vmware, Inc. DNS cache protection
US11102074B2 (en) * 2019-01-11 2021-08-24 Cisco Technology, Inc. Software defined access fabric without subnet restriction to a virtual network
US11036538B2 (en) 2019-02-22 2021-06-15 Vmware, Inc. Providing services with service VM mobility
US11394693B2 (en) * 2019-03-04 2022-07-19 Cyxtera Cybersecurity, Inc. Establishing network tunnel in response to access request
US11310202B2 (en) 2019-03-13 2022-04-19 Vmware, Inc. Sharing of firewall rules among multiple workloads in a hypervisor
US11075857B2 (en) * 2019-06-13 2021-07-27 Cisco Technology, Inc. Peephole optimization of lightweight protocols at lower layers
US10778457B1 (en) 2019-06-18 2020-09-15 Vmware, Inc. Traffic replication in overlay networks spanning multiple sites
US11134078B2 (en) 2019-07-10 2021-09-28 Oracle International Corporation User-specific session timeouts
US11095480B2 (en) 2019-08-30 2021-08-17 Vmware, Inc. Traffic optimization using distributed edge services
US10855644B1 (en) * 2019-09-09 2020-12-01 Vmware, Inc. Address resolution protocol entry verification
US11070469B1 (en) * 2019-09-11 2021-07-20 Juniper Networks, Inc. Scaling border gateway protocol services
CN110557288B (zh) * 2019-09-16 2022-04-22 鹏城实验室 一种基于OpenStack的网络可视化编辑与自动化部署系统
US11201838B2 (en) * 2019-09-25 2021-12-14 Intel Corporation System, apparatus and method for increasing efficiency of link communications
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
US11258727B2 (en) * 2019-11-13 2022-02-22 Arista Networks, Inc. Shared routing tables for network devices
CN113098749A (zh) * 2020-01-08 2021-07-09 华为技术有限公司 报文发送方法、装置及存储介质
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
US11444883B2 (en) * 2020-01-17 2022-09-13 Vmware, Inc. Signature based management of packets in a software defined networking environment
US11283699B2 (en) 2020-01-17 2022-03-22 Vmware, Inc. Practical overlay network latency measurement in datacenter
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
US11575646B2 (en) * 2020-03-12 2023-02-07 Vmware, Inc. Domain name service (DNS) server cache table validation
US11374850B2 (en) 2020-04-06 2022-06-28 Vmware, Inc. Tunnel endpoint group records
US11368387B2 (en) 2020-04-06 2022-06-21 Vmware, Inc. Using router as service node through logical service plane
US11496437B2 (en) 2020-04-06 2022-11-08 Vmware, Inc. Selective ARP proxy
CN113709052B (zh) * 2020-05-21 2024-02-27 中移(苏州)软件技术有限公司 一种网络报文的处理方法、装置、电子设备和存储介质
US11374808B2 (en) 2020-05-29 2022-06-28 Corning Research & Development Corporation Automated logging of patching operations via mixed reality based labeling
US11295135B2 (en) * 2020-05-29 2022-04-05 Corning Research & Development Corporation Asset tracking of communication equipment via mixed reality based labeling
TWI742704B (zh) * 2020-06-01 2021-10-11 台眾電腦股份有限公司 資訊裝置之網路連線管理系統
CN115943615A (zh) 2020-06-24 2023-04-07 瞻博网络公司 使用第2层元数据来在第3层网络上扩展第2层网络
US11616755B2 (en) 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11303505B2 (en) * 2020-07-22 2022-04-12 Arista Networks, Inc. Aggregated control-plane tables
US11108728B1 (en) 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
US11196628B1 (en) 2020-07-29 2021-12-07 Vmware, Inc. Monitoring container clusters
US11570090B2 (en) 2020-07-29 2023-01-31 Vmware, Inc. Flow tracing operation in container cluster
US11558426B2 (en) 2020-07-29 2023-01-17 Vmware, Inc. Connection tracking for container cluster
US11902166B2 (en) * 2020-08-04 2024-02-13 Cisco Technology, Inc. Policy based routing in extranet networks
CN111988309B (zh) * 2020-08-18 2022-07-05 深圳市联软科技股份有限公司 一种icmp隐蔽隧道检测方法及系统
US11875172B2 (en) 2020-09-28 2024-01-16 VMware LLC Bare metal computer for booting copies of VM images on multiple computing devices using a smart NIC
US11606310B2 (en) 2020-09-28 2023-03-14 Vmware, Inc. Flow processing offload using virtual port identifiers
CN114553707B (zh) * 2020-11-26 2023-09-15 腾讯科技(深圳)有限公司 网络的拓扑信息的生成和网络故障的定界方法、装置
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11736436B2 (en) 2020-12-31 2023-08-22 Vmware, Inc. Identifying routes with indirect addressing in a datacenter
US11336533B1 (en) 2021-01-08 2022-05-17 Vmware, Inc. Network visualization of correlations between logical elements and associated physical elements
US11477048B2 (en) * 2021-01-15 2022-10-18 BlackBear (Taiwan) Industrial Networking Security Ltd. Communication method for one-way transmission based on VLAN ID and switch device using the same
US20220311735A1 (en) * 2021-03-25 2022-09-29 At&T Intellectual Property I, L.P. Carrier grade network address translation architecture and implementation
US11805101B2 (en) 2021-04-06 2023-10-31 Vmware, Inc. Secured suppression of address discovery messages
US11784922B2 (en) 2021-07-03 2023-10-10 Vmware, Inc. Scalable overlay multicast routing in multi-tier edge gateways
US11687210B2 (en) 2021-07-05 2023-06-27 Vmware, Inc. Criteria-based expansion of group nodes in a network topology visualization
US11652734B2 (en) 2021-07-06 2023-05-16 Cisco Technology, Inc. Multicasting within a mutual subnetwork
US11711278B2 (en) 2021-07-24 2023-07-25 Vmware, Inc. Visualization of flow trace operation across multiple sites
US11582145B1 (en) * 2021-09-07 2023-02-14 Cisco Technology, Inc. On-demand optical next-hop with optical provisioning segment routing (SR) label
US11706109B2 (en) 2021-09-17 2023-07-18 Vmware, Inc. Performance of traffic monitoring actions
CN114244763B (zh) * 2021-12-20 2023-11-17 中电福富信息科技有限公司 基于规则引擎的动态网络拓扑管理方法及其系统
CN114268491A (zh) * 2021-12-21 2022-04-01 南方电网科学研究院有限责任公司 一种基于蜜罐技术的网络安防系统
US11995024B2 (en) 2021-12-22 2024-05-28 VMware LLC State sharing between smart NICs
US11799761B2 (en) 2022-01-07 2023-10-24 Vmware, Inc. Scaling edge services with minimal disruption
US11962564B2 (en) 2022-02-15 2024-04-16 VMware LLC Anycast address for network address translation at edge
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC
US11928367B2 (en) 2022-06-21 2024-03-12 VMware LLC Logical memory addressing for network devices
US11928062B2 (en) 2022-06-21 2024-03-12 VMware LLC Accelerating data message classification with smart NICs

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030035371A1 (en) * 2001-07-31 2003-02-20 Coke Reed Means and apparatus for a scaleable congestion free switching system with intelligent control
EP1775888A2 (en) * 1999-07-09 2007-04-18 Malibu Networks Inc. TCP/IP packet-centric wireless transmission system architecture
EP2139178A1 (en) * 2008-06-27 2009-12-30 Alcatel, Lucent Method of determining a routing path
US7991859B1 (en) * 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5506838A (en) * 1994-12-29 1996-04-09 Emc Corporation Packet propagation and dynamic route discovery apparatus and techniques
US6363421B2 (en) * 1998-05-31 2002-03-26 Lucent Technologies, Inc. Method for computer internet remote management of a telecommunication network element
US7545752B2 (en) * 2000-11-10 2009-06-09 Packeteer, Inc. Application service level mediation and method of using the same
JP2006526359A (ja) * 2003-04-07 2006-11-16 シネマティクス インコーポレイテッド 汎用ルータにおけるスケーラブルな管理を提供するシステム及び方法
JP2005006235A (ja) * 2003-06-16 2005-01-06 Hitachi Ltd ネットワーク監視システム及び監視方法並びにプログラム
US20060101495A1 (en) * 2004-11-05 2006-05-11 William Yoshida Device evaluation using media access control emulator
US20070248085A1 (en) * 2005-11-12 2007-10-25 Cranite Systems Method and apparatus for managing hardware address resolution
US20070140235A1 (en) * 2005-12-21 2007-06-21 Nortel Networks Limited Network visible inter-logical router links
US8848544B2 (en) * 2007-11-08 2014-09-30 Cisco Technology, Inc. Event correlation using network data flow simulation over unmanaged network segments
US8259569B2 (en) * 2008-09-09 2012-09-04 Cisco Technology, Inc. Differentiated services for unicast and multicast frames in layer 2 topologies
US8271775B2 (en) * 2008-12-17 2012-09-18 Cisco Technology, Inc. Layer two encryption for data center interconnectivity
US8265075B2 (en) * 2009-03-16 2012-09-11 International Business Machines Corporation Method and apparatus for managing, configuring, and controlling an I/O virtualization device through a network switch
JP5423787B2 (ja) * 2009-03-26 2014-02-19 日本電気株式会社 経路設定サーバ、経路設定方法、及び経路設定プログラム
US8159936B2 (en) 2009-03-31 2012-04-17 Extreme Networks, Inc. Network convergence in response to a topology change
US7953865B1 (en) * 2009-12-28 2011-05-31 Amazon Technologies, Inc. Using virtual networking devices to manage routing communications between connected computer networks
US9282027B1 (en) * 2010-03-31 2016-03-08 Amazon Technologies, Inc. Managing use of alternative intermediate destination computing nodes for provided computer networks
US8683023B1 (en) * 2010-06-30 2014-03-25 Amazon Technologies, Inc. Managing communications involving external nodes of provided computer networks
US8391289B1 (en) * 2010-10-29 2013-03-05 Hewlett-Packard Development Company, L.P. Managing a forwarding table in a switch
JP5580766B2 (ja) * 2011-03-14 2014-08-27 株式会社エヌ・ティ・ティ・データ サーバ装置、パケット伝送システム、パケット伝送方法及びプログラム
US8842671B2 (en) * 2011-06-07 2014-09-23 Mellanox Technologies Ltd. Packet switching based on global identifier
EP2740242B8 (en) 2011-08-04 2019-01-23 Mido Holdings Ltd. System and method for implementing and managing virtual networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1775888A2 (en) * 1999-07-09 2007-04-18 Malibu Networks Inc. TCP/IP packet-centric wireless transmission system architecture
US20030035371A1 (en) * 2001-07-31 2003-02-20 Coke Reed Means and apparatus for a scaleable congestion free switching system with intelligent control
EP2139178A1 (en) * 2008-06-27 2009-12-30 Alcatel, Lucent Method of determining a routing path
US7991859B1 (en) * 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Rahman et al, "Network Modelling and Simulation Tools",2009/07/31. *

Also Published As

Publication number Publication date
EP2740242A1 (en) 2014-06-11
US9900224B2 (en) 2018-02-20
ES2713078T3 (es) 2019-05-17
EP2740242B8 (en) 2019-01-23
US11070447B2 (en) 2021-07-20
EP2740242A4 (en) 2015-06-24
US20140195666A1 (en) 2014-07-10
EP2740242B1 (en) 2018-12-05
WO2013020126A1 (en) 2013-02-07
US20180227195A1 (en) 2018-08-09
JP6080313B2 (ja) 2017-02-15
TW201322686A (zh) 2013-06-01
JP2014529926A (ja) 2014-11-13

Similar Documents

Publication Publication Date Title
TWI583151B (zh) 實施及管理虛擬網路的系統與方法
JP7004405B2 (ja) 仮想ネットワークにおける分散型フロー状態p2p設定のためのシステムおよび方法
US12021701B2 (en) Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment
CN112470436B (zh) 用于提供多云连通性的系统、方法、以及计算机可读介质
WO2020084335A1 (en) Using location indentifier separation protocol to implement a distributed user plane function architecture for 5g mobility
WO2017175033A1 (en) Method and apparatus for enabling non stop routing (nsr) in a packet network
US11343332B2 (en) Method for seamless migration of session authentication to a different stateful diameter authenticating peer
US20220021613A1 (en) Generating route distinguishers for virtual private network addresses based on physical hardware addresses
US11632268B2 (en) Generating route target values for virtual private network routes
US11451637B2 (en) Method for migration of session accounting to a different stateful accounting peer