A data protection method, device and system based on CXL memory extension

CN123020504APending Publication Date: 2026-10-30WUXI STARS MICRO SYSTEM TECHNOLOGIES CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611257636.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-18
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

对于MLD而言,也存在相同类型的数据泄露风险,区别仅在于数据泄露的范围从整个SLD的内存资源,缩小为MLD内部某一个逻辑设备(Logical Device,LD)所对应的内存资源

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123020504A_ABST
    Figure CN123020504A_ABST
Patent Text Reader

Abstract

The present disclosure relates to the technical field of computing fast interconnection, and provides a data protection method, device and system based on CXL memory extension, wherein the method comprises the following steps: receiving at least one device unbundling instruction sent by a switch manager, the device unbundling instruction being used for requesting to cancel the binding state between a specified downstream vPPB and a corresponding CXL endpoint device on a target CXL switch; if the target CXL switch opens a first clearing configuration and a virtual CXL switch to which the downstream vPPB belongs opens a second clearing configuration, issuing a data clearing instruction to the CXL endpoint device to clear the user data stored locally by the CXL endpoint device; and according to the device unbundling instruction, canceling the binding state between the downstream vPPB and the corresponding CXL endpoint device. The technical scheme provided by one or more embodiments of the present disclosure can ensure the data security of the CXL endpoint device which is still in the power-on state after being unbundled with the CXL switch.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computing fast interconnect technology, and specifically to a data protection method, device and system based on CXL memory extension. Background Technology

[0002] Compute Express Link (CXL) technology is a new type of high-speed interconnect technology designed to provide higher data throughput and lower latency for modern computing and storage systems. In the CXL 1.0 era, CXL endpoint devices (such as memory expansion cards, smart network cards, and GPU accelerator cards) were typically directly connected to the physical socket of the Central Processing Unit (CPU). In this mode, once a CXL endpoint device was removed from the socket, all data in memory would be lost due to power failure, thus eliminating the security risk of persistent data leakage.

[0003] With the advent of CXL 2.0, the CXL protocol introduced CXL switches. CXL switches not only support simultaneous access from multiple hosts (including CPUs) and multiple CXL endpoint devices, but also dynamically adjust the ownership and allocation relationships between CXL endpoint devices and hosts. In various practical application scenarios, CXL endpoint devices can be either Single Logical Devices (SLDs) or Multiple Logical Devices (MLDs).

[0004] In existing CXL memory expansion systems, since SLDs are generally not frequently removed from the CXL switch slots, they are typically kept powered on for extended periods. While this avoids data loss due to physical removal, it introduces a new data leakage risk—unauthorized host devices or attackers may gain unauthorized access to data residing in the SLD at the logical level. The same type of data leakage risk exists for MLDs, the only difference being that the scope of the data leakage is narrowed from the entire SLD's memory resources to the memory resources of a single logical device (LD) within the MLD. Summary of the Invention

[0005] In view of this, one or more embodiments of this disclosure provide a data protection method, device and system based on CXL memory expansion, which can proactively issue a command to clear user data to the CXL endpoint device during the unbinding phase of the CXL endpoint device and the CXL switch, so as to ensure the data security of the CXL endpoint device that is still powered on after being unbound from the CXL switch.

[0006] In a first aspect, this disclosure provides a data protection method based on CXL memory extension, applied to a target CXL switch. The method includes: receiving at least one device unbinding instruction sent by a switching network manager, wherein any device unbinding instruction is used to request the unbinding of a specified downstream vPPB on the target CXL switch with a corresponding CXL endpoint device, wherein the CXL endpoint device is a single logical device or one of multiple logical devices; if the target CXL switch has enabled a first clearing configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled a second clearing configuration, then in response to the device unbinding instruction, a data clearing instruction is sent to the CXL endpoint device to clear the user data stored in the volatile memory of the CXL endpoint device; and according to the device unbinding instruction, the binding between the downstream vPPB and the corresponding CXL endpoint device is unbound.

