TWI516039B - Flexible and scalable enhanced transmission selection method for network fabrics - Google Patents

Flexible and scalable enhanced transmission selection method for network fabrics Download PDF

Info

Publication number
TWI516039B
TWI516039B TW101145119A TW101145119A TWI516039B TW I516039 B TWI516039 B TW I516039B TW 101145119 A TW101145119 A TW 101145119A TW 101145119 A TW101145119 A TW 101145119A TW I516039 B TWI516039 B TW I516039B
Authority
TW
Taiwan
Prior art keywords
vlan
bandwidth
channels
network
ieee
Prior art date
Application number
TW101145119A
Other languages
Chinese (zh)
Other versions
TW201338445A (en
Inventor
威廉J 阿姆斯壯
克勞迪 拜索
張志任
米爾席 葛薩特
喜瑞爾J 米肯伯格
佛雷迪D 耐薩
肯尼斯M 沃克
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 TW201338445A publication Critical patent/TW201338445A/en
Application granted granted Critical
Publication of TWI516039B publication Critical patent/TWI516039B/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • 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/4645Details on frame tagging
    • H04L12/465Details on frame tagging wherein a single frame includes a plurality of VLAN tags
    • 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/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/522Dynamic queue service slot or variable bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]

Description

用於網路光纖通路網路之靈活性及可擴縮之增強之傳輸選擇方法 Transmission selection method for flexibility and scalability of network Fibre Channel networks

本發明大體而言係關於在網路光纖通道網路中指派頻寬,或更具體而言,係關於向網路光纖通道網路內之特定邏輯資料流指派頻寬。 The present invention relates generally to assigning bandwidth in a network Fibre Channel network or, more specifically, to assigning a bandwidth to a particular logical data stream within a network Fibre Channel network.

電腦系統時常使用一起耦接於一共同機箱中之多個電腦。該等電腦可為藉由機箱內之共同基幹耦接的單獨伺服器。每一伺服器為一可插入板,其包括至少一處理器、一板上記憶體及一輸入/輸出(I/O)介面。另外,該等伺服器可連接至交換器以擴展伺服器之能力。舉例而言,交換器可准許伺服器存取額外乙太網路或PCIe槽,以及准許相同或不同機箱中之伺服器之間的通信。 Computer systems often use multiple computers that are coupled together in a common chassis. The computers may be separate servers coupled by a common backbone within the chassis. Each server is an insertable board that includes at least one processor, an onboard memory, and an input/output (I/O) interface. In addition, the servers can be connected to the switch to extend the capabilities of the server. For example, the switch can grant the server access to additional Ethernet or PCIe slots, as well as permit communication between servers in the same or different chassis.

複數個交換器可經組合以形成一邏輯交換器。另外,複數個交換器與伺服器之間的每一實體連接可經管理而使得向連接中之特定資料流指派一最小量之頻寬。亦即,實體連接中之一資料流相比於另一者可被指派較多頻寬。增加系統管理員將頻寬指派給特定資料流之能力亦增加系統管理員對網路之控制。 A plurality of switches can be combined to form a logic switch. In addition, each physical connection between the plurality of switches and the server can be managed to assign a minimum amount of bandwidth to a particular data stream in the connection. That is, one of the physical connections may be assigned more bandwidth than the other. Increasing the ability of system administrators to assign bandwidth to specific streams also increases the system administrator's control over the network.

本發明之實施例揭示一種提供連接兩個計算器件之實體連接的方法及電腦可讀儲存媒體,其中流過該實體連接之網路訊務在邏輯上劃分為複數個虛擬區域網路(VLAN)通道。該方法及電腦可讀儲存媒體在該複數個VLAN通道中 之至少兩者之間分配該實體連接之一頻寬,且在複數個訊務類別之間再劃分分配至該複數個VLAN通道中之一者的頻寬。 Embodiments of the present invention disclose a method and a computer readable storage medium for providing a physical connection between two computing devices, wherein network traffic flowing through the entity is logically divided into a plurality of virtual area networks (VLANs) aisle. The method and the computer readable storage medium are in the plurality of VLAN channels A bandwidth of the physical connection is allocated between at least two of the two, and a bandwidth allocated to one of the plurality of VLAN channels is further divided among the plurality of traffic classes.

在另一實施例中,一種網路器件包含一埠,該埠經組態以經由一實體連接連接至一計算器件,其中流過該實體連接之網路訊務在邏輯上劃分為複數個虛擬區域網路(VLAN)通道。該網路器件亦包含一頻寬排程器,該頻寬排程器經組態以在該複數個VLAN通道中之至少兩者之間分配該埠之一頻寬,且在複數個訊務類別之間再劃分分配至該複數個VLAN通道中之一者的頻寬。 In another embodiment, a network device includes a port configured to connect to a computing device via a physical connection, wherein network traffic flowing through the physical connection is logically divided into a plurality of virtual Local area network (VLAN) channel. The network device also includes a bandwidth scheduler configured to allocate one of the bandwidths between at least two of the plurality of VLAN channels, and in the plurality of traffic The classes are further divided into bandwidths assigned to one of the plurality of VLAN channels.

為能詳細理解獲得以上所敍述態樣之方式,已藉由參看附圖對以上簡要概述的本發明之實施例進行更特定描述。 The embodiments of the present invention briefly summarized above will be described more specifically by reference to the accompanying drawings.

然而,應注意,附圖僅說明本發明之典型實施例,且因此不應將其視為對本發明範疇之限制,此係因為本發明可容許其他同等有效之實施例。 It is to be understood, however, that the appended claims

IEEE 802.1Q(或802.1p)准許將一實體連接上之資料流在邏輯上劃分為八個不同優先級或訊務類別。該標準亦提供用於在八個訊務類別之間分裂實體連接之總頻寬的技術。舉例而言,管理員可設定必須提供至給定訊務類別之最小頻寬。為了提供額外之靈活性,IEEE 802.1Qaz(後文中稱作增強之傳輸選擇(ETS))提供用於在訊務類別之間重新分配頻寬的標準。當指派給一訊務類別之網路訊務不使用其經分配之頻寬時,ETS准許其他訊務類別使用該可用頻 寬。ETS可甚至與嚴格之優先級共存--亦即,用於特定訊務類別之頻寬不可被共用。若用於兩個訊務類別之頻寬並非嚴格之優先級,則ETS允許一訊務類別之未使用頻寬由另一訊務類別使用。舉例而言,若與兩個訊務類別相關聯之資料流為叢發型(亦即,經歷短時段之高負載),則只要該等高負載不同時發生,當前經歷高負載之訊務類別即可使用指派給另一訊務類別之頻寬中的一些或所有。若該等高負載同時發生以使得各訊務類別使用所有經分配頻寬,則ETS不允許一訊務類別自另一者借用頻寬。 IEEE 802.1Q (or 802.1p) permits the logical division of data streams on a physical connection into eight different priority or traffic classes. The standard also provides techniques for splitting the total bandwidth of physical connections between eight traffic classes. For example, an administrator can set a minimum bandwidth that must be provided to a given traffic category. To provide additional flexibility, IEEE 802.1Qaz (hereafter referred to as Enhanced Transmission Selection (ETS)) provides a standard for reallocating bandwidth between traffic classes. When the network traffic assigned to a traffic class does not use its allocated bandwidth, ETS allows other traffic classes to use the available frequency. width. ETS can even coexist with strict priorities - that is, the bandwidth used for a particular traffic class cannot be shared. If the bandwidth used for the two traffic classes is not a strict priority, the ETS allows the unused bandwidth of one traffic class to be used by another traffic class. For example, if the data stream associated with two traffic classes is a cluster (ie, experiencing a high load for a short period of time), as long as the high loads do not occur simultaneously, the traffic category currently experiencing high load is Some or all of the bandwidths assigned to another traffic class may be used. If the high load occurs simultaneously such that each traffic class uses all of the allocated bandwidth, the ETS does not allow one traffic class to borrow bandwidth from the other.

IEEE 802.1Q亦標準化虛擬區域網路(VLAN)在聚合式增強型乙太網路(CEE)網路中的使用。大體而言,VLAN准許實體LAN之終端站分組在一起,即使LAN之該等終端站不位於同一網路交換器上亦如此。亦即,與兩個不同交換器相關聯之兩個實體連接可在邏輯上經連接而為同一LAN(亦即,VLAN)之部分。封包包括一VLAN ID(亦即,VLAN標籤),其將該等封包指派給一特定VLAN。VLAN提供按照傳統由路由器所提供之分段服務且增加LAN之可擴縮性、安全性及網路管理。 IEEE 802.1Q also standardizes the use of virtual local area networks (VLANs) in a Converged Enhanced Ethernet (CEE) network. In general, VLANs permit end stations of a physical LAN to be grouped together, even if the terminal stations of the LAN are not located on the same network switch. That is, two physical connections associated with two different switches can be logically connected to be part of the same LAN (ie, VLAN). The packet includes a VLAN ID (i.e., a VLAN tag) that assigns the packets to a particular VLAN. VLANs provide segmentation services that are traditionally provided by routers and increase LAN scalability, security, and network management.

IEEE 802.1Q提供12個位元用於識別服務VLAN(S-VLAN)--亦即,4096個可唯一定址之S-VLAN。後來之路由標準添加每一S-VLAN可具有複數個相關聯之客戶VLAN(C-VLAN)。在IEEE 802.1QinQ中,例如,每一S-VLAN可與高達4096個C-VLAN相關聯。遵循此標準之LAN可具有高達16,777,216個VLAN(2^12*2^12)。然而, IEEE 802.1Q及ETS僅提供八個不同訊務類別,該八個不同訊務類別可用以控制一特定實體連接(或鏈路)中之頻寬。替代於僅僅依賴於此等八個訊務類別來管理頻寬,本文中所論述之實施例揭示使用一增強之ETS排程器來將實體連接之頻寬分配給個別VLAN。替代於僅僅依賴於訊務類別而使用VLAN ID准許網路器件將頻寬分配給例如數百萬個唯一VLAN。因此,VLAN ID之使用可增加網路光纖通道網路之細微控制及其效能。 IEEE 802.1Q provides 12 bits for identifying Service VLANs (S-VLANs) - that is, 4096 uniquely addressable S-VLANs. Later routing standards add each S-VLAN to have a plurality of associated guest VLANs (C-VLANs). In IEEE 802.1QinQ, for example, each S-VLAN can be associated with up to 4096 C-VLANs. LANs that follow this standard can have up to 16,777,216 VLANs (2^12*2^12). however, IEEE 802.1Q and ETS provide only eight different traffic classes that can be used to control the bandwidth in a particular physical connection (or link). Instead of relying solely on these eight traffic classes to manage bandwidth, the embodiments discussed herein disclose the use of an enhanced ETS scheduler to assign the bandwidth of a physical connection to an individual VLAN. Instead of relying solely on the traffic class, the VLAN ID is used to permit the network device to allocate bandwidth to, for example, millions of unique VLANs. Therefore, the use of VLAN IDs can increase the granular control of network Fibre Channel networks and their performance.

在下文中,參考本發明之實施例。然而,應理解,本發明不限於特定所描述實施例。實情為,涵蓋以下特徵及元件(不論是否與不同實施例相關)之任何組合以實施且實踐本發明。另外,儘管本發明之實施例可達成優於其他可能解決方案及/或優於先前技術之優點,但特定優點是否由給定實施例達成並非對本發明之限制。因此,以下態樣、特徵、實施例及優點僅為說明性的且除在(若干)請求項中明確敍述以外不被視為隨附申請專利範圍之要素或限制。同樣,對「本發明」之提及不應被視為對本文中所揭示之任何發明性標的物之概括,且除在(若干)請求項中明確敍述以外不應被視為隨附申請專利範圍之要素或限制。 In the following, reference is made to embodiments of the invention. However, it should be understood that the invention is not limited to the particular described embodiments. In fact, any combination of the following features and elements (whether or not related to different embodiments) is contemplated to implement and practice the invention. In addition, although an embodiment of the present invention may achieve advantages over other possible solutions and/or advantages over the prior art, whether a particular advantage is achieved by a given embodiment is not a limitation of the invention. Therefore, the following aspects, features, embodiments and advantages are merely illustrative and are not to be considered as an element or limitation of the scope of the appended claims. Also, the reference to "the invention" is not to be construed as a summary of any inventive subject matter disclosed herein, and The elements or limitations of the scope.

如熟習此項技術者將瞭解,本發明之態樣可體現為系統、方法或電腦程式產品。相應地,本發明之態樣可採用完全硬體實施例、完全軟體實施例(包括韌體、常駐軟體、微碼等)或組合軟體與硬體態樣之實施例的形式,該等實施例在本文中皆可通稱為「電路」、「模組」或「系 統」。另外,本發明之態樣可採用體現於一或多個電腦可讀媒體中之電腦程式產品之形式,該一或多個電腦可讀媒體具有體現於其上的電腦可讀程式碼。 As will be appreciated by those skilled in the art, aspects of the invention may be embodied in a system, method or computer program product. Accordingly, aspects of the present invention may take the form of a complete hardware embodiment, a fully software embodiment (including firmware, resident software, microcode, etc.) or a combination of soft and hard aspects, such embodiments This article can be referred to as "circuit", "module" or "system" System." Additionally, aspects of the invention may be in the form of a computer program product embodied in one or more computer readable media having computer readable code embodied thereon.

