WO2025196499A1 - 资源配置方法、系统、电子设备、存储介质和程序产品 - Google Patents

资源配置方法、系统、电子设备、存储介质和程序产品

Info

Publication number
WO2025196499A1
WO2025196499A1 PCT/IB2024/063171 IB2024063171W WO2025196499A1 WO 2025196499 A1 WO2025196499 A1 WO 2025196499A1 IB 2024063171 W IB2024063171 W IB 2024063171W WO 2025196499 A1 WO2025196499 A1 WO 2025196499A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
server
network card
data exchange
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/IB2024/063171
Other languages
English (en)
French (fr)
Inventor
蓝热
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloud Intelligence Singapore Holding Pvt Ltd
Original Assignee
Cloud Intelligence Singapore Holding Pvt Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cloud Intelligence Singapore Holding Pvt Ltd filed Critical Cloud Intelligence Singapore Holding Pvt Ltd
Publication of WO2025196499A1 publication Critical patent/WO2025196499A1/zh
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements

Definitions

  • the present disclosure relates to the field of cloud computing, and more specifically, to a resource configuration method, system, electronic device, storage medium, and program product.
  • CPU central processing unit
  • network cards typically exist as server accessories and are installed within the server.
  • no effective solution has been proposed to address the aforementioned issues.
  • a resource configuration method may include: determining at least one server for which resources are to be configured; determining, in a resource pool, at least one target network interface card (NIC) that matches the server; determining first target links corresponding to the target network interface card and at least one target data exchange interface in the resource pool; and if the link status of the first target link is normal, configuring the resources of the target network interface card to the server via the corresponding first target link.
  • NIC target network interface card
  • the method may include: sending a resource configuration request to a resource output terminal; and obtaining resources of the target network interface card outputted by the resource output terminal via the first target link in response to the resource configuration request.
  • the link status of the first target link is normal, and the first target link includes a target network interface card and a target data exchange interface, wherein the at least one target network interface card and the at least one target data exchange interface are integrated into the resource pool of the resource output terminal.
  • a resource configuration system is also provided.
  • the system may include: a resource output terminal and a server set, wherein the resource output terminal is configured to determine at least one server in the server set to which resources are to be allocated; determine at least one target network card matching the server in the resource pool; determine a first target link between the target network card and at least one target data exchange interface in the resource pool; and if the link status of the first target link is normal, allocate the resources of the target network card to the server via the corresponding first target link.
  • Server a server in a server cluster, configured to utilize the resources of a target network card.
  • the electronic device may include a memory and a processor: the memory is configured to store computer-executable instructions, and the processor is configured to execute the computer-executable instructions.
  • the computer-executable instructions are executed by the processor, any of the aforementioned resource configuration methods is implemented.
  • a processor is provided.
  • the processor is configured to run a program.
  • any of the aforementioned resource configuration methods is implemented.
  • a computer-readable storage medium is provided.
  • the computer-readable storage medium includes a stored program. When the program is executed, the device containing the storage medium is controlled to execute any of the aforementioned resource configuration methods.
  • a computer program product is provided.
  • At least one server to which resources are to be configured is determined; in a resource pool, at least one target network interface card (NIC) matching the server is determined; and first target links between the target network interface card and at least one target data exchange interface in the resource pool are determined. If the link status of the first target link is normal, the resources of the target network interface card are configured to the server via the corresponding first target link.
  • the network interface card and the data exchange interface are integrated into the resource pool to implement a resource pooled product, thereby separating the network interface card from the server.
  • the server can configure the target network interface card on demand via the target data exchange interface, thereby improving resource utilization and reducing costs.
  • multiple target network interfaces can be configured on a single server to meet high network bandwidth requirements.
  • the physical installation and adaptation of the server and the Smart NIC are decoupled, thereby achieving the technical effect of increasing resource configuration flexibility and resolving the technical problem of low resource configuration flexibility.
  • FIG2 is a block diagram of a hardware structure of a computing environment according to a resource configuration method according to an embodiment of the present disclosure
  • FIG3 is a flow chart of a resource configuration method according to an embodiment of the present disclosure
  • FIG4 is a flow chart of another resource configuration method according to an embodiment of the present disclosure
  • FIG5 is a schematic diagram of a resource configuration system according to an embodiment of the present disclosure
  • FIG6 is a schematic diagram of a usage scenario of a smart network card according to an embodiment of the present disclosure
  • FIG7 is a schematic diagram of another usage scenario of a smart network card according to an embodiment of the present disclosure
  • FIG8 is a schematic diagram of a smart network card pool architecture according to an embodiment of the present disclosure
  • FIG9 is a schematic diagram of a smart network card resource pool complete product according to an embodiment of the present disclosure
  • FIG10 is a block diagram of a hardware structure of a computer terminal (or
  • a programmable logic array (Field Programmable Gate Array, referred to as FPGA) can be a digital circuit
  • ASIC Application Specific Integrated Circuit
  • CXL Compute Express Link
  • DPU Data Processing Unit
  • OVS Open Virtual Switch
  • Embodiment 1 is a system or product formed by combining multiple integrated circuits with specific functions on a single chip, which can include a complete hardware system and the embedded software it carries.
  • Embodiment 1 According to an embodiment of the present disclosure, a resource configuration method is provided. It should be noted that the steps illustrated in the flowcharts of the accompanying drawings can be executed in a computer system, such as a set of computer-executable instructions. Furthermore, although the flowcharts illustrate a logical sequence, in some cases, the steps illustrated or described may be executed in a different order. The method embodiment provided in Embodiment 1 of the present disclosure can be executed in a mobile terminal, a computer terminal, or a similar computing device.
  • FIG. 1 is a hardware block diagram of a computer terminal (or mobile device) for implementing the resource configuration method according to an embodiment of the present disclosure.
  • the computer terminal 10 may include one or more processors 102 (illustrated as 102a, 102b, 102n in the figure)
  • processor 102 may include, but is not limited to, a processing device such as a microprocessor (MCU) or a programmable logic device (FPGA), a memory 104 for storing data, and a transmission module 106 for communication functions.
  • MCU microprocessor
  • FPGA programmable logic device
  • the device may also include: a display, an input/output interface (I/O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of a BUS), a network interface, a power supply, and/or a camera.
  • I/O interface input/output interface
  • USB Universal Serial Bus
  • FIG1 the structure shown in FIG1 is merely illustrative and does not limit the structure of the electronic device.
  • the computer terminal 10 may include more or fewer components than shown in FIG1 , or have a configuration different from that shown in FIG1 .
  • the one or more processors 102 and/or other data processing circuits described above may generally be referred to herein as "data processing circuitry.”
  • This data processing circuitry may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof.
  • the data processing circuitry may be a single, independent processing module, or may be fully or partially integrated into any of the other components of the computer terminal 10 (or mobile device).
  • this data processing circuitry serves as a processor control (e.g., selecting a variable resistor terminal path connected to an interface).
  • the memory 104 can be used to store software programs and modules of application software, such as the method in the embodiment of the present disclosure. Corresponding program instructions/data storage devices.
  • Memory 104 may include high-speed random access memory (RAM) and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, memory 104 may further include remote memories from processor 102, which can be connected to computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Transmission device 106 is used to receive or transmit data via a network. Specific examples of such networks may include wireless networks provided by the telecommunications provider of computer terminal 10.
  • transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to enable communication with the Internet.
  • the transmission device 106 can be a radio frequency (RF) module for wirelessly communicating with the Internet.
  • the display can be, for example, a touchscreen liquid crystal display (LCD), which enables a user to interact with the user interface of the computer terminal 10 (or mobile device).
  • the hardware structure block diagram shown in FIG1 can serve not only as an exemplary block diagram of the aforementioned computer terminal 10 (or mobile device), but also as an exemplary block diagram of the aforementioned server.
  • FIG2 shows a block diagram of an embodiment using the computer terminal 10 (or mobile device) shown in FIG1 as a computing node in a computing environment 201.
  • FIG2 shows a structural block diagram of a computing environment.
  • computing environment 201 includes multiple computing nodes (e.g., servers) (illustrated as 210-1 and 210-2) running on a distributed network.
  • Each computing node includes local processing and memory resources, and end user 202 can remotely run applications or store data in computing environment 201.
  • Applications can be provided as multiple services 220-1, 220-2, 220-3, and 220-4 in computing environment 201, representing services "A,”"D,””E,” and "H,” respectively.
  • End users 202 can provision and access services through a web browser or other software application on a client.
  • end users 202's provisioning and/or requests can be provided to an ingress gateway 230.
  • Ingress gateway 230 can include a corresponding agent to handle provisioning and/or requests for services (one or more services provided in computing environment 201).
  • Services are provided or deployed based on various virtualization technologies supported by computing environment 201.
  • services can be provided based on virtual machine (VM)-based virtualization, container-based virtualization, and/or similar approaches.
  • VM-based virtualization can simulate a real computer by initializing a virtual machine, executing programs and applications without directly accessing any actual hardware resources.
  • container-based virtualization can launch containers to virtualize the entire operating system (OS), allowing multiple workloads to run on a single OS instance.
  • OS operating system
  • container-based virtualization several service containers can be assembled into a Pod (e.g., a Kubernetes Pod).
  • Pod e.g., a Kubernetes Pod
  • a Pod may include an agent 245 and one or more containers.
  • One or more containers in a pod process requests related to one or more corresponding functions of a service.
  • Proxy 245 typically controls network functions related to the service, such as routing and load balancing.
  • executing a user request from end user 202 may require invoking one or more services in computing environment 201.
  • Executing one or more functions of one service may require invoking one or more functions of another service.
  • service “A” 220-1 receives a user request from end user 202 from ingress gateway 230.
  • Service “A” 220-1 may invoke service "D" 220-2, and service “D” 220-2 may request service "E” 220-3 to execute one or more functions.
  • the computing environment described above may be a cloud computing environment, where resource allocation is managed by the cloud service provider, allowing for feature development without having to worry about implementing, adjusting, or scaling servers.
  • This computing environment allows developers to execute code in response to events without building or maintaining complex infrastructure. Instead of expanding a single hardware device to handle potential load, services can be segmented to complete a set of functions that can be automatically and independently scaled.
  • the present disclosure provides a resource configuration method as shown in Figure 3.
  • Figure 3 is a flowchart of a resource configuration method according to an embodiment of the present disclosure. As shown in Figure 3, the method may include the following steps: Step S302: Determine at least one server for resources to be configured.
  • the resources to be configured may be input/output (IO) resources, which can be hardware or software resources used to input and output data in a computer system, such as hard drives, optical disks, keyboards, mice, printers, file systems, network communications, storage resources, etc.
  • IO input/output
  • the servers may be cloud servers, bare metal servers, etc. It should be noted that this is for illustrative purposes only and does not impose specific limitations on the types of resources to be configured or servers.
  • the server may configure the resources to be configured based on demand, and IIO resource requirements on the server may be determined, such as network bandwidth, storage capacity, and storage bandwidth requirements.
  • resources can be dynamically configured.
  • at least one server to which resources are to be configured can be determined.
  • at least one target network card matching the server is determined in the resource pool.
  • at least one target network card matching the server can be determined in the resource pool.
  • the resource pool can be a network card resource pool and can include multiple network cards, which can be used to connect to multiple servers.
  • the network cards can be resource cards, smart network cards, or ordinary network cards, such as DPU-type network cards, "SOC+FPGA"-type network cards, and "SOC+ASIC"-type network cards.
  • the target network interface card (NIC) matching the server in the resource pool can be a network card matching the server, can be used with the server, and can be used to implement network and storage virtualization functions. It should be noted that the types of network cards mentioned here are merely examples and are not specifically limited.
  • at least one target network card matching the server is determined among multiple network cards in the resource pool. For example, at least one server to which resources are to be configured is determined. Different servers may require different types of network cards.
  • the network connection type and bandwidth requirements required by the server can be considered to determine at least one target network card that matches the server.
  • the available physical interface types on the server can be considered to determine at least one target network card that matches the physical interface type.
  • Step S306 Determine the first target link between the target network card and at least one target data exchange interface in the resource pool.
  • the target data exchange interface can be a CXL interface (Switch), which can serve as an interconnection interface between the target network card and the server, enabling flexible matching of network cards and servers.
  • the first target link can be a switching link or a CXL link, which can be used to transmit data.
  • at least one network card and at least one data exchange interface can be integrated into a single product (e.g., a resource pool).
  • the network card and server are interconnected via the data exchange interface, thereby separating the network card from the server.
  • at least one target network card matching the server can be identified in the resource pool, along with a first target link between the target network card and the at least one target data exchange interface. Due to the high manufacturing cost of network cards, installing the network card within a server to configure the server and network card places high demands on the server's hardware specifications, requiring the server to support various forms of smart network cards.
  • NICs network interface cards
  • resource transfer is required, at least one target NIC matching the server is identified, a first target link is determined between the target NIC and at least one target data exchange interface, and data is transferred via the first target link.
  • this embodiment utilizes the target data exchange interface to connect the target NIC to the server, thereby transferring resources between the target NIC and the server, thereby decoupling the physical installation and adaptation issues of the server and the SmartNIC.
  • this method does not require the NIC to be installed within the server. Therefore, it can be adapted to various types of servers, thereby achieving the technical effect of increasing resource configuration flexibility and resolving the technical issue of low resource configuration flexibility.
  • step S308 if the link status of the first target link is normal, the resources of the target NIC are allocated to the server via the corresponding first target link.
  • the state of the first target link can be determined first to determine whether the link can be used for data transmission. If the link state of the first target link is normal, the resources of the target network card can be allocated to the server via the corresponding first target link. The resources of the target network card can be data or traffic transmitted through the target network card.
  • the network card and server are connected via a data exchange interface, rather than requiring the network card to be installed on the server to complete the connection.
  • the network card and server ratio can be flexibly adjusted and configured based on actual usage.
  • a network card can be dynamically assigned to multiple servers via one or more data exchange interfaces to reduce network card application costs.
  • multiple network cards can be assigned to a single server via one or more data exchange interfaces to achieve a high-performance network. This achieves the technical effect of increasing resource allocation flexibility and addresses the technical issue of low resource allocation flexibility.
  • At least one server to which resources are to be assigned is determined; at least one target network card matching the server is determined in the resource pool; and the first target links between the target network card and at least one target data exchange interface in the resource pool are determined. If the link status of the first target link is normal, the resources of the target network card are assigned to the server via the corresponding first target link. That is, in the disclosed embodiment, the network card and data exchange interface are integrated into a resource pool to implement a resource pool product. This decouples the network card from the server.
  • the server can configure a target network card on demand through the target data exchange interface, thereby improving resource utilization and reducing costs.
  • a single server can be configured with multiple target network cards to meet high network bandwidth requirements.
  • step S304 determining at least one target network card in the resource pool that matches the server, includes: determining the type of the server; and determining at least one target network card in the resource pool that matches the type.
  • network cards vary in form and length.
  • At least one target network card that matches the server can be determined through the following steps:
  • the server type can be determined, and a network card in the resource pool that at least matches the server type can be identified as the target network card.
  • the server type can be used to determine the server's interface model, resource requirements, and other information. It should be noted that this is merely an example and does not specifically limit the server type.
  • network cards typically exist as server accessories, such as cards similar to the Peripheral Component Interconnect (PCIe) bus standard.
  • PCIe Peripheral Component Interconnect
  • Smart NICs due to the varying lengths of Smart NICs (e.g., some are half-length and others are 3 ⁇ 4-length), there are certain requirements for compatible servers.
  • a target network card that at least matches the server type can be directly identified from the resource pool and used for resource transmission and communication. For example, if a server requires a high-speed 10 Gigabit Ethernet connection and has a PCIe 3.0 interface, you can select a target network card that supports 10 Gigabit Ethernet connection and has a PCIe 3.0 interface in the resource pool to ensure that it matches the server.
  • a data center has a resource pool that integrates a network card pool.
  • the network card pool contains multiple types of network cards.
  • the data center has multiple types of servers, each with different network requirements.
  • the network requirements of each server are determined, such as the network bandwidth and interface type required by the server.
  • a target network card is selected from the network card pool that matches the server.
  • the selected target network card can meet the server's network requirements and match the server's interface.
  • a network interface card (NIC) set is integrated into a resource pool.
  • the NIC set can include multiple NICs, thereby combining multiple NICs into a resource pool product.
  • determining a target NIC that at least matches the type of server in the NIC set includes: determining resource requirement information for the server based on the type, where the resource requirement information indicates the resources required by the server type during operation; determining the number of NICs that match the resource requirement information; and determining target NICs for the number of NICs in the NIC set.
  • the server resource requirement information can be determined based on the server type, and the number of NICs that match the resource requirement information can be determined.
  • the target NICs for the number of NICs in the NIC set can be determined.
  • Resource requirement information can be used to indicate the resources required by a server of a certain type during operation, can be used to determine the functional or scenario requirements of the server, and can be used to determine the hardware equipment and resource specifications required by the server. For example, it can include network bandwidth requirements, storage capacity requirements, processor performance requirements, and memory size requirements. It should be noted that this is merely an example and does not impose any specific limitation on the type of resource requirement information.
  • the target number can be one or more.
  • the target network card may be a network card for a single device, or may be a network card comprised of one or more SOCs and one or more FPGAs or ASICs on multiple interfaces of one or more data switches.
  • the target network card may be comprised of one SOC and one FPGA, two SOCs and one FPGA, one SOC and two FPGAs, or a single network card comprised of a single DPU.
  • the network card configurations described here are merely examples and can be flexibly configured based on actual circumstances, without specific limitations. Due to the high manufacturing cost of network cards, matching network cards to servers in a 1:1 ratio, for example, one network card for each server, increases hardware costs. Furthermore, in many application scenarios, a server does not require all of the resources to be configured on a single network card, resulting in a waste of network card resources.
  • this embodiment utilizes multiple network cards as a resource pool, determining target network cards that match the server type, thereby supporting interconnection with multiple servers. Furthermore, the number of target network cards can be determined based on the server's resource requirements, allowing servers to configure resources on demand, thereby improving resource utilization and reducing average costs.
  • this embodiment not only allows multiple network cards to be configured for multiple servers, but can also, based on actual needs, configure one or more network cards for a single server. By configuring multiple network cards for a single server, high network bandwidth requirements can be met.
  • server resource requirements can be determined based on server type, and the number of network cards can be determined based on the resource requirements and the CXL switch.
  • the number of network cards can be matched not only to the resource requirements but also to the CXL switch.
  • a data center has a resource pool containing network cards of different types and specifications.
  • a server's resource requirements require two 10 Gigabit Ethernet interfaces that support the PCIe 3.0 interface specification. Therefore, the number of network cards (NICs) can be determined based on the server's resource requirements and the CXL switch. For example, two NICs supporting 10 Gigabit Ethernet and PCIe 3.0 can be used. Two NICs supporting 10 Gigabit Ethernet and PCIe 3.0 are selected from the NIC pool in the resource pool.
  • the number of servers and target NICs can be flexibly allocated based on CXL interfaces and functional requirements.
  • High-performance or general-purpose, low-cost network combinations can be configured based on functional requirements. This improves resource allocation flexibility and addresses the problem of limited resource allocation flexibility.
  • determining the first target link between the target network card and at least one target data exchange interface in the resource pool includes: determining a data exchange interface set integrated in the resource pool, wherein different data exchange interfaces in the data exchange interface set are allowed to form links with different network cards in the network card set; determining, within the data exchange interface set, a target data exchange interface allowed to connect to the target network card; and combining the target network card, the server, and the target data exchange interface to form the first target link.
  • the data exchange interface set integrated in the resource pool can be determined, and the target data exchange interface set can be included in the data exchange interface set. In the process, a target data exchange interface allowed to connect to the target network card is determined.
  • the network cards in the network card set are all connected to the server via CXL interfaces, thus enabling flexible matching of servers and network cards through CXL interfaces.
  • resource cards such as the Smart NICs, FPGA cards, and DPUs in the network card cluster can be independent of each other.
  • the network cards in the network card cluster can be connected to multiple servers by configuring CXL switching paths.
  • Each server can also be connected to multiple network cards. That is, in this embodiment, the CXL interface eliminates the need for network cards to exist as server accessories, thereby flexibly allocating the number of servers and Smart NICs.
  • the target data exchange interface connected to target network card 1 (Node 1 SOC) is determined to be CXL Switch 1, the target network card and the target data exchange interface form a first target link. Resources from Node 1 SOC can be transferred to Server 1 via the first target link.
  • the server, and at least two target data exchange interfaces if at least one first target link is in an abnormal link state, all first target links other than the at least one first target link in the multiple first target links remain in a normal link state.
  • the target network card and the server each form a first target link with at least two target data exchange interfaces, resulting in multiple first target links that can operate simultaneously and independently.
  • the other first target links in the multiple first target links can remain in a normal link state. Resources can be transferred via the first target links in a normal link state.
  • the number of target network cards, servers, and target data exchange interfaces is not limited herein; the number of these components can be one or two or more. For example, if there are two or more target data exchange interfaces, target network card 1 and server 1 each form a first target link with at least two or more target data exchange interfaces, resulting in two or more first target links that operate simultaneously.
  • any of the two or more first target links formed by the target network card, data exchange interface, and server experiences an abnormality the other first target links are unaffected and remain in a normal link state. This ensures that information exchange between the server, data exchange device, and network card remains uninterrupted, and resources can be transferred via the other normal first target links.
  • the link state of a first target link is abnormal, another first target link matching the server is determined among links formed between different data exchange interfaces and different network cards. If the link state of the other first target link is normal, the resources of the target network card can be allocated to the server via the corresponding first target link.
  • the use of two or more network cards (NICs) enables server-plus-NIC redundancy.
  • two or more data exchange interfaces are proposed to achieve server-side interconnect redundancy. For example, if there are two or more target data exchange interfaces, two or more target NICs, and two or more servers, the target NICs and servers each form a first target link with at least two or more target data exchange interfaces, resulting in two or more first target links. These two or more first target links operate independently and simultaneously. Optionally, if a first target link is in an abnormal link state, the resources of the target NIC are allocated to the server via the remaining first target links in a normal link state.
  • the resource pool may include multiple data connection interfaces and multiple network cards.
  • the same network card can be connected to different data connection interfaces, and the same number of connection interfaces can be connected to different network cards. Therefore, when an abnormality occurs in the link between the network card and the data exchange interface, resources can be transferred using the remaining links in normal link states.
  • each CXL switch can be connected to each network card.
  • resources can be transferred via another CXL switching link.
  • the link state of the first target link is determined to be an abnormal link state.
  • the link state of the first target link can be determined to be an abnormal link state.
  • the link state of the first target link can be determined to be an abnormal link state.
  • a hot-swap operation is performed on the failed target network card and/or the failed target data exchange interface.
  • the redundant design of the upstream and downstream network cards and data exchange interfaces increases system reliability. In the event of a single-point link failure in a CXL Switch or Smart NIC, data transmission will not be interrupted. The failed target network card and/or the failed target data exchange interface can be replaced via a hot-swap operation.
  • step S308 if the link state of the first target link is a normal link state, then configuring the resources of the target network card to the server via the corresponding first target link includes: if the first If the target link's link status is normal, the server can be connected to the target data exchange interface as an external device, allowing the target network card's resources to be allocated to the server via the corresponding first target link.
  • the server can be connected to the target data exchange interface via a Compute Express Link Interface (CXL Interface) using a cable, allowing the target network card's resources to be allocated to the server via the corresponding first target link.
  • CXL Interface Compute Express Link Interface
  • the server can be connected to a CXL switch via a CXL link, and then to a network card or other resource card.
  • the CXL switch and the network card or other resource card can form a connection link, and the server can be connected to the CXL switch as an external device.
  • the method may further include: in response to an adjustment operation, adjusting at least one of the following: a set of network adapters in the resource pool, a set of data exchange interfaces in the resource pool, or a set of servers to which the at least one server belongs.
  • the adjustment operation allows for flexible adjustment of the set of network adapters in the resource pool, the set of data exchange interfaces in the resource pool, or the set of servers to which the at least one server belongs.
  • the adjustment operation may be an addition or subtraction operation, or an in-or-out operation. This is merely an example, and the type of adjustment operation is not specifically limited.
  • this embodiment uses CXL as the switching core and is designed according to hardware system requirements.
  • the number of CXL switches and network adapters can be flexibly increased, and the number of supported server devices can be flexibly expanded.
  • By flexibly increasing or decreasing the number of network adapters and servers optimal performance and cost configuration can be achieved.
  • by adding a data exchange interface network cards and servers are interconnected, expanding the resource pool. This allows for flexible configuration of servers and network cards, as well as redundant configuration of servers and network cards, improving system reliability.
  • hot-swappable maintenance is supported, enabling online troubleshooting and reconfiguration.
  • the issue of network card compatibility with various server types is resolved, thereby achieving the technical effect of increasing resource configuration flexibility and resolving the technical issue of low resource configuration flexibility.
  • the network card and data exchange interface are integrated into the resource pool, creating a resource pool product.
  • Servers can configure target network cards on demand through the target data exchange interface, thereby improving resource utilization and reducing costs.
  • a single server can be configured with multiple target network cards to meet high network bandwidth requirements.
  • the physical installation and adaptation between the server and the smart network card are decoupled, thereby achieving the technical effect of improving the flexibility of resource configuration and solving the technical problem of low resource configuration flexibility.
  • the present disclosure also provides another resource configuration method that can be applied to server 1.
  • FIG4 is a flow chart of another resource configuration method according to an embodiment of the present disclosure.
  • the method may include: The following steps are as follows: Step S402: Send a resource configuration request to the resource output terminal.
  • the resource configuration request can be sent to the resource output terminal.
  • the resource output terminal can be a network card pooling architecture, which can be used to process the resource configuration request and allocate corresponding resources from the resource pool.
  • the link status of the first target link is normal, and the first target link includes a target network card and a target data exchange interface.
  • the at least one target network card and the at least one target data exchange interface are integrated into the resource pool of the resource output terminal.
  • FIG10 is a hardware block diagram of a computer terminal (or mobile device) for implementing a resource configuration method according to an embodiment of the present disclosure.
  • the computer terminal 100 may include one or more (illustrated by 1002a, 1002b, 1002n in the figure).
  • a processor 1002 may include, but is not limited to, a microprocessor (MCU) or a field programmable gate array (FPGA), a memory 1004 for storing data, and a transmission device 1006 for communication functions.
  • the computer terminal 100 may also include: a display, an input/output interface (I/O interface), a universal serial bus (USB) port (which can be used as a BUS One of the ports of the bus is included), a network interface, a power supply, and/or a camera.
  • I/O interface input/output interface
  • USB universal serial bus
  • FIG10 is merely illustrative and does not limit the structure of the electronic device described above.
  • the computer terminal 100 may include more or fewer components than shown in FIG10 , or have a configuration different from that shown in FIG10 .
  • the hardware structure block diagram shown in FIG10 can serve not only as an exemplary block diagram of the computer terminal 100 (or mobile device) described above, but also as an exemplary block diagram of the server described above.
  • FIG2 shows a block diagram of an embodiment using the computer terminal 100 (or mobile device) shown in FIG10 as a computing node in a computing environment 201.
  • Memory 1004 can be used to store software programs and modules of application software, such as the program instructions/data storage device corresponding to the resource configuration method in the embodiments of the present disclosure.
  • the processor executes the software programs and modules stored in memory 1004 to execute various functional applications and data processing, thereby implementing the resource configuration method described above.
  • Memory 1004 may include high-speed random access memory (RAM) and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • RAM random access memory
  • non-volatile memory such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • memory 1004 may further include memory located remotely from the processor, which can be connected to computer terminal 100 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
  • Transmission device 1006 is used to receive or transmit data via a network. Specific examples of such networks may include wireless networks provided by the computer terminal 100's telecommunications provider.
  • transmission device 1006 includes a network interface controller (NIC), which can be connected to other network devices via a base station to communicate with the Internet.
  • transmission device 1006 may be a radio frequency (RF) module for wireless communication with the Internet.
  • the display can be, for example, a touchscreen liquid crystal display (LCD), which enables a user to interact with the user interface of the computer terminal 100 (or mobile device).
  • FIG11 illustrates a block diagram of an embodiment using the computer terminal 80 (or mobile device) shown in FIG8 as a service grid.
  • FIG11 is a structural block diagram of a service grid according to an embodiment of the present disclosure.
  • the service grid 1100 is primarily used to facilitate secure and reliable communication between multiple microservices.
  • Microservices refer to the decomposition of an application into multiple smaller services or instances, distributed across different clusters/machines.
  • microservices may include application service instance A and application service instance B, which form the functional application layer of the service grid 1100.
  • application service instance A runs as a container/process 1108 on a machine/workload container group 914 (POD)
  • application service instance B runs as a container/process 910 on a machine/workload container group 916 (POD).
  • application service instance A may be a data copy service
  • application service instance B may be a data copy service.
  • This is a data transfer service.
  • application service instance A and grid proxy (sidecar) 1103 coexist in machine workload container group 914
  • application service instance B and grid proxy 1105 coexist in machine workload container 914
  • Grid proxy 1103 and grid proxy 1105 form the data plane layer of service grid 1100.
  • Grid proxy 1103 and grid proxy 1105 each run as container/process 1104, which can receive request 912 for product query services, and grid proxy 1106.
  • Grid proxy 1103 and application service instance A can communicate bidirectionally
  • grid proxy 1105 and application service instance B can communicate bidirectionally.
  • grid proxy 1103 and grid proxy 1105 can also communicate bidirectionally.
  • all traffic for application service instance A is routed to the appropriate destination via grid proxy 1103, and all network traffic for application service instance B is routed to the appropriate destination via grid proxy 1105.
  • the network traffic mentioned herein includes, but is not limited to, Hypertext Transfer Protocol (HTTP), Representational State Transfer (REST), and the high-performance, general-purpose open source framework (Google Remote Access). Procedure Call (g-RPC), an open-source in-memory data structure storage system (Redis), and other forms.
  • the functionality of the data plane layer can be extended by writing custom filters for the proxy (Envoy) in service mesh 1100.
  • the service mesh proxy configuration can be designed to enable the service mesh to correctly proxy service traffic, achieving service interoperability and service governance.
  • Mesh proxy 1103 and mesh proxy 1105 can be configured to perform at least one of the following functions: service discovery, health checking, routing, load balancing, authentication and authorization, and observability.
  • service mesh 1100 also includes a control plane layer.
  • the control plane layer can be composed of a set of services running in a dedicated namespace, hosted by a managed control plane component 1101 in a machine/workload container group (machine/pod) 1102.
  • machine/pod machine/workload container group
  • managed control plane component 1101 communicates bidirectionally with grid agent 1103 and grid agent 1105.
  • Managed control plane component 1101 is configured to perform certain control and management functions. For example, managed control plane component 1101 receives telemetry data transmitted by grid agent 1103 and grid agent 1105 and can further aggregate this telemetry data.
  • managed control plane component 1101 can also provide a user-oriented application programming interface (API) to facilitate the manipulation of network behavior and provide configuration data to grid agent 1103 and grid agent 1105.
  • API application programming interface
  • user information including but not limited to user device information, user personal information, etc.
  • data including but not limited to data used for analysis, storage, and display, etc.
  • the collection, use, and processing of such data must comply with the relevant laws, regulations, and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or deny.
  • the aforementioned method embodiments are described as a series of combined actions.
  • This computer software product is stored in a storage medium (e.g., ROM/RAM, a magnetic disk, or an optical disk) and includes instructions for enabling a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods of the various embodiments of the present disclosure.
  • a storage medium e.g., ROM/RAM, a magnetic disk, or an optical disk
  • a terminal device which may be a mobile phone, a computer, a server, or a network device, etc.
  • Example 4 According to an embodiment of the present disclosure, a resource configuration device for implementing the resource configuration method shown in FIG. 3 is also provided.
  • FIG12 is a schematic diagram of a resource configuration apparatus according to an embodiment of the present disclosure. As shown in FIG12 , the resource configuration apparatus 1200 may include a first determining unit 1202, a second determining unit 1204, a third determining unit 1206, and a configuring unit 1208.
  • the first determining unit 1202 is configured to determine at least one server for which resources are to be configured.
  • the second determining unit 1204 is configured to determine at least one target network interface card (NIC) matching the server in a resource pool.
  • the third determining unit 1206 is configured to determine the first target link between the target NIC and at least one target data exchange interface in the resource pool.
  • the configuring unit 1208 is configured to, if the link status of the first target link is normal, configure the resources of the target NIC to the server via the corresponding first target link.
  • the first determination unit 1202, second determination unit 1204, third determination unit 1206, and configuration unit 1208 correspond to steps S302 to S308 in Example 1.
  • Example 1 The examples and application scenarios implemented by these three units and the corresponding steps are the same, but are not limited to the content disclosed in Example 1.
  • the above-mentioned units may be hardware components or software components stored in a memory (e.g., memory 1004) and processed by one or more processors (e.g., processors 1002a, 1002b, 1002n).
  • the above-mentioned units may also be part of an apparatus and run in the computer terminal 100 provided in Example 3.
  • a resource configuration device for implementing the resource configuration method shown in FIG. 4 is also provided.
  • FIG. 13 is a schematic diagram of another resource configuration device according to an embodiment of the present disclosure. As shown in FIG.
  • the resource configuration device 1300 may include a sending unit 1302 and an acquiring unit 1304.
  • the sending unit 1302 is configured to send a resource configuration request to the resource output end.
  • the acquiring unit 1304 is configured to acquire resources of the target network card outputted by the resource output end via a first target link in response to the resource configuration request.
  • the link status of the first target link is a normal link status, and the first target link includes a target network card and a target data exchange interface, wherein at least one target network card and at least one target data exchange interface are integrated into a resource pool at the resource output end.
  • the sending unit 1302 and acquiring unit 1304 correspond to steps S402 to S404 in Example 1.
  • the examples and application scenarios implemented by the two units and the corresponding steps are the same, but are not limited to the contents disclosed in Example 1.
  • the above-mentioned units can be hardware components or software components stored in a memory (e.g., memory 1004) and processed by one or more processors (e.g., processors 1002a, 1002b, 1002n).
  • the above-mentioned units can also be part of a device and can be run in the computer terminal 100 provided in Example 3.
  • the target network card and data exchange interface are integrated into a resource pool, creating a resource pooled product. This decouples the target network card from the server.
  • Example 5 Embodiments of the present disclosure may provide a computer terminal, which may be any computer terminal device in a computer terminal group.
  • the computer terminal may be replaced with a terminal device such as a mobile terminal.
  • the computer terminal may be located on at least one of multiple network devices in a computer network.
  • the computer terminal can execute program code for the following steps in the resource configuration method: determining at least one server for which resources are to be configured; determining, in a resource pool, at least one target network card that matches the server; determining the first target link between the target network card and at least one target data exchange interface in the resource pool; and if the link status of the first target link is normal, configuring the resources of the target network card to the server via the corresponding first target link.
  • Figure 14 is a block diagram of a computer terminal according to an embodiment of the present disclosure.
  • the computer terminal A may include: one or more (only one is shown) processors 1402, a memory 1404, and a transmission device 1406.
  • the memory may be used to store software programs and modules, such as program instructions/modules corresponding to the resource configuration method and apparatus in the embodiments of the present disclosure.
  • the processor executes the software programs and modules stored in the memory to execute various functional applications and data processing, thereby implementing the resource configuration method described above.
  • the memory may include a high-performance processor.
  • the random access memory may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • the memory may further include memory remotely located relative to the processor, and such remote memory may be connected to terminal A via a network.
  • the processor may access information and applications stored in the memory via a transmission device to perform the following steps: determining at least one server for which resources are to be configured; determining at least one target network card in a resource pool that matches the server; determining first target links between each target network card and at least one target data exchange interface in the resource pool; and if the link status of the first target link is normal, configuring the resources of the target network card to the server via the corresponding first target link.
  • the processor may also execute program code for the following steps: determining the type of the server; and determining at least one target network card in the resource pool that matches the type.
  • the processor may further execute program code for the following steps: determining a set of network cards integrated in the resource pool, wherein the same server and/or different network cards in the network card set are allowed to provide resources to the same server and/or different servers in the server set, where the different servers include at least one server; determining a target network card in the network card set that at least matches the type.
  • the processor may further execute program code for the following steps: determining resource requirement information for the server according to the type, wherein the resource requirement information indicates the resources required by the server of the type during operation; determining the number of network cards that match the resource requirement information; determining a target network card in the network card set that matches the number of network cards.
  • the processor may further execute program code for the following steps: determining a set of data exchange interfaces integrated in the resource pool, wherein different data exchange interfaces in the data exchange interface set are allowed to form links with different network cards in the network card set; determining a target data exchange interface in the data exchange interface set that is allowed to connect to the target network card; and forming a first target link by combining the target network card, the server, and the target data exchange interface.
  • the processor may further execute program code for the following steps: if at least one of the multiple first target links formed by the target network card, the server, and at least two target data exchange interfaces is in an abnormal link state, maintaining the first target links other than the at least one first target link in a normal link state.
  • the processor may further execute program code for the following steps: if the target network card fails and/or the target data exchange interface fails, determining that the link state of the first target link is an abnormal link state.
  • the processor may further execute program code for the following steps: in response to a hot plug operation, hot plugging the failed target network card and/or the failed target data exchange interface.
  • the processor may further execute program code for the following steps: if the link state of the first target link is a normal link state, connecting the server as an external device to the target data exchange interface to allocate resources of the target network card to the server via the corresponding first target link.
  • the processor may further execute program code of the following steps: in response to the adjustment operation, At least one of the following is adjusted: the set of network cards in the resource pool, the set of data exchange interfaces in the resource pool, and the set of servers to which at least one server belongs.
  • the processor can access information and applications stored in the memory through a transmission device to perform the following steps: sending a resource configuration request to a resource output terminal; obtaining resources of a target network card outputted by the resource output terminal via a first target link in response to the resource configuration request, wherein the link status of the first target link is normal, and the first target link includes a target network card and a target data exchange interface, and the at least one target network card and the at least one target data exchange interface are integrated into the resource pool of the resource output terminal.
  • the network card and the data exchange interface are integrated into the resource pool to implement a resource pool product, thereby separating the network card from the server.
  • the server can configure the target network card on demand through the target data exchange interface, thereby improving resource utilization and reducing costs.
  • a single server can be configured with multiple target network cards to meet high network bandwidth requirements.
  • the structure shown in FIG14 is merely illustrative, and that the computer terminal A may also be a smartphone (such as an Android phone, an iOS phone, etc.), a tablet computer, a PDA, a mobile internet device (MID), a PAD, or other terminal device.
  • FIG14 does not limit the structure of the computer terminal A.
  • the computer terminal A may include more or fewer components (such as a network interface, a display device, etc.) than those shown in FIG14 , or have a configuration different from that shown in FIG14 .
  • all or part of the steps in the various methods of the above embodiments can be completed by a program instructing the hardware associated with the terminal device.
  • the program may be stored in a computer-readable storage medium, which may include a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
  • a computer-readable storage medium which may include a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
  • Embodiment 6 The embodiments of the present disclosure further provide a computer-readable storage medium.
  • the above-mentioned computer-readable storage medium can be used to store the program code executed by the resource configuration method provided in the above-mentioned embodiment 1.
  • the above-mentioned computer-readable storage medium can be located in any computer terminal in a computer terminal group in a computer network, or in any mobile terminal in a mobile terminal group.
  • the computer-readable storage medium is configured to store program code for executing the following steps: determining at least one server for resources to be configured; in a resource pool, determining at least one target network card that matches the server; determining the first target link where the target network card is located with at least one target data exchange interface in the resource pool; if the link state of the first target link is a normal link state, configuring the resources of the target network card to the server via the corresponding first target link.
  • the above-mentioned computer-readable storage medium can also execute program code for the following steps: determining at least one server for resources to be configured; determining at least one target network card that matches the server in a resource pool ...
  • At least one target network card that matches the server in a resource pool determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource pool; determining at least one target network card that matches the server in a resource At least one server with resources; in the resource pool, determining at least one target network card that matches the server; determining first target links between each target network card and at least one target data exchange interface in the resource pool; and if the link status of the first target link is normal, allocating the resources of the target network card to the server via the corresponding first
  • the computer-readable storage medium may further execute program code for the following steps: determining the type of the server; in the resource pool, determining at least a target network card that matches the type.
  • the computer-readable storage medium may further execute program code for the following steps: determining a set of network cards integrated into the resource pool, wherein the same server and/or different network cards in the set of network cards allow resources to be provided to the same server and/or different servers in the set of servers, where the different servers include at least one server; and determining at least a target network card that matches the type in the set of network cards.
  • I/O interface 1505 is also connected to bus 1504. Multiple components within device 1500 are connected to I/O interface 1505, including: input unit 1506, such as a keyboard and mouse; output unit 1504, such as various types of displays and speakers; storage unit 1508, such as a magnetic disk and optical disk; and communication unit 1509, such as a network card, modem, or wireless communication transceiver. Communication unit 1509 allows device 1500 to exchange information/data with other devices via computer networks such as the Internet and/or various telecommunication networks.
  • the programmable processor may be a special-purpose or general-purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, at least one input device, and at least one output device.
  • Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the program code is executed by the processor or controller, the functions/operations specified in the flowcharts and/or block diagrams are implemented.
  • a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • a machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium.
  • Machine-readable media can include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any suitable combination of the foregoing.
  • machine-readable storage media would include electrical connections based on one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read-only memory
  • EPROM or flash memory erasable programmable read-only memory
  • CD-ROM compact disk read-only memory
  • magnetic storage device or any suitable combination of the foregoing.
  • a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display, monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display, monitor) for displaying information to the user
  • a keyboard and pointing device e.g., a mouse or trackball
  • Other types of devices can also be used to provide for user interaction; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
  • the systems and techniques described herein can be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an embodiment of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components.
  • the components of the system can be interconnected by digital data communication in any form or medium (for example, a communication network). Examples of communication networks include: Local Area Network (LAN), Wide Area Network (WAN), and the Internet.
  • a computer system may include a client and a server.
  • the client and the server are generally remote from each other and usually interact through a communication network.
  • the relationship between the client and the server is generated by computer programs running on the corresponding computers and having a client-server relationship with each other.
  • the server can be a cloud server, a server of a distributed system, or a server combined with a blockchain.
  • the disclosed technical content can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of units is merely a logical functional division. In actual implementation, other divisions may be used.
  • multiple units or components may be combined or integrated into another system, or some features may be omitted or not implemented.
  • the coupling or direct coupling or communication connection shown or discussed between them may be through interfaces, or indirect coupling or communication connection between units or modules, and may be electrical or other forms.
  • Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units.
  • the functional units in the various embodiments of this disclosure may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit.
  • the aforementioned integrated units can be implemented in either hardware or software functional units. If the integrated units are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present disclosure, or the portion that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product.
  • This computer software product stored in a storage medium, includes instructions for enabling a computer device (such as a personal computer, server, or network device) to execute all or part of the steps of the various embodiments of the present disclosure.
  • the aforementioned storage media include various media capable of storing program code, such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), removable hard drives, magnetic disks, or optical disks.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了一种资源配置方法、系统、电子设备、存储介质和程序产品。其中,该方法包括:确定待配置资源的至少一服务器;在资源池中,确定与服务器相匹配的至少一目标网卡;确定目标网卡分别与资源池中的至少一目标数据交换接口所处的第一目标链路;如果第一目标链路的链路状态为正常链路状态,则将目标网卡的资源经由对应的第一目标链路配置至服务器。本公开解决了资源配置的灵活性低的技术问题。