[0007] Secondly, this disclosure provides a CXL switch, comprising: a receiving unit, configured to receive at least one device unbinding instruction sent by a switching network manager, wherein any device unbinding instruction is used to request the unbinding of a specified downstream vPPB on the CXL switch with a corresponding CXL endpoint device, wherein the CXL endpoint device is a single logical device or one of multiple logical devices; a sending unit, configured to, in response to the device unbinding instruction, send a data clearing instruction to the CXL endpoint device, in order to clear the user data stored in the volatile memory of the CXL endpoint device, provided that the CXL switch has enabled a first clearing configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled a second clearing configuration; and an unbinding unit, configured to unbind the downstream vPPB from the corresponding CXL endpoint device according to the device unbinding instruction.

[0008] Thirdly, this disclosure provides a CXL memory expansion system, the system including a switching network manager, a target CXL switch, and at least one CXL endpoint device, wherein the CXL endpoint device is a single logical device or one of multiple logical devices; the switching network manager is used to send at least one device unbinding instruction to the target CXL switch, any one of the device unbinding instructions being used to request the unbinding of a specified downstream vPPB on the target CXL switch with the corresponding CXL endpoint device; the target CXL switch is used to receive the device unbinding instruction, and under the condition that the target CXL switch has enabled a first clear configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled a second clear configuration, in response to the device unbinding instruction, to issue a data clearing instruction to the CXL endpoint device; the CXL endpoint device is used to clear the user data stored in the volatile memory of the CXL endpoint device according to the data clearing instruction; the target CXL switch is also used to unbind the downstream vPPB with the corresponding CXL endpoint device according to the device unbinding instruction.

[0009] In the technical solution provided by one or more embodiments of this disclosure, after receiving the device unbinding instruction, the target CXL switch can actively send a data clearing instruction to the CXL endpoint device, thereby timely and accurately clearing the corresponding user data in the CXL endpoint device, effectively eliminating the security risks caused by user data residue, and significantly improving the data security of the CXL memory expansion system.

[0010] On the one hand, considering that not every device unbinding operation requires clearing user data on the CXL endpoint device, the technical solution provided by one or more embodiments of this disclosure uses the switching network manager to issue a first configuration command to the target CXL switch, thereby enabling or disabling the first clear configuration as needed, and thus providing a flexible configuration management mechanism for data cleanup tasks at the global level.

[0011] On the other hand, considering that the types of data and security levels managed by different host devices may differ, their actual needs for data cleanup are also different. The technical solutions provided by one or more embodiments of this disclosure allow each host device that matches the virtual CXL switch to issue a second configuration command to the target CXL switch, thereby realizing on-demand control of the second cleanup configuration and achieving fine-grained configuration management of data cleanup tasks for each host device. Attached Figure Description

[0012] The features and advantages of the embodiments of this disclosure will be more clearly understood by referring to the accompanying drawings, which are illustrative and should not be construed as limiting the present disclosure in any way. In the drawings: Figure 1 This illustration shows a schematic diagram of the steps of a data protection method based on CXL memory extension in one embodiment of the present disclosure; Figure 2 This illustration shows a schematic diagram of the state of a single logic device before a change in its binding relationship, according to one embodiment of this disclosure. Figure 3 This illustration shows a schematic diagram of the state after the binding relationship of a single logic device is changed in one embodiment of this disclosure; Figure 4 This illustration shows a schematic diagram of the binding relationship of multiple logic devices before a change in one embodiment of the present disclosure; Figure 5 This illustration shows a schematic diagram of the changed binding relationship of multiple logic devices in one embodiment of the present disclosure; Figure 6 A flowchart illustrating a data protection method based on CXL memory extension in one embodiment of this disclosure is shown. Figure 7 A schematic diagram of the functional modules of a CXL switch in one embodiment of this disclosure is shown; Figure 8 A schematic diagram of the structure of a CXL memory expansion system according to one embodiment of the present disclosure is shown. Detailed Implementation