可利用一或多個電腦可讀媒體之任何組合。電腦可讀媒體可為電腦可讀信號媒體或電腦可讀儲存媒體。舉例而言,電腦可讀儲存媒體可為(但不限於)電子、磁性、光學、電磁、紅外線或半導體系統、裝置或器件,或前述系統、裝置或器件的任何合適組合。電腦可讀儲存媒體之更具體實例(非詳盡清單)將包括以下各者:具有一或多條電線之電連接、攜帶型電腦磁片、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可抹除可程式化唯讀記憶體(EPROM或快閃記憶體)、光纖、攜帶型光碟唯讀記憶體(CD-ROM)、光學儲存器件、磁性儲存器件,或前述各者之任何合適組合。在本文件之上下文中,電腦可讀儲存媒體可為可含有或儲存供指令執行系統、裝置或器件使用或結合指令執行系統、裝置或器件而使用之程式的任何有形媒體。 Any combination of one or more computer readable media may be utilized. The computer readable medium can be a computer readable signal medium or a computer readable storage medium. For example, a computer readable storage medium can be, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing systems, devices, or devices. More specific examples (non-exhaustive list) of computer readable storage media will include the following: electrical connections with one or more wires, portable computer magnetic disks, hard disks, random access memory (RAM), read only Memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable optical disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or the foregoing Any suitable combination of each. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

電腦可讀信號媒體可包括經傳播之資料信號,該經傳播之資料信號具有體現於其中(例如,在基頻中或作為載波之部分)之電腦可讀程式碼。此經傳播信號可採用多種形式中之任一者,包括但不限於電磁、光學或其任何合適組合。電腦可讀信號媒體可為並非電腦可讀儲存媒體且可傳達、傳播或輸送供指令執行系統、裝置或器件使用或結合指令執行系統、裝置或器件而使用之程式的任何電腦可讀 媒體。 The computer readable signal medium can include a propagated data signal having a computer readable code embodied therein (eg, in a baseband or as part of a carrier). The propagated signal can take any of a variety of forms including, but not limited to, electromagnetic, optical, or any suitable combination thereof. The computer readable signal medium can be any computer readable computer that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with the instruction execution system, apparatus, or device. media.

可使用任何適當媒體來傳輸體現於電腦可讀媒體上之程式碼,適當媒體包括但不限於無線、有線、光纖纜線、RF等或前述各者之任何合適組合。 Any suitable medium may be used to transmit the code embodied on a computer readable medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

可以一或多種程式設計語言之任何組合來撰寫用於執行本發明之態樣之操作的電腦程式碼,該一或多種程式設計語言包括諸如Java、Smalltalk、C++或其類似者之物件導向式程式設計語言及諸如「C」程式設計語言或類似程式設計語言之習知程序性程式設計語言。程式碼可完全在使用者電腦上執行,部分地在使用者電腦上執行,作為獨立套裝軟體而執行,部分地在使用者電腦上執行且部分地在遠端電腦上執行,或完全在遠端電腦或伺服器上執行。在完全在遠端電腦或伺服器上執行的情境中,遠端電腦可經由任何類型之網路(包括區域網路(LAN)或廣域網路(WAN))連接至使用者電腦,或可連接至外部電腦(例如,使用網際網路服務提供者,經由網際網路)。 Computer code for performing aspects of the present invention may be written in any combination of one or more programming languages, including object oriented programs such as Java, Smalltalk, C++, or the like. A design language and a conventional procedural programming language such as a "C" programming language or a similar programming language. The code can be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on the remote computer, or completely remotely. Executed on a computer or server. In situations where it is executed entirely on a remote computer or server, the remote computer can be connected to the user's computer via any type of network, including local area network (LAN) or wide area network (WAN), or can be connected to External computer (for example, using an internet service provider, via the internet).

下文參考根據本發明之實施例之方法、裝置(系統)及電腦程式產品的流程圖說明及/或方塊圖來描述本發明之態樣。應理解,可藉由電腦程式指令來實施該等流程圖說明及/或方塊圖之每一方塊及該等流程圖說明及/或方塊圖中之方塊的組合。可將此等電腦程式指令提供至通用電腦、專用電腦或其他可程式化資料處理裝置之一處理器以產生一機器,以使得經由該電腦或其他可程式化資料處理裝置之該處理器而執行之指令產生用於實施在該或該等流程圖 及/或方塊圖方塊中所指定之功能/動作之構件。 Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system) and computer program products according to embodiments of the present invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of the block diagrams and/or blocks in the block diagrams can be implemented by computer program instructions. The computer program instructions can be provided to a processor of a general purpose computer, a special purpose computer or other programmable data processing device to generate a machine for execution by the processor of the computer or other programmable data processing device The instructions are generated for implementation in the or the flowcharts And/or the components of the function/action specified in the block diagram.

亦可將此等電腦程式指令儲存於一電腦可讀媒體中,該電腦可讀媒體可指導電腦、其他可程式化資料處理裝置或其他器件以特定方式發揮作用,使得儲存於該電腦可讀媒體中之指令產生一製作物品,該製作物品包括實施在該或該等流程圖及/或方塊圖方塊中所指定之功能/動作的指令。 The computer program instructions can also be stored in a computer readable medium that directs the computer, other programmable data processing device, or other device to function in a particular manner for storage on the computer readable medium. The instructions in the middle generate a production item that includes instructions for implementing the functions/actions specified in the flowcharts and/or block diagrams.

亦可將該等電腦程式指令載入至電腦、其他可程式化資料處理裝置或其他器件上,以使一系列操作步驟在該電腦、其他可程式化裝置或其他器件上執行以產生一電腦實施程序,使得在該電腦或其他可程式化裝置上執行之指令提供用於實施在該或該等流程圖及/或方塊圖方塊中所指定之功能/動作的程序。 The computer program instructions can also be loaded onto a computer, other programmable data processing device or other device to cause a series of operational steps to be performed on the computer, other programmable device or other device to produce a computer implementation The program causes instructions executed on the computer or other programmable device to provide a program for implementing the functions/acts specified in the flowcharts and/or block diagrams.

可經由雲端計算基礎結構將本發明之實施例提供至終端使用者。雲端計算大體上指代經由網路提供可擴縮之計算資源作為服務。更正式而言,可將雲端計算定義為提供在計算資源與其基礎技術架構(例如,伺服器、儲存器、網路)之間的抽象之計算能力,從而使得能夠對可組態計算資源之一共用集區進行便利、按需網路存取,該等可組態計算資源可藉由最少之管理努力或服務提供者互動而迅速地佈建及發行。因此,雲端計算允許使用者存取「雲端」中之虛擬計算資源(例如,儲存器、資料、應用程式及甚至完全虛擬化之計算系統),而無需考慮用以提供該等計算資源的基礎實體系統(或彼等系統之位置)。 Embodiments of the present invention can be provided to end users via a cloud computing infrastructure. Cloud computing generally refers to providing scalable computing resources as a service over a network. More formally, cloud computing can be defined as providing the ability to compute abstractions between computing resources and their underlying technology architecture (eg, servers, storage, networking), enabling one of the configurable computing resources Shared pools for convenient, on-demand network access, which can be quickly deployed and distributed with minimal administrative effort or service provider interaction. Therefore, cloud computing allows users to access virtual computing resources (eg, storage, data, applications, and even fully virtualized computing systems) in the "cloud" without regard to the underlying entities used to provide such computing resources. System (or the location of their systems).

通常,基於按使用計費將雲端計算資源提供至使用者,其中僅針對實際上所使用之計算資源(例如,由使用者或由該使用者執行個體化之眾多虛擬化系統所消耗之儲存空間的量)向使用者收費。使用者可跨越網際網路在任何時間且自任一處存取駐存於雲端中之資源中的任一者。在本發明之上下文中,使用者可存取在伺服器上執行或儲存於伺服器上之在雲端中可用的應用程式或相關資料。舉例而言,應用程式可在實施雲端中之虛擬交換器的伺服器上執行。如此操作允許使用者自附接至連接至雲端之網路(例如,網際網路)的任何計算系統存取此資訊。 Typically, cloud computing resources are provided to users based on usage-based billing, only for the computing resources actually used (eg, storage space consumed by the user or by the user to perform individualized virtualization systems) The amount) charges the user. The user can access any of the resources residing in the cloud at any time and from anywhere on the Internet. In the context of the present invention, the user has access to applications or related materials available in the cloud that are executed on the server or stored on the server. For example, an application can be executed on a server that implements a virtual switch in the cloud. Doing so allows the user to access this information from any computing system attached to a network connected to the cloud (eg, the Internet).

圖1說明根據本發明之一實施例的包括虛擬交換器之系統架構。第一伺服器105可包括耦接至記憶體110之至少一處理器109。處理器109可表示一或多個處理器(例如,微處理器)或多核心處理器。記憶體110可表示包含伺服器105之主儲存器的隨機存取記憶體(RAM)裝置,以及記憶體之補充層級,該等補充層級例如快取記憶體、非揮發性或備份記憶體(例如,可程式化記憶體或快閃記憶體)、唯讀記憶體及其類似者。另外,記憶體110可包括實體地位於伺服器105中或在耦接至伺服器105之另一計算器件上的記憶體儲存器。 1 illustrates a system architecture including a virtual switch in accordance with an embodiment of the present invention. The first server 105 can include at least one processor 109 coupled to the memory 110. Processor 109 may represent one or more processors (eg, a microprocessor) or a multi-core processor. The memory 110 can represent a random access memory (RAM) device including the main memory of the server 105, and a supplemental level of memory, such as cache memory, non-volatile or backup memory (eg, , programmable memory or flash memory), read-only memory, and the like. Additionally, memory 110 can include a memory bank physically located in server 105 or on another computing device coupled to server 105.

伺服器105可在作業系統107之控制下進行操作且執行各種電腦軟體應用程式、組件、程式、物件、模組及資料結構(諸如,虛擬機111)。 The server 105 is operable under the control of the operating system 107 and executes various computer software applications, components, programs, objects, modules, and data structures (such as the virtual machine 111).

伺服器105可包括網路配接器115(例如,聚合式網路配 接器)。聚合式網路配接器可包括單根I/O虛擬化(SR-IOV)配接器,諸如,支援聚合式增強型乙太網路(CEE)的快速周邊組件互連(PCIe)配接器。系統100之另一實施例可包括一多根I/O虛擬化(MR-IOV)配接器。網路配接器115可進一步用以實施乙太網路光纖通道(FCoE)協定、乙太網路RDMA、網際網路小電腦系統介面(iSCSI),及其類似者。大體而言,網路配接器115使用基於乙太網路或PCI之通信方法來傳送資料,且可耦接至虛擬機111中之一或多者。另外,配接器可促進虛擬機111之間的共用存取。雖然將配接器115展示為包括於伺服器105內,但在其他實施例中,配接器可為與伺服器105分離之實體上相異之器件。 The server 105 can include a network adapter 115 (eg, a converged network Connector). Converged network adapters can include single root I/O virtualization (SR-IOV) adapters, such as Fast Peripheral Component Interconnect (PCIe) mating to support Converged Enhanced Ethernet (CEE) Device. Another embodiment of system 100 can include a multi-root I/O virtualization (MR-IOV) adapter. The network adapter 115 can further be used to implement the Fibre Channel over Ethernet (FCoE) protocol, the Ethernet RDMA, the Internet Small Computer System Interface (iSCSI), and the like. In general, the network adapter 115 transmits data using an Ethernet or PCI based communication method and can be coupled to one or more of the virtual machines 111. Additionally, the adapter can facilitate shared access between virtual machines 111. While the adapter 115 is shown as being included within the server 105, in other embodiments, the adapter can be a physically distinct device separate from the server 105.

在一實施例中,每一網路配接器115可包括一聚合式配接器虛擬橋接器(未圖示),該聚合式配接器虛擬橋接器藉由協調對虛擬機111之存取而促進配接器115之間的資料傳送。每一聚合式配接器虛擬橋接器可辨識其網域(亦即,可定址之空間)內之資料流動。可在不將資料傳輸至特定聚合式配接器虛擬橋接器之網域外部的情況下直接對經辨識之網域位址進行路由。 In one embodiment, each network adapter 115 can include a polymeric adapter virtual bridge (not shown) that coordinates access to the virtual machine 111 by coordinating The data transfer between the adapters 115 is promoted. Each polymeric adapter virtual bridge can identify the flow of data within its domain (ie, the addressable space). The identified domain address can be directly routed without transmitting the data outside of the domain of the particular aggregated adapter virtual bridge.

