Method and system for intelligent integration control of virtualized servers with network switches
Patent Information
- Application Number
- CN202611189886.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-06
- Publication Date
- 2026-10-30
AI Technical Summary
拓扑变化事件发生时,例如物理服务器宕机或网络链路故障,传统系统往往需要重新进行全量计算或依赖预先设定的静态规则进行应对,难以在约束条件与当前融合状态之间建立动态联系
[0059]构建融合物理服务器资源状态、网络交换机拓扑连接关系与虚拟机侧信道行为数据的双层图后,虚拟机间的隐式依赖关系得到显式表达,不再被物理拓扑掩盖。基于该双层图实施虚拟机分配与交换机端口配置,可显著提升跨主机通信的局部性,降低数据传输跳数,避免物理链路拥塞,增强业务部署密度与资源利用均衡性。
Smart Images

Figure CN123020368A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of integrated control technology for virtualization servers and network switches, and more particularly to an intelligent integrated control method and system for virtualization servers and network switches. Background Technology
[0002] With the continuous expansion of cloud computing and data center scale, the collaborative management of virtualized servers and network switches has become a key link in ensuring business continuity and efficient resource utilization.
[0003] The drawback of conventional approaches is that they overlook the implicit dependencies that may exist between virtual machines. In real-world business scenarios, several virtual machines, although logically belonging to different applications or tenants, may have performance correlations due to sharing the same physical host, the same network path, or high-frequency interactions. Traditional methods rely solely on explicit resource metrics or manually labeled relationships for decision-making, failing to automatically capture this type of dependency information derived from underlying topology and behavioral characteristics. This can easily lead to performance-sensitive virtual machines being deployed in locations with significant mutual interference, resulting in latency fluctuations or resource contention.
[0004] Existing solutions lack the ability to proactively perceive and adapt to global constraints. When topology change events occur, such as physical server downtime or network link failures, traditional systems often need to recalculate all data or rely on pre-defined static rules to respond, making it difficult to establish a dynamic connection between constraints and the current convergence state. This results in inaccurate management decisions in complex scenarios, a lack of coordination between switch configuration and virtual machine migration actions, and the potential for situations where local resource configurations are reasonable but the overall network load is unbalanced. Summary of the Invention
[0005] This invention provides an intelligent integrated control method and system for virtualization servers and network switches, which can solve the problems in the prior art.
[0006] A first aspect of this invention provides an intelligent integrated control method for virtualization servers and network switches, comprising:
[0007] Obtain physical server resource status, network switch topology connections, and virtual machine side-channel behavior data;
[0008] A physical layer graph is constructed based on the physical server resource status and network switch topology connection relationship; the implicit dependency relationship between virtual machines is calculated by performing similarity measurement on the side channel behavior data, and virtual dependency edges with weights equal to the similarity measurement value are added to the physical layer graph to form a two-layer graph.
[0009] The two-layer graph is used to extract features using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector.
[0010] Resource constraints are encoded and mapped into constraint query representations; constraint-aware attention weights are calculated based on the constraint query representations and the fusion vectors; penalty values are applied to node pairs that violate constraints; and virtual machine allocation decisions and switch port configuration decisions are generated based on the constraint-aware attention weights.
[0011] The switch is deployed and configured based on a decision control virtual machine, and performance metrics are collected for online updating of multi-timescale graph convolutional network parameters.
[0012] A physical layer diagram is constructed based on the physical server resource status and network switch topology connections, including:
[0013] The resource utilization rate of each physical server is determined based on the physical server resource status, and the resource utilization rate is used as the server node weight. The resource utilization rate is obtained by calculating the weighted ratio of the used computing capacity, storage capacity and memory capacity to the total capacity.
[0014] Map each physical server as a server node, and each network switch as a switch node;
[0015] The physical connection between the server node and the switch node is determined based on the network switch topology connection relationship. The physical connection is mapped to a physical link edge, and the edge weight is determined based on the port traffic load of the physical link edge.
[0016] The server node weights and physical link edge weights are used as node attributes and edge attributes of the physical layer graph to construct a physical layer graph containing node weights and edge weights.
[0017] Implicit dependencies between virtual machines are calculated by performing similarity measurements on the side-channel behavior data. Virtual dependency edges with weights equal to the similarity measurement values are added to the physical layer graph to form a two-layer graph, including:
[0018] The side-channel behavior data is decomposed into multiple levels of side-channel features based on the hardware resource hierarchy of the physical server. The hardware resource hierarchy includes a memory bandwidth layer, a last-level cache layer, and a core cache layer from high to low. The side-channel features include resource access timing, access address distribution, and access conflict patterns at the corresponding levels.
[0019] For each hardware resource level, the resource contention intensity of any two virtual machines at that level is calculated based on their side channel characteristics. The resource contention intensity is obtained by analyzing the collision frequency in the time domain and the overlap in the spatial domain of the side channel characteristics of the two virtual machines.
[0020] When the resource contention intensity exceeds the contention determination threshold of the corresponding level, a hierarchical virtual dependency edge is established for the two virtual machines at the corresponding level, and the resource contention intensity is used as the initial weight of the hierarchical virtual dependency edge.
[0021] Multi-hop propagation analysis is performed on the hierarchical virtual dependency edges to calculate the cumulative competition intensity on the indirect dependency path. The cumulative competition intensity is obtained by attenuating and accumulating the initial weights of each edge along the propagation path. Edges with greater propagation distances are subject to larger attenuation coefficients.
[0022] The initial weights are fused with the cumulative competition intensity to obtain a comprehensive similarity metric that includes the effects of direct competition and indirect propagation. The comprehensive similarity metric is then added to the physical layer graph as the final edge weight of the virtual dependency edge to form a two-layer graph.
[0023] The two-layer graph is processed using a multi-timescale graph convolutional network to extract features. When a topology change event is detected, the corresponding layer is selectively updated according to the event type, and the output of the previous cycle of other layers is reused to obtain a fusion vector, including:
[0024] Construct a multi-timescale graph convolutional network, including a physical topology convolutional layer and a virtual dependency convolutional layer. The physical topology convolutional layer performs convolution operations on physical link edges, and the virtual dependency convolutional layer performs convolution operations on virtual dependency edges.
[0025] The two-layer graph is input into a multi-timescale graph convolutional network. The physical topology convolutional layer performs multi-hop neighborhood aggregation on the physical link edges and the nodes they are connected to, and outputs the physical topology feature vector. The virtual dependency convolutional layer performs multi-hop neighborhood aggregation on the virtual dependency edges and the virtual machine nodes they are connected to, and outputs the virtual dependency feature vector.
[0026] Monitor topology change events in a two-layer graph, including physical layer change events and virtual layer change events. Physical layer change events include state changes of physical servers or switches, and virtual layer change events include virtual machine state changes or virtual dependency edge weight updates.
[0027] When a topology change event is detected, the affected convolutional layer is determined according to the event type. The convolution operation is re-executed on the affected convolutional layer using the updated double-layer graph to obtain the updated feature vector. The feature vector of the previous cycle is directly reused as the reused feature vector for the unaffected convolutional layer.
[0028] The updated feature vector and the reused feature vector are concatenated and fused to obtain the fused vector.
[0029] Encoding and mapping resource constraints to constraint query representations includes:
[0030] The resource constraints are analyzed, including hardware resource constraints and topology constraints. The hardware resource constraints include processor core count constraints, memory capacity constraints, and network bandwidth constraints. The topology constraints include physical server affinity constraints and virtual machine anti-affinity constraints.
[0031] The hardware resource constraints are numerically normalized to map resource requirements of different dimensions to a unified numerical range, resulting in a normalized resource vector.
[0032] The topological relationship constraints are encoded into relational matrices, the physical server affinity constraints are encoded into affinity relation matrices, and the virtual machine anti-affinity constraints are encoded into exclusivity relation matrices.
[0033] The normalized resource vector, the affinity relation matrix, and the repulsion relation matrix are fused by feature fusion. Numerical constraints and relational constraints are mapped to a unified feature space through tensor operations to obtain a constraint feature tensor.
[0034] The constraint feature tensor is subjected to a multi-layer nonlinear transformation to map it into a high-dimensional representation consistent with the dimension of the fusion vector, thereby obtaining the constraint query representation.
[0035] Constraint-aware attention weights are calculated based on the constraint query representation and the fusion vector. Penalty values are applied to node pairs that violate constraints. Virtual machine allocation decisions and switch port configuration decisions are generated based on the constraint-aware attention weights, including:
[0036] The constraint query representation is used as the query vector, and the fusion vector is used as the key vector and value vector. The similarity score between the query vector and the key vector is calculated through a multi-head attention mechanism.
[0037] The similarity score is subjected to hierarchical constraint violation detection, and the constraint violations are divided into hard constraint violations and soft constraint violations. The hard constraint violations include hardware resource constraint violations, and the soft constraint violations include topological relationship constraint violations. The hard constraint violation status and soft constraint violation status are detected for each combination of virtual machine and physical server node.
[0038] A hierarchical penalty value is applied to the similarity score of the node pair that is detected to violate the constraints. The hierarchical penalty value includes a hard constraint penalty value and a soft constraint penalty value. The hard constraint penalty value is calculated based on the ratio of resource gap to resource demand and the penalty intensity is higher than that of the soft constraint penalty value. The soft constraint penalty value is determined based on the corresponding element value in the affinity relation matrix or the repulsion relation matrix.
[0039] The method further includes:
[0040] The similarity scores after applying the stratified penalty value are normalized by adjusting the temperature parameter to obtain the constrained perceptual attention weights, wherein the temperature parameter controls the concentration of the weight distribution.
[0041] The value vector is weighted and aggregated according to the constraint-aware attention weight to obtain a decision feature vector. The decision feature vector is decoded to obtain the allocation probability distribution between the virtual machine and the physical server node. Multiple candidate allocation schemes are sampled from the allocation probability distribution.
[0042] The constraint satisfaction of the multiple candidate allocation schemes is evaluated, and the candidate allocation scheme with the highest hard constraint satisfaction rate and the highest soft constraint satisfaction rate is selected as the virtual machine allocation decision.
[0043] Based on the virtual machine allocation decision, a set of candidate connection paths between the physical server where the virtual machine is located and the switch is determined. For each candidate connection path, a comprehensive path cost is calculated. The comprehensive path cost consists of a weighted sum of physical link edge weights, a weighted sum of virtual dependency edge weights, and a path hop count penalty.
[0044] The candidate connection path with the lowest overall cost is selected, and the physical server port directly connected to the switch on the candidate connection path is used as the switch port configuration decision. The switch is deployed and configured based on the decision control virtual machine, and performance indicators are collected for online updating of multi-timescale graph convolutional network parameters.
[0045] A second aspect of this invention provides an intelligent integrated control system for virtualization servers and network switches, comprising:
[0046] The data acquisition unit is used to acquire data on the physical server resource status, network switch topology connections, and virtual machine side-channel behavior.
[0047] Physical mapping unit, used to construct physical layer diagrams based on the physical server resource status and network switch topology connections;
[0048] The dependency edge building unit is used to calculate the implicit dependency relationship between virtual machines by performing similarity measurement on the side channel behavior data, and to add virtual dependency edges with weights equal to the similarity measurement value to the physical layer graph to form a two-layer graph.
[0049] The feature extraction unit is used to extract features from the two-layer graph using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector.
[0050] Constraint encoding unit, used to encode resource constraints and map them into constraint query representation;
[0051] The decision generation unit is used to calculate constraint-aware attention weights based on the constraint query representation and the fusion vector, apply penalty values to node pairs that violate constraints, and generate virtual machine allocation decisions and switch port configuration decisions based on the constraint-aware attention weights.
[0052] The execution update unit is used to deploy and configure switches based on the decision control virtual machine, and collect performance metrics for online updating of multi-timescale graph convolutional network parameters.
[0053] A third aspect of the present invention provides an electronic device, comprising:
[0054] processor;
[0055] Memory used to store processor-executable instructions;
[0056] The processor is configured to invoke instructions stored in the memory to execute the aforementioned method.
[0057] A fourth aspect of the present invention provides a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, implement the aforementioned method.
[0058] The beneficial effects of this invention;
[0059] By constructing a two-layer graph that integrates physical server resource status, network switch topology connections, and virtual machine side-channel behavior data, implicit dependencies between virtual machines are explicitly expressed and no longer obscured by the physical topology. Implementing virtual machine allocation and switch port configuration based on this two-layer graph can significantly improve the locality of cross-host communication, reduce data transmission hops, avoid physical link congestion, and enhance service deployment density and resource utilization balance.
[0060] Multi-timescale graph convolutional networks extract features from different temporal granularities, capturing rapid load fluctuations and slow dependency evolution. When a topology change event is detected, only the affected layer is updated, while information from another layer is reused, avoiding full graph recalculation, significantly shortening decision response latency, and enhancing control real-time performance. By fusing vector synthesis structure and temporal features, accurate input is provided for subsequent decisions.
[0061] Resource constraints are encoded into constraint query representations and attention weights are calculated with the fusion vector. Decisions are clearly constraint-oriented, ensuring that generated virtual machine allocations and switch port configurations are always valid. Penalty values strengthen the suppression of infeasible solutions, reducing the need for manual correction and improving the level of automated operation and maintenance. Side-channel behavior data can also detect co-occurrence attacks and resource contention, proactively adjusting deployment locations and enhancing multi-tenant security isolation. Attached Figure Description
[0062] Figure 1 A flowchart illustrating the intelligent integrated control method for virtualization servers and network switches;
[0063] Figure 2 This is a schematic diagram of the hierarchical virtual dependency edge weights between virtual machines provided in an embodiment of the present invention. Detailed Implementation
[0064] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0065] The technical solution of the present invention will be described in detail below with reference to specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0066] Figure 1 This is a flowchart illustrating the intelligent integrated control method for virtualization servers and network switches according to an embodiment of the present invention.
[0067] Intelligent integrated control methods for virtualization servers and network switches include:
[0068] Obtain physical server resource status, network switch topology connections, and virtual machine side-channel behavior data;
[0069] Construct a physical layer diagram based on the physical server resource status and network switch topology connection relationship;
[0070] The implicit dependencies between virtual machines are calculated by performing similarity measurement on the side channel behavior data, and virtual dependency edges with weights equal to the similarity measurement values are added to the physical layer graph to form a two-layer graph.
[0071] The two-layer graph is used to extract features using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector.
[0072] Encode and map resource constraints into constraint query representations;
[0073] Based on the constraint query representation and the fusion vector, the constraint-aware attention weight is calculated, and a penalty value is applied to the node pair that violates the constraint. The virtual machine allocation decision and the switch port configuration decision are generated according to the constraint-aware attention weight.
[0074] The switch is deployed and configured based on a decision control virtual machine, and performance metrics are collected for online updating of multi-timescale graph convolutional network parameters.
[0075] A physical layer diagram is constructed based on the physical server resource status and network switch topology connections, including:
[0076] The resource utilization rate of each physical server is determined based on the physical server resource status, and the resource utilization rate is used as the server node weight. The resource utilization rate is obtained by calculating the weighted ratio of the used computing capacity, storage capacity and memory capacity to the total capacity.
[0077] Map each physical server as a server node, and each network switch as a switch node;
[0078] The physical connection between the server node and the switch node is determined based on the network switch topology connection relationship. The physical connection is mapped to a physical link edge, and the edge weight is determined based on the port traffic load of the physical link edge.
[0079] The server node weights and physical link edge weights are used as node attributes and edge attributes of the physical layer graph to construct a physical layer graph containing node weights and edge weights.
[0080] Before constructing the physical layer diagram, three types of raw data need to be collected from the data center's monitoring interfaces or resource management platforms: physical server resource status, network switch topology connections, and virtual machine side-channel behavior data. Physical server resource status includes real-time metrics such as current CPU usage and total cores, used and total disk capacity, and memory usage and total capacity for each server. This data is typically reported to the centralized resource manager via a server management agent at fixed collection intervals. Network switch topology connections describe the physical port connection mappings between each switch and physical server in the data center network, including port numbers, link bandwidth limits, and current port traffic load. Side-channel behavior data records implicit behavioral characteristics of each virtual machine on shared physical hardware, such as cache access frequency and memory bus contention counts, used for subsequent implicit dependency mining. Only after these three types of data are time-aligned can they proceed to the physical layer diagram construction process.
[0081] Determining the resource utilization of each physical server is a crucial step in constructing the attributes of physical layer graph nodes. For the first physical server in a data center... The resource utilization of the physical server. This is obtained by weighted summation of the ratios of used capacity to total capacity across the three dimensions of computing capacity, storage capacity, and memory capacity. Specifically, it is expressed as:
[0082]
[0083] in, and They represent the first The current computing capacity (such as the number of CPU cores or computing units) and total computing capacity of each physical server; and These represent the used storage capacity and the total storage capacity, respectively. and These represent the used memory capacity and the total memory capacity, respectively. , , The weight coefficients for the three resource dimensions satisfy the following conditions: Resource sensitivity can be configured differently based on different business scenarios. For example, compute-intensive businesses can... Set to 0.6 to 0.7. Set to 0.1 to 0.2. Set to 0.2 to 0.3; storage-intensive services can... Set to 0.5 to 0.6. Set to 0.2 to 0.3. Set to 0.2; memory-intensive services can... Set to 0.5 to 0.6. and Set them to 0.2 to 0.3 respectively. The value ranges from 0 to 1. The closer the value is to 1, the more strained the server resources are; the closer it is to 0, the more abundant the resource reserves are. This utilization rate will be directly used as the node weight of the server node in the physical layer graph, reflecting the current load pressure of each server.
[0084] After calculating resource utilization, each physical server is mapped to a server node in the physical layer diagram, and each network switch is mapped to a switch node. The node identifier is consistent with the unique device number in the data center asset management system to ensure accurate location during subsequent online updates. The node attribute vector carried by the server node includes resource utilization. In addition, auxiliary attributes such as device rack location code and cluster identifier can be added to enhance the graph structure's ability to express physical topology semantics. The attribute vector of a switch node contains information such as switch model identifier, number of currently active ports, and overall traffic utilization.
[0085] Based on the network switch topology, the physical connections between server nodes and switch nodes are determined, and each physical connection is mapped to a physical link edge in the physical layer graph. The directionality of the physical link edge is set according to the actual network traffic direction; in scenarios without a clear direction, undirected edges can be used. The edge weight of each physical link edge is determined by the traffic load of the port corresponding to that link. Specifically, for the connection... physical server and the first The physical link edge of the switch, and its edge weight. Defined as the ratio of the current traffic on the port to the port's maximum bandwidth: ;in, This indicates the measured port traffic of the physical link during the current data collection period. This indicates the maximum bandwidth limit for this link port. The value of is also normalized to be between 0 and 1, when When the value approaches 1, it indicates that the link is nearing full load, and a higher transmission cost penalty needs to be imposed on this path in subsequent virtual machine allocation decisions. For interconnection links between switch nodes, the edge weights are calculated in the same way to ensure that the edge attributes in the entire physical layer graph have a unified semantic definition.
[0086] The server node weights calculated above and physical link edge weights The node attribute matrix and edge attribute matrix of the physical layer graph are embedded respectively, thus completing the construction of the physical layer graph with node weights and edge weights. The physical layer graph is stored as a combination of an adjacency matrix and a node feature matrix, where non-zero elements in the adjacency matrix correspond to the physical link edge weights. Each row of the node feature matrix corresponds to a node's complete attribute vector (containing...) (and other auxiliary features). This graph structure representation is directly compatible with the input format of subsequent multi-timescale graph convolutional networks, requiring no additional format conversion.
[0087] In practical engineering deployments, the construction of the physical layer graph needs to consider the efficiency of incremental updates. When topology changes occur in a data center, such as physical server going offline or offline, switch port failures, or changes in link bandwidth, it is not necessary to rebuild the entire physical layer graph. Instead, only the affected nodes and edges are locally updated, modifying the corresponding node or edge attributes and synchronously updating the relevant items in the adjacency matrix. This local update strategy can significantly reduce the computational overhead of graph construction and ensure the real-time performance of the physical layer graph in high-frequency acquisition scenarios. For node deletion operations caused by equipment failure, all physical link edges connected to the node need to be cleared simultaneously, and the relevant edge weights need to be reset to invalid marks to avoid introducing incorrect topology information in subsequent graph convolution operations.
[0088] After the physical layer graph is constructed, its node attribute matrix and edge attribute matrix will be combined with the virtual dependency edges generated after similarity measurement of the side-channel behavior data to form a two-layer graph structure, providing a complete input representation for multi-timescale graph convolutional networks. Server nodes with high resource occupancy and link edges with heavy traffic load in the physical layer graph will be given stronger constraint penalty signals in the subsequent constraint-aware attention mechanism, thereby guiding virtual machine allocation decisions to prioritize physical nodes with lower loads and achieving balanced utilization of data center resources.
[0089] Implicit dependencies between virtual machines are calculated by performing similarity measurements on the side-channel behavior data. Virtual dependency edges with weights equal to the similarity measurement values are added to the physical layer graph to form a two-layer graph, including:
[0090] The side-channel behavior data is decomposed into multiple levels of side-channel features based on the hardware resource hierarchy of the physical server. The hardware resource hierarchy includes a memory bandwidth layer, a last-level cache layer, and a core cache layer from high to low. The side-channel features include resource access timing, access address distribution, and access conflict patterns at the corresponding levels.
[0091] For each hardware resource level, the resource contention intensity of any two virtual machines at that level is calculated based on their side channel characteristics. The resource contention intensity is obtained by analyzing the collision frequency in the time domain and the overlap in the spatial domain of the side channel characteristics of the two virtual machines.
[0092] When the resource contention intensity exceeds the contention determination threshold of the corresponding level, a hierarchical virtual dependency edge is established for the two virtual machines at the corresponding level, and the resource contention intensity is used as the initial weight of the hierarchical virtual dependency edge.
[0093] Multi-hop propagation analysis is performed on the hierarchical virtual dependency edges to calculate the cumulative competition intensity on the indirect dependency path. The cumulative competition intensity is obtained by attenuating and accumulating the initial weights of each edge along the propagation path. Edges with greater propagation distances are subject to larger attenuation coefficients.
[0094] The initial weights are fused with the cumulative competition intensity to obtain a comprehensive similarity metric that includes the effects of direct competition and indirect propagation. The comprehensive similarity metric is then added to the physical layer graph as the final edge weight of the virtual dependency edge to form a two-layer graph.
[0095] After acquiring the virtual machine's side-channel behavior data, this raw data needs to be decomposed hierarchically according to the hardware resource hierarchy of the physical server to extract side-channel features with clear physical meaning. The hardware resource hierarchy is divided from high to low into the memory bandwidth layer, the Last Level Cache (LLC) layer, and the core cache layer (L1 / L2 Cache). The memory bandwidth layer corresponds to the overall throughput behavior of the virtual machine's access to main memory, the Last Level Cache layer reflects the contention situation on multi-core shared caches, and the core cache layer describes the access patterns of a single physical core's private cache. For each layer, three types of features are extracted from the side-channel behavior data: resource access timing, access address distribution, and access conflict patterns. Resource access timing records the access rate sequence of the virtual machine at each moment within the sampling window; access address distribution depicts the hot areas of the address space accessed by the virtual machine; and access conflict patterns describe the access latency jitter caused by resource contention. Through this decomposition process, each virtual machine corresponds to a set of structured side-channel feature vectors at each hardware resource layer, providing standardized input for subsequent contention intensity calculations.
[0096] For each hardware resource tier, for any two virtual machines and The intensity of resource contention at this level is quantified. Contention intensity is jointly evaluated from both temporal and spatial dimensions. In the temporal dimension, the frequency of access timing conflicts between two virtual machines is statistically analyzed; specifically, the proportion of time slots in which both virtual machines' access rates exceed the resource threshold for this level within the same sampling time slot is denoted as the temporal conflict frequency. superscript This indicates the hardware resource layer number. In the spatial dimension, the degree of overlap between the access address distributions of two virtual machines is calculated, using the ratio of the intersection to the union of their address heatmaps (the Jaccard similarity coefficient) as the spatial overlap. The hierarchical competition intensity is obtained by weighted fusion of temporal conflict frequency and spatial overlap. The calculation method is as follows: ;in For the first The temporal weight coefficients corresponding to each layer reflect the relative importance of temporal conflicts and spatial overlaps in contributing to the contention intensity at that layer. For the memory bandwidth layer, sudden conflicts in access timing have a more significant impact on performance, therefore... The values are relatively large, typically between 0.6 and 0.8; for the last-level cache layer, the impact of temporal conflicts and spatial overlaps is comparable. The value ranges from 0.4 to 0.6; for the core cache layer, cache line misses caused by address overlap are the main source of contention, therefore The values are relatively small, usually between 0.2 and 0.4.
[0097] When the resource contention intensity between two virtual machines at a certain level Exceeding the preset competition threshold for this level At that time, hierarchical virtual dependency edges are established for these two virtual machines at the corresponding levels, and... This serves as the initial weight for that edge. The competition determination threshold. The contention thresholds for different levels of resources are set independently: the contention threshold for the last-level cache layer is typically lower than that for the memory bandwidth layer because the last-level cache has limited capacity, and even a small degree of address overlap can cause significant performance interference; the contention threshold for the core cache layer is the lowest because the core private cache has extremely small capacity, and any non-trivial address overlap can cause cache thrashing. By establishing virtual dependency edges in a layered manner, the contention relationships at different hardware levels can be accurately marked in the two-layer graph, avoiding the ambiguity caused by mixing contention from different physical mechanisms.
[0098] After establishing direct competitive relationships, multi-hop propagation analysis is further performed on hierarchical virtual dependency edges to capture indirect dependencies between virtual machines passed through intermediate nodes. Specifically, for virtual machines... and There is no direct dependency between them, but there is a dependency through the virtual machine. In the case of indirect paths, calculate the cumulative competition intensity along the indirect path. Accumulate the initial weights of each edge along the propagation path using a decaying cumulative method: Let the weight of the first edge on the path be... The initial weight of the edge at the jump point is The corresponding attenuation coefficient is ,in This is a global attenuation factor; the attenuation increases with the propagation distance. Total cumulative competition intensity along the path. The following is obtained by multiplying the attenuated weights of each hop on the path:
[0099]
[0100] in This represents the total number of hops along the path. When multiple indirect paths exist, the maximum cumulative contention intensity among all paths is taken as the virtual machine's value. and The strength of the indirect dependency between them. Attenuation factor. The settings need to balance propagation range and computational efficiency: An excessively large value can lead to over-amplification of remote indirect dependencies, introducing noise. If the value is too small, indirect dependencies exceeding two hops will be almost completely attenuated, resulting in the loss of useful information. In practice, The value is typically adjusted between 0.3 and 0.7 depending on the cluster size and side-channel noise level.
[0101] After obtaining the initial weights of direct competition and the cumulative competition intensity of indirect propagation, the two are fused to obtain a comprehensive similarity metric. For virtual machine pairs that already have direct dependencies, the merging method is as follows: ;in The direct competition intensity is calculated by taking the weighted maximum value of the competition intensity at each level. To indirectly accumulate competitive intensity, The direct competition weighting coefficient is used to control the relative contribution of direct competition and indirect propagation in the overall metric. It is typically determined through offline regression analysis based on historical virtual machine co-occurrence performance data: when the impact of direct competition on performance is significantly higher than that of indirect propagation, the β value is between 0.7 and 0.9; when their impacts are roughly equal, the β value is between 0.4 and 0.6. In actual deployments, the initial value of β can be set to 0.7 and dynamically adjusted through online performance feedback, with an adjustment step size of 0.05. For virtual machine pairs with only indirect dependencies and no direct dependencies, if their indirect cumulative competition intensity... Exceeding the indirect dependency edge construction threshold Similarly, add virtual dependency edges to the two-layer graph, and directly take the edge weight. Through this fusion mechanism, the similarity metrics are combined. It not only reflects the degree of direct hardware resource contention between two virtual machines, but also includes the indirect competitive impact transmitted through the shared intermediate virtual machine, thus more comprehensively depicting the implicit dependencies between virtual machines.
[0102] Figure 2 This diagram illustrates the hierarchical virtual dependency edge weights between virtual machines provided in this embodiment of the invention. The horizontal axis represents virtual machine pairs (VM pairs), and the vertical axis represents the comprehensive similarity metric after multi-hop propagation analysis. The diagram shows the comprehensive similarity metrics for nine groups of VM pairs. Among them, VM1-VM4, VM2-VM5, and VM5-VM6 virtual machine pairs have high comprehensive similarity, indicating that there is a strong implicit dependency relationship between these VM pairs. This needs to be considered in the VM allocation decision to avoid deploying them in physical locations with high mutual interference. This diagram corresponds to the process of calculating the implicit dependency relationship between virtual machines and establishing virtual dependency edges through side-channel behavior data.
[0103] Combine similarity metrics The final edge weights of the virtual dependency edges are added to the constructed physical layer graph. The physical layer graph consists of physical server nodes and network switch nodes, with edges describing physical connections. On top of this, virtual machines as nodes are overlaid... The virtual dependency edge layer, with edge weights, ultimately forms a two-layer graph structure. The physical layer and the virtual dependency layer in the two-layer graph are connected across layers through the attribution relationship between virtual machines and their host physical servers. This allows subsequent multi-timescale graph convolutional networks to simultaneously perceive physical topological constraints and implicit competitive dependencies between virtual machines, providing a more informative graph structure representation for virtual machine allocation decisions.
[0104] The two-layer graph is processed using a multi-timescale graph convolutional network to extract features. When a topology change event is detected, the corresponding layer is selectively updated according to the event type, and the output of the previous cycle of other layers is reused to obtain a fusion vector, including:
[0105] Construct a multi-timescale graph convolutional network, including a physical topology convolutional layer and a virtual dependency convolutional layer. The physical topology convolutional layer performs convolution operations on physical link edges, and the virtual dependency convolutional layer performs convolution operations on virtual dependency edges.
[0106] The two-layer graph is input into a multi-timescale graph convolutional network. The physical topology convolutional layer performs multi-hop neighborhood aggregation on the physical link edges and the nodes they are connected to, and outputs the physical topology feature vector. The virtual dependency convolutional layer performs multi-hop neighborhood aggregation on the virtual dependency edges and the virtual machine nodes they are connected to, and outputs the virtual dependency feature vector.
[0107] Monitor topology change events in a two-layer graph, including physical layer change events and virtual layer change events. Physical layer change events include state changes of physical servers or switches, and virtual layer change events include virtual machine state changes or virtual dependency edge weight updates.
[0108] When a topology change event is detected, the affected convolutional layer is determined according to the event type. The convolution operation is re-executed on the affected convolutional layer using the updated double-layer graph to obtain the updated feature vector. The feature vector of the previous cycle is directly reused as the reused feature vector for the unaffected convolutional layer.
[0109] The updated feature vector and the reused feature vector are concatenated and fused to obtain the fused vector.
[0110] The multi-timescale graph convolutional network is constructed based on a two-layer graph as input, with independent convolutional channels designed for the heterogeneous characteristics of the physical and virtual layers. The physical topology convolutional layer specifically handles physical link edges; its aggregation operation unfolds along the connection relationships between physical server nodes and switch nodes. Each hop neighborhood aggregation uses the edge weight as a scaling factor for message passing, ensuring that links with high bandwidth utilization contribute more to the features of the central node. The virtual dependency convolutional layer specifically handles virtual dependency edges; its aggregation operation unfolds along the implicit dependencies between virtual machine nodes. The similarity metrics on the edges directly participate in the weighted summation, thus encoding the degree of resource competition between virtual machines into the node representation. The two convolutional channels are independent in parameter space, avoiding interference from physical layer noise on virtual layer feature extraction and preventing frequent updates of the virtual layer from polluting stable physical layer features.
[0111] In the specific implementation of multi-hop neighborhood aggregation, the physical topology convolutional layer processes each node... In the Aggregate representation of jumps By its The features of skip neighbor nodes are normalized and weighted, and then combined with the learnable weight matrix. Multiplying the results, the normalization coefficient is determined by the node degree, preventing the aggregation value of height nodes from diverging. After... After hop aggregation, the outputs of each hop are concatenated across hops or weighted summed to finally obtain the physical topology feature vector of each node. This vector simultaneously encodes the node's own resource occupancy status and its structural position information in the physical network topology. Virtual dependency convolutional layers target virtual machine nodes. In the Aggregate representation of jumps Similarly, the features of its virtual dependent neighbors are weighted by similarity metrics and then combined with the learnable weight matrix. Multiplying them together yields the result after passing through the product. After skip aggregation, the virtual dependency feature vector of each virtual machine node is output. This vector encodes the virtual machine's side-channel behavior pattern and its implicit competition with other virtual machines.
[0112] The topology change event monitoring mechanism operates in an event-driven manner, continuously comparing the current two-layer graph state with the previous snapshot. Physical layer change events cover situations such as physical server online / offline events, resource capacity changes, switch port status switching, and link bandwidth remeasurement; virtual layer change events cover situations such as virtual machine creation, migration, termination, and recalculation of virtual dependency edge weights triggered by side-channel behavior data updates. Event detection granularity is refined to the level of specific nodes or edges. Each time a change is detected, a change type label and the set of affected nodes or edges are recorded, providing a precise operational scope for subsequent selective updates.
[0113] When a physical layer change event is detected, the physical topology convolutional layer is determined to be affected. A two-layer graph containing the latest physical layer state is used to re-execute all multi-hop neighborhood aggregation operations of the physical topology convolutional layer, resulting in an updated set of physical topology feature vectors as the updated feature vectors. Simultaneously, the virtual dependency convolutional layer is determined to be unaffected, and the set of virtual dependency feature vectors calculated and cached in the previous cycle is directly used as the reused feature vectors, without re-executing any convolution calculations. When a virtual layer change event is detected, the decision logic is reversed: the virtual dependency convolutional layer re-executes the convolution operation to obtain the updated feature vectors, and the output of the physical topology convolutional layer from the previous cycle is directly used as the reused feature vector. When physical layer change events and virtual layer change events occur simultaneously within the same detection cycle, both convolutional channels re-execute the convolution operation. In this case, there are no reused feature vectors, and the updated feature vectors are the latest outputs of each of the two channels.
[0114] The core value of selective update mechanisms lies in the fine-grained allocation of computing resources. In real-world data center scenarios, the frequency of physical layer topology changes is typically much lower than the frequency of virtual layer state changes. Virtual machine migrations and side-channel behavior updates occur on a minute or even second-by-second basis, while state changes of physical servers or switches often occur on an hour-by-hour basis. Based on this frequency difference, the physical topology convolutional layer is reused for most detection cycles, triggering recalculation only when the physical layer actually changes. This reduces the computational overhead of the physical topology convolutional layer to a level that matches its actual change frequency. The virtual dependency convolutional layer, on the other hand, performs updates at a higher frequency, ensuring that virtual machine allocation decisions are always based on the latest side-channel behavior characteristics.
[0115] The cache management of reused feature vectors adopts a version number mechanism. After each convolutional layer completes a full multi-hop aggregation operation, the cache version number of the corresponding channel is incremented, and the output feature vector is written to the corresponding version's cache slot. When the event-driven mechanism determines that a certain convolutional layer does not need to be updated, it directly reads the cached feature vector corresponding to the highest version number of that channel. The version number mechanism ensures the consistency of reused feature vectors in concurrent event detection scenarios and avoids reading incomplete feature vectors from intermediate states.
[0116] The fused vector is generated by concatenating and fusing the updated feature vector with the reused feature vector. For each node, its physical topology feature vector is... With virtual dependency feature vector Concatenate along the feature dimension to obtain the concatenated vector. ,in This represents a vector concatenation operation. The concatenated vector undergoes a linear transformation and a non-linear activation function for dimension alignment and feature interaction, allowing physical layer structural information and virtual layer competing information to interact within the same representation space. The final output is a fused vector. It also carries the node's topological location in the physical network, resource load status, and implicit dependencies of the virtual machines it hosts, providing a complete node representation foundation for subsequent constraint-aware attention calculations and virtual machine allocation decisions.
[0117] In terms of multi-timescale design semantics, "multi-timescale" is reflected in two levels: First, the physical topology convolutional layer and the virtual dependency convolutional layer each correspond to different state update time granularities. The physical layer updates with a coarser time granularity, while the virtual layer updates with a finer time granularity, and the two layers independently maintain their respective time step states. Second, within a single convolutional channel, multi-hop neighborhood aggregation is essentially a temporal accumulation of information at different spatial distances. Different hop numbers correspond to different information propagation delays, and simultaneous perception of multi-scale neighborhood structures is achieved through cross-hop feature fusion. These two levels of timescale design together endow graph convolutional networks with efficient adaptability in dynamic data center environments, significantly reducing the average computational latency of each detection cycle while ensuring feature quality.
[0118] Encoding and mapping resource constraints to constraint query representations includes:
[0119] The resource constraints are analyzed, including hardware resource constraints and topology constraints. The hardware resource constraints include processor core count constraints, memory capacity constraints, and network bandwidth constraints. The topology constraints include physical server affinity constraints and virtual machine anti-affinity constraints.
[0120] The hardware resource constraints are numerically normalized to map resource requirements of different dimensions to a unified numerical range, resulting in a normalized resource vector.
[0121] The topological relationship constraints are encoded into relational matrices, the physical server affinity constraints are encoded into affinity relation matrices, and the virtual machine anti-affinity constraints are encoded into exclusivity relation matrices.
[0122] The normalized resource vector, the affinity relation matrix, and the repulsion relation matrix are fused by feature fusion. Numerical constraints and relational constraints are mapped to a unified feature space through tensor operations to obtain a constraint feature tensor.
[0123] The constraint feature tensor is subjected to a multi-layer nonlinear transformation to map it into a high-dimensional representation consistent with the dimension of the fusion vector, thereby obtaining the constraint query representation.
[0124] After obtaining the fusion vector of the two-layer graph, the resource constraints need to be transformed into a query representation that can be used for attention calculation with the fusion vector. This process involves parsing, encoding and feature fusion of heterogeneous constraint information.
[0125] Resource constraints are divided into two main categories: hardware resource constraints and topology constraints. Hardware resource constraints encompass processor core count constraints, memory capacity constraints, and network bandwidth constraints. These three types of constraints are given in numerical form, describing the minimum or maximum physical resource requirements of a virtual machine during deployment. Topology constraints describe the deployment relationship preferences between virtual machines and physical servers, and between virtual machines themselves: physical server affinity constraints require that specific virtual machines must be deployed on a specified set of physical servers to meet data locality or compliance requirements; virtual machine anti-affinity constraints require that specific virtual machines cannot coexist on the same physical server to avoid single point of failure risks or reduce side-channel interference. The parsing phase needs to extract the above information from the constraint description text or structured configuration file to form a structured set of constraint entries, providing input for subsequent coding steps.
[0126] When performing numerical normalization on hardware resource constraints, the dimensions of the number of processor cores, memory capacity, and network bandwidth differ significantly. Directly concatenating these dimensions leads to inconsistent numerical scales, affecting the effectiveness of subsequent feature fusion. Let the... The original requirement value for hardware resource constraints is The global minimum value of this type of resource is The global maximum value is Then the normalized resource demand value for:
[0127]
[0128] in To prevent extremely small positive numbers with a denominator of zero, the normalized values of the processor core count constraint, memory capacity constraint, and network bandwidth constraint are concatenated sequentially to obtain the normalized resource vector. ,in This refers to the number of dimensions constrained by hardware resources. Normalization maps resource requirements of different dimensions to a unified standard. The interval allows each dimension to have a comparable numerical scale in subsequent feature fusion.
[0129] When encoding topological constraints, the affinity matrix and repulsion matrix characterize the positive and negative relationships of deployment preferences, respectively. Assume the system has a total of... virtual machines and The physical servers have affinity constraints encoded as affinity relation matrices. , of which elements Indicates the first The virtual machine for the first Affinity strength of physical servers: If the constraint explicitly requires the first The virtual machine must be deployed on the first Taiwan physical server, Take a strong positive value; if the constraint explicitly prohibits it, then... Take a strongly negative value; if there are no constraints, then Take the value zero. Virtual machine anti-affinity constraints are encoded as an exclusivity relation matrix. , of which elements Indicates the first The virtual machine and the first Anti-affinity strength between virtual machines: If anti-affinity constraints exist between them, then Take a positive value; otherwise, take a zero value. Matrix It has symmetry, that is This ensures the bidirectional consistency of the anti-affinity relationship. and All rows are normalized to ensure that the sum of the non-zero elements in each row is 1, thus eliminating the scaling bias caused by the difference in the number of constraints.
[0130] The feature fusion stage will normalize the resource vector. Affinity Relationship Matrix Exclusionary Relationship Matrix Integrate them into a unified feature space. Because the data structures for the three types of constraints are different— It is a one-dimensional vector. and Since the matrix is two-dimensional—direct concatenation is incompatible in terms of dimension—tensor operations are used for feature fusion. Specifically, for the affinity relation matrix… Perform column-wise weighted pooling to obtain the affinity aggregation vector. ; for the exclusionary relation matrix Perform row-wise weighted pooling to obtain an exclusive aggregation vector. Pooling weights are parameterized through learnable linear layers, enabling the model to adaptively prioritize the importance of different constraint entries. , and Concatenate along the feature dimensions to form a joint constraint vector Furthermore, and outer product tensor After being flattened, the data is compressed into a fixed-dimensional relational interaction vector via linear projection. This captures the cross-relationship between affinity constraints and anti-affinity constraints. Ultimately, it will... and By concatenating the vectors, we obtain the vectorized representation of the constrained feature tensor. ,in .
[0131] The generation of the constraint query representation is achieved by processing the constraint feature tensor. This is achieved by applying a multi-layer nonlinear transformation. The multi-layer nonlinear transformation consists of several stacked fully connected layers, each containing a linear transformation, batch normalization, and an activation function (using ReLU activation). Let the transformation have a total of... Layer, number The output of the layer is Then the recurrence relation is ,in and The first The weight matrix and bias vector of the layer, This indicates a batch normalization operation. The output dimension of the final layer is set to be the same as the fusion vector. The same high-dimensional space dimension ensures the representation of constrained queries. It is in the same feature space as the fusion vector, which satisfies the dimension alignment requirement for subsequent constraint-aware attention weight calculation.
[0132] In real-world deployment scenarios, constraints are often dynamically changing. For example, adjustments to business priorities can alter the processor core count constraint, or adding new virtual machines requires updating the anti-affinity relation matrix. To address this, the constraint encoding module supports incremental updates: when a constraint entry changes, only the affected matrix rows or vector components are recalculated, and the changes are propagated to the constraint feature tensor through a differential update mechanism. This avoids a full recoding of all constraints, thereby reducing the computational overhead of constraint updates and improving the overall system's response speed in dynamic environments.
[0133] Constraint-aware attention weights are calculated based on the constraint query representation and the fusion vector. Penalty values are applied to node pairs that violate constraints. Virtual machine allocation decisions and switch port configuration decisions are generated based on the constraint-aware attention weights, including:
[0134] The constraint query representation is used as the query vector, and the fusion vector is used as the key vector and value vector. The similarity score between the query vector and the key vector is calculated through a multi-head attention mechanism.
[0135] The similarity score is subjected to hierarchical constraint violation detection, and the constraint violations are divided into hard constraint violations and soft constraint violations. The hard constraint violations include hardware resource constraint violations, and the soft constraint violations include topological relationship constraint violations. The hard constraint violation status and soft constraint violation status are detected for each combination of virtual machine and physical server node.
[0136] A hierarchical penalty value is applied to the similarity score of the node pair that is detected to violate the constraints. The hierarchical penalty value includes a hard constraint penalty value and a soft constraint penalty value. The hard constraint penalty value is calculated based on the ratio of resource gap to resource demand and the penalty intensity is higher than that of the soft constraint penalty value. The soft constraint penalty value is determined based on the corresponding element value in the affinity relation matrix or the repulsion relation matrix.
[0137] Obtaining the constraint query representation Fusion vectors with each node Next, an attention mechanism is needed to interact with the constraint information and node features to generate allocation weights that are aware of resource constraints. This constraint query representation... As the query vector, the fused vector of each node Simultaneously serving as both key and value vectors, the similarity score between the query vector and the key vector is calculated within a multi-head attention framework. Let the total number of attention heads be... , No. The query projection matrix corresponding to each attention head is: The key projection matrix is The projection matrix is Then the first Individual to Node Original similarity score Calculate as follows:
[0138]
[0139] in Divide the key vector dimension of each attention head by The purpose is to scale the inner product results to prevent gradient vanishing due to excessively large inner product values in high-dimensional cases. Through the above calculations, corresponding original similarity scores are obtained for all combinations of virtual machine nodes and physical server nodes in the system. These scores reflect the initial matching degree between the constraint query representation and the features of each node, without introducing penalty information for constraint violations.
[0140] Based on the original similarity score, hierarchical constraint violation detection is performed. Constraint violations are divided into two levels: hard constraint violations and soft constraint violations, which differ fundamentally in their detection logic and subsequent penalty strength. Hard constraint violations correspond to hardware resource constraint violations, meaning that when a virtual machine is assigned to a physical server, the remaining computing, storage, or memory capacity of that physical server is insufficient to meet the resource requirements of the virtual machine. Let the virtual machine... For the The demand for such hardware resources is physical server Corresponding to the The remaining available capacity of the resource is Then, if there exists any type of resource that satisfies At that time, determine the virtual machine With physical server The combination of elements violates a hard constraint, and this combination is recorded in the [number]th [year]. Shortage of similar resources Soft constraint violations correspond to topological relation constraint violations, including two cases: affinity constraints and anti-affinity constraints. If the affinity relation matrix... medium elements Specify virtual machine It should be deployed on a physical server first. However, the current candidate allocation target is not the server. If the affinity soft constraint is violated, then the exclusivity relation matrix will be violated. medium elements Specify virtual machine With virtual machine They should not be placed on the same physical server, but if the current allocation scheme assigns them to the same server, it triggers a violation of the anti-affinity soft constraint.
[0141] For node pairs detected to violate constraints, a hierarchical penalty value is applied to their original similarity score. Hard constraint penalty value. The calculation depends on the ratio of resource gap to resource demand. Let the first... The shortage ratio of this type of resource is The combined resource gap rate for the portfolio is the largest gap ratio among all violation resource categories. The hard constraint penalty value is determined as follows: ;in This is the base penalty coefficient for hard constraints, and its value is much larger than that for soft constraints. It is typically set between 10 and 100. The specific value must ensure that, after softmax normalization, the attention weight of the hard constraint violation combination drops below 0.001, fundamentally preventing resource-insufficient allocation schemes from being selected. Resource gap ratio. The introduction of this feature makes the penalty strength positively correlated with the degree of violation: the larger the gap, the stronger the penalty, thus enabling the differentiation of the severity of violation among multiple candidate solutions that violate hard constraints, and providing gradient information for possible subsequent constraint relaxation strategies.
[0142] Soft constraint penalty value The calculation is directly taken from the corresponding element values in the affinity or exclusivity matrix. For cases of affinity constraint violation, the soft constraint penalty value is taken as... ,in The basic penalty coefficient for soft constraints is typically set between 0.1 and 1.0. Represents virtual machine For the target server The strength of the affinity constraint is considered; the stronger the affinity, the greater the penalty when it is not satisfied. For violations of anti-affinity constraints, the penalty value for soft constraints is set to [value missing]. ,in Represents virtual machine With virtual machine The strength of the anti-affinity between the elements determines the penalty when they are co-located; the higher the anti-affinity, the greater the penalty. This is determined by the base coefficient of the soft constraint penalty value. much smaller Soft constraint violations do not lead to the complete exclusion of the corresponding allocation scheme, but rather guide the decision to favor the scheme that satisfies the topological relationship constraint by reducing its attention weight.
[0143] After applying the penalty, the adjusted similarity score is softmax normalized to obtain the constrained perceptual attention weights. Let the... Attention head to node The score after the punishment was ,in The normalized attention weights are then assigned corresponding hierarchical penalty values (hard or soft constraint penalties, which are cumulative if both are violated). for:
[0144]
[0145] Each attention head calculates its attention weight in the manner described above and then sums the weighted values in the value vector to obtain the first attention head. Output of the head Then, the outputs of all the heads are concatenated and linearly projected to obtain the final constrained perception attention output vector. This vector comprehensively encodes the interaction information between constraint satisfaction and node features.
[0146] Constraint-aware attention output vector This generates virtual machine allocation decisions and switch port configuration decisions, respectively. The virtual machine allocation decision is made by... A fully connected layer is applied and activated via softmax. The output shows the probability distribution of each virtual machine being assigned to different physical servers. The server with the highest probability is selected as the deployment target for that virtual machine. Switch port configuration decisions are made through a separate decoder. The features related to switch nodes are mapped to port bandwidth allocation ratios and VLAN tag configurations to meet the network traffic forwarding requirements corresponding to the virtual machine allocation scheme. The generation process for both types of decisions is guided by constraint-aware attention weights, ensuring that the output scheme is effectively guaranteed in terms of resource feasibility and topology compliance.
[0147] The method further includes:
[0148] The similarity scores after applying the stratified penalty value are normalized by adjusting the temperature parameter to obtain the constrained perceptual attention weights, wherein the temperature parameter controls the concentration of the weight distribution.
[0149] The value vector is weighted and aggregated according to the constraint-aware attention weight to obtain a decision feature vector. The decision feature vector is decoded to obtain the allocation probability distribution between the virtual machine and the physical server node. Multiple candidate allocation schemes are sampled from the allocation probability distribution.
[0150] The constraint satisfaction of the multiple candidate allocation schemes is evaluated, and the candidate allocation scheme with the highest hard constraint satisfaction rate and the highest soft constraint satisfaction rate is selected as the virtual machine allocation decision.
[0151] Based on the virtual machine allocation decision, a set of candidate connection paths between the physical server where the virtual machine is located and the switch is determined. For each candidate connection path, a comprehensive path cost is calculated. The comprehensive path cost consists of a weighted sum of physical link edge weights, a weighted sum of virtual dependency edge weights, and a path hop count penalty.
[0152] Select the candidate connection path with the lowest overall path cost, and use the physical server port directly connected to the switch on the candidate connection path as the switch port configuration decision.
[0153] The switch is deployed and configured based on a decision control virtual machine, and performance metrics are collected for online updating of multi-timescale graph convolutional network parameters.
[0154] After calculating the penalty-post-score for multi-head attention, the penalty-post-score similarity scores for each attention head need to be normalized using a temperature parameter to obtain the final constrained perceptual attention weights. Specifically, a temperature parameter is introduced. Scale the score when When the value is small, the normalized weight distribution tends to be sharply concentrated, and the model tends to focus its attention on a few high-scoring nodes; when When larger values are used, the weight distribution tends to be flatter and more uniform, and the model is more exploratory in its exploration of candidate nodes. A larger value can be appropriately set in the early stages of training. To ensure diversity in exploration, the intensity will be gradually reduced as training progresses. This makes decisions more certain. For the first... Each attention head, for the node Score after punishment Divide by temperature parameter Then, after normalization using the softmax function, the attention head pair node is obtained. Constraints of perceptual attention weights The calculation method is as follows The summation range covers all candidate physical server nodes.
[0155] Based on the obtained constraint-aware attention weights, the first... The value vectors of each attention head are weighted and aggregated to obtain the weighted output vector of that attention head. ,Right now ,in For the first The projection matrix of the values of each attention head, For nodes The fusion vector. All The weighted output vectors of each attention head are concatenated and then linearly projected to obtain the constraint-aware attention output vector after multi-head attention concatenation and projection. This vector, serving as a decision feature vector, carries a comprehensive understanding of resource constraints and topological structure. (Regarding the decision feature vector...) The decoding process involves a multi-layer fully connected network. The final output layer uses the softmax activation function to generate an allocation probability distribution between the virtual machine and each physical server node. Each dimension of this allocation probability distribution corresponds to a candidate physical server, and the value represents the relative probability of assigning the current virtual machine to that physical server.
[0156] Multiple independent samples are taken from the allocation probability distribution to obtain several candidate allocation schemes. The sampling process uses probabilistic random selection rather than directly choosing the greedy scheme with the highest probability. This maintains a certain degree of diversity while preserving high-quality candidate schemes, avoiding getting trapped in local optima. The number of samples can be configured according to the actual computing resource budget, typically ranging from tens to hundreds. Each candidate allocation scheme represents a complete mapping relationship between virtual machines and physical servers, providing a specific physical server allocation result for all virtual machines to be deployed in the system.
[0157] The constraint satisfaction of multiple candidate allocation schemes is evaluated. The evaluation process consists of two levels: hard constraint satisfaction rate and soft constraint satisfaction rate. The hard constraint satisfaction rate checks whether the resource requirements of each virtual machine on the assigned physical server, such as CPU, memory, and storage, do not exceed the remaining available capacity of the corresponding physical server. If all hard constraints of all virtual machines are satisfied, the hard constraint satisfaction rate of the candidate scheme is 100%, which is recorded as fully satisfied. The soft constraint satisfaction rate evaluates the satisfaction of affinity constraints and anti-affinity constraints: affinity constraints require specific pairs of virtual machines to be allocated to the same or adjacent physical servers, while anti-affinity constraints require specific pairs of virtual machines to be allocated to different physical servers to avoid the risk of single point of failure. All candidate schemes are ranked according to the principle of "hard constraint full satisfaction first, soft constraint satisfaction rate second," and the candidate allocation scheme with the highest hard constraint satisfaction rate and the highest soft constraint satisfaction rate is selected as the final virtual machine allocation decision. If multiple candidate schemes have the same highest soft constraint satisfaction rate, their resource utilization balance is further compared, and the scheme with the smallest variance of resource utilization rate on each physical server is selected to achieve load balancing.
[0158] After determining the virtual machine allocation decision, a set of candidate connection paths between each virtual machine's physical server and the uplink switch is determined. A candidate connection path refers to all feasible paths originating from the physical server, traversing one or more switches, and ultimately reaching the target network node. For each candidate connection path, its comprehensive path cost is calculated. The cost consists of three weighted summation terms: a weighted summation term for physical link edge weights, a weighted summation term for virtual dependency edge weights, and a path hop count penalty term. The weighted summation term for physical link edge weights reflects the bandwidth utilization of each physical link segment on the path; the higher the current load of the link, the greater the corresponding edge weight, and the higher the cost of this term. The weighted summation term for virtual dependency edge weights reflects the strength of the implicit dependencies between virtual machines between nodes traversed on the path; if the path passes through nodes containing virtual machines with strong dependencies, the cost of this term is lower, meaning that choosing this path helps reduce cross-node communication overhead. The path hop count penalty term is proportional to the number of hops through the switches the path passes through; the more hops, the greater the latency, and the higher the penalty of this term. Let the path... The set of physical link edges is The set of virtual dependency edges is The number of hops in the path is The total cost of the path is:
[0159]
[0160] in , , These are the weighting coefficients for the three components, which can be adjusted according to the different requirements of latency sensitivity and bandwidth sensitivity in the actual network environment. All three must satisfy... , , Normalization constraints that add up to 1. (Typically) Set to 0.4 to 0.5. Set to 0.2 to 0.3. Set it to 0.3 to 0.4. For latency-sensitive services, it can be appropriately increased. For bandwidth-sensitive services, the value can be appropriately increased to 0.5 to 0.6. From 0.5 to 0.6. This represents the edge weight of the link between the physical server and the switch. This is a comprehensive similarity metric between virtual machine nodes.
[0161] Comprehensive Cost of Path Selection The smallest candidate connection path is selected as the optimal path, and the physical server port directly connected to the switch on this path is determined as the switch port configuration decision. The switch port configuration decision includes: assigning the required VLAN tags to the corresponding physical server port, setting port bandwidth limiting policies to match the network requirements of the virtual machines, and configuring port priority queues to ensure the quality of service for latency-sensitive virtual machines. Based on the above virtual machine allocation and switch port configuration decisions, the virtual machines are deployed on the target physical server through the virtualization management interface, and the flow table rules are issued by the SDN controller to dynamically configure the switch ports.
[0162] After deployment, performance metrics such as virtual machine CPU utilization, memory usage, network throughput, and end-to-end latency are continuously collected, along with the overall resource utilization of physical servers and real-time traffic data for switch ports. The collected performance metrics and corresponding decision actions constitute training samples, used to update the parameters of the multi-timescale graph convolutional network online. Online updates employ an incremental learning strategy, using newly collected samples to perform small-batch gradient updates on the network parameters while retaining samples from a historical experience replay buffer to prevent catastrophic forgetting. This allows the model to continuously adapt to the dynamic changes in the data center environment, improving the decision-making quality in subsequent cycles.
[0163] A second aspect of this invention provides an intelligent integrated control system for virtualization servers and network switches, comprising:
[0164] The data acquisition unit is used to acquire data on the physical server resource status, network switch topology connections, and virtual machine side-channel behavior.
[0165] Physical mapping unit, used to construct physical layer diagrams based on the physical server resource status and network switch topology connections;
[0166] The dependency edge building unit is used to calculate the implicit dependency relationship between virtual machines by performing similarity measurement on the side channel behavior data, and to add virtual dependency edges with weights equal to the similarity measurement value to the physical layer graph to form a two-layer graph.
[0167] The feature extraction unit is used to extract features from the two-layer graph using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector.
[0168] Constraint encoding unit, used to encode resource constraints and map them into constraint query representation;
[0169] The decision generation unit is used to calculate constraint-aware attention weights based on the constraint query representation and the fusion vector, apply penalty values to node pairs that violate constraints, and generate virtual machine allocation decisions and switch port configuration decisions based on the constraint-aware attention weights.
[0170] The execution update unit is used to deploy and configure switches based on the decision control virtual machine, and collect performance metrics for online updating of multi-timescale graph convolutional network parameters.
[0171] A third aspect of the present invention provides an electronic device, comprising:
[0172] processor;
[0173] Memory used to store processor-executable instructions;
[0174] The processor is configured to invoke instructions stored in the memory to execute the aforementioned method.
[0175] A fourth aspect of the present invention provides a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, implement the aforementioned method.
[0176] This invention can be a method, apparatus, system, and / or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for performing various aspects of the invention.
[0177] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for intelligent integrated control of virtualization servers and network switches, characterized in that, include: Obtain physical server resource status, network switch topology connections, and virtual machine side-channel behavior data; A physical layer graph is constructed based on the physical server resource status and network switch topology connection relationship; the implicit dependency relationship between virtual machines is calculated by performing similarity measurement on the side channel behavior data, and virtual dependency edges with weights equal to the similarity measurement value are added to the physical layer graph to form a two-layer graph. The two-layer graph is used to extract features using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector. Encode and map resource constraints into constraint query representations; Based on the constraint query representation and the fusion vector, the constraint-aware attention weight is calculated, and a penalty value is applied to the node pair that violates the constraint. The virtual machine allocation decision and the switch port configuration decision are generated according to the constraint-aware attention weight. The switch is deployed and configured based on a decision control virtual machine, and performance metrics are collected for online updating of multi-timescale graph convolutional network parameters.
2. The method according to claim 1, characterized in that, A physical layer diagram is constructed based on the physical server resource status and network switch topology connections, including: The resource utilization rate of each physical server is determined based on the physical server resource status, and the resource utilization rate is used as the server node weight. The resource utilization rate is obtained by calculating the weighted ratio of the used computing capacity, storage capacity and memory capacity to the total capacity. Map each physical server as a server node, and each network switch as a switch node; The physical connection between the server node and the switch node is determined based on the network switch topology connection relationship. The physical connection is mapped to a physical link edge, and the edge weight is determined based on the port traffic load of the physical link edge. The server node weights and physical link edge weights are used as node attributes and edge attributes of the physical layer graph to construct a physical layer graph containing node weights and edge weights.
3. The method according to claim 1, characterized in that, Implicit dependencies between virtual machines are calculated by performing similarity measurements on the side-channel behavior data. Virtual dependency edges with weights equal to the similarity measurement values are added to the physical layer graph to form a two-layer graph, including: The side-channel behavior data is decomposed into multiple levels of side-channel features based on the hardware resource hierarchy of the physical server. The hardware resource hierarchy includes a memory bandwidth layer, a last-level cache layer, and a core cache layer from high to low. The side-channel features include resource access timing, access address distribution, and access conflict patterns at the corresponding levels. For each hardware resource level, the resource contention intensity of any two virtual machines at that level is calculated based on their side channel characteristics. The resource contention intensity is obtained by analyzing the collision frequency in the time domain and the overlap in the spatial domain of the side channel characteristics of the two virtual machines. When the resource contention intensity exceeds the contention determination threshold of the corresponding level, a hierarchical virtual dependency edge is established for the two virtual machines at the corresponding level, and the resource contention intensity is used as the initial weight of the hierarchical virtual dependency edge. Multi-hop propagation analysis is performed on the hierarchical virtual dependency edges to calculate the cumulative competition intensity on the indirect dependency path. The cumulative competition intensity is obtained by attenuating and accumulating the initial weights of each edge along the propagation path. Edges with greater propagation distances are subject to larger attenuation coefficients. The initial weights are fused with the cumulative competition intensity to obtain a comprehensive similarity metric that includes the effects of direct competition and indirect propagation. The comprehensive similarity metric is then added to the physical layer graph as the final edge weight of the virtual dependency edge to form a two-layer graph.
4. The method according to claim 1, characterized in that, The two-layer graph is processed using a multi-timescale graph convolutional network to extract features. When a topology change event is detected, the corresponding layer is selectively updated according to the event type, and the output of the previous cycle of other layers is reused to obtain a fusion vector, including: Construct a multi-timescale graph convolutional network, including a physical topology convolutional layer and a virtual dependency convolutional layer. The physical topology convolutional layer performs convolution operations on physical link edges, and the virtual dependency convolutional layer performs convolution operations on virtual dependency edges. The two-layer graph is input into a multi-timescale graph convolutional network. The physical topology convolutional layer performs multi-hop neighborhood aggregation on the physical link edges and the nodes they are connected to, and outputs the physical topology feature vector. The virtual dependency convolutional layer performs multi-hop neighborhood aggregation on the virtual dependency edges and the virtual machine nodes they are connected to, and outputs the virtual dependency feature vector. Monitor topology change events in a two-layer graph, including physical layer change events and virtual layer change events. Physical layer change events include state changes of physical servers or switches, and virtual layer change events include virtual machine state changes or virtual dependency edge weight updates. When a topology change event is detected, the affected convolutional layer is determined according to the event type. The convolution operation is re-executed on the affected convolutional layer using the updated double-layer graph to obtain the updated feature vector. The feature vector of the previous cycle is directly reused as the reused feature vector for the unaffected convolutional layer. The updated feature vector and the reused feature vector are concatenated and fused to obtain the fused vector.
5. The method according to claim 1, characterized in that, Encoding and mapping resource constraints to constraint query representations includes: The resource constraints are analyzed, including hardware resource constraints and topology constraints. The hardware resource constraints include processor core count constraints, memory capacity constraints, and network bandwidth constraints. The topology constraints include physical server affinity constraints and virtual machine anti-affinity constraints. The hardware resource constraints are numerically normalized to map resource requirements of different dimensions to a unified numerical range, resulting in a normalized resource vector. The topological relationship constraints are encoded into relational matrices, the physical server affinity constraints are encoded into affinity relation matrices, and the virtual machine anti-affinity constraints are encoded into exclusivity relation matrices. The normalized resource vector, the affinity relation matrix, and the repulsion relation matrix are fused by feature fusion. Numerical constraints and relational constraints are mapped to a unified feature space through tensor operations to obtain a constraint feature tensor. The constraint feature tensor is subjected to a multi-layer nonlinear transformation to map it into a high-dimensional representation consistent with the dimension of the fusion vector, thereby obtaining the constraint query representation.
6. The method according to claim 1, characterized in that, Constraint-aware attention weights are calculated based on the constraint query representation and the fusion vector. Penalty values are applied to node pairs that violate constraints. Virtual machine allocation decisions and switch port configuration decisions are generated based on the constraint-aware attention weights, including: The constraint query representation is used as the query vector, and the fusion vector is used as the key vector and value vector. The similarity score between the query vector and the key vector is calculated through a multi-head attention mechanism. The similarity score is subjected to hierarchical constraint violation detection, and the constraint violations are divided into hard constraint violations and soft constraint violations. The hard constraint violations include hardware resource constraint violations, and the soft constraint violations include topological relationship constraint violations. The hard constraint violation status and soft constraint violation status are detected for each combination of virtual machine and physical server node. A hierarchical penalty value is applied to the similarity score of the node pair that is detected to violate the constraints. The hierarchical penalty value includes a hard constraint penalty value and a soft constraint penalty value. The hard constraint penalty value is calculated based on the ratio of resource gap to resource demand and the penalty intensity is higher than that of the soft constraint penalty value. The soft constraint penalty value is determined based on the corresponding element value in the affinity relation matrix or the repulsion relation matrix.
7. The method according to claim 6, characterized in that, The method further includes: The similarity scores after applying the stratified penalty value are normalized by adjusting the temperature parameter to obtain the constrained perceptual attention weights, wherein the temperature parameter controls the concentration of the weight distribution. The value vector is weighted and aggregated according to the constraint-aware attention weight to obtain a decision feature vector. The decision feature vector is decoded to obtain the allocation probability distribution between the virtual machine and the physical server node. Multiple candidate allocation schemes are sampled from the allocation probability distribution. The constraint satisfaction of the multiple candidate allocation schemes is evaluated, and the candidate allocation scheme with the highest hard constraint satisfaction rate and the highest soft constraint satisfaction rate is selected as the virtual machine allocation decision. Based on the virtual machine allocation decision, a set of candidate connection paths between the physical server where the virtual machine is located and the switch is determined. For each candidate connection path, a comprehensive path cost is calculated. The comprehensive path cost consists of a weighted sum of physical link edge weights, a weighted sum of virtual dependency edge weights, and a path hop count penalty. Select the candidate connection path with the lowest overall cost, and use the physical server port directly connected to the switch on the candidate connection path as the switch port configuration decision.
8. An intelligent integrated control system for virtualization servers and network switches, used to implement the method as described in any one of claims 1-7, characterized in that, include: The data acquisition unit is used to acquire data on the physical server resource status, network switch topology connections, and virtual machine side-channel behavior. Physical mapping unit, used to construct physical layer diagrams based on the physical server resource status and network switch topology connections; The dependency edge building unit is used to calculate the implicit dependency relationship between virtual machines by performing similarity measurement on the side channel behavior data, and to add virtual dependency edges with weights equal to the similarity measurement value to the physical layer graph to form a two-layer graph. The feature extraction unit is used to extract features from the two-layer graph using a multi-timescale graph convolutional network. When a topology change event is detected, the corresponding layer is selectively updated according to the event type and the output of the previous cycle of other layers is reused to obtain a fusion vector. Constraint encoding unit, used to encode resource constraints and map them into constraint query representation; The decision generation unit is used to calculate constraint-aware attention weights based on the constraint query representation and the fusion vector, apply penalty values to node pairs that violate constraints, and generate virtual machine allocation decisions and switch port configuration decisions based on the constraint-aware attention weights. The execution update unit is used to deploy and configure switches based on the decision control virtual machine, and collect performance metrics for online updating of multi-timescale graph convolutional network parameters.
9. An electronic device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured to invoke instructions stored in the memory to execute the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having computer program instructions stored thereon, characterized in that, When the computer program instructions are executed by the processor, they implement the method described in any one of claims 1 to 7.
