Method, apparatus and device for data flow control for power data centers
Patent Information
- Application Number
- CN202610878931.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2026-05-25
- Filing Date
- 2026-06-17
- Publication Date
- 2026-10-13
AI Technical Summary
高优先级的数据(例如,生产控制类数据)具有强周期性和同步性,而现有协议对所有数据流采用无差别的拥塞反应策略,当低优先级的数据(例如,管理信息类数据)流触发拥塞时,高优先级的数据流会被同等降速,导致高优先级的数据的传输存在较高延迟,进而导致电力系统崩溃
[0011]本公开的上述各个实施例中具有如下有益效果:通过本公开的一些实施例的用于电力数据中心的数据流量控制方法,降低了高优先级的数据的传输延迟,避免了电力系统崩溃的情况。具体来说,造成高优先级的数据的传输存在较高延迟,进而导致电力系统崩溃的原因在于:高优先级的数据(例如,生产控制类数据)具有强周期性和同步性,而现有协议对所有数据流采用无差别的拥塞反应策略,当低优先级的数据(例如,管理信息类数据)流触发拥塞时,高优先级的数据流会被同等降速,导致高优先级的数据的传输存在较高延迟,进而导致电力系统崩溃。基于此,本公开的一些实施例的用于电力数据中心的数据流量控制方法,首先,响应于检测到至少一个数据发送组件向数据交换机发送的电力数据传输请求,确定每个电力数据传输请求对应的电力数据类型。由此,可以按照确定电力数据所对应的数据类型。其次,基于所接收到的至少一个电力数据传输请求,控制上述至少一个数据发送组件对所对应的电力数据进行整形处理,以生成整形电力数据集。由此,可以通过主动整形,将数据流分散至多个时间间隙内,进而减少因数据并行发送导致的交换机队列拥塞和丢包的情况。然后,对于上述整形电力数据集中的每个整形电力数据,基于上述整形电力数据对应的电力数据类型,生成对应上述整形电力数据的数据传输权重。由此,可以对每个整形后的电力数据配置对应的传输权重,以控制传输速率。之后,控制上述至少一个数据发送组件向上述数据交换机传输上述整形电力数据集;响应于检测到上述数据交换机阻塞,对上述整形电力数据集进行分类处理,以生成第一电力数据集和第二电力数据集。由此,可以将电力数据分为高优先级数据和低优先级数据。最后,基于所生成的各个数据传输权重,控制上述第一电力数据集和上述第二电力数据集的数据传输速度。由此,可以通过控制低优先级数据降低传输速度,为高优先级数据快速释放带宽,从而降低了高优先级的数据的传输延迟,避免了电力系统崩溃的情况。
Smart Images