每一網路配接器115可包括耦接至橋接器元件120中之一者的一或多個乙太網路埠。另外,為了促進PCIe通信,伺服器可具有一PCI主機橋接器117。PCI主機橋接器將接著連接至虛擬交換器180中之交換器元件上的上游PCI埠122。該資料接著經由交換層130路由至正確之下游PCI埠123,該正確之下游PCI埠122可位於與上游PCI埠122相同 或不同的交換器模組上。該資料可接著被轉遞至PCI器件150。如本文中所使用,「虛擬交換器」用以描述經互連以對於連接至複數個分散式硬體交換器元件中之一者之器件而言看起來像單一交換器的該複數個分散式硬體交換器元件。 Each network adapter 115 can include one or more Ethernet ports coupled to one of the bridge elements 120. Additionally, to facilitate PCIe communication, the server can have a PCI host bridge 117. The PCI host bridge will then be connected to the upstream PCI port 122 on the switch element in the virtual switch 180. The data is then routed via switch layer 130 to the correct downstream PCI port 123, which may be located in the same upstream PCI port 122 Or on different switch modules. This information can then be forwarded to the PCI device 150. As used herein, a "virtual switch" is used to describe the plurality of decentralized interconnects that appear to be a single switch for a device connected to one of a plurality of distributed hardware switch components. Hardware switch component.

橋接器元件120可經組態以貫穿分散式虛擬交換器180來轉遞資料訊框。舉例而言,網路配接器115及橋接器元件120可使用兩個40 Gbit乙太網路連接或一個100 Gbit乙太網路連接進行連接。橋接器元件120將由網路配接器115傳輸之資料訊框轉遞至交換層130。橋接器元件120可包括一查找表,該查找表儲存用以轉遞所接收之資料訊框的位址資料。舉例而言,橋接器元件120可比較與所接收之資料訊框相關聯的位址資料與儲存於查找表內之位址資料。因此,網路配接器115不需要知曉分散式虛擬交換器180之網路拓撲。 Bridge component 120 can be configured to relay data frames throughout distributed virtual switch 180. For example, network adapter 115 and bridge component 120 can be connected using two 40 Gbit Ethernet connections or one 100 Gbit Ethernet connection. The bridge component 120 forwards the data frame transmitted by the network adapter 115 to the switching layer 130. The bridge component 120 can include a lookup table that stores address data for transmitting the received data frame. For example, bridge component 120 can compare the address data associated with the received data frame with the address data stored in the lookup table. Therefore, network adapter 115 does not need to know the network topology of distributed virtual switch 180.

大體而言,分散式虛擬交換器180包括可位於複數個單獨(但經互連)硬體組件上的複數個橋接器元件120。自網路配接器115之觀點而言,虛擬交換器180如同單一交換器般起作用,儘管交換器180可由實體地位於不同組件上的多個交換器組成。在出故障的情況下,使交換器180分散提供冗餘,且擴展以便以相對於單一大交換器而言更具成本效益之方式互連更多伺服器。 In general, distributed virtual switch 180 includes a plurality of bridge elements 120 that can be located on a plurality of separate (but interconnected) hardware components. From the perspective of network adapter 115, virtual switch 180 functions as a single switch, although switch 180 may be comprised of multiple switches physically located on different components. In the event of a failure, the switches 180 are distributed to provide redundancy and expanded to interconnect more servers in a more cost effective manner relative to a single large switch.

橋接器元件120中之每一者可連接至一或多個輸送層模組125,該一或多個輸送層模組125將所接收之資料訊框轉 譯為由交換層130使用之協定。舉例而言,輸送層模組125可將使用乙太網路抑或PCI通信方法接收之資料轉譯為經由交換層130(亦即,胞光纖通道網路)傳輸的具有通用格式(亦即,胞)之封包。因此,包含交換器180之交換器模組與至少兩個不同通信協定--例如,乙太網路及PCI通信標準--相容。亦即,至少一交換器模組具有用以在同一交換層130上傳送不同協定之有效負載的必要邏輯。 Each of the bridge elements 120 can be coupled to one or more transport layer modules 125 that relay the received data frames Translated into the agreement used by the exchange layer 130. For example, the transport layer module 125 can translate the data received using the Ethernet or PCI communication method into a common format (ie, cell) transmitted via the switch layer 130 (ie, the cellular channel network). The package. Thus, the switch module containing switch 180 is compatible with at least two different communication protocols, such as Ethernet and PCI communication standards. That is, at least one switch module has the necessary logic to transfer different agreed payloads on the same switch fabric 130.

儘管未展示於圖1中,但在一實施例中,交換層130可包含一區域機架互連(其連接位於同一機箱及機架內之橋接器元件120)以及連接至其他機箱及機架中之橋接器元件120的連結。 Although not shown in FIG. 1, in an embodiment, the switch layer 130 can include an area rack interconnect (which connects the bridge elements 120 located in the same chassis and rack) and connects to other chassis and racks. The connection of the bridge component 120.

在路由胞之後,交換層130可與輸送層模組126通信,該輸送層模組126將胞轉譯回對應於適當通信協定的資料訊框或訊息。橋接器元件120之一部分可促進與乙太網路155之通信,該乙太網路155提供對LAN或WAN(例如,網際網路)之存取。此外,可將PCI資料路由至連接至PCIe器件150的下游PCI埠123。PCIe器件150可為被動底板互連(作為用於附加板之擴展卡介面),或可由連接至交換器180之伺服器中之任一者存取的共同儲存器。 After routing the cells, the switching layer 130 can communicate with the transport layer module 126, which translates the cells back to the data frame or message corresponding to the appropriate communication protocol. Portions of bridge component 120 facilitate communication with Ethernet 155, which provides access to a LAN or WAN (e.g., the Internet). In addition, the PCI data can be routed to a downstream PCI port 123 that is connected to the PCIe device 150. The PCIe device 150 can be a passive backplane interconnect (as an expansion card interface for add-on boards) or a common storage accessible by any of the servers connected to the switch 180.

第二伺服器106可包括連接至作業系統107之處理器109及包括類似於在第一伺服器105中發現之彼等虛擬機之一或多個虛擬機111的記憶體110。伺服器106之記憶體110亦包括具有虛擬橋接器114之超管理器113。超管理器113管理在不同虛擬機111之間共用之資料。具體而言,虛擬橋 接器114允許經連接之虛擬機111之間的直接通信,而不需要虛擬機111使用橋接器元件120或交換層130來將資料傳輸至以通信方式耦接至超管理器113的其他虛擬機111。 The second server 106 can include a processor 109 coupled to the operating system 107 and a memory 110 including one or more virtual machines 111 similar to those found in the first server 105. The memory 110 of the server 106 also includes a hypervisor 113 having a virtual bridge 114. The hypervisor 113 manages materials shared between different virtual machines 111. Specifically, the virtual bridge The connector 114 allows direct communication between the connected virtual machines 111 without requiring the virtual machine 111 to use the bridge element 120 or the switching layer 130 to transmit data to other virtual machines communicatively coupled to the hypervisor 113. 111.

輸入/輸出管理控制器(IOMC)140(亦即,專用處理器)耦接至至少一橋接器元件120,該至少一橋接器元件120向IOMC 140提供對交換層130之存取。IOMC 140之一功能可為自管理員接收命令以組態分散式虛擬交換器180之不同硬體元件。在一實施例中,此等命令可係自來自交換層130之單獨交換網路接收。 An input/output management controller (IOMC) 140 (ie, a dedicated processor) is coupled to at least one bridge element 120 that provides access to the switching layer 130 to the IOMC 140. One of the functions of the IOMC 140 is to receive commands from the administrator to configure different hardware components of the decentralized virtual switch 180. In an embodiment, such commands may be received from a separate switching network from the switching layer 130.

儘管展示一個IOMC 140,但系統100可包括複數個IOMC 140。在一實施例中,此等IOMC 140可以階層架構進行配置以使得選擇一IOMC 140作為主控器而同時將其他者委派為部件(或受控器)。 Although one IOMC 140 is shown, system 100 can include a plurality of IOMCs 140. In an embodiment, the IOMCs 140 may be configured in a hierarchical architecture such that an IOMC 140 is selected as the master while others are delegated as components (or slaves).

圖2說明根據一實施例的系統200之硬體層級圖。伺服器210及212可實體地位於同一機箱205中;然而,機箱205可包括任何數目個伺服器。機箱205亦包括包括一或多個子交換器254的複數個交換器模組250、251。在一實施例中,交換器模組250、251、252為提供網路配接器115與橋接器元件120之間的實體支援及連接性之硬體組件(例如,PCB板、FPGA板、系統單晶片,等)。大體而言,交換器模組250、251、252包括連接系統200中之不同機箱205、207與伺服器210、212、214的硬體。 FIG. 2 illustrates a hardware hierarchy diagram of system 200 in accordance with an embodiment. Servers 210 and 212 can be physically located in the same chassis 205; however, chassis 205 can include any number of servers. The chassis 205 also includes a plurality of switch modules 250, 251 that include one or more sub-switches 254. In one embodiment, the switch modules 250, 251, 252 are hardware components (eg, PCB boards, FPGA boards, systems) that provide physical support and connectivity between the network adapter 115 and the bridge component 120. Single chip, etc.). In general, the switch modules 250, 251, 252 include hardware that connects the different chassis 205, 207 and servers 210, 212, 214 in the system 200.

交換器模組250、251、252(亦即,機箱互連元件)包括一或多個子交換器254及IOMC 255、256、257。子交換器 254可包括橋接器元件120之邏輯或實體分組。每一橋接器元件120可實體地連接至伺服器210、212。舉例而言,橋接器元件120可將使用乙太網路抑或PCI通信協定發送之資料路由至附接至交換層130的其他橋接器元件120。然而,在一實施例中,橋接器元件120可能不需要提供自網路配接器115至交換層130的連接性以用於PCI或PCIe通信。 The switch modules 250, 251, 252 (i.e., chassis interconnect elements) include one or more sub-switches 254 and IOMCs 255, 256, 257. Sub-switch 254 can include logical or physical groupings of bridge elements 120. Each bridge element 120 can be physically coupled to the servers 210, 212. For example, bridge component 120 can route data transmitted using Ethernet or PCI communication protocols to other bridge components 120 attached to switch fabric 130. However, in an embodiment, the bridge element 120 may not need to provide connectivity from the network adapter 115 to the switch layer 130 for PCI or PCIe communication.

每一交換器模組250、251、252包括用於管理及組態系統200中之不同硬體資源的IOMC 255、256、257。在一實施例中,每一交換器模組250、251、252之各別IOMC可負責組態特定交換器模組上之硬體資源。然而,因為交換器模組使用交換層130而互連,所以一交換器模組上之IOMC可管理不同交換器模組上之硬體資源。 Each switch module 250, 251, 252 includes IOMCs 255, 256, 257 for managing and configuring different hardware resources in system 200. In one embodiment, each of the IOMCs of each of the switch modules 250, 251, 252 can be responsible for configuring hardware resources on a particular switch module. However, because the switch modules are interconnected using the switch fabric 130, the IOMC on a switch module can manage the hardware resources on different switch modules.

機箱205中之點線界定伺服器210、212與交換器模組250、251之間的中平面220。亦即,中平面220包括在網路配接器115與子交換器254之間傳輸資料的資料路徑。 The dotted lines in the chassis 205 define a midplane 220 between the servers 210, 212 and the switch modules 250, 251. That is, the midplane 220 includes a data path for transferring data between the network adapter 115 and the sub-switch 254.

每一橋接器元件120連接至交換層130。另外,橋接元件120亦可連接至網路配接器115或上行鏈路。如本文中所使用,橋接元件120之上行鏈路埠提供擴展系統200之連接性或能力的服務。如在機箱207中所展示,一橋接元件120包括至乙太網路或PCI連接器260之連接。對於乙太網路通信而言,連接器260可向系統200提供對LAN或WAN(例如,網際網路)的存取。或者,埠連接器260可將系統連接至一PCIe擴展槽,例如,PCIe器件150。器件150可為額外儲存器或記憶體,每一伺服器210、212、214可經由交換層130 來存取該額外儲存器或記憶體。有利地,系統200提供對具有與至少兩個不同通信方法相容之網路器件之交換層130的存取。 Each bridge element 120 is connected to the exchange layer 130. Additionally, bridging component 120 can also be coupled to network adapter 115 or uplink. As used herein, the uplink of bridging component 120 provides services that extend the connectivity or capabilities of system 200. As shown in chassis 207, a bridging component 120 includes a connection to an Ethernet or PCI connector 260. For Ethernet communications, connector 260 can provide system 200 with access to a LAN or WAN (e.g., the Internet). Alternatively, the port connector 260 can connect the system to a PCIe expansion slot, such as the PCIe device 150. Device 150 can be an additional memory or memory, and each server 210, 212, 214 can be via switching layer 130 To access the extra storage or memory. Advantageously, system 200 provides access to switch fabric 130 having network devices that are compatible with at least two different communication methods.