[0013] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0014] In related technologies, a mechanism called "Secure Erase" can erase user data on CXL endpoint devices while the device is powered on. However, this "Secure Erase" mechanism has the following problems. On the one hand, the host device or Fabric Manager (FM) must send the SecureErase command to the CXL endpoint device. On the other hand, this mechanism will erase all user data in all memory resources of the CXL endpoint device, which is extremely unfriendly to MLD-type CXL endpoint devices.

[0015] In view of this, the data protection method based on CXL memory expansion provided in one embodiment of this disclosure can enable the CXL switch to actively issue a user data clearing command to the CXL endpoint device during the unbinding phase between the CXL endpoint device and the CXL switch. This not only ensures the data security of the CXL endpoint device that is still powered on after being unbound from the CXL switch, but also ensures the flexibility of the data clearing task configuration.

[0016] Please see Figure 1 The present disclosure provides a data protection method based on CXL memory expansion, which can be applied to a target CXL switch and may include the following steps.

[0017] S1: Receive at least one device unbinding instruction sent by the switching network manager. Any of the device unbinding instructions is used to request the release of the binding state between the specified downstream vPPB on the target CXL switch and the corresponding CXL endpoint device. The CXL endpoint device is a single logical device or one of multiple logical devices.

[0018] First, it's important to clarify that CXL endpoint devices are generally categorized into three types based on their supported functionalities: CXL Type 1 devices, CXL Type 2 devices, and CXL Type 3 devices. CXL Type 1 devices are primarily accelerators, typically requiring access to the host device's memory and caching the data locally. CXL Type 1 devices usually only need to support the CXL.io and CXL.cache protocols. CXL Type 2 devices are typically Graphics Processing Unit (GPU) accelerators, generally sharing memory resources with the host device's CPU. CXL Type 2 devices typically need to support the CXL.io, CXL.mem, and CXL.cache protocols. CXL Type 3 devices primarily function as memory expansion cards, providing extended memory resources for the host device's CPU. CXL Type 3 devices generally do not possess computational capabilities themselves. CXL Type 3 devices typically only need to support the CXL.io and CXL.mem protocols.

[0019] In this embodiment, CXL endpoint device mainly refers to CXL Type 3 device. In some practical application scenarios, CXL endpoint device may also refer to CXL Type 2 device.

[0020] In this embodiment, please refer to Figure 2 and Figure 3The target CXL switch can connect to multiple host devices simultaneously, and the root port (RP) of each host device is physically connected to the target CXL switch. For example, Figure 2 or Figure 3 Root Port0 and Root Port1 in the table correspond to two different host devices.

