TWI651957B - 使用經指派之切換識別於輸入/輸出裝置上的技術 - Google Patents
使用經指派之切換識別於輸入/輸出裝置上的技術 Download PDFInfo
- Publication number
- TWI651957B TWI651957B TW102106685A TW102106685A TWI651957B TW I651957 B TWI651957 B TW I651957B TW 102106685 A TW102106685 A TW 102106685A TW 102106685 A TW102106685 A TW 102106685A TW I651957 B TWI651957 B TW I651957B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- identification
- identification information
- input
- output device
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/76—Routing in software-defined topologies, e.g. routing between virtual machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/3015—Name registration, generation or assignment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
所揭示的是用於將一切換識別指派至在耦接至一主機裝置之一輸入/輸出裝置處接收之資料的實例。在一些實例中,該資料可與用於實施於該主機裝置處之一虛擬機之一虛擬站介面(VSI)相關聯。對於此等實例,可基於一經指派之埠識別符、用於該資料之識別資訊或該識別資訊之至少一部分之一發源端而將一切換識別指派至該資料。接著,可使用該經指派之切換識別作為一查找表之部分以判定用於在該輸入/輸出裝置處處理該資料之一或多個動作。描述及主張其他實例。
Description
本發明係有關於使用經指派之切換識別於輸入/輸出裝置上的技術。
諸如網路介面卡(network interface card,NIC)之輸入/輸出(I/O)裝置可耦接至部署於伺服器-網路邊緣中之計算平台或主機裝置,在該伺服器-網路邊緣處,伺服器網域(server domain)結束且外部網路網域(external network domain)開始。用以在此等類型之環境中使切換邏輯或電路實施於NIC處之已知方式係經由使用一組查找表。該等查找表可識別諸如封包標頭之資料之部分,且接著,可基於封包標頭而在查找表中定義動作。查找表通常在實施經由單一切換執行個體而連接所有埠之切換電路之NIC中良好地起作用。
美國電機電子工程師學會(Institute of Electrical and Electronics Engineers,IEEE)之建議標準描述將眾多切換器實施為邊緣虛擬橋接(Edge Virtual Bridging,EVB)之部
分。該建議標準具有標題「IEEE Standard for Local and Metropolitan Area Networks-Virtual Bridged Local Area Networks-Amendment Edge Virtual Bridging」,且被識別為2012年1月30日公開之IEEE 802.1Qbg--草稿2.1(在下文中為「IEEE 802.1Qbg」)。根據IEEE 802.Qbg而操作之NIC可需要針對與乙太網路埠相關聯之各邏輯或虛擬埠實施分離專用切換執行個體。又,該NIC可需要針對可包括虛擬機(virtual machine,VM)之主機裝置處之處理元件之間的內部訊務實施額外區域切換執行個體(local switch instance)。另外,可需要串接式切換執行個體以在單一乙太網路埠內實施虛擬乙太網路橋接器(Virtual Ethernet Bridge,VEB)或虛擬乙太網路埠彙總工具(Virtual Ethernet Port Aggregator,VEPA)。對於此等多個切換執行個體,針對各切換執行個體使用分離查找表可需要實質量之NIC資源。
依據本發明之一實施例,係特地提出一種方法,其包含:在耦接至一主機裝置之一輸入/輸出裝置處接收資料,該資料係與維持於該輸入/輸出裝置處之一虛擬站介面相關聯,該虛擬站介面以通信方式耦接至實施於該主機裝置處之一虛擬機,該資料係自該虛擬機或一網路元件中之一者予以發送,該網路元件能夠經由一網路通信鏈路而耦接至該輸入/輸出裝置;基於用於在該輸入/輸出裝置處接收該資料所透過的埠之一經指派的埠識別符、用於該資料之識別資訊及該識別資訊之至少一部分之一發源端而將一切
換識別指派至該資料;使用該經指派之切換識別作為一查找表之部分以判定用於在該輸入/輸出裝置處處理該資料之一個或多個動作。
100‧‧‧系統
101、700‧‧‧主機裝置
111、112、113、114、115、116、117、118‧‧‧虛擬機(VM)
111D、112D、113A、114B、115C、116D、117E、118x‧‧‧虛擬站介面(VSI)
130-1、130-2、130-3、130-4‧‧‧埠
140‧‧‧輸入/輸出(I/O)裝置
141、143、146、147、148、149‧‧‧虛擬切換器(V.S.)
141-D‧‧‧邏輯埠(L埠)
142‧‧‧切換管理器
143A/B、146C、147D、148E、149x‧‧‧鏈路
144‧‧‧埠延伸器
144-1C、144-2D‧‧‧E埠
145、530、760‧‧‧記憶體
150-1、150-2、150-3、150-4‧‧‧通信鏈路
160‧‧‧網路
200‧‧‧實例切換識別結構
210、220、230‧‧‧欄位
300‧‧‧經指派之切換識別表
400‧‧‧查找表
510‧‧‧切換邏輯
512‧‧‧接收特徵
514‧‧‧指派特徵
516‧‧‧查找特徵
520‧‧‧控制邏輯
540‧‧‧輸入/輸出(I/O)介面
610至680‧‧‧區塊
705‧‧‧超級監督器
710‧‧‧作業系統
711‧‧‧裝置驅動器
715‧‧‧使用者介面
720‧‧‧應用程式
730‧‧‧網路輸入/輸出(I/O)裝置
735、754‧‧‧介面
740‧‧‧使用者輸入/輸出(I/O)裝置
750‧‧‧儲存器
770‧‧‧中央處理單元(CPU)
780‧‧‧晶片組
790‧‧‧通信(Comms)
圖1例示實例系統。
圖2例示實例切換識別結構。
圖3例示實例經指派之切換識別表。
圖4例示實例查找表。
圖5例示用於切換管理器之實例架構的方塊圖。
圖6例示用於指派切換識別之實例流程圖。
圖7例示用於主機裝置之實例系統圖。
如本發明所預期,當針對各切換執行個體使用分離查找表時,在實施EVB時之多個切換執行個體可需要實質量之NIC資源。又,虛擬切換環境中之切換執行個體可與動態組配相關聯。由於動態組配,針對各可能切換執行個體指派一分離查找表可需要過多資源且亦可限定可能組配,此係因為給定NIC具有有限資源來支援此等分離查找表。
在一些實例中,實施用於將切換識別指派至在耦接至主機裝置之輸入/輸出裝置處接收之資料的技術。對於此等實例,該資料可與維持於I/O裝置處之虛擬站介面(virtual station interface,VSI)相關聯,VSI可以通信方式耦
接至實施於主機裝置處之虛擬機。對於此等實例,資料可能已自虛擬機或網路元件中之一者予以發送,該網路元件能夠經由網路通信鏈路而耦接至I/O裝置。可基於用於供在I/O裝置處接收資料之埠的經指派之埠識別符、用於資料之識別資訊及識別資訊之至少一部分之發源端而將切換識別指派至資料。可使用經指派之切換識別作為查找表之部分以判定用於在I/O裝置處處理資料之一或多個動作。
圖1例示實例第一系統。如圖1所示,實例第一系統包括系統100。系統100可包括耦接至輸入/輸出(I/O)裝置140之主機裝置101。如圖1所示,I/O裝置140可經由包括於虛擬切換器(virtual switch,V.S.)141、143、146、147、148及149中之各種虛擬站介面(VSI)111D、112D、113A、114B、115C、116D、117E及118x而耦接至主機裝置101(「x」指示與仍待建立之資料通道的關聯)。與此等虛擬切換器一起被包括之各種VSI可經分離地配置以如圖1所示而耦接至虛擬機(VM)111至118,且可使資料(例如,呈資料封包或資料訊框之形式)能夠自VM 111至118予以接收/傳輸至VM 111至118。對於此等實例,VM 111至118可經組配或配置以使用維持於主機裝置101處之計算資源予以實施。任何數目個虛擬切換器可與任何數目個VSI相關聯而以通信方式耦接至任何數目個VM及/或虛擬機管理器(超級監督器)。
根據一些實例,如圖1所示,邏輯埠(L埠)141-D被展示為包括於虛擬切換器141中。L埠141-D可充當能夠耦接至資料通道D之邏輯埠。如下文更多所提及,資料通道D可經配置以在VM 111與VM 112之間路由資料。舉例來說,資料之路由可經由各別VSI 111及112,如圖1所示。
又,如圖1所示,通信鏈路150-1至150-4可經由各別埠130-1至130-4而將包括於網路160中之網路元件耦接至主機裝置101。在一些實例中,埠130-1至130-4可表示可供在I/O裝置140處接收或自I/O裝置140發送/傳輸資料(例如,呈資料封包或訊框之形式)之實體連接器或埠。I/O裝置140亦被展示為包括埠延伸器144。根據一些實例,如圖1所示,埠延伸器144可包括E埠144-1C及E埠144-2D。對於此等實例,埠延伸器144可使實體埠130-2能夠延伸至至少兩個延伸器/邏輯埠以經由E埠144-1C及E埠144-2D而將資料路由至虛擬切換器146及147/自虛擬切換器146及147路由資料。
在一些實例中,如圖1所示,I/O裝置140包括切換管理器142。如下文更多所描述,切換管理器142可包括用以將切換識別指派至在I/O裝置140處接收之資料之邏輯及/或特徵。對於此等實例,該資料可在來自圖1所描繪之各種埠當中之埠處被接收。接著,可使用經指派之切換識別作為查找表之部分以判定用於在I/O裝置140處處理資料之一或多個動作(例如,轉遞、密碼編譯/安全性處理,等等)。
根據一些實例,I/O裝置140可經組配以根據一
建議IEEE標準(包括後裔及變型)之至少一些態樣而操作,或實施該至少一些態樣,該建議IEEE標準具有標題「Standard for Local and Metropolitan Area Networks-Virtual Bridged Local Area Networks-Bridge Port Extension」且被識別為2012年1月25日公開之IEEE 802.1BR──草稿3.2(在下文中「IEEE 802.1BR」)。對於此等實例,I/O裝置140亦可經組配以依照建議IEEE 802.1Qbg標準(包括後裔及變型)之至少一些態樣而操作,或實施該至少一些態樣。作為IEEE 802.1Qbg或IEEE 802.1BR之實施之部分,可建立各種資料通道以用於在主機裝置101上之虛擬機之間區域地路由資料或將資料全域地路由至位於網路160處之網路元件。
在一些實例中,如圖1所示,各種經建立之資料通道被識別為資料通道A至E。對於此等實例,耦接至VM 111至116之各種VSI係與資料通道A、B、C、D或E相關聯,惟耦接至虛擬機118之VSI 118x除外。在一些實例中,VSI 118x可表示仍待與經建立之資料通道相關聯的VSI。如下文更多所提及,經由VSI 118x而路由之資料可包括用以最終與VSI 118x建立資料通道之控制資訊。對於此等執行個體,用於此控制資料之預設識別或標籤可區域地產生或發源於I/O裝置140處且接著用以將切換識別指派至該資料。
根據一些實例,資料通道可用以在位於主機裝置101處之VM之間路由資料,或將資料路由至VM與位於
網路160處之網路元件之間。對於此等實例,用於經由此等資料通道而路由之資料之識別資訊可包括IEEE 802.1Qbg或IEEE 802.1BR所描述之標籤。該標籤可為服務(Service)標籤(S標籤)或橋接埠延伸(Bridge Port Extension)標籤(E標籤)。在一些實例中,S標籤或E標籤可為識別資訊以指示出具有此等標籤中之一者之資料可與給定通道相關聯。此等標籤可自在I/O裝置140遠端之元件(諸如,網路160處之網路元件)予以全域地產生或發源。
在一些實例中,切換管理器142可包括經配置以在I/O裝置140處接收資料之邏輯及/或特徵。該資料可與VSI相關聯,且可具有識別資訊(例如,S標籤或E標籤)以指示與通道A之關聯。如圖1所示,耦接至通道A或與通道A相關聯之VSI可為VSI 113A。對於此等實例,VSI 113A可經配置或為可組配式以耦接至VM 113,且亦經配置以經由虛擬切換器143而路由來自VM 113之資料。根據一些實例,由於經由耦接至網路160之資料通道而路由資料,故可將資料視為在耦接至通道A之實體埠130-1處被接收。切換管理器142可包括經配置或組配以基於指派至埠130-1之識別符、用於資料之識別資訊(例如,標籤資訊)及識別資訊之至少一部分之發源端而將切換識別號碼指派至資料的邏輯及/或特徵。切換識別資訊接著可由切換管理器142之邏輯及/或特徵用作查找表之部分以判定用於在I/O裝置140處處理資料之一或多個動作。
在一些其他實例中,具有識別資訊以指示與通道
A之關聯之資料可經由埠130-1而在I/O裝置140處被接收。經由埠130-1而接收之資料接著可經由通道A而路由至虛擬切換器143。如先前所提及,VSI 113A可耦接至VM 113。對於此等實例,VSI 113A可經配置以使資料發送或傳輸至VM 113。對於此等其他實例,切換管理器142可包括經配置或組配以基於指派至I/O裝置140接收埠(埠130-1)之識別符、用於資料之識別資訊及識別資訊之至少一部分之發源端而將切換識別號碼指派至資料的邏輯及/或特徵。切換識別資訊接著可由切換管理器142之邏輯及/或特徵用作查找表之部分以判定用於在I/O裝置140處處理資料之一或多個動作。
在一些實例中,資料可在包括於I/O裝置140中之埠處被接收,該資料可經由虛擬切換器141處之資料通道D而在VM 111與VM 112之間進行路由。自VM 111經由VSI 111D而在L埠141-1D處接收之資料可具有為VM 112之目的地。對於此等實例,用於在埠141-1D處接收之資料之識別資訊可包括發源於I/O裝置140處(例如,虛擬切換器141處)之資料通道識別號碼。資料通道D識別號碼可相似於S標籤或E標籤之格式。切換管理器142可包括經配置或組配以基於指派至埠141-1D之識別符、經區域產生之通道D識別號碼及識別資訊之至少一部分之發源端位於I/O裝置140處的指示而將切換識別號碼指派至資料的邏輯及/或特徵。切換識別資訊接著可由切換管理器142之邏輯及/或特徵用作查找表之部分以判定用於在I/O裝置
140處處理資料之一或多個動作。
在一些實例中,虛擬切換器141可經組配以根據IEEE 802.1Qbg而操作,且充當虛擬乙太網路橋接器(VEB)。
在一些實例中,通信鏈路150-1至150-4可分別經由埠130-1至130-4而將I/O裝置140以通信方式耦接至網路160。通信鏈路150-1至150-4可包括各種類型之有線、無線或光學通信媒體。對於此等實例,通信鏈路150-1至150-4可根據呈任何版本之一或多個適用通信或網路連接標準而操作。該等通信或網路連接標準可包括(但不限於)IEEE 802.1Qbg或IEEE 802.1BR。
圖2例示實例切換識別結構200。在一些實例中,切換管理器142可包括用以使用切換識別結構200以將切換識別指派至在I/O裝置140處接收之資料的邏輯及/或特徵。如圖2所示,切換識別結構包括欄位210、220及230。在一些實例中,欄位210可指示用於資料之識別資訊之至少一部分的發源端。欄位220可指示用於可供在I/O裝置140處接收資料之埠的經指派之埠識別符。欄位230可指示用於資料之識別資訊。用於資料之識別資訊可包括資料通道識別號碼,諸如,S標籤、E標籤,或經區域產生/發源之預設資訊。
根據一些實例,識別資訊之區域發源端可藉由為0之1位元二進位值指示於切換ID結構200中,且全域發源端可藉由欄位210中為1之1位元值指示。又,欄位220中之經接收之埠#可藉由3位元值指示。因此,舉例來說,
為「4」之經指派之識別符將藉由為100之3位元二進位值指示,且為「2」之經指派之識別符將藉由為010之3位元二進位值指示。本發明不限於分別針對欄位210或220之1位元或3位元二進位值。
在一些實例中,用於包括於欄位230中之資料之識別資訊可包括範圍為1至4096之資料通道識別號碼。又,S標籤或E標籤資訊可包括範圍為1至4096之識別號碼。此等識別號碼可在欄位230中被表示為12位元二進位值或3字元十六進位值。本發明不限於針對欄位230之12位元二進位值或3字元16進位值,或不限於範圍為1至4096之號碼。
圖3例示實例經指派之切換識別表300。在一些實例中,經指派之切換ID表300描繪與切換ID結構200相關聯之值可如何用以將切換識別指派至資料。對於此等實例,經指派之切換ID表300可至少儲存於維持於I/O裝置140處之記憶體(例如,記憶體145)中。I/O裝置140之各種虛擬切換器列出於經指派之切換識別表300之左側欄中,且用於經接收資料之經指派之切換識別列出於右側三個欄中。
根據一些實例,切換管理器142可包括經組配或配置以基於用於供接收資料之埠的經指派之埠識別符、用於資料之識別資訊(標籤或預設值)及識別資訊之至少一部分之發源端(區域或全域)而將切換識別指派至資料的邏輯及/或特徵。舉例來說,上文將虛擬切換器141提及為產生
用於在VM 111與VM 112之間路由之資料的識別資訊。因此,為0之值針對虛擬切換器141指示於「區域/全域」欄中。又,在一些實例中,虛擬切換器141之L埠141-1D可能已被指派為1之埠號碼,且用於虛擬切換器141之此埠號碼在表300中被展示為具有為001之二進位值。另外,資料可經由資料通道D而在耦接至虛擬切換器141之VSI之間進行轉遞。對於此實例,與資料通道D相關聯之資料通道識別可具有為0x005之十六進位值,且此值在圖3中展示於「識別資訊」欄中。
在一些實例中,如上文針對圖1所提及,虛擬切換器143及146至148可經組配以接收具有在I/O裝置140遠端產生或發源之識別資訊的資料。因此,為1之值針對虛擬切換器143及146至148指示於「區域/全域」欄中。對於此等虛擬切換器,可經由埠130-1至130-3而接收自網路160接收之資料。此三個埠可自左側至右側(參見圖1)被指派為1至3之埠號碼,且此等埠號碼在表300中被展示為分別具有為001、010及011之二進位值。另外,資料可經由資料通道A至E中之一者而轉遞至耦接至此等虛擬切換器之VSI,或經由該等VSI進行路由。根據一些實例,S標籤可與經由資料通道A至E而接收之資料相關聯。經由資料通道A至E而接收之S標籤可具有一識別號碼,該識別號碼具有分別為0x002、0x003、0x004、0x005及0x006之十六進位值。
在一些實例中,虛擬切換器149可經組配以經由
耦接至埠130-4之未經指派之資料通道x而接收資料。由於該資料通道不具有經指派之資料號碼,故用於經由通道x而接收之資料的識別資訊之發源端被視為區域,且為1之值針對虛擬切換器149指示於「區域/全域」欄中。如圖1所示,埠130-4可為耦接至網路160之第四埠。根據一些實例,如「經接收之埠#」欄所指示,埠130-4可被指派具有為100之二進位值的為4之埠號碼。又,指示於「識別資訊」欄中的為0x000之預設十六進位值展示出在虛擬切換器149處接收之資料可仍未與資料通道識別號碼相關聯或被指派資料通道識別號碼。
根據一些實例,如表300所示,用於虛擬切換器141處之資料通道D及虛擬切換器147處之資料通道D的資料通道識別號碼皆為0x005。然而,由於用於虛擬切換器141處之資料通道D的資料通道識別符係來自區域發源端,故相比於具有針對虛擬切換器147處之資料通道D的為1之值的全域識別符,經指派之切換識別歸因於具有為0之值的區域識別符而不同。
圖4例示實例查找表400。如圖4所示,查找表400包括針對經指派之切換識別、VSI識別及關聯動作的欄。根據一些實例,經指派之切換識別可能已基於如上文針對圖3所描述的經指派之切換ID表300。對於此等實例,「區域/全域」及「經接收之埠#」欄中之1位元及3位元二進位值可經組合以形成4位元二進位值,且彼4位元二進位值接著可轉換至1字元十六進位值。1字元十六進位值接
著可作為第四字元加至展示於經指派之切換ID表300之「識別資訊」欄中的3字元資料特性值。由於此等組合,給定經指派之切換識別可具有如查找表400所示之4字元十六進位值。舉例來說,具有用於識別資訊之全域發源端且在I/O裝置140之埠3處接收的資料將具有為1011之4位元二進位值,且此值轉換至為B之十六進位值(或為11之十進位值)。
根據一些實例,如圖4所示,查找表400可包括「VSI資訊」欄以指示識別資訊以包括虛擬區域網路(virtual local area network,VLAN)/媒體存取控制器(media access controller,MAC)ID。對於此等實例,可使用VLAN/MAC ID資訊連同經指派之切換ID以進一步判定將針對在I/O裝置140處接收之資料採取何些動作。
在一些實例中,如圖4所示,經接收資料可被指派4字元切換識別號碼,且切換管理器142可包括經組配或配置以使用經指派之切換識別作為查找表400之部分且可能地使用VLAN/MAC ID資訊以便判定針對經由I/O裝置140處之給定埠而接收之資料的動作的邏輯及/或特徵。
根據一些實例,維持於I/O裝置140處之切換管理器142可包括用以將查找表400至少臨時儲存於記憶體145處之邏輯及/或特徵。對於此等實例,記憶體145之至少若干部分可經配置或組配為三元內容可定址記憶體(ternary content-addressable memory,TCAM)。在I/O裝置140處接收且被指派給定切換識別之資料可快速地與其各
別經指派之切換識別相關聯,且可基於指示於查找表400中之內容而使用彼經指派之切換識別來快速地判定對應處理動作。
在一些實例中,如圖4中針對查找表400所示,用於處理被指派給定切換識別之資料的動作可包括將資料直接地路由至給定埠。舉例來說,可將具有為0x1 005之經指派之切換識別的資料直接地路由至VSI 111D。接著,可將此資料自VSI 111D傳輸/發送至VM 112。
根據一些實例,如圖4中針對查找表400所示,用於處理被指派給定切換識別之資料的動作可包括I/O裝置140之元件(例如,密碼編譯處理器電路)執行該資料之密碼編譯處理且接著將該資料路由至給定埠。舉例來說,可將具有為0x9002之經指派之切換識別的資料轉遞至密碼編譯處理器電路以供加密/解密且接著路由至VSI 113A。接著,可將該資料自VSI 113A傳輸/發送至VM 113。
在一些實例中,如圖4中針對查找表400所示,用於處理被指派給定切換識別之資料的動作可包括I/O裝置140之元件(例如,安全性處理器電路)執行該資料之封包/訊框檢驗處理且接著將該資料路由至給定埠。舉例來說,可將具有為0xA005之經指派之切換識別的資料轉遞至安全性處理器電路以供封包/訊框檢驗且接著路由至埠143-1A。接著,可將該資料自VSI 115D傳輸/發送至VM 115。
圖5例示用於切換管理器142之實例架構的方塊
圖。在一些實例中,切換管理器142包括經組配或配置用於將切換識別指派至在耦接至主機裝置之I/O裝置處接收之資料的特徵及/或邏輯。根據一些實例,如圖5所示,切換管理器142包括切換邏輯510、控制邏輯520、記憶體530及輸入/輸出(I/O)介面540。如圖5所例示,切換邏輯510可耦接至控制邏輯520、記憶體530及I/O介面540。切換邏輯510可包括接收特徵512、指派特徵514或查找特徵516或其任何合理組合中之一或多者。
在一些實例中,圖5所描繪之元件經組配以支援或啟用切換管理器142,如本發明在別處所描述。給定切換管理器142可包括圖5所描繪之元件中之一些、全部或多於該等元件之元件。舉例來說,切換邏輯510及控制邏輯520可分離地或共同地表示各種各樣之邏輯裝置或可執行內容以實施切換管理器142之特徵。實例邏輯裝置可包括處理器電路、微處理器、微控制器、處理器電路、場可程式化閘陣列(FPGA)、特殊應用積體電路(ASIC)、多核心/多執行緒微處理器之隱退執行緒或核心、密碼編譯區塊、卸載處理器或其組合中之一或多者。
在一些實例中,如圖5所示,切換邏輯510包括接收特徵512、指派特徵514或查找特徵516。切換邏輯510可經組配以使用此等特徵中之一或多者以執行操作。舉例來說,接收特徵512可輔助I/O裝置接收資料。指派特徵514可基於用於供在I/O裝置處接收資料之埠的經指派之埠識別符、用於資料之識別資訊及識別資訊之至少一部分之
發源端而指派切換識別號碼。查找特徵516可使用經指派之切換識別作為查找表之部分以判定用於在I/O裝置處處理資料之一或多個動作。
在一些實例中,控制邏輯520可經組配以控制切換管理器142之總操作。如上文所提及,控制邏輯520可表示各種各樣之邏輯裝置或可執行內容中任一者。對於一些實例,控制邏輯520可經組配以結合可執行內容或指令而操作以實施切換管理器142之控制。在一些替代實例中,控制邏輯520之特徵及功能性可實施於切換邏輯510內。
根據一些實例,記憶體530可經配置以儲存可執行內容或指令以供控制邏輯520及/或切換邏輯510使用。可執行內容或指令可用以實施或啟動切換管理器142之特徵、元件或邏輯。如下文更多所描述,記憶體530亦可經配置以至少臨時維持與將切換識別號碼指派至在耦接至主機裝置之I/O裝置處接收之資料相關聯的資訊。
記憶體530可包括各種各樣之非揮發性記憶體媒體,包括(但不限於)一或多種類型之快閃記憶體、可程式化變數或狀態、唯讀記憶體(ROM)、隨機存取記憶體(RAM)或其他靜態或動態儲存媒體。
在一些實例中,I/O介面540可經由區域通信媒體或鏈路而在切換管理器142與I/O裝置之元件或主機裝置之元件之間提供介面。I/O介面540可包括根據各種通信協定或標準而操作以經由區域通信媒體或鏈路而通信之介面。此等通信協定或標準可描述於諸如與以下各者相關聯
之工業標準的一或多個工業標準(包括後裔及變型)中:互積體電路(Inter-Integrated Circuit,I2C)規範、系統管理匯流排(System Management Bus,SMBus)規範、快速周邊組件互連(Peripheral Component Interconnect Express,PCI Express)規範、通用串列匯流排(Universal Serial Bus,USB)規範,或串列進階附接技術(Serial Advanced Technology Attachment,SATA)規範。但,本發明不僅僅限於上述標準及關聯協定。
根據一些實例,I/O介面540可經由網路通信鏈路或通道而在切換管理器142與位於耦接至I/O裝置之計算裝置處之元件及/或與耦接至I/O裝置之通信鏈路相關聯之網路元件之間提供介面。I/O介面540可包括根據各種通信協定或標準而操作以經由網路通信鏈路或通道而通信之介面。此等通信協定或標準可描述於諸如與IEEE 802.1Qbg或IEEE 802.1BR相關聯之標準或規範的乙太網路相關標準或規範(包括後裔及變型)中。本發明不僅僅限於此等乙太網路相關標準。
圖6例示用於指派切換識別之實例流程圖。在一些實例中,如圖1所示之系統100之元件可用以例示與圖6所描繪之流程圖相關之實例操作。如圖1或圖5所示之切換管理器142亦可用以例示該等實例操作。但,所描述之實例操作不限於在系統100上之實施或不限於如上文針對圖1或圖5所描述之切換管理器142。
如圖2至圖4所示之切換ID結構200、經指派之切換ID表300及查找表400亦可用以例示與圖6所描繪
之流程圖相關之實例操作。但,所描述之實例操作不限於如圖2至圖4所示之此等特定結構或表。
自開始移動至區塊610(接收資料),切換管理器142可包括經配置以輔助I/O裝置140接收資料(例如,經由接收特徵512)之邏輯及/或特徵。在一些實例中,資料可呈資料封包或訊框之格式,且具有與主機裝置101處之一或多個虛擬機或與網路160處之一或多個網路元件相關聯的目的地。
自區塊610行進至決策區塊620(來自網路?),切換管理器142可包括經配置以判定資料係經由耦接至通信鏈路150-1至150-4之埠130-1或130-4抑或在包括於虛擬切換器141中之L埠141-1D處被接收(例如,經由接收特徵512)的邏輯及/或特徵。在一些實例中,資料可能已經由包括於虛擬切換器141中之L埠141-1D而自VM 111或VM 112被接收。對於此等實例,程序移動至決策區塊630。在其他實例中,資料可能已自與網路160一起被定位或位於網路160處之網路元件被接收。對於此等其他實例,程序移動至決策區塊650。
自決策區塊620移動至決策區塊630(具有標籤?),切換管理器142可包括經配置以判定經接收資料是否包括諸如S標籤或E標籤之識別資訊(例如,經由指派特徵514)的邏輯及/或特徵。在一些實例中,與資料相關聯之資料封包標頭可不包括識別資訊以識別與資料通道之關聯。對於此等實例,程序移動至區塊640。否則,若經接收
資料包括識別資訊,則程序移動至區塊670。
自決策區塊630移動至區塊640(切換ID={區域,埠#,VSI通道ID}),切換管理器142可包括經配置以將切換識別指派至資料(例如,經由指派特徵514)之邏輯及/或特徵。在一些實例中,由於資料不包括識別資訊,故識別資訊之發源端將為區域。埠#將為用於包括於虛擬切換器141中之L埠141-1D的經指派之識別符。VSI通道ID可為由切換管理器142指派之通道識別號碼,其可呈相似於S標籤或E標籤之格式。
自決策區塊620移動至決策區塊650(具有標籤?),相似於決策區塊630,切換管理器142可判定經接收資料是否包括諸如S標籤或E標籤之識別資訊。在一些實例中,與資料相關聯之資料封包標頭可不包括識別資訊以識別與資料通道之關聯。對於此等實例,程序移動至區塊660。否則,若經接收資料包括識別資訊,則程序移動至區塊670。
自決策區塊650移動至區塊660(切換ID={區域,埠#,預設ID}),切換管理器142可包括經配置以將切換識別指派至資料(例如,經由指派特徵514)之邏輯及/或特徵。在一些實例中,相似於區塊640,由於資料不包括識別資訊,故識別資訊之發源端將為區域。埠#可為用於供自網路接收資料的耦接至通信鏈路150-1至150-4中之一者之埠(例如,埠#4)的經指派之識別符。預設ID可為由切換管理器142指派之預設通道識別號碼,其可呈相似於S標籤或
E標籤之格式。
自決策區塊630或決策區塊650移動至區塊670(切換ID={全域,埠#,標籤}),切換管理器142可包括經組配以將切換識別指派至資料(例如,經由指派特徵514)之邏輯及/或特徵。在一些實例中,用於資料之識別資訊可能已發源於I/O裝置140外部或遠端,且因此被視為全域。埠#可為用於供自網路接收資料的耦接至通信鏈路150-1至150-4中之一者之埠(例如,埠#2)的經指派之識別符。又,標籤可為用於資料之識別資訊,且可呈相似於S標籤或E標籤之格式。
自區塊640、660或670移動至區塊680(使用切換ID以處理資料),切換管理器142可包括用以使用指派至資料之切換識別號碼之邏輯及/或特徵,且亦可使用VSI ID資訊(VLAN/MAC ID)以判定用於在I/O裝置140處處理資料之一或多個動作(例如,經由查找特徵516)。在一些實例中,在查找表400中針對對應切換識別號碼識別之動作可用以判定用於資料之一或多個動作。如上文所提及,該一或多個動作可包括路由資料、資料之密碼編譯處理,或資料之封包檢驗處理。程序接著結束。
圖7例示用於主機裝置700之實例系統圖。如圖7所示,主機裝置700包括超級監督器705、作業系統710、應用程式720、網路輸入/輸出(I/O)裝置730、使用者輸入/輸出(I/O)裝置740、儲存器750、記憶體760、中央處理單元(CPU)770、晶片組780,及通信(Comms)790。根據一些
實例,圖7中亦描繪用於互連及/或以通信方式耦接主機裝置700之元件之若干介面。舉例來說,使用者介面715及介面735可允許使用者(未圖示)及/或應用程式720耦接至作業系統710及/或超級監督器705。又,介面735可允許超級監督器705及/或作業系統710之元件(例如,裝置驅動器711)以通信方式耦接至主機裝置700之元件,諸如,網路I/O裝置730、使用者I/O裝置740、儲存器750、記憶體760、CPU 770、晶片組780或通信790。舉例來說,介面754可允許主機裝置700之硬體及/或韌體元件(例如)經由系統匯流排或其他類型之內部通信通道而以通信方式耦接在一起。
在一些實例中,如圖7所示,主機裝置700可包括作業系統710。舉例來說,作業系統710可包括一或多個作業系統。包括於作業系統710中之分離作業系統可被實施為由主機裝置700之元件支援之分離虛擬機的部分。對於此等實例,該等分離虛擬機可與包括於CPU 770中之一或多個處理器相關聯。又,對於此等實例,超級監督器705可充當用於此等分離虛擬機之虛擬機管理器。
根據一些實例,如圖7所示,作業系統710可分離地包括裝置驅動器711。裝置驅動器711可包括經組配以與主機裝置700之硬體/韌體類型元件互動(例如,經由介面735)之邏輯及/或特徵。舉例來說,裝置驅動器711可包括用以控制或指導儲存器750或記憶體760履行由應用程式720或作業系統710進行之請求之裝置驅動器。裝置驅動器
711亦可包括用以允許網路I/O裝置730與CPU 770及記憶體760互動以經由耦接至主機裝置700之通信通道而接收/轉遞資料(例如,經由網路I/O裝置730或通信790)之裝置驅動器。
在一些實例中,應用程式720可包括可實施於主機裝置700上之應用程式。對於此等實例,應用程式720可請求諸如使用者I/O裝置740、儲存器750或記憶體760之系統之元件的存取(例如,經由作業系統710)或使用。
根據一些實例,網路I/O裝置730可相似於上文針對圖1所描述之I/O裝置140。對於此等實例,網路I/O裝置730可包括具有經組配或配置用於將切換識別指派至在網路I/O裝置730處接收之資料之邏輯及/或特徵的切換管理器142(圖7中未圖示)。在一些實例中,網路I/O裝置730可經配置以充當網路介面卡(NIC)。
在一些實例中,使用者I/O裝置740可包括耦接
至用於鍵入待由主機裝置700之元件實施之資料及命令的介面754之一或多個使用者輸入裝置。舉例來說,該等使用者輸入裝置可包括鍵盤、滑鼠、觸控式螢幕、軌跡墊、軌跡球、isopoint、語音辨識系統及/或其類似者。相似地,使用者I/O裝置740可包括耦接至用於將資訊輸出至操作員或使用者之介面754之一或多個使用者輸出裝置。舉例來說,視需要,該等使用者輸出裝置可包括一或多個顯示器、印表機、揚聲器及/或其他輸出裝置。舉例來說,該等使用者輸出裝置中之一者可為顯示器。該顯示器可為陰極
射線管(cathode ray tube,CRT)、液晶顯示器(liquid crystal display,LCD),或任何其他類型之顯示器。
在一些實例中,儲存器750可包括經組配以在儲存操作模式下實施或操作的各種類型之記憶體。儲存器750可包括不同類型之儲存裝置中至少一者或其組合以儲存相對大量資料。此等不同類型之儲存裝置可包括(但不限於)以下各者中之一或多者:磁碟機、光碟機、磁帶機、內部儲存裝置、附接式儲存裝置、快閃記憶體、電池備用SDRAM(同步DRAM)、網路可存取儲存裝置,及/或其他類型之非揮發性記憶體(例如,相變記憶體(phase change memory,PCM))。在一些實例中,儲存器750可被包括為使用者I/O裝置730之部分,而非如圖7所描繪之分離元件。
根據一些實例,記憶體760可包括不同類型之記憶體中至少一者或其組合以包括RAM、DRAM、靜態RAM(SRAM)、相變材料RAM(PRAM)及/或其他類型之揮發性記憶體。在一些實例中,記憶體760可經組配以維持由網路I/O裝置730、CPU 770之元件及/或作業系統710使用之緩衝器以至少臨時儲存經接收資料。
根據一些實例,CPU 770可被實施為用於主機裝置700之中央處理單元。CPU 770可包括分離地具有一或多個處理器核心之一或多個處理器。在一些實例中,CPU 770可包括任何類型之處理器,諸如(例如),多核心處理器、精簡指令集電腦(reduced instruction set computer,RISC)、具有管線之處理器、複雜指令集電腦(complex
instruction set computer,CISC)、數位信號處理器(digital signal processor,DSP),等等。
在一些實例中,晶片組780可在作業系統710、網路使用者裝置730、使用者I/O裝置740、儲存器750、記憶體760、CPU 770或通信790當中提供相互通信。舉例來說,晶片組780可在作業系統710、使用者I/O裝置740、儲存器750與CPU 770之間提供相互通信以自儲存器750擷取資訊以將圖形顯示於包括於使用者I/O裝置740中之顯示器上。該等圖形可能已在包括於作業系統710中之作業系統之請求時由CPU 770呈現。
在一些實例中,通信790可包括用以使主機裝置700能夠在外部與在主機裝置700遠端之元件通信之邏輯及/或特徵。此等邏輯及/或特徵可包括經由一或多個有線、無線或光學網路而在有線、無線或光學通信通道或鏈路上通信。在橫越此等網路之通信中,通信790可根據呈任何版本之一或多個適用通信或網路連接標準而操作。又,在一些實例中,通信790可與網路I/O裝置730整合,以便接收/轉遞與至在主機裝置700遠端之元件之通信相關聯的資料。
如上文所提及,介面754可允許主機裝置700之硬體及/或韌體元件以通信方式耦接在一起。根據一些實例,介面754可根據一或多個協定或標準而操作。此等協定或標準可描述於諸如與以下各者相關聯之工業標準的一個或一或多個工業標準(包括後裔及變型)中:互積體電路
(I2C)規範、系統管理匯流排(SMBus)規範、加速圖形埠(Accelerated Graphics Port,AGP)規範、快速周邊組件互連(PCI Express)規範、通用串列匯流排(USB)規範、高清晰度多媒體介面(High-Definition Multimedia Interface,HDMI)標準、數位視覺介面(Digital Visual Interface,DVI)規範、BluetoothTM規範,或串列進階附接技術(SATA)規範。但,本發明不僅僅限於上述標準及關聯協定。
在一些實例中,主機裝置700可包括於計算裝置中。計算裝置之實例可包括(但不限於)實體終點站、伺服器、刀鋒伺服器、計算板、工作站、桌上型電腦、個人電腦(PC)或膝上型電腦、超行動電腦,等等。
至少一實例之一或多個態樣可藉由儲存於表示處理器內之各種邏輯之至少一機器可讀媒體上的代表性指令實施,該至少一機器可讀媒體在由一機器、計算裝置或系統讀取時使該機器、計算裝置或系統製作用以執行本文所描述之技術之邏輯。被稱作「IP核心」之此等表示可儲存於一有形機器可讀媒體上且供應至各種客戶或製造設施以載入至實際上製成該邏輯或處理器之製作機器中。
各種實例可使用硬體元件、軟體元件或此兩者之組合予以實施。在一些實例中,硬體元件可包括裝置、組件、處理器、微處理器、電路、電路元件(例如,電晶體、電阻器、電容器、電感器,等等)、積體電路、特殊應用積體電路(ASIC)、可程式化邏輯裝置(PLD)、數位信號處理器(DSP)、場可程式化閘陣列(FPGA)、記憶體單元、邏輯閘、
暫存器、半導體裝置、晶片、微晶片、晶片組,等等。在一些實例中,軟體元件可包括軟體組件、程式、應用程式、電腦程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、次常式、函式、方法、程序、軟體介面、應用程式介面(API)、指令集、計算程式碼、電腦程式碼、程式碼片段、電腦程式碼片段、字、值、符號或其任何組合。如一給定實施所需要,判定一實例是否使用硬體元件及/或軟體元件予以實施可根據諸如以下各者之任何數目個因素而變化:所要計算速率、功率位準、耐熱性、處理循環預算、輸入資料速率、輸出資料速率、記憶體資源、資料匯流排速度,及其他設計或效能約束。
一些實例可包括一製品或至少一電腦可讀媒體。一種電腦可讀媒體可包括一非暫時性儲存媒體以儲存邏輯。在一些實例中,該非暫時性儲存媒體可包括能夠儲存電子資料的一或多種類型之電腦可讀儲存媒體,包括揮發性記憶體或非揮發性記憶體、卸除式或非卸除式記憶體、抹除式或非抹除式記憶體、可寫入或可重寫記憶體,等等。在一些實例中,該邏輯可包括各種軟體元件,諸如,軟體組件、程式、應用程式、電腦程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、次常式、函式、方法、程序、軟體介面、API、指令集、計算程式碼、電腦程式碼、程式碼片段、電腦程式碼片段、字、值、符號或其任何組合。
根據一些實例,一種電腦可讀媒體可包括一非暫
時性儲存媒體以儲存或維持指令,該等指令在由一機器、計算裝置或系統執行時使該機器、計算裝置或系統執行根據所描述實例之方法及/或操作。該等指令可包括任何合適類型之程式碼,諸如,原始程式碼、經編譯程式碼、經解譯程式碼、可執行程式碼、靜態程式碼、動態程式碼,及其類似者。該等指令可根據一預定義電腦語言、方式或語法予以實施,以用於指示一機器、計算裝置或系統執行某一功能。該等指令可使用任何合適高階、低階、物件導向式、視覺、經編譯及/或經解譯程式設計語言予以實施。
可使用表達「在一實例中」或「一實例」連同其派生詞來描述一些實例。此等術語意謂結合該實例而描述之一特定特徵、結構或特性包括於至少一實例中。片語「在一實例中」於本說明書中之各處的出現未必皆指代同一實例。
可使用表達「耦接」及「連接」連同其派生詞來描述一些實例。此等術語未必意欲對於彼此同義。舉例來說,使用術語「連接」及/或「耦接」之描述可指示出兩個或兩個以上元件彼此進行直接實體或電氣接觸。然而,術語「耦接」亦可意謂兩個或兩個以上元件並不彼此進行直接接觸,而是仍彼此共同操作或互動。
應強調,發明摘要經提供以符合37 C.F.R.之章節1.72(b),其需要將允許讀者快速地確定技術揭示內容之本質的摘要。該摘要係在其將不用以解譯或限制申請專利範圍之範疇或含義之理解的情況下予以提交。此外,在前
述【實施方式】中,可看出,出於使本發明簡單化之目的而在單一實例中將各種特徵分組在一起。本發明方法不應被解譯為反映如下意圖:所主張實例需要多於各申請專利範圍中明確地敍述之特徵的特徵。實情為,如以下申請專利範圍所反映,發明性主題在於少於單一所揭示實例之所有特徵的特徵。因此,以下申請專利範圍據此併入至【實施方式】中,其中各申請專利範圍作為一分離實例而依賴於其自身。在附加申請專利範圍中,術語「包括」及「其中」分別用作各別術語「包含」及「其中」之通俗等效者。此外,術語「第一」、「第二」、「第三」等等僅用作標記,且並非意欲對其物件強加數值要求。
在一些實例中,可實施包括在耦接至一主機裝置之一輸入/輸出裝置處接收資料之方法。該資料可與維持於該輸入/輸出裝置處之一虛擬站介面相關聯。該虛擬站介面可以通信方式耦接至實施於該主機裝置處之一虛擬機。該資料可能已自該虛擬機或一網路元件中之一者予以發送,該網路元件能夠經由一網路通信鏈路而耦接至該輸入/輸出裝置。可基於用於供在該輸入/輸出裝置處接收該資料之一埠的一經指派之埠識別碼、用於該資料之識別資訊及該識別資訊之至少一部分之一發源端而將一切換識別指派至該資料。根據一些實例,可使用該經指派之切換識別作為一查找表之部分以判定用於在該輸入/輸出裝置處處理該資料之一或多個動作。
在一些實例中,此方法之實施可包括供接收該資
料之該埠包括以下各者中之一者:一實體埠,其能夠耦接至該網路通信鏈路;或一邏輯埠,其能夠耦接至一資料通道,該資料通道經配置以將資料自該虛擬機路由至實施於該主機裝置處之另一虛擬機。
根據一些實例,此方法之實施可包括:該識別資訊之至少該部分之該發源端將基於用於該資料之該識別資訊產生於該輸入/輸出裝置處而被識別為區域,或該資料發源端將基於用於該資料之該識別資訊產生於該輸入/輸出裝置外部而被識別為全域。對於此等實例,一區域識別可與一第一識別符相關聯且一全域識別可與一第二識別符相關聯。該經指派之切換識別可基於該發源端被識別為區域抑或全域而包括該第一識別符或該第二識別符中之一者。
在一些實例中,此方法之實施可包括該識別資訊之至少該部分之該發源端將被識別為區域。對於此等實例,用於該資料之該識別資訊可包括一資料通道識別號碼,該資料通道識別號碼係與以通信方式耦接至該虛擬機之該虛擬站介面相關聯。
根據一些實例,此方法之實施可包括該識別資訊之至少該部分之該發源端將被識別為區域。對於此等實例,用於該資料之該識別資訊可包括一預設識別號碼,該預設識別號碼係基於該資料與控制資料相關聯而產生於該輸入/輸出裝置處。該控制資料可關於在該網路元件與該虛擬機之間建立一資料通道。該資料通道係經由該虛擬站介面而路由。
在一些實例中,此方法之實施可包括依照一或多個乙太網路規範而操作該輸入/輸出裝置。該一或多個乙太網路規範可包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範。對於此等實例,該識別資訊之至少該部分之該發源端可被識別為全域,且該識別號碼可包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)中之一者。該S標籤或該E標籤可關於該網路元件與該虛擬機之間的一經建立之資料通道。該經建立之資料通道可經由該虛擬站介面而路由。
根據一些實例,此方法之實施可包括依照一或多個乙太網路規範而操作該I/O裝置。該一或多個乙太網路規範包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範。對於此等實例,該識別資訊之至少該部分之該發源端可被識別為區域,且該識別號碼將包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)中之一者。該S標籤或該E標籤可關於該虛擬機與該網路元件之間的一經建立之資料通道。該經建立之資料通道可經由該虛擬站介面而路由。
在一些實例中,此方法之實施可包括將與該I/O裝置之多個切換器相關聯之資訊儲存於一單一切換識別表中,該單一切換識別表維持於該輸入/輸出裝置處之一記憶體中。該資訊可包括用於該資料之該經指派之切換識別。
在一些實例中,此方法之實施可包括:使用該經指派之切換識別作為一查找表之部分包含該查找表將儲存
於該輸入/輸出裝置處之一記憶體中,該記憶體被配置為三元內容可定址記憶體(TCAM)。
根據一些實施例,至少一機器可讀媒體包含複數個指令,該複數個指令回應於在一計算裝置上執行而使該計算裝置進行如上文所提及之實例方法。
在一些實例中,一種設備或裝置可包括用於執行如上文所提及之實例方法的構件。
根據一些實例,一種實例設備或裝置可包括一處理器電路及一記憶體單元,該記憶體單元以通信方式耦接至該處理器電路。該記憶體單元可經配置以儲存用於可在該處理器電路上操作之邏輯的指令。該邏輯可經組配以在能夠耦接至一主機裝置之一輸入/輸出裝置處接收資料。該資料可具有與維持於該輸入/輸出裝置處之一虛擬站介面相關聯之一目的地。該虛擬站介面可能夠耦接至實施於該主機裝置處之一虛擬機。該資料可能已自該虛擬機或一網路元件中之一者予以發送,該網路元件能夠經由一網路通信鏈路而耦接至該輸入/輸出裝置。該邏輯亦可能已經組配以基於供在該輸入/輸出裝置處接收該資料的一經指派之埠識別符、用於該資料之識別資訊及該識別資訊之至少一部分之一發源端而將一切換識別指派至該資料。對於此等實例,該邏輯可經組配以使用該經指派之切換識別作為一查找表之部分以便判定用於在該輸入/輸出裝置處處理該資料之一或多個動作。
在用於該實例裝置之一些實例中,該記憶體單元
可包括揮發性記憶體。
在用於該實例裝置之一些實例中,供接收該資料之該埠可包括以下各者中之一者:一實體埠,其能夠耦接至該網路通信鏈路;或一邏輯埠,其能夠耦接至一資料通道,該資料通道經配置以將資料自該虛擬機路由至實施於該主機裝置處之另一虛擬機。
根據用於該實例裝置之一些實例,該識別資訊之至少該部分之該發源端可基於用於該資料之該識別資訊產生於該輸入/輸出裝置處而被識別為區域。該資料發源端亦可基於用於該資料之該識別資訊產生於該輸入/輸出裝置外部而被識別為全域。一區域識別可與一第一識別符相關聯且一全域識別可與一第二識別符相關聯。該經指派之切換識別可基於該發源端被識別為區域抑或全域而包括該第一識別符或該第二識別符中之一者。
在用於該實例裝置之一些實例中,該識別資訊之至少該部分之該發源端可被識別為區域。又,用於該資料之該識別資訊可包括一資料通道識別號碼,該資料通道識別號碼係與能夠耦接至該虛擬機之該虛擬站介面相關聯。
根據用於該實例裝置之一些實例,該識別資訊之至少該部分之該發源端可被識別為區域。對於此等實例,用於該資料之該識別資訊可包括一預設識別號碼,該預設識別號碼係基於該資料與控制資料相關聯而產生於該輸入/輸出裝置處。該控制資料可關於經由該虛擬站介面而在該網路元件與該虛擬機之間建立一資料通道。
在用於該實例裝置之一些實例中,該輸入/輸出裝置可經配置以依照一或多個乙太網路規範而操作,該一或多個乙太網路規範將包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範。對於此等實例,該識別資訊之至少該部分之該發源端可被識別為全域。該識別號碼可包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)中之一者。該S標籤或該E標籤可關於該網路元件與該虛擬機之間的一經建立之資料通道。該資料通道可經由該虛擬站介面而路由。
根據用於該實例裝置之一些實例,該輸入/輸出裝置可經配置以依照一或多個乙太網路規範而操作,該一或多個乙太網路規範將包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範。對於此等實例,該識別資訊之至少該部分之該發源端可被識別為區域,且該識別號碼將包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)中之一者。又,該S標籤或該E標籤可關於該虛擬機與該網路元件之間的一經建立之資料通道。該經建立之資料通道可經由該虛擬站介面而路由。
在用於該實例裝置之一些實例中,該邏輯亦可經組配以使用該經指派之切換識別作為儲存於該輸入/輸出裝置處之一記憶體中之一查找表的部分。該記憶體可被配置為三元內容可定址記憶體(TCAM)。
儘管已以特定於結構特徵及/或方法動作之語言
而描述主題,但應理解,附加申請專利範圍所界定之主題未必限於上文所描述之特定特徵或動作。實情為,上文所描述之特定特徵或動作被揭示為實施申請專利範圍之實例形式。
Claims (25)
- 一種用於網路通信之方法,其包含:在耦接至一主機裝置之一輸入/輸出裝置處接收資料,該資料係與維持於該輸入/輸出裝置處之一虛擬站介面相關聯,該虛擬站介面以通信方式耦接至實施於該主機裝置處之一虛擬機,該資料係自該虛擬機或一網路元件中之一者予以發送,該網路元件能夠經由一網路通信鏈路而耦接至該輸入/輸出裝置;基於用於在該輸入/輸出裝置處接收該資料所透過的埠之一經指派的埠識別符、用於該資料之識別資訊及該識別資訊之至少一部分之一發源端,而將一切換識別指派至該資料;使用該經指派之切換識別作為一查找表之部分以判定用於在該輸入/輸出裝置處處理該資料之一個或多個動作。
- 如申請專利範圍第1項之方法,接收該資料所透過之該埠包括下列中之一者:能夠耦接至該網路通信鏈路的一實體埠;或者能夠耦接至一資料通道的一邏輯埠,該資料通道經配置以將資料自該虛擬機路由至實施於該主機裝置處之另一虛擬機。
- 如申請專利範圍第1項之方法,該識別資訊之至少該部分之該發源端基於用於在該輸入/輸出裝置處產生的該資料之該識別資訊而被識別為區域,或者該資料發源端 將基於用於在該輸入/輸出裝置外部產生的該資料之該識別資訊而被識別為全域,一區域識別係與一第一識別符相關聯且一全域識別係與一第二識別符相關聯,該經指派之切換識別將基於該發源端被識別為區域抑或全域而包括該第一識別符或該第二識別符其中之一者。
- 如申請專利範圍第1項之方法,該識別資訊的至少該部分之該發源端被識別為區域,且用於該資料之該識別資訊包括一資料通道識別號碼,該資料通道識別號碼係與以通信方式耦接至該虛擬機之該虛擬站介面相關聯。
- 如申請專利範圍第1項之方法,該識別資訊之至少該部分之該發源端被識別為區域,且用於該資料之該識別資訊包括一預設識別號碼,該預設識別號碼係基於與控制資料相關聯之該資料而產生於該輸入/輸出裝置處,該控制資料係關於在該網路元件與該虛擬機之間建立一資料通道,該資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第1項之方法,其包含依照一個或多個乙太網路規範而操作該輸入/輸出裝置,該一個或多個乙太網路規範包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範,該識別資訊之至少該部分之該發源端被識別為全域,且該識別號碼包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)其中之一者。
- 如申請專利範圍第6項之方法,該S標籤或該E標籤係關於該網路元件與該虛擬機之間的一經建立之資料通 道,該經建立之資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第1項之方法,其包含依照一個或多個乙太網路規範而操作該I/O裝置,該一個或多個乙太網路規範包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範,該識別資訊之至少該部分之該發源端被識別為區域,且該識別號碼將包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)其中之一者。
- 如申請專利範圍第8項之方法,該S標籤或該E標籤係關於該虛擬機與該網路元件之間的一經建立之資料通道,該經建立之資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第1項之方法,其包含與該I/O裝置之多個切換器相關聯之資訊儲存於一單一切換識別表中,該單一切換識別表維持於該輸入/輸出裝置處之一記憶體中。
- 如申請專利範圍第10項之方法,其包含:該資訊包括用於該資料的該經指派之切換識別。
- 如申請專利範圍第1項之方法,使用該經指派之切換識別作為一查找表之部分包含要將該查找表儲存於該輸入/輸出裝置處之一記憶體中,該記憶體被配置為三元可定址內容記憶體(TCAM)。
- 至少一種機器可讀媒體,其包含複數個指令,該複數個指令回應於在一計算裝置上執行而使該計算裝置進行一如申請專利範圍第1項至第12項中任一項之方法。
- 一種設備,其包含用於執行如申請專利範圍第1項至第12項中任一項之方法的構件。
- 一種電子設備,其包含:一處理器電路;以及一記憶體單元,其以通信方式耦接至該處理器電路,該記憶體單元經配置以儲存用於可在該處理器電路上操作之邏輯的指令,該邏輯經組配以在能夠耦接至一主機裝置之一輸入/輸出裝置處接收資料,該資料具有與維持於該輸入/輸出裝置處之一虛擬站介面相關聯的一目的地,該虛擬站介面能夠耦接至實施於該主機裝置處之一虛擬機,該資料係自該虛擬機或一網路元件中之一者予以發送,該網路元件能夠經由一網路通信鏈路而耦接至該輸入/輸出裝置,該邏輯亦經組配以基於用於在該輸入/輸出裝置處接收該資料所透過的埠之一經指派的埠識別符、用於該資料之識別資訊、及該識別資訊之至少一部分之一發源端,而將一切換識別指派至該資料,該邏輯經組配以使用該經指派之切換識別作為一查找表之部分以便判定用於在該輸入/輸出裝置處處理該資料之一個或多個動作。
- 如申請專利範圍第15項之電子設備,其包含:該記憶體單元包括揮發性記憶體。
- 如申請專利範圍第15項之電子設備,接收該資料所透過之該埠包括下列中之一者:能夠耦接至該網路通信鏈路的一實體埠;或者能夠耦接至一資料通道的一邏輯 埠,該資料通道經配置以將資料自該虛擬機路由至實施於該主機裝置處之另一虛擬機。
- 如申請專利範圍第15項之電子設備,該識別資訊之至少該部分之該發源端基於用於在該輸入/輸出裝置處產生的該資料之該識別資訊而被識別為區域,或者該資料發源端將基於用於在該輸入/輸出裝置外部產生的該資料之該識別資訊而被識別為全域,一區域識別係與一第一識別符相關聯且一全域識別係與一第二識別符相關聯,該經指派之切換識別將基於該發源端被識別為區域抑或全域而包括該第一識別符或該第二識別符中之一者。
- 如申請專利範圍第18項之電子設備,其包含:該識別資訊的至少該部分之該發源端將被識別為區域,且用於該資料之該識別資訊將包括一資料通道識別號碼,該資料通道識別號碼係與能夠耦接至該虛擬機之該虛擬站介面相關聯。
- 如申請專利範圍第18項之電子設備,其包含:該識別資訊之至少該部分之該發源端將被識別為區域,且用於該資料之該識別資訊將包括一預設識別號碼,該預設識別號碼係基於與控制資料相關聯之該資料而產生於該輸入/輸出裝置處,該控制資料係關於在該網路元件與該虛擬機之間建立一資料通道,該資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第15項之電子設備,該輸入/輸出裝置 經配置以依照一個或多個乙太網路規範而操作,該一個或多個乙太網路規範包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範,該識別資訊之至少該部分之該發源端被識別為全域,且該識別號碼包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)其中之一者。
- 如申請專利範圍第21項之電子設備,該S標籤或該E標籤係關於該網路元件與該虛擬機之間的一經建立之資料通道,該資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第15項之電子設備,該輸入/輸出裝置經配置以依照一個或多個乙太網路規範而操作,該一個或多個乙太網路規範包括一美國電機電子工程師學會(IEEE)802.1Qbg乙太網路規範或一IEEE 802.1BR乙太網路規範,該識別資訊之至少該部分之該發源端被識別為區域,且該識別號碼包括一服務標籤(S標籤)或一橋接埠延伸標籤(E標籤)其中之一者。
- 如申請專利範圍第23項之電子設備,該S標籤或該E標籤係關於該虛擬機與該網路元件之間的一經建立之資料通道,該經建立之資料通道係經由該虛擬站介面而路由。
- 如申請專利範圍第15項之電子設備,其包含:該邏輯亦經組配以使用該經指派之切換識別作為儲存於該輸入/輸出裝置處之一記憶體中之一查找表的部分,該記憶體被配置為三元可定址內容記憶體(TCAM)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
??PCT/US12/31276 | 2012-03-29 | ||
PCT/US2012/031276 WO2013147805A1 (en) | 2012-03-29 | 2012-03-29 | Techniques for using an assigned switch identification at an input/output device |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201404097A TW201404097A (zh) | 2014-01-16 |
TWI651957B true TWI651957B (zh) | 2019-02-21 |
Family
ID=49260867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102106685A TWI651957B (zh) | 2012-03-29 | 2013-02-26 | 使用經指派之切換識別於輸入/輸出裝置上的技術 |
Country Status (5)
Country | Link |
---|---|
KR (1) | KR101617210B1 (zh) |
CN (2) | CN104221343B (zh) |
DE (1) | DE112012006126T5 (zh) |
TW (1) | TWI651957B (zh) |
WO (1) | WO2013147805A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9823849B2 (en) * | 2015-06-26 | 2017-11-21 | Intel Corporation | Method and apparatus for dynamically allocating storage resources to compute nodes |
TWI622884B (zh) * | 2016-11-17 | 2018-05-01 | 宏碁股份有限公司 | 根複合體管理方法及根複合體 |
CN109426545B (zh) * | 2017-08-31 | 2023-02-03 | 阿里巴巴集团控股有限公司 | 一种数据通信方法及装置 |
CN112532756B (zh) * | 2019-09-17 | 2023-10-24 | 华为技术有限公司 | 接口扩展方法、装置和系统 |
CN114328623A (zh) * | 2021-12-28 | 2022-04-12 | 深圳云天励飞技术股份有限公司 | 芯片系统中的数据传输处理方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090292858A1 (en) * | 2008-05-23 | 2009-11-26 | Vmware, Inc. | Distributed Virtual Switch for Virtualized Computer Systems |
US20100058336A1 (en) * | 2008-08-28 | 2010-03-04 | Intel Corporation | Assignment, at least in part, of at least one virtual machine to at least one packet |
US20100214949A1 (en) * | 2009-02-23 | 2010-08-26 | Cisco Technology, Inc. | Distributed data center access switch |
US20110286380A1 (en) * | 2010-05-21 | 2011-11-24 | Yee Yi Zhu | Wireless workgroup bridge for network viryualization |
US8130641B2 (en) * | 2009-03-13 | 2012-03-06 | Hewlett-Packard Development Company, L.P. | Methods and systems for managing network traffic within a virtual network system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100399767C (zh) * | 2003-09-26 | 2008-07-02 | 华为技术有限公司 | 一种虚拟交换机系统接入ip公网的方法 |
US7693158B1 (en) * | 2003-12-22 | 2010-04-06 | Extreme Networks, Inc. | Methods and systems for selectively processing virtual local area network (VLAN) traffic from different networks while allowing flexible VLAN identifier assignment |
US8838743B2 (en) * | 2004-02-13 | 2014-09-16 | Intel Corporation | Apparatus and method for a dynamically extensible virtual switch |
US7620741B2 (en) * | 2005-04-22 | 2009-11-17 | Sun Microsystems, Inc. | Proxy-based device sharing |
TW200917240A (en) * | 2007-10-05 | 2009-04-16 | Sheng-Chi Chen | Perpendicular magnetic recording film and method of fabricating the same |
WO2010028028A1 (en) * | 2008-09-08 | 2010-03-11 | Virginia Tech Intellectual Properties | Systems, devices, and methods for managing energy usage |
US8417800B2 (en) * | 2010-07-16 | 2013-04-09 | Broadcom Corporation | Method and system for network configuration and/or provisioning based on open virtualization format (OVF) metadata |
CN102316001B (zh) * | 2011-10-13 | 2014-02-05 | 杭州华三通信技术有限公司 | 一种虚拟网络连接配置实现方法和网络设备 |
-
2012
- 2012-03-29 CN CN201280071997.9A patent/CN104221343B/zh active Active
- 2012-03-29 KR KR1020147027286A patent/KR101617210B1/ko not_active IP Right Cessation
- 2012-03-29 CN CN201710697402.5A patent/CN107508767B/zh active Active
- 2012-03-29 DE DE112012006126.8T patent/DE112012006126T5/de not_active Ceased
- 2012-03-29 WO PCT/US2012/031276 patent/WO2013147805A1/en active Application Filing
-
2013
- 2013-02-26 TW TW102106685A patent/TWI651957B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090292858A1 (en) * | 2008-05-23 | 2009-11-26 | Vmware, Inc. | Distributed Virtual Switch for Virtualized Computer Systems |
US20100058336A1 (en) * | 2008-08-28 | 2010-03-04 | Intel Corporation | Assignment, at least in part, of at least one virtual machine to at least one packet |
US20100214949A1 (en) * | 2009-02-23 | 2010-08-26 | Cisco Technology, Inc. | Distributed data center access switch |
US8130641B2 (en) * | 2009-03-13 | 2012-03-06 | Hewlett-Packard Development Company, L.P. | Methods and systems for managing network traffic within a virtual network system |
US20110286380A1 (en) * | 2010-05-21 | 2011-11-24 | Yee Yi Zhu | Wireless workgroup bridge for network viryualization |
Also Published As
Publication number | Publication date |
---|---|
TW201404097A (zh) | 2014-01-16 |
KR101617210B1 (ko) | 2016-05-18 |
CN107508767B (zh) | 2020-10-02 |
CN104221343A (zh) | 2014-12-17 |
CN107508767A (zh) | 2017-12-22 |
DE112012006126T5 (de) | 2014-12-24 |
CN104221343B (zh) | 2017-09-26 |
KR20140139522A (ko) | 2014-12-05 |
WO2013147805A1 (en) | 2013-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9280367B2 (en) | Techniques for using an assigned switch identification at an input/output device | |
US11005755B2 (en) | Packet processing method in cloud computing system, host, and system | |
US11748148B2 (en) | Logical processing for containers | |
CN113630278B (zh) | 使用物理位置修改分布式虚拟网元的行为 | |
US8964600B2 (en) | Methods of forming virtual network overlays | |
US8806025B2 (en) | Systems and methods for input/output virtualization | |
TWI651957B (zh) | 使用經指派之切換識別於輸入/輸出裝置上的技術 | |
WO2018086013A1 (zh) | 云计算系统中报文处理的方法、主机和系统 | |
JP6221143B2 (ja) | I/o相互接続を介するマルチプロトコルのトンネリング | |
US10764087B2 (en) | Open virtualized multitenant network scheme servicing virtual machine and container based connectivity | |
US9454189B1 (en) | Systems and methods for distributing power in a server system | |
US9866406B2 (en) | Overlay switch | |
US20220286392A1 (en) | Classification and forwarding node for integrating disparate headend traffic ingress services with disparate backend services | |
US9912787B2 (en) | Zero-copy multiplexing using copy-on-write | |
US10171384B2 (en) | Method to configure network bonds as a port on an integration bridge for a virtualized multilayer switch |