如所展示,伺服器210、212、214可具有複數個網路配接器115。此情形在此等配接器115中之一者有故障的情況下提供冗餘。另外,每一配接器115可經由中平面220附接至不同交換器模組250、251、252。如所說明,伺服器210之一配接器以通信方式耦接至位於交換器模組250中之橋接器元件120,而同時另一配接器連接至交換器模組251中之橋接器元件120。若交換器模組250、251中之一者有故障,則伺服器210仍能夠經由其他交換模組來存取交換層130。有故障之交換器模組可接著被替換(例如,熱調換),此使得IOMC 255、256、257及橋接元件120更新路由表及查找表以包括新交換模組上之硬體元件。 As shown, the servers 210, 212, 214 can have a plurality of network adapters 115. This situation provides redundancy in the event that one of the adapters 115 is faulty. Additionally, each adapter 115 can be attached to a different switch module 250, 251, 252 via a midplane 220. As illustrated, one of the adapters 210 is communicatively coupled to the bridge component 120 located in the switch module 250 while the other adapter is coupled to the bridge component in the switch module 251. 120. If one of the switch modules 250, 251 is faulty, the server 210 can still access the switch layer 130 via other switch modules. The faulty switch module can then be replaced (e.g., hot swapped), which causes the IOMCs 255, 256, 257 and bridge component 120 to update the routing table and lookup table to include the hardware components on the new switch module.

圖3說明根據本發明之一實施例的虛擬交換層。系統100及200中之每一子交換器254經由網型連接結構描述(mesh connection schema)使用交換層130及橋接器元件120彼此連接。亦即,不管所使用之子交換器254為何,胞(亦即,資料封包)皆可被路由至位於任何其他交換器模組250、251、252上的另一其他子交換器254。此可藉由直接連接每一子交換器254而實現--亦即,每一子交換器254具有至每一其他子交換器254之專用資料路徑。或者,交換層130可使用脊柱葉(spine-leaf)架構,其中每一子交換器254(亦即,葉節點)附接至至少一脊柱節點。脊柱節點將自子交 換器254接收之胞路由至正確之目的地子交換器254。然而,本發明並不限於用於互連子交換器254之任何特定技術。 Figure 3 illustrates a virtual switching layer in accordance with an embodiment of the present invention. Each of the sub-switches 254 of the systems 100 and 200 are connected to each other via a mesh connection schema using a switch layer 130 and a bridge component 120. That is, regardless of the sub-switch 254 used, the cells (i.e., data packets) can be routed to another other sub-switch 254 located on any of the other switch modules 250, 251, 252. This can be accomplished by directly connecting each sub-switch 254 - that is, each sub-switch 254 has a dedicated data path to each of the other sub-switches 254. Alternatively, the exchange layer 130 can use a spine-leaf architecture in which each sub-exchanger 254 (ie, a leaf node) is attached to at least one spinal node. Spinal node The cells received by the converter 254 are routed to the correct destination sub-switch 254. However, the invention is not limited to any particular technique for interconnecting sub-switches 254.

實施VLAN之網路光纖通道網路 Network Fibre Channel network implementing VLAN

圖4說明根據本發明之實施例的在圖2之系統中使用虛擬區域存取網路。具體而言,圖4簡化圖2以包括一伺服器210及子交換器254。網路配接器115經由中平面220連接至橋接器元件120。然而,中平面220經簡化以僅展示構成網路配接器115與橋接器元件120之間的LAN之一實體連接。在一實施例中,每一網路配接器115將具有至各別橋接器元件120之一或多個連接。 4 illustrates the use of a virtual area access network in the system of FIG. 2, in accordance with an embodiment of the present invention. Specifically, FIG. 4 simplifies FIG. 2 to include a server 210 and a sub-switch 254. Network adapter 115 is coupled to bridge element 120 via midplane 220. However, the midplane 220 is simplified to show only one of the physical connections that make up the LAN between the network adapter 115 and the bridge element 120. In an embodiment, each network adapter 115 will have one or more connections to the respective bridge elements 120.

虛線界定網路配接器115與特定橋接器元件120之間的不同VLAN通道405A至405C。儘管網路配接器115可具有至橋接器元件120之僅一個或兩個實體乙太網路連接(例如,一100 G/bit連接或兩個40 G/bit連接),但此等連接可在邏輯上劃分為包括用於點對點通信之一或多個VLAN通道的VLAN。亦即,中平面220中之每一實體連接可被劃分為數千(若非數百萬)不同VLAN及其各別VLAN通道。此外,如在IEEE 802.1QinQ中所定義,VLAN通道可為用於S-VLAN或C-VLAN之S通道或C通道。將封包指派給VLAN允許對LAN之更細微之控制。舉例而言,管理員可將不同安全協定指派給不同VLAN或以不同方式管理每一VLAN之封包。 The dashed lines define different VLAN channels 405A through 405C between the network adapter 115 and the particular bridge element 120. Although network adapter 115 may have only one or two physical Ethernet connections to bridge component 120 (eg, a 100 G/bit connection or two 40 G/bit connections), such connections may It is logically divided into VLANs including one or more VLAN channels for point-to-point communication. That is, each physical connection in the midplane 220 can be divided into thousands (if not millions) of different VLANs and their respective VLAN channels. In addition, as defined in IEEE 802.1QinQ, a VLAN channel can be an S channel or a C channel for an S-VLAN or a C-VLAN. Assigning packets to VLANs allows for finer control over the LAN. For example, an administrator can assign different security protocols to different VLANs or manage packets for each VLAN in different ways.

在圖4中,每一網路配接器115可建立至橋接器元件120 之一或多個VLAN通道,只要配接器115經由中平面220實體地連接至橋接器元件120即可。因此,最上層之網路配接器115可具有至除所展示之一橋接器元件以外之其他橋接器元件120的VLAN通道。系統400可指派與存在之可唯一定址之VLAN一樣多的VLAN通道。對於IEEE 802.1Q而言,此為4096個S-VLAN。VLAN通道可以任何方式分散於中平面220之不同實體連接之間。注意,根據802.1Q之每一實體連接可具有經組態之相同VLAN通道(或VLAN通道之一子集)。 In FIG. 4, each network adapter 115 can be established to bridge component 120 One or more VLAN channels are provided as long as the adapter 115 is physically coupled to the bridge element 120 via the midplane 220. Thus, the uppermost network adapter 115 can have a VLAN channel to other bridge elements 120 than one of the bridge components shown. System 400 can assign as many VLAN channels as there are uniquely addressable VLANs. For IEEE 802.1Q, this is 4096 S-VLANs. The VLAN channels can be dispersed between the different physical connections of the midplane 220 in any manner. Note that each physical connection according to 802.1Q can have the same configured VLAN channel (or a subset of VLAN channels).

圖5為根據本發明之一實施例的用於基於VLAN ID來識別網路訊務的資料訊框。具體而言,資料訊框500說明與IEEE 802.1QinQ相容之資料訊框之一部分。將資料訊框500劃分為兩個不同部分:一外部標籤(S標籤)501及一內部標籤(C標籤)502。外部標籤501與首先將VLAN引入於CEE網路中的在IEEE 802.1Q中所定義之標籤相同。然而,為了向管理員提供對LAN之更大控制,IEEE 802.1QinQ藉由添加內部標籤502而引入加雙標籤之概念。因此,本文中所揭示之實施例可用以定址基於IEEE802.1Q或802.1QinQ所建立之VLAN。 FIG. 5 illustrates a data frame for identifying network traffic based on a VLAN ID, in accordance with an embodiment of the present invention. In particular, data frame 500 illustrates one portion of a data frame that is compatible with IEEE 802.1QinQ. The data frame 500 is divided into two distinct parts: an external tag (S tag) 501 and an internal tag (C tag) 502. The external tag 501 is the same as the one defined in IEEE 802.1Q that first introduces the VLAN into the CEE network. However, in order to provide administrators with greater control over the LAN, IEEE 802.1QinQ introduces the concept of adding dual tags by adding internal tags 502. Thus, the embodiments disclosed herein can be used to address VLANs established based on IEEE 802.1Q or 802.1QinQ.

標籤501、502包括乙太網路類型/大小505、優先級代碼點(PCP)510、標準格式指示符(CFI)515及S-VLAN ID 520或C-VLAN ID 525。乙太網路類型505通常為16位元(或兩個位元組)之欄位,其用以指示在資料封包之有效負載中囊封有哪一協定。PCP 510為三位元欄位,其指代分別指 派給S-VLAN或C-VLAN之優先級或訊務類別(亦即,優先級1至優先級8)。CFI 515為1位元欄位,其指示MAC位址(儲存於資料訊框500中之其他處)是否呈一非標準格式。 The tags 501, 502 include an Ethernet type/size 505, a priority code point (PCP) 510, a standard format indicator (CFI) 515, and an S-VLAN ID 520 or C-VLAN ID 525. The Ethernet type 505 is typically a 16-bit (or two-byte) field that indicates which protocol is encapsulated in the payload of the data packet. PCP 510 is a three-dimensional field, which refers to The priority or traffic class assigned to the S-VLAN or C-VLAN (ie, priority 1 to priority 8). CFI 515 is a 1-bit field that indicates whether the MAC address (stored elsewhere in data frame 500) is in a non-standard format.

對於IEEE 802.1Q及802.1QinQ而言,S-VLAN ID 520為12位元,且指定訊框500所屬於之S-VLAN。並未在IEEE 802.1Q標準中定義之C-VLAN ID亦為12位元長,且指定訊框500所屬於之C-VLAN。亦即,IEEE 802.1QinQ擴展IEEE 802.1Q,使得每一S-VLAN可具有高達4096個可唯一定址之C-VLAN,藉此提供超過一千六百萬個可定址VLAN。然而,僅由IEEE 802.1Q定義之資料訊框將包括部分505A、510A、515A及520但將不包括部分505B、510B、515B及525。在任一情形下,本文中所揭示之實施例並不限於IEEE 802.1Q及802.1QinQ,而可用於此等標準之任何相關標準或衍生標準(例如,IEEE 802.1Qat或IEEE 802.lak)或目前或將來可與產生VLAN相容的任何其他標準中。 For IEEE 802.1Q and 802.1QinQ, the S-VLAN ID 520 is 12 bits and specifies the S-VLAN to which the frame 500 belongs. The C-VLAN ID that is not defined in the IEEE 802.1Q standard is also 12 bits long and specifies the C-VLAN to which the frame 500 belongs. That is, IEEE 802.1QinQ extends IEEE 802.1Q such that each S-VLAN can have up to 4096 uniquely addressable C-VLANs, thereby providing more than 16 million addressable VLANs. However, the data frame defined only by IEEE 802.1Q will include portions 505A, 510A, 515A, and 520 but will not include portions 505B, 510B, 515B, and 525. In either case, the embodiments disclosed herein are not limited to IEEE 802.1Q and 802.1QinQ, but may be used with any relevant standard or derivative standard of such standards (eg, IEEE 802.1Qat or IEEE 802.lak) or current or It will be compatible with any other standard that produces VLANs in the future.

大體而言,資料訊框500為跨越網路自源傳輸至目的地之較大資料訊框(亦即,資料封包)的一部分。整個資料訊框將包括其他分割區,該等其他分割區包括(例如)前置項、源及目的地位址、有效負載、錯誤校正碼及其類似者。 In general, data frame 500 is part of a larger data frame (i.e., data packet) that is transmitted from the source to the destination across the network. The entire data frame will include other partitions including, for example, preambles, source and destination addresses, payload, error correction codes, and the like.

在VLAN通道內分配頻寬 Allocate bandwidth in a VLAN channel

圖6說明根據本發明之一實施例的在圖1之系統中使用VLAN的ETS之增強版本。圖6說明橋接器元件120、記憶 體639及埠630。記憶體639可表示隨機存取記憶體(RAM)器件快取記憶體、非揮發性或備份記憶體(例如,可程式化記憶體或快閃記憶體)、唯讀記憶體,及其類似者。記憶體639包括一ETS排程器640,該ETS排程器640劃分與兩個計算器件之間(例如,兩個橋接器元件120之間)的實體連接相關聯之頻寬。在一實施例中,ETS排程器640經組態以遵守IEEE 802.1Qaz。 6 illustrates an enhanced version of an ETS using a VLAN in the system of FIG. 1 in accordance with an embodiment of the present invention. Figure 6 illustrates the bridge component 120, memory Body 639 and 埠 630. Memory 639 can represent random access memory (RAM) device cache memory, non-volatile or backup memory (eg, programmable memory or flash memory), read-only memory, and the like. . Memory 639 includes an ETS scheduler 640 that divides the bandwidth associated with the physical connection between two computing devices (eg, between two bridge elements 120). In an embodiment, ETS scheduler 640 is configured to comply with IEEE 802.1Qaz.

