CN104699647B - 用于操作双芯片组网络接口控制器的方法和系统 - Google Patents
用于操作双芯片组网络接口控制器的方法和系统 Download PDFInfo
- Publication number
- CN104699647B CN104699647B CN201410697404.0A CN201410697404A CN104699647B CN 104699647 B CN104699647 B CN 104699647B CN 201410697404 A CN201410697404 A CN 201410697404A CN 104699647 B CN104699647 B CN 104699647B
- Authority
- CN
- China
- Prior art keywords
- nic
- access control
- chipset
- medium access
- control chipset
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000009977 dual effect Effects 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 75
- 230000004044 response Effects 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 15
- 230000004913 activation Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000012423 maintenance Methods 0.000 description 10
- 238000003860 storage Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5022—Workload threshold
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Power Sources (AREA)
Abstract
本发明涉及一种用于操作双芯片组网络接口控制器的方法和系统。操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组网络接口控制器(“NIC”),包括:NIC控制模块确定由所述NIC处理的网络业务量;所述NIC控制模块确定由所述NIC处理的所述网络业务量是否超过预定阈值;响应于确定由所述NIC处理的所述网络业务量超过预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组的控制逻辑;以及响应于确定由所述NIC处理的所述网络业务量未超过所述预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组的控制逻辑。
Description
技术领域
本发明的领域是数据处理,或者更具体地说,是用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的方法、装置和产品。
背景技术
现代计算系统使用扩展卡或板上适配器形式的通信适配器,以便经由数据通信网络与其它计算机通信。这些通信适配器可以能够以极高的速度发送和接收数据。这些通信适配器还可以消耗大量电力以便支持高数据交换速度,即使当通信适配器以远低于其能力的速度发送和接收数据时也是如此。
发明内容
操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC,包括:NIC控制模块确定由所述NIC处理的网络业务量;所述NIC控制模块确定由所述NIC处理的所述网络业务量是否超过预定阈值;响应于确定由所述NIC处理的所述网络业务量超过预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组的控制逻辑;以及响应于确定由所述NIC处理的所述网络业务量未超过所述预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组的控制逻辑。
如附图中所示出的,从以下对本发明的实例实施例的更具体的描述,本发明的上述和其它目标、特性和优点将是显而易见的,其中相似参考标号通常表示本发明的实例实施例的相似部件。
附图说明
图1示出根据本发明实施例的双芯片组NIC的框图;
图2示出根据本发明实施例的包括可以包含双芯片组NIC的实例计算机的自动化计算机器的框图;
图3示出显示根据本发明实施例的用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的实例方法的流程图;
图4示出显示根据本发明实施例的用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的其它实例方法的流程图。
具体实施方式
参考从图1开始的附图,描述了用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的实例方法、装置和产品。图1示出根据本发明实施例的双芯片组NIC(102)的框图。图1的NIC(102)表示将计算机连接到计算机网络的计算机硬件组件。图1的NIC(102)可以位于个人计算机、数据中心中的刀片服务器、独立服务器或其它计算系统中。图1的NIC(102)可以实现为扩展卡,耦合该扩展卡以便经由总线接口(103)与计算机总线(100)进行数据通信。备选地,NIC(102)可以内置到计算机的母板中,并且进行耦合以便与也位于母板上的计算机总线(100)进行数据通信。在图1的实例中,可以实现NIC(102)以使计算机能够通过许多不同数据通信协议与计算机网络(128)通信,例如NIC(102)可以实现为以太网适配器、光纤通道适配器、以太网光纤通道适配器等。
图1的NIC(102)包括传输(“Tx”)FIFO(104)和接收(“Rx”)FIFO(106)。在图1的实例中,Tx FIFO(104)可以包括计算机存储器,以便存储要经由总线接口(103)和总线(100)从NIC(102)传输到计算系统中的其它组件(例如计算机处理器)的分组。在图1的实例中,RxFIFO(106)可以包括计算机存储器,以便存储NIC(102)经由总线接口(103)和总线(100)从计算系统中的其它组件(例如计算机处理器)接收的分组。这样,Tx FIFO(104)和Rx FIFO(106)可以用于存储NIC(102)接收和传输的数据分组。
图1的NIC(102)包括高性能介质访问控制芯片组(108)和低性能介质访问控制芯片组(118)两者。在图1的实例中,高性能介质访问控制芯片组(108)和低性能介质访问控制芯片组(118)可以实现为自动化计算机器,包括处理单元、电路、计算机存储器,以及被配置为执行功能的类似计算组件,这些功能使NIC(102)能够执行通过介质无关接口(“MII”)与数据通信网络(128)进行数据通信。
在图1的实例中,高性能介质访问控制芯片组(108)包括Tx控制(110)模块和Rx控制(112)模块。Tx控制(110)模块例如可以实现为电路,其被配置为将消息和数据加载到TxFIFO(104)中,以便经由总线接口(103)和总线(100)从NIC(102)传输到计算系统中的其它组件(例如计算机处理器)。Rx控制(112)模块例如可以实现为电路,其被配置为检索和处理来自Rx FIFO(106)的消息和数据,以便随后由NIC(102)传输到数据通信网络(128)。在图1的实例中,低性能介质访问控制芯片组(118)包括类似的Tx控制(120)模块和Rx控制(122)模块。
在图1的实例中,高性能介质访问控制芯片组(108)和低性能介质访问控制芯片组(118)还包括处理器(114、126)。在图1的实例中,每个处理器(114、126)表示用于处理计算机程序指令的计算机器。在图1的实例中,高性能介质访问控制芯片组(108)中的处理器(114)可以以高于低性能介质访问控制芯片组(118)中的处理器(126)的时钟速率操作,以便高性能介质访问控制芯片组(108)中的处理器(114)可以以快于低性能介质访问控制芯片组(118)中的处理器(126)的速度执行计算机程序指令。这样,高性能介质访问控制芯片组(108)可以提供高于低性能介质访问控制芯片组(118)的性能。
高性能介质访问控制芯片组(108)包括卸载引擎(124)。在图1的实例中,卸载引擎(124)可以实现为自动化计算级群(例如数字电路),以便处理整个协议栈,从而将这种处理从包括NIC(102)的计算系统中的计算机处理器“卸载”到实际NIC(102)本身。例如,当NIC(102)实现为以太网适配器时,图1的卸载引擎(124)可以处理整个TCP/IP栈。因此,卸载引擎(124)可以负责执行某些功能,例如使用3-路握手建立连接,确认接收的分组,计算校验和及序列号等。这样,将这些功能的部分或全部移动到诸如卸载引擎(124)之类的专用硬件,可以释放计算系统的主CPU以便执行其它任务。
读者应该理解,低性能介质访问控制芯片组(118)不包括卸载引擎。因为高性能介质访问控制芯片组(108)的卸载引擎(124)表示额外消耗电力的计算机硬件,所以在低网络带宽期间可以使用低性能介质访问控制芯片组(118)以便减少NIC(102)使用的电量。此外,高性能介质访问控制芯片组(108)中存在卸载引擎(124)可以导致高性能介质访问控制芯片组(108)相对于低性能介质访问控制芯片组(118)而提高性能。
在图1的实例中,NIC(102)还包括共享存储器(116),其可由高性能介质访问控制芯片组(108)和低性能介质访问控制芯片组(118)访问。图1的共享存储器(116)可以包括存储在共享存储器(116)中用于管理NIC(102)的操作的控制逻辑,例如NIC控制模块(302)。图1的NIC控制模块(302)例如可以实现为在计算机硬件(例如计算机处理器)上执行的计算机程序指令的模块。
图1的NIC控制模块(302)可以包括以下计算机程序指令:当执行它们时,确定由NIC(102)处理的网络业务量。在图1的实例中,确定由NIC(102)处理的网络业务量可以包括确定由NIC(102)在预定周期时间内处理的网络业务量。在图1的实例中,由NIC(102)处理的网络业务量例如可以根据NIC(102)在特定时间单位内处理的字节数来表示。由NIC(102)处理的网络业务量可以包括NIC(102)接收的数据字节数、NIC(102)传输的数据字节数,或者它们的任意组合。这样,由NIC(102)处理的网络业务量可以表示在特定时间段内流过NIC(102)的数据总量。确定由NIC(102)处理的网络业务量例如可以通过以下操作执行:监视在预定时间段内流出NIC(102)的出站端口的数据量,监视在预定时间段内流入NIC(102)的入站端口的数据量,或者它们的任意组合。
图1的NIC控制模块(302)还可以包括以下计算机程序指令:当执行它们时,确定由NIC(102)处理的网络业务量是否超过预定阈值。在图1的实例中,预定阈值表示一个点,在该点处将更改被最佳配置以操作NIC(102)处理的网络业务量的介质访问控制芯片组。例如,当由NIC(102)处理的网络业务量低于预定阈值时,应该使用低性能介质访问控制芯片组(118)执行数据通信操作。备选地,当由NIC(102)处理的网络业务量高于预定阈值时,应该使用高性能介质访问控制芯片组(108)执行数据通信操作。因此,可以将预定阈值设置为表示NIC(102)能够使用低性能介质访问控制芯片组(118)处理的最大网络业务量的值。因此,可以通过将NIC(102)处理的网络业务量与预定阈值相比较,执行确定由NIC(102)处理的网络业务量是否超过预定阈值。
图1的NIC控制模块(302)还可以包括以下计算机程序指令:当执行它们时,配置NIC(102)以针对数据通信操作使用高性能介质访问控制芯片组(108)。配置NIC(102)以针对数据通信操作使用高性能介质访问控制芯片组(108)可以包括使低性能介质访问控制芯片组(118)断电。响应于肯定地确定NIC(102)处理的网络业务量超过预定阈值,执行配置NIC(102)以针对数据通信操作使用高性能介质访问控制芯片组(108)。
例如可以通过使用每个介质访问控制芯片组在共享存储器(116)中维护的活动标志,执行配置NIC(102)以针对数据通信操作使用高性能介质访问控制芯片组(108)。当特定介质访问控制芯片组维护的活动标志的值设置为“1”时,该介质访问控制芯片组可以正常操作—发送分组和处理接收的分组。但是,当特定介质访问控制芯片组维护的活动标志的值设置为“0”时,该介质访问控制芯片组可以在待机模式下操作,并且可以被配置为禁止处理接收的分组、传输分组或者执行任何其它尝试促进数据通信的操作。在此类实例中,可以通过将高性能介质访问控制芯片组(108)的活动标志设置为值“1”,并且还将低性能介质访问控制芯片组(118)的活动标志设置为值“0”,执行配置NIC(102)以针对数据通信操作使用高性能介质访问控制芯片组(108)。
图1的NIC控制模块(302)还可以包括以下计算机程序指令:当执行它们时,配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)。配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)可以包括使高性能介质访问控制芯片组(108)断电。响应于确定NIC(102)处理的网络业务量未超过预定阈值,执行配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)。
例如可以通过使用每个介质访问控制芯片组在共享存储器(116)中维护的活动标志,执行配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)。当特定介质访问控制芯片组维护的活动标志的值设置为“1”时,该介质访问控制芯片组可以正常操作—发送分组和处理接收的分组。但是,当特定介质访问控制芯片组维护的活动标志的值设置为“0”时,该介质访问控制芯片组可以在待机模式下操作,并且可以被配置为禁止处理接收的分组、传输分组或者执行任何其它尝试促进数据通信的操作。在此类实例中,可以通过将低性能介质访问控制芯片组(118)的活动标志设置为值“1”,并且还将高性能介质访问控制芯片组(108)的活动标志设置为值“0”,执行配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)。
图1的NIC控制模块(302)还可以包括以下计算机程序指令:当执行它们时,在NIC(102)的初始加电期间,配置NIC(102)以针对数据通信操作使用低性能介质访问控制芯片组(118)。当最初为NIC(102)加电时,图1的NIC(102)可以初始被配置为针对数据通信操作使用低性能介质访问控制芯片组(118)。但是,当NIC(102)处理的网络业务量增加时,NIC可以最终切换模式以便针对数据通信操作使用高性能介质访问控制芯片组(108)。
图2示出根据本发明实施例的包括可以包含双芯片组NIC(102)的实例计算机(152)的自动化计算机器的框图。图2的计算机(152)包括至少一个计算机处理器(156)或“CPU”以及随机存取存储器(168)(“RAM”),RAM 168通过高速存储总线(166)和总线适配器(158)连接到处理器(156)和计算机(152)的其它组件。
操作系统(154)存储在RAM(168)中。可用于包括根据本发明实施例的双芯片组NIC(102)的计算机(152)的操作系统包括UNIXTM、LinuxTM、Microsoft XPTM、AIXTM、IBM的i5/OSTM,以及所属技术领域的技术人员想到的其它操作系统。图2的实例中的操作系统(154)被示出在RAM(168)中,但此类软件的许多组件通常存储在例如也在磁盘驱动器(170)上的非易失性存储器中。
图2的计算机(152)包括磁盘驱动器适配器(172),其通过扩展总线(160)和总线适配器(158)耦合到处理器(156)和计算机(152)的其它组件。磁盘驱动器适配器(172)将磁盘驱动器(170)形式的非易失性数据存储装置连接到计算机(152)。可用于包括根据本发明实施例的双芯片组NIC(102)的计算机(152)的磁盘驱动器适配器包括集成驱动电子设备(“IDE”)适配器、小型计算机系统接口(“SCSI”)适配器,以及所属技术领域的技术人员想到的其它适配器。非易失性计算机存储器还可以实现为光盘驱动器、电可擦式可编程只读存储器(所谓的“EEPROM”或“闪存”)、RAM驱动器等,以及所属技术领域的技术人员想到的其它存储器。
图2的实例计算机(152)包括一个或多个输入/输出(“I/O”)适配器(178)。I/O适配器例如通过软件驱动程序和计算机硬件,实现面向用户的输入/输出,以便控制到显示设备(例如计算机显示屏)的输出,以及来自用户输入设备(181)(例如键盘和鼠标)的用户输入。图2的实例计算机(152)包括视频适配器(209),其是专门设计为到显示设备(180)(例如显示屏或计算机显示器)的图形输出的I/O适配器的一个实例。视频适配器(209)通过高速视频总线(164)、总线适配器(158),以及也是高速总线的前端总线(162)连接到处理器(156)。
图2的实例计算机(152)包括双芯片组NIC(102),其用于与其它计算机(182)进行数据通信以及与数据通信网络(128)进行数据通信。这些数据通信可以通过RS-232连接、通过外部总线(例如通用串行总线(“USB”))、通过数据通信网络(例如IP数据通信网络),以及所属技术领域的技术人员想到的其它方式连续执行。通信适配器实现硬件级别的数据通信,一个计算机通过这些数据通信,直接或通过数据通信网络将数据通信发送到另一个计算机。根据本发明实施例的双芯片组NIC(102)的实例包括FibreChannel适配器、用于有线数据通信网络通信的以太网(IEEE 802.3)适配器、用于无线数据通信网络通信的802.11适配器等。
为了进一步解释,图3示出显示根据本发明实施例的用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的实例方法的流程图。在图3的实例方法中,包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC例如可以实现为图1的NIC。
图3的实例方法可以通过NIC控制模块(302)执行。图3的NIC控制模块(302)例如可以实现为在计算机硬件(例如计算机处理器)上执行的计算机程序指令的模块。图3的NIC控制模块(302)可以存储在作为NIC的一部分包括的计算机存储器中,以便NIC本身负责它自己的操作。例如,图3的NIC控制模块(302)可以存储在图1中所示的共享存储器(图1的116)中,并且可以由图1中所示的处理器(图1的114或126)执行。备选地,图3的NIC控制模块(302)可以由未在图1中示出的NIC的专用处理器执行。
图3的实例方法包括NIC控制模块(302)确定(304)NIC处理的网络业务量。在图3的实例方法中,NIC处理的网络业务量例如可以根据NIC在特定时间单位内处理的字节数来表示。NIC处理的网络业务量可以包括NIC接收的数据字节数、NIC传输的数据字节数,或者它们的任意组合。这样,NIC处理的网络业务量可以表示在特定时间段内流过NIC的数据总量。在图3的实例方法中,确定(304)NIC处理的网络业务量例如可以通过以下操作执行:监视在预定时间段内流出NIC的出站端口的数据量,监视在预定时间段内流入NIC的入站端口的数据量,或者它们的任意组合。
图3的实例方法还包括NIC控制模块(302)确定(306)NIC处理的网络业务量是否超过预定阈值。在图3的实例方法中,预定阈值表示一个点,在该点处将更改被最佳配置以操作NIC处理的网络业务量的介质访问控制芯片组。例如,当NIC处理的网络业务量低于预定阈值时,应该使用低性能介质访问控制芯片组执行数据通信操作。备选地,当NIC处理的网络业务量高于预定阈值时,应该使用高性能介质访问控制芯片组执行数据通信操作。因此,可以将预定阈值设置为表示NIC能够使用低性能介质访问控制芯片组处理的最大网络业务量的值。因此,可以通过将NIC处理的网络业务量与预定阈值相比较,执行确定(306)NIC处理的网络业务量是否超过预定阈值。
图3的实例方法还包括配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组。在图3的实例方法中,响应于肯定(308)确定NIC处理的网络业务量超过预定阈值,执行配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组。例如可以通过使用每个介质访问控制芯片组维护的活动标志,执行配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组。当特定介质访问控制芯片组维护的活动标志的值设置为“1”时,该介质访问控制芯片组可以正常操作—发送分组和处理接收的分组。但是,当特定介质访问控制芯片组维护的活动标志的值设置为“0”时,该介质访问控制芯片组可以在待机模式下操作,并且可以被配置为禁止处理接收的分组、传输分组或者执行任何其它尝试促进数据通信的操作。在此类实例中,可以通过将高性能介质访问控制芯片组的活动标志设置为值“1”,并且还将低性能介质访问控制芯片组的活动标志设置为值“0”,执行配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组。
图3的实例方法还包括配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组。在图3的实例方法中,响应于确定NIC处理的网络业务量没有(310)超过预定阈值,执行配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组。例如可以通过使用每个介质访问控制芯片组维护的活动标志,执行配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组。当特定介质访问控制芯片组维护的活动标志的值设置为“1”时,该介质访问控制芯片组可以正常操作—发送分组和处理接收的分组。但是,当特定介质访问控制芯片组维护的活动标志的值设置为“0”时,该介质访问控制芯片组可以在待机模式下操作,并且可以被配置为禁止处理接收的分组、传输分组或者执行任何其它尝试促进数据通信的操作。在此类实例中,可以通过将低性能介质访问控制芯片组的活动标志设置为值“1”,并且还将高性能介质访问控制芯片组的活动标志设置为值“0”,执行配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组。
为了进一步解释,图4示出显示根据本发明实施例的用于操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组NIC的实例方法的流程图。图4的实例方法类似于图3的实例方法,因为它也包括确定(304)NIC处理的网络业务量、确定(306)NIC处理的网络业务量是否超过预定阈值、配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组,以及配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组。
图4的实例方法还包括在NIC的初始加电期间,NIC控制模块(302)配置(402)NIC以针对数据通信操作使用低性能介质访问控制芯片组。在图4的实例方法中,当最初为NIC供电时,NIC可以初始被配置为针对数据通信操作使用低性能介质访问控制芯片组。但是,当NIC处理的网络业务量增加时,NIC可以最终切换模式以便针对数据通信操作使用高性能介质访问控制芯片组。
在图4的实例方法中,确定(304)由NIC处理的网络业务量包括确定(404)由NIC在预定周期时间内处理的网络业务量。在图4的实例方法中,预定周期时间可以由系统管理员设置,预定周期时间可以由NIC的制造商设置等。这样,可以将预定周期时间设置为某个值,以便防止低性能介质访问控制芯片组在延长的高带宽周期内处理数据通信,并且还防止高性能介质访问控制芯片组在延长的低带宽周期内处理数据通信。
在图4的实例方法中,配置(312)NIC以针对数据通信操作使用高性能介质访问控制芯片组包括使低性能介质访问控制芯片组断电(406)。通过类似的方式,配置(314)NIC以针对数据通信操作使用低性能介质访问控制芯片组包括使高性能介质访问控制芯片组断电(408)。在图4的实例方法中,例如可以通过将适当的介质访问控制芯片组置于待机模式,通过导致不向适当的介质访问控制芯片组供电等,执行使介质访问控制芯片组断电(406、408)。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括—但不限于—电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括—但不限于—无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的各个方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其它设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
附图中的流程图和框图显示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
从以上描述中可以理解,可以在本发明的各种实施例中做出修改和更改而不偏离本发明的真实精神。本说明书中的描述仅为示例目的并且不应以限制的意义来理解所述描述。本发明的范围仅由以下权利要求的语言来限定。
Claims (15)
1.一种双芯片组网络接口控制器NIC,包括:
高性能介质访问控制芯片组,包括至少一个处理器以及用于处理整个协议栈的卸载引擎;
低性能介质访问控制芯片组,包括至少一个处理器,其中所述高性能介质访问控制芯片组的所述至少一个处理器以快于所述低性能介质访问控制芯片组的所述至少一个处理器的速度执行计算机程序指令;
用于确定由所述NIC处理的网络业务量的控制逻辑;
用于确定由所述NIC处理的所述网络业务量是否超过预定阈值的控制逻辑;
用于响应于确定由所述NIC处理的所述网络业务量超过预定阈值,配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组的控制逻辑;以及
用于响应于确定所述NIC处理的所述网络业务量未超过所述预定阈值,配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组的控制逻辑。
2.根据权利要求1的双芯片组NIC,还包括可由所述高性能介质访问控制芯片组和所述低性能介质访问控制芯片组访问的共享存储器。
3.根据权利要求1的双芯片组NIC,还包括用于在所述NIC的初始加电期间,配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组的控制逻辑。
4.根据权利要求1的双芯片组NIC,其中所述低性能介质访问控制芯片组不包括卸载引擎。
5.根据权利要求1的双芯片组NIC,其中用于确定由所述NIC处理的所述网络业务量的控制逻辑进一步包括用于确定由所述NIC在预定周期时间内处理的所述网络业务量的控制逻辑。
6.根据权利要求1的双芯片组NIC,其中所述高性能介质访问控制芯片组包括第一处理器,并且所述低性能介质访问控制芯片组包括第二处理器,其中所述第一处理器以高于所述第二处理器的时钟速率操作。
7.根据权利要求1的双芯片组NIC,其中用于配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组的控制逻辑进一步包括用于使所述高性能介质访问控制芯片组断电的控制逻辑。
8.根据权利要求1的双芯片组NIC,其中用于配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组的控制逻辑进一步包括用于使所述低性能介质访问控制芯片组断电的控制逻辑。
9.一种操作包括高性能介质访问控制芯片组和低性能介质访问控制芯片组的双芯片组网络接口控制器NIC的方法,所述方法包括:
NIC控制模块确定由所述NIC处理的网络业务量;
所述NIC控制模块确定由所述NIC处理的所述网络业务量是否超过预定阈值;
响应于确定由所述NIC处理的所述网络业务量超过预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组,所述高性能介质访问控制芯片组包括至少一个处理器以及用于处理整个协议栈的卸载引擎;以及
响应于确定由所述NIC处理的所述网络业务量未超过所述预定阈值,所述NIC控制模块配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组,所述低性能介质访问控制芯片组包括至少一个处理器,其中所述高性能介质访问控制芯片组的所述至少一个处理器以快于所述低性能介质访问控制芯片组的所述至少一个处理器的速度执行计算机程序指令。
10.根据权利要求9的方法,还包括所述NIC控制模块在所述NIC的初始加电期间,配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组。
11.根据权利要求9的方法,其中确定由所述NIC处理的所述网络业务量进一步包括确定由所述NIC在预定周期时间内处理的所述网络业务量。
12.根据权利要求9的方法,其中配置所述NIC以针对数据通信操作使用所述高性能介质访问控制芯片组进一步包括使所述低性能介质访问控制芯片组断电。
13.根据权利要求9的方法,其中配置所述NIC以针对数据通信操作使用所述低性能介质访问控制芯片组进一步包括使所述高性能介质访问控制芯片组断电。
14.根据权利要求9的方法,其中所述NIC包括可由所述高性能介质访问控制芯片组和所述低性能介质访问控制芯片组访问的共享存储器。
15.根据权利要求9的方法,其中所述低性能介质访问控制芯片组不包括卸载引擎。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/096270 | 2013-12-04 | ||
US14/096,270 US9628333B2 (en) | 2013-12-04 | 2013-12-04 | Operating a dual chipset network interface controller (‘NIC’) that includes a high performance media access control chipset and a low performance media access control chipset |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104699647A CN104699647A (zh) | 2015-06-10 |
CN104699647B true CN104699647B (zh) | 2017-11-10 |
Family
ID=53265453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410697404.0A Expired - Fee Related CN104699647B (zh) | 2013-12-04 | 2014-11-27 | 用于操作双芯片组网络接口控制器的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9628333B2 (zh) |
CN (1) | CN104699647B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9419905B2 (en) | 2014-04-04 | 2016-08-16 | International Business Machines Corporation | Data streaming scheduler for dual chipset architectures that includes a high performance chipset and a low performance chipset |
EP3286874B1 (en) | 2015-04-21 | 2022-08-03 | Nokia Technologies Oy | Certificate verification |
US10819632B2 (en) * | 2017-01-18 | 2020-10-27 | Synology Inc. | Routers and methods for traffic management |
CN109150733A (zh) * | 2017-06-16 | 2019-01-04 | 群晖科技股份有限公司 | 路由器及并合式封包处理方法 |
CN114528032A (zh) * | 2020-10-30 | 2022-05-24 | 华为云计算技术有限公司 | 一种服务器系统以及数据处理的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1961533A (zh) * | 2003-06-30 | 2007-05-09 | 微软公司 | 用于多无线电系统的能量感知通信 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6788704B1 (en) * | 1999-08-05 | 2004-09-07 | Intel Corporation | Network adapter with TCP windowing support |
US20020188749A1 (en) * | 2001-06-06 | 2002-12-12 | Gaur Daniel R. | Receive performance of a network adapter by dynamically tuning its interrupt delay |
US7774440B1 (en) * | 2001-07-25 | 2010-08-10 | Scalable Network Technologies, Inc. | Method and system for enhancing performance of a physical network under real-time control using simulation of a reference model |
US7162270B2 (en) | 2003-10-30 | 2007-01-09 | Kuo Liang Chen | Dual communication mode wireless network transmission device |
US20070094444A1 (en) * | 2004-06-10 | 2007-04-26 | Sehat Sutardja | System with high power and low power processors and thread transfer |
US7684322B2 (en) * | 2004-07-01 | 2010-03-23 | Nortel Networks Limited | Flow admission control in an IP network |
US7860943B2 (en) * | 2004-08-23 | 2010-12-28 | Zhe Khi Pak | Enhanced network direct attached storage controller |
US7461275B2 (en) * | 2005-09-30 | 2008-12-02 | Intel Corporation | Dynamic core swapping |
JP2007206955A (ja) * | 2006-02-01 | 2007-08-16 | Sony Corp | 情報処理装置および方法、プログラム、並びに記録媒体 |
KR100721444B1 (ko) | 2006-08-29 | 2007-05-23 | 삼성전자주식회사 | 네트워크-온-칩 전력 제어 장치 및 그 방법 |
US20080120426A1 (en) * | 2006-11-17 | 2008-05-22 | International Business Machines Corporation | Selective acceleration of transport control protocol (tcp) connections |
KR101053903B1 (ko) | 2007-10-19 | 2011-08-04 | 삼성전자주식회사 | 네트워크온칩에서 전압 및 주파수 제어 장치 및 방법 |
JP2009199433A (ja) * | 2008-02-22 | 2009-09-03 | Fujitsu Ltd | ネットワーク処理装置およびネットワーク処理プログラム |
US8286014B2 (en) | 2008-03-25 | 2012-10-09 | Intel Corporation | Power management for a system on a chip (SoC) |
US8171175B2 (en) * | 2009-01-23 | 2012-05-01 | Qualcomm Incorporated | Methods and systems using data rate driven protocol accelerator for mobile devices |
US8009682B2 (en) * | 2009-05-05 | 2011-08-30 | Citrix Systems, Inc. | Systems and methods for packet steering in a multi-core architecture |
US8572609B2 (en) * | 2009-07-01 | 2013-10-29 | Riverbed Technology, Inc. | Configuring bypass functionality of a network device based on the state of one or more hosted virtual machines |
US8364857B2 (en) | 2009-08-31 | 2013-01-29 | Qualcomm Incorporated | Wireless modem with CPU and auxiliary processor that shifts control between processors when in low power state while maintaining communication link to wireless network |
JPWO2011096307A1 (ja) * | 2010-02-03 | 2013-06-10 | 日本電気株式会社 | プロキシ装置とその動作方法 |
US8555343B2 (en) * | 2010-03-23 | 2013-10-08 | Verizon Patent And Licensing Inc. | Managing resource allocations based on traffic patterns |
US8576713B2 (en) * | 2010-04-23 | 2013-11-05 | Ixia | Traffic generator with priority flow control |
US8589665B2 (en) * | 2010-05-27 | 2013-11-19 | International Business Machines Corporation | Instruction set architecture extensions for performing power versus performance tradeoffs |
TWI410087B (zh) | 2010-12-20 | 2013-09-21 | Ind Tech Res Inst | 多核心晶片網路 |
US9229809B2 (en) * | 2011-09-11 | 2016-01-05 | Microsoft Technology Licensing Llc | Nonvolatile media journaling of verified data sets |
WO2013180295A1 (ja) * | 2012-06-01 | 2013-12-05 | 日本電信電話株式会社 | パケット転送処理方法およびパケット転送処理装置 |
US8943343B2 (en) * | 2012-06-20 | 2015-01-27 | Intel Corporation | Controlling an asymmetrical processor |
US9178815B2 (en) * | 2013-03-05 | 2015-11-03 | Intel Corporation | NIC flow switching |
US20140269299A1 (en) * | 2013-03-14 | 2014-09-18 | Hewlett-Packard Development Company, L.P. | Network controller normalization of network traffic |
US10423216B2 (en) * | 2013-03-26 | 2019-09-24 | Via Technologies, Inc. | Asymmetric multi-core processor with native switching mechanism |
-
2013
- 2013-12-04 US US14/096,270 patent/US9628333B2/en not_active Expired - Fee Related
-
2014
- 2014-11-27 CN CN201410697404.0A patent/CN104699647B/zh not_active Expired - Fee Related
-
2015
- 2015-08-25 US US14/834,576 patent/US9634895B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1961533A (zh) * | 2003-06-30 | 2007-05-09 | 微软公司 | 用于多无线电系统的能量感知通信 |
Also Published As
Publication number | Publication date |
---|---|
CN104699647A (zh) | 2015-06-10 |
US9634895B2 (en) | 2017-04-25 |
US20150365286A1 (en) | 2015-12-17 |
US9628333B2 (en) | 2017-04-18 |
US20150154141A1 (en) | 2015-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10846160B2 (en) | System and method for remote system recovery | |
CN104699647B (zh) | 用于操作双芯片组网络接口控制器的方法和系统 | |
CN108694021A (zh) | 使用基板管理控制器配置存储设备的系统和方法 | |
US10110691B2 (en) | Systems and methods for enabling virtual keyboard-video-mouse for external graphics controllers | |
WO2017148292A1 (zh) | 一种级联板、ssd远程共享访问的系统和方法 | |
CN109597658A (zh) | 在计算环境中动态地启用和禁用加速器设备的技术 | |
WO2020000700A1 (zh) | 一种无人机系统中的模块升级方法和无人机系统 | |
US10921870B2 (en) | System and method for hybrid power supply | |
US9886568B2 (en) | Systems and methods for secure remote management controller reset | |
US10877553B2 (en) | Systems and methods for power control based on power consumption of storage devices | |
EP3442166B1 (en) | Composing by network attributes | |
US10285033B2 (en) | System and method for propagation of server information in a data center with master system election | |
US20190004816A1 (en) | Systems and methods for heterogeneous system on a chip servers | |
US20150097843A1 (en) | Systems and methods for providing pre-operating system and post-operating system remote management of information handling system | |
US10645166B2 (en) | Network interface card | |
CN103558995A (zh) | 一种存储控制芯片及磁盘报文传输方法 | |
US10439934B2 (en) | Systems and methods for addressing multiple physical and virtual functions in network controller-sideband interface | |
US10075398B2 (en) | Systems and methods for enabling a host system to use a network interface of a management controller | |
US10402357B1 (en) | Systems and methods for group manager based peer communication | |
US20190028541A1 (en) | Integrated converged storage array | |
US10430241B2 (en) | Systems and methods for scalable cloud computing by optimally utilizing management controller for host compute processing | |
CN104572172B (zh) | 加载无盘计算节点的操作系统的方法和装置 | |
US11469603B1 (en) | Bidirectional charging system for a stylus of an information handling system | |
US9111039B2 (en) | Limiting bandwidth for write transactions across networks of components in computer systems | |
US20220171729A1 (en) | Systems and methods for single-wire in-band pulse-addressable multiplexer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171110 |
|
CF01 | Termination of patent right due to non-payment of annual fee |