[0021] In this implementation, a Virtual CXL Switch (VCS) is a logical switch instance created within a CXL switch to support multi-host and multi-device virtualization. A physical CXL switch can be imagined as a hardware platform that can be partitioned into multiple independent "virtual CXL switches." Each VCS (e.g., Figure 2 or Figure 3 Both VCS0 and VCS1 in the VCS architecture have independent upstream ports (connecting to a single host device) and downstream ports (connecting to one or more CXL endpoint devices). Each VCS serves only one specific host device; that is, a VCS can only have one upstream port connected to the root port of a single host device. Through the isolation provided by VCSs, the CXL.io, CXL.mem, and other protocol traffic between different host devices are isolated, preventing interference and ensuring resource independence and security in a multi-host device environment.

[0022] Downstream ports of a VCS are typically implemented using vPPBs (Virtual PCIe-to-PCIe bridges). Each downstream vPPB can be dynamically associated with a physical port (PHY Port) through a "binding" operation, thereby connecting to the corresponding CXL endpoint device. This virtual-to-physical binding is essentially a dynamically configurable mapping process that establishes a correspondence between virtual resources (logical entities such as vPPBs and VCSs) within the target CXL switch and physical resources (PHY ports, physical devices, physical memory, etc.). Once a vPPB is bound to a physical device, data can be transmitted via the specified physical port.

[0023] The upstream port of a VCS is usually a vPPB. In some practical applications, the upstream port of a VCS can also be in the form of an HDM Decoder (Host-Managed Device Memory Decoder), thereby improving the data transmission efficiency between the host device and the target CXL switch.

[0024] In this implementation, the Fabric Manager (FM) is a management and control entity distinct from the host devices and target CXL switches. It is responsible for management operations such as topology discovery, resource allocation, VCS configuration, and binding policy distribution across the entire CXL switching network. Physically, the FM's control logic (i.e., its software or firmware) can be deployed on various hardware platforms. For example, the FM can run on dedicated out-of-band management hardware (such as a board management controller) independent of the host devices and switches; it can run as management software or a service on the general-purpose processors of one or more host devices; or it can run as embedded firmware directly within the embedded processors of physical CXL switches or CXL endpoint devices (such as memory controllers). It is important to emphasize that regardless of the physical platform used, the FM is logically independent of the managed host devices and switching devices, and does not participate in regular data plane packet forwarding, thus ensuring decoupling between the management channel and the data channel.

[0025] In this embodiment, please refer to Figure 2 and Figure 3 FM can send a device unbinding command to the target CXL switch, requesting the removal of a specified downstream vPPB from the target CXL switch (e.g., Figure 2 vPPB3 in the context of CXL endpoint devices (e.g., vPPB3) and the corresponding CXL endpoint devices (e.g., vPPB3 in the context of CXL endpoint devices) Figure 2 The binding status between SLD1 in the target CXL switch. Afterwards, FM can also send a device binding command to the target CXL switch, requesting the establishment of a specified downstream vPPB (e.g., ...) on the target CXL switch. Figure 3 vPPB4 in the context of CXL endpoint devices (e.g., vPPB4) and the corresponding CXL endpoint devices (e.g., vPPB4 in the context of CXL endpoint devices) Figure 3 The binding status between SLD1 and SLD2. Successfully completed. Figures 2 to 3 After the binding relationship is changed, the single logical device SLD1 can be extended from being used by one host device (i.e., the host corresponding to Root Port0) to being used by another host device (i.e., the host corresponding to Root Port1). Throughout the process, since SLD1 is never removed from the physical slot of the target CXL switch, SLD1 is always in a powered-on state.

[0026] In this embodiment, please refer to Figure 4 and Figure 5 If the CXL endpoint device is one of multiple logical devices, the overall management process is similar. FM can send a device unbinding command to the target CXL switch, requesting the removal of a specified downstream vPPB (e.g., ...) from the target CXL switch. Figure 4 The downstream vPPB of VCS1 and the corresponding CXL endpoint device (e.g., Figure 4The binding status between LD1 and the target CXL switch. Afterwards, FM can also send a device binding command to the target CXL switch, requesting the establishment of a specified downstream vPPB (e.g., ...) on the target CXL switch. Figure 5 The downstream vPPB of VCS2 and the corresponding CXL endpoint device (e.g., Figure 5 The binding status between LD1 and LD2. Successfully completed. Figures 4 to 5 After the binding relationship is changed, an internal logical device LD1 of MLD can be extended from being used by one host device (i.e., host 1) to being used by another host device (i.e., host 2). Throughout the process, MLD remains powered on because it is never removed from the physical slot of the target CXL switch.

[0027] S2: If the target CXL switch has enabled the first clear configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled the second clear configuration, then in response to the device unbinding command, a data clear command is sent to the CXL endpoint device to clear the user data stored in the volatile memory of the CXL endpoint device.

[0028] In this embodiment, the first clearing configuration refers to the clearing enable switch of the target CXL switch itself, used to control whether the switch has the authority to respond to device unbinding commands and automatically issue data clearing commands; the second clearing configuration refers to the clearing enable switch at the virtual CXL switch level to which the downstream vPPB belongs, used to control whether the virtual switch (serving a specific host device) allows data clearing operations to be performed on its subordinate endpoint devices. This dual-configuration design ensures that the clearing operation is triggered only when both the physical switch and the virtual switch are authorized, enhancing security.

[0029] In this embodiment, upon receiving a device unbinding command, the target CXL switch can automatically send a data clearing command to the CXL endpoint device, thereby promptly and accurately clearing the corresponding user data in the CXL endpoint device and eliminating security risks caused by residual user data. Furthermore, whether a data clearing command is actually sent for each device unbinding command is controlled by a first clearing configuration and a second clearing configuration. Only when both the first and second clearing configurations are enabled will the target CXL switch perform the data clearing operation on the CXL endpoint device specified in this device unbinding command.

[0030] Preferably, both the first and second cleanup configurations can be dynamically updated based on pre-set parameters, further increasing the flexibility of data cleanup tasks.

[0031] In this implementation, data erasure primarily targets the volatile memory area of ​​the CXL endpoint device. Performing data erasure on the non-volatile memory of the CXL endpoint device could constitute a destructive operation. Non-volatile memory is intended for persistent storage of important data. If data erasure is performed on the non-volatile memory area of ​​the CXL endpoint device when it is unbound from the CXL switch or host device, critical information such as database logs and file system metadata may be permanently lost; this should be avoided in the technical implementation. However, timely data erasure of the volatile memory of the CXL endpoint device is a reasonable security requirement. If the data in the volatile memory area of ​​the CXL endpoint device is not erased simultaneously when it is unbound from the CXL switch or host device, the remaining user data may be read by other host devices or subsequent users, posing a data leakage risk. This solution provides an effective technical defense against the above risks by performing proactive data erasure on the volatile memory area.

[0032] In some implementations, if the CXL endpoint device is a single logical device, a secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device, so that the CXL endpoint device erases all user data in its local volatile memory.

[0033] In some implementations, if the CXL endpoint device is one of a group of logical devices, a secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device so that the group of logical devices can clear the user data corresponding to the CXL endpoint device from their local volatile memory.

[0034] Specifically, before performing the unbinding operation, the target CXL switch can send a data clearing command to the SLD or MLD via the Mailbox interface. This data clearing command can directly use the secure erase command defined in the CXL standard protocol, such as the Opcode 4400h command defined by the Component Command Interface (CCI). Upon receiving the Opcode 4400h command, the SLD can clear all user data in its local volatile memory. The MLD, depending on which LD's Mailbox received the Opcode 4400h command, can clear the user data corresponding to that LD in its local volatile memory.

[0035] The specific operations for SLD or MLD to erase data are implemented locally by SLD and MLD, and will not be described in detail here. This is because the secure erase commands defined in the CXL standard protocol (e.g., Opcode 4400h) only need to specify standardized command interfaces and expected behavior results; the specific erase mechanisms of the underlying physical media (such as differentiated processing for different storage media) can be flexibly implemented by equipment manufacturers according to actual applications. The scope of protection in this application focuses on the control decision-making and command issuance mechanisms on the CXL switch side. The specific execution details within SLD and MLD do not affect the implementation of this solution and need not be elaborated upon here.

[0036] It needs further explanation that the Host sending commands to the SLD / MLD via VCS and the FM sending data clearing instructions to the SLD / MLD device via mailbox are two completely different data paths: the former follows the standard CXL.io, CXL.cache, and CXL.mem protocol stack and is the main channel for business data flow, dedicated to high-throughput, low-latency memory access and data migration; the latter is an out-of-band management and control channel, serving management operations such as device discovery, configuration initialization, and status query. Its implementation does not rely on high-speed data transmission protocols, but rather initiates requests by writing commands and parameters to specific registers of the device (sending a message), and the device updates its status register (replying a message) to provide feedback on the execution result. This channel does not participate in business data flow forwarding, and its design prioritizes the determinism and reliability of control rather than transmission rate.

[0037] S3: According to the device unbinding command, release the binding state between the downstream vPPB and the corresponding CXL endpoint device.

[0038] In this embodiment, please refer to Figure 6 After the target CXL switch successfully issues a data clearing command, or determines that no data clearing command is needed (e.g., the first or second clearing configuration is not enabled), it can execute the unbinding operation between vPPB and the CXL endpoint device according to the device unbinding command. The data clearing command needs to pass through vPPB to LD1, not directly from the microcontroller to LD1. Before unbinding, LD1 is bound to the left-hand vPPB, and the command must pass through vPPB to LD1. Optionally, the target CXL switch can determine whether the data clearing command was successfully issued and whether it needs to be reissued based on feedback information from the CXL endpoint device.

[0039] In some implementations, the target CXL switch can receive a first configuration instruction sent by the switching network manager; according to the first configuration instruction, the target CXL switch can enable or disable its own first clear configuration.

[0040] Specifically, not every device unbinding operation requires clearing user data on the CXL endpoint device. Therefore, the FM can issue a first configuration command to the target CXL switch, configuring at the global level whether the CXL switch needs to issue a data clearing command. The first clearing configuration can be preset by the FM each time the target CXL switch is enabled. The first clearing configuration can also be dynamically updated by the FM during the operation of the target CXL switch.

[0041] In some implementations, the target CXL switch can receive a second configuration command sent by a host device that matches the virtual CXL switch; according to the second configuration command, the target CXL switch can enable or disable the second clear configuration of the virtual CXL switch.

[0042] Specifically, a Virtual CXL Switch (VCS) is a logical switch instance created within a target CXL switch to support multi-host and multi-device virtualization. A target CXL switch can maintain multiple Virtual CXL Switches simultaneously. Each VCS (e.g., Figure 2 or Figure 3 In a multi-host environment, VCS0 and VCS1 each have independent upstream ports (connecting to a single host device) and downstream ports (connecting to one or more CXL endpoint devices). Each VCS serves only one specific host device; that is, a VCS can only have one upstream port connected to the root port of a single host device. Through VCS isolation, CXL.io, CXL.mem, and other protocol traffic between different host devices are isolated and do not interfere with each other, thus ensuring resource independence and security. Since different host devices may manage different data types and security levels, their actual data cleanup needs also differ. Therefore, any host device can issue a second configuration command to the target CXL switch, configuring at its VCS branch level whether the CXL switch needs to issue data cleanup commands to CXL endpoint devices bound to that host device. The second cleanup configuration can be preset by the host device each time it is enabled. The second cleanup configuration can also be dynamically updated by the host device during operation.

[0043] Please see Figure 7 This disclosure also provides a CXL switch, the CXL switch comprising: The receiving unit 100 is used to receive at least one device unbinding instruction sent by the switching network manager. Any device unbinding instruction is used to request the unbinding of the specified downstream vPPB on the CXL switch with the corresponding CXL endpoint device. The CXL endpoint device is a single logical device or one of multiple logical devices. The sending unit 200 is used to send a data clearing command to the CXL endpoint device in response to the device unbinding command, under the condition that the first clearing configuration is enabled on the CXL switch and the second clearing configuration is enabled on the virtual CXL switch to which the downstream vPPB belongs, so as to clear the user data stored in the volatile memory of the CXL endpoint device. The unbinding unit 300 is used to release the binding status between the downstream vPPB and the corresponding CXL endpoint device according to the device unbinding command.

[0044] In one embodiment, the sending unit 200 is specifically configured to: if the CXL endpoint device is a single logical device, send the secure erase command in the CXL standard protocol to the mailbox corresponding to the CXL endpoint device, so that the CXL endpoint device clears all user data in its local volatile memory; if the CXL endpoint device is one of multiple logical devices, send the secure erase command in the CXL standard protocol to the mailbox corresponding to the CXL endpoint device, so that multiple logical devices clear the user data corresponding to the CXL endpoint device in their local volatile memory.

[0045] In one embodiment, the receiving unit 100 is further configured to: receive a first configuration instruction sent by the switching network manager; and enable or disable the first clear configuration of the CXL switch according to the first configuration instruction.

[0046] In one embodiment, the receiving unit 100 is further configured to: receive a second configuration instruction sent by a host device that matches the virtual CXL switch; and enable or disable a second clear configuration of the virtual CXL switch according to the second configuration instruction.

[0047] The various units described in this embodiment can be implemented by computer chips. The computer chip can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or combinations of the above types of chips.

[0048] For ease of description, the CXL switch described above is divided into various functional units. Of course, in implementing this application, the functions of each unit can be implemented in one or more software and / or hardware.

[0049] Please see Figure 8This disclosure also provides a CXL memory expansion system, the system including a switching network manager, a target CXL switch and at least one CXL endpoint device, the CXL endpoint device being a single logical device or one of multiple logical devices.

[0050] In this embodiment, the switching network manager is used to send at least one device unbinding command to the target CXL switch. Any device unbinding command is used to request the unbinding of the specified downstream vPPB on the target CXL switch with the corresponding CXL endpoint device.

[0051] In this embodiment, the target CXL switch is used to receive the device unbinding command, and under the condition that the target CXL switch has enabled the first clear configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled the second clear configuration, the target CXL switch responds to the device unbinding command and sends a data clear command to the CXL endpoint device.

[0052] In this embodiment, the CXL endpoint device is used to clear the user data stored in the volatile memory of the CXL endpoint device according to the data clearing instruction.

[0053] In this embodiment, the target CXL switch is also used to unbind the downstream vPPB from the corresponding CXL endpoint device according to the device unbinding command.

[0054] In some implementations, the switching network manager is also used to send a first configuration instruction to the target CXL switch; the target CXL switch is also used to enable or disable the first clear configuration of the target CXL switch according to the first configuration instruction.

[0055] In some implementations, the CXL memory expansion system further includes a host device; the host device is configured to send a second configuration instruction to the target CXL switch; the target CXL switch is further configured to enable or disable a second clear configuration of the virtual CXL switch according to the second configuration instruction.

[0056] In the technical solution provided by one or more embodiments of this disclosure, after receiving the device unbinding instruction, the target CXL switch can actively send a data clearing instruction to the CXL endpoint device, thereby timely and accurately clearing the corresponding user data in the CXL endpoint device, effectively eliminating the security risks caused by user data residue, and significantly improving the data security of the CXL memory expansion system.

[0057] On the one hand, considering that not every device unbinding operation requires clearing user data on the CXL endpoint device, the technical solution provided by one or more embodiments of this disclosure uses the switching network manager to issue a first configuration command to the target CXL switch, thereby enabling or disabling the first clear configuration as needed, and thus providing a flexible configuration management mechanism for data cleanup tasks at the global level.

[0058] On the other hand, considering that the types of data and security levels managed by different host devices may differ, their actual needs for data cleanup are also different. The technical solutions provided by one or more embodiments of this disclosure allow each host device that matches the virtual CXL switch to issue a second configuration command to the target CXL switch, thereby realizing on-demand control of the second cleanup configuration and achieving fine-grained configuration management of data cleanup tasks for each host device.

[0059] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on its differences from other embodiments. In particular, the embodiments for the CXL switch and CXL memory expansion system are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0060] The above description is merely an embodiment of this application and is not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

[0061] Although embodiments of the present disclosure have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations all fall within the scope defined by the appended claims.

Claims

1. A data protection method based on CXL memory extension, characterized in that, The method is applied to a target CXL switch, and the method includes: Receive at least one device unbinding instruction sent by the switching network manager, wherein any of the device unbinding instructions is used to request the release of the binding state between the specified downstream vPPB on the target CXL switch and the corresponding CXL endpoint device, wherein the CXL endpoint device is a single logical device or one of multiple logical devices; If the target CXL switch has enabled the first clear configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled the second clear configuration, then in response to the device unbinding command, a data clear command is sent to the CXL endpoint device to clear the user data stored in the volatile memory of the CXL endpoint device. According to the device unbinding command, the binding status between the downstream vPPB and the corresponding CXL endpoint device is released.

2. The method according to claim 1, characterized in that, The step of issuing a data clearing command to the CXL endpoint device to clear the user data stored in the volatile memory of the CXL endpoint device includes: If the CXL endpoint device is a single logical device, the secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device so that the CXL endpoint device can clear all user data in its local volatile memory. If the CXL endpoint device is one of a series of logical devices, then the secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device, so that the series of logical devices can clear the user data corresponding to the CXL endpoint device from the local volatile memory.

3. The method according to claim 1 or 2, characterized in that, The method further includes: Receive the first configuration command sent by the switching network manager; According to the first configuration instruction, enable or disable the first clear configuration of the target CXL switch.

4. The method according to claim 1, characterized in that, The method further includes: Receive a second configuration command sent by a host device that matches the virtual CXL switch; According to the second configuration instruction, enable or disable the second clear configuration of the virtual CXL switch.

5. A CXL switch, characterized in that, The CXL switch includes: The receiving unit is used to receive at least one device unbinding instruction sent by the switching network manager. Each of the device unbinding instructions is used to request the release of the binding state between the specified downstream vPPB on the CXL switch and the corresponding CXL endpoint device. The CXL endpoint device is a single logical device or one of multiple logical devices. The sending unit is configured to, in response to the device unbinding command, send a data clearing command to the CXL endpoint device to clear the user data stored in the volatile memory of the CXL endpoint device, provided that the first clearing configuration is enabled on the CXL switch and the second clearing configuration is enabled on the virtual CXL switch to which the downstream vPPB belongs. The unbinding unit is used to release the binding state between the downstream vPPB and the corresponding CXL endpoint device according to the device unbinding instruction.

6. The CXL switch according to claim 5, characterized in that, The transmitting unit is specifically used for: If the CXL endpoint device is a single logical device, the secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device so that the CXL endpoint device can clear all user data in its local volatile memory. If the CXL endpoint device is one of a series of logical devices, then the secure erase command in the CXL standard protocol is sent to the mailbox corresponding to the CXL endpoint device, so that the series of logical devices can clear the user data corresponding to the CXL endpoint device from the local volatile memory.

7. The CXL switch according to claim 5 or 6, characterized in that, The receiving unit is also used for: Receive the first configuration command sent by the switching network manager; According to the first configuration instruction, enable or disable the first clear configuration of the CXL switch.

8. The CXL switch according to claim 5, characterized in that, The receiving unit is also used for: Receive a second configuration command sent by a host device that matches the virtual CXL switch; According to the second configuration instruction, enable or disable the second clear configuration of the virtual CXL switch.

9. A CXL memory expansion system, characterized in that, The system includes a switching network manager, a target CXL switch, and at least one CXL endpoint device, wherein the CXL endpoint device is a single logical device or one of multiple logical devices. The switching network manager is used to send at least one device unbinding instruction to the target CXL switch. Any device unbinding instruction is used to request the unbinding of the downstream vPPB specified on the target CXL switch with the corresponding CXL endpoint device. The target CXL switch is used to receive the device unbinding command, and under the condition that the target CXL switch has enabled the first clearing configuration and the virtual CXL switch to which the downstream vPPB belongs has enabled the second clearing configuration, in response to the device unbinding command, sends a data clearing command to the CXL endpoint device. The CXL endpoint device is configured to clear the user data stored in the volatile memory of the CXL endpoint device according to the data clearing instruction; The target CXL switch is also used to release the binding state between the downstream vPPB and the corresponding CXL endpoint device according to the device unbinding instruction.

10. The system according to claim 9, characterized in that, The switching network manager is further configured to send a first configuration command to the target CXL switch; the target CXL switch is further configured to enable or disable the first clear configuration of the target CXL switch according to the first configuration command; and / or, The system further includes a host device; the host device is used to send a second configuration command to the target CXL switch; the target CXL switch is also used to enable or disable the second clear configuration of the virtual CXL switch according to the second configuration command.