埠630由橋接器元件120用以建立至計算器件之連接。舉例而言,埠630可為一實體連接器,乙太網路纜線附接至該實體連接器。如所展示,埠630可在邏輯上經劃分以表示針對使用該實體連接之VLAN通道之頻寬分配。舉例而言,ETS排程器640可經組態以根據光纖通道網路中之VLAN通道或VLAN之數目來分配頻寬。可向每一VLAN通道保證可用於埠630之一特定百分比之頻寬。若VLAN通道中之一者當前並未使用其經分配之頻寬,則ETS排程器640可臨時允許與一不同VLAN通道相關聯之網路訊務使用其頻寬。 The 埠 630 is used by the bridge component 120 to establish a connection to the computing device. For example, the port 630 can be a physical connector to which an Ethernet cable is attached. As shown, the UI 630 can be logically partitioned to represent a bandwidth allocation for a VLAN channel that uses the physical connection. For example, ETS scheduler 640 can be configured to allocate bandwidth based on the number of VLAN channels or VLANs in a Fibre Channel network. A certain percentage of the bandwidth available for 埠 630 can be guaranteed for each VLAN channel. If one of the VLAN channels is not currently using its allocated bandwidth, the ETS scheduler 640 can temporarily allow the network traffic associated with a different VLAN channel to use its bandwidth.

另外,可將頻寬分配指派給VLAN通道之一區塊或群組。亦即,VLAN通道1至3可被指派埠之頻寬的2%。此外,在一實施例中,ETS排程器640可將頻寬分配至使用埠630之VLAN通道之一子集。因此,並非每一使用埠630之VLAN通道必須由ETS排程器640分配或保證頻寬。 In addition, the bandwidth allocation can be assigned to one of the blocks or groups of VLAN channels. That is, VLAN channels 1 through 3 can be assigned 2% of the bandwidth. Moreover, in an embodiment, ETS scheduler 640 can allocate the bandwidth to a subset of the VLAN channels using 埠 630. Therefore, not every VLAN channel that uses 埠 630 must be allocated or guaranteed by the ETS scheduler 640.

在一實施例中,ETS排程器640可位於虛擬交換器180中其他處之記憶體中。 In an embodiment, the ETS scheduler 640 can be located in memory elsewhere in the virtual switch 180.

圖7A至圖7B說明根據本發明之一實施例的ETS排程器階層架構。替代於僅依賴於將頻寬分配至單一VLAN通道或VLAN通道之一群組,ETS排程器亦可將頻寬分配至VLAN內之訊務類別。如藉由圖5中之資料訊框500所展示,指派給VLAN之每一訊框亦可被指派給VLAN內之一特定訊務類別(亦即,由PCP 510所表示之值)。可基於VLAN之VLAN ID(亦即,S-VLAN ID 520及/或C-VLAN ID 525)將每一資料訊框指派給VLAN以及一特定訊務類別。 7A-7B illustrate an ETS scheduler hierarchy architecture in accordance with an embodiment of the present invention. Instead of relying solely on allocating bandwidth to a single VLAN channel or a group of VLAN channels, the ETS scheduler can also assign bandwidth to the traffic classes within the VLAN. As shown by data frame 500 in FIG. 5, each frame assigned to a VLAN can also be assigned to a particular traffic class within the VLAN (i.e., the value represented by PCP 510). Each data frame can be assigned to a VLAN and a particular traffic class based on the VLAN ID of the VLAN (ie, S-VLAN ID 520 and/or C-VLAN ID 525).

記憶體739可包括由ETS VLAN排程器741及ETS優先級排程器742構成之ETS排程器階層架構。ETS VLAN排程器741可執行與圖6之ETS排程器640類似的功能。亦即,ETS VLAN排程器741可將頻寬分配至使用出口埠730之一或多個VLAN通道。除了在VLAN通道之間分配頻寬以外,ETS排程器階層架構之ETS優先級排程器742可進一步在訊務類別之間劃分頻寬。亦即,ETS優先級排程器742可在VLAN通道中之不同訊務類別(亦即,優先級1至8)之間再劃分分配至一特定VLAN通道的頻寬 The memory 739 can include an ETS scheduler hierarchy consisting of an ETS VLAN scheduler 741 and an ETS priority scheduler 742. The ETS VLAN Scheduler 741 can perform functions similar to the ETS Scheduler 640 of FIG. That is, the ETS VLAN scheduler 741 can allocate the bandwidth to one or more VLAN channels using the egress port 730. In addition to allocating bandwidth between VLAN channels, the ETS priority scheduler 742 of the ETS scheduler hierarchy can further divide the bandwidth between traffic classes. That is, the ETS priority scheduler 742 can further divide the bandwidth allocated to a specific VLAN channel between different traffic classes (ie, priority levels 1 to 8) in the VLAN channel.

圖7B說明用於基於訊務類別來分配指派給VLAN通道或VLAN之頻寬的一實例。如所展示,ETS VLAN排程器741將與埠730相關聯之頻寬的15%分配至指派給VLAN通道1之網路訊務。另外,ETS優先級排程器742在不同訊務類別(亦即,優先級1至8)之間進一步劃分該15%之分配。因此,優先級8接收到埠730之總頻寬的6%,而優先級1僅接收到總頻寬之1%。相應地,向指派給VLAN通道1之優先 級8的網路訊務保證埠之頻寬的至少6%而向優先級1保證1%。以此方式,埠730之頻寬可被劃分為任何所要分配。 Figure 7B illustrates an example for allocating bandwidths assigned to VLAN channels or VLANs based on traffic classes. As shown, the ETS VLAN Scheduler 741 allocates 15% of the bandwidth associated with the UI 730 to the network traffic assigned to VLAN Channel 1. In addition, the ETS priority scheduler 742 further divides the 15% allocation between different traffic classes (i.e., priority levels 1 through 8). Therefore, priority 8 receives 6% of the total bandwidth of 埠730, while priority 1 receives only 1% of the total bandwidth. Correspondingly, the priority assigned to VLAN channel 1 Level 8 network traffic guarantees at least 6% of the bandwidth and 1% to priority 1. In this way, the bandwidth of 埠730 can be divided into any desired distribution.

此外,ETS排程器階層架構可用以在多個VLAN通道被分組在一起時分配頻寬。舉例而言,若ETS VLAN排程器741將埠之頻寬的15%分配至VLAN通道1至3,則ETS優先級排程器742可將彼頻寬之一部分分配至與該等VLAN通道相關聯之訊務類別中的每一者。舉例而言,VLAN通道1之優先級1及VLAN通道2之優先級5可接收到所有頻寬,而其他優先級未被分配頻寬。或者,ETS優先級排程器742可同樣地對待各別VLAN通道之每一訊務類別。在彼情形下,頻寬分配將類似於圖7B中所展示之頻寬分配,例外之處在於分配應用於多個VLAN通道。亦即,VLAN通道中之每一者的優先級1(作為一群組)將被分配總頻寬之1%,VLAN通道中之每一者的優先級5將被分配總共2%等等,直至針對多個VLAN通道之15%分配已經散發為止。然而,類似於VLAN,並非VLAN內之所有訊務類別必須被分配頻寬,即使該VLAN自身被分配頻寬亦如此。 In addition, the ETS scheduler hierarchy can be used to allocate bandwidth when multiple VLAN channels are grouped together. For example, if the ETS VLAN scheduler 741 allocates 15% of the bandwidth of the bandwidth to VLAN channels 1 through 3, the ETS priority scheduler 742 can assign a portion of the bandwidth to the VLAN channels. Each of the associated traffic categories. For example, priority 1 of VLAN channel 1 and priority 5 of VLAN channel 2 can receive all bandwidths, while other priorities are not allocated bandwidth. Alternatively, the ETS priority scheduler 742 can treat each of the traffic classes of the respective VLAN channels equally. In this case, the bandwidth allocation will be similar to the bandwidth allocation shown in Figure 7B, with the exception that the allocation is applied to multiple VLAN channels. That is, the priority 1 (as a group) of each of the VLAN channels will be allocated 1% of the total bandwidth, the priority 5 of each of the VLAN channels will be allocated a total of 2%, and so on, Until the 15% allocation for multiple VLAN channels has been distributed. However, similar to VLANs, not all traffic classes within a VLAN must be allocated bandwidth, even if the VLAN itself is allocated bandwidth.

儘管展示為單獨組件,但在一實施例中,ETS VLAN排程器741及ETS優先級排程器742可整合至單一組件中。 Although shown as a separate component, in one embodiment, ETS VLAN scheduler 741 and ETS priority scheduler 742 can be integrated into a single component.

圖8為圖2中所說明之系統的簡化表示。圖8說明伺服器與網路器件(亦即,橋接器元件120)之間、網路器件之間、網路器件與其他WAN或LAN之間的連接,及網路器件與其他計算器件之間的連接。 Figure 8 is a simplified representation of the system illustrated in Figure 2. Figure 8 illustrates the connection between a server and a network device (i.e., bridge component 120), between network devices, between a network device and other WANs or LANs, and between network devices and other computing devices. Connection.

如所展示,圖8包括具有虛擬機111之伺服器805,該虛 擬機111可具有兩個正執行之不同應用程式810、815。應用程式810、815各自與將資料封包自應用程式810、815路由至虛擬交換器180中之至少一橋接器元件120的單獨VLAN(或更具體而言,S通道)相關聯。為了清楚起見,省略伺服器805與橋接器元件120之間的實體連接。另外,VLAN通道405D及405E可與相同連接或不同實體連接相關聯。 As shown, Figure 8 includes a server 805 having a virtual machine 111, which is virtual The projector 111 can have two different applications 810, 815 being executed. The applications 810, 815 are each associated with a separate VLAN (or more specifically, an S-channel) that routes data packets from the application 810, 815 to at least one of the bridge elements 120 of the virtual switch 180. For the sake of clarity, the physical connection between the server 805 and the bridge element 120 is omitted. Additionally, VLAN channels 405D and 405E can be associated with the same connection or different physical connections.

虛擬交換器180包括複數個橋接器元件120A至120C,該複數個橋接器元件120A至120C包括入口埠825、出口埠830、835及838,以及ETS排程器840。儘管未圖示,但伺服器805亦可包括一ETS排程器及在邏輯上經劃分以基於網路中之VLAN來分配頻寬的出口埠。 The virtual switch 180 includes a plurality of bridge elements 120A-120C that include an inlet port 825, outlet ports 830, 835, and 838, and an ETS scheduler 840. Although not shown, the server 805 can also include an ETS scheduler and an exit port that is logically partitioned to allocate bandwidth based on VLANs in the network.

橋接器元件120A自被指派給各別VLAN通道的兩個應用程式810、815接收資料封包(亦即,資料訊框)。使用一佇列,橋接器元件120A可使用虛擬交換器180中之網型網路(mesh network)以經由出口埠830將封包轉遞至虛擬交換器180中之不同網路器件。與應用程式815相關聯之資料路徑870傳送指派給VLAN通道405E之資料訊框。橋接器元件120A之ETS排程器840可將頻寬分配至此網路訊務以及在朝向伺服器805之方向上跨越VLAN通道405D及405E流動的資料訊務。 Bridge component 120A receives data packets (i.e., data frames) from two applications 810, 815 that are assigned to respective VLAN channels. Using a queue, bridge component 120A can use a mesh network in virtual switch 180 to forward packets to different network devices in virtual switch 180 via egress 埠 830. The data path 870 associated with the application 815 transmits the data frame assigned to the VLAN channel 405E. The ETS scheduler 840 of the bridge component 120A can distribute the bandwidth to the network traffic and the data traffic flowing across the VLAN channels 405D and 405E in the direction toward the server 805.

當ETS排程器840建立針對埠830之頻寬分配之後,當橋接器元件120A接收到資料訊框時,其評估VLAN ID以判定其屬於哪一VLAN。當接著轉遞封包時,橋接器元件120A 知曉多少頻寬可用於彼VLAN。舉例而言,若ETS排程器840將頻寬之4%分配至VLAN,則在具有對應VLAN ID之所有資料訊框跨越對應VLAN通道被轉遞時向該等資料訊框保證至少那麼多之頻寬。 After the ETS scheduler 840 establishes a bandwidth allocation for the UI 830, when the bridge component 120A receives the data frame, it evaluates the VLAN ID to determine which VLAN it belongs to. When the packet is subsequently transferred, the bridge element 120A Know how much bandwidth is available for this VLAN. For example, if the ETS scheduler 840 allocates 4% of the bandwidth to the VLAN, then at least as many data frames are guaranteed to be transmitted when all data frames having the corresponding VLAN ID are forwarded across the corresponding VLAN channel. bandwidth.

若ETS排程器840含有ETS排程器階層架構,則排程器840可基於含有VLAN通道405E之VLAN內的訊務類別來進一步劃分所分配之頻寬。ETS排程器840可針對用於應用程式810之VLAN通道405D執行相同程序(亦即,資料路徑875)。然而,所接收之資料訊框中的優先級代碼及VLAN ID用以確保在轉遞封包時使用正確量之頻寬。以此方式,ETS排程器840可保證資料路徑870及875之VLAN及訊務類別具有埠830之頻寬的可用之最小百分比。 If the ETS scheduler 840 includes an ETS scheduler hierarchy, the scheduler 840 can further divide the allocated bandwidth based on the traffic class within the VLAN containing the VLAN channel 405E. The ETS scheduler 840 can execute the same procedure (ie, data path 875) for the VLAN channel 405D for the application 810. However, the priority code and VLAN ID in the received data frame are used to ensure that the correct amount of bandwidth is used when forwarding the packet. In this manner, ETS scheduler 840 can ensure that the VLAN and traffic classes of data paths 870 and 875 have a minimum percentage of available bandwidth of 埠 830.

