A method and system for managing network resource identifiers
By adopting a hierarchical computing network resource identification management method, the problems of resource heterogeneity and silos, and lack of semantic self-description in computing power networks are solved, enabling rapid resolution and efficient scheduling of resources, and improving the scalability and reliability of computing power networks.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- QILU UNIVERSITY OF TECHNOLOGY (SHANDONG ACADEMY OF SCIENCES)
- Filing Date
- 2026-02-27
- Publication Date
- 2026-04-24
AI Technical Summary
In existing technologies, computing power network resource management suffers from resource heterogeneity and silos, lack of semantic self-description in the identification system, low parsing and scheduling efficiency, and signaling storms caused by dynamic state updates, making it difficult to achieve cross-domain resource collaboration and real-time scheduling.
A hierarchical and autonomous computing network resource identification management method is adopted. By constructing a global resource identification structure, distributed registration and resolution of resources are realized. This includes a hierarchical architecture of data centers, regions, and global identification management nodes. Combined with data structures such as cold and hot data storage, inverted indexes, and radix trees, rapid resolution and scheduling of resources are achieved.
It achieves semantic normalization of heterogeneous resources, reduces network signaling overhead, improves resource scheduling efficiency, ensures physical layer security, and enables resource discovery and scheduling at the second or even microsecond level.
Smart Images

