Bandwidth adjustment method, system, device and storage medium
By dynamically adjusting the downlink bandwidth of the array server through the baseboard management controller, the problem of packet loss caused by the online/offline status of computing nodes was solved, and stable traffic transmission and bandwidth quickly approaching the target value were achieved.
Patent Information
- Application Number
- CN202611431745.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-15
- Publication Date
- 2026-11-06
AI Technical Summary
In network traffic bypass analysis scenarios, array-type traffic splitting servers, due to their fixed downlink traffic splitting bandwidth, may experience traffic splitting bandwidth exceeding the maximum processing bandwidth when computing nodes go online or offline, leading to packet loss during traffic splitting.
The baseboard management controller counts the number of nodes in place, dynamically adjusts the downlink offloading bandwidth, determines the optimal switching path using preset constraints, and performs removal, rate switching, and re-joining operations to ensure uninterrupted service traffic.
It enables automatic adjustment of downlink offloading bandwidth during the online/offline process of computing nodes, avoiding packet loss during offloading, reducing the impact of bandwidth adjustment on service traffic, ensuring uninterrupted traffic flow, and reducing cumulative fluctuations.
Smart Images

Figure CN123055574A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and in particular to bandwidth adjustment methods, systems, devices and storage media. Background Technology
[0002] In recent years, SOC array-type traffic splitter servers have been widely used in network traffic bypass analysis scenarios due to their advantages of small size, high density, and high energy efficiency. From the internal structure of the server chassis, the SOC array-type traffic splitter server is connected to multiple backplanes via switching boards, forming a tree topology. Through ACL redirection and aggregated port five-tuple balanced forwarding, service packets are evenly distributed to designated SOC array cards for processing.
[0003] In network traffic bypass analysis scenarios, array-type traffic splitting servers, due to their fixed downlink traffic splitting bandwidth, are prone to situations where the downlink traffic splitting bandwidth exceeds the maximum processing bandwidth of all online computing nodes when computing nodes go online or offline, resulting in traffic splitting packet loss. Summary of the Invention
[0004] The purpose of this invention is to address the technical problems existing in the background art by proposing a bandwidth adjustment method, system, device, and storage medium.
[0005] To achieve the above-mentioned technical objectives, the technical solution adopted by the present invention is as follows: A first implementation of the first aspect of the present invention provides a bandwidth adjustment method applied to an array server. The array server includes a baseboard management controller, a switching board, and a baseboard. The baseboard management controller is electrically connected to the switching board. The downlink port of the switching board and the uplink port of the baseboard form a first aggregation port. The downlink port of the baseboard is connected to multiple computing nodes to form a second aggregation port. The bandwidth adjustment method includes: S101. The number of computing nodes in the in-situ state is counted by the baseboard management controller, and the actual total bandwidth of the second aggregation port is determined. The actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port. S102. When the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port, determine the target rate combination that matches the target bandwidth. S103. Based on preset constraints, the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path. S104. Based on the optimal switching path, the removal, rate switching and re-joining operations are performed through the switching board and the baseboard respectively, and the switching completion information is reported. The baseboard management controller updates the rate status accordingly.
[0006] Optionally, in a second implementation of the first aspect of the present invention, S101 includes: S1011. The baseboard management controller periodically receives heartbeat messages sent by each computing node, parses the heartbeat messages to determine the presence status of each computing node, and counts the number of computing nodes in the presence status. S1012. When the number of in-place nodes changes, the bandwidth adjustment is triggered. The number of in-place nodes is multiplied by the processing bandwidth of a single computing node to obtain the actual total bandwidth of the second aggregation port, and the actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port.
[0007] Optionally, in a third implementation of the first aspect of the present invention, the first aggregation port includes multiple member ports, each member port being a combination of a single downlink port of the switching board and a single uplink port of the baseboard, and the target rate combination including the number of member ports in the first aggregation port and the target rate of each member port.
[0008] Optionally, in a fourth implementation of the first aspect of the present invention, the target rate of each member port is selected from a preset rate level set, the rate level set including a first rate level, a second rate level and a third rate level, wherein the second rate level is twice the first rate level and the third rate level is twice the second rate level.
[0009] Optionally, in a fifth implementation of the first aspect of the present invention, S103 includes: S1031. Under the constraint that the first aggregation port does not stop flowing and each member port changes its rate according to the three-step operation of removal from the first aggregation port, rate switching, and re-addition, the substrate management controller takes the switching path from the current state of the first aggregation port to the termination state as the legal switching path, wherein the termination state is the state in which the number and rate of the member ports are consistent with the target rate combination. S1032. The path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path.
[0010] Optionally, in a sixth implementation of the first aspect of the present invention, the constraint that the first aggregation port is not interrupted is that during the switching process, at least one member port in the first aggregation port is located within the first aggregation port and is not in a rate switching state.
[0011] Optionally, in the seventh implementation of the first aspect of the present invention, S104 includes: S1041. The switching board and the backplane perform the following operations on each member port in the optimal switching path: remove from the first aggregation port, switch the port rate to the target rate corresponding to the member port in the target rate combination, and re-add to the first aggregation port in sequence. S1042. During the switching process, at least one member port in the first aggregation port that is in an online state is always kept in order to carry traffic; S1043. Report the switching completion information, and the baseboard management controller updates the rate status accordingly.
[0012] A second aspect of the present invention provides a bandwidth adjustment system applied to an array server. The array server includes a baseboard management controller, a switching board, and a backplane. The downlink port of the switching board and the uplink port of the backplane form a first aggregation port. The downlink port of the backplane is connected to multiple computing nodes to form a second aggregation port, comprising: The statistics module is used to count the number of computing nodes in the in-situ state using the baseboard management controller, determine the actual total bandwidth of the second aggregation port, and use the actual total bandwidth of the second aggregation port as the target bandwidth to be matched by the first aggregation port. The rate combination module is used to determine a target rate combination that matches the target bandwidth when the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port. The path switching module is used to determine the optimal switching path based on preset constraints, which is the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth. The update module is used to perform removal, rate switching, and re-joining operations on the switching board and the baseboard respectively based on the optimal switching path, and report the switching completion information. The baseboard management controller updates the rate status accordingly.
[0013] A first implementation of the third aspect of the present invention provides a bandwidth adjustment device, the bandwidth adjustment device comprising: a memory and at least one processor, the memory storing instructions, and the memory and the at least one processor being interconnected via a line; The at least one processor invokes the instructions in the memory to cause the bandwidth adjustment device to perform the bandwidth adjustment method as described in any one of the first aspects of the invention.
[0014] A first implementation of the fourth aspect of the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the bandwidth adjustment method as described in any one of the first aspects of the present invention.
[0015] Compared with the prior art, the present invention has the following beneficial technical effects: It utilizes the baseboard management controller to count the number of computing nodes in the in-situ state and determine the actual total bandwidth of the second aggregation port. The actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port. This enables automatic sensing of the number of online computing nodes in the baseboard and real-time adjustment of the corresponding downlink offloading bandwidth accordingly. This avoids packet loss caused by the downlink offloading bandwidth being greater than the maximum processing bandwidth of the online computing nodes. When the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port, a target rate combination matching the target bandwidth is determined. Based on preset constraints, the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is selected. During the dynamic adjustment of the downlink offloading bandwidth, the downlink offloading traffic continues uninterrupted, and service packets are not interrupted. This path is determined as the optimal switching path. Based on the optimal switching path, the removal, rate switching, and re-joining operations are performed by the switching board and the baseboard respectively, and the switching completion information is reported. The baseboard management controller updates the rate status accordingly, enabling the downlink offloading bandwidth to quickly approach the target bandwidth. The cumulative fluctuations generated during the bandwidth change process are minimized, reducing the impact of bandwidth adjustment on service traffic. Attached Figure Description
[0016] Figure 1 This is a schematic diagram of the first embodiment of the bandwidth adjustment method in this invention; Figure 2 This is a schematic diagram of a second embodiment of the bandwidth adjustment method in this invention; Figure 3 This is a schematic diagram of the fifth embodiment of the bandwidth adjustment method in this invention; Figure 4 This is a schematic diagram of the seventh embodiment of the bandwidth adjustment method in this invention; Figure 5 This is a schematic diagram of one embodiment of the bandwidth adjustment system in this invention; Figure 6 This is a schematic diagram of the array server structure in an embodiment of the present invention; Figure 7 This is a schematic diagram of one embodiment of the bandwidth adjustment device in this invention. Detailed Implementation
[0017] It should be noted that, unless otherwise specified, the embodiments and features described in the present invention can be combined with each other.
[0018] For ease of understanding, the specific process of the embodiments of the present invention is described below. Please refer to [link / reference]. Figure 6The bandwidth adjustment method in this embodiment of the invention is applied to an array server. The array server includes a baseboard management controller, a switching board, and a baseboard. The baseboard management controller is electrically connected to the switching board. The downlink port of the switching board and the uplink port of the baseboard form a first aggregation port. The downlink port of the baseboard is connected to multiple computing nodes to form a second aggregation port.
[0019] It should be noted that the compute nodes are SOC RAID cards, and the array server uses a standard 2U chassis. The chassis contains six backplanes, each supporting 12 SOC RAID cards, meaning the entire machine has 6 x 12 = 72 SOC RAID cards, with a total outgoing bandwidth of 200G. Each backplane and the several SOC RAID cards mounted on it form a pluggable component within the chassis, also known as a blade server.
[0020] The uplink port of the switching board is used to access service traffic from the external network, and the downlink port of the switching board is connected to the uplink port of the baseboard. The downlink port of the switching board and the uplink port of the baseboard form the first aggregation port, which can also be called AP1; the downlink port of the baseboard is connected to multiple computing nodes to form the second aggregation port, which can also be called AP2.
[0021] The entire service traffic path is as follows: input from the uplink port of the switching board, redirected by ACL, and balanced forwarded with the aggregation port five-tuple. The traffic is then evenly distributed to all blades and SOC array cards in the chassis. The switching board redirects the traffic to its downlink port, which then evenly distributes it to the designated backplane through the first aggregation port. The backplane redirects the traffic to its downlink port, which then evenly distributes it to the corresponding SOC array card through the second aggregation port. The SOC array card processes the traffic and then forwards it to the backplane. The backplane redirects the traffic to the switching board, which then aggregates the traffic and redirects it to the uplink port for output.
[0022] Please see Figure 1-4 Bandwidth adjustment methods include: S101. The number of computing nodes in the in-situ state is counted using the baseboard management controller, and the actual total bandwidth of the second aggregation port is determined. The actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port.
[0023] Furthermore, step S101 specifically includes: S1011. The baseboard management controller periodically receives heartbeat messages sent by each computing node, parses the heartbeat messages to determine the presence status of each computing node, and counts the number of computing nodes in the presence status. S1012. When the number of in-place nodes changes, the bandwidth adjustment is triggered. The number of in-place nodes is multiplied by the processing bandwidth of a single computing node to obtain the actual total bandwidth of the second aggregation port, and the actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port.
[0024] It should be noted that the baseboard management controller, with its out-of-band management channel independent of the operating systems of each computing node, periodically receives heartbeat messages reported by each computing node under the control of the baseboard. By parsing the heartbeat messages, it determines the presence status of each computing node and counts the number of computing nodes in the presence status. The baseboard management controller further determines the actual total bandwidth of the second aggregation port by multiplying the number of in-presence nodes by the processing bandwidth of a single computing node. This actual total bandwidth dynamically changes between the minimum and maximum bandwidth as the computing nodes go online and offline on the baseboard.
[0025] Since the second aggregation port is the downstream target of the first aggregation port, the actual total bandwidth of the second aggregation port is the bandwidth requirement that the first aggregation port should approach in this round of adjustment. Therefore, the baseboard management controller uses the actual total bandwidth of the second aggregation port as the target bandwidth to be matched by the first aggregation port. In this way, the dynamic physical fact of the computing node's in-situ status is deterministically converted into the sole target benchmark for subsequent rate combination matching, so that the rate configuration of the first aggregation port is always adapted to the actual downlink carrying capacity, avoiding packet loss due to mismatch between port rate and actual processing capacity.
[0026] Example: A single compute node has a processing bandwidth of 2.5G. The second aggregation port includes 6 member ports. Therefore, the actual total bandwidth of the second aggregation port equals the number of nodes in operation multiplied by 2.5G. When all 6 compute nodes on the backplane are online, the actual total bandwidth of the second aggregation port is 6 × 2.5G, which equals 15G. When only 1 compute node remains online on the backplane, the actual total bandwidth of the second aggregation port is 2.5G. Therefore, the actual total bandwidth of the second aggregation port varies from 2.5G to 15G. Correspondingly, the target bandwidth to be matched by the first aggregation port also varies between 2.5G and 15G.
[0027] It should be added that the in-situ status can be defined as physical in-situ, power-on in-situ, or business online, depending on actual needs. The actual total bandwidth can also be obtained by summing the negotiated rates of each in-situ computing node. The target bandwidth can also be amplified by a preset margin coefficient and used as the target bandwidth to be matched to adapt to different implementation scenarios.
[0028] S102. When the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port, determine the target rate combination that matches the target bandwidth. It should be noted that the first aggregation port includes multiple member ports. Each member port is a combination of a single downlink port of the switching board and a single uplink port of the backplane. The target rate combination includes the number of member ports in the first aggregation port and the target rate of each member port. The target rate of each member port is selected from a preset rate level set. The rate level set includes a first rate level, a second rate level, and a third rate level, wherein the second rate level is twice the first rate level, and the third rate level is twice the second rate level.
[0029] As shown in the example above, the first speed level can be set to 2.5G, the second speed level to 5G, and the third speed level to 10G. That is, the speed configuration options for the member ports of the first aggregation port are 2.5G, 5G, and 10G.
[0030] Since the number and rate of the member ports of the aggregation port can only be discretely selected according to the level, the total bandwidth of the first aggregation port can only switch between 2.5G, 5G, 7.5G, 10G, 12.5G and 15G. Therefore, once the target bandwidth is determined, it is necessary to find out the combination of the number and rate of the member ports that can make up the target bandwidth. This combination is the target rate combination.
[0031] When the target bandwidth is 5G, it can be achieved either by a single member port operating at a 5G rate or by two member ports each operating at a 2.5G rate. When the target bandwidth is 10G, it can be achieved either by a single member port operating at a 10G rate or by two member ports each operating at a 5G rate. In this case, S102 does not directly specify which combination to use, but instead considers all of the above matching combinations as candidates, and lets S103 search for the optimal switching path based on the current port status to determine the final path. This is because the number of operation steps and bandwidth fluctuations required to switch to different target rate combinations from the current state of the first aggregation port are different.
[0032] S103. Based on preset constraints, the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path. Furthermore, step S103 specifically includes: S1031. Under the constraint that the first aggregation port does not stop flowing and each member port changes its rate according to the three-step operation of removal from the first aggregation port, rate switching, and re-addition, the substrate management controller takes the switching path from the current state of the first aggregation port to the termination state as the legal switching path, wherein the termination state is the state in which the number and rate of the member ports are consistent with the target rate combination. S1032. The path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path.
[0033] It should be noted that the preset constraints include uninterrupted flow constraints, three-step operation constraints, single-operation constraints, and single-switching constraints. Specifically, the uninterrupted flow constraint for the first aggregation port requires that during the switching process, at least one member port within the first aggregation port must be present and not undergoing rate switching. In other words, at any given time, the first aggregation port should have at least one active member port online carrying traffic, and this member port should not be undergoing rate switching to ensure uninterrupted service traffic.
[0034] The three-step operation constraint is that each member port changes its rate in three steps: removal from the first aggregation port, rate switching, and re-addition. That is, the complete process of switching the rate of a member port of the aggregation port includes three steps: the first step is to remove the member port from the aggregation port, the second step is to switch the rate of the member port, and the third step is to re-add the member port to the aggregation port. All three steps are indispensable. During this process, when the member port is in the rate switching state, its rate is zero and the member port cannot carry traffic.
[0035] The single operation constraint is that once a member port is added back to the first aggregation port, it cannot be removed again, i.e., branches that repeatedly operate on the same member port are pruned.
[0036] The single-switch constraint means that a member port can only switch its rate once between removal and re-addition, i.e., branches that switch the rate of the same member port multiple times are cut off.
[0037] The above four constraints filter at three operation points to ensure that every switching path in the search results is a valid switching path that does not interrupt the flow, follows the three-step operation process, and does not repeat the operation of member ports.
[0038] The termination state is the state where the number and rate of the member ports are consistent with the target rate combination. For example, when the target rate combination is a single member port combination, the termination state is that one member port in the first aggregation port is located within the first aggregation port and its rate matches its target rate, while the other member port is not located within the first aggregation port; when the target rate combination is a two-member port combination, the termination state is that both member ports in the first aggregation port are located within the first aggregation port and their respective rates match their corresponding target rates, and the order in which the rates of the two member ports are matched is irrelevant.
[0039] A valid switching path is a switching path from the current state of the first aggregation port to the termination state that satisfies the preset constraints. That is, the path starts from the current state of the first aggregation port and ends at the termination state, and each step of the operation in the path satisfies the above four constraints.
[0040] Thirdly, regarding the criteria for determining the optimal switching path. The criterion for determining the optimal switching path is: during the port rate switching process, the cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth at each port operation is the minimum among all legal switching paths. It should be noted that the cumulative sum also includes the absolute value of the difference between the total bandwidth of the first aggregation port and the target bandwidth in the initial state before the switching begins; that is, the bandwidth deviation in the initial state is also included in the cumulative sum.
[0041] S104. Based on the optimal switching path, the removal, rate switching and re-joining operations are performed through the switching board and the baseboard respectively, and the switching completion information is reported. The baseboard management controller updates the rate status accordingly.
[0042] Furthermore, step S104 specifically includes: S1041. The switching board and the backplane perform the following operations on each member port in the optimal switching path: remove from the first aggregation port, switch the port rate to the target rate corresponding to the member port in the target rate combination, and re-add to the first aggregation port in sequence. S1042. During the switching process, at least one member port in the first aggregation port that is in an online state is always kept in order to carry traffic; S1043. Report the switching completion information, and the baseboard management controller updates the rate status accordingly.
[0043] It should be noted that the board management controller sends rate switching commands to the switching board and the backplane. The commands include the target rate combination and the optimal switching path.
[0044] The switching board and the backplane perform the following operations on each member port in the order of operation of each member port in the optimal switching path: remove from the first aggregation port, switch the port rate to the target rate corresponding to the member port in the target rate combination, and re-add to the first aggregation port.
[0045] Since a member port is composed of a downlink port on the switching board and an uplink port on the baseboard, when performing a rate switch, the downlink port on the switching board and the uplink port on the baseboard corresponding to that member port switch synchronously to the same target rate.
[0046] During the switchover process, at least one online member port in the first aggregation port is always maintained to carry traffic, thus ensuring uninterrupted downlink traffic. For example, when executing a certain path, one member port is first removed from the first aggregation port. At this time, other member ports still exist in the first aggregation port and carry traffic, so the service traffic will not be interrupted. After the port rate of the previously removed member port is switched to 2.5G and rejoined the first aggregation port, the total bandwidth of the first aggregation port changes from 15G to 7.5G, which is consistent with the target bandwidth, and the switchover is completed.
[0047] Finally, after the switching board and the baseboard successfully switch rates, the switching completion information is reported. The baseboard management controller updates the rate status accordingly, that is, confirms that all member ports have switched and updates the current total bandwidth of the first aggregation port. Then it waits for the next heartbeat cycle, re-detects the presence status of the computing nodes and enters the next round of judgment.
[0048] Through the above process, the array server can automatically and dynamically adjust the downlink bandwidth during the online / offline process of computing nodes, and the adjustment process is uninterrupted with minimal cumulative fluctuations.
[0049] In this embodiment, the baseboard management controller counts the number of computing nodes in the present state and determines the actual total bandwidth of the second aggregation port. The actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port. This enables automatic sensing of the number of online computing nodes in the baseboard and real-time adjustment of the corresponding downlink offloading bandwidth. This avoids packet loss caused by the downlink offloading bandwidth being greater than the maximum processing bandwidth of the online computing nodes. When the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port, a target rate combination matching the target bandwidth is determined. Based on preset constraints, the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is selected. During the dynamic adjustment of the downlink offloading bandwidth, the downlink offloading traffic continues uninterrupted, and service packets are not interrupted. This path is determined as the optimal switching path. Based on the optimal switching path, the switching board and the baseboard respectively perform removal, rate switching, and re-joining operations and report the switching completion information. The baseboard management controller updates the rate status accordingly, so that the downlink offloading bandwidth can quickly approach the target bandwidth, and the cumulative fluctuations generated during the bandwidth change are minimized, reducing the impact of bandwidth adjustment on service traffic.
[0050] The bandwidth adjustment method in the embodiments of the present invention has been described above. The bandwidth adjustment system in the embodiments of the present invention is described below. Please refer to [link / reference]. Figure 5 The bandwidth adjustment system is applied to an array server, which includes a baseboard management controller, a switching board, and a backplane. The downlink port of the switching board and the uplink port of the backplane form a first aggregation port. The downlink port of the backplane is connected to multiple computing nodes to form a second aggregation port. The bandwidth adjustment system includes: The statistics module 201 is used to count the number of computing nodes in the in-situ state using the baseboard management controller, determine the actual total bandwidth of the second aggregation port, and use the actual total bandwidth of the second aggregation port as the target bandwidth to be matched by the first aggregation port. The rate combination module 202 is used to determine a target rate combination that matches the target bandwidth when the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port. The path switching module 203 is used to determine the optimal switching path based on preset constraints, which is the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth. The update module 204 is used to perform removal, rate switching and re-joining operations on the switching board and the baseboard respectively based on the optimal switching path, and report the switching completion information. The baseboard management controller updates the rate status accordingly.
[0051] Specifically, the statistics module 201 can also execute: S1011. The baseboard management controller periodically receives heartbeat messages sent by each computing node, parses the heartbeat messages to determine the presence status of each computing node, and counts the number of computing nodes in the presence status. S1012. When the number of in-place nodes changes, the bandwidth adjustment is triggered. The number of in-place nodes is multiplied by the processing bandwidth of a single computing node to obtain the actual total bandwidth of the second aggregation port, and the actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port.
[0052] The first aggregation port includes multiple member ports, each member port being a combination of a single downlink port of the switching board and a single uplink port of the backplane. The target rate combination includes the number of member ports in the first aggregation port and the target rate of each member port.
[0053] The target rate for each member port is selected from a preset rate level set, which includes a first rate level, a second rate level, and a third rate level. The second rate level is twice the first rate level, and the third rate level is twice the second rate level.
[0054] Specifically, the path switching module 203 can also perform the following: S1031. Under the constraint that the first aggregation port does not stop flowing and each member port changes its rate according to the three-step operation of removal from the first aggregation port, rate switching, and re-addition, the substrate management controller takes the switching path from the current state of the first aggregation port to the termination state as the legal switching path, wherein the termination state is the state in which the number and rate of the member ports are consistent with the target rate combination. S1032. The path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path.
[0055] The constraint that the first aggregation port does not stop flowing is that during the switching process, at least one member port in the first aggregation port is located in the first aggregation port and is not in a rate switching state.
[0056] Specifically, update module 204 can also execute: S1041. The switching board and the backplane perform the following operations on each member port in the optimal switching path: remove from the first aggregation port, switch the port rate to the target rate corresponding to the member port in the target rate combination, and re-add to the first aggregation port in sequence. S1042. During the switching process, at least one member port in the first aggregation port that is in an online state is always kept in order to carry traffic; S1043. Report the switching completion information, and the baseboard management controller updates the rate status accordingly.
[0057] The bandwidth adjustment method in this embodiment of the invention will be described in detail from the perspective of unitized functional entities. The bandwidth adjustment device in this embodiment of the invention will be described in detail from the perspective of hardware processing.
[0058] Figure 7 This is a schematic diagram of a bandwidth adjustment device provided in an embodiment of the present invention. The bandwidth adjustment device can vary significantly due to different configurations or performance characteristics. It may include one or more central processing units (CPUs) 310 (e.g., one or more processors) and a memory 320, and one or more storage media 330 (e.g., one or more mass storage devices) storing application programs 333 or data 332. The memory 320 and storage media 330 can be temporary or persistent storage. The program stored in the storage media 330 may include one or more units (not shown in the diagram), each unit may include a series of instruction operations on the bandwidth adjustment device. Furthermore, the processor 310 may be configured to communicate with the storage media 330 and execute the series of instruction operations in the storage media 330 on the bandwidth adjustment device.
[0059] The bandwidth adjustment device may also include one or more power supplies 340, one or more wired or wireless network interfaces 350, one or more input / output interfaces 360, and / or one or more operating systems 331, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. Those skilled in the art will understand that... Figure 7 The bandwidth adjustment device structure shown does not constitute a limitation on communication protocol devices based on LAN projection. It may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0060] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium, wherein the computer-readable storage medium stores instructions that, when the instructions are executed on a computer, cause the computer to perform the steps of a bandwidth adjustment method.
[0061] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0062] The above describes one or more bandwidth adjustment methods or implementations in conjunction with specific content, and does not imply that the specific implementation of the present invention is limited to these descriptions. Any methods or structures that are similar to or identical to those of the present invention, or any technical deductions or substitutions made based on the concept of the present invention, should be considered within the scope of protection of the present invention.
Claims
1. A bandwidth adjustment method applied to an array-type server, characterized in that, The array server includes a baseboard management controller, a switching board, and a baseboard. The baseboard management controller is electrically connected to the switching board. The downlink port of the switching board and the uplink port of the baseboard form a first aggregation port. The downlink port of the baseboard is connected to multiple computing nodes to form a second aggregation port. The bandwidth adjustment method includes: S101. The number of computing nodes in the in-situ state is counted by the baseboard management controller, and the actual total bandwidth of the second aggregation port is determined, and the actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port. S102. When the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port, a target rate combination that matches the target bandwidth is determined. S103. Based on preset constraints, the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path. S104. Based on the optimal switching path, the removal, rate switching, and re-joining operations are performed through the switching board and the baseboard respectively, and the switching completion information is reported. The baseboard management controller updates the rate status accordingly.
2. The bandwidth adjustment method according to claim 1, characterized in that, S101 includes: S1011. The baseboard management controller periodically receives heartbeat messages sent by each computing node, parses the heartbeat messages to determine the presence status of each computing node, and counts the number of computing nodes in the presence status. S1012. When the number of devices in place changes, a bandwidth adjustment is triggered. The number of devices in place is multiplied by the processing bandwidth of a single computing node to obtain the actual total bandwidth of the second aggregation port, and the actual total bandwidth of the second aggregation port is used as the target bandwidth to be matched by the first aggregation port.
3. The bandwidth adjustment method according to claim 2, characterized in that, The first aggregation port includes multiple member ports, each member port being a combination of a single downlink port of the switching board and a single uplink port of the baseboard. The target rate combination includes the number of member ports in the first aggregation port and the target rate of each member port.
4. The bandwidth adjustment method according to claim 3, characterized in that, The target rate of each member port is selected from a preset rate level set, which includes a first rate level, a second rate level, and a third rate level, wherein the second rate level is twice the first rate level, and the third rate level is twice the second rate level.
5. The bandwidth adjustment method according to claim 3, characterized in that, S103 includes: S1031. Under the constraint that the first aggregation port is not flowing and each member port changes its rate according to the three-step operation of removing from the first aggregation port, switching the rate, and re-adding, the substrate management controller takes the switching path from the current state of the first aggregation port to the termination state as the legal switching path, wherein the termination state is the state in which the number and rate of the member ports are consistent with the target rate combination. S1032. The path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth is determined as the optimal switching path.
6. The bandwidth adjustment method according to claim 5, characterized in that, The constraint that the first aggregation port is not interrupted is that during the switching process, at least one of the member ports in the first aggregation port is located within the first aggregation port and is not in a rate switching state.
7. The bandwidth adjustment method according to claim 4, characterized in that, S104 includes: S1041. The switching board and the backplane, in the order of operation of each member port in the optimal switching path, sequentially perform the following operations on each member port: remove from the first aggregation port, switch the port rate to the target rate corresponding to the member port in the target rate combination, and rejoin the first aggregation port. S1042. During the switching process, at least one of the member ports in the first aggregation port that is online is always retained to carry traffic; S1043. Report the switching completion information, and the baseboard management controller updates the rate status accordingly.
8. A bandwidth adjustment system applied to an array server, characterized in that, The array server includes a baseboard management controller, a switching board, and a baseboard. The downlink port of the switching board and the uplink port of the baseboard form a first aggregation port. The downlink port of the baseboard is connected to multiple computing nodes to form a second aggregation port, including: The statistics module is used to count the number of computing nodes in the in-situ state using the baseboard management controller, determine the actual total bandwidth of the second aggregation port, and use the actual total bandwidth of the second aggregation port as the target bandwidth to be matched by the first aggregation port. A rate combination module is used to determine a target rate combination that matches the target bandwidth when the target bandwidth is inconsistent with the current total bandwidth of the first aggregation port. The path switching module is used to determine the optimal switching path based on preset constraints, which is the path with the smallest cumulative sum of the absolute values of the difference between the total bandwidth of the first aggregation port and the target bandwidth. The update module is used to perform removal, rate switching, and re-joining operations through the switching board and the baseboard respectively based on the optimal switching path, and report the switching completion information. The baseboard management controller updates the rate status accordingly.
9. A bandwidth adjustment device, characterized in that, The bandwidth adjustment device includes: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a line; The at least one processor invokes the instructions in the memory to cause the bandwidth adjustment device to perform the bandwidth adjustment method as described in any one of claims 1-7.
10. A computer-readable storage medium storing a computer program thereon, characterized in that, When the computer program is executed by the processor, it implements the bandwidth adjustment method as described in any one of claims 1-7.