然而,用於橋接器元件120B及120C之ETS排程器840可將不同百分比之頻寬指派給資料路徑870及875。亦即,給予流過橋接器元件120A之資料路徑870之網路訊務的頻寬分配可(例如)大於抑或小於給予流過橋接器元件120C之資料路徑870之網路訊務的頻寬分配。或者,橋接器元件120C中之ETS排程器840可不將頻寬分配至資料路徑870之資料訊框或不向資料路徑870之資料訊框保證頻寬。大體而言,系統管理員可組態橋接器元件120A至120C之ETS排程器840以滿足特定橋接器元件120之需要。舉例而言,橋接器元件120B可將資料訊務轉遞至不同WAN,而橋接器元件120C可將資料訊務轉遞至諸如連接至虛擬交換器180之另一伺服器或儲存器件的計算器件。此等不同組態可使 得管理員針對不同橋接器元件120不同地指派頻寬。 However, the ETS scheduler 840 for the bridge elements 120B and 120C can assign different percentages of bandwidth to the data paths 870 and 875. That is, the bandwidth allocation for the network traffic to the data path 870 flowing through the bridge component 120A can be, for example, greater than or less than the bandwidth allocation of the network traffic given to the data path 870 flowing through the bridge component 120C. . Alternatively, the ETS scheduler 840 in the bridge component 120C may not distribute the bandwidth to the data frame of the data path 870 or the data frame of the data path 870. In general, the system administrator can configure the ETS scheduler 840 of the bridge elements 120A-120C to meet the needs of a particular bridge element 120. For example, bridge component 120B can forward data traffic to different WANs, while bridge component 120C can forward data traffic to computing devices such as another server or storage device connected to virtual switch 180. . These different configurations can make The administrator has differently assigned bandwidths for different bridge elements 120.

如IEEE 802.1Qaz中所定義之ETS不提供以大於訊務類別之細微度之任何細微度來分配實體連接之頻寬的方式。如先前所提及,IEEE 802.1Q允許網路管理員建立高達4096個不同VLAN,而IEEE 802.1QinQ提供超過一千六百萬個VLAN。能夠基於VLAN而非訊務類別來分配頻寬可增加網路管理員控制如何分配頻寬的能力。本文中所揭示之ETS排程器840可將頻寬之不同部分分配至應用程式810(亦即,VLAN通道405D)及應用程式815(亦即,VLAN通道405E)。替代於必須將VLAN通道405D、405E指派至不同訊務類別以便在應用程式之間不同地分配頻寬,ETS排程器840可經組態以基於所接收之資料訊框在特定VLAN中之成員資格將頻寬分配至所接收之資料訊框。 An ETS as defined in IEEE 802.1Qaz does not provide a way to allocate the bandwidth of a physical connection with any subtlety that is greater than the granularity of the traffic class. As mentioned previously, IEEE 802.1Q allows network administrators to establish up to 4096 different VLANs, while IEEE 802.1QinQ provides more than 16 million VLANs. The ability to allocate bandwidth based on VLANs rather than traffic classes increases the ability of network administrators to control how bandwidth is allocated. The ETS scheduler 840 disclosed herein can allocate different portions of the bandwidth to the application 810 (i.e., VLAN channel 405D) and the application 815 (i.e., VLAN channel 405E). Instead of having to assign VLAN channels 405D, 405E to different traffic classes to differently allocate bandwidth between applications, ETS scheduler 840 can be configured to be based on members of the received data frame in a particular VLAN. Eligibility assigns the bandwidth to the received data frame.

可基於VLAN ID(例如,S-VLAN及C-VLAN)將出口埠830、835、838劃分為數千或數百萬個不同分配。目前,ETS以1%之增量來提供頻寬分配(亦即,最多100個VLAN可被分配頻寬之1%);然而,本文中所揭示之實施例可供可以遠遠更大之精度來分配頻寬的將來頻寬分配結構描述使用。將來結構描述可准許ETS排程器840在目前可能使用IEEE 802.1QinQ之一千六百萬個不同VLAN之間將實體連接之頻寬劃分為任一不同組合。若使用基於八個訊務類別來再劃分分配至VLAN之頻寬的ETS排程器階層架構,則此數目可進一步擴展。 The exit ports 830, 835, 838 can be divided into thousands or millions of different allocations based on VLAN IDs (eg, S-VLANs and C-VLANs). Currently, ETS provides bandwidth allocation in 1% increments (ie, up to 100 VLANs can be allocated 1% of the bandwidth); however, the embodiments disclosed herein can provide much greater precision. To describe the future bandwidth allocation structure of the allocated bandwidth. The future structure description may permit the ETS scheduler 840 to divide the bandwidth of the physical connection into any different combination between one and sixteen million different VLANs that may currently use IEEE 802.1QinQ. This number can be further extended if an ETS scheduler hierarchy based on eight traffic classes is used to subdivide the bandwidth allocated to the VLAN.

結論 in conclusion

IEEE 802.1Q及ETS僅提供八個不同訊務類別,該八個不同訊務類別可用以控制一特定實體連接(或鏈路)中之頻寬。替代於僅依賴於此等八個訊務類別來管理頻寬,本文中所論述之實施例揭示使用增強之ETS排程器,其准許網路器件設定用於個別VLAN之頻寬。基於VLAN ID來分配埠中之頻寬准許網路器件將頻寬分配至數百萬個唯一VLAN。因此,此技術可增加網路光纖通道網路之細微控制及其效能。 IEEE 802.1Q and ETS provide only eight different traffic classes that can be used to control the bandwidth in a particular physical connection (or link). Instead of relying solely on these eight traffic classes to manage bandwidth, the embodiments discussed herein disclose the use of an enhanced ETS scheduler that allows the network device to set the bandwidth for individual VLANs. Bandwidth allocation based on VLAN ID allows network devices to allocate bandwidth to millions of unique VLANs. Therefore, this technology can increase the fine-grained control of the network's Fibre Channel network and its performance.

諸圖中之流程圖及方塊圖說明根據本發明之各種實施例之系統、方法及電腦程式產品之可能實施的架構、功能性及操作。就此而言,流程圖或方塊圖中之每一方塊可表示程式碼之一模組、區段或部分,其包含用於實施指定邏輯功能的一或多個可執行指令。亦應注意,在一些替代實施中,區塊中所提到之功能可不以諸圖中所提到之次序發生。舉例而言,視所涉及之功能性而定,連續展示之兩個區塊實際上可實質上同時執行,或該等區塊有時可以相反次序執行。亦應注意,可藉由執行指定功能或動作的基於專用硬體之系統或專用硬體與電腦指令之組合來實施方塊圖及/或流程圖說明之每一區塊及方塊圖及/或流程圖說明中之區塊的組合。 The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products in accordance with various embodiments of the present invention. In this regard, each block of the flowchart or block diagram can represent a module, a segment or a portion of a code, which comprises one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions noted in the blocks may occur in the order noted in the figures. For example, two blocks of consecutive presentations may be executed substantially concurrently, or the blocks may sometimes be performed in the reverse order, depending on the functionality involved. It should also be noted that each block and block diagram and/or process of the block diagrams and/or flowchart illustrations can be implemented by a dedicated hardware-based system or a combination of dedicated hardware and computer instructions that perform the specified function or action. The combination of blocks in the illustration.

雖然前述內容針對本發明之實施例,但在不脫離本發明之基本範疇的情況下可設計本發明之其他及另外實施例,且本發明之範疇係由以下申請專利範圍判定。 While the foregoing is directed to the embodiments of the present invention, the subject matter of the present invention can be devised by the scope of the following claims.

100‧‧‧系統 100‧‧‧ system

105‧‧‧第一伺服器 105‧‧‧First server

106‧‧‧第二伺服器 106‧‧‧Second server

107‧‧‧作業系統 107‧‧‧Operating system

109‧‧‧處理器 109‧‧‧Processor

110‧‧‧記憶體 110‧‧‧ memory

111‧‧‧虛擬機 111‧‧‧Virtual Machine

113‧‧‧超管理器 113‧‧‧Super Manager

114‧‧‧虛擬橋接器 114‧‧‧Virtual Bridge

115‧‧‧網路配接器 115‧‧‧Network adapter

117‧‧‧PCI(周邊組件互連)主機橋接器 117‧‧‧PCI (Peripheral Component Interconnect) Host Bridge

120‧‧‧橋接器元件/橋接元件 120‧‧‧Bridge components/bridge components

120A‧‧‧橋接器元件 120A‧‧‧Bridge components

120B‧‧‧橋接器元件 120B‧‧‧Bridge components

120C‧‧‧橋接器元件 120C‧‧‧Bridge components

122‧‧‧上游PCI(周邊組件互連)埠 122‧‧‧Upstream PCI (Peripheral Component Interconnect)埠

123‧‧‧下游PCI(周邊組件互連)埠 123‧‧‧Downstream PCI (Peripheral Component Interconnect)埠

125‧‧‧輸送層模組 125‧‧‧Transport layer module

126‧‧‧輸送層模組 126‧‧‧Transport layer module

130‧‧‧交換層 130‧‧‧ exchange layer

140‧‧‧輸入/輸出管理控制器(IOMC) 140‧‧‧Input/Output Management Controller (IOMC)

150‧‧‧PCI(周邊組件互連)器件/PCIe(快速周邊組件互連)器件 150‧‧‧PCI (peripheral component interconnect) devices/PCIe (fast peripheral component interconnect) devices

155‧‧‧乙太網路 155‧‧‧Ethnet

180‧‧‧虛擬交換器 180‧‧‧Virtual Switch

200‧‧‧系統 200‧‧‧ system

205‧‧‧機箱 205‧‧‧Chassis

207‧‧‧機箱 207‧‧‧Chassis

210‧‧‧伺服器 210‧‧‧Server

212‧‧‧伺服器 212‧‧‧Server

214‧‧‧伺服器 214‧‧‧ server

220‧‧‧中平面 220‧‧‧ midplane

250‧‧‧交換器模組 250‧‧‧Switch Module

251‧‧‧交換器模組 251‧‧‧Switch Module

252‧‧‧交換器模組 252‧‧‧Switch Module

254‧‧‧子交換器 254‧‧‧Sub-switch

255‧‧‧IOMC(輸入/輸出管理控制器) 255‧‧‧IOMC (input/output management controller)

256‧‧‧IOMC(輸入/輸出管理控制器) 256‧‧‧IOMC (input/output management controller)

257‧‧‧IOMC(輸入/輸出管理控制器) 257‧‧‧IOMC (Input/Output Management Controller)

260‧‧‧乙太網路或PCI(周邊組件互連)連接器/埠連接器 260‧‧‧Ethernet or PCI (peripheral component interconnect) connector/埠 connector

400‧‧‧系統 400‧‧‧ system

405A‧‧‧VLAN(虛擬區域網路)通道 405A‧‧‧VLAN (Virtual Area Network) channel

405B‧‧‧VLAN(虛擬區域網路)通道 405B‧‧‧VLAN (Virtual Area Network) channel

405C‧‧‧VLAN(虛擬區域網路)通道 405C‧‧‧VLAN (Virtual Area Network) channel

405D‧‧‧VLAN(虛擬區域網路)通道 405D‧‧‧VLAN (Virtual Area Network) channel

405E‧‧‧VLAN(虛擬區域網路)通道 405E‧‧‧VLAN (Virtual Area Network) channel

500‧‧‧資料訊框/訊框 500‧‧‧Information frame/frame

501‧‧‧外部標籤(S標籤)/外部標籤 501‧‧‧External label (S label) / external label

502‧‧‧內部標籤(C標籤)/內部標籤 502‧‧‧Internal label (C label) / internal label

505A‧‧‧部分 Section 505A‧‧‧

505B‧‧‧部分 Section 505B‧‧‧

510A‧‧‧部分 Section 510A‧‧‧

510B‧‧‧部分 Section 510B‧‧‧

515A‧‧‧部分 Section 515A‧‧‧

515B‧‧‧部分 Section 515B‧‧‧

520‧‧‧S-VLAN(服務-虛擬區域網路)ID(識別符)/部分 520‧‧‧S-VLAN (service-virtual area network) ID (identifier) / part

525‧‧‧C-VLAN(客戶-虛擬區域網路)ID(識別符)/部分 525‧‧‧C-VLAN (Customer-Virtual Area Network) ID (Identifier) / Part

630‧‧‧埠 630‧‧‧埠

639‧‧‧記憶體 639‧‧‧ memory

640‧‧‧ETS(增強之傳輸選擇)排程器 640‧‧‧ETS (Enhanced Transmission Selection) Scheduler

730‧‧‧出口埠 730‧‧‧Export

739‧‧‧記憶體 739‧‧‧ memory