Description

资源配置方法、 系统、 电子设备、 存储介质和程序产品 技术领域 本公 开涉及云计算领域, 具体而言, 涉及一种资源配置方法、 系统、 电子设备、 存储介质和程序产品。 背景技术 目前, 网卡可以配合服务器使用, 以实现网络和存储的虚拟化功能, 降低服务器 的中央处理器占用率。 在相 关技术中, 网卡通常是以服务器配件的形态存在,安装在服务器内部,但是, 由于网卡的长度不同, 因而, 对适配的服务器的硬件规格存在一定的要求, 且网卡与 服务器之间的配比无法灵活调整与配置, 从而存在资源配置的灵活性低的技术问题。 针对上述 的问题, 目前尚未提出有效的解决方案。 发明内容 本公开 实施例提供了一种资源配置方法、系统、电子设备、存储介质和程序产品, 以至少解决资源配置的灵活性低的技术问题。 根据本公 开实施例的一个方面, 提供了一种资源配置方法。 该方法可以包括: 确 定待配置资源的至少一服务器;在资源池中,确定与服务器相匹配的至少一目标网卡; 确定目标网卡分别与资源池中的至少一目标数据交换接口所处的第一目标链路; 如果 第一目标链路的链路状态为正常链路状态, 则将目标网卡的资源经由对应的第一目标 链路配置至服务器。 根据本公 开实施例的另一个方面, 还提供了另一种资源配置方法。 该方法可以包 括: 向资源输出端发送资源配置请求; 获取资源输出端响应资源配置请求, 经由第一 目标链路输出的目标网卡的资源, 其中, 第一目标链路的链路状态为正常链路状态, 且第一目标链路包括目标网卡和目标数据交换接口, 至少一目标网卡和至少一目标数 据交换接口集成在资源输出端的资源池中。 才艮据本公开实施例的另一个方面,还提供了一种资源配置系统。该系统可以包括: 资源输出端和服务器集, 其中, 资源输出端, 用于在服务器集中, 确定待配置资源的 至少一服务器; 在资源池中, 确定与服务器相匹配的至少一目标网卡; 确定目标网卡 分别与资源池中的至少一目标数据交换接口所处的第一 目标链路 ; 如果第一目标链路 的链路状态为正常链路状态, 则将目标网卡的资源经由对应的第一目标链路配置至服 务器; 服务器集中的服务器, 用于利用目标网卡的资源运行。 根据本公开 实施例的另一方面, 还提供了一种电子设备, 电子设备可以包括存储 器和处理器:存储器用于存储计算机可执行指令,处理器用于执行计算机可执行指令, 上述计算机可执行指令被处理器执行时, 实现上述任意一项的资源配置方法。 根据本公开 实施例的另一方面, 还提供了一种处理器, 处理器用于运行程序, 其 中, 在程序运行时执行上述任意一项的资源配置方法。 根据本公开 实施例的另一方面, 还提供了一种计算机可读存储介质, 计算机可读 存储介质包括存储的程序, 其中, 在程序运行时控制存储介质所在设备执行上述任意 一项的资源配置方法。 根据本公开 实施例的另一方面, 还提供了一种计算机程序产品, 计算机程序产品 包括计算机程序, 其中, 计算机程序在被处理器执行时执行上述任意一项的资源配置 方法。 根据本公开 实施例的另一方面, 还提供了一种计算机程序产品, 包括非易失性计 算机可读存储介质, 所述非易失性计算机可读存储介质存储计算机程序, 所述计算机 程序被处理器执行时实现本公开各个实施例中的方法。 根据本公开 实施例的另一方面, 还提供了一种计算机程序, 计算机程序被处理器 执行时实现本公开各个实施例中的方法。 在本公开 实施例中, 确定待配置资源的至少一服务器; 在资源池中, 确定与服务 器相匹配的至少一目标网卡; 确定目标网卡分别与资源池中的至少一目标数据交换接 口所处的第一目标链路; 如果第一目标链路的链路状态为正常链路状态, 则将目标网 卡的资源经由对应的第一目标链路配置至服务器。 也即, 在本公开实施例中, 将网卡 和数据交换接口集成在资源池中, 实现资源池化产品, 从而将网卡从服务器中分离出 来, 服务器可通过目标数据交换接口按需配置目标网卡, 从而提升资源利用率, 降低 成本; 或者可以单服务器配置多个目标网卡, 以实现高网络带宽的需求。 通过将目标 网卡从服务器中分离出来, 实现了解耦服务器与智能网卡的物理安装适配的目的, 从 而实现了提高资源配置的灵活性的技术效果,解决了资源配置的灵活性低的技术问题。 容 易注意到的是, 上面的通用描述和后面的详细描述仅仅是为了对本公开进行举 例和解释, 并不构成对本公开的限定。 附图说明 此处所说 明的附图用来提供对本公开的进一步理解, 构成本公开的一部分, 本公 开的示意性实施例及其说明用于解释本公开, 并不构成对本公开的不当限定。 在附图 中: 图 1是根据本公开实施例的一种用于实现资源配置方法的计算机终端 (或移动设 备 ) 的硬件结构框图; 图 2是才艮据本公开实施例的一种资源配置方法的计算环境的结构框图; 图 3是根据本公开实施例的一种资源配置方法的流程图; 图 4是根据本公开实施例的另一种资源配置方法的流程图; 图 5是根据本公开实施例的一种资源配置系统的示意图; 图 6是根据本公开实施例的一种智能网卡的使用场景的示意图; 图 7是根据本公开实施例的另一种智能网卡的使用场景的示意图; 图 8是根据本公开实施例的一种智能网卡池化架构的示意图; 图 9是根据本公开实施例的一种产品智能网卡资源池整机产品的示意图; 图 10是根据本公开实施例的一种用于实现资源配置方法的计算机终端(或移动设 备 ) 的硬件结构框图; 图 11是根据本公开实施例的一种服务网格的结构框图; 图 12是根据本公开实施例的一种资源配置装置的示意图; 图 13是根据本公开实施例的另一种资源配置装置的示意图; 图 14是根据本公开实施例的一种计算机终端的结构框图; 图 15是根据本公开实施例的一种资源配置方法的电子设备的框图。 具体实施方式 为了使本技术领域的人员更好地理解本公开方案, 下面将结合本公开实施例中的 附图, 对本公开实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例 仅仅是本公开一部分的实施例, 而不是全部的实施例。 基于本公开中的实施例, 本领 域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例, 都应当属于 本公开保护的范围。 需要说明的是,本公开的说明书和权利要求书及上述附图中的术语 “第一”、 “第二” 等是用于区别类似的对象, 而不必用于描述特定的顺序或先后次序。 应该理解这样使 用的数据在适当情况下可以互换, 以便这里描述的本公开的实施例能够以除了在这里 图示或描述的那些以外的顺序实施。此外,术语 “包括 ”和 “具有”以及他们的任何变形, 意图在于覆盖不排他的包含, 例如, 包含了一系列步骤或单元的过程、 方法、 系统、 产品或设备不必限于清楚地列出的那些步骤或单元, 而是可包括没有清楚地列出的或 对于这些过程、 方法、 产品或设备固有的其它步骤或单元。 首先, 在对本公开实施例进行描述的过程中出现的部分名词或术语适用于如下解 释: 可编程 的逻辑列阵( Field Programmable Gate Array, 简称为 FPGA), 可以为一种 数字电路; 专用 集成电路(Application Specific Integrated Circuit, 简称为 ASIC), 可以为应 特定用户要求和特定电子系统的需要而设计、 制造的集成电路; 计算快速互连(Compute Express Link, 简称为 CXL), 可以用于提供更高的数据吞 吐量和更低的延迟, 以满足计算和存储系统的需求; 数据处理单元 (Data Processing Unit, 简称为 DPU), 可以用于实现网络虚拟化、 存储虚拟化、 开放式虚拟交换机( Open v Switch, 简称为 OVS)等功能, 可以用于卸 载中央处理器 (Central Processing Unit, 简称为 CPU)计算资源的负荷, 提升 CPU计 算资源的利用率; 片上系统( System on Chip, 简称为 SOC), 可以为由多个具有特定功能的集成电 路组合在一个芯片上形成的系统或产品, 可以包含完整的硬件系统及其承载的嵌入式 软件。 实施例 1 根据本公开 实施例, 提供了一种资源配置方法, 需要说明的是, 在附图的流程图 示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行, 并且, 虽然在流 程图中示出了逻辑顺序, 但是在某些情况下, 可以以不同于此处的顺序执行所示出或 描述的步骤。 本公开 实施例一所提供的方法实施例可以在移动终端、 计算机终端或者类似的运 算装置中执行。 图 1是根据本公开实施例的一种用于实现资源配置方法的计算机终端 (或移动设备)的硬件结构框图。 如图 1所示, 计算机终端 10(或移动设备)可以包 括一个或多个 (图中采用 102a、 102b, > , 102n来示出)处理器 102 (处理器 102 可以包括但不限于微处理器 MCU 或可编程逻辑器件 FPGA等的处理装置)、用于存储 数据的存储器 104、 以及用于通信功能的传输模块 106。 除此以外, 还可以包括: 显示 器、 输入 /输出接口 (I/O接口)、 通用串行总线 ( Universal Serial Bus, 简称为 USB) 端口 (可以作为 BUS 总线的端口中的一个端口被包括)、 网络接口、 电源和 /或相机。 本领域普通技术人员可以理解, 图 1所示的结构仅为示意, 其并不对上述电子装置的 结构造成限定。 例如, 计算机终端 10还可包括比图 1中所示更多或者更少的组件, 或 者具有与图 1所示不同的配置。 应 当注意到的是上述一个或多个处理器 102和 /或其他数据处理电路在本文中通常 可以被称为 “数据处理电路”。 该数据处理电路可以全部或部分的体现为软件、 硬件、 固件或其他任意组合。 此外, 数据处理电路可为单个独立的处理模块, 或全部或部分 的结合到计算机终端 10(或移动设备) 中的其他元件中的任意一个内。 如本公开实施 例中所涉及到的, 该数据处理电路作为一种处理器控制 (例如与接口连接的可变电阻 终端路径的选择)。 存储 器 104可用于存储应用软件的软件程序以及模块, 如本公开实施例中的方法 对应的程序指令 /数据存储装置, 处理器 102通过运行存储在存储器 104内的软件程序 以及模块, 从而执行各种功能应用以及数据处理, 即实现上述实施例中的方法。 存储 器 104可包括高速随机存储器, 还可包括非易失性存储器, 如一个或者多个磁性存储 装置、 闪存、 或者其他非易失性固态存储器。 在一些实例中, 存储器 104可进一步包 括相对于处理器 102远程设置的存储器, 这些远程存储器可以通过网络连接至计算机 终端 10。 上述网络的实例包括但不限于互联网、 企业内部网、 局域网、 移动通信网及 其组合。 传输装置 106用于经由一个网络接收或者发送数据。 上述的网络具体实例可包括 计算机终端 10的通信供应商提供的无线网络。在一个实例中,传输装置 106包括一个 网络适配器 ( Network Interface Controller, 简称为 NIC), 其可通过基站与其他网络设 备相连从而可与互联网进行通讯。 在一个实例中, 传输装置 106 可以为射频 (Radio Frequency, 简称为 RF)模块, 其用于通过无线方式与互联网进行通讯。 显 示器可以例如触摸屏式的液晶显示器( Liquid Crystal Display, 简称为 LCD), 该液晶显示器可使得用户能够与计算机终端 10(或移动设备) 的用户界面进行交互。 图 1示出的硬件结构框图, 不仅可以作为上述计算机终端 10(或移动设备)的示 例性框图, 还可以作为上述服务器的示例性框图, 一种可选实施例中, 图 2以框图示 出了使用上述图 1所示的计算机终端 10(或移动设备)作为计算环境 201中计算节点 的一种实施例。 图 2示出了一种计算环境的结构框图, 如图 2所示, 计算环境 201包 括运行在分布式网络上的多个 (图中采用 210-1 , 210-2, 来示出)计算节点 (如服 务器 )。计算节点都包含本地处理和内存资源,终端用户 202可以在计算环境 201中远 程运行应用程序或存储数据。 应用程序可以作为计算环境 201 中的多个服务 220-1 , 220-2, 220-3和 220-4进行提供, 分别代表服务 “A”, “D”, “E”和 “H”。 终端用户 202可以通过客户端上的 web浏览器或其它软件应用程序提供和访问服 务, 在一些实施例中, 可以将终端用户 202的供应和 /或请求提供给入口网关 230。 入 口网关 230可以包括一个相应的代理来处理针对服务(计算环境 201中提供的一个或 多个服务 ) 的供应和 /或请求。 服务是根据计 算环境 201支持的各种虚拟化技术来提供或部署的。 在一些实施例 中, 可以根据基于虚拟机( Virtual Machine, 简称为 VM)的虚拟化、 基于容器的虚拟 化和 /或类似的方式提供服务。基于虚拟机的虚拟化可以是通过初始化虚拟机来模拟真 实的计算机, 在不直接接触任何实际硬件资源的情况下执行程序和应用程序。 在虚拟 机虚拟化机器的同时, 根据基于容器的虚拟化, 可以启动容器来虚拟化整个操作系统 ( Operating System,简称为 OS),以便多个工作负载可以在单个操作系统实例上运行。 在基 于容器虚拟化的一个实施例中, 服务的若干容器可以被组装成一个 Pod (例 如, Kubemetes Pod)。 举例来说, 如图 2 所示, Pod240- 1,240-2, 240-N(统称为 Pod)。 Pod可以包括代理 245和一个或多个容器
242-1,242-2, 242-M(统称为容器)。 Pod中一个或多个容器处理与服务的一个或 多个相应功能相关的请求, 代理 245通常控制与服务相关的网络功能, 如路由、 负载 均衡等。 在操作过程 中, 执行来自终端用户 202的用户请求可能需要调用计算环境 201中 的一个或多个服务, 执行一个服务的一个或多个功能可能需要调用另一个服务的一个 或多个功能。 如图 2所示, 服务 “A”220-l从入口网关 230接收终端用户 202的用户请 求, 服务 “A”220-l可以调用服务 “D”220-2, 服务 “D”220-2可以请求服务 “E”220-3执行 一个或多个功能。 上述 的计算环境可以是云计算环境, 资源的分配由云服务提供上管理, 允许功能 的开发无需考虑实现、 调整或扩展服务器。 该计算环境允许开发人员在不构建或维护 复杂基础设施的情况下执行响应事件的代码。 服务可以被分割完成一组可以自动独立 伸缩的功能, 而不是扩展单个硬件设备来处理潜在的负载。 在上述运行环境下 , 本公开提供了如图 3所示的资源配置方法。 图 3是根据本公 开实施例的一种资源配置方法的流程图, 如图 3所示, 该方法可以包括如下步骤: 步骤 S302, 确定待配置资源的至少一服务器。 在本公开上述 步骤 S302提供的技术方案中,确定待配置资源的至少一服务器。其 中, 待配置资源可以为输入 /输出 (Input Output, 简称为 10) 资源, 可以为用于描述 计算机系统中用于输入和输出数据的硬件资源或软件资源,比如,可以为硬盘、光盘、 键盘、 鼠标、 打印机、 文件系统、 网络通信、 存储资源等。 服务器可以为云服务器、 裸金属服务器等。 需要说明的是, 此处仅为举例说明, 对待配置资源的类型、 服务器 的类型不做具体限制。 可选地 ,服务器可以按照需求配置待配置资源,可以确定服务器上的 10资源需求, 比如, 网络带宽、 存储容量、 存储带宽等需求。 根据服务器的实际需求, 可以动态配 置 10资源。 在进行资源配置时, 可以确定待配置资源的至少一服务器。 步骤 S304, 在资源池中, 确定与服务器相匹配的至少一目标网卡。 在本公开上述 步骤 S304提供的技术方案中,可以在资源池中,确定与服务器相匹 配的至少一目标网卡。 其中, 资源池可以为网卡资源池, 可以包括多个网卡, 可以用 于对接多个服务器, 其中, 网卡可以为资源卡, 可以为智能网卡或普通网卡, 比如, 可以为 DPU类型的 网卡、 “SOC+FPGA”类型的网卡和 “SOC+ASIC”类型的网卡。 资源 池中与服务器相匹配的目标网卡 ( Network Interface Card, 简称为 NIC)可以为与服务 器相匹配的网卡, 可以配合月艮务器使用, 可以用于实现网络和存储的虚拟化功能, 需 要说明的是, 此处对网卡的类型仅为举例说明, 不对网卡的类型做具体限制。 可选地 , 确定资源池中的多个网卡中, 与服务器相匹配的至少一目标网卡。 举例 而言, 确定待配置资源的至少一服务器, 不同的服务器可能需要不同类型的 网卡, 可以考虑服务器所需的网络连接类型和带宽需求, 以确定与服务器相匹配的至 少一目标网卡。 可选地, 考虑服务器上可用的物理接口类型, 确定与物理接口类型相 匹配的至少一目标网卡。 可选地, 考虑服务器的操作系统和硬件兼容, 确定与其相匹 配的至少一目标网卡。 需要说明的是, 此处仅为举例, 对确定与服务器相匹配的至少 一目标网卡的方式不做具体限制。 步骤 S306,确定目标网卡分别与资源池中的至少一目标数据交换接口所处的第一 目标链路。 在本公开上述 步骤 S306提供的技术方案中,可以确定目标网卡分别与资源池中的 至少一目标数据交换接口所处的第一目标链路。 其中, 目标数据交换接口可以为 CXL 接口 (Switch), 可以用于作为连接目标网卡和服务器的互连接口, 可以用于进行网卡 和服务器的灵活搭配。第一目标链路可以为交换链路或 CXL链路,可以用于传输数据。 可选地 , 将至少一网卡和至少一数据交换接口可以集成在一个产品 (比如, 资源 池 ) 中, 通过数据交换接口实现网卡和服务器的互连, 从而达到将网卡和服务器分离 出来的目的, 确定待配置资源的至少一服务器后, 可以在资源池中, 确定与服务器相 匹配的至少一目标网卡, 以及目标网卡与至少一目标数据交换接口之间的第一目标链 路。 由于网卡的制作成本较高, 将网卡安装在服务器内部, 以实现服务器与网卡的配 置的方式,对服务器的硬件规格有较高要求,要求服务器能支持各种形态的智能网卡, 但是, 该方法不能将网卡的资源充分利用, 造成网卡的带宽资源空闲, 存在资源配置 的灵活性低的技术问题。 为解决上述问题, 在该实施例中, 可以将多个网卡组合成网 卡集, 并集成在资源池中, 以得到资源池化产品, 当需要进行资源的传输时, 确定与 服务器相匹配的至少一目标网卡, 确定目标网卡与至少一目标数据交换接口之间的第 一目标链路, 通过第一目标链路进行数据的传输。 也即, 该实施例利用目标数据交换 接口连接目标网卡与服务器, 从而进行目标网卡与服务器之间资源的传输, 进而解耦 了服务器与智能网卡的物理安装适配的问题。 由上述可知, 该方法无需将网卡安装在 服务器内部, 因此, 可以适配各种类型服务器, 从而实现了提高资源配置的灵活性的 技术效果, 解决了资源配置的灵活性低的技术问题。 步骤 S308 , 如果第一目标链路的链路状态为正常链路状态, 则将目标网卡的资源 经由对应的第一目标链路配置至服务器。 在本公开上述 步骤 S308提供的技术方案中,可以先确定第一目标链路的状态, 以 确定是否可以使用该链路进行数据传输, 如果第一目标链路的链路状态为正常链路状 态, 则可以将目标网卡的资源经由对应的第一目标链路配置至服务器中。 其中, 目标 网卡的资源可以为通过目标网卡进行传输的数据或者流量, 需要说明的是, 此处仅为 举例说明, 不对资源的类型做具体限制。 在该 实施例中, 网卡和服务器通过数据交换接口进行连接, 并非是将网卡安装在 服务器内容以完成网卡和服务器的连接, 在这种情况下, 网卡和服务器的配比可以根 据实际使用情况进行灵活调整与配置。 比如, 可以通过一个或多个数据交换接口动态 的将一张网卡配置给多台服务器, 以降低网卡应用成本; 或者可以通过一个或多个数 据交换接口, 将多张网卡配置给一台服务器, 以实现高性能网络, 从而实现了提高资 源配置的灵活性的技术效果, 解决了资源配置的灵活性低的技术问题。 通过本公开上述步骤 S302至步骤 S308, 确定待配置资源的至少一服务器; 在资 源池中, 确定与服务器相匹配的至少一目标网卡; 确定目标网卡分别与资源池中的至 少一目标数据交换接口所处的第一目标链路 ; 如果第一目标链路的链路状态为正常链 路状态, 则将目标网卡的资源经由对应的第一目标链路配置至服务器。 也即, 在本公 开实施例中, 将网卡和数据交换接口集成在资源池中, 实现资源池化产品, 从而将网 卡从服务器中分离出来, 服务器可通过目标数据交换接口按需配置目标网卡, 从而提 升资源利用率, 降低成本; 或者可以单服务器配置多个目标网卡, 以实现高网络带宽 的需求。 通过将目标网卡从服务器中分离出来, 实现了解耦服务器与智能网卡的物理 安装适配的目的, 从而实现了提高资源配置的灵活性的技术效果, 解决了资源配置的 灵活性低的技术问题。 下 面对该实施例的上述方法进行进一步的介绍。 作为一种可选 的实施方式, 步骤 S304, 在资源池中, 确定与服务器相匹配的至少 一目标网卡, 包括: 确定服务器的类型; 在资源池中, 确定至少与类型相匹配的目标 网卡。 在该 实施例中, 网卡的形态、 长度存在差异, 由于不同类型的网卡可以与不同类 型的服务器匹配, 因此, 可以通过以下步骤确定与服务器相匹配的至少一目标网卡: 可以确定服务器的类型, 将资源池中至少与服务器的类型相匹配的网卡, 确定为目标 网卡。 其中, 服务器的类型可以用于确定服务器的接口型号、 服务器的资源需求信息 等, 需要说明的是, 此处仅为举例说明, 不对服务器的类型做具体限制。 可 选地, 网卡通常以服务器配件的形态存在 , 比如, 可以以类似于总线标准 ( Peripheral Component Interconnect, 简称为 PCIe )标卡的形态存在, 但由于智能网卡 的长度不同, 比如, 有的智能网卡的长度类型为半长, 有的智能网卡的长度类型为 3/4 长, 因此, 网卡对适配的服务器有一定的要求。在该实施例中,可以直接从资源池中, 确定至少与服务器类型相匹配的目标网卡, 利用目标网卡进行资源的传输与通信。 举例 而言, 如果某台服务器需要高速万兆以太网连接, 并且具有 PCIe3.0接口, 那么可以在资源池可以中选择一张支持万兆以太网连接, 并且具有 PCIe3.0接口的目 标网卡, 以确保与服务器相匹配。 作为一种可选 的实施方式, 在资源池中, 确定至少与类型相匹配的目标网卡, 包 括: 确定集成在资源池中的网卡集, 其中, 网卡集中不同网卡允许向服务器集中相同 服务器和 /或不同服务器提供资源,相同服务器和 /或不同服务器包括至少一服务器;在 网卡集中, 确定至少与类型相匹配的目标网卡。 在该 实施例中, 在资源池中集成有网卡集。 可以在网卡集中, 确定至少与服务器 的类型相匹配的目标网卡。 其中, 网卡集中可以包括至少一网卡, 可以为至少一智能 网卡或者至少一普通网卡, 也可以包括至少一智能网卡和至少一普通网卡, 此处不对 网卡集中网卡的类型做具体限制。 可选地 , 网卡集中不同网卡允许向服务器集中的相同服务器和 /或不同服务器提供 资源, 相同服务器和 /或不同服务器至少包括待配置资源的至少一服务器。 在该 实施例中,可以将 CXL Switch及一个或者多个网卡集成在一个资源池中,通 过 CXL Switch连接网卡和服务器,以使得网卡集中不同网卡允许向服务器集中相同服 务器和 /或不同服务器提供资源,从而达到将安装在每一台服务器中的智能网卡分离出 来, 实现解耦的目的,进而解决业界多厂家, 多品牌, 多类型的服务器与网卡的连接。 举例 而言, 4丈设某个数据中心中有一个资源池, 该资源池中集成有网卡集, 网卡 集中包含有多种类型的网卡, 数据中心中有多种类型的服务器, 每个服务器的网络需 求存在差异。 在选择与服务器相匹配的目标网卡时, 确定每个服务器的网络需求, 比 如, 确定服务器需要的网络带宽、 接口类型等。 根据服务器的需求, 选择网卡集中与 服务器相匹配的目标网卡, 选择的该目标网卡可以满足月艮务器的网络需求, 并且与服 务器的接口相匹配。 在该 实施例中, 在资源池中集成网卡集, 网卡集中可以包含多个网卡, 从而将多 个网卡组合成资源池化产品, 解耦服务器与智能网卡的物理安装适配, 达到可以适配 各类型服务器的目的。 作为一种可选 的实施方式, 在网卡集中, 确定至少与类型相匹配的目标网卡, 包 括: 按照类型确定服务器的资源需求信息, 其中, 资源需求信息用于表示类型的服务 器在运行过程中所需的资源; 确定与资源需求信息相匹配的网卡数量; 在网卡集中, 确定网卡数量的目标网卡。 在该 实施例中, 可以按照服务器的类型确定服务器的资源需求信息, 确定与资源 需求信息相匹配的网卡数量, 在网卡集中, 可以确定网卡数量的目标网卡。 其中, 资 源需求信息可以用于表示类型的服务器在运行过程中所需的资源, 可以用于确定服务 器的功能需求或场景需求, 可以用于确定服务器所需的硬件设备和资源规格, 比如, 可以为网络带宽需求、 存储容量需求、 处理器性能需求和内存大小需求等, 需要说明 的是, 此处仅为举例说明, 不对资源需求信息的类型做具体限制。 目标数量可以为一 个, 也可以为多个。 可选地 , 上述目标网卡可以是单一设备的网卡, 也可以是单一或多个数据交换机 上多个接口上的单个或多个 SOC和单个或多个 FPGA或 ASIC组成的网卡, 比如, 可 以为由 1个 S0C+1个 FPGA组成的网卡、可以为由 2个 S0C+1个 FPGA组成的网卡、 可以为由 1个 S0C+2个 FPGA组成的网卡、 可以为由 DPU独立组成的一个网卡, 需 要说明的是, 此处网卡的组成情况仅为举例说明, 可以根据实际情况灵活配置, 此处 不做具体限制。 由于网卡的制作成本高, 如果将网卡与服务器按照 1:1 的比例进行配比, 比如, 一个网卡匹配一个服务器, 则会增加硬件成本, 且在许多应用场景中, 服务器并不需 要一个网卡全部的待配置资源, 从而会造成网卡资源的浪费。 为解决上述问题, 在该 实施例中, 将多个网卡作为资源池应用, 确定与服务器的类型相匹配的目标网卡, 从 而达到支持对接多个服务器的目的, 同时, 可以根据服务器的资源需求信息, 确定网 卡数量的目标网卡,从而使得服务器可以按需配置待配置资源,达到提升资源利用率, 降低平均成本的目的。 可选地 , 该实施例不仅可以对多个服务器配置多个网卡, 还可以根据实际需要。 对单服务器配置一个或多个网卡, 通过对单服务器配置多个网卡, 实现了高网络带宽 的需求。 可选 地, 按照类型确定服务器的资源需求信息, 可以根据资源需求信息和 CXL Switch, 确定网卡数量。 也即, 网卡数量不仅与资源需求信息相匹配, 还可以与 CXL Switch相匹配。 举例 而言, 假设某个数据中心有一个资源池, 其中包含不同类型和规格的网卡。 现有一台服务器, 其资源需求信息是需要两个万兆以太网接口, 支持 PCIe3.0接口规 格。 因此, 可以根据服务器的资源需求信息和 CXL Switch, 确定网卡数量, 比如, 可 以为两张支持万兆以太网接口并且具有 PCIe3.0接口规格的网卡。 在资源池的网卡集 中, 选择两张支持万兆以太网接口并且具有 PCIe3.0接口规格的网卡。 由于目标网卡与服务器均是通过 CXL接口连接, 因此, 可以根据 CXL接口及功 能需求, 灵活配比服务器与目标网卡的配比数量, 可以按功能需求配置网络高性能组 合, 或是通用低成本组合, 从而实现了提高资源配置的灵活性的技术效果, 解决了资 源配置的灵活性低的技术问题。 作 为一种可选的实施方式, 确定目标网卡分别与资源池中的至少一目标数据交换 接口所处的第一目标链路, 包括: 确定集成在资源池中的数据交换接口集, 其中, 数 据交换接口集中不同数据交换接口允许与网卡集中不同网卡组成链路; 在数据交换接 口集中, 确定允许与目标网卡相连接的目标数据交换接口; 将目标网卡、 服务器和目 标数据交换接口, 组成第一目标链路。 在该 实施例中, 可以确定集成在资源池中的数据交换接口集, 在数据交换接口集 中, 确定允许与目标网卡相连接的目标数据交换接口, 可以将目标网卡、 服务器和目 标数据交换接口, 组成第一目标链路。 其中, 数据交换接口集可以用于实现服务器和 网卡的灵活搭配, 可以用 CXL Switch —、 CXL Switch二表示, 需要说明的是, 此处 仅为举例说明, 对数据交换接口集的表现形式不做具体限制。 可选地 , 以 CXL接口交换 (可以简称为 CXL交换 )作为互联核心, 将 CXL接口 作为数据交换接口, 下行连接服务器, 上行连接网卡集中的网卡, 且数据交换接口集 中不同数据交换接口允许与网卡集中不同网卡组成链路。 网卡集中的网卡与服务器均 是通过 CXL接口连接, 因此, 通过 CXL接口可以实现服务器与网卡的灵活搭配。 可选地 , 网卡集中的智能网卡、 FPGA卡, DPU等资源卡可以相互独立, 但网卡 集中的网卡在虚拟池化后,通过配置 CXL的交换路径,可以分别连接到多个服务器中。 每个服务器也可以连接多个网卡。 也即, 在该实施例中, 通过 CXL接口, 使得网卡无 需以服务器配件的形态存在, 从而可以灵活配比服务器与智能网卡的配比数量。 举例 而言, 确定与目标网卡一 ( Node 1 SOC )相连接的目标数据交换接口为 CXL Switch — , 因此, 将目标网卡和目标数据交换接口, 组成第一目标链路, 通过第一目 标链路, 可以将 Node 1 SOC的资源传输至服务器一中。 作为一种可选 的实施方式, 在目标网卡、 服务器和至少两个目标数据交换接口所 组成的多条第一目标链路中, 如果至少一条第一目标链路为异常链路状态, 则多条第 一目标链路中除至少一条第一目标链路之外的第一目标链路保持正常链路状态。 在该 实施例中, 目标网卡、 服务器, 分别和至少两个目标数据交换接口组成第一 目标链路, 得到多条第一目标链路, 该多条第一目标链路可以同时独立工作。 在多条 第一目标链路中, 如果至少一条第一目标链路为异常状态, 则多条第一目标链路中的 其他第一目标链路可以保持正常链路状态。 通过正常链路状态的第一目标链路可以进 行资源的传输。 需要说明的是, 此处不限制目标网卡的数量、 服务器的数量和目标数 据交换接口的数量, 上述组件的数量可以是 1个, 也可以是 2个及以上。 举例 而言, 如果有两个以上目标数据交换接口, 目标网卡一和服务器一至少分别 与两个及以上目标数据交换接口形成第一目标链路, 得到两条及以上第一目标链路, 该两条及以上第一目标链路同时工作。 可选地, 上述目标网卡-数据交换接口-服务器 形成的两条及以上第一目标链路, 如果其中任意第一目标链路异常, 其他第一目标链 路不受影响, 仍然为正常链路状态, 从而使得服务器 -数据交换设备-网卡构成的信息 交互不中断, 可以通过其他正常的第一目标链路进行资源的传输。 可选地 , 如果第一目标链路的链路状态为异常链路状态, 则在不同数据交换接口 与不同网卡之间组成的链路中, 确定与服务器相匹配的另一第一目标链路; 如果另一 第一目标链路的链路状态为正常链路状态, 则可以将目标网卡的资源经由对应的第一 目标链路配置至服务器。 在该 实施例中,两个及以上的网卡的使用,可以实现服务器加网卡的冗余,同时, 为了避免单点故障导致数据传输中断的问题, 提出了两个及以上的数据交换接口, 以 实现服务器例的互联冗余。 举例 而言, 如果有两个以上目标数据交换接口, 两个及以上目标网卡和两个及以 上服务器, 则目标网卡和服务器至少分别与两个及以上目标数据交换接口形成第一目 标链路, 得到两条及以上第一目标链路, 该两条及以上第一目标链路同时独立工作。 可选地 , 如果存在一第一目标链路的链路状态为异常链路状态, 则通过其余处于 正常链路状态下的第一目标链路, 将目标网卡的资源配置至服务器中。 也即, 当 CXL Switch或是网卡发生单点故障时, 为了保证数据传输通路不受影响中断, 可以通过其 他正常链路状态下的链路进行资源的传输, 随着 CXL Switch和智能网卡数量的增加, 冗余路径更多, 可更大程度上的降低单点故障带来的影响。 可选地 , 资源池中可以包括多个数据连接接口以及多个网卡, 相同网卡可以和不 同数据连接接口进行连接, 且相同数量连接接口可以与不同网卡连接, 因此, 当网卡 和数据交换接口之间的链路存在异常时, 可以利用其余正常链路状态的链路进行资源 的传输。 需要说明的是, CXL Switch和网卡的数量可以根据需求进行设置与选择, 此 处不做具体限制。 在该 实施例中, 每个 CXL Switch可以分别与每个网卡连接, 当一条 CXL交换链 路 (比如, 第一目标链路) 出现异常, 导致 CXL 交换链路断开后, 可以通过另一个 CXL 交换链路进行资源的传输。 作 为一种可选的实施方式, 如果目标网卡发生故障, 和 /或, 目标数据交换接口发 生故障, 则确定第一目标链路的链路状态为异常链路状态。 在该 实施例中, 如果目标网卡或目标数据交换接口其中之一发生单点故障, 可以 确定第一目标链路的链路状态为异常链路状态。 或者, 如果目标网卡和目标数据交换 接口均发生故障, 则可以确定第一目标链路的链路状态为异常链路状态。 作 为一种可选的实施方式, 响应于热插拔操作, 对发生故障的目标网卡, 和 /或, 发生故障的目标数据交换接口, 进行热插拔操作。 在该 实施例中, 通过网卡和数据交换接口上下行的冗余设计, 增加了系统的可靠 性的同时, 在 CXL Switch或智能网卡单点链路故障时, 不会导致数据传输中断, 可以 通过热插拔操作对发生故障的目标网卡, 和 /或, 发生故障的目标数据交换接口, 进行 更换。 其中, 热拔插操作可以指在资源配置的过程中, 可以随时更换发生故障的目标 网卡, 和 /或, 发生故障的目标数据交换接口, 而不需要重启系统或关闭设备, 从而实 现单点故障的不停机维护。 作 为一种可选的实施方式, 步骤 S308, 如果第一目标链路的链路状态为正常链路 状态, 则将目标网卡的资源经由对应的第一目标链路配置至服务器, 包括: 如果第一 目标链路的链路状态为正常链路状态, 则将服务器作为外接设备, 连接至目标数据交 换接口 , 以将目标网卡的资源经由对应的第一目标链路配置至服务器。 举例 而言, 如果第一目标链路的链路状态为正常链路状态, 则可以将服务器作为 外接设备, 通过计算表达链接接口 ( Compute Express Link Interface , 简称为 CXL Interface ) 以电缆 ( Cable ) 的方式, 连接至目标数据交换接口, 以将目标网卡的资源 经由对应的第一目标链路配置至服务器。 需要说明的是, 此处仅为举例说明, 对服务 器连接至目标数据交换接口的方式不做具体限制。 可选地 , 服务器可以通过 CXL链路与 CXL Switch连接, 再连接到网卡等资源。 CXL Switch 与网卡等资源卡可以形成连接链路, 服务器可以作为外接设备, 连接到 CXL Switch上。 作为一种可选 的实施方式, 该方法还可以包括: 响应于调整操作, 对以下至少之 一进行调整: 资源池中的网卡集、 资源池中的数据交换接口集、 至少一服务器所属的 服务器集进行调整。 在该 实施例中, 可以通过调整操作, 灵活的调整资源池中的网卡集、 资源池中的 数据交换接口集、 至少一服务器所属的服务器集。 其中, 调整操作可以为增加或减少 操作, 也可以为移入、 移出操作, 此处仅为举例说明, 对调整操作的类型不做具体限 制。 可选地 , 该实施例以 CXL 为交换核心, 根据硬件系统需求设计, 可以灵活增加 CXL Switch及网卡数量, 也可以灵活扩展支持的服务器设备数量, 通过可以灵活增减 网卡数量及服务器数量, 以实现性能及成本的合理配置。 在该 实施例中, 通过增加数据交换接口, 实现了网卡与服务器的互连, 扩大了资 源池, 可灵活实现服务器与网卡的任意配置, 也可实现服务器与网卡的冗余设置, 提 升了系统的可靠性。 同时, 支持热插拔维护, 可以实现在线故障维修, 在线改配。 通 过将网卡资源池产品化为独立的产品,从而解决了网卡与各种类型服务器适配的问题, 进而实现了提高资源配置的灵活性的技术效果, 解决了资源配置的灵活性低的技术问 题。 在该 实施例中, 将网卡和数据交换接口集成在资源池中, 实现资源池化产品, 从 而将网卡从月艮务器中分离出来, 服务器可通过目标数据交换接口按需配置目标网卡, 从而提升资源利用率, 降低成本; 或者可以单服务器配置多个目标网卡, 以实现高网 络带宽的需求。 通过将目标网卡从服务器中分离出来, 实现了解耦服务器与智能网卡 的物理安装适配的目的, 从而实现了提高资源配置的灵活性的技术效果, 解决了资源 配置的灵活性低的技术问题。 本公开 实施例还提供了另一种资源配置方法, 该方法可以应用于服务器伽 1 , 图 4 是才艮据本公开实施例的另一种资源配置方法的流程图, 如图 4所示, 该方法可以包括 以下步骤: 步骤 S402, 向资源输出端发送资源配置请求。 在本公开上述步骤 S402提供的技术方案中,可以向资源输出端发送资源配置请求。 其中, 资源输出端可以为网卡池化架构, 可以用于处理资源配置请求, 以从资源池中 分配相应的资源。 步骤 S404, 获取资源输出端响应资源配置请求, 经由第一目标链路输出的目标网 卡的资源, 其中, 第一目标链路的链路状态为正常链路状态, 且第一目标链路包括目 标网卡和目标数据交换接口 , 至少一目标网卡和至少一目标数据交换接口集成在资源 输出端的资源池中。 在本公开上述步骤 S404提供的技术方案中,资源输出端的资源池中集成有至少一 目标网卡和至少一目标数据交换接口。 第一目标链路包括目标网卡和目标数据交换接 口。 当第一目标链路的链路状态为正常链路状态时, 资源输出端响应资源配置请求, 可以通过第一目标链路输出目标网卡的资源至服务器中。 服务器获取资源输出端输出 的资源。 通过本公开上述步骤 S402至步骤 S404, 向资源输出端发送资源配置请求; 获取 资源输出端响应资源配置请求, 经由第一目标链路输出的目标网卡的资源, 其中, 第 一目标链路的链路状态为正常链路状态, 且第一目标链路包括目标网卡和目标数据交 换接口, 至少一目标网卡和至少一目标数据交换接口集成在资源输出端的资源池中。 也即, 在该实施例中, 将网卡和数据交换接口集成在资源输出端的资源池中, 实现资 源池化产品, 从而将网卡从月艮务器中分离出来, 服务器通过目标数据交换接口按需配 置目标网卡, 可以获取资源输出端响应资源配置请求, 经由第一目标链路输出的目标 网卡的资源,从而提升资源利用率,降低成本;或者可以单服务器配置多个目标网卡, 以实现高网络带宽的需求。 通过将目标网卡从服务器中分离出来, 实现了解耦服务器 与智能网卡的物理安装适配的目的, 从而实现了提高资源配置的灵活性的技术效果, 解决了资源配置的灵活性低的技术问题。 实施例 2 根据本公开 实施例, 还提供了一种资源配置系统的实施例, 图 5是根据本公开实 施例的一种资源配置系统的示意图, 如图 5所示, 资源配置系统 500可以包括: 资源 输出端 502和服务器集 504。 在该 实施例中,资源输出端可以在服务器集中,确定待配置资源的至少一服务器; 在资源池中, 确定与服务器相匹配的至少一目标网卡; 确定目标网卡分别与资源池中 的至少一目标数据交换接口所处的第一目标链路 ; 如果第一目标链路的链路状态为正 常链路状态, 则将目标网卡的资源经由对应的第一目标链路配置至服务器。 可选地 , 资源输出端可以包含多个网卡和数据交换接口, 可以以数据交换接口作 为互连接口, 以连接网卡和服务器。 在该 实施例中, 服务器集中的服务器, 可以利用目标网卡的资源运行。 可选地 , 服务集可以包括多个服务器, 多个服务器之间可以利用相同的数据交换 接口,也可以利用不同的数据交换接口进行数据传输 ,可以获取相同的网卡中的资源, 也可以获取不同网卡中的资源。 作 为一种可选的实施方式, 资源输出端, 包括: 目标网卡所属的网卡集, 用于向 服务器集中相同服务器和 /或不同服务器提供资源; 目标数据交换接口所属的数据交换 接口集, 用于向相同服务器和 /或不同服务器传输来自网卡集的资源, 其中, 数据交换 接口集中不同数据交换接口允许与网卡集中不同网卡组成链路。 在该 实施例中, 资源输出端中可以包括目标网卡所属的网卡集以及目标数据交换 接口所属的数据交换接口集。 可选地 , 网卡集可以通过数据交换接口集中的数据交换接口向服务器集中相同服 务器和 /或不同服务器提供资源。 可选地 ,数据交换接口集中相同服务器和 /或不同数据交换接口允许与网卡集中不 同的网卡组成链路。 在该 实施例中, 网卡与服务器可以通过 CXL接口 (也即, 数据交换接口)连接, 从而将网卡从服务器上分离出来, 通过这种方式, 可以灵活配比服务器与智能网卡的 配比数量, 按功能需求配置网络高性能组合, 或是通用低成本组合。 在该 实施例中, 通过资源输出端, 在服务器集中, 确定待配置资源的至少一服务 器; 在资源池中, 确定与服务器相匹配的至少一目标网卡; 确定目标网卡分别与资源 池中的至少一目标数据交换接口所处的第一 目标链路 ; 如果第一目标链路的链路状态 为正常链路状态, 则将目标网卡的资源经由对应的第一目标链路配置至服务器; 通过 服务器集中的服务器, 利用目标网卡的资源运行。 也即, 在该实施例中, 将网卡和数 据交换接口集成在资源输出端的资源池中, 实现资源池化产品, 从而将网卡从服务器 中分离出来, 月艮务器通过目标数据交换接口按需配置目标网卡, 可以获取资源输出端 响应资源配置请求, 经由第一目标链路输出的目标网卡的资源, 或者可以单服务器配 置多个目标网卡, 以实现高网络带宽的需求, 从而实现了提高资源配置的灵活性的技 术效果, 解决了资源配置的灵活性低的技术问题。 实施例 3 网卡可以包括智能网卡和普通网卡, 在该实施例中, 以智能网卡为例, 对本公开 实施例进行进一步的举例说明。 当前的智能网卡, 可以配合云服务器使用, 可以实现网络和存储的虚拟化功能, 降低服务器的中央处理器占用率, 提升裸金属服务器和弹性计算的性能。 但是, 智能 网卡通常是以服务器配件的形态存在, 比如, PCIe标卡, 但由于其长度不同, 比如, 半长或 3/4长, 因此, 对适配的服务器有一定的要求; 且智能网卡成本高, 与服务器 1 : 1配比的方案大大增加了硬件成本, 有很多应用场景不需要这么高的 10资源, 从而 造成智能网卡的资源浪费。 图 6是根据本公开实施例的一种智能网卡的使用场景的示意图, 如图 6所示, 在 相关技术中,通常是将智能网卡 ( Smart NIC )601安装在服务器 602内部 ,通过 PCIe603 , 完成智能网卡 601和中央处理器 604之间资源的传输, 实现服务器与智能网卡 1 : 1或 是 1 :N的配置, 但是, 该方法对服务器的硬件规格有要求, 要求服务器能支持各种形 态的智能网卡, 不能对智能网卡的资源充分利用, 会造成智能网卡的带宽资源空闲的 问题。图 7是根据本公开实施例的另一种智能网卡的使用场景的示意图,如图 7所示, 可以将智能网卡独立成一个盒装 ( BOX )产品, 比如, 智能网卡盒 701 , 智能网卡可 以下挂多个服务器, 比如, 服务器 702 服务器 70n, 此种配置可以实现服务器 与智能网卡 1 : 1或是 N: 1的配置,可以将 1个智能网卡的资源分配给多个服务器使用, 提高资源利用率, 降低成本, 但是该方法无法冗余设计, 一旦智能网卡出现故障, 下 挂的多台服务器的数据传输或处理过程都将受影响,导致数据传输中断,故障范围大, 可靠性低。 为解决上述问题, 在该实施例中, 提出一种智能网卡池化架构, 该架构将多个网 卡作为资源池应用, 确定与服务器的类型相匹配的目标网卡, 从而达到支持对接多个 服务器的目的, 同时, 可以根据服务器的资源需求信息, 确定网卡数量的目标网卡, 从而使得服务器可以按需配置待配置资源, 达到提升资源利用率, 降低平均成本的目 的。 通过对单服务器配置多个智能网卡, 实现了高网络带宽的需求, 从而实现了 10冗 余, 解决了单点故障导致的数据传输中断的问题, 提升了系统的可靠性, 进而解决了 资源配置的灵活性低的技术问题, 实现了提高资源配置的灵活性低的技术效果。 下面对智能网卡池化架构进行进一步介绍。 图 8是根据本公开实施例的一种智能网卡池化架构的示意图, 如图 8所示, 数据 交换接口 801上行分别连接智能网卡 802( Node 1 SOC )、智能网卡 803( Node N SOC ). 智能网络 804 ( Node 1 FPGA )、 智能网卡 805 ( Node N FPGA )、 智能网卡 806 ( Node 1 DPU )和智能网卡 807 ( Node N DPU ), 下行分别连接服务器 808和服务器 809。 数据 交换接口 810上行分别连接智能网卡 802( Node 1 SOC )、智能网卡 803( Node N SOC ). 智能网络 804 ( Node 1 FPGA )、 智能网卡 805 ( Node N FPGA )、 智能网卡 806 ( Node 1 DPU )和智能网卡 807 ( Node N DPU ),下行分别连接服务器 808和服务器 809。其中, 数据交换接口可以为 CXL接口, 类型可以为 CXLx4\x8\xl6。 需要说明, 图中智能网 卡、 数据交换接口和服务器的数量仅为举例说明, 此处不做具体限制。 可选地 , 该实施例以 CXL交换作为互联核心, 将 CXL接口作为数据交换接口, 下行连接服务器,上行连接网卡集中的智能网卡 (比如, DPU、 SOC+FPGA. SOC+ASIC ), 且数据交换接口集中不同数据交换接口允许与网卡集中不同网卡组成链路。 网卡集中 的网卡与服务器均是通过 CXL接 口连接, 因此, 通过 CXL接口可以实现服务器与网 卡的灵活搭配。 可选地 , 网卡集中的智能网卡、 FPGA卡, DPU等资源卡可以相互独立, 但网卡 集中的网卡在虚拟池化后,通过配置 CXL的交换路径,可以分别连接到多个服务器中。 每个服务器也可以连接多个网卡。 也即, 在该实施例中, 通过 CXL接口, 使得网卡无 需以服务器配件的形态存在, 从而可以灵活配比服务器与智能网卡的配比数量。 在该 实施例中, 两个及以上的网卡的使用, 可以实现服务器加智能网卡的冗余, 同时, 为了避免单点故障导致数据传输中断的问题, 提出了两个及以上的数据交换接 口, 以实现服务器例的互联冗余。 在该 实施例中, 当 CXL Switch或是智能网卡发生单点故障时, 为了保证数据传输 通路不受影响中断, 可以通过其他正常链路状态下的链路进行资源的传输, 随着 CXL Switch和智能网卡数量的增加, 冗余路径更多, 可更大程度上的降低单点故障带来的 影响。 可选地 , 如图 8所示, 每个 CXL Switch都与每个智能网卡连接, 因此, 当 CXL Switch或是智能网卡发生单点故障时,则可以通过另一个 CXL Switch进行数据的传输, 从而使得数据传输通路不受影响中断, 达到避免通路受影响的目的。 可选地 , 随着架构中 CXL Switch和智能网卡数量的增加, 冗余路径更多, 可降低 单点故障带来的影响。 如 图 8所示, 在该实施例中, 可以将 CXL Switch及智能网卡集成在一个产品中, 实现智能网卡的资源池, 从而将智能网卡从安装在每一台服务器中分离出来, 实现解 耦, 解决业界多厂家, 多品牌, 多类型的服务器与智能网卡的连接。 可选地 , 服务器可以通过 CXL链路与 CXL Switch连接, 再连接到网卡等资源。 CXL Switch 与网卡等资源卡可以形成连接链路, 服务器可以作为外接设备, 连接到 CXL Switch上。 举例 而言, 以配置为 2个 CXL交换, 6个智能网卡, 支持 16台服务器为例, 图 9 是根据本公开实施例的一种产品智能网卡资源池整机产品的示意图, 图 8对应的后视 图、 俯视图和前视图, 如图 9所示, 以 2单元(Unit, 简称为 U) 高度的标准服务器 进行设计,服务器通过后视图中 CXL接口 901以 Cable的方式分别与数据交换接口节 点 902、 数据交换接口节点 903相连接, 其中, 数据交换接口节点与数据交换接口一 一对应。根据俯视图可知, 在 CXL交换板 904上可以部署有多个数据交换接口, 该架 构中还可以包含散热风扇用于散热、 电源供应单元 905 ( Power Supply Unit, 简称为 PSU )、 管理交换机模块 906、 智能网卡 907、 智能网卡 908和智能网卡 909.根据前视 图可知,该架构还可以包括智能网卡节点 910、智能网卡节点 911、智能网卡节点 912、 智能网卡节点 913、 智能网卡节点 914 和智能网卡节点 915 和资源管理节点 916 ( Resource Management Committee Node , 简称为 RMC Node)。 可选地 ,该架构可以用于支持图 8中包含的部分,可实现 CXL交换节点和智能网 卡节点的热插拔维护, 实现单点故障的不停机维护, 也可以灵活扩容智能网卡及挂载 的服务器数量。 需要说明的是, 实际产品可以根据架构 CXL Switch及智能网卡需求进行配置, 比 如,可以通过增加产品高度等方式实现, 实际能配置的智能网卡数量可以根据 CXL的 端口及 CXL通道 (Lane)数量来决定的, 此处不对数据传输端口和网卡数量做具体 限制。 在该 实施例中, 通过增加 CXL交换, 实现智能网卡与服务器的互连, 扩大了智能 网卡资源池, 可灵活实现服务器与智能网卡 M:N的任意配置, 可实现冗余功能, 提升 了系统的可靠性。 同时, 支持热插拔维护, 可以实现在线故障维修, 在线改配。 智能 网卡资源池产品化为独立的产品, 也解决了与各种类型服务器的适配问题。 在该 实施例中, 将多个智能网卡组合成资源池化产品, 解耦服务器与智能网卡的 物理安装适配, 可以适配业界各类型服务器; 池化架构以 CXL为交换核心, 根据硬件 系统需求设计,可以灵活增加 CXL Switch及智能网卡数量,扩展支持的服务器设备数 量; 可以灵活增减智能网卡数量及月艮务器数量实现性能及成本的合理配置, 具有一定 的扩展伸缩性。 可选地 , 在智能网卡层面, 若以 SOC+FPGA/ASIC 的架构, 可以灵活配比 SOC 与 FPGA/ASIC的数量, 实现智能网卡层面的灵活配比, 进一步降低成本。 在该 实施例中, 通过增加 CXL交换(也即, 数据交换接口), 实现了网卡与服务 器的互连, 扩大了资源池, 可灵活实现服务器与网卡的任意配置, 也可实现服务器与 网卡的冗余设置, 提升了系统的可靠性。 同时, 支持热插拔维护, 可以实现在线故障 维修, 在线改配。 通过将网卡资源池产品化为独立的产品, 从而解决了网卡与各种类 型服务器适配的问题, 进而实现了提高资源配置的灵活性的技术效果, 解决了资源配 置的灵活性低的技术问题。 本公开 实施例 1所提供的方法实施例可以在移动终端、 计算机终端或者类似的运 算装置中执行。图 10是根据本公开实施例的一种用于实现资源配置方法的计算机终端 (或移动设备)的硬件结构框图, 如图 10所示, 计算机终端 100(或移动设备)可以 包括一个或多个 (图中采用 1002a、 1002b, > , 1002n来示出)处理器 1002可以包 括但不限于微处理器 ( Micro controller Unit, 简称为 MCU)或可编程逻辑器件(Field Programmable Gate Array ,简称为 FPGA)等的处理装置、用于存储数据的存储器 1004、 以及用于通信功能的传输装置 1006。 除此以外, 还可以包括: 显示器、 输入 /输出接口 ( I/O接口)、 通用串行总线( Universal Serial Bus, 简称为 USB)端口 (可以作为 BUS 总线的端口中的一个端口被包括 )、 网络接口、 电源和 /或相机。 本领域普通技术人员 可以理解,图 10所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如, 计算机终端 100还可包括比图 10中所示更多或者更少的组件, 或者具有与图 10所示 不同的配置。 图 10示出的硬件结构框图, 不仅可以作为上述计算机终端 100(或移动设备)的 示例性框图, 还可以作为上述服务器的示例性框图, 一种可选实施例中, 图 2以框图 示出了使用上述图 10所示的计算机终端 100(或移动设备)作为计算环境 201中计算 节点的一种实施例。 存储 器 1004可用于存储应用软件的软件程序以及模块,如本公开实施例中的资源 配置方法对应的程序指令 /数据存储装置, 处理器通过运行存储在存储器 1004 内的软 件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的资源配置方法。 存储器 1004可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性 存储装置、 闪存、 或者其他非易失性固态存储器。 在一些实例中, 存储器 1004可进一 步包括相对于处理器远程设置的存储器, 这些远程存储器可以通过网络连接至计算机 终端 100。 上述网络的实例包括但不限于互联网、 企业内部网、 局域网、 移动通信网 及其组合。 传输装置 1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括 计算机终端 100的通信供应商提供的无线网络。在一个实例中,传输装置 1006包括一 个网络适配器 ( Network Inter face Controller, 简称为 NIC), 其可通过基站与其他网络 设备相连从而可与互联网进行通讯。在一个实例中,传输装置 1006可以为射频(Radio Frequency, 简称为 RF)模块, 其用于通过无线方式与互联网进行通讯。 显 示器可以例如触摸屏式的液晶显示器( Liquid Crystal Display, 简称为 LCD), 该液晶显示器可使得用户能够与计算机终端 100(或移动设备)的用户界面进行交互。 另一种可选实施例中,图 11以框图示出了使用上述图 8所示的计算机终端 80(或 移动设备 )作为服务网格的一种实施例。 图 11是根据本公开实施例的一种服务网格的 结构框图, 如图 11所示, 该服务网格 1100主要用于方便多个微月艮务之间进行安全和 可靠的通信, 微服务是指将应用程序分解为多个较小的服务或者实例, 并分布在不同 的集群 /机器上运行。 如 图 11所示, 微月艮务可以包括应用服务实例 A和应用服务实例 B, 应用服务实 例 A和应用服务实例 B形成服务网格 1100的功能应用层。 在一种实施方式中, 应用 月艮务实例 A以容器 /进程 1108的形式运行在机器 /工作负载容器组 914(POD),应用月艮 务实例 B以容器 /进程 910的形式运行在机器 /工作负载容器组 916 ( POD)。 在一种 实施方式中, 应用服务实例 A可以是数据拷贝服务, 应用服务实例 B可以 是数据转移服务。 如 图 11所示, 应用服务实例 A和网格代理 ( sidecar ) 1103共存于机器工作负载 容器组 914, 应用服务实例 B和网格代理 1105共存于机器工作负载容器 914。 网格代 理 1103和网格代理 1105形成服务网格 1100的数据平面层 ( data-plane )„ 其中, 网格 代理 1103和网格代理 1105分别以容器 /进程 1104,容器 /进程 1104可以接收请求 912, 以用于进行商品查询服务, 网格代理 1106的形式在运行, 并且网格代理 1103和应用 服务实例 A之间可以双向通信,网格代理 1105和应用服务实例 B之间可以双向通信。 此外, 网格代理 1103和网格代理 1105之间还可以双向通信。 在一种 实施方式中, 应用服务实例 A的所有流量都通过网格代理 1103被路由到 合适的目的地, 应用服务实例 B的所有网络流量都通过网格代理 1105被路由到合适 的目的地。 需要说明的是, 在此提及的网络流量包括但不限于超文本传输协议 ( Hyper Text Transfer Protocol ,简称为 HTTP ),表述性状态传递 ( Representational State Transfer, 简称为 REST ),高性能、通用的开源框架 ( google Remote Procedure Call,简称为 g-RPC ), 开源的内存中的数据结构存储系统 ( Redis )等形式。 在一种 实施方式中, 可以通过为服务网格 1100中的代理 ( Envoy )编写自定义的 过滤器 ( Filter )来实现扩展数据平面层的功能, 服务网格代理配置可以是为了使月艮务 网格正确地代理服务流量,实现服务互通和服务治理。网格代理 1103和网格代理 1105 可以被配置成执行至少如下功能 中的一种: 服务发现 ( service discovery ), 健康检查 ( health checking ) , 路由 ( Routing ) , 负载均衡 ( Load Balancing ) , 认证和授权 ( authentication and authorization ), 以及可观测寸生 ( observability )» 如 图 11所示, 该服务网格 1100还包括控制平面层。 其中, 控制平面层可以是由 一组在一个专用的命名空间中运行的服务,在机器 /工作负载容器组( machine/Pod )1102 中由托管控制面组件 1101来托管这些服务。 如图 11所示, 托管控制面组件 1101与网 格代理 1103和网格代理 1105进行双向通信。托管控制面组件 1101被配置成执行一些 控制管理的功能。 例如, 托管控制面组件 1101接收网格代理 1103和网格代理 1105传 送的遥测数据, 可以进一步对这些遥测数据做聚合。 这些服务, 托管控制面组件 1101 还可以提供面向用户的应用程序接口 ( Application Programming Interface ,简称为 API ), 以便较容易地操纵网络行为,以及向网格代理 1103和网格代理 1105提供配置数据等。 需要说 明的是, 本公开所涉及的用户信息 (包括但不限于用户设备信息、 用户个 人信息等) 和数据 (包括但不限于用于分析的数据、 存储的数据、 展示的数据等), 均 为经用户授权或者经过各方充分授权的信息和数据, 并且相关数据的收集、 使用和处 理需要遵守相关国家和地区的相关法律法规和标准, 并提供有相应的操作入口, 供用 户选择授权或者拒绝。 需要说明的是, 对于前述的各方法实施例, 为了简单描述, 故将其都表述为一系 列的动作组合, 但是本领域技术人员应该知悉, 本公开并不受所描述的动作顺序的限 制, 因为依据本公开, 某些步骤可以采用其他顺序或者同时进行。 其次, 本领域技术 人员也应该知悉, 说明书中所描述的实施例均属于优选实施例, 所涉及的动作和模块 并不一定是本公开所必须的。 通过 以上的实施方式的描述, 本领域的技术人员可以清楚地了解到根据上述实施 例的方法可借助软件加必需的通用硬件平台的方式来实现, 当然也可以通过硬件。 基 于这样的理解, 本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软 件产品的形式体现出来, 该计算机软件产品存储在一个存储介质 (如 ROM/RAM、 磁 碟、 光盘)中, 包括若干指令用以使得一台终端设备(可以是手机, 计算机, 服务器, 或者网络设备等)执行本公开各个实施例的方法。 实施例 4 才艮据本公开实施例, 还提供了一种用于实施上述图 3所示的资源配置方法的资源 配置装置。 图 12是才艮据本公开实施例的一种资源配置装置的示意图, 如图 12所示, 该资源 配置装置 1200可以包括:第一确定单元 1202、第二确定单元 1204、第三确定单元 1206 和配置单元 1208。 第一确定单元 1202, 被设置为确定待配置资源的至少一服务器。 第二确定单元 1204, 被设置为在资源池中, 确定与服务器相匹配的至少一目标网 卡; 第三确定单元 1206,被设置为确定目标网卡分别与资源池中的至少一目标数据交 换接口所处的第一目标链路。 配置单元 1208, 被设置为如果第一目标链路的链路状态为正常链路状态, 则将目 标网卡的资源经由对应的第一目标链路配置至服务器。 此处上述第一确定单元 1202、 第二确定单元 1204、 第三确定单元 1206和配置单 元 1208对应于实施例 1中的步骤 S302至步骤 S308,三个单元与对应的步骤所实现的 实例和应用场景相同, 但不限于上述实施例 1所公开的内容。 需要说明的是, 上述单 元可以是存储在存储器 (例如, 存储器 1004) 中并由一个或多个处理器(例如, 处理 器 1002a, 1002b , 1002n)处理的硬件组件或软件组件, 上述单元也可以作为装 置的一部分可以运行在实施例 3提供的计算机终端 100中。 才艮据本公开实施例, 还提供了一种用于实施上述图 4所示的资源配置方法的资源 配置装置。 图 13是才艮据本公开实施例的另一种资源配置装置的示意图, 如图 13所示, 该资 源配置装置 1300可以包括: 发送单元 1302和获取单元 1304。 发送单元 1302, 被设置为向资源输出端发送资源配置请求。 获取单元 1304, 被设置为获取资源输出端响应资源配置请求, 经由第一目标链路 输出的目标网卡的资源, 其中, 第一目标链路的链路状态为正常链路状态, 且第一目 标链路包括目标网卡和目标数据交换接口, 至少一目标网卡和至少一目标数据交换接 口集成在资源输出端的资源池中。 此处需要说明的是, 上述发送单元 1302和获取单元 1304对应于实施例 1中的步 骤 S402至步骤 S404, 两个单元与对应的步骤所实现的实例和应用场景相同, 但不限 于上述实施例 1所公开的内容。需要说明的是,上述单元可以是存储在存储器(例如, 存储器 1004) 中并由一个或多个处理器(例如, 处理器 1002a, 1002b , 1002n) 处理的硬件组件或软件组件, 上述单元也可以作为装置的一部分可以运行在实施例 3 提供的计算机终端 100中。 在该 资源配置装置中, 将目标网卡和数据交换接口集成在资源池中, 实现资源池 化产品, 从而将目标网卡从服务器中分离出来, 这样服务器可通过数据交换接口按需 配置目标网卡的资源,提升资源利用率,降低成本;也可单服务器配置多个目标网卡, 实现高网络带宽的需求, 且通过将目标网卡从服务器中分离出来, 实现了解耦服务器 与智能网卡的物理安装适配, 可适配业界各类型服务器, 从而实现了提高资源配置的 灵活性的技术效果, 解决了资源配置的灵活性低的技术问题。 实施例 5 本公开 的实施例可以提供一种计算机终端, 该计算机终端可以是计算机终端群中 的任意一个计算机终端设备。 可选地, 在本实施例中, 上述计算机终端也可以替换为 移动终端等终端设备。 可选地 , 在本实施例中, 上述计算机终端可以位于计算机网络的多个网络设备中 的至少一个网络设备。 在本 实施例中, 上述计算机终端可以执行资源配置方法中以下步骤的程序代码: 确定待配置资源的至少一服务器; 在资源池中, 确定与服务器相匹配的至少一目标网 卡; 确定目标网卡分别与资源池中的至少一目标数据交换接口所处的第一目标链路; 如果第一目标链路的链路状态为正常链路状态, 则将目标网卡的资源经由对应的第一 目标链路配置至服务器。 可选地 ,图 14是根据本公开实施例的一种计算机终端的结构框图,如图 14所示, 该计算机终端 A可以包括: 一个或多个(图中仅示出一个)处理器 1402、存储器 1404 以及传输装置 1406。 其 中, 存储器可用于存储软件程序以及模块, 如本公开实施例中的资源配置方法 和装置对应的程序指令 /模块, 处理器通过运行存储在存储器内的软件程序以及模块, 从而执行各种功能应用以及数据处理, 即实现上述的资源配置方法。 存储器可包括高 速随机存储器, 还可以包括非易失性存储器, 如一个或者多个磁性存储装置、 闪存、 或者其它非易失性固态存储器。 在一些实例中, 存储器可进一步包括相对于处理器远 程设置的存储器, 这些远程存储器可以通过网络连接至终端 A。 上述网络的实例包括 但不限于互联网、 企业内部网、 局域网、 移动通信网及其组合。 处理 器可以通过传输装置调用存储器存储的信息及应用程序, 以执行下述步骤: 确定待配置资源的至少一服务器; 在资源池中, 确定与服务器相匹配的至少一目标网 卡; 确定目标网卡分别与资源池中的至少一目标数据交换接口之间的第一目标链路; 如果第一目标链路的链路状态为正常链路状态, 则将目标网卡的资源经由对应的第一 目标链路配置至服务器。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 确定服务器的类型; 在资 源池中, 确定至少与类型相匹配的目标网卡。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 确定集成在资源池中的网 卡集,其中, 网卡集中相同服务器和 /或不同网卡允许向服务器集中相同服务器和 /或不 同服务器提供资源, 不同服务器包括至少一服务器; 在网卡集中, 确定至少与类型相 匹配的目标网卡。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 按照类型确定服务器的资 源需求信息, 其中, 资源需求信息用于表示类型的服务器在运行过程中所需的资源; 确定与资源需求信息相匹配的网卡数量; 在网卡集中, 确定网卡数量的目标网卡。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 确定集成在资源池中的数 据交换接口集, 其中, 数据交换接口集中不同数据交换接口允许与网卡集中不同网卡 组成链路; 在数据交换接口集中, 确定允许与目标网卡相连接的目标数据交换接口; 将目标网卡、 服务器和目标数据交换接口, 组成第一目标链路。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 在目标网卡、 服务器和至 少两个目标数据交换接口所组成的多条第一目标链路中, 如果至少一条第一目标链路 为异常链路状态, 则多条第一目标链路中除至少一条第一目标链路之外的第一目标链 路保持正常链路状态。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 如果目标网卡发生故障, 和 /或, 目标数据交换接口发生故障,则确定第一目标链路的链路状态为异常链路状态。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 响应于热插拔操作, 对发 生故障的目标网卡, 和 /或, 发生故障的目标数据交换接口, 进行热插拔操作。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 如果第一目标链路的链路 状态为正常链路状态, 则将服务器作为外接设备, 连接至目标数据交换接口, 以将目 标网卡的资源经由对应的第一目标链路配置至服务器。 可选地 , 上述处理器还可以执行如下步骤的程序代码: 响应于调整操作, 对以下 至少之一进行调整: 资源池中的网卡集、 资源池中的数据交换接口集、 至少一服务器 所属的服务器集进行调整。 处理 器可以通过传输装置调用存储器存储的信息及应用程序, 以执行下述步骤: 向资源输出端发送资源配置请求; 获取资源输出端响应资源配置请求, 经由第一目标 链路输出的目标网卡的资源, 其中, 第一目标链路的链路状态为正常链路状态, 且第 一目标链路包括目标网卡和目标数据交换接口, 至少一目标网卡和至少一目标数据交 换接口集成在资源输出端的资源池中。 采用本公开 实施例,将网卡和数据交换接口集成在资源池中,实现资源池化产品, 从而将网卡从服务器中分离出来,服务器可通过目标数据交换接口按需配置目标网卡, 从而提升资源利用率, 降低成本; 或者可以单服务器配置多个目标网卡, 以实现高网 络带宽的需求。 通过将目标网卡从服务器中分离出来, 实现了解耦服务器与智能网卡 的物理安装适配的目的, 从而实现了提高资源配置的灵活性的技术效果, 解决了资源 配置的灵活性低的技术问题。 本领域普通技术人 员可以理解, 图 14所示的结构仅为示意, 计算机终端 A也可 以是智能手机 (如 Android手机、 iOS手机等)、 平板电脑、 掌上电脑以及移动互联网 设备 (Mobile Internet Devices, 简称为 MID)、 PAD等终端设备。 图 14其并不对上述 计算机终端 A的结构造成限定。 例如, 计算机终端 A还可包括比图 14中所示更多或 者更少的组件 (如网络接口、 显示装置等), 或者具有与图 14所示不同的配置。 本领域普通技 术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以 通过程序来指令终端设备相关的硬件来完成, 该程序可以存储于一计算机可读存储介 质中,存储介质可以包括: 闪存盘、只读存储器( Read-Only Memory , 简称为 ROM)、 随机存取器 ( Random Access Memory , 简称为 RAM)、 磁盘或光盘等。 实施例 6 本公 开的实施例还提供了一种计算机可读存储介质。 可选地, 在本实施例中, 上 述计算机可读存储介质可以用于保存上述实施例一所提供的资源配置方法所执行的程 序代码。 可选地 , 在本实施例中, 上述计算机可读存储介质可以位于计算机网络中计算机 终端群中的任意一个计算机终端中, 或者位于移动终端群中的任意一个移动终端中。 可选地 , 在本实施例中, 计算机可读存储介质被设置为存储用于执行以下步骤的 程序代码: 确定待配置资源的至少一服务器; 在资源池中, 确定与服务器相匹配的至 少一目标网卡; 确定目标网卡分别与资源池中的至少一目标数据交换接口所处的第一 目标链路; 如果第一目标链路的链路状态为正常链路状态, 则将目标网卡的资源经由 对应的第一目标链路配置至服务器。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 确定待配置 资源的至少一服务器; 在资源池中, 确定与服务器相匹配的至少一目标网卡; 确定目 标网卡分别与资源池中的至少一目标数据交换接口之间的第一目标链路; 如果第一目 标链路的链路状态为正常链路状态, 则将目标网卡的资源经由对应的第一目标链路配 置至服务器。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 确定服务器 的类型; 在资源池中, 确定至少与类型相匹配的目标网卡。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 确定集成在 资源池中的网卡集, 其中, 网卡集中相同服务器和 /或不同网卡允许向服务器集中相同 服务器和 /或不同服务器提供资源, 不同服务器包括至少一服务器; 在网卡集中, 确定 至少与类型相匹配的目标网卡。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 按照类型确 定服务器的资源需求信息, 其中, 资源需求信息用于表示类型的服务器在运行过程中 所需的资源; 确定与资源需求信息相匹配的网卡数量; 在网卡集中, 确定网卡数量的 目标网卡。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 确定集成在 资源池中的数据交换接口集, 其中, 数据交换接口集中不同数据交换接口允许与网卡 集中不同网卡组成链路; 在数据交换接口集中, 确定允许与目标网卡相连接的目标数 据交换接口; 将目标网卡、 服务器和目标数据交换接口, 组成第一目标链路。 可选地 ,上述计算机可读存储介质还可以执行如下步骤的程序代码:在目标网卡、 服务器和至少两个目标数据交换接口所组成的多条第一目标链路中, 如果至少一条第 一目标链路为异常链路状态, 则多条第一目标链路中除至少一条第一目标链路之外的 第一目标链路保持正常链路状态。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 如果目标网 卡发生故障, 和 /或, 目标数据交换接口发生故障, 则确定第一目标链路的链路状态为 异常链路状态。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 响应于热插 拔操作, 对发生故障的目标网卡, 和 /或, 发生故障的目标数据交换接口, 进行热插拔 操作。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 如果第一目 标链路的链路状态为正常链路状态, 则将服务器作为外接设备, 连接至目标数据交换 接口, 以将目标网卡的资源经由对应的第一目标链路配置至服务器。 可选地 , 上述计算机可读存储介质还可以执行如下步骤的程序代码: 响应于调整 操作, 对以下至少之一进行调整: 资源池中的网卡集、 资源池中的数据交换接口集、 至少一服务器所属的服务器集进行调整。 作为一种可选 的示例, 计算机可读存储介质被设置为存储用于执行以下步骤的程 序代码: 向资源输出端发送资源配置请求; 获取资源输出端响应资源配置请求, 经由 第一目标链路输出的目标网卡的资源, 其中, 第一目标链路的链路状态为正常链路状 态, 且第一目标链路包括目标网卡和目标数据交换接口, 至少一目标网卡和至少一目 标数据交换接口集成在资源输出端的资源池中。 在本公开 实施例中,将网卡和数据交换接口集成在资源池中,实现资源池化产品, 从而将网卡从服务器中分离出来,服务器可通过目标数据交换接口按需配置目标网卡, 从而提升资源利用率, 降低成本; 或者可以单服务器配置多个目标网卡, 以实现高网 络带宽的需求。 通过将目标网卡从服务器中分离出来, 实现了解耦服务器与智能网卡 的物理安装适配的目的, 从而实现了提高资源配置的灵活性的技术效果, 解决了资源 配置的灵活性低的技术问题。 实施例 7 本公开 的实施例还提供了一种计算机程序产品。 可选地, 在本实施例中, 上述计 算机程序产品可以包括计算机程序, 上述计算机程序在被处理器执行时实现上述实施 例所提供的方法。 实施例 8 本公开 的实施例还提供了一种计算机程序产品。 可选地, 上述计算机程序产品可 以包括非易失性计算机可读存储介质, 上述非易失性计算机可读存储介质可以用于存 储计算机程序, 上述计算机程序被处理器执行时实现上述实施例所提供的方法。 实施例 9 本公开 的实施例还提供了一种计算机程序。 可选地, 在本实施例中, 上述计算机 程序被处理器执行时实现上述实施例所提供的方法。 实施例 10 本公开 的实施例可以提供一种电子设备, 该电子设备可以包括存储器和处理器。 图 15是根据本公开实施例的一种资源配置方法的电子设备的框图。电子设备旨在 表示各种形式的数字计算机, 诸如, 膝上型计算机、 台式计算机、 工作台、 个人数字 助理、 服务器、 刀片式服务器、 大型计算机、 和其它适合的计算机。 电子设备还可以 表示各种形式的移动装置, 诸如, 个人数字处理、 蜂窝电话、 智能电话、 可穿戴设备 和其它类似的计算装置。 本文所示的部件、 它们的连接和关系、 以及它们的功能仅仅 作为示例, 并且不意在限制本文中描述的和 /或者要求的本公开的实现。 如 图 15所示,设备 1500包括计算单元 1501 ,其可以根据存储在只读存储器(Read Only Memory, 简称为 ROM) 1502中的计算机程序或者从存储单元 1508加载到随机 访问存储器 ( Random Access Memory, 简称为 RAM) 1503中的计算机程序, 来执行 各种适当的动作和处理。 在 RAM1503中, 还可存储设备 1500操作所需的各种程序和 数据。 计算单元 1501、 ROM1502以及 RAM1503通过总线 1504彼此相连。 输入 /输出 (I/O)接口 1505也连接至总线 1504。 设备 1500中的多个部件连接至 I/O接口 1505 , 包括:输入单元 1506,例如键盘、 鼠标等; 输出单元 1504, 例如各种类型的显示器、 扬声器等; 存储单元 1508, 例如磁 盘、 光盘等; 以及通信单元 1509, 例如网卡、 调制解调器、 无线通信收发机等。 通信 单元 1509允许设备 1500通过诸如因特网的计算机网络和 /或各种电信网络与其它设备 交换信息 /数据。 计算单元 1501 可以是各种具有处理和计算能力的通用和 /或专用处理组件。 计算 单元 1501 的一些示例包括但不限于中央处理单元(Central Processing Unit, 简称为 CPU )、 图形处理单元( Graphics Processing Unit, 简称为 GPU)、 各种专用的人工智能 (Artificial Intelligence, 简称为 AI)计算芯片、 各种运行机器学习模型算法的计算单 元、数字信号处理器( Demand Side Platform, 简称为 DSP)、 以及任何适当的处理器、 控制器、微控制器等。 计算单元 1501执行上文所描述的各个方法和处理, 例如数据的 校验方法。 例如, 在一些实施例中, 数据的校验方法可被实现为计算机软件程序, 其 被有形地包含于机器可读介质, 例如存储单元 1508。 在一些实施例中, 计算机程序的 部分或者全部可以经由 ROM1502和 /或通信单元 1509而被载入和 /或安装到设备 1500 上。 当计算机程序加载到 RAM1503并由计算单元 1501执行时, 可以执行上文描述的 数据的校验方法的一个或多个步骤。备选地, 在其它实施例中, 计算单元 1501可以通 过其它任何适当的方式 (例如, 借助于固件) 而被配置为执行数据的校验方法。 根据本公开 实施例, 提供了一种资源配置方法, 需要说明的是, 在附图的流程图 示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行, 并且, 虽然在流 程图中示出了逻辑顺序, 但是在某些情况下, 可以以不同于此处的顺序执行所示出或 描述的步骤。 本文 中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、 集成电 路系统、 场可编程门阵列 ( Field Program able Gate Array, 简称为 FPGA)、 专用集成 电路( Application Specific Integrated Circuit,简称为 ASIC)、专用标准产品( Application Specific Standard Product, 简称为 ASSP)、 芯片上系统的系统( System on a Chip, 简 称为 SOC)、复杂可编程逻辑设备( Complex Programmable Logic Device,简称为 CPLD)、 计算机硬件、 固件、 软件、 和 /或它们的组合中实现。 这些各种实施方式可以包括: 实 施在一个或者多个计算机程序中, 该一个或者多个计算机程序可在包括至少一个可编 程处理器的可编程系统上执行和 /或解释, 该可编程处理器可以是专用或者通用可编程 处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令, 并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。 用于 实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编 写。 这些程序代码可以提供给通用计算机、 专用计算机或其它可编程数据处理装置的 处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和 /或框图中所规 定的功能 /操作被实施。 程序代码可以完全在机器上执行、 部分地在机器上执行, 作为 独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务 器上执行。 在本公 开的上下文中, 机器可读介质可以是有形的介质, 其可以包含或存储以供 指令执行系统、 装置或设备使用或与指令执行系统、 装置或设备结合地使用的程序。 机器可读介质可以是机器可读信号介质或机器可读储存介质。 机器可读介质可以包括 但不限于电子的、 磁性的、 光学的、 电磁的、 红外的、 或半导体系统、 装置或设备, 或者上述内容的任何合适组合。 机器可读存储介质的更具体示例会包括基于一个或多 个线的电气连接、便携式计算机盘、硬盘、随机存取存储器( RAM)、只读存储器( ROM)、 可擦除可编程只读存储器 (EPROM或快闪存储器 )、 光纤、 便捷式紧凑盘只读存储器 ( CD-ROM). 光学储存设备、 磁储存设备、 或上述内容的任何合适组合。 为了提供与用户的交互, 可以在计算机上实施此处描述的系统和技术, 该计算机 具有: 用于向用户显示信息的显示装置(例如, CRT(阴极射线管)或者 LCD(液晶 显示器、 监测器); 以及键盘和指向装置 (例如, 鼠标或者路径球), 用户可以通过该 键盘和该指向装置来将输入提供给计算机。 其它种类的装置还可以用于提供与用户的 交互; 例如, 提供给用户的反馈可以是任何形式的传感反馈(例如, 视觉反馈、 听觉 反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入) 来接收来 自用户的输入。 可 以将此处描述的系统和技术实施在包括后台部件的计算系统(例如, 作为数据 服务器 )、 或者包括中间件部件的计算系统(例如, 应用服务器)、 或者包括前端部件 的计算系统 (例如, 具有图形用户界面或者网络浏览器的用户计算机, 用户可以通过 该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者 包括这种后台部件、 中间件部件、 或者前端部件的任何组合的计算系统中。 可以通过 任何形式或者介质的数字数据通信 (例如, 通信网络)来将系统的部件相互连接。 通 信网络的示例包括: 局域网 ( Local Area Network, 简称为 LAN)、 广域网 (Wide Area Network, 简称为 WAN)和互联网。 计 算机系统可以包括客户端和服务器。 客户端和服务器一般远离彼此并且通常通 过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的 计算机程序来产生客户端和服务器的关系。 服务器可以是云服务器, 也可以为分布式 系统的服务器, 或者是结合了区块链的服务器。 需要说明的是, 上述本公开实施例序号仅仅为了描述, 不代表实施例的优劣。 在本公 开的上述实施例中, 对各个实施例的描述都各有例重, 某个实施例中没有 详述的部分, 可以参见其它实施例的相关描述。 在本公 开所提供的几个实施例中, 应该理解到, 所揭露的技术内容, 可通过其它 的方式实现。 其中, 以上所描述的装置实施例仅仅是示意性的, 例如单元的划分, 仅 仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单元或组件可 以结合或者可以集成到另一个系统, 或一些特征可以忽略, 或不执行。 另一点, 所显 示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 单元或模块 的间接耦合或通信连接, 可以是电性或其它的形式。 作 为分离部件说明的单元可以是或者也可以不是物理上分开的, 作为单元显示的 部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个 网络单元上。 可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案 的目的。 另外, 在本公开各个实施例中的各功能单元可以集成在一个处理单元中, 也可以 是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元中。 上述集成 的单元既可以采用硬件的形式实现, 也可以采用软件功能单元的形式实现。 集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时, 可 以存储在一个计算机可读取存储介质中。 基于这样的理解, 本公开的技术方案本质上 或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形 式体现出来, 该计算机软件产品存储在一个存储介质中, 包括若干指令用以使得一台 计算机设备 (可为个人计算机、 服务器或者网络设备等)执行本公开各个实施例方法 的全部或部分步骤。 而前述的存储介质包括: U盘、只读存储器( Read-Only Memory , 简称为 ROM )、随机存取存储器( Random Access Memory,简称为 RAM)、移动硬盘、 磁碟或者光盘等各种可以存储程序代码的介质。 以上仅是本公开的优选实施方式, 应当指出, 对于本技术领域的普通技术人员来 说, 在不脱离本公开原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也 应视为本公开的保护范围。

Claims

权 利 要 求 书
1. 一种资源配置方法, 包括: 确定待配置资源的至少一服务器; 在资源池中, 确定与所述月艮务器相匹配的至少一目标网卡; 确定所述目标网卡分别与所述资源池中的至少一目标数据交换接口所处的第 一 目标链路; 如果所述第一目标链路的链路状态为正常链路状态, 则将所述目标网卡的资 源经 由对应的所述第一目标链路配置至所述服务器。
2. 根据权利要求 1所述的方法, 其中, 在资源池中, 确定与所述服务器相匹配的至 少一 目标网卡, 包括: 确定所述服务器的类型; 在所述资源池中, 确定至少与所述类型相匹配的所述目标网卡。
3. 根据权利要求 2所述的方法, 其中, 在所述资源池中, 确定至少与所述类型相匹 配 的所述目标网卡, 包括: 确定集成在所述资源池中的网卡集, 其中, 所述网卡集中不同网卡允许向服 务器集 中相同服务器和 /或不同服务器提供资源,所述相同服务器和 /或所述不同月艮 务器 包括所述至少一服务器; 在所述网卡集中, 确定至少与所述类型相匹配的所述目标网卡。
4. 根据权利要求 3所述的方法, 其中, 在所述网卡集中, 确定至少与所述类型相匹 配 的所述目标网卡, 包括: 按照所述类型确定所述服务器的资源需求信息, 其中, 所述资源需求信息用 于表示所述类型的所述服务器在运行过程中所需的资源; 确定与所述资源需求信息相匹配的网卡数量; 在所述网卡集中, 确定所述网卡数量的所述目标网卡。
5. 根据权利要求 3所述的方法, 其中, 确定所述目标网卡分别与所述资源池中的至 少一 目标数据交换接口所处的第一目标链路, 包括: 确定集成在所述资源池中的数据交换接口集, 其中, 所述数据交换接口集中 不 同数据交换接口允许与所述网卡集中不同网卡组成链路; 在所述数据交换接口集中, 确定允许与所述目标网卡相连接的所述目标数据 交换接 口; 将所述目标网卡、 所述服务器和所述目标数据交换接口 , 组成所述第一目标 链路 。
6. 根据权利要求 5所述的方法, 其中, 所述方法还包括: 在所述目标网卡、 所述服务器和至少两个所述目标数据交换接口所组成的多 条所述第一 目标链路中, 如果至少一条所述第一目标链路为异常链路状态, 则多 条所述第一 目标链路中除至少一条所述第一目标链路之外的第一目标链路保持所 述正常链路状态。
7. 根据权利要求 6所述的方法, 其中, 所述方法还包括: 如果所述目标网卡发生故障, 和 /或, 所述目标数据交换接口发生故障, 则确 定所述第一 目标链路的链路状态为所述异常链路状态。
8. 根据权利要求 7所述的方法, 其中, 所述方法还包括: 响应于热插拔操作, 对发生故障的所述目标网卡, 和 /或, 发生故障的所述目 标数据交换接 口 , 进行热插拔操作。
9. 根据权利要求 1至 8中任意一项所述的方法, 其中, 所述方法还包括: 响应于调整操作, 对以下至少之一进行调整: 所述资源池中的网卡集、 所述 资源池 中的数据交换接口集、 所述至少一服务器所属的服务器集进行调整。
10. 一种资源配置方法, 包括: 向资源输出端发送资源配置请求; 获取所述资源输出端响应所述资源配置请求, 经由第一目标链路输出的目标 网卡的资源, 其中, 所述第一目标链路的链路状态为正常链路状态, 且所述第一 目标链路包括所述目标网卡和目标数据交换接口 , 至少一所述目标网卡和至少一 所述 目标数据交换接口集成在所述资源输出端的资源池中。
11. 一种资源配置系统, 包括: 资源输出端和服务器集, 其中, 所述资源输出端,用于在所述服务器集中,确定待配置资源的至少一服务器; 在资源池 中, 确定与所述服务器相匹配的至少一目标网卡; 确定所述目标网卡分 别与所述资源池 中的至少一目标数据交换接口所处的第一目标链路; 如果所述第 一 目标链路的链路状态为正常链路状态, 则将所述目标网卡的资源经由对应的所 述第一 目标链路配置至所述服务器; 所述服务器集中的所述服务器, 用于利用所述目标网卡的资源运行。
12. 根据权利要求 11所述的系统, 所述资源输出端, 包括: 所述目标网卡所属的网卡集, 用于向所述服务器集中相同服务器和 /或不同月艮 务器提供资源; 所述目标数据交换接口所属的数据交换接 口集, 用于向所述相同服务器和 / 或不 同服务器传输来自所述网卡集的资源, 其中, 所述数据交换接口集中不同数 据交换接 口允许与所述网卡集中不同网卡组成链路。
13. 一种电子设备, 包括: 存储器, 存储有可执行程序; 处理器, 用于运行所述程序, 其中, 所述程序运行时执行权利要求 1至 11中 任意一项所述的方法。
14. 一种计算机可读存储介质, 所述计算机可读存储介质包括存储的可执行程序, 其 中, 在所述可执行程序运行时控制所述存储介质所在设备执行权利要求 1 至 10 中任意一项所述的方法。
15. 一种计算机程序产品, 包括计算机程序, 所述计算机程序在被处理器执行时实现 根据权利要求 1至 10中任意一项所述的方法。
PCT/IB2024/063171 2024-03-22 2024-12-25 资源配置方法、系统、电子设备、存储介质和程序产品 Pending WO2025196499A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202410340917.XA CN120692276A (zh) 2024-03-22 2024-03-22 资源配置方法、系统、电子设备、存储介质和程序产品
CN202410340917.X 2024-03-22

Publications (1)

Publication Number Publication Date
WO2025196499A1 true WO2025196499A1 (zh) 2025-09-25

Family

ID=97081452

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2024/063171 Pending WO2025196499A1 (zh) 2024-03-22 2024-12-25 资源配置方法、系统、电子设备、存储介质和程序产品

Country Status (2)

Country Link
CN (1) CN120692276A (zh)
WO (1) WO2025196499A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120849223B (zh) * 2025-09-24 2025-12-16 浪潮电子信息产业股份有限公司 设备的确定方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011118663A (ja) * 2009-12-03 2011-06-16 Hitachi Ltd Nic選択方法およびプログラム
CN110198243A (zh) * 2019-06-11 2019-09-03 深信服科技股份有限公司 一种虚拟机的网络接入方法及相关设备
CN115113817A (zh) * 2022-06-24 2022-09-27 苏州浪潮智能科技有限公司 基于网卡的存储优化方法、系统、电子设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011118663A (ja) * 2009-12-03 2011-06-16 Hitachi Ltd Nic選択方法およびプログラム
CN110198243A (zh) * 2019-06-11 2019-09-03 深信服科技股份有限公司 一种虚拟机的网络接入方法及相关设备
CN115113817A (zh) * 2022-06-24 2022-09-27 苏州浪潮智能科技有限公司 基于网卡的存储优化方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN120692276A (zh) 2025-09-23

Similar Documents

Publication Publication Date Title
US9031081B2 (en) Method and system for switching in a virtualized platform
EP3556081B1 (en) Reconfigurable server
US7530071B2 (en) Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions
US10083053B2 (en) System and method for virtual machine live migration
US11392417B2 (en) Ultraconverged systems having multiple availability zones
US9396101B2 (en) Shared physical memory protocol
US8495255B2 (en) Discovery and configuration of device configurations
US20080263544A1 (en) Computer system and communication control method
CN104052789A (zh) 用于虚拟联网系统的负载平衡
WO2020024413A1 (zh) 一种云计算平台部署的控制方法、服务器及存储介质
CN101124541A (zh) 修改逻辑分区数据处理系统中的虚拟适配器资源
WO2013086861A1 (zh) 一种多路径访问i/o设备的方法、i/o多路径管理器及系统
CN119902907A (zh) 基于bonding模式下的网卡设备的切换方法及装置
CN109032754B (zh) 提高通信路径可靠性的方法和设备
CN105786732A (zh) 数据访问方法及装置
CN115878136A (zh) 一种基于裸金属服务器的部署方法、装置及系统
CN120692276A (zh) 资源配置方法、系统、电子设备、存储介质和程序产品
CN113312137B (zh) 数据处理方法、装置、设备及系统
CN112799602B (zh) 一种云硬盘在线扩容方法
CN107707665A (zh) 一种网络存储方法、装置、系统及计算机可读存储介质
US20250036491A1 (en) Unified scale-up/scale-out infrastructure for composable systems
CN112463034A (zh) 一种存储部署方法、装置、电子设备和介质
CN119248462A (zh) 基于云服务的虚拟实例部署方法及系统
US20200387396A1 (en) Information processing apparatus and information processing system
CN120934992A (zh) 基于云计算技术的服务器及其数据传输方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24930646

Country of ref document: EP

Kind code of ref document: A1