Server bandwidth allocation method and device, equipment and storage medium
By acquiring the status data of expansion cards and dynamically allocating bandwidth, the problem of fixed bandwidth allocation for server PCIe slots is solved, resulting in higher resource utilization and operational efficiency.
Patent Information
- Application Number
- CN202511269258.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-05
- Publication Date
- 2025-12-12
AI Technical Summary
In existing technologies, the fixed bandwidth allocation of server PCIe slots leads to low resource utilization and assembly errors.
By acquiring the status data of the expansion board, determining the power level signal and output enable status, combining hardware characteristic information, and dynamically allocating bandwidth based on a preset bandwidth allocation strategy, the expansion board can achieve flexible adaptation.
Without replacing the hardware, the utilization and flexibility of the server were improved, anomalies caused by assembly errors were avoided, and operational efficiency was increased.
Smart Images

Figure CN121125503A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of servers, and in particular to a server bandwidth allocation method, a server bandwidth allocation device, an electronic device and a computer readable storage medium. BACKGROUND
[0002] The server industry is rapidly evolving towards high density, high performance and flexible expansion. In this process, PCIE (peripheral component interconnect express) technology, as a key I / O (input / output) interconnection standard for servers, is crucial. Modern servers use high-speed network cards based on PCIE interfaces (and high-speed NVMe SSD storage disks) to meet the demand for high-bandwidth, low-latency data transmission.
[0003] However, when the cable length is long, a Retimer card is needed to implement PCIE rate conversion. However, when different PCIE network card devices need to be installed in a slot, the prior art often opens multiple Riser cards or fixes different types of PCIE cards in different slots, and fixes the bandwidth of the corresponding PCIE slot, so that the corresponding slot can only connect to a specific PCIE network card, and the dynamic and flexible allocation of server PCIE channel resources cannot be realized, resulting in low resource utilization and assembly errors. SUMMARY
[0004] Therefore, the present application aims to provide a server bandwidth allocation method, device, equipment and storage medium to solve the problems of low resource utilization and assembly errors caused by fixed bandwidth allocation.
[0005] According to a first aspect of the present application, a server bandwidth allocation method is provided, the method comprising:
[0006] obtaining state data of an expansion board card;
[0007] determining a power level signal according to the state data;
[0008] determining an output enable state according to the power level signal;
[0009] combining the state data, the power level signal and the output enable state to determine hardware feature information;
[0010] determining configuration information corresponding to the hardware feature information;
[0011] determining bandwidth identification information matching the configuration information based on a preset bandwidth allocation strategy;
[0012] allocating bandwidth to the expansion board based on the bandwidth identification information.
[0013] Optionally,
[0014] The state data comprises a high-speed serial expansion slot in-place signal, an expansion board in-place signal and a cable connection state, and the determining of the power level signal according to the state data comprises:
[0015] In a case where the high-speed serial expansion slot in-place signal is detected as a device in place and the expansion board in-place signal is detected as a device in place, determining the power level signal based on the cable connection state.
[0016] Optionally, the determining of the power level signal based on the cable connection state comprises:
[0017] In a case where the cable connection state is an unconnected state, determining the power level signal as a high level;
[0018] In a case where the cable connection state is a connected state, determining the power level signal as a low level.
[0019] Optionally, the determining of the output enable state according to the power level signal comprises:
[0020] In a case where the power level signal is a high level, determining the output enable state as a closed state;
[0021] In a case where the power level signal is a low level, obtaining a backboard identification;
[0022] In a case where the backboard identification is a preset identification, determining the output enable state as an output state;
[0023] In a case where the backboard identification is not the preset identification, determining the output enable state as a closed state.
[0024] Optionally, the determining of the bandwidth identification information matched with the configuration information based on a preset bandwidth allocation strategy comprises:
[0025] Determining a device type of the expansion board based on the configuration information;
[0026] Determining bandwidth identification information matched with the device type based on a preset bandwidth allocation strategy.
[0027] Optionally, the method further comprises:
[0028] Determining fan rotating speed information based on the device type of the expansion board, the fan rotating speed information being used to control a cooling fan to cool the expansion board.
[0029] Optionally, the method further comprises:
[0030] acquiring inherent characteristic information of the expansion board card;
[0031] determining configuration information of the expansion board card based on the inherent characteristic information.
[0032] According to a second aspect of the present application, a server bandwidth allocation apparatus is provided, comprising:
[0033] a data acquisition module configured to acquire state data of an expansion board card;
[0034] a level signal determination module configured to determine a power level signal based on the state data;
[0035] an output enable state determination module configured to determine an output enable state based on the power level signal;
[0036] a combination module configured to combine the state data, the power level signal and the output enable state to determine hardware characteristic information;
[0037] a configuration information determination module configured to determine configuration information corresponding to the hardware characteristic information;
[0038] a bandwidth determination module configured to determine bandwidth identification information matching the configuration information based on a preset bandwidth allocation strategy;
[0039] a bandwidth allocation module configured to allocate bandwidth to the expansion board card based on the bandwidth identification information.
[0040] According to yet another aspect of the present application, an electronic device is provided, comprising:
[0041] a processor;
[0042] a memory configured to store instructions executable by the processor;
[0043] wherein the processor is configured to execute the instructions to implement the server bandwidth allocation method as described above.
[0044] According to yet another aspect of the present application, a readable storage medium is provided, on which a computer program is stored, the computer program being executed by a processor to implement the steps of the server bandwidth allocation method as described above.
[0045] The server bandwidth allocation method provided by the embodiment of the application can automatically identify and reallocate bandwidth, a same expansion board card can adapt to multiple configuration combinations without replacing any hardware, the utilization rate and flexibility of the server are significantly improved, the problem of server abnormality caused by misplacement during assembly is avoided, and the operation and maintenance efficiency is improved.
[0046] The above description is only a summary of the technical scheme of the application, in order to more clearly understand the technical means of the application, the content of the specification can be implemented, and in order to make the above and other purposes, characteristics and advantages of the application more obvious and easy to understand, the specific embodiments of the application are described below. BRIEF DESCRIPTION OF DRAWINGS
[0047] In order to more clearly illustrate the technical scheme in the embodiments of the application or the prior art, the drawings needed to be used in the embodiment or the prior art description will be briefly introduced.
[0048] Figure 1 One of the step flowcharts of the server bandwidth allocation method provided by the embodiment of the application;
[0049] Figure 2 The server high-speed serial expansion slot bandwidth allocation system schematic diagram of the server bandwidth allocation method provided by the embodiment of the application;
[0050] Figure 3 The server high-speed serial expansion slot bandwidth allocation design schematic diagram of the server bandwidth allocation method provided by the embodiment of the application;
[0051] Figure 4 The second step flowchart of the server bandwidth allocation method provided by the embodiment of the application;
[0052] Figure 5 The third step flowchart of the server bandwidth allocation method provided by the embodiment of the application;
[0053] Figure 6 The fourth step flowchart of the server bandwidth allocation method provided by the embodiment of the application;
[0054] Figure 7 The fifth step flowchart of the server bandwidth allocation method provided by the embodiment of the application;
[0055] Figure 8 A flowchart of steps for a server bandwidth allocation method provided in an embodiment of the present invention is shown in Figure 6.
[0056] Figure 9 A block diagram of a server bandwidth allocation device provided in an embodiment of the present invention;
[0057] Figure 10 A schematic diagram illustrating the effect of a server bandwidth allocation method provided in this embodiment of the invention;
[0058] Figure 11 This is a schematic diagram of a communication device provided in an embodiment of the present invention. Detailed Implementation
[0059] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the various embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, those skilled in the art will understand that many technical details are presented in the various embodiments of the present invention to facilitate a better understanding of this application. However, the technical solutions claimed in this application can be implemented even without these technical details and various changes and modifications based on the following embodiments. The division of the various embodiments below is for ease of description and should not constitute any limitation on the specific implementation of the present invention. The various embodiments can be combined with and referenced by each other without contradiction.
[0060] Reference Figure 1 The diagram illustrates one of the steps of a server bandwidth allocation method provided by an embodiment of the present invention, which may include:
[0061] Step 101: Obtain the status data of the expansion board;
[0062] It should be noted that, in this embodiment of the invention, when assembling the server, the Riser board (expansion board), cables, GENZ connectors (interconnect connectors), and Riser board gold fingers (expansion board gold fingers) need to be correctly assembled. The MCU (Microcontroller Unit) on the expansion board acts as an intelligent management unit, capable of collecting various status data of the expansion board and communicating with the CPLD (Complex Programmable Logic Device) on the MC (Management Controller) via the I2C bus. The CPLD summarizes all status data and provides it to the BMC (Baseboard Management Controller) and CPU (Central Processing Unit) on the motherboard.
[0063] Step 102: Determine the power level signal based on the status data;
[0064] It should be noted that in this embodiment of the invention, the BMC is responsible for platform hardware management. It can identify the presence and information of corresponding devices based on the expansion board status data summarized by the CPLD, and update the device list and status in the management interface based on the status data, showing which slot has a card and which Riser board (e.g., Riser board 1 is expansion board 1) is identified. Specifically, the presence signal generates a level change through physical connections (slot contacts, gold fingers). The IO expander (Input / Output expander) digitizes the level signal. The MCU reads all digital information and packages it to send to the CPLD of the motherboard via I2C. The motherboard CPLD distributes the information to the BMC (for status monitoring) and the CPU (for bandwidth allocation decisions). That is, by identifying the expansion board status data, the power supply level signal can be determined.
[0065] Step 103: Determine the output enable state based on the power supply level signal;
[0066] It should be noted that in this embodiment of the invention, BW_ID[3:0] is an internal register bit field or configuration identifier used for software-level control or device identification. [3:0] indicates that BW_ID[3:0] is a signal or identifier with a base width of 4 bits. The BW_ID[3:0] signal line is connected to the GPIO pin (General-Purpose Input / Output) of the MCU. The GPIO pin of the MCU can usually be configured to three states, such as output high level, output low level, and high impedance state (equivalent to the pin being disconnected and not outputting any level, and its level is determined by the external circuit). If multiple expansion boards (such as Riser board 2 and NVME backplane) share the same BW_ID bus through cables, only one board can drive (output) this bus at any time. Otherwise, signal conflict will occur, resulting in level errors or even hardware damage. Therefore, the MCU must ensure that it only switches its GPIO pin from input mode (used to read the resistance code value) to output mode (driving the BW_ID bus) when specific conditions are met. In this step, the output enable state, i.e. whether to drive the BW_ID bus, can be determined based on the power supply level signal.
[0067] Step 104: Combine the state data, the power level signal, and the output enable state to determine the hardware feature information;
[0068] It should be noted that, in this embodiment of the invention, the status data mainly refers to the status information of the expansion board obtained through digital communication (such as I2C), the power level signal mainly refers to whether the key power supply voltage is normal and exists at analog or digital level, and the output enable status mainly refers to whether the MCU is authorized to drive the BW_ID bus. The motherboard's BMC or CPLD can integrate the above data to determine the specific hardware characteristics of the expansion board.
[0069] Step 105: Determine the configuration information corresponding to the hardware feature information;
[0070] It should be noted that, in this embodiment of the invention, based on hardware feature information, it is possible to determine whether the current expansion board is in place and whether the device power supply is normal. Furthermore, through the output enable state, the expansion board can be further analyzed, such as the board type and the number of devices, to determine the configuration information of the expansion board.
[0071] Step 106: Based on the preset bandwidth allocation strategy, determine the bandwidth identification information that matches the configuration information;
[0072] It should be noted that in this embodiment of the invention, the BMC, as the management brain, has a pre-configured bandwidth allocation strategy built in. Based on the configuration information reported by the CPLD in real time, it decides how to optimally allocate the original bandwidth of the motherboard PCIe slot (high-speed serial expansion slot) (e.g., a x16 channel). That is, according to the instructions of the BMC, it determines the bandwidth identification information corresponding to the configuration information, such as x16, x8, x4 and their combinations, and real-time re-divides the PCIe channels.
[0073] Step 107: Based on the bandwidth identification information, allocate bandwidth to the expansion board.
[0074] It should be noted that, in this embodiment of the invention, after determining the bandwidth identification information, the bandwidth allocation of the expansion board can be completed. Specifically, if two x8 devices are identified, the x16 channel is fairly divided into two x8 devices. If one x8 device and two x4 devices are identified, the x16 channel can be divided into one x8 device and two x4 devices. If only one x4 device is identified, the remaining x12 bandwidth can be temporarily allocated to other slots or placed in a low-power state, and then allocated when a new device is inserted.
[0075] This invention acquires the status data of an expansion board; determines a power level signal based on the status data; determines an output enable state based on the power level signal; combines the status data, the power level signal, and the output enable state to determine hardware characteristic information; determines the configuration information corresponding to the hardware characteristic information; determines bandwidth identification information matching the configuration information based on a preset bandwidth allocation strategy; and allocates bandwidth to the expansion board based on the bandwidth identification information. This allows for automatic identification and reallocation of bandwidth, enabling the same expansion board to adapt to various configuration combinations without replacing any hardware. This significantly improves server utilization and flexibility, avoids server malfunctions caused by incorrect assembly and insertion, and enhances operational efficiency.
[0076] Furthermore, such as Figure 2 The diagram illustrates a server bandwidth allocation method and a high-speed serial expansion slot bandwidth allocation system provided by an embodiment of the present invention. Figure 2 The specific explanation is as follows:
[0077] Figure 2The left side is the MB motherboard, which includes the CPU, CPLD, BMC, GENZ connector, CA9641, and PWR power connector. The right side is Riser Board 1, which includes gold fingers, PWR CONN power connector, MCU controller, IO expansion, MUX selector, LDO (Low-Dropout Regulator), EEPROM (Electrically Erasable Programmable Read-Only Memory), PCIE (Peripheral Component Interconnect Express) device slots, and sideband connectors.
[0078] The motherboard connects the CPU and CPLD-related X8 / X16 high-speed CPIE signals, 100MHz clock, Throttle signal (downclocking signal), reset signal, and Wake signal to the gold fingers on the Riser board via GENZ connectors for interconnection; the PWR CONN power connector provides power to P12V_PCIE and P3V3_STBY; the CPLD communicates with the Riser MCU via Riser I2C signals to obtain MCU-related status information; the CPU and MCIO Conn (Multi-Channel I / O Connector) are interconnected via high-speed PCIE for device identification; the BMC is used to identify device presence and information; the CPU and BMC use CA9641 to determine and obtain I / O extension information and bandwidth allocation information.
[0079] Furthermore, such as Figure 4 The diagram illustrates a second step in the server bandwidth allocation method provided by an embodiment of the present invention. In this embodiment, step 102 may further include the following steps:
[0080] Step 401: When the high-speed serial expansion slot is detected as a device in place and the expansion board is detected as a device in place, the power level signal is determined based on the cable connection status.
[0081] It should be noted that, in this embodiment of the invention, the extended data includes the high-speed serial expansion slot presence signal, the expansion card presence signal, and the cable connection status. That is, each PCIe device slot (high-speed serial expansion slot) has a dedicated PRSNT# (Presence Detect) pin. When a PCIe card (such as a graphics card or network card) is inserted into the slot and fully in place, the PRSNT# signal of that slot will be grounded. The Riser board itself also has a similar mechanism. When the Riser board is fully inserted into the motherboard's GENZ connector through its "gold fingers", a specific pin (or a pair of pins) on the gold fingers will connect with the corresponding pin on the motherboard, forming a loop and pulling a PRSNT# signal on the motherboard low. The cable connection status can be used to indicate whether the sideband connector is connected to a cable and the device connected to the cable. Specifically, cable 1 is connected to Riser board 1, cable 2 is connected to Riser board 2, and cable 3 is connected to the NVMe backplane. By judging the cable connection status, the power level signal can be determined.
[0082] like Figure 5 The diagram illustrates a third step of the server bandwidth allocation method provided in this embodiment of the invention. In this embodiment, step 401 may further include the following steps:
[0083] Step 501: If the cable connection status is not connected, determine that the power supply level signal is high.
[0084] Step 502: If the cable connection status is "connected", determine that the power supply level signal is low.
[0085] It should be noted that, in this embodiment of the invention, when a PCIe card (such as a network card or NVMe SSD card) is inserted into a slot of the Riser card, it is connected to the sideband connector on the Riser card via a special sideband cable. If the sideband connector is not connected by a cable, the PD_SW_S signal, being floating, is pulled up to P3V3_STBY by a fixed 4.7K pull-up resistor, resulting in a high level for the PD_SW_S signal. The MUX (Multiplexer) switches to channel 0, with a corresponding value of 0000. If the sideband connector is connected by a cable, the PD_SW_S signal (power switch control signal) is pulled low to a low level of 0 via the cable, and then pulled up to P3V3_STBY by a fixed 4.7K pull-up resistor, resulting in a low level for the PD_SW_S signal. At this time, the MUX switches to channel 1, with a corresponding value of 0101. In other words, the power level signal is determined by the cable connection status.
[0086] This invention accurately judges the power level signal based on the high-speed serial expansion slot presence signal, expansion board presence signal, and cable connection status. It can automatically identify the connection status (whether the cable is plugged in) of the sideband connector. The entire identification process is completed by pure hardware circuitry (pull-up resistor, cable pulled low to ground), with a response speed in the nanosecond range and an absolutely certain result. This avoids intermediate states or oscillations that may be caused by floating signals, ensuring that power operation only occurs when the physical connection is complete.
[0087] Furthermore, such as Figure 6 The diagram illustrates the fourth step of a server bandwidth allocation method provided in an embodiment of the present invention. In this embodiment, step 103 may further include the following steps:
[0088] Step 601: When the power supply level signal is high, determine that the output enable state is off.
[0089] It should be noted that in this embodiment of the invention, the MCU continuously monitors two key pieces of information: 1) the Riser board presence signal read from the IO expander via I2C, and 2) the level states of SE_0 and SE_1 directly detected by its GPIO pins (General-Purpose Input / Output). When the Riser board presence signal and level states meet the requirements, the MCU will switch the GPIO pin connected to BW_ID[3:0] from input mode to output mode; otherwise, the MCU will set the GPIO pin connected to BW_ID[3:0] to a high impedance state and turn off the output mode. When the power supply level signal is high, it indicates that the sideband connector is not connected to a cable. The MUX switches to channel 0, BM_ID[3:0] = 0000, and transmits the PD_SW_S signal to the MCU. Based on the SE_0 and SE_1 signal levels being 11, the MCU determines that the BW_ID[3:0] pin corresponding to the MUX does not need to output a signal.
[0090] Step 602: When the power supply level signal is low, obtain the backplane identifier;
[0091] Step 603: If the backplate identifier is a preset identifier, determine the output enable state as the output state;
[0092] Step 604: If the backplate identifier is not a preset identifier, determine that the output enable state is off.
[0093] It should be noted that, in this embodiment of the invention, when the power supply level signal is low, it indicates that the sideband connector has a connecting cable, the MUX switches to channel 1, BM_ID[3:0] = 0101, and transmits the PD_SW_S signal to the MCU. At this time, the backplane identifier is obtained. When the backplane identifier is the preset identifier, the MCU determines that the BW_ID[3:0] pin corresponding to the MUX does not need to output a signal based on the SE_0 and SE_1 signal levels being 10. At this time, it can be determined that the device inserted into Riser board 1 is a Retimer card; the device inserted into Riser board 2 is two PCIE X8 devices. When the backplane identifier is not the preset identifier, the MCU determines that the BW_ID[3:0] pin corresponding to the MUX outputs a low-level signal 0000 based on the SE_0 and SE_1 signal levels being 01, and the bandwidth BW_ID[3:0] is changed to 0000. At this time, it is determined that the device inserted into Riser board 1 is a Retimer card; the device inserted into the NCME backplane is an NVME hard drive. By setting preset conditions, the output enable state under different conditions can be distinguished, which facilitates the judgment of subsequent configuration information.
[0094] This invention uses the PD_SW_S signal of the sideband connector ("wired = 0, wireless = 1") as the sole criterion. The physical plugging and unplugging action directly determines the output state of the level. Furthermore, it maps the MUX channel 1 / 0 to BM_ID[3:0] one-to-one, allowing the MUX channel resources to be further expanded without conflict. In other words, different output enable states are determined by different level signal states. This divides the specific situation of the expansion board connected to the device and corresponds to different channels, improving the system robustness and leaving room for subsequent functional expansion.
[0095] Furthermore, such as Figure 7 The diagram illustrates the fifth step of a server bandwidth allocation method provided in an embodiment of the present invention. In this embodiment, step 106 may further include the following steps:
[0096] Step 701: Based on the configuration information, determine the device type of the expansion board;
[0097] Step 702: Based on a preset bandwidth allocation strategy, determine the bandwidth identification information that matches the device type;
[0098] Step 703: Based on the device type of the expansion board, determine the fan speed information, which is used to control the cooling fan to dissipate heat from the expansion board.
[0099] It should be noted that in this embodiment of the invention, the motherboard BMC / CPU can read the configuration information of the expansion card via I2C, and then map the configuration information to the device type, such as 0000 corresponding to a Retimer card, 0001 corresponding to an NVMe hard drive, etc. Based on this, according to the preset bandwidth allocation strategy, such as the Retimer card requiring x16 Gen4 uplink + x8 Gen4 downlink, the strategy table gives BW_ID=0000 corresponding to 16GT / s, 16-lane, and the corresponding bandwidth identifier can be determined. Furthermore, the device type can be bound to the fan speed, such as immediately increasing the airflow when the Retimer has high power consumption, and keeping it silent when the NVMe has low power consumption; compared with the fixed fan strategy, fan power consumption can be reduced by 15%–30%.
[0100] This invention dynamically allocates bandwidth identifiers based on the actual card type to redistribute bandwidth. Considering the different power consumption of different expansion cards, the fan speed at the corresponding location is adjusted to avoid PCIe Retimer overheating and speed reduction or NVMe overheating and disk failure due to insufficient heat dissipation, while also reducing on-site complaints caused by excessive fan noise.
[0101] Furthermore, such as Figure 8 The diagram illustrates a sixth step of the server bandwidth allocation method provided in this embodiment of the invention. In this embodiment, the method may further include the following steps:
[0102] Step 801: Obtain the inherent feature information of the expansion board;
[0103] Step 802: Based on the inherent feature information, determine the configuration information of the expansion board.
[0104] It should be noted that, in this embodiment of the invention, the expansion card has fixed FRU (Field Replaceable Unit) information, which refers to a hardware component in the device that can be directly disassembled and replaced by technicians at the customer's site (rather than being returned to the factory). Expansion cards, power supplies, fan modules, hard drives, and even the entire motherboard can be referred to as FRUs. The BMC can directly read the fixed FRU information through IPMI (Intelligent Platform Management Interface Command), that is, determine the inherent characteristic information of the expansion card. Since the FRU information is different on different expansion cards, the configuration information of the current expansion card can also be determined based on the inherent characteristic information.
[0105] This invention uses IPMI commands from the BMC to read fixed FRU information to determine the inherent characteristics of the expansion board. This allows for rapid determination of the expansion board's configuration information and bandwidth allocation based on that information. By enabling intelligent hardware identification and automated management, this invention can quickly diagnose the expansion board and improve efficiency.
[0106] According to embodiments of the present invention, a server bandwidth allocation device is also provided, with reference to... Figure 9 , Figure 9 This is a block diagram of a server bandwidth allocation device provided in an embodiment of the present invention. The server bandwidth allocation device includes:
[0107] Data acquisition module 901 is used to acquire status data of expansion board;
[0108] Level signal determination module 902: used to determine the power supply level signal based on the status data;
[0109] The output enable state determination module 903 is used to determine the output enable state based on the power supply level signal.
[0110] Combination module 904 is used to combine the status data, the power level signal and the output enable state to determine hardware feature information;
[0111] The configuration information determination module 905 is used to determine the configuration information corresponding to the hardware feature information;
[0112] The bandwidth determination module 906 is used to determine bandwidth identification information that matches the configuration information based on a preset bandwidth allocation strategy.
[0113] The bandwidth allocation module 907 is used to allocate bandwidth to the expansion board based on the bandwidth identification information.
[0114] Optionally, the status data includes a high-speed serial expansion slot presence signal, an expansion board presence signal, and cable connection status, and the level signal determination module includes:
[0115] The level signal determination submodule is used to determine the power level signal based on the cable connection status when the high-speed serial expansion slot presence signal is detected as device presence and the expansion board presence signal is detected as device presence.
[0116] The level signal determination submodule includes:
[0117] The first level signal determination unit is used to determine that the power supply level signal is high when the cable connection state is not connected.
[0118] The second level signal determination unit determines that the power supply level signal is low when the cable connection status is "connected".
[0119] Optionally, the output enable state determination module includes:
[0120] The first output enable state determination submodule is used to determine that the output enable state is off when the power supply level signal is high.
[0121] The second output enable state determination submodule is used to obtain the backplane identifier when the power supply level signal is low.
[0122] The third output enable state determination submodule is used to determine that the output enable state is off when the backplane identifier is not a preset identifier.
[0123] Optionally, the bandwidth determination module includes:
[0124] The first bandwidth determination submodule is used to determine the device type of the expansion board based on the configuration information;
[0125] The second bandwidth determination submodule is used to determine bandwidth identification information that matches the device type based on a preset bandwidth allocation strategy.
[0126] The wind speed determination module determines the fan speed information based on the device type of the expansion board. The fan speed information is used to control the cooling fan to dissipate heat from the expansion board.
[0127] Optionally, the device further includes:
[0128] The inherent feature information acquisition module is used to acquire the inherent feature information of the expansion board;
[0129] The inherent configuration information determination module is used to determine the configuration information of the expansion board based on the inherent feature information.
[0130] This invention also provides an electronic device, such as... Figure 11 As shown, it includes a processor 1101, a communication interface 1102, a memory 1103, and a communication bus 1104. The processor 1101, communication interface 1102, and memory 1103 communicate with each other via the communication bus 1104.
[0131] Memory 1103 is used to store computer programs;
[0132] When processor 1101 executes the program stored in memory 1103, it performs the following steps:
[0133] Get the status data of the expansion board;
[0134] Based on the status data, determine the power supply level signal;
[0135] The output enable state is determined based on the power supply level signal;
[0136] By combining the state data, the power level signal, and the output enable state, hardware characteristic information is determined.
[0137] Determine the configuration information corresponding to the hardware characteristic information;
[0138] Based on a preset bandwidth allocation strategy, determine bandwidth identification information that matches the configuration information;
[0139] Based on the bandwidth identification information, bandwidth is allocated to the expansion card.
[0140] The communication bus mentioned above can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used to represent it in the diagram, but this does not mean that there is only one bus or one type of bus.
[0141] The communication interface is used for communication between the aforementioned terminal and other devices.
[0142] The memory may include random access memory (RAM) or non-volatile memory, such as at least one disk storage device. Optionally, the memory may also be at least one storage device located remotely from the aforementioned processor.
[0143] The processors mentioned above can be general-purpose processors, including central processing units (CPUs), network processors (NPs), etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0144] In another embodiment of the present invention, a computer-readable storage medium is also provided, which stores instructions that, when executed on a computer, cause the computer to perform any of the server bandwidth allocation methods described in the above embodiments.
[0145] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., a solid-state drive, or SSD).
[0146] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0147] The various embodiments in this specification are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0148] The above description is merely a preferred embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention are included within the scope of protection of the present invention.
Claims
1. A server bandwidth allocation method, characterized in that, The method includes: Get the status data of the expansion board; Based on the status data, determine the power supply level signal; The output enable state is determined based on the power supply level signal; By combining the state data, the power level signal, and the output enable state, hardware characteristic information is determined. Determine the configuration information corresponding to the hardware characteristic information; Based on a preset bandwidth allocation strategy, determine bandwidth identification information that matches the configuration information; Based on the bandwidth identification information, bandwidth is allocated to the expansion card.
2. The method according to claim 1, characterized in that, The status data includes a high-speed serial expansion slot presence signal, an expansion board presence signal, and cable connection status. Determining the power level signal based on the status data includes: When the high-speed serial expansion slot is detected as having a device presence signal and the expansion board is detected as having a device presence signal, the power level signal is determined based on the cable connection status.
3. The method according to claim 2, characterized in that, The determination of the power level signal based on the cable connection status includes: When the cable connection status is not connected, the power supply level signal is determined to be high. When the cable connection status is "connected", the power supply level signal is determined to be low.
4. The method according to claim 1, characterized in that, Determining the output enable state based on the power supply level signal includes: When the power supply level signal is high, the output enable state is determined to be off. When the power supply level signal is low, the backplane identification is acquired; When the backplate identifier is a preset identifier, the output enable state is determined to be the output state; If the backplate identifier is not a preset identifier, the output enable state is determined to be off.
5. The method according to claim 1, characterized in that, The bandwidth identification information that matches the configuration information, based on a preset bandwidth allocation strategy, includes: Based on the configuration information, the device type of the expansion board is determined; Based on a preset bandwidth allocation strategy, bandwidth identification information matching the device type is determined.
6. The method according to claim 5, characterized in that, The method further includes: Based on the device type of the expansion board, the fan speed information is determined, and the fan speed information is used to control the cooling fan to dissipate heat from the expansion board.
7. The method according to claim 1, characterized in that, The method further includes: Obtain the inherent feature information of the expansion board; Based on the inherent feature information, the configuration information of the expansion board is determined.
8. A server bandwidth allocation device, characterized in that, The server bandwidth allocation device includes: The data acquisition module is used to acquire the status data of the expansion board; Level signal determination module: used to determine the power supply level signal based on the status data; An output enable state determination module is used to determine the output enable state based on the power supply level signal. A combination module is used to combine the state data, the power level signal, and the output enable state to determine hardware characteristic information; The configuration information determination module is used to determine the configuration information corresponding to the hardware feature information; The bandwidth determination module is used to determine bandwidth identification information that matches the configuration information based on a preset bandwidth allocation strategy. The bandwidth allocation module is used to allocate bandwidth to the expansion board based on the bandwidth identification information.
9. An electronic device, characterized in that, include: Memory used to store processor-executable instructions; The processor is configured to execute the instructions to implement the server bandwidth allocation method as described in any one of claims 1 to 7.
10. A readable storage medium, characterized in that, A computer program is stored on the readable storage medium, which, when executed by a processor, implements the server bandwidth allocation method as described in any one of claims 1 to 7.
Citation Information
Cited By
Network card management system and method and electronic equipment
CN121603376A