741‧‧‧ETS(增強之傳輸選擇)VLAN(虛擬區域網路)排程器 741‧‧‧ETS (Enhanced Transmission Selection) VLAN (Virtual Area Network) Scheduler

742‧‧‧ETS(增強之傳輸選擇)優先級排程器 742‧‧‧ETS (Enhanced Transmission Selection) Priority Scheduler

805‧‧‧伺服器 805‧‧‧Server

810‧‧‧應用程式 810‧‧‧Application

815‧‧‧應用程式 815‧‧‧Application

825‧‧‧入口埠 825‧‧‧Entry埠

830‧‧‧出口埠 830‧‧‧ Export 埠

835‧‧‧出口埠 835‧‧‧ Export 埠

838‧‧‧出口埠 838‧‧‧Export

840‧‧‧ETS(增強之傳輸選擇)排程器 840‧‧‧ETS (Enhanced Transmission Selection) Scheduler

870‧‧‧資料路徑 870‧‧‧ data path

875‧‧‧資料路徑 875‧‧‧ data path

圖1說明根據本發明之一實施例的包括分散式虛擬交換器之系統架構。 1 illustrates a system architecture including a decentralized virtual switch in accordance with an embodiment of the present invention.

圖2說明根據本發明之一實施例的實施一虛擬交換器之系統的硬體表示。 2 illustrates a hardware representation of a system implementing a virtual switch in accordance with an embodiment of the present invention.

圖3說明根據本發明之一實施例的虛擬交換器。 Figure 3 illustrates a virtual switch in accordance with an embodiment of the present invention.

圖4說明根據本發明之實施例的在圖1之系統中使用虛擬區域存取網路。 4 illustrates the use of a virtual area access network in the system of FIG. 1 in accordance with an embodiment of the present invention.

圖5為根據本發明之一實施例的用於基於虛擬區域網路ID來識別網路訊務的資料訊框。 FIG. 5 illustrates a data frame for identifying network traffic based on a virtual area network ID, in accordance with an embodiment of the present invention.

圖6說明根據本發明之實施例的在圖1之系統中使用增強之傳輸選擇的增強版本。 6 illustrates an enhanced version of the enhanced transmission selection used in the system of FIG. 1 in accordance with an embodiment of the present invention.

圖7A至圖7B說明根據本發明之一實施例的使用虛擬區域網路之增強之傳輸選擇的增強版本。 7A-7B illustrate an enhanced version of enhanced transmission selection using a virtual area network, in accordance with an embodiment of the present invention.

圖8說明根據本發明之一實施例的在圖2之系統中使用虛擬區域網路之增強之傳輸選擇的增強版本。 8 illustrates an enhanced version of enhanced transmission selection using a virtual local area network in the system of FIG. 2, in accordance with an embodiment of the present invention.

100‧‧‧系統 100‧‧‧ system

105‧‧‧第一伺服器 105‧‧‧First server

106‧‧‧第二伺服器 106‧‧‧Second server

107‧‧‧作業系統 107‧‧‧Operating system

109‧‧‧處理器 109‧‧‧Processor

110‧‧‧記憶體 110‧‧‧ memory

111‧‧‧虛擬機 111‧‧‧Virtual Machine

113‧‧‧超管理器 113‧‧‧Super Manager

114‧‧‧虛擬橋接器 114‧‧‧Virtual Bridge

115‧‧‧網路配接器 115‧‧‧Network adapter

117‧‧‧PCI(周邊組件互連)主機橋接器 117‧‧‧PCI (Peripheral Component Interconnect) Host Bridge

120‧‧‧橋接器元件/橋接元件 120‧‧‧Bridge components/bridge components

122‧‧‧上游PCI(周邊組件互連)埠 122‧‧‧Upstream PCI (Peripheral Component Interconnect)埠

123‧‧‧下游PCI(周邊組件互連)埠 123‧‧‧Downstream PCI (Peripheral Component Interconnect)埠

125‧‧‧輸送層模組 125‧‧‧Transport layer module

126‧‧‧輸送層模組 126‧‧‧Transport layer module

130‧‧‧交換層 130‧‧‧ exchange layer

140‧‧‧輸入/輸出管理控制器(IOMC) 140‧‧‧Input/Output Management Controller (IOMC)

150‧‧‧PCI(周邊組件互連)器件/PCIe(快速周邊組件互連)器件 150‧‧‧PCI (peripheral component interconnect) devices/PCIe (fast peripheral component interconnect) devices

155‧‧‧乙太網路 155‧‧‧Ethnet

180‧‧‧虛擬交換器 180‧‧‧Virtual Switch

Claims (21)

一種用於傳輸之方法,其包含:建立連接兩個計算器件之一實體連接,其中流過該實體連接之網路訊務在邏輯上劃分為複數個虛擬區域網路(VLAN)通道;基於流過該複數個VLAN通道中至少一個之網路訊務,在該複數個VLAN通道中之至少兩者之間分配該實體連接之一頻寬;及在複數個訊務類別之間再劃分分配至該複數個VLAN通道中之一者的頻寬。 A method for transmission, comprising: establishing a physical connection connecting one of two computing devices, wherein network traffic flowing through the physical connection is logically divided into a plurality of virtual area network (VLAN) channels; Network traffic of at least one of the plurality of VLAN channels, a bandwidth of the physical connection is allocated between at least two of the plurality of VLAN channels; and the plurality of traffic classes are further allocated to The bandwidth of one of the plurality of VLAN channels. 如請求項1之方法,其中該複數個VLAN通道及該複數個訊務類別係基於以下各者中之至少一者來進行組態:IEEE 802.1Q及IEEE 802.1Q之一衍生版。 The method of claim 1, wherein the plurality of VLAN channels and the plurality of traffic classes are configured based on at least one of: IEEE 802.1Q and one of IEEE 802.1Q derivatives. 如請求項1之方法,其進一步包含:判定指派給該複數個VLAN通道中之該一者的該網路訊務是否正使用該經分配之頻寬,若指派給該複數個VLAN通道中之該一者的該網路訊務並未使用該經分配之頻寬,則將指派給該複數個VLAN通道中之該一者的該頻寬之至少一部分分配至一不同VLAN通道;及將該頻寬之該部分自該不同VLAN通道重新分配至該複數個VLAN通道中之該一者。 The method of claim 1, further comprising: determining whether the network traffic assigned to the one of the plurality of VLAN channels is using the allocated bandwidth, if assigned to the plurality of VLAN channels If the network traffic of the one does not use the allocated bandwidth, assign at least a portion of the bandwidth assigned to the one of the plurality of VLAN channels to a different VLAN channel; The portion of the bandwidth is reassigned from the different VLAN channels to the one of the plurality of VLAN channels. 如請求項1之方法,其中該VLAN通道係與一服務VLAN(S-VLAN)相關聯。 The method of claim 1, wherein the VLAN channel is associated with a service VLAN (S-VLAN). 如請求項1之方法,其中該VLAN通道係與指派給一S-VLAN之一客戶VLAN(C-VLAN)相關聯。 The method of claim 1, wherein the VLAN channel is associated with a customer VLAN (C-VLAN) assigned to one of the S-VLANs. 如請求項5之方法,其中該S-VLAN及該C-VLAN係基於以下各者中之至少一者進行組態:IEEE 802.1QinQ及IEEE 802.1QinQ之一衍生版。 The method of claim 5, wherein the S-VLAN and the C-VLAN are configured based on at least one of: IEEE 802.1QinQ and one of IEEE 802.1QinQ derivatives. 如請求項1之方法,其中僅該實體連接之該複數個VLAN通道的一子集被分配頻寬。 The method of claim 1, wherein only a subset of the plurality of VLAN channels to which the entity is connected is allocated a bandwidth. 一種用於傳輸之電腦程式產品,其包含:具有體現於其中之電腦可讀程式碼的一電腦可讀儲存媒體,該電腦可讀程式碼包含經組態以進行以下操作之電腦可讀程式碼:建立連接兩個計算器件之一實體連接,其中流過該實體連接之網路訊務在邏輯上劃分為複數個虛擬區域網路(VLAN)通道;基於流過該複數個VLAN通道中至少一個之網路訊務,在該複數個VLAN通道中之至少兩者之間分配該實體連接之一頻寬;及在複數個訊務類別之間再劃分分配至該複數個VLAN通道中之一者的頻寬。 A computer program product for transmission, comprising: a computer readable storage medium having computer readable code embodied therein, the computer readable code comprising computer readable code configured to perform the following operations Establishing a physical connection connecting one of the two computing devices, wherein the network traffic flowing through the physical connection is logically divided into a plurality of virtual local area network (VLAN) channels; based on flowing through at least one of the plurality of VLAN channels Network traffic, a bandwidth of the physical connection is allocated between at least two of the plurality of VLAN channels; and one of the plurality of VLAN channels is further divided among the plurality of traffic classes The bandwidth. 如請求項8之電腦程式產品,其中該複數個VLAN通道及該複數個訊務類別係基於以下各者中之至少一者來進行組態:IEEE 802.1Q及IEEE 802.1Q之一衍生版。 The computer program product of claim 8, wherein the plurality of VLAN channels and the plurality of traffic classes are configured based on at least one of: IEEE 802.1Q and one of IEEE 802.1Q derivatives. 如請求項8之電腦程式產品,其進一步包含經組態以進行以下操作之電腦可讀程式碼: 判定指派給該複數個VLAN通道中之該一者的該網路訊務是否正使用該經分配之頻寬,若指派給該複數個VLAN通道中之該一者的該網路訊務並未使用該經分配之頻寬,則將指派給該複數個VLAN通道中之該一者的該頻寬之至少一部分分配至一不同VLAN通道;及將該頻寬之該部分自該不同VLAN通道重新分配至該複數個VLAN通道中之該一者。 The computer program product of claim 8 further comprising computer readable code configured to: Determining whether the network traffic assigned to the one of the plurality of VLAN channels is using the allocated bandwidth, and if the network traffic assigned to the one of the plurality of VLAN channels is not Using the allocated bandwidth, assigning at least a portion of the bandwidth assigned to the one of the plurality of VLAN channels to a different VLAN channel; and re-establishing the portion of the bandwidth from the different VLAN channel Assigned to one of the plurality of VLAN channels. 如請求項8之電腦程式產品,其中該VLAN通道係與一服務VLAN(S-VLAN)相關聯。 The computer program product of claim 8, wherein the VLAN channel is associated with a service VLAN (S-VLAN). 如請求項8之電腦程式產品,其中該VLAN通道係與指派給一S-VLAN之一客戶VLAN(C-VLAN)相關聯。 The computer program product of claim 8, wherein the VLAN channel is associated with a customer VLAN (C-VLAN) assigned to one of the S-VLANs. 如請求項12之電腦程式產品,其中該S-VLAN及該C-VLAN係基於以下各者中之至少一者進行組態:IEEE 802.1QinQ及IEEE 802.1QinQ之一衍生版。 The computer program product of claim 12, wherein the S-VLAN and the C-VLAN are configured based on at least one of: IEEE 802.1QinQ and one of IEEE 802.1QinQ derivatives. 如請求項8之電腦程式產品,其中僅該實體連接之該複數個VLAN通道的一子集被分配頻寬。 The computer program product of claim 8, wherein only a subset of the plurality of VLAN channels to which the entity is connected is allocated a bandwidth. 一種網路器件,其包含:一埠,其經組態以經由一實體連接連接至一計算器件,其中流過該實體連接之網路訊務在邏輯上劃分為複數個虛擬區域網路(VLAN)通道;及一頻寬排程器,其基於流過該複數個VLAN通道中至少一個之網路訊務,經組態以在該複數個VLAN通道中之至少兩者之間分配該埠之一頻寬且在複數個訊務類別 之間再劃分分配至該複數個VLAN通道中之一者的頻寬。 A network device comprising: a port configured to be coupled to a computing device via a physical connection, wherein network traffic flowing through the physical connection is logically divided into a plurality of virtual area networks (VLANs) a channel; and a bandwidth scheduler configured to distribute the network between at least two of the plurality of VLAN channels based on network traffic flowing through at least one of the plurality of VLAN channels One bandwidth and in multiple traffic categories The bandwidth allocated to one of the plurality of VLAN channels is further divided. 如請求項15之網路器件,其中該複數個VLAN通道及該複數個訊務類別係基於以下各者中之至少一者來進行組態:IEEE 802.1Q及IEEE 802.1Q之一衍生版。 The network device of claim 15, wherein the plurality of VLAN channels and the plurality of traffic classes are configured based on at least one of: IEEE 802.1Q and one of IEEE 802.1Q derivatives. 如請求項15之網路器件,其中該頻寬排程器經組態以:判定指派給該複數個VLAN通道中之該一者的該網路訊務是否正使用該經分配之頻寬,若指派給該複數個VLAN通道中之該一者的該網路訊務並未使用該經分配之頻寬,則將指派給該複數個VLAN通道中之該一者的該頻寬之至少一部分分配至一不同VLAN通道;及將該頻寬之該部分自該不同VLAN通道重新分配至該複數個VLAN通道中之該一者。 The network device of claim 15, wherein the bandwidth scheduler is configured to: determine whether the network traffic assigned to the one of the plurality of VLAN channels is using the allocated bandwidth, If the network traffic assigned to the one of the plurality of VLAN channels does not use the allocated bandwidth, then assigning at least a portion of the bandwidth to the one of the plurality of VLAN channels Allocating to a different VLAN channel; and reallocating the portion of the bandwidth from the different VLAN channel to the one of the plurality of VLAN channels. 如請求項15之網路器件,其中該VLAN通道係與一服務VLAN(S-VLAN)相關聯。 A network device as claimed in claim 15, wherein the VLAN channel is associated with a serving VLAN (S-VLAN). 如請求項15之網路器件,其中該VLAN通道係與指派給一S-VLAN之一客戶VLAN(C-VLAN)相關聯。 A network device as claimed in claim 15, wherein the VLAN channel is associated with a customer VLAN (C-VLAN) assigned to one of the S-VLANs. 如請求項19之網路器件,其中該S-VLAN及該C-VLAN係基於以下各者中之至少一者進行組態:IEEE 802.1QinQ及IEEE 802.1QinQ之一衍生版。 The network device of claim 19, wherein the S-VLAN and the C-VLAN are configured based on at least one of: IEEE 802.1QinQ and one of IEEE 802.1QinQ derivatives. 如請求項15之網路器件,其中僅該實體連接之該複數個VLAN通道的一子集被分配頻寬。 A network device as claimed in claim 15, wherein only a subset of the plurality of VLAN channels to which the entity is connected is allocated a bandwidth.
TW101145119A 2011-12-22 2012-11-30 Flexible and scalable enhanced transmission selection method for network fabrics TWI516039B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/334,306 US9860188B2 (en) 2011-12-22 2011-12-22 Flexible and scalable enhanced transmission selection method for network fabrics