Figure CN121743066B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a method and system for managing network resource identification, belonging to the field of computing power network resource management technology. Background Technology
[0002] With the rapid development of cloud computing, big data, and artificial intelligence technologies, society's demand for computing power is exploding, making the construction of cross-regional and cross-carrier computing networks an inevitable trend. However, in the current multi-datacenter computing network environment, resource management and scheduling face the following severe technical challenges:
[0003] Resource heterogeneity and silo issues: Different data centers are managed by different operators or departments, and their internal computing resources (such as CPUs, GPUs, NPUs), storage, and network resources vary greatly in hardware architecture, model specifications, and management interfaces, forming physical resource silos. Existing management methods cannot shield these underlying heterogeneous differences, leading to difficulties in cross-domain resource collaboration.
[0004] The identification system lacks semantic self-description capabilities: In existing technologies, resource identifiers typically use randomly generated UUIDs or serial numbers. These identifiers only serve as logical indexes or pointers and do not contain any hardware specification information (such as memory size or chip manufacturer). When the scheduling system filters resources, it must perform high-frequency external database queries (I / O-intensive operations) to obtain resource attribute information, resulting in extremely high latency in first-packet parsing and making it difficult to meet the requirements of low-latency, highly dynamic real-time computing power scheduling. For example, when the scheduling system needs to filter computing nodes with specific specifications (such as "memory greater than 80G") from a massive resource pool, because existing resource identifiers (such as UUIDs) lack semantic features, the scheduler cannot determine whether a resource meets the requirements solely based on the identifier itself. This means that for each candidate resource identifier, the scheduler must initiate a query request to the metadata database to read its detailed attributes. When the number of candidate resources reaches millions, this "checking the database one by one" mechanism will generate huge network I / O overhead and database concurrency pressure, causing the resource discovery latency to deteriorate from milliseconds to seconds or even longer, which seriously restricts the real-time scheduling capability of the computing network.
[0005] Inefficient parsing and scheduling: Traditional resource discovery mechanisms typically employ recursive queries or full metadata retrieval. The scheduler needs to obtain fragmented resource information through multiple interfaces before making a decision, resulting in a lengthy process. Especially at the scale of hundreds of millions of resources, frequent database interactions become a system bottleneck, and there is a lack of an efficient global filtering mechanism.
[0006] Signaling storms caused by dynamic state updates: The load status of computing resources fluctuates in real time. If a real-time full reporting mechanism is adopted, the massive amount of state update data will lead to backbone network congestion (signaling storm). Existing technologies lack effective state aggregation and on-demand triggering mechanisms, making it difficult to reduce network overhead while ensuring real-time state reporting.
[0007] Therefore, there is an urgent need for a computing power network resource identification and management method that can shield the underlying heterogeneous differences, possess "semantic self-description" characteristics, and support fast parsing. Summary of the Invention
[0008] To address the shortcomings of existing technologies, this invention provides a method and system for managing computing network resource identifiers. The main objective of this invention is to solve the problem of the lack of semantic self-description in existing resource identifiers. This invention achieves distributed registration and resolution of computing resources through hierarchical and autonomous computing network resource identifier management, thereby improving the scalability, reliability, and scheduling efficiency of the computing network system.
[0009] The technical solution of the present invention is as follows:
[0010] The first aspect of the present invention provides a method for managing network resource identifiers, comprising: constructing a global resource identifier structure for network resources according to the type of network resources;
[0011] A hierarchical management architecture is constructed, including data center identifier management nodes, regional identifier management nodes, and global identifier management nodes. When new computing network resources are connected, they are registered. Simultaneously, memory data is periodically scanned to dynamically update computing network resources, including:
[0012] Step 1: The data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; the global resource identifier is encapsulated into cold data and hot data, and stored separately for cold and hot data.
[0013] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node;
[0014] Step 2: The regional identifier management node receives the reported registration data packet and constructs a regional-level multidimensional inverted index;
[0015] Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node;
[0016] Step 3: The global identifier management node receives the capability summary, constructs a composite state container, creates or updates the radix tree in memory, and constructs a global multidimensional inverted index;
[0017] Step 4: The data center identification management node periodically scans the memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node;
[0018] Step 5: The regional identification management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identification management node. The global identification management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle.
[0019] When a user initiates a scheduling request, a connection is established with the target resource according to the scheduling policy, including:
[0020] Step S1: The user initiates a scheduling request. The global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user.
[0021] Step S2: The user sends a resource reservation request to the region identifier management node based on the region list. The region identifier management node filters the data centers and selects the target data center.
[0022] Step S3: The data center identifier management node of the target data center finds the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
[0023] According to a preferred embodiment of the present invention, a global resource identifier structure for computing network resources is constructed based on the type of computing network resources; including:
[0024] The global resource identifier structure of computing network resources includes the computing network node layer, the data center cluster layer, and the resource instance layer, as shown below:
[0025] GRI = N / C / R;
[0026] Wherein, GRI represents the Global Resource Identifier, N represents the Computing Network Node Layer, C represents the Data Center Cluster Layer, R represents the Resource Instance Layer, and / represents the Layer Separator;
[0027] The computing network node layer adopts a hierarchical structure, including top-level nodes, regional nodes, and data center nodes, represented as follows:
[0028] N = Top.Region.DC;
[0029] Among them, Top is the top-level node, representing the sovereign domain or national-level root node of the computing network resource; Region is the regional node, representing the operating institution, research organization, or first-level administrative region code of the computing network resource; DC is the data center node, representing the specific data center under each regional node;
[0030] The data center cluster layer describes the logical or physical partitioning relationships within the data center, represented as:
[0031] C= ClusterID⊕PoolID⊕ZoneID⊕...;
[0032] Wherein, ClusterID is the cluster number, representing the basic cluster unit within the data center; PoolID is the resource pool number, representing the set divided within the cluster according to business attributes; ZoneID is the availability zone number, describing the physically isolated availability zone; ⊕ indicates field concatenation or default; … indicates an extensible field;
[0033] The resource instance layer identifies a specific instance and carries a static hardware fingerprint, including resource number, resource type, and static attribute fields, represented as:
[0034] R=ResourceID&Type&StaticAttributes;
[0035] Among them, ResourceID represents the resource number, StaticAttributes represents the static attribute field, i.e., the capability fingerprint, which describes the specific hardware or functional attribute characteristics of the resource; Type represents the resource type, including the main resource class and the corresponding resource subclass;
[0036] The main resource class represents the main category of resources, including computing resources, storage resources, and network resources; the subclasses of resources represent the more specific types or uses of the main resource class.
[0037] If the main resource class is computing resource, then the resource subclasses of computing resource include intelligent computing resource (ICR), general computing resource (GCR), and supercomputing resource (HCR).
[0038] If the main resource class is storage resource, then the resource subclasses of storage resource include block storage BLS, object storage OBS, distributed file storage DFS, and cache storage CAS.
[0039] If the main resource class is network resource, then the resource subclasses of network resource include Virtual Network Link (VNL), Physical Data Link (PDL), Edge Gateway (EDG), and Internet Network (INT).
[0040] The StaticAttributes field includes computational fingerprints, storage fingerprints, and network fingerprints;
[0041] If the main resource class is a computing resource, the static attribute field is the fingerprint of the computing class; if the main resource class is a storage resource, the static attribute field is the fingerprint of the storage class; if the main resource class is a network resource, the static attribute field is the fingerprint of the network class.
[0042] Computational fingerprints include the specifications and performance of computing resources; storage fingerprints include the storage configuration of storage resources; and network fingerprints include the network configuration of network resources.
[0043] According to a preferred embodiment of the present invention, the specific implementation process of step 1 includes:
[0044] When new computing network resources are connected to the data center network, the Data Center Identification Management Node (DCIMN) triggers a hardware scan through the out-of-band management interface or host agent to collect the hardware attributes of the computing network resources. Identify the main resource class and subclasses in the hardware attributes;
[0045] A hierarchical ontology mapping table is constructed to unify the descriptions of the same hardware from different manufacturers and to map hardware attributes to a standard attribute set. As shown below:
[0046] ;
[0047] in, Indicates the subclass of the resource obtained; This is a mapping function, which retrieves the corresponding static attribute field from the hardware attributes and maps it to a standard attribute set;
[0048] The resource type and standard attribute set are converted into a set integer code, and a fingerprint integer is generated based on the bit field structure. As shown below:
[0049] ;
[0050] in, Integer code representing the main resource class. Integer code representing resource subclass, Integer codes representing dynamic attribute loads, i.e., the standard set of attributes;
[0051] right Perform Base62 encoding to convert it into a string consisting of [0-9, az, AZ], and generate a fingerprint suffix. As shown below:
[0052] ;
[0053] in, This represents the Base62 encoding function;
[0054] Obtain the location of the data center accessing the computing network resources and the physical topology location of the computing network resources, along with the fingerprint suffix. The Global Resource Identifier (GRI) is generated by combining the following:
[0055] ;
[0056] in, Represents a string concatenation operator; The letter code representing the data center accessed, i.e., the network node layer N. The letter code indicates the physical topology location, i.e., the data center cluster layer C; ID represents the resource number. Indicates the resource type;
[0057] Global resource identifiers are encapsulated into cold and hot data, and stored separately for both; including:
[0058] Use GRI as the logical primary key, encapsulate physical connection information and full static metadata, and write them as cold data to the local persistent database.
[0059] Physical connection information includes access address, service port number (Port), and authentication token (Token).
[0060] Full static metadata includes network resource extension attributes that are not encoded into fingerprint integers;
[0061] The encapsulation mapping relationship is as follows:
[0062] ;
[0063] in, This represents the encapsulated cold data. Indicates the access address; Represents full static metadata; Write to the local persistent database;
[0064] Initialize a dynamic status slot in local memory to store dynamic information collected in real time by the background monitoring thread;
[0065] If the resource type in GRI is a computing resource, then the dynamic information includes load, temperature, and energy consumption;
[0066] If the resource type in GRI is storage resource, the dynamic information includes IOPS utilization, real-time read / write throughput, remaining storage pool capacity, and I / O latency.
[0067] If the resource type in the GRI is a network resource, the dynamic information includes port bandwidth utilization, packet loss rate, link round-trip time, and buffer utilization.
[0068] The GRI and dynamic information are encapsulated into hot data, as shown below:
[0069] ;
[0070] in, This indicates that hot data refers to dynamic hot data state records residing in memory. This indicates the current running status of the computing network resources. The initial state is 0 / Init. The state is updated in real time by reading the computing network resources through a background hardware monitoring thread. Represents dynamic information. Indicates the last update timestamp of dynamic information; hot data Stored in the dynamic state slot;
[0071] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node; including:
[0072] From fingerprint integer Extracting feature codes , This represents the m-th attribute in the dynamic attribute load;
[0073] Feature code Using GRI as the key and GRI as the value, an inverted index is constructed to store the GRI string possessing the m-th attribute feature, as shown below:
[0074] ;
[0075] in, express Inverted index;
[0076] Encapsulate all newly added global resource identifiers into a registration data packet, as shown below:
[0077] ;
[0078] in, This indicates the registration data packet. Represents a unique identifier for the data center. This represents the nth global resource identifier; the Data Center Identifier Management Node (DCIMN) reports the registration data packet to the Regional Identifier Management Node.
[0079] According to a preferred embodiment of the present invention, the regional identification management node receives the reported registration data packet and constructs a regional-level multidimensional inverted index; based on the fingerprint suffix in the registration data packet, it generates a capability summary and reports it to the global identification management node; the global identification management node receives the capability summary, constructs a composite state container, creates or updates a cardinality tree in memory, and constructs a global-level multidimensional inverted index, including:
[0080] The Region Identifier Management Node (RIMN) receives registration data packets and identifies the string concatenation characters and delimiters for each GRI, extracting the fingerprint suffix. ; The fingerprint suffix in Base62 string format The formula for restoring the binary fingerprint integer to its computational state is as follows:
[0081] ;
[0082] in, Represents the integer value of the restored fingerprint. This refers to the Base62 decoding function;
[0083] From the restored fingerprint integer Extracting feature codes , Represents fingerprint integer The k-th attribute of the dynamic attribute load;
[0084] Use a hash function to convert GRIs into numeric IDs, and then combine these numeric IDs into a roar bitmap; use feature codes. Using the key and the roaring bitmap as the value, construct an inverted index as follows:
[0085] ;
[0086] in, Indicates the first A region-level multidimensional inverted index for each attribute A numeric ID representing the GRI. Indicates obtaining feature codes The corresponding roar bitmap container pointer;
[0087] Obtain the fingerprint suffix for each GRI, remove duplicates, and generate a capability summary, as shown below:
[0088] ;
[0089] in, Represents a summary of capabilities. A region identifier is a unique numerical identifier representing the logical or administrative region governed by a region identifier management node. This represents the suffix of the Mth fingerprint. This indicates a deduplication operation; the capability summary is then reported to the global identifier management node.
[0090] The Global Identifier Management Node (GIMN) restores each fingerprint suffix in the capability digest to a fingerprint integer. ;
[0091] fingerprint integer As a binary sequence, according to the step size of the radix tree, Divide into k path index segments Check if the child nodes corresponding to each path index segment exist;
[0092] If we are traversing the intermediate level, i.e., the first... To the When the path index segment is null, a new branch node is allocated in the heap memory. The data structure of the branch node is configured to include only an array of pointers pointing to the next level of child nodes. The memory address of the branch node is linked to the corresponding slot of the current parent node.
[0093] If the traversal reaches the last level, i.e., the... If the corresponding node is not found during the layering process, a new index node is allocated in the heap memory; the data structure of the index node is configured to include a dedicated value pointer field and mount a composite state container.
[0094] Composite state container This represents a structure instance defined in physical memory that encapsulates multiple data structures; a composite state container. It includes two member variables: the regional distribution bitmap and the macro heatmap slot;
[0095] Among them, the regional distribution bitmap means calling the constructor of the compressed bitmap algorithm library, instantiating a compressed bitmap object with an initial empty state, and assigning the reference handle of the compressed bitmap object to the first member variable of the composite state container;
[0096] The macro heatmap slot represents an instantiated array or hash table that supports dynamic expansion, and the root address of the array or hash table is assigned to the container's second member variable;
[0097] Assign values to two member variables of the composite state container, where the macroscopic heatmap slots are identified by region. As the key, store the real-time congestion status and static cost of each region, as shown below:
[0098] ;
[0099] in, express The macroscopic heatmap slots, where RCI represents the regional congestion index, are initially set to 0. Represents static cost. Indicates the last update time;
[0100] The regional distribution bitmap is shown below:
[0101] ;
[0102] in, This represents a bitmap showing the regional distribution. This indicates that the bit at the specified index position is set;
[0103] If the child node of the radix tree exists, the corresponding composite state container is retrieved, and the data of the two member variables is checked. If the data is empty, an assignment operation is performed.
[0104] In fingerprint integer Extracting feature codes , with feature code Using the RegionID (the identifier of the region to which the capability summary belongs) as the key, a global multidimensional inverted index is created. The index values are stored using a roaring bitmap, recording the feature codes. The set of all region IDs.
[0105] According to a preferred embodiment of the present invention, step 4 includes the following specific implementation process:
[0106] DCIMN periodically scans the real-time status data in memory, i.e., the hot data stored in memory, and identifies the same fingerprint suffix in the global resource identifier. The network resources are grouped together to construct a dynamic capability summary, as shown below:
[0107] ;
[0108] in, Indicates fingerprint suffix Dynamic capability summary, This indicates the fingerprint suffix in the available inventory data. The corresponding running state (State) is the number of online and ready states; This represents the real-time cost factor, which is the unit price of computing power for the current period. Indicates the generation time; The average load, which is the weighted average of the loads within the group, is shown below:
[0109] ;
[0110] Where M represents the number of computing network resources within the group, This represents the load of the j-th computing network resource;
[0111] If the network resources are computing resources, then read the computing power utilization rate of the computing resources. and video memory / memory usage The calculated load is as follows:
[0112] ;
[0113] in, , , These are the weighting coefficients. This represents the temperature penalty function, which applies if the current chip temperature... Less than the safe temperature threshold Then the function The value is 0; if Then the function value grows linearly. , This is the limiting temperature threshold; if If , then the function value is 1;
[0114] If the computing network resource is a storage resource, then read the real-time IOPS utilization rate of the storage resource. Read / write throughput (BW) and storage pool capacity utilization The calculated load is as follows:
[0115] ;
[0116] in, , , These are the weighting coefficients. This represents the number of read / write operations per second in real time, i.e., the actual number of I / O operations generated within the current sampling period. This indicates the device's maximum IOPS capability, which is the theoretical peak performance of the storage medium as measured in factory specifications or benchmark tests. This represents the real-time read / write throughput, i.e., the actual data rate transmitted within the current sampling period. This indicates the device's maximum throughput bandwidth, which is the maximum data transfer rate that the storage interface or medium can support.
[0117] If the network resource is a network resource, then read the port bandwidth utilization rate of the network resource. Real-time packet loss rate and link round-trip delay The calculated load is as follows:
[0118] ;
[0119] in, , , These are the weighting coefficients. Represents a nonlinear mapping function. This represents the maximum tolerable latency for the service, which is the maximum acceptable network round-trip latency limit specified in the computing power network service level agreement;
[0120] Send the dynamic capability summary to the Regional Identifier Management Node (RIMN).
[0121] According to a preferred embodiment of the present invention, step 5 includes the following specific implementation process:
[0122] RIMN (Regional Identifier Management Node) receives dynamic capability summaries Check timestamp Set the maximum silence threshold to ,like Then the dynamic capability summary Available inventory in the system has been reduced to zero. Otherwise, no action will be taken; among them Indicates the current time. Indicates the generation time of the dynamic capability summary;
[0123] According to fingerprint suffix Perform classification and aggregation to calculate the Regional Congestion Index (RCI), as shown below:
[0124] ;
[0125] in, This indicates the congestion index of the corresponding computing network resources within the region; This represents the Sigmoid activation function; This indicates the total registered capacity of computing network resources within the region; Indicates the weighting coefficient;
[0126] Set a threshold condition and execute a threshold detection mechanism, as shown below:
[0127] ;
[0128] in, This represents the currently calculated RCI index. This represents the RCI value calculated after the area identifier management node receives the dynamic capability digest in the previous round. This indicates that a threshold value is set.
[0129] If the threshold condition is met, that is... Then RIMN generates a macroscopic state summary. And report it to the Global Identifier Management Node (GIMN), as shown below:
[0130] ;
[0131] in, Indicates the generation time;
[0132] The Global Identity Management Node (GIMN) will summarize the macroscopic state. fingerprint suffix Decode and restore to fingerprint integer Use this as the key to access the radix tree in memory and retrieve the corresponding composite state container: ;
[0133] In the obtained In the middle, according to the macroscopic state summary It directly locates the corresponding macroscopic heat map slot;
[0134] Update the macroscopic heatmap slots and add a macroscopic state summary. In Write it into the macro heatmap slot: Summary of macroscopic state The generation time is updated in the macro heatmap slot: .
[0135] According to a preferred embodiment of the present invention, the user terminal initiates a scheduling request, the global identifier management node generates a target fingerprint from the scheduling request, selects a region list in memory, and returns the region list to the user terminal; including:
[0136] The user initiates a scheduling request. This includes hardware constraints and policy constraints;
[0137] Among them, hardware constraints The physical specifications of the resources being invoked;
[0138] Policy constraints The target direction for optimization is the weight vector generated based on the business scenario and requirements. , For performance weighting, As a cost weight, As the delay weight, and satisfying ;
[0139] The global identifier management node uses a global code table to define hardware constraints. Feature code mapped to binary ;
[0140] If the resource specifications defined in the hardware constraints are specific resources, then an exact lookup is performed, which includes combining the signatures into a complete integer to obtain the target fingerprint. , target fingerprint As a key, it accesses the radix tree in memory; if the corresponding node exists, it directly returns the corresponding composite state container. Regional distribution bitmap The location with a bitmap value of 1 indicates the region that meets the hardware constraints;
[0141] If the resource specifications specified in the hardware constraints are fuzzy matching resources or only specify some attributes, then the feature code is used as the key to extract the set of regions in the global multidimensional inverted index, and the intersection operation is performed to obtain the regions that meet the hardware constraints.
[0142] For regions that meet hardware constraints Read the slots of the macro heat map Calculate the score from the data. :
[0143] ;
[0144] in, This refers to the regional congestion index. For regional static costs; Network distance; The lowest benchmark cost across the entire network; Indicates the weighting coefficient;
[0145] Extracted regions by Sort in descending order and select the first few. The following regions are listed as preferred regions. This is then returned to the user.
[0146] The user initiates a resource reservation request to the region identifier management node based on the region list. The region identifier management node filters the data centers and selects the target data center; including:
[0147] User terminal according to The region initiates a resource reservation request, and the corresponding region's area identifier management node receives the request and deletes data centers that meet any of the following conditions: ; ; ;
[0148] in, This represents the average load of the data center. The preset safe load threshold;
[0149] The current system timestamp; The timestamp of the last time the data center reported its status; This is the heartbeat timeout threshold;
[0150] For the deleted data center set Calculate the micro-competitive score :
[0151] ;
[0152] in, Indicates the first The current available inventory quantity for each data center; This represents the maximum inventory value among the data centers participating in the competition. Indicates the first Real-time power cost factor for each data center; Indicates the first Real-time average load of each data center; Let represent the competitive weighting coefficients for inventory, cost, and load, respectively, satisfying ... ; This represents a normalization function that maps costs and loads of different dimensions to... interval;
[0153] Competitive score The highest-level data center as the target data center .
[0154] The target data center's data center identification management node locates the corresponding computing network resources based on the target fingerprint and extracts physical connection information; the user terminal connects to the computing network resources based on the physical connection information; including:
[0155] The data center identifier management node of the target data center accesses the real-time status table (hot data) in the resident memory, finds the idle instance (i.e., computing network resource) corresponding to the hardware constraint, and sets the status of the idle instance to Locked.
[0156] After successful locking, query the local persistent database (cold data) based on the resource number of the computing network resource to extract the physical connection information;
[0157] DCIMN encapsulates physical connection information into encrypted connection credentials and returns the connection credentials to the user. The user then uses the connection credentials to establish a data plane connection with the physical IP of the computing network resource.
[0158] A computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of a computer network resource identification management method.
[0159] A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of a computer network resource identification management method.
[0160] A second aspect of the present invention provides a computer network resource identification management system, comprising:
[0161] The global resource identifier structure construction module is configured to: construct the global resource identifier structure of computing network resources according to the computing network resource type;
[0162] The data packet encapsulation module is configured as follows: the data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; the global resource identifier is encapsulated into cold data and hot data, and cold and hot data are stored separately.
[0163] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node;
[0164] The capability summary generation module is configured to: receive the reported registration data packets from the regional identifier management node and construct a regional-level multidimensional inverted index;
[0165] Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node;
[0166] The composite state container building module is configured to: receive capability summaries from the global identifier management node, build composite state containers, create or update cardinality trees in memory, and build global-level multidimensional inverted indexes;
[0167] The dynamic capability summary construction module is configured as follows: the data center identification management node periodically scans memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node;
[0168] The regional congestion index calculation module is configured as follows: the regional identifier management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identifier management node; the global identifier management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle.
[0169] The region list selection module is configured as follows: when the user initiates a scheduling request, the global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user.
[0170] The target data center selection module is configured as follows: the user sends a resource reservation request to the region identifier management node based on the region list; the region identifier management node filters the data centers and selects the target data center.
[0171] The resource connection module is configured as follows: the data center identification management node of the target data center searches for the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
[0172] The beneficial effects of this invention are as follows:
[0173] 1. Achieved semantic normalization of heterogeneous resources: Through the "two-level nested template encoding" technology, hardware resources from different manufacturers and models are mapped to a unified binary fingerprint, solving the problem of difficulty in unified indexing of heterogeneous resources.
[0174] 2. Reduced network signaling overhead: The update mechanism of "low-level micro-aggregation, non-linear threshold triggering, and top-level digest deduplication" effectively suppresses signaling storms caused by minor fluctuations in resource status, greatly reducing the transmission pressure on the backbone network.
[0175] 3. Achieved ultra-fast resource scheduling: The global layer adopts a full-memory data structure (radix tree + bitmap) and a zero-I / O query mechanism, achieving resource discovery and macro-pruning at the second or even microsecond level.
[0176] 4. Ensures physical layer security: By adopting cold and hot storage separation, the upper-layer network only has access to the logical identifier (GRI) and capability fingerprint, while sensitive information such as physical IP resides only in the local data center, thus achieving physical layer security concealment.
[0177] 5. Solved the scheduling pain point of "having resources but no capabilities": Through the micro-competitive and hard filtering mechanism at the regional layer, it ensures that the nodes participating in the scheduling not only have hardware, but also that their current load and status are indeed available. Attached Figure Description
[0178] Figure 1 This is a schematic diagram of the overall structure of the network resource identification management method of the present invention;
[0179] Figure 2 This is a flowchart of the network resource identification management method of the present invention;
[0180] Figure 3 This is a flowchart of the scheduling process for the network resource identifier of the present invention. Detailed Implementation
[0181] The present invention will be further described below with reference to the embodiments and accompanying drawings, but is not limited thereto.
[0182] Example 1
[0183] Terminology Explanation:
[0184] 1. Computing network resources: refers to nodes or devices that can provide computing, storage or network services, including cloud servers, GPU nodes, edge computing units, etc.
[0185] 2. Identifier: Encoded information used to uniquely identify computing network resources. It has a hierarchical structure, including area number, data center number, and resource number.
[0186] 3. Out-of-band Management Interface: This refers to a dedicated management and monitoring channel independent of the main data channel of the computing network resources (in-band network) and the operating system. It connects to the underlying management controller (such as the BMC) of the device via a dedicated physical network port or logical channel, allowing management nodes to directly read hardware asset information (such as FRU information), monitor physical status (such as temperature and power consumption), and perform power control even when the device operating system is not running, malfunctioning, in hibernation, or when the network is interrupted. In this invention, it is the core channel for DCIMN to achieve "agentless" resource access and static fingerprint collection, covering standard protocols such as IPMI, Redfish, and SNMP, or proprietary management protocols.
[0187] 4. Host Agent: A lightweight resident program deployed at the operating system level of computing resources, used to interact with hardware drivers or the system kernel. In this invention, it serves as a supplement or alternative to IPMI, used to collect high-level operating system status (such as real-time load and video memory utilization) and execute instructions from the management node.
[0188] 5. Base62: An encoding method consisting of 62 characters: digits [0-9], lowercase letters [az], and uppercase letters [AZ]. Compared to binary or decimal, it significantly shortens data length; compared to Base64, it does not contain special symbols (such as +, / ), offering better URL transmission compatibility. This invention utilizes it to compress long integer fingerprints into compact string suffixes for network transmission.
[0189] 6. Roaring Bitmap: A high-efficiency compressed bitmap data structure that dynamically optimizes storage space through hybrid container technology (Array, Bitmap, Run), supporting extremely high-performance bitwise logical operations (such as intersection and union) while maintaining a high compression ratio.
[0190] 7. Radix Tree: A compressed trie in-memory data structure that allows values to be stored as key-value pairs, specifically designed for efficient storage of long integer indexes. It is pre-initialized when the GIMN system starts.
[0191] 8. Inverted Index: An inverted index is an indexing method used to store a mapping of the location of a word within a document or a set of documents in a full-text search. It is a commonly used data structure in retrieval systems. Through an inverted index, one can quickly locate the list of documents containing a word, as well as the word's position within the documents, word frequency, and other information.
[0192] A method for managing network resource identifiers, such as Figure 1 and Figure 2As shown, this includes: constructing a global resource identifier structure for computing network resources based on the type of computing network resources;
[0193] A hierarchical management architecture is constructed, including data center identifier management nodes, regional identifier management nodes, and global identifier management nodes. When new computing network resources are connected, they are registered. Simultaneously, memory data is periodically scanned to dynamically update computing network resources, including:
[0194] Step 1: The data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; the global resource identifier is encapsulated into cold data and hot data, and stored separately for cold and hot data.
[0195] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node;
[0196] Step 2: The regional identifier management node receives the reported registration data packet and constructs a regional-level multidimensional inverted index;
[0197] Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node;
[0198] Step 3: The global identifier management node receives the capability summary, constructs a composite state container, creates or updates the radix tree in memory, and constructs a global multidimensional inverted index;
[0199] Step 4: The data center identification management node periodically scans the memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node;
[0200] Step 5: The regional identification management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identification management node. The global identification management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle.
[0201] When a user initiates a scheduling request, a connection is established with the target resource according to the scheduling policy, including:
[0202] Step S1: The user initiates a scheduling request. The global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user.
[0203] Step S2: The user sends a resource reservation request to the region identifier management node based on the region list. The region identifier management node filters the data centers and selects the target data center.
[0204] Step S3: The data center identifier management node of the target data center finds the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
[0205] Example 2
[0206] The difference between the network resource identification management method described in Example 1 and the following is:
[0207] Based on the type of computing network resources, a global resource identifier structure for computing network resources is constructed; including:
[0208] The global resource identifier structure of computing network resources includes the computing network node layer, the data center cluster layer, and the resource instance layer, as shown below:
[0209] GRI = N / C / R;
[0210] Wherein, GRI represents Global Resource Identifier, N represents the computing network node layer, used for wide-area positioning; C represents the data center cluster layer, used for local aggregation; R represents the resource instance layer, used for micro-feature description; and / represents the hierarchy separator (which can be mapped to a specific bit or separator in specific encoding).
[0211] The computing network node layer is used to represent the location and organizational affiliation information of computing network resources. It adopts a hierarchical structure, including top-level nodes, regional nodes, and data center nodes, represented as follows:
[0212] N = Top.Region.DC;
[0213] Among them, Top represents the top-level node, indicating the sovereign domain or national-level root node of the computing network resource, generally using a two-letter code according to ISO standards, such as SDSW representing the Shandong Computing Network; Region represents the regional node, indicating the operating institution, research organization, or first-level administrative region code to which the computing network resource belongs; DC represents the data center node, indicating the specific data center under each regional node, and the code can include a city prefix and data center serial number, such as JN-DC01 representing Jinan No. 01 Data Center; by combining the above semantic fields, precise positioning can be achieved from the top-level or national level, to the regional level, and then to the data center level; Example of combination: CN.SDSW.JN-DC01 represents Jinan No. 01 Data Center (JN-DC01) located in China (CN) Shandong Computing Network (SDSW).
[0214] The data center cluster layer describes the logical or physical partition relationships within the data center, supporting flexible field combinations, and is represented as follows:
[0215] C= ClusterID⊕PoolID⊕ZoneID⊕...;
[0216] Wherein, ClusterID is the cluster number, representing the basic cluster unit within the data center (such as a Kubernetes cluster); PoolID is the resource pool number, representing a set within the cluster divided according to business attributes, such as pool1 (normal pool), CPU-pool (computing pool), and GPU-pool (heterogeneous pool); ZoneID is the availability zone number, describing physically isolated availability areas (such as rack groups or power supply zones); ⊕ indicates field concatenation or default; … indicates extensible fields; Example of combination: Cluster01.pool1 represents the first resource pool under the first cluster; it implements fine-grained partitioning and addressing within the data center;
[0217] The resource instance layer identifies a specific instance and carries a static hardware fingerprint, including resource number, resource type, and static attribute fields, represented as:
[0218] R=ResourceID&Type&StaticAttributes;
[0219] Among them, ResourceID represents the resource number, used to distinguish different instances in the cluster, resource pool, and availability zone, ensuring the uniqueness of the resource identifier. It enables fine-grained differentiation within the cluster-level resource pool, facilitating task scheduling and management. StaticAttributes represents static attribute fields, i.e., capability fingerprints, which describe the specific hardware or functional attribute characteristics of the resource, such as device type, model, video memory capacity, number of cores, etc. To ensure the stability of the identifier, only the inherent "specification attributes" of the hardware are included here, excluding dynamic attributes that change in real time, such as "load / utilization". Type represents the resource type, including the main resource class and the corresponding resource subclass.
[0220] The main resource class represents the main category of resources, including compute resources, storage resources, and network resources; resource subclasses (or subtypes) represent the more specific types or uses of the main resource class.
[0221] If the main resource class is compute resource, then the resource subclasses of compute resource include Intelligent Computing Resource (ICR) (primarily GPU / NPU computing power, suitable for AI training, deep learning inference, and graphics rendering; e.g., nodes equipped with NVIDIA A100 / H800), General Computing Resource (GCR) (primarily CPU computing power, suitable for logic-intensive tasks such as web services and databases; e.g., Intel Xeon servers), and Supercomputing Resource (HCR) (emphasizing double-precision floating-point operation capabilities and low-latency interconnects, suitable for weather forecasting and molecular dynamics simulation; e.g., computing units based on domestic Shenwei or E-class supercomputers).
[0222] If the main resource class is storage resource, then the resource subclasses of storage resource include block storage BLS (providing raw disk mapping, high performance; e.g., iSCSI, AWS EBS), object storage OBS (suitable for massive unstructured data; e.g., S3, MinIO), distributed file storage DFS (shared file system; e.g., CephFS, GlusterFS), and cache storage CAS (extremely high performance memory-level storage; e.g., Redis cluster nodes).
[0223] If the main resource class is network resource, then the resource subclasses of network resource include Virtual Network Link (VNL) (logical channel of the Overlay layer; e.g., VXLAN tunnel), Physical Data Link (PDL) (underlying fiber optic or leased line), Edge Gateway (EDG) (device responsible for edge access and protocol conversion), and Internet Network (INT) (backbone transmission network resources across data centers).
[0224] The StaticAttributes field includes computational fingerprints, storage fingerprints, and network fingerprints;
[0225] If the main resource class is a computing resource, the static attribute field is the fingerprint of the computing class; if the main resource class is a storage resource, the static attribute field is the fingerprint of the storage class; if the main resource class is a network resource, the static attribute field is the fingerprint of the network class.
[0226] Computational fingerprints include the specifications and performance of computing resources, such as CPU architecture type (x86 / ARM), model (e.g., A100), number of cores, clock speed, video memory capacity, framework support (CUDA / ROCm), GPU manufacturer, number of GPUs, memory capacity, and bandwidth; storage fingerprints include the storage configuration of storage resources, such as media type (SSD / HDD), interface protocol (NVMe / SATA), total capacity, RAID level, and mounting protocol; network fingerprints include the network configuration of network resources, such as link type (IB / RoCE / Ethernet), maximum bandwidth capacity, latency, supported QoS policies, security isolation capabilities, and topology (Fat-Tree).
[0227] For example: Computational fingerprints include: [General computing resources] CPU model, number of cores, clock speed, architecture type (e.g., x86, ARM, RISC-V); [Intelligent computing resources] GPU model, GPU manufacturer, number of GPUs, total video memory capacity, supported frameworks (CUDA, ROCm); memory capacity, bandwidth;
[0228] Function: Provides resolvable attribute information for resources, supporting task scheduling, performance evaluation, and cross-center resource management;
[0229] Storage Attributes: Storage media type (SSD, HDD, NVMe); capacity, IOPS, bandwidth; RAID level or distributed redundancy mechanism; mounting protocol (NFS, CephFS, Lustre, etc.).
[0230] Network Attributes: Bandwidth, latency, link type (Ethernet, InfiniBand, RoCE); network topology (star, Fat-Tree, Clos); supported QoS policies, security isolation capabilities, etc.
[0231] Complete encoding example and analysis: Encoded string: 001&compute-ICR&GPU-NVIDIA-A100-8-640G;
[0232] Semantic analysis:
[0233] 001: Resource ID;
[0234] compute-ICR: The main class is computing resources, and the subclass is intelligent computing resources;
[0235] GPU-NVIDIA-A100-8-640G: This resource instance has 8 A100 GPUs, manufactured by NVIDIA, with a total video memory of 640G;
[0236] The data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; including:
[0237] The Data Center Identifier Management Node (DCIMN) is deployed within a data center or computing power service cluster and is responsible for the generation and registration of identifiers for local resource instances (such as compute nodes, storage nodes, network links, etc.).
[0238] When new computing network resources (such as specific device entities of computing, storage, and network resources) are connected to the data center network (the local area network (LAN / IB network) inside the computer room, through which devices connect to the management node), the Data Center Identifier Management Node (DCIMN) triggers a hardware scan to collect the hardware attributes of the computing network resources through out-of-band management interfaces (e.g., for computing resources, this could be IPMI, / proc / cpuinfo, nvidia-smi; for storage resources, this could be SMART commands, RAID controller interfaces, CSI drivers; for network resources, this could be SNMP protocols, SDN controllers (OpenFlow), LLDP) or a host agent. (Unprocessed strings captured directly via command line or interface; for example: executing ipmitool fru print or reading hardware attributes returned by / proc / cpuinfo: Product Name: ProLiant DL380 Gen10, Vendor: NVIDIA Corporation, VRAM: 81920 MB); Identify the main and subclasses of resources in hardware attributes (by matching the scanned hardware attributes; for example, if the keywords "NVIDIA" or "Tesla" are found, it is automatically determined as "Intelligent Computing Resource (ICR)"; if there is only a CPU and no accelerator card, it is determined as "General Computing Resource (GCR)");
[0239] The hierarchical ontology mapping table is constructed primarily to address the inconsistency in hardware descriptions across different manufacturers and devices. It unifies the descriptions of the same hardware from different manufacturers (the hierarchical ontology mapping table is a pre-built dictionary used for synonym normalization; for example, mapping NVIDIA, Nvidia Corp, and NV to the standard key value NVIDIA), and maps hardware attributes to a standard attribute set. As shown below:
[0240] ;
[0241] in, Indicates the subclass of the resource obtained; This is a mapping function, which retrieves the corresponding static attribute field (capability fingerprint) from the hardware attributes and maps it to a standard attribute set (a lookup and replace function takes the hardware attribute as input, looks up the hierarchical ontology mapping table, and outputs standardized key-value pairs, such as normalizing the collected Product:A100-SXM4 into a standard attribute set). );
[0242] The resource type (main resource class and subclass) and standard attribute set are converted into a set integer code (e.g., a global code table is set, similar to the ASCII code table, defining NVIDIA = 0x01, AMD = 0x02, A100 = 0x0A, etc.), and a fingerprint integer is generated based on the bit field structure. As shown below:
[0243] ;
[0244] in, This represents the integer code of the main resource class, used to distinguish between the three main categories: computing, storage, and network. It has a length of 4 bytes, such as 0x1 for computing resources, 0x2 for storage resources, and 0x3 for network resources. Integer codes representing resource subclasses, used to distinguish specific device types (such as GPUs, SSDs, and switches), with a length of 4 bits, such as 0x1=ICR (Intelligent Computing), 0x2=GCR (General Purpose), 0x1=Block, 0x2=Object, 0x3=File. The integer code representing the dynamic attribute load, i.e. the standard attribute set, is 56 bits long. For example, 0x01 = NVIDIA, 0x0A0 = A100, and 0x050 = Volta for 80GB of video memory.
[0245] Encoding example: NVIDIA A100 (80G);
[0246] 0x1 (Compute) | 0x1 (ICR) | 0x01 (NV) | 0x0A0 (A100) | 0x050 (80G)...;
[0247] Hexadecimal fingerprint: 0x11010A0050...;
[0248] right Perform Base62 encoding to convert it into a string consisting of [0-9, az, AZ] for network transmission and generate a fingerprint suffix. As shown below:
[0249] ;
[0250] in, This represents the Base62 encoding function;
[0251] Obtain the location of the data center accessing the computing network resource (in the context of computing power networks, the physical domain of the computing network resource can be a cloud data center, edge computing node, or intelligent computing cluster) and the physical topology location of the computing network resource, along with the fingerprint suffix. The Global Resource Identifier (GRI) is generated by combining the following:
[0252] ;
[0253] in, The string concatenation operator can be used. Used as a level separator for string concatenation; The letter code representing the data center accessed, i.e., the network node layer N (such as CN.SDSW.JN-DC01). The letter code representing the physical topology location, i.e., the data center cluster layer C (e.g., Cluster01.Pool01); ID represents the resource number. Indicates the resource type; for example: CN.SD.DC01 / Cluster01.Pool01 / 001&C-ICR&7x9A2z.
[0254] Global resource identifiers are encapsulated into cold and hot data, and stored separately for both; including:
[0255] The GRI is used as the logical primary key to encapsulate physical connection information and full static metadata, and is written as cold data to the local persistent database (data is stored on the non-volatile storage medium of the local device); it serves as the "sole source of truth" for the data center resources, used for asset inventory, identity verification, and state recovery after system restart;
[0256] Physical connection information includes access address (IP), service port number (the service port number that the resource management agent listens on, such as 8080), and authentication token (the key to access the resource and prevent unauthorized access).
[0257] For example: Access address (IP):
[0258] For computing resources, this refers to the out-of-band management IP (BMC IP) or the internal network IP that the host proxy is listening on;
[0259] For storage resources, this refers to the storage gateway IP or the service IP of the controller.
[0260] For network resources, this refers to the device management IP or the northbound interface IP of the SDN controller;
[0261] Service Port:
[0262] For computing resources, this refers to the listening port (e.g., 8080) or SSH port (22) of the resource management agent.
[0263] For storage resources, this refers to the data transmission protocol port (such as iSCSI Target 3260, S3 Endpoint443).
[0264] For network resources, this refers to network management protocol ports (such as SNMP 161, NETCONF 830).
[0265] Authentication token:
[0266] This refers to the authentication information used to access resources through the aforementioned IP and port, including but not limited to: AccessKey, Bearer Token, CHAP Secret, or SNMPCommunity String.
[0267] Full static metadata includes extended attributes of computing network resources that are not encoded into fingerprint integers, such as device serial number, firmware version, physical rack slot, etc.
[0268] The encapsulation mapping relationship is as follows:
[0269] ;
[0270] in, This represents the encapsulated cold data. Indicate the access address (reporting is strictly prohibited); This represents the full static metadata (including extended information such as serial number); The data is written to a local persistent database. It should be noted that the cold data refers to data that changes relatively infrequently. A network topology and configuration event listener is deployed within the Data Center Identification Management Node (DCIMN). When network resources undergo reconfiguration (such as DHCP reassignment of IP addresses), service port changes, or system restarts that alter physical connection information, the event listener captures the change event and triggers a synchronous update of the cold data, overwriting the new access address or port to the local persistent database to ensure the validity of physical connection credentials.
[0271] Initialize a dynamic state slot in local memory (a fixed-size structure space pre-allocated in RAM for high-frequency read and write) to store dynamic information collected in real time by the background monitoring thread;
[0272] If the resource type in GRI is a computing resource (such as a GPU server), then the dynamic information includes load (computing power utilization (such as GPU / CPU utilization, video memory / memory utilization), temperature (such as chip temperature) and energy consumption (such as real-time energy consumption of the whole machine).
[0273] If the resource type in GRI is a storage resource (such as a distributed storage node), the dynamic information includes IOPS utilization (number of reads and writes per second), real-time read and write throughput, remaining storage pool capacity, and I / O latency.
[0274] If the resource type in the GRI is a network resource (such as a switch / gateway), the dynamic information includes port bandwidth utilization, packet loss rate, link round-trip time (RTT), and buffer utilization.
[0275] The GRI and dynamic information are encapsulated into hot data, as shown below:
[0276] ;
[0277] in, This indicates that hot data refers to dynamic hot data state records residing in memory. This indicates the current running status of the computing network resources. The initial state is 0 / Init. The computing network resources are read in real time through the background hardware monitor thread (read every second via IPMI / Agent), and the State is updated accordingly. This indicates the initial state; `avail` means online and ready, and can be changed to `Idle`, `Busy`, `Error`, etc. later. Represents dynamic information. This indicates the last update timestamp of the dynamic information (initially the current system time). ); to heat data The information is stored in dynamic state slots; dynamic information is updated in memory and used to calculate aggregate vectors without performing high-frequency disk write operations, thus ensuring the high throughput performance of the system; the above physical connection information and full static metadata reside only locally and are not reported to regional or global nodes with the registration package, ensuring that the upper-layer network only has logical identifiers and core capability fingerprints, thus achieving physical layer security concealment.
[0278] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node; including:
[0279] From fingerprint integer Extracting feature codes , Represents the m-th attribute in the dynamic attribute load (integer code of the standard attribute set);
[0280] Feature code Using GRIs as keys and GRIs as values, an inverted index is constructed (a container that stores a set of resource identifiers with the same characteristic value, like an index page of a dictionary; if a bucket is labeled "NVIDIA (0x01)", then all GRIs of resources using NVIDIA chips will be put into this bucket), storing the GRI string with the m-th attribute characteristic, as shown below:
[0281] ;
[0282] in, express The inverted index; (e.g., if NVIDIA (0x01) is required and the video memory > 80G (0x05), simply...) and Performing a bitwise AND operation enables millisecond-level filtering of multiple attribute conditions (where i and j represent the i-th and j-th attributes, respectively).
[0283] Encapsulate all newly added global resource identifiers into a registration data packet, as shown below:
[0284] ;
[0285] in, This indicates the registration data packet. Represents a unique identifier for the data center. This represents the nth global resource identifier; the Data Center Identifier Management Node (DCIMN) reports the registration data packet to the Regional Identifier Management Node.
[0286] The specific implementation process of step 2 includes:
[0287] The Region Identifier Management Node (RIMN) (responsible for managing the Data Center Identifier Management Nodes within its region) receives registration data packets and identifies the string concatenation characters and delimiters for each GRI, extracting the fingerprint suffix. (i.e., the fingerprint integer converted from Base62); to utilize the CPU's bitwise operation capabilities to accelerate index construction, the fingerprint suffix in Base62 string form is... The formula for restoring the binary fingerprint integer to its computational state is as follows:
[0288] ;
[0289] in, Represents the integer value of the restored fingerprint. This refers to the Base62 decoding function;
[0290] RIMN uses the same "general dimensional feature extraction" logic as DCIMN to construct a regional multidimensional inverted index;
[0291] From the restored fingerprint integer Extracting feature codes , Represents fingerprint integer The k-th attribute of the dynamic attribute load;
[0292] Use a hash function to convert GRI into a numeric ID. ), and assemble the numeric IDs into a roaring bitmap; with feature codes Using the key and the roar bitmap as the value, construct an inverted index as follows:
[0293] ;
[0294] in, Indicates the first A region-level multidimensional inverted index for each attribute (such as the manufacturer dimension). A numeric ID representing the GRI. Indicates obtaining feature codes The corresponding roar bitmap container pointer; if the bucket for this feature does not already exist, the function will automatically create a new empty bitmap container; even if the physical properties of resources of different subclasses (such as GPU and SSD) are different, through the abstract "common dimension" extraction, RIMN can manage heterogeneous resources of the entire region in the same index structure, realizing the normalization of the index structure;
[0295] Obtain the fingerprint suffix for each GRI, remove duplicates, and generate a capability summary, as shown below:
[0296] ;
[0297] in, Represents a summary of capabilities. A unique numerical identifier representing the logical or administrative region governed by a regional identifier management node (such as "East China Regional Node"). This represents the suffix of the Mth fingerprint. This indicates a deduplication operation (keeping only one of the duplicate fingerprint suffixes); the capability summary is reported to the global identifier management node;
[0298] Technical effects:
[0299] Regardless of whether one or 10,000 servers of the same model (with identical fingerprints) are added in the region, the summary reported to the global network contains only one fingerprint entry, which greatly reduces the signaling overhead of the backbone network.
[0300] The global identifier management node receives capability summaries, constructs a composite state container, creates or updates a radix tree in memory, and builds a global-level multidimensional inverted index; including:
[0301] The Global Identifier Management Node (GIMN) restores each fingerprint suffix in the capability digest to a fingerprint integer. ;
[0302] fingerprint integer As a binary sequence, according to the step size of the radix tree (e.g., every 8 bits), it is... Divide into k path index segments Check if the child nodes corresponding to each path index segment exist;
[0303] If we are traversing the intermediate level, i.e., the first... To the When the path index segment is layered, if the child node pointer corresponding to it is null, a new branch node is allocated in the heap memory (a dynamic memory area that allows the program to request a specific size of memory space on demand at runtime). The data structure of the branch node is configured to include only an array of pointers pointing to the next level child nodes, without pre-allocating memory space for storing the data payload. The memory address of the branch node is linked to the corresponding slot of the current parent node, thereby extending the search path.
[0304] If the traversal reaches the last level, i.e., the... If the corresponding node is not found during the layering process, a new index node (also known as a leaf node) is allocated in the heap memory. The data structure of the index node is configured to include a dedicated value pointer field and mount a composite state container.
[0305] Composite state container This represents a structure instance encapsulating multiple data structures defined in physical memory, with the memory mapping relationship defined as follows: Composite state container It includes two member variables: the regional distribution bitmap and the macro heatmap slot;
[0306] In this context, the region distribution bitmap represents calling the constructor of a compressed bitmap algorithm library (such as RoaringBitmap), instantiating a compressed bitmap object with an initial empty state, and assigning the reference handle of the compressed bitmap object (such as a memory pointer, which is a logical credential used to uniquely identify and locate a specific data object in memory) to the first member variable of the composite state container. The regional distribution bitmap is used to record the set of regional identifiers that own this type of resource across the entire network with extremely low memory overhead.
[0307] The macro heatmap slot represents an instantiated array or hash map that supports dynamic resizing. The root address of the array or hash map is assigned to the container's second member variable. );
[0308] Assign values to two member variables of the composite state container, where the macroscopic heatmap slots are identified by region. As the key, it stores the real-time congestion status and static cost of each region (the logical or administrative region under the jurisdiction of the region identifier management node), as shown below:
[0309] ;
[0310] in, express The macroscopic heatmap slots, where RCI represents the regional congestion index, are initially set to 0. This represents static costs (determined by hardware depreciation rates, fixed asset amortization, or base electricity prices for each region; e.g., 0.8 for the eastern data center and 0.4 for the western hub); it serves as the benchmark for calculating "cost-effectiveness" and typically remains unchanged for a short period after registration; it is written once when the node is created and remains largely unchanged thereafter (subject to monthly / grade-specific changes). Indicates the last update time;
[0311] The regional distribution bitmap is shown below:
[0312] ;
[0313] in, This represents a bitmap showing the regional distribution. This indicates setting the specified index position ( The bit of ) indicates (set to 1, i.e., True);
[0314] If the child node of the radix tree exists, the corresponding composite state container is retrieved, and the data of the two member variables is checked. If the data is empty, the same assignment operation is performed.
[0315] In fingerprint integer Extracting feature codes (Such as manufacturer, memory size, etc.), using feature codes Using the RegionID (the identifier of the region to which the capability summary belongs) as the key, a global multidimensional inverted index is created. The index values are stored using a Roaring Bitmap, recording those with characteristic codes. The set of all region IDs;
[0316] Technical effects:
[0317] The global node only maintains a macroscopic mapping relationship of "which type of hardware features are distributed in which regions" and does not store specific GRIs or IPs; the query process is based entirely on integer comparisons and bitmap operations in memory, achieving extremely fast parsing with zero disk I / O.
[0318] The specific implementation process of step 4 includes:
[0319] DCIMN periodicity (e.g.) Scanning real-time state data in memory, i.e., hot data stored in memory, and identifying the same fingerprint suffix in the global resource identifier. The network resources are grouped together to construct a dynamic capability summary, as shown below:
[0320] ;
[0321] in, Indicates fingerprint suffix Dynamic capability summary, This indicates the fingerprint suffix in the available inventory data. The corresponding running state (State) is the number of online and ready states. The total number of resource instances in the ready state (avail). This indicates that the State in the hot data is available, meaning it is online and ready (i.e., the heartbeat is normal, it is not locked, and there is no hardware failure). This represents the real-time cost factor, i.e., the unit price of computing power for the current time period (obtained by reading the real-time interface of the data center energy management system (EMS) or matching the time-of-use electricity pricing strategy table); it reflects the current electricity operating cost (such as peak-hour electricity price). High, Valley Low); Indicates the generation time; The average load, which is the weighted average of the loads within the group, is shown below:
[0322] ;
[0323] Where M represents the number of computing network resources within the group, This represents the load of the j-th computing network resource;
[0324] If the network resources are computing resources, then read the computing power utilization rate of the computing resources. and video memory / memory usage The calculated load is as follows:
[0325] ;
[0326] in, , , Weighting coefficients (set according to requirements). This represents the temperature penalty function, which applies if the current chip temperature... Less than the safe temperature threshold (e.g., 70°C), then the function The value is 0; if Then the function value grows linearly. , This is the extreme temperature threshold (e.g., 95℃); if If the function value is 1, it indicates overheating and is forced to be considered fully loaded to avoid scheduling new tasks.
[0327] If the computing network resource is a storage resource, then read the real-time IOPS utilization rate of the storage resource. Read / write throughput (BW) and storage pool capacity utilization The calculated load is as follows:
[0328] ;
[0329] in, , , Weighting coefficients (set according to requirements). This represents the number of read / write operations per second in real time, i.e., the actual number of I / O operations generated within the current sampling period. This indicates the device's maximum IOPS capability, which is the theoretical peak performance of the storage medium as measured in factory specifications or benchmark tests. This represents the real-time read / write throughput, i.e., the actual data rate transmitted within the current sampling period (unit: MB / s). This indicates the device's maximum throughput bandwidth, which is the maximum data transfer rate that the storage interface or medium can support.
[0330] If the network resource is a network resource, then read the port bandwidth utilization rate of the network resource. Real-time packet loss rate and link round-trip delay The calculated load is as follows:
[0331] ;
[0332] in, , , Weighting coefficients (set according to requirements). This represents a non-linear mapping function (sigmoid function). This represents the maximum service tolerance latency, which is the maximum acceptable network round-trip latency limit (e.g., 100ms) specified in the network service level agreement (SLA) for computing power, and is used to normalize real-time latency.
[0333] Send the dynamic capability summary to the Regional Identifier Management Node (RIMN).
[0334] The specific implementation process of step 5 includes:
[0335] RIMN (Regional Identifier Management Node) receives dynamic capability summaries Check timestamp Set the maximum silence threshold to (For example, 5 minutes), if Then the dynamic capability summary Available inventory in the system has been reduced to zero. (Retain its registration information, do not delete static indexes, only freeze dynamic status), otherwise no action will be taken; among which Indicates the current time. Indicates the generation time of the dynamic capability summary;
[0336] According to fingerprint suffix Perform classification and aggregation to calculate the Regional Congestion Index (RCI), as shown below:
[0337] ;
[0338] in, This represents the congestion index of the corresponding computing network resources within the region, with a value range of... The closer the value is to 1, the more congested the area is (unsuitable for scheduling); the closer the value is to 0, the more idle the area is. This represents the Sigmoid activation function ( This is used to nonlinearly map aggregation results of different dimensions to... Interval, normalized output; This represents the total registered capacity of computing network resources within the region. This value is determined by the RIMN based on the received static capability digest. The statistics are obtained and stored as baseline data in the local resource ledger; This represents the weighting coefficient, which is adjusted according to business strategies (e.g., training tasks place more emphasis on GPU memory inventory, while inference tasks place more emphasis on real-time load).
[0339] To suppress signaling storms, a threshold condition is set, and a threshold detection mechanism is executed, as shown below:
[0340] ;
[0341] in, This represents the currently calculated RCI index. This represents the RCI value calculated after the area identifier management node receives the dynamic capability digest in the previous round. This indicates that a threshold value (e.g., 0.05) is set.
[0342] If the threshold condition is met, that is... Then RIMN generates a macroscopic state summary. And report it to the Global Identifier Management Node (GIMN), as shown below:
[0343] ;
[0344] in, Indicates the generation time;
[0345] GIMN (Global Identifier Management Node): The top-level brain, responsible for maintaining the overall macro view of the network (radix tree + heatmap), processing global scheduling requests, and not directly interacting with physical devices;
[0346] The Global Identity Management Node (GIMN) will summarize the macroscopic state. fingerprint suffix Decode and restore to fingerprint integer Use this as the key to access the radix tree in memory and retrieve the corresponding composite state container: ;
[0347] In the obtained In the middle, according to the macroscopic state summary It directly locates the corresponding macroscopic heat map slot. );
[0348] Update the macroscopic heatmap slots and add a macroscopic state summary. In Write it into the macro heatmap slot: Summary of macroscopic state The generation time is updated in the macro heatmap slot: Through the above process, global nodes can update the status of specific regions and resources in microseconds without performing any disk I / O operations, ensuring the real-time performance and consistency of the network-wide scheduling view.
[0349] like Figure 3 As shown, the specific implementation process of step S1 includes:
[0350] The user initiates a scheduling request. This includes hardware constraints and policy constraints;
[0351] Among them, hardware constraints The physical specifications of the resources to be used, such as "Manufacturer=NVIDIA", "Video Memory", etc. 80G”;
[0352] Policy constraints The target direction for optimization is the weight vector generated based on the business scenario and requirements. , For performance weighting, As a cost weight, As the delay weight, and satisfying ;
[0353] The global identifier management node uses a global code table to define hardware constraints. Feature code mapped to binary For example, manufacturer's unique identifier: (Corresponding to NVIDIA); Memory signature: (Assuming that code 0x28 in the code table corresponds to the 40GB tier);
[0354] If the resource specifications defined in the hardware constraints are specific resources (such as specifying a particular server configuration), then an exact lookup is performed, which includes combining the signatures into a complete integer (concatenation or bitwise OR) to obtain the target fingerprint. , target fingerprint As a key, it accesses the radix tree in memory. If the corresponding node exists, it directly returns the corresponding composite state container. Regional distribution bitmap The location with a bitmap value of 1 indicates the region that meets the hardware constraints;
[0355] If the resource specifications specified in the hardware constraints are fuzzy matching resources (such as "video memory ≥ 40G") or only specify some attributes (such as "as long as it is an NVIDIA card, model is not limited"), then the feature code is used as the key to extract the set of regions in the global multidimensional inverted index and perform the intersection operation to obtain the regions that meet the hardware constraints.
[0356] For example, "Video memory ≥ 40G" is broken down into multiple features that meet the condition, such as "40G", "80G", and "A100". Bitmap_NVIDIA = Index[0x01] (containing all regions with NVIDIA cards), Bitmap_40G = Index[0x28], Bitmap_48G = Index[0x30], Bitmap_80G = Index[0x50];
[0357] ;
[0358] The final bitmap generated by the operation Each bit set to 1 in the array represents a preferred region (such as the Beijing node or the Inner Mongolia node); these regions are guaranteed to have at least one conforming to "NVIDIA + Resources configured with "40G";
[0359] For regions that meet hardware constraints Read the slots of the macro heat map Calculate the score from the data. :
[0360] ;
[0361] in, This is the regional congestion index (the smaller the value, the better). For regional static costs; Network distance; The lowest benchmark cost across the entire network; Indicates the weighting coefficient;
[0362] Extracted regions by Sort in descending order and select the first few. One (e.g.) ) region as a preferred region list This is then returned to the user.
[0363] The specific implementation process of step S2 includes:
[0364] User terminal according to The region initiates a resource reservation request, and the corresponding region's management node receives the request and deletes the data center that meets any of the following conditions (each region's management node manages multiple data centers): This means there are currently no available resource instances. (Overheating under load); (Heartbeat timeout);
[0365] in, This represents the average load of the data center. The preset safe load threshold (e.g., 95%) indicates that the node is overheated and cannot be scheduled.
[0366] The current system timestamp; The timestamp of the last time the data center reported its status; A heartbeat timeout threshold (e.g., 30 seconds) is used to determine whether a node has lost connection.
[0367] For the deleted data center set Calculate the micro-competitive score :
[0368] ;
[0369] in, Indicates the first The current available inventory quantity for each data center; This represents the maximum inventory value among the data centers participating in the competition, used for normalization. Indicates the first Real-time power cost factor for each data center; Indicates the first Real-time average load of each data center; Let represent the competitive weighting coefficients for inventory, cost, and load, respectively, satisfying ... ; This represents a normalization function that maps costs and loads of different dimensions to... interval;
[0370] Competitive score The highest-level data center as the target data center .
[0371] The specific implementation process of step S3 includes:
[0372] The data center identifier management node of the target data center accesses the real-time status table (hot data) in the resident memory, finds the idle instance (i.e., computing network resource) corresponding to the hardware constraint, and sets the status of the idle instance to Locked (using the CAS (Compare-And-Swap) instruction to instantly change the status of the instance from Idle to Locked).
[0373] After successful locking, query the local persistent database (cold data) based on the resource number of the computing network resource to extract the physical connection information;
[0374] DCIMN encapsulates physical connection information into encrypted connection credentials (such as AES-256 (symmetric encryption) or RSA (asymmetric encryption)) and returns the connection credentials to the user. The user uses the connection credentials to establish a data plane connection (such as SSH or RDMA channel) with the physical IP of the computing network resource.
[0375] Cross-domain scheduling based on fuzzy query: A user in Shanghai (East China region) initiated an AI inference task request, proposing the following requirements:
[0376] Hard Constraints: The GPU must be from NVIDIA, and the video memory capacity must meet certain requirements. 40GB (used for loading large model parameters).
[0377] Soft Constraints: With a limited budget, a "cost-first" strategy is implemented.
[0378] Scheduling Intent Recognition and Encoding: The Global Identifier Management Node (GIMN) receives requests, parses them, and generates target fingerprints and weight vectors.
[0379] Feature extraction:
[0380] Manufacturer's unique identifier: (Corresponding to NVIDIA);
[0381] Video memory signature: (Assuming that code 0x28 in the code table corresponds to the 40GB level).
[0382] Strategy weighting:
[0383] Based on the "cost-first" strategy, a normalized weight vector is generated. :
[0384]
[0385] (Note: Assigning costs) The highest weight is 0.8.
[0386] Global zero-I / O pre-screening: GIMN performs "macro-pruning" of the entire network in memory.
[0387] Bitmap operations: Perform intersection and union operations on the inverted index to quickly locate regions containing resources that meet the specifications.
[0388]
[0389] Results show that the candidate regions that meet the hardware requirements are Region_BJ (Beijing node) and Region_NM (Inner Mongolia node).
[0390] Macro rating : Read the slot data from the macroscopic heat map for calculation:
[0391] Region_BJ (Beijing): Congestion Index (Quite busy), static costs Yuan / degree (relatively high).
[0392] ;
[0393] Region_NM (Inner Mongolia): Congestion Index (Idle), static cost Yuan / degree (lower).
[0394] ;
[0395] Decision: The Inner Mongolia node scored the highest, and the system returned it as the Top-1 preferred region to the client.
[0396] Regional micro-level competition: The client initiates a probe to Region_NM (Inner Mongolia Regional Identifier Management Node), and RIMN queries the local dynamic view:
[0397] Local view scan: Two companies registered within the Inner Mongolia region meet the "NVIDIA+" criteria. Data centers with 40G capacity:
[0398] DC1: Equipped with an NVIDIA A100 (80G). Status check display. (Inventory is 0, temporarily out of stock).
[0399] DC2: Equipped with an NVIDIA A40 (48G). Status check display. (Sufficient inventory) and low load.
[0400] Circuit breaker filtering: DC1 meets the "inventory depletion" requirement. Conditions such as "( )" are directly eliminated and do not participate in the competition.
[0401] The winner is DC2, which becomes the only available candidate (or scores the highest among multiple available DCs) and is selected as the target data center.
[0402] Physical Mapping and Connection Delivery: Atomic Locking: The management node (DCIMN) of DC2 marks an idle NVIDIA A40 instance as Locked in memory.
[0403] Extract connection information: DCIMN queries local cold data to obtain the physical IP address 10.5.1.100 and SSH port number of the instance.
[0404] Establish connection: The user terminal obtains the encrypted credentials and connects directly to the A40 resource in Inner Mongolia DC2 through the underlying network to begin executing the inference task.
[0405] Example 3
[0406] A computer device includes a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the computer network resource identification management method described in Embodiment 1 or 2.
[0407] Example 4
[0408] A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the computer network resource identification management method described in Embodiment 1 or 2.
[0409] Example 5
[0410] A network resource identification management system, comprising:
[0411] The global resource identifier structure construction module is configured to: construct the global resource identifier structure of computing network resources according to the computing network resource type;
[0412] The data packet encapsulation module is configured as follows: the data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; the global resource identifier is encapsulated into cold data and hot data, and cold and hot data are stored separately.
[0413] Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node;
[0414] The capability summary generation module is configured to: receive the reported registration data packets from the regional identifier management node and construct a regional-level multidimensional inverted index;
[0415] Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node;
[0416] The composite state container building module is configured to: receive capability summaries from the global identifier management node, build composite state containers, create or update cardinality trees in memory, and build global-level multidimensional inverted indexes;
[0417] The dynamic capability summary construction module is configured as follows: the data center identification management node periodically scans memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node;
[0418] The regional congestion index calculation module is configured as follows: the regional identifier management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identifier management node; the global identifier management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle.
[0419] The region list selection module is configured as follows: when the user initiates a scheduling request, the global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user.
[0420] The target data center selection module is configured as follows: the user sends a resource reservation request to the region identifier management node based on the region list; the region identifier management node filters the data centers and selects the target data center.
[0421] The resource connection module is configured as follows: the data center identification management node of the target data center searches for the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
Claims
1. A method for managing network resource identifiers, characterized in that, include: Based on the type of computing network resources, construct a global resource identifier structure for the computing network resources; A hierarchical management architecture is constructed, including data center identifier management nodes, regional identifier management nodes, and global identifier management nodes. When new computing network resources are connected, they are registered. Simultaneously, memory data is periodically scanned to dynamically update computing network resources, including: Step 1: The data center identification management node collects the hardware attributes of computing network resources and maps them to fingerprint suffixes to generate a global resource identifier; the global resource identifier is encapsulated into cold data and hot data, and stored separately for cold and hot data. Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node; Step 2: The regional identifier management node receives the reported registration data packet and constructs a regional-level multidimensional inverted index; Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node; Step 3: The global identifier management node receives the capability summary, constructs a composite state container, creates or updates the radix tree in memory, and constructs a global multidimensional inverted index; Step 4: The data center identification management node periodically scans the memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node; Step 5: The regional identification management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identification management node. The global identification management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle. When a user initiates a scheduling request, a connection is established with the target resource according to the scheduling policy, including: Step S1: The user initiates a scheduling request. The global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user. Step S2: The user sends a resource reservation request to the region identifier management node based on the region list. The region identifier management node filters the data centers and selects the target data center. Step S3: The data center identifier management node of the target data center finds the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
2. The method for managing network resource identification according to claim 1, characterized in that, Based on the type of computing network resources, a global resource identifier structure for computing network resources is constructed; including: The global resource identifier structure of computing network resources includes the computing network node layer, the data center cluster layer, and the resource instance layer, as shown below: GRI = N / C / R; Wherein, GRI represents the Global Resource Identifier, N represents the Computing Network Node Layer, C represents the Data Center Cluster Layer, R represents the Resource Instance Layer, and / represents the Layer Separator; The computing network node layer adopts a hierarchical structure, including top-level nodes, regional nodes, and data center nodes, represented as follows: N = Top.Region.DC; Among them, Top is the top-level node, representing the sovereign domain or national-level root node of the computing network resource; Region is the regional node, representing the operating institution, research organization, or first-level administrative region code of the computing network resource; DC is the data center node, representing the specific data center under each regional node; The data center cluster layer describes the logical or physical partitioning relationships within the data center, represented as: C= ClusterID⊕PoolID⊕ZoneID⊕...; Where ClusterID is the cluster number, representing the basic cluster unit within the data center; PoolID is the resource pool number, representing the set divided within the cluster according to business attributes; ZoneID is the availability zone number, describing the physically isolated availability zone; ⊕ indicates field concatenation or default; … indicates an extensible field; The resource instance layer identifies a specific instance and carries a static hardware fingerprint, including resource number, resource type, and static attribute fields, represented as: R=ResourceID&Type&StaticAttributes; Among them, ResourceID represents the resource number, StaticAttributes represents the static attribute field, i.e., the capability fingerprint, which describes the specific hardware or functional attribute characteristics of the resource; Type represents the resource type, including the main resource class and the corresponding resource subclass; The main resource class represents the main category of resources, including computing resources, storage resources, and network resources; the subclasses of resources represent the more specific types or uses of the main resource class. If the main resource class is computing resource, then the resource subclasses of computing resource include intelligent computing resource (ICR), general computing resource (GCR), and supercomputing resource (HCR). If the main resource class is storage resource, then the resource subclasses of storage resource include block storage BLS, object storage OBS, distributed file storage DFS, and cache storage CAS. If the main resource class is network resource, then the resource subclasses of network resource include Virtual Network Link (VNL), Physical Data Link (PDL), Edge Gateway (EDG), and Internet Network (INT). The StaticAttributes field includes computational fingerprints, storage fingerprints, and network fingerprints; If the main resource class is a computing resource, the static attribute field is the fingerprint of the computing class; if the main resource class is a storage resource, the static attribute field is the fingerprint of the storage class; if the main resource class is a network resource, the static attribute field is the fingerprint of the network class. Computational fingerprints include the specifications and performance of computing resources; storage fingerprints include the storage configuration of storage resources; and network fingerprints include the network configuration of network resources.
3. The method for managing network resource identification according to claim 2, characterized in that, The specific implementation process of step 1 includes: When new computing network resources are connected to the data center network, the Data Center Identification Management Node (DCIMN) triggers a hardware scan through the out-of-band management interface or host agent to collect the hardware attributes of the computing network resources. Identify the main resource class and subclasses in the hardware attributes; A hierarchical ontology mapping table is constructed to unify the descriptions of the same hardware from different manufacturers and to map hardware attributes to a standard attribute set. As shown below: ; in, Indicates the subclass of the resource obtained; This is a mapping function, which retrieves the corresponding static attribute field from the hardware attributes and maps it to a standard attribute set; The resource type and standard attribute set are converted into a set integer code, and a fingerprint integer is generated based on the bit field structure. As shown below: ; in, Integer code representing the main resource class. Integer code representing resource subclass, Integer codes representing dynamic attribute loads, i.e., the standard set of attributes; right Perform Base62 encoding to convert it into a string consisting of [0-9, az, AZ], and generate a fingerprint suffix. As shown below: ; in, This represents the Base62 encoding function; Obtain the location of the data center accessing the computing network resources and the physical topology location of the computing network resources, along with the fingerprint suffix. The Global Resource Identifier (GRI) is generated by combining the following: ; in, Represents a string concatenation operator; The letter code representing the data center accessed, i.e., the network node layer N. The letter code indicates the physical topology location, i.e., the data center cluster layer C; ID represents the resource number. Indicates the resource type; Global resource identifiers are encapsulated into cold and hot data, and stored separately for both; including: Use GRI as the logical primary key, encapsulate physical connection information and full static metadata, and write them as cold data to the local persistent database. Physical connection information includes access address, service port number (Port), and authentication token (Token). Full static metadata includes network resource extension attributes that are not encoded into fingerprint integers; The encapsulation mapping relationship is as follows: ; in, This represents the encapsulated cold data. Indicates the access address; Represents full static metadata; Write to the local persistent database; Initialize a dynamic status slot in local memory to store dynamic information collected in real time by the background monitoring thread; If the resource type in GRI is a computing resource, then the dynamic information includes load, temperature, and energy consumption; If the resource type in GRI is storage resource, the dynamic information includes IOPS utilization, real-time read / write throughput, remaining storage pool capacity, and I / O latency. If the resource type in the GRI is a network resource, the dynamic information includes port bandwidth utilization, packet loss rate, link round-trip time, and buffer utilization. The GRI and dynamic information are encapsulated into hot data, as shown below: ; in, This indicates that hot data refers to dynamic hot data state records residing in memory. This indicates the current running status of the computing network resources. The initial state is 0 / Init. The state is updated in real time by reading the computing network resources through a background hardware monitoring thread. Represents dynamic information. Indicates the last update timestamp of dynamic information; hot data Stored in the dynamic state slot; Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node; including: From fingerprint integer Extracting feature codes , This represents the m-th attribute in the dynamic attribute load; Feature code Using GRI as the key and GRI as the value, an inverted index is constructed to store the GRI string possessing the m-th attribute feature, as shown below: ; in, express Inverted index; Encapsulate all newly added global resource identifiers into a registration data packet, as shown below: ; in, This indicates the registration data packet. Represents a unique identifier for the data center. This represents the nth global resource identifier; the Data Center Identifier Management Node (DCIMN) reports the registration data packet to the Regional Identifier Management Node.
4. The method for managing network resource identification according to claim 3, characterized in that, The regional identifier management node receives the reported registration data packets, constructs a regional-level multidimensional inverted index, and generates a capability summary based on the fingerprint suffix in the registration data packets, which is then reported to the global identifier management node. The global identifier management node receives capability summaries, constructs a composite state container, creates or updates a radix tree in memory, and builds a global-level multidimensional inverted index, including: The Region Identifier Management Node (RIMN) receives registration data packets and identifies the string concatenation characters and delimiters for each GRI, extracting the fingerprint suffix. ; The fingerprint suffix in Base62 string format The formula for restoring the binary fingerprint integer to its computational state is as follows: ; in, Represents the integer value of the restored fingerprint. This refers to the Base62 decoding function; From the restored fingerprint integer Extracting feature codes , Represents fingerprint integer The k-th attribute of the dynamic attribute load; Use a hash function to convert GRIs into numeric IDs, and then combine these numeric IDs into a roar bitmap; use feature codes. Using the key and the roaring bitmap as the value, construct an inverted index as follows: ; in, Indicates the first A region-level multidimensional inverted index for each attribute A numeric ID representing the GRI. Indicates obtaining feature codes The corresponding roar bitmap container pointer; Obtain the fingerprint suffix for each GRI, remove duplicates, and generate a capability summary, as shown below: ; in, Represents a summary of capabilities. A region identifier is a unique numerical identifier representing the logical or administrative region governed by a region identifier management node. This represents the suffix of the Mth fingerprint. This indicates a deduplication operation; the capability summary is then reported to the global identifier management node. The Global Identifier Management Node (GIMN) restores each fingerprint suffix in the capability digest to a fingerprint integer. ; fingerprint integer As a binary sequence, according to the step size of the radix tree, Divide into k path index segments Check if the child nodes corresponding to each path index segment exist; If we are traversing the intermediate level, i.e., the first... To the When the path index segment is null, a new branch node is allocated in the heap memory. The data structure of the branch node is configured to include only an array of pointers pointing to the next level of child nodes. The memory address of the branch node is linked to the corresponding slot of the current parent node. If the traversal reaches the last level, i.e., the... If the corresponding node is not found during the layering process, a new index node is allocated in the heap memory; the data structure of the index node is configured to include a dedicated value pointer field and mount a composite state container. Composite state container This represents a structure instance defined in physical memory that encapsulates multiple data structures; a composite state container. It includes two member variables: the regional distribution bitmap and the macro heatmap slot; Among them, the regional distribution bitmap means calling the constructor of the compressed bitmap algorithm library, instantiating a compressed bitmap object with an initial empty state, and assigning the reference handle of the compressed bitmap object to the first member variable of the composite state container; The macro heatmap slot represents an instantiated array or hash table that supports dynamic expansion, and the root address of the array or hash table is assigned to the container's second member variable; Assign values to two member variables of the composite state container, where the macroscopic heatmap slots are identified by region. As the key, store the real-time congestion status and static cost of each region, as shown below: ; in, express The macroscopic heatmap slots, where RCI represents the regional congestion index, are initially set to 0. Represents static cost. Indicates the last update time; The regional distribution bitmap is shown below: ; in, This represents a bitmap showing the regional distribution. This indicates that the bit at the specified index position is set; If the child node of the radix tree exists, the corresponding composite state container is retrieved, and the data of the two member variables is checked. If the data is empty, an assignment operation is performed. In fingerprint integer Extracting feature codes , with feature code Using the RegionID (the identifier of the region to which the capability summary belongs) as the key, a global multidimensional inverted index is created. The index values are stored using a roaring bitmap, recording the feature codes. The set of all region IDs.
5. The method for managing network resource identification according to claim 4, characterized in that, The specific implementation process of step 4 includes: DCIMN periodically scans the real-time status data in memory, i.e., the hot data stored in memory, and identifies the same fingerprint suffix in the global resource identifier. The network resources are grouped together to construct a dynamic capability summary, as shown below: ; in, Indicates fingerprint suffix Dynamic capabilities summary This indicates the fingerprint suffix in the available inventory data. The corresponding running state (State) is the number of online and ready states; This represents the real-time cost factor, which is the unit price of computing power for the current period. Indicates the generation time; The average load, which is the weighted average of the loads within the group, is shown below: ; Where M represents the number of computing network resources within the group, This represents the load of the j-th computing network resource; If the network resources are computing resources, then read the computing power utilization rate of the computing resources. and video memory / memory usage The calculated load is as follows: ; in, , , These are the weighting coefficients. This represents the temperature penalty function, which applies if the current chip temperature... Less than the safe temperature threshold Then the function The value is 0; if Then the function value grows linearly. , This is the limiting temperature threshold; if If , then the function value is 1; If the computing network resource is a storage resource, then read the real-time IOPS utilization rate of the storage resource. Read / write throughput (BW) and storage pool capacity utilization The calculated load is as follows: ; in, , , These are the weighting coefficients. This represents the number of read / write operations per second in real time, i.e., the actual number of I / O operations generated within the current sampling period. This indicates the device's maximum IOPS capability, which is the theoretical peak performance of the storage medium as measured in factory specifications or benchmark tests. This represents the real-time read / write throughput, i.e., the actual data rate transmitted within the current sampling period. This indicates the device's maximum throughput bandwidth, which is the maximum data transfer rate that the storage interface or medium can support. If the network resource is a network resource, then read the port bandwidth utilization rate of the network resource. Real-time packet loss rate and link round-trip delay The calculated load is as follows: ; in, , , These are the weighting coefficients. Represents a nonlinear mapping function. This represents the maximum tolerable latency for the service, which is the maximum acceptable network round-trip latency limit specified in the computing power network service level agreement; Send the dynamic capability summary to the Regional Identifier Management Node (RIMN).
6. The method for managing network resource identification according to claim 5, characterized in that, The specific implementation process of step 5 includes: RIMN (Regional Identifier Management Node) receives dynamic capability summaries Check timestamp Set the maximum silence threshold to ,like Then the dynamic capability summary Available inventory in the system has been reduced to zero. Otherwise, no action will be taken; among them Indicates the current time. Indicates the generation time of the dynamic capability summary; According to fingerprint suffix Perform classification and aggregation to calculate the Regional Congestion Index (RCI), as shown below: ; in, This indicates the congestion index of the corresponding computing network resources within the region; This represents the Sigmoid activation function; This indicates the total registered capacity of computing network resources within the region; Indicates the weighting coefficient; Set a threshold condition and execute a threshold detection mechanism, as shown below: ; in, This represents the currently calculated RCI index. This represents the RCI value calculated after the area identifier management node receives the dynamic capability digest in the previous round. This indicates that a threshold value has been set. If the threshold condition is met, that is... Then RIMN generates a macroscopic state summary. And report it to the Global Identifier Management Node (GIMN), as shown below: ; in, Indicates the generation time; The Global Identity Management Node (GIMN) will summarize the macroscopic state. fingerprint suffix Decode and restore to fingerprint integer Use this as the key to access the radix tree in memory and retrieve the corresponding composite state container: ; In the obtained In the middle, according to the macroscopic state summary It directly locates the corresponding macroscopic heat map slot; Update the macroscopic heatmap slots and add a macroscopic state summary. In Write it into the macro heatmap slot: Summary of macroscopic state The generation time is updated in the macro heatmap slot: .
7. The method for managing network resource identification according to claim 6, characterized in that, The user initiates a scheduling request. The global identifier management node generates a target fingerprint from the scheduling request, selects a list of regions in memory, and returns the list to the user; including: The user initiates a scheduling request. This includes hardware constraints and policy constraints; Among them, hardware constraints The physical specifications of the resource to be invoked; Policy constraints The target direction for optimization is the weight vector generated based on the business scenario and requirements. , For performance weighting, As a cost weight, As the delay weight, and satisfying ; The global identifier management node uses a global code table to define hardware constraints. Feature code mapped to binary ; If the resource specifications defined in the hardware constraints are specific resources, then an exact lookup is performed, which includes combining the signatures into a complete integer to obtain the target fingerprint. , target fingerprint As a key, it accesses the radix tree in memory; if the corresponding node exists, it directly returns the corresponding composite state container. Regional distribution bitmap The location with a bitmap value of 1 indicates the region that meets the hardware constraints; If the resource specifications specified in the hardware constraints are fuzzy matching resources or only specify some attributes, then the feature code is used as the key to extract the set of regions in the global multidimensional inverted index, and the intersection operation is performed to obtain the regions that meet the hardware constraints. For regions that meet hardware constraints Read the slots of the macro heat map Calculate the score from the data. : ; in, This refers to the regional congestion index. For regional static costs; Network distance; The lowest benchmark cost across the entire network; Indicates the weighting coefficient; Extracted regions by Sort in descending order and select the first few. The following regions are listed as preferred regions. Return it to the user; The user client initiates a resource reservation request to the region identifier management node based on the region list. The region identifier management node filters the data centers and selects the target data center; including: User terminal according to The region initiates a resource reservation request, and the corresponding region's area identifier management node receives the request and deletes data centers that meet any of the following conditions: ; ; ; in, This represents the average load of the data center. The preset safe load threshold; The current system timestamp; The timestamp of the last time the data center reported its status; This is the heartbeat timeout threshold; For the deleted data center set Calculate the micro-competitive score : ; in, Indicates the first The current available inventory quantity for each data center; This represents the maximum inventory value among the data centers participating in the competition. Indicates the first Real-time power cost factor for each data center; Indicates the first Real-time average load of each data center; Let represent the competitive weighting coefficients for inventory, cost, and load, respectively, satisfying ... ; This represents a normalization function that maps costs and loads of different dimensions to... interval; Competitive score The highest-level data center as the target data center ; The target data center's data center identification management node locates the corresponding computing network resources based on the target fingerprint and extracts physical connection information; the user terminal connects to the computing network resources based on the physical connection information; including: The data center identifier management node of the target data center accesses the real-time status table (hot data) in the resident memory, finds the idle instance (i.e., computing network resource) corresponding to the hardware constraint, and sets the status of the idle instance to Locked. After successful locking, query the local persistent database (cold data) based on the resource number of the computing network resource to extract the physical connection information; DCIMN encapsulates physical connection information into encrypted connection credentials and returns the connection credentials to the user. The user then uses the connection credentials to establish a data plane connection with the physical IP of the computing network resource.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the computer network resource identification management method according to any one of claims 1-7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the computer network resource identification management method according to any one of claims 1-7.
10. A network resource identification management system, characterized in that, include: The global resource identifier structure construction module is configured to: construct the global resource identifier structure of computing network resources according to the computing network resource type; The data packet encapsulation module is configured to: collect the hardware attributes of computing network resources and map them as fingerprint suffixes to generate global resource identifiers; Global resource identifiers are encapsulated into cold and hot data, and stored separately for cold and hot data. Build a local inverted index and encapsulate the global resource identifier into a registration data packet, then report it to the regional identifier management node; The capability summary generation module is configured to: receive the reported registration data packets from the regional identifier management node and construct a regional-level multidimensional inverted index; Based on the fingerprint suffix in the registration data packet, a capability summary is generated and reported to the global identifier management node; The composite state container building module is configured to: receive capability summaries from the global identifier management node, build composite state containers, create or update cardinality trees in memory, and build global-level multidimensional inverted indexes; The dynamic capability summary construction module is configured as follows: the data center identification management node periodically scans memory data, calculates the average load of computing network resources, constructs a dynamic capability summary, and sends it to the regional identification management node; The regional congestion index calculation module is configured as follows: the regional identifier management node receives the dynamic capability summary, calculates the regional congestion index and sets a threshold. If the threshold condition is met, a macro-state summary is generated and reported to the global identifier management node; the global identifier management node receives the macro-state summary and updates the cardinality tree; otherwise, it waits for the next cycle. The region list selection module is configured as follows: when the user initiates a scheduling request, the global identifier management node generates the scheduling request as a target fingerprint, selects a region list in memory, and returns the region list to the user. The target data center selection module is configured as follows: the user sends a resource reservation request to the region identifier management node based on the region list; the region identifier management node filters the data centers and selects the target data center. The resource connection module is configured as follows: the data center identification management node of the target data center searches for the corresponding computing network resources based on the target fingerprint and extracts the physical connection information; the user terminal connects to the computing network resources based on the physical connection information.
Citation Information
Patent Citations
Self-adaptive heterogeneous computing power network and operation method thereof
CN120321126A
Heterogeneous resource computing power intelligent scheduling method and system
CN121116527A