Figure CN122909260A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of this disclosure relate to the field of computer technology, and more specifically to a data flow control method, apparatus, and device for power data centers. Background Technology
[0002] With the deepening of the construction of new power systems, the amount of data interaction in power grid data centers is growing exponentially. On the one hand, it includes production control data with extremely high requirements for latency and reliability (such as relay protection GOOSE messages, requiring a transmission latency of ≤4ms); on the other hand, it also carries a large amount of high-throughput but relatively latency-insensitive management information data (such as data backup and video surveillance). How to control the transmission of power data has become an important research topic. Currently, the common method for controlling the transmission of power data is to transmit power data sequentially according to the data transmission time, with power data transmitted later needing to queue for transmission.
[0003] However, when using the above method to control the transmission of power data, the following technical problems often arise: High-priority data (e.g., production control data) has strong periodicity and synchronicity, while existing protocols adopt an indiscriminate congestion response strategy for all data streams. When low-priority data streams (e.g., management information data) trigger congestion, high-priority data streams are slowed down in the same way, resulting in high latency in the transmission of high-priority data, which in turn leads to power system collapse.
[0004] The information disclosed in this background section is only intended to enhance the understanding of the background of the inventive concept, and therefore may contain information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0005] The summary portion of this disclosure is intended to provide a brief overview of the concepts, which will be described in detail in the detailed description portion. This summary portion is not intended to identify key or essential features of the claimed technical solutions, nor is it intended to limit the scope of the claimed technical solutions.
[0006] Some embodiments of this disclosure provide data flow control methods, apparatuses, electronic devices, and computer-readable media for power data centers to address one or more of the technical problems mentioned in the background section above.
[0007] In a first aspect, some embodiments of this disclosure provide a data flow control method for a power data center. The method includes: in response to detecting a power data transmission request sent by at least one data transmission component to a data switch, determining the power data type corresponding to each power data transmission request; based on the received power data transmission request, controlling the at least one data transmission component to perform shaping processing on the corresponding power data to generate a shaped power dataset; for each shaped power data in the shaped power dataset, generating a data transmission weight corresponding to the shaped power data based on the power data type corresponding to the shaped power data; controlling the at least one data transmission component to transmit the shaped power dataset to the data switch; in response to detecting data switch congestion, classifying the shaped power dataset to generate a first power dataset and a second power dataset; and controlling the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
[0008] Secondly, some embodiments of this disclosure provide a data flow control apparatus for a power data center. The apparatus includes: a determining unit configured to determine the power data type corresponding to each power data transmission request in response to detecting a power data transmission request sent by at least one data transmission component to a data switch; a first control unit configured to control the at least one data transmission component to perform shaping processing on the corresponding power data based on the received at least one power data transmission request, to generate a shaped power dataset; a generating unit configured to generate a data transmission weight corresponding to each shaped power data in the shaped power dataset, based on the power data type corresponding to the shaped power data; a second control unit configured to control the at least one data transmission component to transmit the shaped power dataset to the data switch; a classification unit configured to classify the shaped power dataset in response to detecting a blockage in the data switch, to generate a first power dataset and a second power dataset; and a third control unit configured to control the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
[0009] Thirdly, some embodiments of this disclosure provide an electronic device, including: one or more processors; and a storage device having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any implementation of the first aspect above.
[0010] Fourthly, some embodiments of this disclosure provide a computer-readable medium having a computer program stored thereon, wherein the program, when executed by a processor, implements the method described in any of the implementations of the first aspect above.
[0011] The various embodiments of this disclosure have the following beneficial effects: the data flow control method for power data centers according to some embodiments of this disclosure reduces the transmission delay of high-priority data, thus preventing power system collapse. Specifically, the reason why the transmission of high-priority data has a high delay, leading to power system collapse, is that high-priority data (e.g., production control data) has strong periodicity and synchronicity, while existing protocols adopt an indiscriminate congestion response strategy for all data streams. When low-priority data (e.g., management information data) streams trigger congestion, high-priority data streams are slowed down accordingly, resulting in a high transmission delay for high-priority data, which in turn leads to power system collapse. Based on this, the data flow control method for power data centers according to some embodiments of this disclosure firstly determines the power data type corresponding to each power data transmission request in response to detecting at least one power data transmission request sent by a data transmission component to a data exchange. Thus, the data type corresponding to the power data can be determined. Secondly, based on the received at least one power data transmission request, the at least one data transmission component is controlled to perform shaping processing on the corresponding power data to generate a shaped power dataset. Therefore, by actively shaping the data stream, it can be distributed across multiple time slots, thereby reducing switch queue congestion and packet loss caused by parallel data transmission. Then, for each shaped power data point in the shaped power dataset, a corresponding data transmission weight is generated based on the power data type. This allows for configuring a corresponding transmission weight for each shaped power data point to control the transmission rate. Next, at least one data transmission component is controlled to transmit the shaped power dataset to the data switch. In response to detected data switch congestion, the shaped power dataset is classified to generate a first power dataset and a second power dataset. This allows power data to be divided into high-priority and low-priority data. Finally, based on the generated data transmission weights, the data transmission speed of the first and second power datasets is controlled. This reduces the transmission speed of low-priority data, quickly releasing bandwidth for high-priority data, thereby reducing transmission latency for high-priority data and preventing power system collapse. Attached Figure Description
[0012] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and elements are not necessarily drawn to scale.
[0013] Figure 1 This is a flowchart of some embodiments of the data transmission control method for a power data center according to the present disclosure; Figure 2 This is a schematic diagram of the structure of some embodiments of a data transmission control device for a power data center according to the present disclosure; Figure 3 This is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure. Detailed Implementation
[0014] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0015] It should also be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings. Unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other.
[0016] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0017] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0018] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0019] This disclosure will now be described in detail with reference to the accompanying drawings and embodiments.
[0020] Figure 1A flow 100 of some embodiments of a data transmission control method for a power data center according to the present disclosure is shown. The data transmission control method for a power data center includes the following steps: Step 101: In response to detecting a power data transmission request sent by at least one data transmission component to the data switch, determine the power data type corresponding to each power data transmission request.
[0021] In some embodiments, the execution entity (e.g., a server) of the data transmission control method for a power data center can determine the power data type corresponding to each power data transmission request in response to detecting a power data transmission request sent by at least one data transmission component to a data switch. The data transmission component can be a host protocol stack or network interface card (NIC) that transmits power data. The power data transmission request can be message data that transmits the power data. The power data type can be a pre-set power data type. For example, the power data type can include, but is not limited to: GOOSE, PMU, data backup, and video surveillance. The data switch can be a switch connected to each data transmission component for forwarding power data.
[0022] In practice, the following steps can be used to determine the power data type corresponding to each power data transmission request in response to the detection of at least one power data transmission component sending a power data transmission request to the data switch: The first step is to perform the following processing steps for each of the detected power data transmission requests: The first processing step involves extracting the aforementioned power data transmission request to generate a packet header and a preset field set. The preset fields in this preset field set can be pre-defined field names. For example, these preset fields could be an application layer identifier and a port number.
[0023] The second processing step involves determining the power service type based on the aforementioned packet header and preset field set. In practice, the power service type corresponding to the aforementioned packet header and preset field set can be selected from a pre-set mapping table. As an example, in response to a port number belonging to a certain GOOSE / SV protocol port, the power service type can be determined as GOOSE.
[0024] The third processing step involves determining the power data type corresponding to the aforementioned power data transmission request based on a preset mapping rule base and the aforementioned power service types. In practice, the power data type corresponding to the aforementioned power service type can be selected from the preset mapping rule base. This preset mapping rule base can be a pre-set rule base for power service types and power data types. The aforementioned power data type can be a DSCP (Differentiated Services CodePoint) field value.
[0025] Step 102: Based on the received power data transmission request, control at least one data transmission component to perform shaping processing on the corresponding power data to generate a shaped power dataset.
[0026] In some embodiments, the execution entity may control at least one data transmission component to perform shaping processing on the corresponding power data based on at least one received power data transmission request, so as to generate a shaped power dataset.
[0027] In practice, based on at least one received power data transmission request, the above-mentioned at least one data sending component can be controlled to perform shaping processing on the corresponding power data to generate a shaped power dataset through the following steps: The first step is to select at least one power data set that meets preset conditions from the power data sets corresponding to at least one data transmission component, and use this as the target power data set. The preset conditions may be power data with a fixed period.
[0028] The second step is to obtain the historical crash concurrency datasets for each data transmission component corresponding to the target power dataset. The historical crash concurrency data in these datasets can be the historical incast concurrency information of the data transmission components within a preset historical time period.
[0029] The third step is to determine the data transmission period for each power data point based on the aforementioned historical crash concurrency dataset. In practice, an exponentially weighted moving average algorithm can be used to determine the data transmission period for each power data point.
[0030] The fourth step involves controlling the corresponding data transmission components to perform shaping processing on each target power data in the target power dataset based on the corresponding data transmission cycle, in order to generate a target shaped power dataset.
[0031] In addressing the technical problems mentioned in the background section, and specifically for the application scenario—a power data center in a densely populated city (e.g., first-tier and new first-tier cities)—the following technical issues arise: A single data switch may simultaneously receive power data from multiple data transmission components. Due to the limited bandwidth of the data switch, it cannot transmit multiple power data streams in parallel, leading to data transmission congestion and high latency. Considering the following requirements for this application scenario: avoiding simultaneous data transmission and taking into account the impact of data switch bandwidth on data transmission, we have decided to adopt the following solution: In practice, the following sub-steps can be used to control the corresponding data transmission components to perform shaping processing on each target power data in the target power dataset based on the corresponding data transmission cycle, in order to generate the target shaped power dataset: The first sub-step involves performing the following shaping step for each of the aforementioned data sending components: The first shaping step is to determine the source physical address corresponding to the aforementioned data transmission component. In practice, the MAC address (Media Access Control Address) of the aforementioned data transmission component can be used as the source physical address.
[0032] The second shaping step involves determining the address hash value corresponding to the aforementioned source physical address. Here, a non-encrypted, fast hash function can be used to calculate the address hash value from the source physical address.
[0033] The third shaping step involves dividing the data transmission cycle into sub-data transmission cycle sequences based on a preset number of divisions. The preset number of divisions can be a pre-defined number of sub-data transmission cycles. In practice, the preset number of divisions can be determined through the following steps: First, determine the number of corresponding data transmission components as the initial number of divisions. Second, determine the data depth of the data exchange at preset intervals within a preset time period to obtain a data depth set. Third, determine the standard deviation of the data depth set. Fourth, if the standard deviation is greater than or equal to a preset standard deviation, adjust the initial number of divisions upwards by the preset number. Fifth, if the standard deviation is less than the preset standard deviation, adjust the initial number of divisions downwards by the preset number. The preset number can be 1. The preset duration is less than the duration corresponding to the preset time period. For example, the preset time period can be from 10 seconds before the current time to the current time. The preset duration can be 1 second.
[0034] The fourth shaping step involves determining the offset of the target power data corresponding to the data transmission component based on the address hash value and the duration of the sub-data transmission cycle in the sub-data transmission cycle sequence. In practice, firstly, the quotient of the address hash value and the preset number of divisions can be used as the target index to map the address hash value to the time slot index range of the sub-data transmission cycle sequence. Secondly, the product of the target index and the duration of the sub-data transmission cycle in the sub-data transmission cycle sequence is determined as the offset of the target power data corresponding to the data transmission component.
[0035] The fifth step in the procedure is to obtain the system timestamp.
[0036] The sixth shaping step involves determining the sub-data transmission period corresponding to the current time of the data transmission component based on the aforementioned system timestamp, as the target sub-data transmission period. The aforementioned system timestamp can be the timestamp corresponding to the current time of the aforementioned executing entity. In practice, the system timestamp can be mapped to the aforementioned sub-data transmission period sequence, and the sub-data transmission period mapped to the aforementioned system timestamp can be determined as the target sub-data transmission period. Here, each sub-data transmission period in the aforementioned sub-data transmission period sequence corresponds to a time period, and the sub-data transmission period corresponding to the time period in which the aforementioned system timestamp is located can be determined as the target sub-data transmission period.
[0037] The seventh shaping step involves delaying the target power data based on the aforementioned offset to generate delayed power data, which serves as the target shaped power data. In practice, the transmission time in the message header corresponding to the target power data can be modified, and the sum of the stored transmission time and the aforementioned offset can be used to determine the new transmission time, thereby generating the target shaped power data.
[0038] The second sub-step involves combining the generated target shaped power data into a target shaped power dataset.
[0039] The first and second sub-steps described above, as an inventive point of this disclosure, combined with step "Step 106" below, solve the technical problem: "The same data switch may simultaneously receive power data sent by multiple data transmission components. Due to the limited bandwidth of the data switch, the data switch cannot simultaneously transmit multiple power data in parallel, resulting in data transmission congestion and thus high power data transmission latency." The reasons for high power data transmission latency are as follows: The same data switch may simultaneously receive power data sent by multiple data transmission components. Due to the limited bandwidth of the data switch, the data switch cannot simultaneously transmit multiple power data in parallel, resulting in data transmission congestion and thus high power data transmission latency. Solving the above factors can reduce power data transmission latency. To achieve this effect, this disclosure, firstly, for each of the aforementioned data transmission components, performs the following shaping steps: determining the source physical address corresponding to the aforementioned data transmission component. This allows for the determination of a unique code representing the data transmission component. Secondly, based on the aforementioned source physical address, determining the address hash value corresponding to the aforementioned source physical address. This allows for the calculation of the hash value of the unique code. Third, based on a preset number of divisions, the aforementioned data transmission cycle is divided to generate a sub-data transmission cycle sequence. This allows the data transmission cycle to be divided into multiple sub-cycles. Fourth, based on the address hash value and the duration of the sub-data transmission cycles in the sub-data transmission cycle sequence, the offset of the target power data corresponding to the aforementioned data transmission component is determined; the system timestamp is obtained; based on the system timestamp, the sub-data transmission cycle corresponding to the aforementioned data transmission component at the current time is determined as the target sub-data transmission cycle. This allows the determination of the sub-transmission cycle currently corresponding to the power transmission data. Fifth, based on the aforementioned offset, the target power data is delayed to generate delayed power data, which serves as the target shaped power data; the generated target shaped power data are combined into a target shaped power dataset. This delays the start time of power data transmission, preventing multiple power data from being transmitted simultaneously and consuming excessive bandwidth, thus avoiding data transmission congestion. Sixth, in conjunction with step 106 below, the data transmission speed of the first power dataset and the second power dataset is controlled based on the generated data transmission weights. This avoids data transmission congestion and reduces power data transmission latency.
[0040] The fifth step is to combine the target shaped power dataset and the remaining power data from each power data corresponding to at least one data sending component into a shaped power dataset.
[0041] Step 103: For each shaped power data in the shaped power dataset, generate the corresponding data transmission weight based on the power data type corresponding to the shaped power data.
[0042] In some embodiments, the execution entity may generate a data transmission weight for each shaped power data in the shaped power dataset, based on the power data type corresponding to the shaped power data. This data transmission weight can be a numerical value used to adjust the transmission speed of the shaped power data. For example, in response to a data transmission weight of 0.5, the transmission speed of the shaped power data is adjusted to half of its original transmission speed.
[0043] In practice, the following steps can be used to generate a data transmission weight for each shaped power data point in the aforementioned shaped power dataset, based on the power data type corresponding to that shaped power data: The first step, for each of the above-mentioned shaped power data, is to perform the following generation steps: The first generation step involves determining the initial data transmission weight for the shaped power data based on the power data type corresponding to the aforementioned shaped power data. In practice, for each power data type, an initial data transmission weight can be pre-set for each power data type. Here, there are no restrictions on the setting of the initial data transmission weight; it can be a weight obtained through experiments. As an example, the initial data transmission weight can be 0.8, representing that the transmission speed of the power data type corresponding to the shaped power data is 0.8x when x is the standard transmission speed.
[0044] The second generation step involves determining the data transmission status of the power data center and, based on this status, determining a first weight. The data transmission status indicates whether a data transmission failure has occurred in the power data center. The value of the first weight is not limited and can be an experimentally derived value. For example, if the data transmission status indicates no failure, the first weight can be set to 1. If the data transmission status indicates a failure, the first weight can be set to 1.1.
[0045] The third generation step involves obtaining the historical transmission dataset of the data transmission component corresponding to the aforementioned shaped power data. The historical transmission data in this dataset can be message data received by the aforementioned data transmission component.
[0046] The fourth generation step involves determining the blocking message frequency corresponding to the data transmission component based on the aforementioned historical transmission dataset, and determining a second weight based on the aforementioned blocking message frequency. In practice, firstly, the number of historical transmission data representing blocking in the aforementioned historical transmission dataset can be determined. Secondly, the ratio of the number of historical transmission data representing blocking to the total number of historical transmission data included in the aforementioned historical transmission dataset is determined as the blocking message frequency. Thirdly, the second weight corresponding to the aforementioned blocking message frequency is selected. Here, there are no restrictions on the setting of the second weight; it can be a weight obtained through experiments.
[0047] The fifth generation step involves determining the data transmission weight corresponding to the shaped power data based on the initial data transmission weight, the first weight, and the second weight. In practice, the product of the initial data transmission weight, the first weight, and the second weight can be used to determine the data transmission weight.
[0048] Step 104: Control at least one data transmission component to transmit the shaped power dataset to the data switch.
[0049] In some embodiments, the execution entity may control at least one data transmission component to transmit the shaped power dataset to the data switch.
[0050] Step 105: In response to the detection of data switch congestion, the shaped power dataset is classified to generate a first power dataset and a second power dataset.
[0051] In some embodiments, the executing entity may, in response to detecting data switch congestion, classify the shaped power dataset to generate a first power dataset and a second power dataset. In practice, the shaped power dataset can be classified according to its corresponding power data type to generate the first and second power datasets. The first power data in the first power dataset can represent low-priority data. The second power data in the second power dataset can represent high-priority data. In practice, the ranges of DSCP field values corresponding to low and high priorities can be preset to determine the data representing low and high priorities. As an example, shaped power data with a corresponding DSCP greater than or equal to 30 can be identified as the second power data, and shaped power data with a corresponding DSCP less than 30 can be identified as the first power data.
[0052] Step 106: Based on the generated data transmission weights, control the data transmission speed of the first power dataset and the second power dataset.
[0053] In some embodiments, the execution entity may control the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
[0054] In practice, the data transmission speed of the first and second power datasets can be controlled based on the generated data transmission weights using the following steps: The first step involves, for each piece of first power data in the first power dataset, in response to detecting that the transmission queuing delay of the second power dataset is greater than or equal to a preset delay threshold, updating the data transmission weight corresponding to the first power data to generate an updated transmission weight. The preset delay threshold can be a pre-set transmission queuing delay of the second power dataset. The update process can involve adjusting the data transmission weight corresponding to the first power data to a preset data transmission weight. Here, the preset data transmission weight can be 0.5.
[0055] The second step involves controlling the corresponding data sending components to reduce the data transmission speed of each piece of first power data in the aforementioned first power dataset, based on the corresponding updated transmission weights. In practice, the new data transmission speed can be determined by multiplying the original transmission speed by the corresponding updated transmission weight, and the corresponding data sending components can then transmit data to each piece of first power data in the aforementioned first power dataset according to the new data transmission speed.
[0056] Third, in response to detecting that the transmission queuing delay of the second power dataset is less than a preset delay threshold, the corresponding data transmission components are controlled to reduce the data transmission speed of each first power data in the first power dataset according to the corresponding data transmission weights.
[0057] The fourth step is to generate a flow control frame corresponding to the second power dataset mentioned above. This flow control frame can be a Pause frame.
[0058] Fifth, based on the aforementioned flow control frame, control the aforementioned data switch to suspend the transmission of the aforementioned second power data set.
[0059] Step 6: Determine the congestion information of the aforementioned data switch. This congestion information can be used to characterize the cause of the congestion. The congestion information can characterize one of the following: first power data set congestion and second power data set congestion.
[0060] Step 7: In response to the aforementioned congestion information indicating congestion in the first power dataset, based on a preset flow control algorithm, control the corresponding data transmission components to transmit each piece of second power data in the second power dataset. The preset flow control algorithm can be a PFC (Priority-based Flow Control) algorithm.
[0061] Step 8: Generate the preset flow control algorithm disabling permission corresponding to the first power dataset. This preset flow control algorithm disabling permission can be used to prevent the transmission queue containing the first power dataset from using the preset flow control algorithm during transmission. In practice, a field indicating the disabling of the preset flow control algorithm can be generated in the header of the message transmitting the first power dataset to generate the preset flow control algorithm disabling permission corresponding to the first power dataset. As an example, the field could be {field name: whether PFC is disabled, field value: 1}, where "1" indicates that PFC is disabled.
[0062] In addressing the technical problems mentioned in the background section, and considering the application scenario—a power data center in a densely populated city prone to high-temperature warnings during summer—the following technical issues arise: Under high temperatures, electricity demand surges, requiring the power data center to process massive amounts of high-priority power data. However, this high-priority data can clog data switches, potentially causing the dedicated PFC mechanism to fail or triggering a global deadlock, rendering the data center unable to process high-priority power data and ultimately leading to city-wide power outages. To meet the following requirements for this application scenario—avoiding high-priority data queue congestion and ensuring low-priority queues consume minimal or no bandwidth—we have decided to adopt the following solution: Optionally, after step six, the following steps may also be included: Step 7: In response to the aforementioned congestion information indicating congestion in the second power dataset, determine the first data depth of the second power dataset. The first data depth may be the number of second power data items included in the current second power dataset.
[0063] Step 8: In response to the first data depth being greater than or equal to a preset protection threshold, a temporary identifier corresponding to the data switch is generated. The preset protection threshold can be a pre-set first data depth. The temporary identifier is used to control the data switch to prohibit receiving flow control frames (Pause frames) for the second power dataset. Here, the preset protection threshold can be determined through the following steps: First, determine the maximum number of blocks corresponding to the second power dataset. Second, obtain a historical blockage dataset and, based on the historical blockage dataset, determine the queue growth rate. The historical blockage data in the historical blockage dataset can be the number of power data blocks during historical transmission blockages. The queue growth rate can be the standard deviation of each historical blockage data included in the historical blockage dataset. Third, determine the preset protection threshold based on the queue growth rate and the maximum number of blocks. In practice, the sum of the maximum number of blocks and the queue growth rate can be used to determine the preset protection threshold.
[0064] Step nine: Based on the aforementioned temporary identifier, control the data switch to prevent it from receiving flow control frames for the aforementioned second power dataset. In practice, in response to the existence of a corresponding temporary identifier on the data switch, it is possible to control the data switch to prevent it from receiving flow control frames for the aforementioned second power dataset.
[0065] Step 10: Determine the bandwidth difference between the first data depth and the bandwidth of the data switch. This bandwidth difference can be the ratio of the difference between the number of data received and the first data depth to the number of data received. The number of data received can be the maximum data stream that the data switch can buffer.
[0066] Step 11: Based on the first power dataset, perform the following discarding steps: The first discard sub-step generates a random number corresponding to the first first power data in the first power dataset.
[0067] The second discarding sub-step involves discarding the first power data from the first power dataset in response to the random number being less than the bandwidth difference value, thereby obtaining an updated first power dataset.
[0068] The third discard sub-step involves determining the second data depth of the aforementioned second power dataset. This second data depth can be the number of second power data points included in the second power dataset after transmitting at least one piece of second power data. The second data depth is less than the first data depth.
[0069] In the fourth discard sub-step, in response to the second data depth not meeting the preset protection threshold, the temporary identifier is deleted, and the updated first power dataset is used as the first power dataset for data transmission.
[0070] Step 12: In response to the second data depth meeting the preset protection threshold, the updated first power dataset is used as the first power dataset, and the discarding step is executed again.
[0071] Steps seven through twelve above, as an inventive point of this disclosure, combined with step "step 106" below, solve the technical problem: "Power data centers need to process massive amounts of high-priority power data. However, due to the high-priority power data blocking data switches, the dedicated PFC mechanism may fail or trigger a global deadlock risk, preventing the transmission of high-priority power data and thus causing urban power paralysis." The cause of urban power paralysis is as follows: Power data centers need to process massive amounts of high-priority power data. However, due to the high-priority power data blocking data switches, the dedicated PFC mechanism may fail or trigger a global deadlock risk, preventing the transmission of high-priority power data and thus causing urban power paralysis. If the above factors are resolved, the effect of avoiding urban power paralysis can be achieved. To achieve this effect, this disclosure firstly, in response to the above-mentioned blocking information indicating that the second power dataset is blocked, determines the first data depth of the second power dataset. This allows the determination of the current high-priority queue depth. Secondly, in response to the above-mentioned first data depth meeting a preset protection threshold, generates a temporary identifier corresponding to the data switch; based on the temporary identifier, controls the data switch to prohibit receiving flow control frames for the second power dataset. This avoids pausing transmission of the high-priority data queue. Then, the bandwidth difference between the data stream of the second power dataset and the bandwidth of the data switch is determined. Based on the first power dataset, the following discarding steps are performed: First, a random number is generated corresponding to the first power data in the first power dataset. If the random number is less than the bandwidth difference value, the first power data is discarded from the first power dataset, resulting in an updated first power dataset. This discards the first power data, preventing it from consuming bandwidth and affecting the transmission of high-priority data. Second, the second data depth of the second power dataset is determined. If the second data depth does not meet the preset protection threshold, the temporary identifier is deleted, and the updated first power dataset is used as the first power dataset for data transmission. This allows transmission of low-priority data to resume when the high-priority data queue depth decreases. Combined with step "106" below, the data transmission speed of the first and second power datasets is controlled based on the generated data transmission weights. This avoids the risk of PFC mechanism failure or global deadlock, thus preventing city power outages due to the inability to transmit high-priority power data.
[0072] The various embodiments of this disclosure have the following beneficial effects: the data flow control method for power data centers according to some embodiments of this disclosure reduces the transmission delay of high-priority data, thus preventing power system collapse. Specifically, the reason why the transmission of high-priority data has a high delay, leading to power system collapse, is that high-priority data (e.g., production control data) has strong periodicity and synchronicity, while existing protocols adopt an indiscriminate congestion response strategy for all data streams. When low-priority data (e.g., management information data) streams trigger congestion, high-priority data streams are slowed down accordingly, resulting in a high transmission delay for high-priority data, which in turn leads to power system collapse. Based on this, the data flow control method for power data centers according to some embodiments of this disclosure firstly determines the power data type corresponding to each power data transmission request in response to detecting at least one power data transmission request sent by a data transmission component to a data exchange. Thus, the data type corresponding to the power data can be determined. Secondly, based on the received at least one power data transmission request, the at least one data transmission component is controlled to perform shaping processing on the corresponding power data to generate a shaped power dataset. Therefore, by actively shaping the data stream, it can be distributed across multiple time slots, thereby reducing switch queue congestion and packet loss caused by parallel data transmission. Then, for each shaped power data point in the shaped power dataset, a corresponding data transmission weight is generated based on the power data type. This allows for configuring a corresponding transmission weight for each shaped power data point to control the transmission rate. Next, at least one data transmission component is controlled to transmit the shaped power dataset to the data switch. In response to detected data switch congestion, the shaped power dataset is classified to generate a first power dataset and a second power dataset. This allows power data to be divided into high-priority and low-priority data. Finally, based on the generated data transmission weights, the data transmission speed of the first and second power datasets is controlled. This reduces the transmission speed of low-priority data, quickly releasing bandwidth for high-priority data, thereby reducing transmission latency for high-priority data and preventing power system collapse.
[0073] Further reference Figure 2 As an implementation of the methods shown in the above figures, this disclosure provides some embodiments of a data transmission control device for a power data center, these device embodiments being similar to... Figure 1 Corresponding to the method embodiments shown, this data transmission control device for power data centers can be specifically applied to various electronic devices.
[0074] like Figure 2 As shown, a data transmission control device 200 for a power data center in some embodiments includes: a determining unit 201, a first control unit 202, a generating unit 203, a second control unit 204, a classification unit 205, and a third control unit 206. Specifically, the determining unit 201 is configured to determine the power data type corresponding to each power data transmission request in response to detecting a power data transmission request sent by at least one data transmission component to the data exchange; the first control unit 202 is configured to control the at least one data transmission component to perform shaping processing on the corresponding power data based on the received at least one power data transmission request, so as to generate a shaped power dataset; the generating unit 203 is configured to generate a data transmission weight corresponding to each shaped power data in the shaped power dataset based on the power data type corresponding to the shaped power data; the second control unit 204 is configured to control the at least one data transmission component to transmit the shaped power dataset to the data exchange; the classification unit 205 is configured to classify the shaped power dataset in response to detecting a blockage in the data exchange, so as to generate a first power dataset and a second power dataset; and the third control unit 206 is configured to control the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
[0075] It is understandable that the units described in the data transmission control device 200 for power data centers are related to the reference... Figure 1 The steps in the described method correspond accordingly. Therefore, the operations, features, and beneficial effects described above for the method also apply to the data transmission control device 200 for power data centers and the units contained therein, and will not be repeated here.
[0076] The following is for reference. Figure 3 This document illustrates a structural schematic of an electronic device 300 suitable for implementing some embodiments of the present disclosure. The electronic devices in some embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 3 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments of this disclosure.
[0077] like Figure 3As shown, the electronic device 300 may include a processing unit 301 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 302 or a program loaded from a storage device 308 into a random access memory (RAM) 303. The RAM 303 also stores various programs and data required for the operation of the electronic device 300. The processing unit 301, ROM 302, and RAM 303 are interconnected via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0078] Typically, the following devices can be connected to I / O interface 305: input devices 306 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 307 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 308 including, for example, magnetic tapes, hard disks, etc.; and communication devices 309. Communication device 309 allows electronic device 300 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 3 An electronic device 300 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively. Figure 3 Each box shown can represent a device or multiple devices as needed.
[0079] In particular, according to some embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, some embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 309, or installed from storage device 308, or installed from ROM 302. When the computer program is executed by processing device 301, it performs the functions defined above in the methods of some embodiments of this disclosure.
[0080] It should be noted that, in some embodiments of this disclosure, the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In some embodiments of this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In some embodiments of this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0081] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0082] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device. The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: determine the power data type corresponding to each power data transmission request in response to detecting a power data transmission request sent by at least one data transmission component to a data exchange; control the at least one data transmission component to perform shaping processing on the corresponding power data based on the received at least one power data transmission request to generate a shaped power dataset; for each shaped power data in the shaped power dataset, generate a data transmission weight corresponding to the shaped power data based on the power data type corresponding to the shaped power data; control the at least one data transmission component to transmit the shaped power dataset to the data exchange; in response to detecting a blockage in the data exchange, classify the shaped power dataset to generate a first power dataset and a second power dataset; and control the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
[0083] Computer program code for performing operations of some embodiments of this disclosure can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0084] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0085] The units described in some embodiments of this disclosure can be implemented in software or hardware. The described units can also be housed in a processor; for example, a processor may be described as including a determining unit, a first control unit, a generating unit, a second control unit, a classifying unit, and a third control unit. The names of these units do not necessarily limit the specific unit itself; for example, the determining unit may also be described as "a unit that, in response to detecting a power data transmission request sent by at least one data transmitting component to a data exchange, determines the power data type corresponding to each power data transmission request."
[0086] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.
[0087] The above description is merely a selection of preferred embodiments of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in the embodiments of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features with similar functions disclosed in the embodiments of this disclosure.
Claims
1. A data transmission control method for a power data center, comprising: In response to detecting a power data transmission request sent by at least one data transmission component to the data switch, the power data type corresponding to each power data transmission request is determined; Based on the received power data transmission request, the at least one data transmission component is controlled to perform shaping processing on the corresponding power data to generate a shaped power dataset. For each shaped power data in the shaped power dataset, a data transmission weight corresponding to the shaped power data is generated based on the power data type corresponding to the shaped power data. Control the at least one data transmission component to transmit the shaped power dataset to the data switch; In response to the detection of data switch congestion, the shaped power dataset is classified to generate a first power dataset and a second power dataset; Based on the generated data transmission weights, the data transmission speed of the first power dataset and the second power dataset is controlled.
2. The method according to claim 1, wherein, The step of responding to detecting a power data transmission request sent by at least one data transmission component to the data switch, and determining the power data type corresponding to each power data transmission request, includes: For each of the detected power data transmission requests, perform the following processing steps: The power data transmission request is extracted and processed to generate a data packet header and a preset field set; Based on the packet header and the preset field set, the power service type is determined; Based on a preset mapping rule base and the power service type, the power data type corresponding to the power data transmission request is determined.
3. The method according to claim 1, wherein, The step of controlling at least one data sending component to perform shaping processing on the corresponding power data based on at least one received power data transmission request to generate a shaped power dataset includes: Select at least one power data that meets a preset condition from the power data corresponding to the at least one data transmission component, and use it as the target power dataset; Obtain the historical crash concurrency datasets of each data transmission component corresponding to the target power dataset; Based on the historical crash concurrency dataset, determine the data transmission cycle corresponding to each power data; Based on the corresponding data transmission cycles, control the corresponding data transmission components to perform shaping processing on each target power data in the target power dataset to generate a target shaped power dataset. The target shaped power dataset and the remaining power data in each power data corresponding to the at least one data sending component are combined to form the shaped power dataset.
4. The method according to claim 1, wherein, For each shaped power data point in the shaped power dataset, a data transmission weight is generated based on the power data type corresponding to the shaped power data, including: For each of the shaped power data, the following generation steps are performed: Based on the power data type corresponding to the shaped power data, determine the initial data transmission weight corresponding to the shaped power data; Determine the data transmission status of the power data center, and determine a first weight based on the data transmission status; Obtain the historical transmission dataset of the data transmission component corresponding to the shaped power data; Based on the historical transmission dataset, the blocking message frequency corresponding to the data transmission component is determined, and based on the blocking message frequency, a second weight is determined; The data transmission weight corresponding to the shaped power data is determined based on the initial data transmission weight, the first weight, and the second weight.
5. The method according to claim 1, wherein, The step of controlling the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights includes: For each first power data in the first power dataset, in response to detecting that the transmission queuing delay of the second power dataset is greater than or equal to a preset delay threshold, the data transmission weight corresponding to the first power data is updated to generate an updated transmission weight. Based on the corresponding update transmission weights, control the corresponding data sending components to reduce the data transmission speed of each first power data in the first power data set; Generate a flow control frame corresponding to the second power dataset; Based on the flow control frame, control the data switch to suspend the transmission of the second power data set; In response to detecting that the transmission queuing delay of the second power dataset is less than a preset delay threshold, the corresponding data transmission components are controlled to reduce the data transmission speed of each first power data in the first power dataset according to the corresponding data transmission weights. Determine the blocking information of the data switch; In response to the blocking information indicating that the first power dataset is blocked, the following processing steps are performed: Based on a preset flow control algorithm, the corresponding data transmission components are controlled to transmit each second power data in the second power dataset; The preset flow control algorithm corresponding to the first power dataset is used to disable permissions.
6. A data transmission control device for a power data center, comprising: The determining unit is configured to determine the power data type corresponding to each power data transmission request in response to detecting that at least one power data transmission component has sent a power data transmission request to the data switch; The first control unit is configured to control the at least one data transmission component to perform shaping processing on the corresponding power data based on the received at least one power data transmission request, so as to generate a shaped power dataset. The generation unit is configured to generate a data transmission weight corresponding to each shaped power data in the shaped power dataset, based on the power data type corresponding to the shaped power data. The second control unit is configured to control the at least one data transmission component to transmit the shaped power dataset to the data switch; A classification unit is configured to classify the shaped power dataset in response to detecting a blockage in the data switch to generate a first power dataset and a second power dataset. The third control unit is configured to control the data transmission speed of the first power dataset and the second power dataset based on the generated data transmission weights.
7. An electronic device, comprising: One or more processors; A storage device on which one or more programs are stored; When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1 to 5.
8. A computer-readable medium having a computer program stored thereon, wherein, When the program is executed by the processor, it implements the method as described in any one of claims 1 to 5.