Publications (2)

Publication Number Publication Date
TW201338445A TW201338445A (en) 2013-09-16
TWI516039B true TWI516039B (en) 2016-01-01

Family

ID=48654512

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101145119A TWI516039B (en) 2011-12-22 2012-11-30 Flexible and scalable enhanced transmission selection method for network fabrics

Country Status (7)

Country Link
US (3) US9860188B2 (en)
JP (1) JP5967633B2 (en)
CN (1) CN104012057B (en)
DE (1) DE112012004957B4 (en)
GB (1) GB2515643B (en)
TW (1) TWI516039B (en)
WO (1) WO2013093734A1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9860188B2 (en) * 2011-12-22 2018-01-02 International Business Machines Corporation Flexible and scalable enhanced transmission selection method for network fabrics
US9692706B2 (en) * 2013-04-15 2017-06-27 International Business Machines Corporation Virtual enhanced transmission selection (VETS) for lossless ethernet
JP5757540B2 (en) * 2013-09-17 2015-07-29 日本電信電話株式会社 COMMUNICATION SYSTEM, NETWORK CONTROL DEVICE, ITS PROGRAM, AND COMMUNICATION METHOD
US9330433B2 (en) 2014-06-30 2016-05-03 Intel Corporation Data distribution fabric in scalable GPUs
DE102014226994A1 (en) * 2014-12-29 2016-06-30 Robert Bosch Gmbh Communication system for operating a data network
WO2018003106A1 (en) * 2016-06-30 2018-01-04 株式会社日立製作所 Inter-switch communication management device, inter-switch communication management method and computer readable recording medium
US20190089640A1 (en) * 2017-09-21 2019-03-21 Microsoft Technology Licensing, Llc Virtualizing dcb settings for virtual network adapters
US10860358B2 (en) * 2017-09-21 2020-12-08 Microsoft Technology Licensing, Llc Virtualizing datacenter bridging settings for virtual network adapters
US20190089637A1 (en) * 2017-09-21 2019-03-21 Microsoft Technology Licensing, Llc Virtualizing dcb settings for virtual network adapters
US10454698B1 (en) * 2017-10-24 2019-10-22 Cisco Technology, Inc. Methods and apparatus for non-blocking IP multicast delivery of media data using spine and leaf architectures
CN109726153B (en) * 2017-10-27 2023-02-24 伊姆西Ip控股有限责任公司 Integrated device for a memory device, corresponding memory device and method for manufacturing the same
US11470021B2 (en) * 2018-10-26 2022-10-11 Cisco Technology, Inc. Managed midlay layers on a routed network
US10630554B1 (en) 2018-10-29 2020-04-21 International Business Machines Corporation Input/output (I/O) performance of hosts through bi-directional bandwidth feedback optimization
CN113994757B (en) * 2019-06-07 2024-03-08 瑞典爱立信有限公司 Flow-wise filtering and policing for RAN scheduling optimization in 5GS virtual TSN

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2001253630A1 (en) * 2000-04-17 2001-10-30 Adaptive Networks, Inc. Power line communication network
DE10123821A1 (en) * 2000-06-02 2001-12-20 Ibm Switched Ethernet network has a method for assigning priorities to user groups so that a quality of service guarantee can be provided by ensuring that packets for one or more groups are given priority over other groups
US20020110087A1 (en) * 2001-02-14 2002-08-15 David Zelig Efficient setup of label-switched connections
US7379857B2 (en) * 2002-05-10 2008-05-27 Lockheed Martin Corporation Method and system for simulating computer networks to facilitate testing of computer network security
US7113479B2 (en) 2002-05-31 2006-09-26 Broadcom Corporation Aggregated rate control method and system
US7702357B2 (en) * 2002-11-26 2010-04-20 Sony Corporation Wireless intelligent switch engine
CN1286297C (en) * 2003-09-25 2006-11-22 华为技术有限公司 Method of realizing sign delivery of user's position
US8165156B1 (en) 2003-12-16 2012-04-24 Telefonaktiebolaget Lm Ericsson (Publ) Ethernet DSL access multiplexer and method providing dynamic service selection and end-user configuration
US7701948B2 (en) * 2004-01-20 2010-04-20 Nortel Networks Limited Metro ethernet service enhancements
US8804728B2 (en) * 2004-01-20 2014-08-12 Rockstar Consortium Us Lp Ethernet differentiated services conditioning
US7457241B2 (en) * 2004-02-05 2008-11-25 International Business Machines Corporation Structure for scheduler pipeline design for hierarchical link sharing
US7418000B2 (en) * 2004-06-03 2008-08-26 Corrigent Systems Ltd. Automated weight calculation for packet networks
CN100581160C (en) 2004-10-19 2010-01-13 华为技术有限公司 System and method for finishing service transmission in virtual switching system
CN100414905C (en) 2004-12-30 2008-08-27 华为技术有限公司 Broadband access network of ensuring QoS of survice, and method
US7936770B1 (en) * 2005-03-08 2011-05-03 Enterasys Networks, Inc. Method and apparatus of virtual class of service and logical queue representation through network traffic distribution over multiple port interfaces
TR201905420T4 (en) * 2005-04-15 2019-05-21 Interdigital Ce Patent Holdings The method of remote management of a device and its corresponding device.
JP4658193B2 (en) * 2005-06-20 2011-03-23 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Quality of service control in VLAN-based access networks
US7760738B1 (en) * 2005-07-28 2010-07-20 Verizon Services Corp. Admission control for services
US7733891B2 (en) * 2005-09-12 2010-06-08 Zeugma Systems Inc. Methods and apparatus to support dynamic allocation of traffic management resources in a network element
US8451730B2 (en) 2006-01-26 2013-05-28 Broadcom Corporation Apparatus and method for implementing multiple high speed switching fabrics in an ethernet ring topology
CN101030917B (en) 2007-03-31 2010-09-15 华为技术有限公司 Method and apparatus for realizing MPLS TE on VLAN interface
US7852789B2 (en) * 2007-06-20 2010-12-14 At&T Intellectual Property Ii, L.P. Methods, systems, and/or devices for providing network access
US20090067437A1 (en) * 2007-09-11 2009-03-12 Tellabs Petaluma, Inc. Methods, systems and computer program products for managing atm ethernet flows
CN100531101C (en) 2007-10-22 2009-08-19 华为技术有限公司 A method and device for realizing automatic allocation of end-to-end QinQ service label
US8284654B2 (en) * 2007-12-03 2012-10-09 Verizon Patent And Licensing Inc. Bandwidth admission control on link aggregation groups
JP5111092B2 (en) * 2007-12-21 2012-12-26 株式会社日立製作所 Network system and OLT
JP4663761B2 (en) 2008-06-20 2011-04-06 アラクサラネットワークス株式会社 Packet relay device
EP2401828B1 (en) * 2009-02-24 2013-04-10 Telefonaktiebolaget LM Ericsson (publ) Dynamic scheduling using pon bandwidth allocation on lower aggregation levels
CN101510855B (en) 2009-04-10 2011-06-15 华为技术有限公司 Method and apparatus for processing QinQ message
US8174984B2 (en) 2009-05-29 2012-05-08 Oracle America, Inc. Managing traffic on virtualized lanes between a network switch and a virtual machine
US9256560B2 (en) 2009-07-29 2016-02-09 Solarflare Communications, Inc. Controller integration
US8599850B2 (en) * 2009-09-21 2013-12-03 Brocade Communications Systems, Inc. Provisioning single or multistage networks using ethernet service instances (ESIs)
JP5271876B2 (en) * 2009-11-12 2013-08-21 株式会社日立製作所 Device having packet distribution function and packet distribution method
JP4714306B1 (en) * 2009-11-18 2011-06-29 株式会社アドバンテスト RECEPTION DEVICE, TEST DEVICE, RECEPTION METHOD, AND TEST METHOD
JP5504952B2 (en) * 2010-02-17 2014-05-28 ソニー株式会社 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMPUTER PROGRAM
US8392571B2 (en) * 2010-04-30 2013-03-05 Hewlett-Packard Development Company, L.P. Method and system for allocating bandwidth
US10033650B2 (en) * 2010-06-08 2018-07-24 Brocade Communication Systems Llc Preserving quality of service across trill networks
EP2580894B1 (en) 2010-06-08 2017-08-30 Brocade Communications Systems, Inc. Switch, system and method for forwarding packets
HUE028211T2 (en) * 2010-07-29 2016-12-28 Ericsson Telefon Ab L M Handling network traffic via a fixed access
US8630173B2 (en) * 2010-11-19 2014-01-14 Cisco Technology, Inc. Dynamic queuing and pinning to improve quality of service on uplinks in a virtualized environment
US8953443B2 (en) * 2011-06-01 2015-02-10 At&T Intellectual Property I, L.P. Method and apparatus for providing congestion management for a wireless communication network
CN103444135B (en) * 2011-06-02 2016-10-12 慧与发展有限责任合伙企业 Network virtualization method and virtualization network
US9294589B2 (en) * 2011-06-22 2016-03-22 Telefonaktiebolaget L M Ericsson (Publ) Header compression with a code book
US9860188B2 (en) 2011-12-22 2018-01-02 International Business Machines Corporation Flexible and scalable enhanced transmission selection method for network fabrics
JP2015040795A (en) * 2013-08-22 2015-03-02 住友電工デバイス・イノベーション株式会社 Test device

Also Published As

Publication number Publication date
DE112012004957T5 (en) 2014-08-14
JP2015502724A (en) 2015-01-22
GB2515643B (en) 2019-10-23
GB201408988D0 (en) 2014-07-02
TW201338445A (en) 2013-09-16
US20130163611A1 (en) 2013-06-27
WO2013093734A1 (en) 2013-06-27
US20130166753A1 (en) 2013-06-27
CN104012057A (en) 2014-08-27
GB2515643A (en) 2014-12-31
JP5967633B2 (en) 2016-08-10
US11095571B2 (en) 2021-08-17
US9860188B2 (en) 2018-01-02
DE112012004957B4 (en) 2021-12-16
CN104012057B (en) 2016-12-14
US9621479B2 (en) 2017-04-11
US20180145926A1 (en) 2018-05-24

Similar Documents

Publication Publication Date Title
TWI516039B (en) Flexible and scalable enhanced transmission selection method for network fabrics
US9231870B2 (en) Flexible and scalable data link layer flow control for network fabrics
JP7109527B2 (en) System and method for efficient virtualization in lossless networks
US10764178B2 (en) System and method for supporting resource quotas for intra and inter subnet multicast membership in a high performance computing environment
JP6957451B2 (en) Systems and methods for using subnet prefix values in the global route header (GRH) for linear forwarding table (LFT) search in high performance computing environments
US10757019B2 (en) System and method for supporting dual-port virtual router in a high performance computing environment
US8472443B2 (en) Port grouping for association with virtual interfaces
US10693809B2 (en) System and method for representing PMA attributes as SMA attributes in a high performance computing environment
US20140269290A1 (en) Metrics and Forwarding Actions on Logical Switch Partitions in a Distributed Network Switch
US9473420B2 (en) Metrics and forwarding actions on logical switch partitions in a distributed network switch
US20220174025A1 (en) System and method for supporting scalable bit map based p_key table in a high performance computing environment