TWI636679B - 虛擬區域網路配置系統與方法及其電腦程式產品 - Google Patents

虛擬區域網路配置系統與方法及其電腦程式產品 Download PDF

Info

Publication number
TWI636679B
TWI636679B TW106103968A TW106103968A TWI636679B TW I636679 B TWI636679 B TW I636679B TW 106103968 A TW106103968 A TW 106103968A TW 106103968 A TW106103968 A TW 106103968A TW I636679 B TWI636679 B TW I636679B
Authority
TW
Taiwan
Prior art keywords
virtual
local area
area network
virtual local
network
Prior art date
Application number
TW106103968A
Other languages
English (en)
Other versions
TW201830924A (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 財團法人工業技術研究院
Priority to TW106103968A priority Critical patent/TWI636679B/zh
Priority to CN201710191472.3A priority patent/CN108400922B/zh
Priority to US15/600,781 priority patent/US10615999B2/en
Publication of TW201830924A publication Critical patent/TW201830924A/zh
Application granted granted Critical
Publication of TWI636679B publication Critical patent/TWI636679B/zh

Links

Classifications

    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • 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/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • 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/12Discovery or management of network topologies
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5077Network service management, e.g. ensuring proper service fulfilment according to agreements wherein the managed service relates to simple transport services, i.e. providing only network infrastructure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Landscapes

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

Abstract

一種虛擬區域網路配置系統與方法及其電腦程式產品。虛擬區域網路配置系統包括運作虛擬機器的實體機器、乙太網路交換器及網路控制器。網路控制器會根據實體機器與虛擬機器佈署虛擬區域網路群組,建立對應虛擬區域網路群組的虛擬網路拓樸,並且將虛擬區域網路識別碼指派給虛擬區域網路群組,其中虛擬區域網路群組中至少有兩個虛擬區域網路群組具有相同的虛擬區域網路識別碼。

Description

虛擬區域網路配置系統與方法及其電腦程式產品
本揭露是有關於一種虛擬區域網路配置系統與方法及其電腦程式產品。
隨著電腦科技及網際網路的蓬勃發展,雲端運算(cloud computing)的應用也日趨普遍。現今的網路系統會藉由資料中心(data center)來提供雲端運算的相關服務。資料中心通常包括大量的實體機器(physical machine),例如伺服器(server)。每一台實體機器上運作有多台虛擬機器(virtual machine)。一般而言,一個大型資料中心通常可支援十萬台以上的實體機器以及百萬台以上的虛擬機器。另外,資料中心還包括大量的交換器(switch),例如乙太網路交換器(Ethernet switch),使得實體機器之間可形成區域網路來傳遞資料封包。
軟體定義網路(Software-Defined Network,簡稱SDN)機制是一個將習知基於硬體(hardware based)分散式控制、缺乏彈性(inflexible)且封閉的網路架構轉化為開放可程式化(open programmable)、集中式控制管理的網路架構。在基於開放流(OpenFlow)協定的SDN網路架構中,連接至所有的網路裝置的SDN網路控制器,其被設置為用以更新儲存於所有網路裝置(例如,OpenFlow交換器)的封包轉送規則(forwarding rule)(例如,封包轉送輸出埠或服務品質(Quality of Service, QoS)控制)等流控制資訊(flow control information),而管理所述SDN網路中所有連線的資料傳輸路徑,使得SDN網路中所有的網路裝置可以根據由SDN網路控制器所提供的規則處理所述的資料封包。由於SDN網路控制器可以控制SDN網路中所有連線的資料封包傳輸路徑,故網路吞吐量(network throughput)可因而高度地提昇。
由於資料中心網路系統日趨龐大,往往伴隨著大量的資料流量在區域網路內傳輸,且此些流量通常屬於不同的個人或企業租戶(tenant)。為了網路管理方便性以及資安上的需求,避免不同租戶的流量互相干擾,管理者通常會將區域網路劃分為多個虛擬區域網路(Virtual Local Area Network,簡稱VLAN),並且為每一個區域網路指派一個虛擬區域網路識別碼(VLAN ID)。如此一來,交換器便可根據資料封包中的虛擬區域網路識別碼控制資料封包的傳遞路徑。
然而,目前的網路系統中,不同的虛擬區域網路會被指派不同的虛擬區域網路識別碼。換句話說,一個虛擬區域網路識別碼在同一個網路系統中只會被指派給一個虛擬區域網路。根據IEEE 802.1Q的標準規範,虛擬區域網路識別碼的長度為12 位元(bits),其可標示出4094個不同的虛擬區域網路。但是,在實體網路規模大並且虛擬區域網路需求量大的網路系統中,受限於虛擬區域網路識別碼的長度而無法擴增更多虛擬區域網路。因此,如何突破虛擬區域網路識別碼的數目限制而在網路系統中擴增虛擬區域網路的數目為本領域技術人員所關心的議題。
本揭露提供一種虛擬區域網路配置系統與方法及電腦程式產品,其利用有限數目的虛擬區域網路識別碼來達成擴增虛擬區域網路數目的效果。
本揭露的一範例實施例提供一種虛擬區域網路配置系統,其包括運行多個虛擬機器的多個實體機器、多個乙太網路交換器以及網路控制器。所述乙太網路交換器藉由多個鏈路連接至所述實體機器。所述網路控制器連接至所述乙太網路交換器。網路控制器根據所述實體機器與所述虛擬機器的位置佈署多個虛擬區域網路群組。所述多個虛擬區域網路群組中的每一個虛擬區域網路群組,包括所述實體機器之中的至少一個實體機器與所述虛擬機器之中的至少一個虛擬機器。所述網路控制器建立對應所述虛擬區域網路群組的多個虛擬網路拓樸,並且將多個虛擬區域網路識別碼分別指派給所述虛擬區域網路群組。所述虛擬區域網路群組中包括一個虛擬區域網路群組與另一個虛擬區域網路群組,並且此虛擬區域網路群組與此另一個虛擬區域網路群組具有相同虛擬區域網路識別碼。
本揭露的另一範例實施例提供一種用於虛擬區域網路配置系統的虛擬區域網路配置方法。虛擬區域網路配置系統包括多個虛擬機器、多個實體機器及多個乙太網路交換器。所述乙太網路交換器藉由多個鏈路連接至所述實體機器。所述實體機器運行所述虛擬機器。所述虛擬區域網路配置方法包括根據所述實體機器與所述虛擬機器的位置佈署多個虛擬區域網路群組,且所述虛擬區域網路群組的每一個虛擬區域網路群組包括所述實體機器之中的至少一個實體機器與所述虛擬機器之中的至少一個虛擬機器。再者,所述虛擬區域網路配置方法也包括建立對應所述虛擬區域網路群組的多個虛擬網路拓樸,及將多個虛擬區域網路識別碼分別指派給所述虛擬區域網路群組。所述虛擬區域網路群組中包括一個虛擬區域網路群組與另一個虛擬區域網路群組,並且此虛擬區域網路群組與此另一個虛擬區域網路群組具有相同虛擬區域網路識別碼。
本揭露的另一範例實施例提供一種包括至少一程式指令的電腦程式產品。當電子裝置載入程式指令並執行後,可完成如上所述的方法。
基於上述,本揭露的虛擬區域網路配置系統與方法及其電腦程式產品藉由將同樣的虛擬區域網路識別碼重複指派給不同的虛擬區域網路群組,藉此可擴增虛擬區域網路配置系統可佈署的虛擬區域網路的數目。
為讓本揭露的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是根據本揭露的一範例實施例所繪示的虛擬區域網路配置系統的示意圖。
請參照圖1,虛擬區域網路配置系統10包括多個實體機器110(1)~110(N)、多個乙太網路交換器120(1)~120(M)及網路控制器130。例如,虛擬區域網路配置系統10為一個雲端運算與儲存中心。
在本範例實施例中,實體機器110(1)~110(N)可分別運作一個或多個虛擬機器VM(Virtual Machine),且各個實體機器110(1)~110(N)所運作之虛擬機器VM的數目可相同或相異。在另一範例實施例中,實體機器110(1)~110(N)還各自包括對應的虛擬交換器OVS(Open vSwitch),讓實體機器110(1)~110(N)所運作的虛擬機器VM可利用虛擬交換器OVS連接至乙太網路交換器120(1)~120(M)。在此,實體機器110(1)~110(N)中的虛擬交換器OVS可支援基本的OpenFlow協定。一般來說,虛擬交換器OVS可由開源軟體Open vSwitch實現。在此範例實施例中,在乙太網路交換器120(1)~120(M)與虛擬交換器OVS彼此連接所形成的網路中,乙太網路交換器120(1)~120(M)被設置於網路的核心(core),而虛擬交換器OVS被設置於網路的邊緣(edge)。
乙太網路交換器120(1)~120(M)具有多個埠(port),使得乙太網路交換器120(1)~120(M)可透過其上的埠與實體機器110(1)~110(N)(或實體機器110(1)~110(N)的虛擬交換器OVS)相連接。以乙太網路交換器120(3)為例,乙太網路交換器120(3)可經由多個埠來連接至實體機器110(1)~110(N)。值得一提的是,本揭露並不限制乙太網路交換器120(1)~120(M)的埠數,因此各個乙太網路交換器120(1)~120(M)所連接之實體機器的數目可相同或相異。
網路控制器130連接至虛擬區域網路配置系統10中的乙太網路交換器120(1)~120(M),用以管理虛擬區域網路配置系統10中的所有實體機器110(1)~110(N)、虛擬機器VM、乙太網路交換器120(1)~120(M)及虛擬交換器OVS。在本範例實施例中,網路控制器110為軟體定義網路架構的網路控制器。在本範例實施例中,網路控制器130還可包括資料庫(未繪示),用以儲存實體機器110(1)~110(N)、虛擬機器VM、乙太網路交換器120(1)~120(M)及虛擬交換器OVS相關的管理資訊。舉例而言,此些管理資訊包括實體機器110(1)~110(N)的網際網路協定位址(IP address)、實體機器110(1)~110(N)的實體機器識別碼、實體機器110(1)~110(N)的媒體存取控制位址(MAC address)、虛擬機器VM的網際網路協定位址、虛擬機器VM的虛擬機器識別碼、虛擬機器VM的媒體存取控制位址、乙太網路交換器120(1)~120(M)與虛擬交換器OVS的交換器識別碼,以及乙太網路交換器120(1)~120(M)與虛擬交換器OVS的媒體存取控制位址。值得一提的是,網路控制器130可以為具有處理電路、記憶體、網路元件(例如網路卡)及硬碟等硬體元件的獨立的電子裝置,但不以此為限。例如,網路控制器130也可以設置在其它的電子裝置中。
網路控制器130可根據路由的需求,利用傳送多個控制信號至乙太網路交換器120(1)~120(M)的方式(例如透過簡易網路管理協定(Simple Network Management Protocol, SNMP)或命令行介面(Command Line Interface, CLI)而更新乙太網路交換器120(1)~120(M)的相關設定,例如靜態轉發表(static forwarding table)。此外,網路控制器130還可以傳送比對-動作規則(match-action rule)至虛擬交換器OVS,以控制虛擬交換器OVS將封包傳送至對應埠。
在本範例實施例中,網路控制器130可根據實際需求及可用資源來決定各虛擬機器要配置在哪一個實體機器中,並且記錄各虛擬機器的配置位置(例如實體機器)。此外,網路控制器130還會根據虛擬機器VM與實體機器110(1)~110(N)來佈署多個虛擬區域網路群組。換句話說,各虛擬區域網路群組可包括至少一個虛擬機器(以下亦稱成員虛擬機器)與至少一個實體機器(以下亦稱成員實體機器)。進一步地,網路控制器130會建立對應各虛擬區域網路群組的虛擬網路拓樸(virtual topology),使得各虛擬區域網路群組中的虛擬機器可透過對應的虛擬網路拓樸彼此通訊。此外,網路控制器130還會分別指派虛擬區域網路識別碼給各虛擬區域網路群組。特別的是,網路控制器130會維護每個虛擬區域網路識別碼的可用虛擬網路拓樸(available virtual topology),並且根據可用虛擬網路拓樸來建立虛擬區域網路群組的虛擬網路拓樸。在此,本揭露所述之可用虛擬網路拓樸會包括至少一個乙太網路交換器、至少一個實體機器與至少一個鏈路(link),並且此至少一個乙太網路交換器與此至少一個實體機器之間藉由鏈路互相連接。
圖2是根據本揭露的一範例實施例所繪示的實體網路拓樸(physical topology)的示意圖。為簡化說明,圖2及以下的範例實施例將省略繪示虛擬區域網路配置系統中的網路控制器與虛擬機器。
請參照圖2,虛擬區域網路配置系統20包括實體機器210(1)~210(8)及乙太網路交換器220(1)~220(6)。實體機器210(1)~210(8)、乙太網路交換器220(1)~220(6)與其之間的鏈路形成實體網路拓樸PT_20。在實體網路拓樸PT_20中,乙太網路交換器220(1)及乙太網路交換器220(2)各別與乙太網路交換器220(3)~220(6)互相連接。乙太網路交換器220(3)及乙太網路交換器220(4)又各別與實體機器210(1)~210(4)互相連接。乙太網路交換器220(5)及乙太網路交換器220(6)又各別與實體機器210(5)~210(8)互相連接。
圖3A~3B是根據本揭露的一範例實施例所繪示的虛擬網路拓樸與可用虛擬網路拓樸的示意圖。
請同時參照圖2與圖3A,例如,虛擬區域網路配置系統20的網路控制器130在實體網路拓樸PT_20中佈署了虛擬區域網路群組VG_1,其中虛擬區域網路群組VG_1的成員實體機器包括實體機器210(3)、實體機器210(4)與實體機器210(7),且成員虛擬機器包括配置在實體機器210(3)、實體機器210(4)與實體機器210(7)中的多個虛擬機器(未繪示)。在此例子中,網路控制器130會建立對應虛擬區域網路群組VG_1的虛擬網路拓樸,使得虛擬區域網路群組VG_1中的成員實體機器與成員虛擬機器可以彼此連接。
例如,在虛擬區域網路識別碼VLAN_1尚未被指派給任何虛擬區域網路群組,並且網路控制器130欲將虛擬區域網路識別碼VLAN_1指派給虛擬區域網路群組VG_1的例子中,對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸會相同於圖2的實體網路拓樸PT_20,並且網路控制器130會根據對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸建立虛擬區域網路群組VG_1對應的虛擬網路拓樸VT_1,並且將虛擬區域網路識別碼VLAN_1指派給虛擬區域網路群組VG_1。如圖3A所示,所建立的虛擬網路拓樸VT_1使得虛擬區域網路群組VG_1中的成員實體機器與成員虛擬機器可藉由乙太網路交換器220(1)、乙太網路交換器220(4)、乙太網路交換器220(6)彼此連接。
爾後,網路控制器130會根據已建立的虛擬網路拓樸VT_1來更新對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸。請參照圖3B,網路控制器130會刪除原有的可用虛擬網路拓樸(相同於實體網路拓樸PT_20)中已使用於虛擬網路拓樸VT_1中的乙太網路交換器來更新對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸。如圖3B所示,刪除已使用於虛擬網路拓樸VT_1中的乙太網路交換器220(1)、乙太網路交換器220(4)、乙太網路交換器220(6)後,對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸會被更新為可用虛擬網路拓樸AVT_1。可用虛擬網路拓樸AVT_1僅可藉由乙太網路交換器220(2)、乙太網路交換器220(3)、乙太網路交換器220(5)來連接實體機器210(1)~210(8)。進一步地,網路控制器130會記錄更新後的可用虛擬網路拓樸AVT_1。後續,當網路控制器130欲再次指派虛擬區域網路識別碼VLAN_1給另一個虛擬區域網路群組時,便可根據所記錄的可用虛擬網路拓樸AVT_1來建立此另一個虛擬區域網路群組的虛擬網路拓樸。依此類推,網路控制器130會以上述的方式來更新對應每一個虛擬區域網路識別碼的可用虛擬網路拓樸。也就是說,每當要建立虛擬網路拓樸時,網路控制器130可選取欲指派給虛擬區域網路群組的虛擬區域網路識別碼,並且根據對應此虛擬區域網路識別碼的可用虛擬網路拓樸來建立此虛擬區域網路群組的虛擬網路拓樸。如此一來,虛擬區域網路識別碼便可重複地被指派給不同的虛擬區域網路群組。
值得一提的是,本揭露的網路控制器130可以批次配置多個虛擬區域網路群組的虛擬網路拓樸。在此情況下,網路控制器130可以先根據此些虛擬區域網路群組中的各虛擬區域網路群組的成員實體機器的數目來排序此些虛擬區域網路群組。例如,將此些虛擬區域網路群組按照其成員實體機器的數目由多到少的順序排序。爾後,網路控制器130便可依序選取各虛擬區域網路群組來建立對應的虛擬網路拓樸。以圖3A中的虛擬區域網路群組VG_1與虛擬區域網路群組VG_2為例,虛擬區域網路群組VG_1的成員實體機器(亦即實體機器210(3)、實體機器210(4)、實體機器210(7))的數目為3,而虛擬區域網路群組VG_2的成員實體機器(亦即實體機器210(5)、實體機器210(6))的數目為2。因此,網路控制器130會先選取虛擬區域網路群組VG_1以建立對應的虛擬網路拓樸VT_1,之後再選取虛擬區域網路群組VG_2以建立對應的虛擬網路拓樸VT_2。然而,網路控制器130也可將此些虛擬區域網路群組按照成員實體機器的數目由少到多的順序排序,本揭露並不限制選取虛擬區域網路群組的順序。
另外,網路控制器130還可根據各自對應虛擬區域網路識別碼的可用虛擬網路拓樸的大小來決定欲指派給虛擬區域網路群組的虛擬區域網路識別碼。例如,當一個虛擬區域網路識別碼已被指派給至少一個虛擬區域網路群組,對應此虛擬區域網路識別碼的可用虛擬網路拓樸僅會包括未被使用於此至少一個虛擬區域網路群組的虛擬網路拓樸的乙太網路交換器。在此,可用虛擬網路拓樸的大小是指可用虛擬網路拓樸中乙太網路交換器的數目。基此,網路控制器130可先根據對應各虛擬區域網路識別碼的可用虛擬網路拓樸的大小來排序虛擬區域網路識別碼。例如,網路控制器130將虛擬區域網路識別碼按照可用虛擬網路拓樸的大小由小到大的順序排序。爾後,網路控制器130可根據排序結果來選取欲指派給虛擬區域網路群組的虛擬區域網路識別碼。以圖3B中的可用虛擬網路拓樸AVT_1與可用虛擬網路拓樸AVT_2為例,對應虛擬區域網路識別碼VLAN_1的可用虛擬網路拓樸AVT_1的大小為3,而對應虛擬區域網路識別碼VLAN_2的可用虛擬網路拓樸AVT_2的大小為5。因此,網路控制器130會先選取虛擬區域網路識別碼VLAN_1作為欲指派給虛擬區域網路群組的虛擬區域網路識別碼。然而,網路控制器也可以將虛擬區域網路識別碼按照可用虛擬網路拓樸的大小由大到小的順序排序,本揭露並不限制選取虛擬區域網路識別碼的順序。
在以下圖4A~4C及圖5A~5B的範例實施例中,是假設網路控制器佈署了第一虛擬區域網路群組,並且欲指派第一虛擬區域網路識別碼給第一虛擬區域網路群組。網路控制器會找出對應第一虛擬區域網路識別碼的第一可用虛擬網路拓樸。進而,網路控制器根據第一可用虛擬網路拓樸建立對應第一虛擬區域網路群組的第一虛擬網路拓樸。
圖4A~4C是根據本揭露的一範例實施例所繪示的建立虛擬網路拓樸的示意圖。
圖4A~4C的範例實施例是假設網路控制器130佈署了第一虛擬區域網路群組(即,虛擬區域網路群組VG_Y),並且欲指派第一虛擬區域網路識別碼(即,虛擬區域網路識別碼VLAN_Y)給第一虛擬區域網路群組。因此,網路控制器130會找出對應第一虛擬區域網路識別碼的第一可用虛擬網路拓樸(即,可用虛擬網路拓樸AVT_Y),進而根據第一可用虛擬網路拓樸建立對應第一虛擬區域網路群組的第一虛擬網路拓樸。
請同時參照圖2與圖4A。虛擬區域網路群組VG_Y的成員實體機器包括實體機器210(3)、實體機器210(5)、實體機器210(8)。網路控制器130決定欲指派的虛擬區域網路識別碼的方式已於前述的範例實施例中說明,在此不再贅述。詳細來說,網路控制器130會從所記錄的資料中找出對應虛擬區域網路識別碼VLAN_Y的可用虛擬網路拓樸AVT_Y。如圖4A所示,實體機器210(1)~210(8)、乙太網路交換器220(1)~220(6)與多個鏈路形成可用虛擬網路拓樸AVT_Y。例如,乙太網路交換器220(3)藉由4個鏈路分別連接至實體機器210(1)~210(4)。
在本範例實施例中,網路控制器130還會為每一個鏈路記錄一個權重值(weighted value)。各鏈路的權重值可以被記錄在網路控制器或其他電子裝置的資料庫中。詳細來說,網路控制器130會計算每一個鏈路的虛擬區域網路群組數,並且將所計算的虛擬區域網路群組數設定為對應鏈路的權重值。在此,各鏈路的虛擬區域網路群組數表示使用此鏈路的虛擬區域網路群組的數目。換句話說,各鏈路的權重值表示使用此鏈路的虛擬區域網路群組(或虛擬網路拓樸)的數目。在本範例實施例中,使用同一個鏈路的虛擬區域網路群組會各自被指派不同的虛擬區域網路識別碼。例如,如圖4A所示,連接乙太網路交換器220(5)與實體機器210(5)的鏈路的權重值為2,表示已有2個虛擬區域網路群組(或虛擬網路拓樸)使用此鏈路。
在本範例實施例中,例如,網路控制器130根據鏈路的權重值使用廣度優先搜尋(Breath-First-Search,簡稱BFS)建立虛擬區域網路群組VG_Y的虛擬網路拓樸VT_Y。詳細來說,網路控制器使用廣度優先搜尋演算法在可用虛擬網路拓樸AVT_Y中搜尋虛擬區域網路群組VG_Y的成員實體機器,並且根據鏈路的權重值決定拜訪節點的順序。在本範例實施例中,網路控制器130會從虛擬區域網路群組的成員實體機器中決定一個起始節點(root node)。例如,網路控制器130從虛擬區域網路群組VG_Y中選擇包括最多成員虛擬機器的成員實體機器作為起始節點。接著,網路控制器130會從起始節點開始根據各鏈路的權重值由小到大依序拜訪可用虛擬網路拓樸AVT_Y所連接的各個節點(node)。並且,網路控制器130會判斷所拜訪的節點是否為虛擬區域網路群組VG_Y的成員實體機器。倘若所拜訪的節點即為虛擬區域網路群組VG_Y的成員實體機器,網路控制器130會根據拜訪此節點所經過的路徑來建立虛擬區域網路群組VG_Y的虛擬網路拓樸VT_Y。
舉例而言,如圖4A所示,假設網路控制器130決定實體機器210(5)作為起始節點。根據可用虛擬網路拓樸AVT_Y,連接實體機器210(5)的兩個鏈路分別是實體機器210(5)與乙太網路交換器220(5)之間的鏈路(權重值為2),以及實體機器210(5)與乙太網路交換器220(6)之間的鏈路(權重值為3)。根據上述兩個鏈路的權重值,網路控制器130會優先拜訪乙太網路交換器220(5),再拜訪乙太網路交換器220(6)。接著,由於網路控制器130會判斷出乙太網路交換器220(5)與乙太網路交換器220(6)都不是虛擬區域網路群組VG_Y的成員實體機器,因此會繼續拜訪與乙太網路交換器220(5)連接的節點。相同地,網路控制器130會根據連接乙太網路交換器220(5)的鏈路的權重值來決定拜訪的順序。例如,網路控制器130會優先拜訪權重值為1的鏈路所連接的節點(亦即實體機器210(6)、實體機器210(8)、乙太網路交換器220(1))。接著,網路控制器130會判斷出實體機器210(8)是虛擬區域網路群組VG_Y的成員實體機器,因此網路控制器130會記錄實體機器210(5)經由乙太網路交換器220(5)到達實體機器210(8)的路徑以作為建立虛擬網路拓樸VT_Y的依據。
依此類推,網路控制器130會依序拜訪實體機器210(7)與乙太網路交換器220(2),並且判斷出兩者都不是虛擬區域網路群組VG_Y的成員實體機器。此時,乙太網路交換器220(5)所連接的節點都已拜訪完成,但尚未搜尋到虛擬區域網路群組VG_Y的所有成員實體機器。因此,網路控制器130會繼續拜訪乙太網路交換器220(6)所連接的節點,並且判斷出此些節點都已拜訪完成。接著,網路控制器130會根據拜訪順序優先選擇拜訪乙太網路交換器220(1)連接的節點。網路控制器130會依序拜訪乙太網路交換器220(1)所連接的乙太網路交換器220(4)與乙太網路交換器220(3),並且判斷出兩者都不是虛擬區域網路群組VG_Y的成員實體機器。網路控制器130會繼續拜訪與乙太網路交換器220(4)連接的節點。網路控制器130會優先選擇拜訪權重值為3的鏈路所連接的節點(亦即實體機器210(1)、實體機器210(3)及實體機器210(4))。在本範例實施例中,網路控制器130會先拜訪實體機器210(4),並且判斷出實體機器210(4)不是虛擬區域網路群組VG_Y的成員實體機器。接著,網路控制器130會繼續拜訪實體機器210(3),並且發現實體機器210(3)即為虛擬區域網路群組VG_Y的成員實體機器,因此網路控制器130會記錄實體機器210(5)經由乙太網路交換器220(5)、乙太網路交換器220(1)、乙太網路交換器220(4)到達實體機器210(3)的路徑以作為建立虛擬網路拓樸VT_Y的依據。此時,網路控制器130會判斷出虛擬區域網路群組VG_Y的成員實體機器(亦即實體機器210(3)、實體機器210(5)、實體機器210(8))皆已被搜尋到,因此網路控制器130會停止搜尋。必須了解的是,儘管上述範例是以廣度優先搜尋方式來進行搜尋,但本揭露不限於此,在另一範例實施例中,亦可採用其他適合的搜尋機制。
請參照圖4B,網路控制器130會根據所記錄的路徑來建立虛擬區域網路群組VG_Y的虛擬網路拓樸VT_Y,並且將虛擬區域網路識別碼VLAN_Y指派給虛擬區域網路群組VG_Y。此外,網路控制器130會更新虛擬區域網路群組VG_Y(或虛擬網路拓樸VT_Y)所使用的鏈路的權重值。在本範例實施例中,網路控制器130會將虛擬區域網路群組VG_Y(或虛擬網路拓樸VT_Y)所使用的鏈路的權重值分別加1,並記錄更新後的權重值。
請參照圖4C,網路控制器130還會根據所建立的虛擬網路拓樸VT_Y來更新對應虛擬區域網路識別碼VLAN_Y的可用虛擬網路拓樸AVT_Y。更新可用虛擬網路拓樸的方式已於前述的範例實施例中說明,在此不再贅述。
如前述的範例實施例中所提及,網路控制器130可根據對應的可用虛擬網路拓樸的大小來排序虛擬區域網路識別碼,以根據排序結果依序選擇欲指派的虛擬區域網路識別碼,並以對應的可用虛擬網路拓樸來建立虛擬區域網路群組的虛擬網路拓樸。倘若無法根據對應所選擇的虛擬區域網路識別碼的可用虛擬網路拓樸來建立虛擬區域網路群組的虛擬網路拓樸,網路控制器130會根據排序結果依序選擇下一個虛擬區域網路識別碼以建立虛擬區域網路群組的虛擬網路拓樸。並且,倘若無法根據對應任一個虛擬區域網路識別碼的可用虛擬網路拓樸來建立虛擬區域網路群組的虛擬網路拓樸,網路控制器130會重新配置(resettle)虛擬區域網路群組中的虛擬機器。
圖5A~5B是根據本揭露的一範例實施例所繪示的重置虛擬機器的示意圖。
請同時參照圖2與圖5A。虛擬區域網路配置系統20對應實體網路拓樸PT_20。虛擬區域網路群組VG_Z的成員實體機器包括實體機器210(2)、實體機器210(4)與實體機器210(6)。本範例實施例是假設網路控制器130無法根據任一個虛擬區域網路識別碼的可用虛擬網路拓樸建立第一虛擬區域網路群組(即,虛擬區域網路群組VG_Z)的虛擬網路拓樸。基此,網路控制器130會判斷虛擬區域網路群組VG_Z的成員虛擬機器中是否存在獨立運行在任一成員實體機器中的成員虛擬機器。例如,虛擬機器VM(1)(以下可參考為第一虛擬機器)為獨立運行在實體機器210(6)(以下可參考為第一實體機器)中的成員虛擬機器。接著,網路控制器130會將虛擬機器VM(1)重新設置在不同於實體機器210(6)的另一個實體機器。在本範例實施例中,網路控制器130會選擇距離至少一個其他成員實體機器較近的實體機器來重置虛擬機器VM(1)。詳細來說,網路控制器130可以根據在實體網路拓樸PG_20中連接兩個實體機器的最短路徑長度來選擇要重新設置虛擬機器VM(1)的實體機器。例如,實體機器210(6)與實體機器210(2)(以下可參考為第三實體機器)之間的最短路徑為4個鏈路。實體機器210(3)(以下可參考為第二實體機器)與實體機器210(2)之間的最短路徑為2個鏈路,且實體機器210(3)與實體機器210(4)之間的最短路徑為2個鏈路。網路控制器130判斷出實體機器210(3)與實體機器210(2)之間的最短路徑小於實體機器210(6)與實體機器210(2)之間的最短路徑。網路控制器130因此判斷實體機器210(3)為距離其他成員實體機器較近的實體機器,進而將虛擬機器VM(1)重新配置在實體機器210(3)中。
請參考圖5B,在將虛擬機器VM(1)重置在實體機器210(3)之後,網路控制器130會將虛擬區域網路群組VG_Z更新為虛擬區域網路群組VG_Z’。虛擬區域網路群組VG_Z’的成員實體機器包括實體機器210(2)、實體機器210(3)與實體機器210(4)。之後,網路控制器130會根據前述建立虛擬網路拓樸的方式來建立虛擬區域網路群組VG_Z’對應的虛擬網路拓樸。
在本範例實施例中,倘若要在現有的某一個虛擬區域網路群組中新增虛擬機器,網路控制器130會優先將欲新增的虛擬機器配置在此虛擬區域網路群組的成員實體機器中。但實際上,可能因為資源不足等因素而無法在現有的成員實體機器中新增虛擬機器。倘若無法在此虛擬區域網路群組的任一成員實體機器中配置欲新增的虛擬機器,網路控制器130會將欲新增的虛擬機器配置在此虛擬區域網路群組的成員實體機器以外的實體機器中,再將此實體機器設定為此虛擬區域網路群組的成員實體機器。
圖6A~6B是根據本揭露的一範例實施例所繪示的在虛擬區域網路群組中新增虛擬機器的示意圖。
請同時參照圖2及圖6A~6B。虛擬區域網路群組VG_i(以下可參考為第二虛擬區域網路群組)的成員實體機器包括實體機器210(5)與實體機器210(8)。虛擬區域網路群組VG_i的虛擬網路拓樸VT_i(以下可參考為第二可用虛擬網路拓樸)是藉由乙太網路交換器220(5)連接實體機器210(5)與實體機器210(8)。虛擬區域網路群組VG_i被指派了虛擬區域網路識別碼VLAN_Q,並且對應虛擬區域網路識別碼VLAN_Q的可用虛擬網路拓樸AVT_Q是藉由乙太網路交換器220(2)、乙太網路交換器220(3)與乙太網路交換器220(6)連接實體機器210(1)~210(8)。本範例實施例是假設網路控制器130要在虛擬區域網路群組VG_i中新增虛擬機器VM(2)(以下可參考為第二虛擬機器),但是無法使用現有的成員實體機器(亦即實體機器210(5)與實體機器210(8))來配置虛擬機器VM(2)。基此,網路控制器130將虛擬機器VM(2)配置在實體機器210(3)(以下可參考為第四實體機器)中,並且將虛擬區域網路群組VG_i更新為虛擬區域網路群組VG_i’。因此,虛擬區域網路群組VG_i’的成員實體機器包括實體機器210(3)、實體機器210(5)與實體機器210(8)。此第四實體機器可以是具有足夠資源以新增虛擬機器的任一實體機器,本揭露並不特別限制選取第四實體機器的方式。
爾後,網路控制器130會再次建立虛擬區域網路群組VG_i’的虛擬網路拓樸。詳細來說,網路控制器會先更新對應虛擬區域網路識別碼VLAN_Q的可用虛擬網路拓樸AVT_Q。在本範例實施例中,網路控制器130是藉由將虛擬網路拓樸VT_i加入可用虛擬網路拓樸AVT_Q來更新對應虛擬區域網路識別碼VLAN_Q的可用虛擬網路拓樸AVT_Q。如圖6B所示,可用虛擬網路拓樸AVT_Q被更新為可用虛擬網路拓樸AVT_Q’。網路控制器會再根據可用虛擬網路拓樸AVT_Q’建立虛擬區域網路群組VG_i’的虛擬網路拓樸VT_i’。如圖6A所示,虛擬區域網路群組VG_i’的虛擬網路拓樸VT_i’可藉由乙太網路交換器220(2)、乙太網路交換器220(3)與乙太網路交換器220(5)連接所有成員實體機器(亦即實體機器210(3)、實體機器210(5)與實體機器210(8))。如圖6B所示,網路控制器130會再根據所建立的虛擬網路拓樸VT_i’將對應虛擬區域網路識別碼VLAN_Q的可用虛擬網路拓樸AVT_Q’更新為可用虛擬網路拓樸AVT_Q’’。上述內容中,建立虛擬網路拓樸的方式與更新可用虛擬網路拓樸的方式皆已於前述的範例實施例中說明,在此不再贅述。
值得一提的是,倘若網路控制器無法根據對應虛擬區域網路識別碼VLAN_Q的可用虛擬網路拓樸AVT_Q’建立虛擬區域網路群組VG_i’的虛擬網路拓樸,網路控制器130會選擇另一個虛擬區域網路識別碼對應的可用虛擬網路拓樸來建立虛擬區域網路群組VG_i’的虛擬網路拓樸。
圖7A~7B是根據本揭露一範例實施例所繪示的移除虛擬機器時更新虛擬網路拓樸的示意圖。
請同時參照圖2及圖7A~7B。虛擬區域網路群組VG_j(亦稱第三虛擬區域網路群組)的成員實體機器包括實體機器210(3)、實體機器210(5)與實體機器210(8)。虛擬區域網路群組VG_j的虛擬網路拓樸VT_j(以下可參考為第三虛擬網路拓樸)是藉由乙太網路交換器220(1)、乙太網路交換器220(4)與乙太網路交換器220(5)連接所有的成員實體機器(亦即實體機器210(3)、實體機器210(5)與實體機器210(8))。虛擬區域網路群組VG_j被指派了虛擬區域網路識別碼VLAN_S,並且對應虛擬區域網路識別碼VLAN_S的可用虛擬網路拓樸AVT_S是藉由乙太網路交換器220(2)、乙太網路交換器220(3)與乙太網路交換器220(6)連接實體機器210(1)~210(8)。
本範例實施例是假設網路控制器欲移除配置在實體機器210(3)(以下可參考為第五實體機器)中的虛擬機器VM(3)(以下可參考為欲移除虛擬機器)。網路控制器會先判斷虛擬機器VM(3)是否為虛擬區域網路群組VG_j中獨立運行在實體機器210(3)中的成員虛擬機器。倘若虛擬機器VM(3)不是獨立運行在實體機器210(3)中的成員虛擬機器,網路控制器130會從虛擬區域網路群組VG_j的成員虛擬機器清單中移除虛擬機器VM(3),並且根據實際需求決定是否需更新虛擬交換器中的設定,例如轉送封包規則的設定。另一方面,倘若虛擬機器VM(3)為獨立運行在實體機器210(3)中的成員虛擬機器,網路控制器130會以實體機器210(3)為起始節點,根據虛擬網路拓樸VT_j單向搜尋具有分支(branch)路徑的節點。例如,網路控制器130從實體機器210(3)開始,依循虛擬網路拓樸VT_j中的路徑Path(1)先拜訪乙太網路交換器220(4)。由於乙太網路交換器220(4)不為具有分支路徑的節點(亦即僅連接至乙太網路交換器220(1)),網路控制器130會依循路徑Path(1)繼續拜訪乙太網路交換器220(1)。由於乙太網路交換220(1)也不為具有分支路徑的節點(亦即僅連接至乙太網路交換器220(5)),網路控制器130會依循路徑Path(1)繼續拜訪乙太網路交換器220(5)。此時,網路控制器130判斷出乙太網路交換器220(5)(以下可參考為第一乙太網路交換器)為具有分支路徑的節點(亦即連接至實體機器210(5)與實體機器210(8))而停止搜尋。
進而,網路控制器130會根據實體機器210(3)至乙太網路交換器220(5)之間的路徑Path(1)來更新對應虛擬區域網路識別碼VLAN_S的可用虛擬網路拓樸。如圖7B所示,網路控制器130會將路徑Path(1)上不具有分支路徑的乙太網路交換器220(1)與乙太網路交換器220(4)加入可用虛擬網路拓樸AVT_S中。因此,可用虛擬網路拓樸AVT_S被更新為可用虛擬網路拓樸AVT_S’。此外,網路控制器130會從虛擬區域網路群組VG_j中移除實體機器210(3)與虛擬機器VM(3)。如圖7A所示,虛擬區域網路群組VG_j被更新為虛擬區域網路群組VG_j’。並且,網路控制器130會從虛擬網路拓樸VT_j中移除路徑Path(1)(亦即移除乙太網路交換器220(1)、乙太網路交換器220(4)與相關的鏈路)。因此,虛擬網路拓樸VT_j被更新為虛擬網路拓樸VT_j’。在本範例實施例中,網路控制器130還會更新路徑Path(1)上相關的鏈路的權重值。例如,將實體機器210(3)與乙太網路交換器220(4)之間的鏈路的權重值、乙太網路交換器220(4)與乙太網路交換器220(1)之間的鏈路的權重值以及乙太網路交換器220(1)與乙太網路交換器220(5)之間的鏈路的權重值分別減1,並記錄更新後的權重值。
在另一範例實施例中,為使虛擬區域網路配置系統中所佈署的虛擬區域網路可連接外部網路,本揭露所提的虛擬區域網路配置系統還可包括多個路由器(router)。路由器可以連接於乙太網路交換器。倘若某個虛擬區域網路群組所形成的虛擬區域網路需連接外部網路,網路控制器會將適當的路由器加入此虛擬區域網路群組,並且將其視為成員實體機器並建立對應的虛擬網路拓樸。
圖8是根據本揭露的一範例實施例所繪示的虛擬交換器轉送封包的示意圖。
請參照圖8。虛擬區域網路配置系統80中包括實體機器810(1)~810(8),並且分別配置了虛擬交換器VS-1~VS-8。虛擬區域網路配置系統80中佈署了3個虛擬區域網路群組,分別對應虛擬網路拓樸VT1~VT3。3個虛擬區域網路群組的虛擬區域網路識別碼皆為VLAN_1。本揭露中的網路控制器130會根據所佈署的虛擬區域網路群組及對應的虛擬網路拓樸在虛擬交換器中設定轉送封包規則,使虛擬交換器可根據轉送封包規則來傳送封包。換句話說,當虛擬交換器接收到封包時,虛擬交換器會根據轉送封包規則比對此封包符合的條件以執行對應動作。倘若封包來自於實體機器外部,虛擬交換器會根據封包的來源埠以及虛擬區域網路標籤(VLAN tag)所符合的條件來決定要用來傳送封包的埠。倘若封包來自於實體機器內部,虛擬交換器會根據封包來源埠來決定要用來傳送封包的埠以及要在封包中加入的虛擬區域網路標籤。上述的虛擬區域網路標籤是對應虛擬區域網路識別碼,用來標示封包所屬的虛擬區域網路的虛擬區域網路識別碼。
以虛擬交換器VS-3為例,倘若封包來自於實體機器810(3)內部,並且封包的來源埠為埠P3(亦即來自於虛擬機器V11),虛擬交換器VS-3會在封包中加入對應的虛擬區域網路標籤VLAN_1,並且將此封包從埠P1經由虛擬網路拓樸VT1傳送至對應的虛擬區域網路中。類似的,倘若封包的來源埠為埠P4(亦即來自於虛擬機器V21),虛擬交換器VS-3會在封包中加入虛擬區域網路標籤VLAN_1,並且將此封包從埠P2經由虛擬網路拓樸VT2傳送至對應的虛擬區域網路中。另一方面,倘若封包來自於實體機器810(3)外部,並且封包的來源埠為埠P1,而且封包的虛擬區域網路標籤為VLAN_1,虛擬交換器VS-3會從埠P3將封包傳送至虛擬機器V11。類似的,倘若封包的來源埠為埠P2,而且封包的虛擬區域網路標籤為VLAN_1,虛擬交換器VS-3會從埠P4將封包傳送至虛擬機器V21。
圖9是根據本揭露的一範例實施例所繪示的虛擬區域網路配置方法的流程圖。
請參照圖9,在步驟S901中,網路控制器130根據多個實體機器與多個虛擬機器佈署多個虛擬區域網路群組。其中,每一個虛擬區域網路群組會包括上述多個實體機器中的多個實體機器與上述多個虛擬機器中的多個虛擬機器。
在步驟S903中,網路控制器130建立對應此些虛擬區域網路群組的虛擬網路拓樸。
在步驟S905中,網路控制器130將虛擬區域網路識別碼指派給此些虛擬區域網路群組,並且此些虛擬區域網路群組中包括一個虛擬區域網路群組與另一個虛擬區域網路群組具有相同的虛擬區域網路識別碼。
圖10是根據本揭露的圖9之步驟S903所繪示的虛擬區域網路配置方法中建立虛擬網路拓樸的詳細步驟的流程圖。
請參照圖10,在步驟S1001中,網路控制器會選取虛擬區域網路群組。例如,網路控制器130可以根據每個虛擬區域網路群組中的實體機器的數目來決定要選取的虛擬區域網路群組。
在步驟S1003中,網路控制器130會選取虛擬區域網路識別碼。例如,網路控制器130可以根據對應每個虛擬區域網路識別碼的可用虛擬網路拓樸的大小來決定要選取的虛擬區域網路識別碼。上述的可用虛擬網路拓樸的大小可以是可用虛擬網路拓樸中乙太網路交換器的數目。
在步驟S1005中,網路控制器130會判斷對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸是否能夠連接所選取的虛擬區域網路群組中的所有實體機器。例如,網路控制器130可使用廣度優先搜尋演算法在可用虛擬網路拓樸中搜尋所選取的虛擬區域網路群組中的實體機器。倘若拜訪完對應的可用虛擬網路拓樸的所有節點後,網路控制器130未能找到所選取的虛擬區域網路群組中的所有實體機器,表示對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸無法連接所選取的虛擬區域網路群組中的所有實體機器。另一方面,倘若網路控制器130可在對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸找到所選取的虛擬區域網路群組中的所有實體機器,表示對應的可用虛擬網路拓樸可以連接所選取的虛擬區域網路群組中的所有實體機器。此部分已於前述的範例實施例中說明,在此不再贅述。
倘若對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸無法連接所選取的虛擬區域網路群組中的所有實體機器,網路控制器130會再次執行步驟S1003。
倘若對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸能夠連接所選取的虛擬區域網路群組中的所有實體機器,在步驟S1007中,網路控制器130會根據對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸來建立所選取的虛擬區域網路群組的虛擬網路拓樸。
在步驟S1009中,網路控制器130會根據所建立的虛擬網路拓樸來更新對應所選取的虛擬區域網路識別碼的可用虛擬網路拓樸。
在本揭露中,還提出一種電腦程式產品,用以執行上述虛擬區域網路配置方法的各個步驟。此電腦程式產品包括多個程式指令,且虛擬區域網路配置系統中的網路控制器130載入並執行此些程式指令之後,可完成上述的虛擬區域網路配置方法以及實現虛擬區域網路系統的功能。
綜上所述,本揭露可藉由對應虛擬區域網路識別碼的可用虛擬網路拓樸來建立虛擬區域網路群組的虛擬網路拓樸,使得不同的虛擬區域網路群組可被指派相同的虛擬區域網路識別碼。如此一來,便可突破在目前的通訊標準中虛擬區域網路識別碼的長度限制,而在網路系統中擴增更多數目的虛擬區域網路。再者,本揭露還可根據鏈路的權重值而優先選擇較少虛擬區域網路群組使用的鏈路來建立虛擬網路拓樸,藉此可達到負載平衡,進而提升網路整體效能。
雖然本揭露已以實施例揭露如上,然其並非用以限定本揭露,任何所屬技術領域中具有通常知識者,在不脫離本揭露的精神和範圍內,當可作些許的更動與潤飾,故本揭露的保護範圍當視後附的申請專利範圍所界定者為準。
10、20、80:虛擬區域網路配置系統 110(1)~110(N)、210(1)~210(8)、810(1)~810(8):實體機器 120(1)~120(M)、220(1)~220(6)、820(1)~820(6):乙太網路交換器 130:網路控制器 VM、VM(1)、VM(2)、VM(3)、V11~V14、V21~V23、V31~V34:虛擬機器 OVS、VS-1~VS-8:虛擬交換器 PT_20:實體網路拓樸 VG_1~VG_x、VG_Y、VG_Z、VG_Z’、VG_i、VG_i’、VG_j、VG_j’:虛擬區域網路群組 VT_1~VT_x、VT_Y、VT_i、VT_i’、VT_j、VT_j’、VT1~VT3:虛擬網路拓樸 AVT_1~AVT_4094、AVT_Y、AVT_Q、AVT_Q’、AVT_ Q’’ 、AVT_S、AVT_S’:可用虛擬網路拓樸 VLAN_1~VLAN_4094、VLAN_Y、VLAN_Q、VLAN_S:虛擬區域網路識別碼 Path(1):路徑 S901~S905、S1001~S1009:虛擬區域網路配置方法的步驟
圖1是根據本揭露的一範例實施例所繪示的虛擬區域網路配置系統的示意圖。 圖2是根據本揭露的一範例實施例所繪示的實體網路拓樸的示意圖。 圖3A~3B是根據本揭露的一範例實施例所繪示的虛擬網路拓樸與可用虛擬網路拓樸的示意圖。 圖4A~4C是根據本揭露的一範例實施例所繪示的建立虛擬網路拓樸的示意圖。 圖5A~5B是根據本揭露的一範例實施例所繪示的重置虛擬機器的示意圖。 圖6A~6B是根據本揭露的一範例實施例所繪示的在虛擬區域網路群組中新增虛擬機器的示意圖。 圖7A~7B是根據本揭露一範例實施例所繪示的移除虛擬機器時更新虛擬網路拓樸的示意圖。 圖8是根據本揭露的一範例實施例所繪示的虛擬交換器轉送封包的示意圖。 圖9是根據本揭露的一範例實施例所繪示的虛擬區域網路配置方法的流程圖。 圖10是根據本揭露的圖9之步驟S903所繪示的虛擬區域網路配置方法中,建立虛擬網路拓樸的詳細步驟的流程圖。

Claims (21)

  1. 一種虛擬區域網路配置系統,包括:多個實體機器,運行多個虛擬機器;多個乙太網路交換器,藉由多個鏈路連接至所述多個實體機器;以及一網路控制器,連接至所述多個乙太網路交換器,所述網路控制器根據所述多個實體機器與所述多個虛擬機器佈署多個虛擬區域網路群組,其中所述多個虛擬區域網路群組的每一個虛擬區域網路群組包括所述多個實體機器之中的至少一實體機器與所述多個虛擬機器之中的至少一虛擬機器,其中所述網路控制器建立對應所述多個虛擬區域網路群組的多個虛擬網路拓樸,並且將多個虛擬區域網路識別碼分別指派給所述多個虛擬區域網路群組,其中所述多個虛擬區域網路群組中包括一虛擬區域網路群組與另一虛擬區域網路群組,並且所述虛擬區域網路群組與所述另一虛擬區域網路群組具有一相同虛擬區域網路識別碼,其中所述網路控制器維護各自對應所述多個虛擬區域網路識別碼的多個可用虛擬網路拓樸,所述多個可用虛擬網路拓樸的每一個可用虛擬網路拓樸包括所述多個乙太網路交換器之中的至少部分乙太網路交換器,其中所述網路控制器從所述多個虛擬區域網路群組之中選取一第一虛擬區域網路群組,其中所述網路控制器從所述多個虛擬區域網路識別碼中選取一第一虛擬區域網路識別碼,並且倘若所述多個可用虛擬網路拓樸之中對應所述第一虛擬區域網路識別碼的一第一可用虛擬網路拓樸能夠連接所述第一虛擬區域網路群組中的所有實體機器時,所述網路控制器根據所述第一可用虛擬網路拓樸來建立對應所述第一虛擬區域網路群組的一第一虛擬網路拓樸,並且根據所建立的所述第一虛擬網路拓樸來更新所述第一可用虛擬網路拓樸,其中所述網路控制器將所述第一虛擬區域網路識別碼指派給所述第一虛擬區域網路群組。
  2. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述網路控制器根據所述多個虛擬區域網路群組中的各虛擬區域網路群組的實體機器的數目從所述多個虛擬區域網路群組之中選取所述第一虛擬區域網路群組。
  3. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述網路控制器根據所述多個可用虛擬網路拓樸中的各可用虛擬網路拓樸的乙太網路交換器的數目從所述多個虛擬區域網路識別碼中選取所述第一虛擬區域網路識別碼。
  4. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述多個實體機器、所述多個乙太網路交換器與所述多個鏈路形成一實體網路拓樸,其中倘若無法根據所述多個虛擬區域網路識別碼對應的所述多個可用虛擬區域網路拓樸建立對應所述第一虛擬區域網路群組的所述第一虛擬網路拓樸時,所述網路控制器判斷所述第一虛擬區域網路群組是否包括一第一虛擬機器,其中所述第一虛擬機器獨立運行在所述多個實體機器之中的一第一實體機器中且所述第一虛擬區域網路群組包括所述第一實體機器,倘若所述第一虛擬區域網路群組包括所述第一虛擬機器時,所述網路控制器將所述第一虛擬機器重新配置於一第二實體機器中,其中所述第一虛擬區域網路群組包括所述第二實體機器,其中所述第一虛擬區域網路群組更包括一第三實體機器,在所述實體網路拓樸中所述第二實體機器與所述第三實體機器之間的最短路徑小於所述第一實體機器與所述第三實體機器之間的最短路徑。
  5. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述網路控制器為所述多個鏈路中的每一個鏈路記錄一權重值,其中所述網路控制器根據所述多個鏈路的所述多個權重值來建立所述多個虛擬網路拓樸,並且根據所建立的所述多個虛擬網路拓樸來更新所述多個權重值。
  6. 如申請專利範圍第5項所述的虛擬區域網路配置系統,其中所述網路控制器根據所述多個鏈路的所述多個權重值使用一廣度優先搜尋演算法來建立所述多個虛擬網路拓樸。
  7. 如申請專利範圍第6項所述的虛擬區域網路配置系統,其中所述網路控制器為所述多個鏈路中的每一個鏈路計算一虛擬區域網路群組數,並且將所述多個鏈路的虛擬區域網路群組數分別地設定為所述多個鏈路的權重值,其中所述多個鏈路的虛擬區域網路群組數分別地為使用所述多個鏈路的虛擬區域網路群組的數目。
  8. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述多個虛擬區域網路群組包括一第二虛擬區域網路群組,其中所述網路控制器在所述第二虛擬區域網路群組中新增一第二虛擬機器,並且將所述第二虛擬機器配置於所述第二虛擬區域網路群組的其中一個實體機器中。
  9. 如申請專利範圍第8項所述的虛擬區域網路配置系統,其中所述第二虛擬區域網路群組被配置一第二虛擬網路拓樸與一第二虛擬區域網路識別碼,其中倘若無法將所述第二虛擬機器配置於所述第二虛擬區域網路群組的任一實體機器中時,所述網路控制器將所述第二虛擬機器配置於一第四實體機器,其中所述網路控制器根據所述第二虛擬網路拓樸更新對應所述第二虛擬區域網路識別碼的一第二可用虛擬網路拓樸,根據所述第四實體機器更新所述第二虛擬區域網路群組,並且根據已更新的所述第二可用虛擬網路拓樸來建立已更新的所述第二虛擬區域網路群組的虛擬網路拓樸。
  10. 如申請專利範圍第1項所述的虛擬區域網路配置系統,其中所述多個虛擬區域網路群組包括一第三虛擬區域網路群組,所述第三虛擬區域網路群組被配置一第三虛擬網路拓樸並且包括一欲移除虛擬機器與一第五實體機器,所述欲移除虛擬機器運行於所述第五實體機器中,其中所述網路控制器判斷所述欲移除虛擬機器是否獨立運行於所述第五實體機器中,倘若所述欲移除虛擬機器獨立運行於所述第五實體機器中時,所述網路控制器在所述第三虛擬網路拓樸中從所述第五實體機器開始單向尋找具有至少兩個分支路徑的一第一乙太網路交換器,並且移除所述第三虛擬網路拓樸中所述第五實體機器與所述第一乙太網路交換器之間的所有路徑。
  11. 一種虛擬區域網路配置方法,用於一虛擬區域網路配置系統,所述虛擬區域網路配置系統包括多個實體機器及多個乙太網路交換器,所述多個乙太網路交換器藉由多個鏈路連接至所述多個實體機器,所述多個實體機器運行多個虛擬機器,所述方法包括:根據所述多個實體機器與所述多個虛擬機器佈署多個虛擬區域網路群組,其中所述多個虛擬區域網路群組的每一個虛擬區域網路群組包括所述多個實體機器之中的至少一實體機器與所述多個虛擬機器之中的至少一虛擬機器;建立對應所述多個虛擬區域網路群組的多個虛擬網路拓樸;將多個虛擬區域網路識別碼分別指派給所述多個虛擬區域網路群組;以及維護各自對應所述多個虛擬區域網路識別碼的多個可用虛擬網路拓樸,所述多個可用虛擬網路拓樸的每一個可用虛擬拓樸包括所述多個乙太網路交換器之中的至少部分乙太網路交換器,其中所述多個虛擬區域網路群組中包括一虛擬區域網路群組與另一虛擬區域網路群組,並且所述虛擬區域網路群組與所述另一虛擬區域網路群組具有一相同虛擬區域網路識別碼,其中建立對應所述多個虛擬區域網路群組的所述多個虛擬網路拓樸的步驟包括:從所述多個虛擬區域網路群組之中選取一第一虛擬區域網路群組;從所述多個虛擬區域網路識別碼中選取一第一虛擬區域網路識別碼;倘若所述多個可用虛擬網路拓樸之中對應所述第一虛擬區域網路識別碼的一第一可用虛擬網路拓樸能夠連接所述第一虛擬區域網路群組中的所有實體機器時,根據所述第一可用虛擬網路拓樸來建立對應所述第一虛擬區域網路群組的一第一虛擬網路拓樸;以及根據所建立的所述第一虛擬網路拓樸來更新所述第一可用虛擬網路拓樸,其中將所述多個虛擬區域網路識別碼分別指派給所述多個虛擬區域網路群組的步驟包括:將所述第一虛擬區域網路識別碼指派給所述第一虛擬區域網路群組。
  12. 如申請專利範圍第11項所述的虛擬區域網路配置方法,其中從所述多個虛擬區域網路群組之中選取所述第一虛擬區域網路群組的步驟包括:根據所述多個虛擬區域網路群組中的各虛擬區域網路群組的實體機器的數目從所述多個虛擬區域網路群組之中選取所述第一虛擬區域網路群組。
  13. 如申請專利範圍第11項所述的虛擬區域網路配置方法,其中從所述多個虛擬區域網路識別碼中選取所述第一虛擬區域網路識別碼的步驟包括:根據所述多個可用虛擬網路拓樸中的各可用虛擬網路拓樸的乙太網路交換器的數目從所述多個虛擬區域網路識別碼中選取所述第一虛擬區域網路識別碼。
  14. 如申請專利範圍第11項所述的虛擬區域網路配置方法,其中所述多個實體機器、所述多個乙太網路交換器與所述多個鏈路形成一實體網路拓樸,其中建立對應所述多個虛擬區域網路群組的所述多個虛擬網路拓樸的步驟更包括:倘若無法根據所述多個虛擬區域網路識別碼對應的所述多個可用虛擬區域網路拓樸建立對應所述第一虛擬區域網路群組的所述第一虛擬網路拓樸時,判斷所述第一虛擬區域網路群組是否包括一第一虛擬機器,其中所述第一虛擬機器獨立運行在所述多個實體機器之中的一第一實體機器且所述第一虛擬區域網路群組包括所述第一實體機器;以及倘若所述第一虛擬區域網路群組包括所述第一虛擬機器時,將所述第一虛擬機器重新配置於一第二實體機器中,其中所述第一虛擬區域網路群組包括所述第二實體機器,其中所述第一虛擬區域網路群組更包括一第三實體機器,且在所述實體網路拓樸中所述第二實體機器與所述第三實體機器之間的最短路徑小於所述第一實體機器與所述第三實體機器之間的最短路徑。
  15. 如申請專利範圍第11項所述的虛擬區域網路配置方法,更包括:為所述多個鏈路的每一個鏈路記錄一權重值,其中建立對應所述多個虛擬區域網路群組的所述多個虛擬網路拓樸的步驟包括:根據所述多個鏈路的所述多個權重值來建立所述多個虛擬網路拓樸;以及根據所建立的所述多個虛擬網路拓樸來更新所述多個權重值。
  16. 如申請專利範圍第15項所述的虛擬區域網路配置方法,其中建立對應於所述多個虛擬區域網路群組的所述多個虛擬網路拓樸的步驟包括:根據所述多個鏈路的所述多個權重值使用一廣度優先搜尋演算法來建立所述多個虛擬網路拓樸。
  17. 如申請專利範圍第16項所述的虛擬區域網路配置方法,更包括:為所述多個鏈路中的每一個鏈路計算一虛擬區域網路群組數,並且將所述多個鏈路的虛擬區域網路群組數分別地設定為所述鏈路的權重值,其中所述多個鏈路的虛擬區域網路群組數分別地為使用所述多個鏈路的虛擬區域網路群組的數目。
  18. 如申請專利範圍第11項所述的虛擬區域網路配置方法,其中所述多個虛擬區域網路群組包括一第二虛擬區域網路群組,所述方法更包括:在所述第二虛擬區域網路群組中新增一第二虛擬機器;以及將所述第二虛擬機器配置於所述第二虛擬區域網路群組的其中一個實體機器中。
  19. 如申請專利範圍第18項所述的虛擬區域網路配置方法,其中所述第二虛擬區域網路群組被配置一第二虛擬網路拓樸與一第二虛擬區域網路識別碼,其中將所述第二虛擬機器配置於所述第二虛擬區域網路群組的其中一個實體機器中的步驟包括:倘若無法將所述第二虛擬機器配置於所述第二虛擬區域網路群組的任一實體機器中時,將所述第二虛擬機器配置於一第四實體機器;根據所述第二虛擬網路拓樸更新對應所述第二虛擬區域網路識別碼的一第二可用虛擬網路拓樸;根據所述第四實體機器更新所述第二虛擬區域網路群組;以及根據已更新的所述第二可用虛擬網路拓樸來建立已更新的所述第二虛擬區域網路群組的虛擬網路拓樸。
  20. 如申請專利範圍第11項所述的虛擬區域網路配置方法,其中所述多個虛擬區域網路群組包括一第三虛擬區域網路群組,所述第三虛擬區域網路群組被配置一第三虛擬網路拓樸並且包括一欲移除虛擬機器與一第五實體機器,所述欲移除虛擬機器設置於所述第五實體機器中,所述方法更包括:判斷所述欲移除虛擬機器是否獨立運行於所述第五實體機器中;倘若所述欲移除虛擬機器獨立設置於所述第五實體機器中時,在所述第三虛擬網路拓樸中從所述第五實體機器開始單向尋找具有至少兩個分支路徑的一第一乙太網路交換器;以及移除所述第三虛擬網路拓樸中所述第五實體機器與所述第一乙太網路交換器之間的所有路徑。
  21. 一種電腦程式產品,所述電腦程式產品包括至少一程式指令,當一電子裝置載入所述至少一程式指令並執行後,可完成申請專利範圍第11項所述之方法。
TW106103968A 2017-02-07 2017-02-07 虛擬區域網路配置系統與方法及其電腦程式產品 TWI636679B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW106103968A TWI636679B (zh) 2017-02-07 2017-02-07 虛擬區域網路配置系統與方法及其電腦程式產品
CN201710191472.3A CN108400922B (zh) 2017-02-07 2017-03-28 虚拟局域网络配置系统与方法及其计算机可读存储介质
US15/600,781 US10615999B2 (en) 2017-02-07 2017-05-21 Virtual local area network configuration system and method, and computer program product thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106103968A TWI636679B (zh) 2017-02-07 2017-02-07 虛擬區域網路配置系統與方法及其電腦程式產品

Publications (2)

Publication Number Publication Date
TW201830924A TW201830924A (zh) 2018-08-16
TWI636679B true TWI636679B (zh) 2018-09-21

Family

ID=63037426

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106103968A TWI636679B (zh) 2017-02-07 2017-02-07 虛擬區域網路配置系統與方法及其電腦程式產品

Country Status (3)

Country Link
US (1) US10615999B2 (zh)
CN (1) CN108400922B (zh)
TW (1) TWI636679B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6778223B2 (ja) * 2018-02-07 2020-10-28 日本電信電話株式会社 機能連携装置、仮想マシン通信システム、および、機能連携方法
CN111147343A (zh) * 2019-12-06 2020-05-12 苏州浪潮智能科技有限公司 一种数据中心白牌交换机vlan批量增删方法及系统
CN111131037B (zh) * 2019-12-27 2022-04-29 网易(杭州)网络有限公司 基于虚拟网关的数据传输方法、装置、介质与电子设备
CN111556102B (zh) * 2020-04-14 2023-02-28 深圳震有科技股份有限公司 一种数据通道建立方法、以太网交换机及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101695043A (zh) * 2009-10-15 2010-04-14 中兴通讯股份有限公司 一种热备份端口复用的方法及网络系统
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
US20130227097A1 (en) * 2010-09-14 2013-08-29 Hitachi, Ltd. Multi-tenancy information processing system, management server, and configuration management method
EP2787698A2 (en) * 2013-04-03 2014-10-08 Deutsche Telekom AG A method and device for incremental deployment of software-defined networking into an enterprise network
US20140365622A1 (en) * 2013-06-06 2014-12-11 Cisco Technology, Inc. Software defined networking for storage area networks
US20160065386A1 (en) * 2014-08-29 2016-03-03 Alcatel -Lucent Usa, Inc. Scalable virutal networks in sdn-based ethernet networks using vlans

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7362974B2 (en) * 2001-11-30 2008-04-22 Pirelli & C. S.P.A. Method for planning or provisioning data transport networks
US8369333B2 (en) 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
JP5630094B2 (ja) * 2010-06-24 2014-11-26 富士通株式会社 通信装置および通信方法
JP5850471B2 (ja) 2010-08-20 2016-02-03 日本電気株式会社 通信システム、制御装置、ノード制御方法およびプログラム
JP5858147B2 (ja) 2012-03-28 2016-02-10 日本電気株式会社 通信システム、上位レイヤスイッチ、制御装置、スイッチ制御方法及びプログラム
JP5862769B2 (ja) 2012-05-09 2016-02-16 日本電気株式会社 通信システム、制御装置、通信方法及びプログラム
US9450823B2 (en) 2013-08-09 2016-09-20 Nec Corporation Hybrid network management
CN103888369B (zh) 2014-04-10 2019-02-05 广州市高科通信技术股份有限公司 以太网通信方法、系统和sdn交换机
CN105704180B (zh) * 2014-11-27 2019-02-26 英业达科技有限公司 数据中心网络的配置方法及其系统
JP2016126562A (ja) * 2015-01-05 2016-07-11 富士通株式会社 情報処理システム、管理装置、及び情報処理システムの制御方法
TWI543566B (zh) 2015-05-12 2016-07-21 財團法人工業技術研究院 基於軟體定義網路的資料中心網路系統及其封包傳送方法、位址解析方法與路由控制器
US9954758B2 (en) * 2016-02-17 2018-04-24 Dell Products L.P. Virtual network function resource allocation and management system
JP2017174170A (ja) * 2016-03-24 2017-09-28 富士通株式会社 配備方法、配備装置および配備プログラム
CN106209562A (zh) * 2016-07-27 2016-12-07 华为技术有限公司 一种网络中vlan id分配的方法及控制器
JP2018026042A (ja) * 2016-08-12 2018-02-15 富士通株式会社 移動制御プログラム、移動制御装置及び移動制御方法
CN106100964B (zh) * 2016-08-24 2019-06-07 北京邮电大学 一种虚拟网络映射的方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101695043A (zh) * 2009-10-15 2010-04-14 中兴通讯股份有限公司 一种热备份端口复用的方法及网络系统
US20130227097A1 (en) * 2010-09-14 2013-08-29 Hitachi, Ltd. Multi-tenancy information processing system, management server, and configuration management method
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
EP2787698A2 (en) * 2013-04-03 2014-10-08 Deutsche Telekom AG A method and device for incremental deployment of software-defined networking into an enterprise network
US20140365622A1 (en) * 2013-06-06 2014-12-11 Cisco Technology, Inc. Software defined networking for storage area networks
US20160065386A1 (en) * 2014-08-29 2016-03-03 Alcatel -Lucent Usa, Inc. Scalable virutal networks in sdn-based ethernet networks using vlans

Also Published As

Publication number Publication date
CN108400922A (zh) 2018-08-14
US10615999B2 (en) 2020-04-07
CN108400922B (zh) 2021-01-12
TW201830924A (zh) 2018-08-16
US20180227170A1 (en) 2018-08-09

Similar Documents

Publication Publication Date Title
TWI813742B (zh) 在網路路由環境中的非同步物件管理機制
US20210036951A1 (en) Segment routing with fast reroute for container networking
US10554483B2 (en) Network policy analysis for networks
US11178009B2 (en) Static network policy analysis for networks
US9858104B2 (en) Connecting fabrics via switch-to-switch tunneling transparent to network servers
CN107113233B (zh) 用于支持多租户集群环境中的分区感知路由的系统和方法
US9917729B2 (en) Methods, systems, and computer readable media for multi-layer orchestration in software defined networks (SDNs)
JP5610247B2 (ja) ネットワークシステム、及びポリシー経路設定方法
JP4076586B2 (ja) マルチレイヤ・ネットワーク要素用のシステムおよび方法
EP3210347B1 (en) Pre-built match-action tables
US11258657B2 (en) Fault localization in large-scale network policy deployment
TWI636679B (zh) 虛擬區域網路配置系統與方法及其電腦程式產品
JP2018537004A (ja) マルチテナントクラスタ環境における効率的なネットワーク分離および負荷バランシングのためのシステムおよび方法
JP2017506025A (ja) ネットワークサービス挿入を実行するシステム及び方法
CN103795644B (zh) 策略表表项配置方法、装置及系统
DE102014117460A1 (de) Programmierbares verteiltes Networking
US11582102B2 (en) Systems and methods for integrating network switch management with computing resource management
EP3639477A1 (en) Collecting network models and node information from a network
Lopez-Pajares et al. Amaru: Plug&play resilient in-band control for SDN
CN104836738A (zh) 路由硬件表项资源管理方法、装置及网络设备
US9356838B1 (en) Systems and methods for determining network forwarding paths with a controller
Ma et al. An algorithm of physical network topology discovery in multi-VLANs
Chen et al. A dynamic security traversal mechanism for providing deterministic delay guarantee in SDN
RU2775146C1 (ru) Способ автоматизированного предоставления виртуального канала оператором связи между ЦОД
Yan et al. Simulation of a software-defined network as one Big switch