Data transmission method, device and equipment

By using a management module in the data storage device to verify the flow properties of the target data and the receiving device, combined with the flow strategy, the problem of difficulty in ensuring security during data transmission is solved, and the secure transmission of data is achieved.

CN120050341APending Publication Date: 2025-05-27HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311599756.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-27
Publication Date
2025-05-27

AI Technical Summary

Technical Problem

The prior art has a risk of leakage during data transmission, especially after data is transmitted to the site on the user side, the security of data is difficult to effectively ensure.

Method used

The management module obtains the flow attributes of the target data and the flow attributes of the receiving device in the data storage device, and combines the flow strategy to decide whether to allow the transmission of the target data to the receiving device, so as to perform security verification before data transmission.

Benefits of technology

It effectively avoids the possible leakage risk of data during transmission and after reaching the user side, and improves the overall security of the data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120050341A_ABST
    Figure CN120050341A_ABST
Patent Text Reader

Abstract

A data transmission method, apparatus and device, a management module acquires a transfer attribute of target data to be transmitted and a transfer attribute of a receiving apparatus, the transfer attribute of the target data characterizes a limited factor of transmission of the target data, and the transfer attribute of the receiving apparatus characterizes a limited factor of data acquisition of the receiving apparatus. The management module can determine whether the target data is allowed to be transmitted to the receiving device or not according to the circulation attribute of the target data, the circulation attribute of the receiving device and a circulation strategy, and the circulation strategy describes conditions which need to be followed by the circulation attribute of the target data and the circulation attribute of the receiving device when the receiving device has the permission to obtain the target data. In the embodiment of the invention, if the receiving device needs to receive the data, before the data is transmitted to the receiving device, the management module can determine whether the target data is allowed to be transmitted to the receiving device according to the flow attribute of the target data, the flow attribute of the receiving device and the flow strategy, so that the security of the target data is effectively ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technologies, and in particular, to a data transmission method, apparatus, and device. Background Art

[0002] With the development of network technologies, there is an increasing demand for cross-domain sharing or flow of data. For example, data is shared between the company headquarters and its branches, between the company and its partners, and between the enterprise management department and the enterprise.

[0003] Due to the different security levels and confidentiality levels of data, it is necessary to control the data to prevent data leakage. Currently, the control of data is implemented based on access control lists (ACLs). The implementation process is as follows: When a user requests to view data on a remote site from a user-side site, the user-side site can access the remote site to obtain the data and the ACL of the data. The ACL of the data describes the information of the users allowed to access the data. The user-side site determines whether the user is allowed to access the data according to the ACL of the data. If the user is not allowed to access the data, the user-side site directly rejects the user's request.

[0004] From the above implementation process, it can be seen that although the user-side site can reject the user's request based on the ACL of the data, the data has been transmitted from the remote site to the user-side site. If the security level of the data is high, there is still a risk of leakage during the transmission process or after the data reaches the user-side site. Summary of the Invention

[0005] A data transmission method, apparatus, and device provided by an embodiment of this application are used to ensure data security.

[0006] In a first aspect, an embodiment of this application provides a data transmission method, which can be executed by a device where a management module is located. In this method:

[0007] The device where the management module is located can obtain the transfer attribute of the target data to be transmitted and the transfer attribute of the receiving device. Among them, the transfer attribute of the target data represents the restricted factors for the transmission of the target data, and the transfer attribute of the receiving device represents the restricted factors for the receiving device to obtain data. That is to say, the target data cannot be transmitted arbitrarily, but is restricted by certain factors; similarly, the receiving device cannot obtain any data, but is restricted by certain factors.

[0008] The device where the management module is located can determine whether the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy. Among them, the transfer policy describes the conditions that the transfer attribute of the target data and the transfer attribute of the receiving device need to follow when the receiving device has the permission to obtain the target data.

[0009] Through the above method, if the receiving device needs to receive data, before transmitting the data to the receiving device, the device where the management module is located can determine whether the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, effectively ensuring the security of the target data.

[0010] In a possible implementation, the device where the management module is located can be a data storage device, and the data storage device stores the target data. The data storage device receives a data request sent by the receiving device. The data request is used to request to obtain the target data, and the transfer attribute of the receiving device is carried in the data request. After receiving the data request, the data storage device can determine whether the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy.

[0011] Through the above method, as a data storage device storing the target data, the data storage device can decide whether to transmit the target data to the receiving device by itself, improving the security of the target data and avoiding data leakage caused by transmitting the target data to the receiving device.

[0012] In a possible implementation, as a data storage device, when obtaining the transfer attribute of the target data to be transmitted, the data storage device can obtain the transfer attribute of the target data from the metadata of the target data.

[0013] Through the above method, the transfer attribute of the target data is recorded in the metadata of the target data, which is convenient for the data storage device to obtain the transfer attribute of the target data.

[0014] In a possible implementation, the receiving device can send a metadata request to the data storage device, and the transfer data of the receiving device can be carried in the metadata request. The metadata request is used to request a metadata set, and the metadata set can be a set composed of the metadata of all data allowed to be obtained by the receiving device, or a part of the metadata of all data allowed to be obtained by the receiving device.

[0015] After the data storage device receives the metadata request sent by the receiving device, in response to the metadata request, it determines a metadata set according to the transfer attributes of the receiving device, and the metadata set includes the metadata allowed to be transmitted to the receiving device. The data storage device transmits the metadata set to the receiving device.

[0016] Through the above method, when the receiving device requests to obtain the metadata set, the data storage device will transmit the metadata set including the metadata allowed to be transmitted to the receiving device to the receiving device only after determining the metadata allowed to be transmitted to the receiving device, effectively ensuring the security of the metadata.

[0017] In a possible implementation manner, if the data storage device determines that the target data is allowed to be transmitted to the receiving device, the data storage device may transmit the target data to the receiving device.

[0018] If the data storage device determines that the target data is not allowed to be transmitted to the receiving device, the data storage device may reject the data request and not transmit the target data to the receiving device.

[0019] Through the above method, the data storage device will transmit the target data to the receiving device only when the target data is allowed to be transmitted to the receiving device.

[0020] In a possible implementation manner, the device where the management module is located may be a device independent of the data storage device. For the convenience of description, the device independent of the data storage device is referred to as the management device.

[0021] The data storage device may send a first inquiry message to the management device, and the first inquiry message is used to inquire whether the target data is allowed to be transmitted to the receiving device. The first inquiry message carries the transfer attributes of the target data and the transfer attributes of the receiving device.

[0022] The management device may obtain the transfer attributes of the target data and the transfer attributes of the receiving device from the first inquiry message, and then determine whether the target data is allowed to be transmitted to the receiving device according to the transfer attributes of the target data, the transfer attributes of the receiving device, and the transfer policy.

[0023] Through the above method, before the data storage device sends the target data to the receiving device, it will first ask the management device to determine whether the target data is allowed to be transmitted to the receiving device, so as to avoid the situation that the receiving device transmits the target data without obtaining the permission of the target data.

[0024] In a possible implementation manner, the data storage device may send a second inquiry message to the management device, and the second inquiry message is used to inquire about the metadata set, and the metadata set includes the metadata allowed to be transmitted to the receiving device. The second inquiry message carries the transfer attributes of the receiving device.

[0025] In response to the second inquiry message, the management device determines a set of metadata according to the transfer attributes of the receiving device, and transmits the set of metadata to the data storage device, or transmits information indicating the set of metadata to the data storage device.

[0026] Through the above method, before the data storage device sends metadata to the receiving device, it will first ask the management device to determine the metadata that is allowed to be transmitted to the receiving device, so as to ensure the security of the metadata.

[0027] In a possible implementation, when the management device determines that the target data is allowed to be transmitted to the receiving device according to the transfer attributes of the target data, the transfer attributes of the receiving device, and the transfer policy, it may send a notification message (such as the first notification message mentioned in the embodiments of the present application) to the data storage device, and the notification message is used to notify that the target data is allowed to be transmitted to the receiving device.

[0028] When the management device determines that the target data is not allowed to be transmitted to the receiving device according to the transfer attributes of the target data, the transfer attributes of the receiving device, and the transfer policy, it may notify the data storage device that the target data is not allowed to be transmitted to the receiving device.

[0029] Through the above method, the management device timely notifies the data storage device whether the target data is allowed to be transmitted to the receiving device.

[0030] In a possible implementation, the device where the management module is located also has the function of configuring transfer attributes. The device where the management module is located can configure transfer attributes for the receiving device under the instruction of the user; configure transfer attributes for the target data under the instruction of the user, and record the transfer attributes of the target data in the metadata of the target data.

[0031] Through the above method, the device where the management module is located configures transfer attributes under the instruction of the user, ensuring that the transfer attributes of the target data and the transfer attributes of the receiving device meet the user's requirements. Furthermore, the result of whether the target data is allowed to be transmitted to the receiving device meets the user's requirements.

[0032] In a possible implementation, when the device where the management module is located configures transfer attributes for the receiving device, it may generate a certificate recording the transfer attributes of the receiving device, and perform some or all of the following on the certificate: encrypt the certificate using the public key of the receiving device, and add signature information to the certificate; the signature information is generated using its own private key.

[0033] After generating the certificate, the device where the management module is located sends the certificate to the receiving device.

[0034] Through the above method, the device where the management module is located notifies the receiving device of the configured transfer attributes by sending a certificate to the receiving device. This method has a high level of security and avoids malicious tampering of the transfer attributes of the receiving device.

[0035] In a possible implementation, in the foregoing description, the transfer attributes of the receiving device are carried in a data request, a metadata request, a first inquiry message, or a second inquiry message. In fact, the transfer attributes of the receiving device may not be carried in the data request, the metadata request, the first inquiry message, or the second inquiry message, but are stored in the device where the management module is located. For example, a set of transfer attributes pre-configured by the user is stored in the device where the management module is located. When the device where the management module is located obtains the transfer attributes of the receiving device, it can obtain the transfer attributes of the receiving device from the set of device transfer attributes pre-configured by the user. The set of device transfer attributes includes the transfer attributes configured by the user for at least one device.

[0036] Through the above method, the device where the management module is located can obtain the transfer attributes of the receiving device from the set of device transfer attributes, which can ensure that the transfer attributes of the receiving device are the true process attributes and avoid the receiving device requesting to obtain target data or metadata with false transfer attributes.

[0037] In a possible implementation, the present application does not limit the content indicated by the transfer attributes of the target data. The transfer data of the target data may indicate the security level of the target data, may also indicate the service type of the target data, and may also indicate the security level of the target data and the service type of the target data.

[0038] The present application does not limit the content indicated by the transfer attributes of the receiving device. The transfer attributes of the receiving device may indicate the security level of the receiving device, may also indicate the service type of the service undertaken by the receiving device, and may also indicate the security level of the receiving device and the service type of the service undertaken by the receiving device at the same time.

[0039] Through the above method, the content indicated by the transfer attributes of the target data and the transfer attributes of the receiving device is relatively flexible and applicable to different scenarios.

[0040] In a second aspect, an embodiment of the present application further provides a data transmission device. The data transmission device has a function of implementing the behavior of the device (such as a data storage device or a management device) where the management module is located in the method example of the first aspect above. The beneficial effects can be seen in the description of the first aspect and will not be repeated here. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions. The structure of the data transmission device includes a management module.

[0041] The management module can obtain the transfer attributes of the target data to be transmitted and the transfer attributes of the receiving device. The transfer attributes of the target data characterize the restricted factors for the transmission of the target data, and the transfer attributes of the receiving device characterize the restricted factors for the receiving device to obtain data. The management module determines whether the target data is allowed to be transmitted to the receiving device according to the transfer attributes of the target data, the transfer attributes of the receiving device, and the transfer policy. Among them, the transfer policy describes the conditions that the transfer attributes of the target data and the transfer attributes of the receiving device need to follow when the receiving device has the permission to obtain the target data.

[0042] In a possible implementation manner, when the data transmission device has the behavioral function of implementing a data storage device, the data transmission device further includes a first transmission module.

[0043] The first transmission module receives a data request sent by the receiving device. The data request is used to request to obtain the target data, and the transfer attributes of the receiving device are carried in the data request. The management module obtains the transfer attributes of the receiving device from the data request.

[0044] In a possible implementation manner, when the data transmission device has the behavioral function of implementing a data storage device, the management module obtains the transfer attributes of the target data from the metadata of the target data.

[0045] In a possible implementation manner, the first transmission module can also receive a metadata request sent by the receiving device, and the transfer attributes of the receiving device are carried in the metadata request.

[0046] In response to the metadata request, the management module determines a metadata set according to the transfer attributes of the receiving device. The metadata set includes the metadata allowed to be transmitted to the receiving device.

[0047] The first transmission module transmits the metadata set to the receiving device.

[0048] In a possible implementation manner, after the management module determines that the target data is allowed to be transmitted to the receiving device, the first transmission module sends the target data to the receiving device. After the management module determines that the target data is not allowed to be transmitted to the receiving device, the first transmission module rejects the data request.

[0049] In a possible implementation manner, when the data transmission device has the behavioral function of implementing a management device, the data transmission device further includes a second transmission module.

[0050] The second transmission module receives a first inquiry message sent by the data storage device. The first inquiry message is used to inquire whether the target data is allowed to be transmitted to the receiving device, and the transfer attributes of the target data and the transfer attributes of the receiving device are carried in the first inquiry message.

[0051] The management module obtains the transfer attribute of the target data and the transfer attribute of the receiving device from the first inquiry message.

[0052] In a possible implementation, the second transmission module may also receive a second inquiry message sent by the data storage device. The second inquiry message is used to inquire about a metadata set, and the metadata set includes metadata that is allowed to be transmitted to the receiving device. The transfer attribute of the receiving device is carried in the second inquiry message.

[0053] In response to the second inquiry message, the management module determines the metadata set according to the transfer attribute of the receiving device.

[0054] The second transmission module transmits the metadata set to the data storage device.

[0055] In a possible implementation, when the management module determines that the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, the second transmission module sends a notification message to the data storage device. The notification message is used to notify that the target data is allowed to be transmitted to the receiving device.

[0056] In a possible implementation, the management module can configure the transfer attribute for the receiving device under the user's instruction; the management module can also configure the transfer attribute for the target data under the user's instruction and record the transfer attribute of the target data in the metadata of the target data.

[0057] In a possible implementation, when the management module configures the transfer attribute for the receiving device, it generates a certificate recording the transfer attribute of the receiving device and performs some or all of the following on the certificate: encrypting the certificate using the public key of the receiving device, adding signature information to the certificate; where the signature information is generated using its own private key; the management module sends the certificate to the receiving device.

[0058] In a possible implementation, the transfer attribute of the receiving device may not be carried in the data request, metadata request, first inquiry message, and second inquiry message either. In this case, the management module can obtain the transfer attribute of the receiving device from the device transfer attribute set pre-configured by the user. The device transfer attribute set includes the transfer attributes configured by the user for at least one device.

[0059] In a possible implementation, the transfer attribute of the target data indicates some or all of the following: the security level of the target data, the service type of the target data. The transfer attribute of the receiving device indicates some or all of the following: the security level of the receiving device, the service type of the service undertaken by the receiving device.

[0060] These modules can perform the corresponding functions in the method examples of the first aspect above. For specific details, please refer to the detailed descriptions in the method examples and will not be elaborated here.

[0061] In a third aspect, the present application further provides a computing device. The computing device includes a processor and a memory, and may further include a communication interface. The processor executes program instructions in the memory to perform the method provided by the first aspect or any possible implementation manner of the first aspect. The memory is coupled to the processor and stores the necessary program instructions and data during the data transmission process. The communication interface is used to communicate with other devices, such as receiving data requests, metadata requests, first inquiry messages, and second inquiry messages.

[0062] In a fourth aspect, the present application provides a computing device system. The computing device system includes at least one computing device. Each computing device includes a memory and a processor. The processor of at least one computing device is used to access the code in the memory to perform the method provided by the first aspect or any possible implementation manner of the first aspect.

[0063] In a fifth aspect, the present application provides a computer-readable storage medium. When the computer-readable storage medium is executed by a computing device, the computing device performs the method provided by the foregoing first aspect or any possible implementation manner of the first aspect. The storage medium stores a program. The storage medium includes, but is not limited to, volatile memories such as random access memories, and non-volatile memories such as flash memories, hard disk drives (HDDs), and solid state drives (SSDs).

[0064] In a sixth aspect, the present application provides a computing device program product. The computing device program product includes computer instructions. When executed by a computing device, the computing device performs the method provided by the foregoing first aspect or any possible implementation manner of the first aspect. The computer program product may be a software installation package. In the case where the method provided by the foregoing first aspect or any possible implementation manner of the first aspect is needed, the computer program product can be downloaded and executed on the computing device.

[0065] In a seventh aspect, the present application further provides a computer chip. The chip is connected to a memory. The chip is used to read and execute the software program stored in the memory and perform the methods described in the first aspect and various possible implementation manners of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0066] Figure 1 FIG. is a schematic structural diagram of a data transmission system provided by the present application;

[0067] Figures 2A to 2B A deployment schematic diagram of a management module provided for this application;

[0068] Figures 3A to 3B A structural schematic diagram of a data transmission system in an actual scenario provided for this application;

[0069] Figure 4 A schematic diagram of a data transmission method provided for this application;

[0070] Figure 5 A schematic diagram of a configuration interface of a circulation strategy provided for this application;

[0071] Figure 6 A schematic diagram of a data transmission method provided for this application;

[0072] Figure 7 A structural schematic diagram of a data transmission device provided for this application;

[0073] Figures 8 to 9 A structural schematic diagram of a computing device provided for an embodiment of this application. Detailed implementation manners

[0074] Before describing a data transmission method, device, and equipment provided for an embodiment of this application, some concepts related to the embodiment of this application will be described first.

[0075] (1), File system.

[0076] A file system is a structured form of data storage and organization. The file system organizes the data in a computing device using the concept of "files". Data for the same purpose is organized into different types of files according to the structural forms required by different applications. Different suffixes are usually used to refer to different types, and a convenient-to-remember name, that is, the "file name", is configured for each file. When the number of files is large, these files are grouped according to a certain division method, and each group of files is placed in the same directory (or called a folder). Moreover, in addition to files, a directory can also have a lower-level directory (referred to as a subdirectory or subfolder) below it. All files and directories form a tree structure. This tree structure has a specific name: the file system. There are many types of file systems, and common ones include FAT / FAT32 / NTFS of Windows, EXT2 / EXT3 / EXT4 / XFS / BtrFS of Linux, etc. For easy searching, starting from the root node, going down through the directories level by level until the file itself, the names of these directories, subdirectories, and files are concatenated with special characters (for example, Windows / DOS uses "\", and Unix-like systems use " / "). Such a string of characters is called a file path. For example, " / etc / systemd / system.conf" in Linux or "C:\Windows\System32\taskmgr.exe" in Windows. The path is the unique identifier for accessing a specific file. For example, D:\data\file.exe under Windows is the path of a file, which means the file file.exe in the data directory under the D partition.

[0077] The file system is built on block devices. The file system not only records the file path but also records which blocks make up a file and which blocks record directory / subdirectory information.

[0078] It should be noted that the file system is only a possible form of data storage and organization. The embodiments of this application do not limit the form of data storage and organization of the data stored in the data storage device 100. Here, the file system is only used as a relatively common form of data storage and organization as an example to illustrate the data transmission method provided by the embodiments of this application. In fact, the data transmission method provided by the embodiments of this application is also applicable to other forms of data storage and organization, such as the data storage and organization form at the block level and the data storage and organization form at the object level.

[0079] (2) Global file system (GFS).

[0080] GFS is a data sharing system built by multiple data nodes. GFS unifies the local data stored in each data node to form a global data view. Among them, the global data view shows the data stored in each data node. Any data node in GFS can query this data view and access the data shown in this data view. Through this GFS, any data node can not only access the data stored locally, but also access the data stored on other data nodes. It is as simple and efficient for this data node to access the data stored on other data nodes as it is to access the locally stored data.

[0081] GFS can be understood as a logical "file system", which can integrate the data on multiple data nodes into a "file system". GFS does not require the data on each data node to be organized in files. For any data node, the data on this data node can be organized in the form of a file system, or in the form of blocks or objects.

[0082] In the embodiments of the present application, any data storage device 100 can be used as a data node and joined into the global file system. Multiple data storage devices 100 can share data based on the global file system. In this global file system, any data storage device 100 can view the global data view of this global file system, and the global data view shows the data stored in each data storage device 100 that has joined this global file system. This also provides a basis for a data storage device 100 to access the data or metadata of another data storage device 100.

[0083] (3), Metadata.

[0084] Metadata, also known as mediation data and relay data, is data about data, mainly information describing the properties of data, such as the address of the data, the modification record of the data, the size of the data, the creation date of the data, etc.

[0085] Here, taking the case where data is stored and organized in the form of a file system as an example, the metadata involved in this file system includes file metadata, directory metadata, etc.

[0086] The metadata of a file describes the properties of the data in the file, such as the file name, the path of the file (which can also be understood as the address of the file), the modification record of the data, the size of the file, etc. The metadata of a directory describes the attribute information of the directory, such as the directory name, the modification record of the directory, the identification (ID) of the directory, the creation time of the directory, the modification time of this directory, the access time, the group to which it belongs, etc.

[0087] (4) Transfer attributes and transfer policies.

[0088] In this application, transfer attributes are configured for data and the data storage device 100. The transfer attributes of the data and the transfer attributes of the data storage device 100 are the main basis for determining whether the data or the metadata of the data can be transmitted to the data storage device 100. Among them, the transfer attributes of the data can be saved as part of the metadata of the data in the metadata of the data.

[0089] The transfer attributes of the data characterize the restricted factors for the data to be transmitted; in the embodiments of this application, the transmission of data between various data storage devices 100 is subject to certain restrictions, and the transfer attributes of the data are used to describe such restrictions. That is to say, when determining whether the data is allowed to be transmitted to the data storage device 100, the transfer attributes of the data need to be referred to.

[0090] Similarly, the transfer attributes of the data storage device 100 characterize the restricted factors for the receiving device to obtain data. In the embodiments of this application, the data that each data storage device 100 can receive is subject to certain restrictions. For example, the data storage device 100A can request any data from other data storage devices 100, but the data storage device 100B can only request partial data from the data storage device 100A. The transfer attributes of the data storage device 100 are used to describe the restrictions on the data storage device 100. When determining whether the data is allowed to be transmitted to the data storage device 100, the transfer attributes of the data storage device 100 need to be referred to.

[0091] The transfer policy describes the conditions that need to be met by the transfer attributes of the data and the transfer attributes of the data storage device 100 when the data or the metadata of the data can be transmitted to the data storage device 100.

[0092] The transfer attributes of the data and the transfer attributes of the data storage device 100 themselves may not have practical significance, but are only two types of information that need to be compared when determining whether the data or the metadata of the data can be transmitted to the data storage device 100.

[0093] The representation form of the transfer policy is related to the representation methods of the transfer attributes of the data and the transfer attributes of the data storage device 100. If the representation methods of the transfer attributes of the data and the transfer attributes of the data storage device 100 are different, the representation form of the transfer policy may also be different.

[0094] For example, the transfer attributes of the data record a set of identifiers, where the set of identifiers includes multiple identifiers, and the transfer attributes of the data storage device 100 can be the identifiers configured for the data storage device 100.

[0095] Then, the transfer policy can be expressed as: the identifier of the data storage device 100 belongs to the set of identifiers recorded in the transfer attribute of the data. That is, when the identifier of the data storage device 100 belongs to the set of identifiers recorded in the transfer attribute of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0096] Then, the transfer policy can also be expressed as: the identifier of the data storage device 100 does not belong to the set of identifiers recorded in the transfer attribute of the data. That is, when the identifier of the data storage device 100 does not belong to the set of identifiers recorded in the transfer attribute of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0097] For another example, according to the attributes of the data (such as the identifier of the user to which the data belongs, the creation date of the data, the business type to which the data belongs, etc.), the same transfer attribute of the data is configured for the data with the same attributes. For a certain data storage device 100, the data storage device 100 can be configured to be dedicated to managing the data with the same attributes. The transfer attribute of the data storage device 100 is the same as the transfer attribute of the data it can manage.

[0098] Then, the transfer policy can be expressed as: the transfer attribute of the data storage device 100 is the same as the transfer attribute of the data. That is, when the transfer attribute of the data storage device 100 is the same as the transfer attribute of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0099] The transfer attribute of the data and the transfer attribute of the data storage device 100 itself can also have a certain special meaning. When the data storage device 100 determines whether the data or the metadata of the data can be transmitted to the data storage device 100, it needs to determine whether it meets the transfer policy according to the transfer attribute of the data and the transfer attribute of the data storage device 100.

[0100] For example, the transfer attribute of the data describes the security level of the data. Similarly, the transfer attribute of the data storage device 100 describes the security level of the data storage device 100.

[0101] Then, the transfer policy can be expressed as: the transfer attribute of the data storage device 100 is the same as the transfer attribute of the data. That is, when the security level of the data storage device 100 is consistent with the security level of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0102] Then, the transfer policy can also be expressed as: the transfer attribute of the data storage device 100 is greater than the transfer attribute of the data. That is, when the security level of the data storage device 100 is greater than the security level of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0103] For another example, the transfer attribute of the data describes the business type of the data. Similarly, the transfer attribute of the data storage device 100 describes the business type of the data that the data storage device 100 can process (which can also be referred to as the business type of the business undertaken by the data storage device 100).

[0104] Then, the transfer policy can be expressed as: the transfer attribute of the data storage device 100 is the same as the transfer attribute of the data. That is, when the business type of the data that the data storage device 100 can process is consistent with the business type of the data, the data storage device 100 can obtain the data or the metadata of the data.

[0105] In practical applications, the transfer attribute of the data can also describe multiple attributes of the data. Similarly, the transfer attribute of the data storage device 100 can also describe multiple attributes of the data storage device 100.

[0106] For example, the transfer attribute of the data describes the business type and the security level of the data. Similarly, the transfer attribute of the data storage device 100 describes the business type of the data that the data storage device 100 can process and the security level of the data storage device 100.

[0107] Then, the transfer policy can be expressed as: the business type of the data described in the transfer attribute of the data storage device 100 is consistent with the business type of the data, and the security level described in the transfer attribute of the data storage device 100 is greater than the security level of the data. That is, when the business type of the data that the data storage device 100 can process is consistent with the business type of the data, and the security level of the data storage device 100 is greater than the security level of the requested data, the data storage device 100 can obtain the data or the metadata of the data.

[0108] In the embodiments of the present application, for the convenience of description, when determining whether the metadata is allowed to be transmitted to the data storage device 100, the transfer attribute of the data obtained is the transfer attribute of "the data described by the metadata". That is, "data" is "the data described by the metadata". In other words, the transfer attribute of the data and the transfer attribute of the metadata are consistent.

[0109] It should be noted that when determining whether the metadata is allowed to be transmitted to the data storage device 100 based on the transfer attribute of the data, the transfer attribute of the data storage device 100, and the transfer policy in the embodiments of the present application, the transfer attribute exclusive to the metadata is not configured for the metadata, but the transfer attribute of the data is used as the "transfer attribute of the metadata". In practical applications, when implementing the management of the transfer permission of the metadata, the transfer attribute can also be separately configured for the metadata. Whether the metadata is allowed to be transmitted to the data storage device 100 is determined according to the transfer attribute of the metadata, the transfer attribute of the data storage device 100, and the transfer policy. The specific determination method is similar to the method of determining whether the metadata is allowed to be transmitted to the data storage device 100 according to the transfer attribute of the data, the transfer attribute of the data storage device 100, and the transfer policy, and will not be elaborated here.

[0110] As Figure 1 shown, it is a schematic structural diagram of a data transmission system provided by an embodiment of the present application. The system includes a plurality of data storage devices 100.

[0111] For any data storage device 100, the data storage device 100 stores data and can manage the data stored therein, such as performing operations of adding, deleting, searching, modifying, etc. on the data, or performing operations of adding, deleting, searching, modifying, etc. on the metadata of the data.

[0112] In the embodiments of the present application, the data organization form stored in the data storage device 100 is not limited. For example, the data in the data storage device 100 is organized in the form of a file system. For another example, the data in the data storage device 100 is organized in the form of object storage. For another example, the data in the data storage device 100 is organized in the form of block storage. The data organization forms in different data storage devices 100 can be the same or different.

[0113] In this data transmission system, it is allowed to transmit data or metadata between any two data storage devices 100. To ensure the security of the data or metadata, before a data storage device 100 transmits data or metadata to another data storage device 100, it is necessary to first determine whether the data or metadata to be transmitted is allowed to be transmitted to the other data storage device 100; only when the data or metadata to be transmitted is allowed to be transmitted to the other data storage device 100, will the data transmission device transmit the data or metadata to the other data transmission device.

[0114] The embodiments of the present application do not limit the specific form of the data storage device 100. The data storage device 100 can be a hardware device. The data storage device 100 can be a single computing device or a cluster including multiple computing devices. The data storage device 100 can be a software device. The data storage device 100 can be software for managing files, such as file management software, database management software, etc. When the data storage device 100 is a software device, the "data stored by the data storage device 100" mentioned above refers to the data managed by the data storage device 100.

[0115] A management module 200 is deployed in the data transmission system. The management module 200 is used to determine whether data or metadata is allowed to be transmitted to a certain data storage device 100.

[0116] In the embodiments of the present application, the management module 200 has the following management authorities: management of the transfer authority of data and management of the transfer authority of the metadata of data.

[0117] Among them, the transfer authority of data refers to which one or which several data storage devices 100 the data is allowed to be transmitted between in the data transmission system. Similarly, the transfer authority of metadata refers to which one or which several data storage devices 100 the metadata is allowed to be transmitted between in the data transmission system.

[0118] The management of the transfer authority of data and the management of the transfer authority of the metadata of data will be described separately below:

[0119] 1. Management of the transfer authority of metadata.

[0120] The management module 200 can determine whether metadata is allowed to be transmitted to the data storage device 100, or determine which one or which several data storage devices 100 the metadata is allowed to be transmitted to.

[0121] There are many ways to implement the management of the transfer authority of metadata.

[0122] Method 1: For any data, when the data storage device 100 requests to obtain metadata, the management module 200 can determine whether the data can be transmitted to the data storage device 100 according to the attributes of the metadata itself.

[0123] For example, when the data storage device 100 requests to obtain metadata, the management module 200 may determine the metadata that can be transmitted to the data storage device 100 based on information such as the importance level or user level of the data recorded in the metadata. For data with an importance level or user level greater than the threshold, the management module 200 may determine that the metadata is not allowed to be transmitted to the data storage device 100. For data with an importance level or user level not greater than the threshold, the management module 200 may determine that the metadata is allowed to be transmitted to the data storage device 100.

[0124] In the second method, the management module 200 determines whether the data can be transmitted to the data storage device 100 based on the attributes of the data storage device 100.

[0125] For example, when the data storage device 100 requests to obtain metadata, the management module 200 may analyze the address of the data storage device 100 (such as the media access control address (MAC) or the internet protocol (IP) address). After determining that the address of the data storage device 100 belongs to a preset address set that allows obtaining metadata, the management module 200 may determine that the metadata is allowed to be transmitted to the data storage device 100.

[0126] In the third method, the management module 200 determines whether the data can be transmitted to the data storage device 100 based on the attributes of the data storage device 100 and the attributes of the data itself.

[0127] For example, when the data storage device 100 requests to obtain metadata, the management module 200 may analyze the address of the data storage device 100 (such as the MAC address or the IP address). After determining that the address of the data storage device 100 belongs to a preset address set that allows obtaining metadata, it may further determine the metadata that can be transmitted to the data storage device 100 based on the attributes of the metadata itself. If it is determined that the address of the data storage device 100 does not belong to the preset address set that allows obtaining data, the management module 200 may directly determine that the metadata is not allowed to be transmitted to the data storage device 100.

[0128] The following introduces a specific implementation method provided by the embodiments of the present application in which the management module 200 determines whether the data can be transmitted to the data storage device 100 based on the attributes of the data storage device 100 and the attributes of the data itself:

[0129] In an embodiment of the present application, when the transfer attribute of the data satisfies the transfer policy with the transfer attribute of the data storage device 100 that requests to obtain the metadata, the metadata of the data is allowed to be transmitted to the data storage device 100 that requests to obtain the metadata; otherwise, the metadata of the data is not allowed to be transmitted to the data storage device 100 that requests to obtain the metadata. In some scenarios, the data storage device 100 that requests to obtain the metadata of the data may be referred to as the receiving device.

[0130] In other words, when determining whether a certain metadata is allowed to be transmitted to a certain data storage device 100, it is necessary to obtain the transfer attribute of the data (the data described by the metadata) and the transfer attribute of the data storage device 100; determine whether the metadata is allowed to be transmitted to the data storage device 100 according to the transfer attribute of the data, the transfer attribute of the data storage device 100, and the transfer policy. In some scenarios, the data storage device 100 may need to receive the metadata, and the data storage device 100 may be referred to as the receiving device.

[0131] The management module 200 can obtain the transfer attribute of the data and the transfer attribute of the data storage device 100, and can determine whether the data is allowed to be transmitted to the data storage device 100 according to the obtained transfer attributes.

[0132] 2. Management of the transfer permission of data.

[0133] The management module 200 can determine whether the data is allowed to be transmitted to the data storage device 100, or determine to which one or several management modules 200 the data is allowed to be transmitted.

[0134] There are many ways to implement the management of the transfer permission of data.

[0135] Method 1: For any data, when the data storage device 100 requests to obtain the data, the management module 200 can determine whether the data is allowed to be transmitted to the data storage device 100 according to the attributes of the data itself. Among them, the attributes of the data itself can be recorded in the metadata of the data.

[0136] For example, when the data storage device 100 requests to obtain data, the management module 200 can determine whether the data is allowed to be transmitted to the data storage device 100 according to information such as the importance level or user level of the data recorded in the metadata of the data. For data with an importance level or user level greater than the threshold, the management module 200 can determine that the data is not allowed to be transmitted to the data storage device 100. For data with an importance level or user level not greater than the threshold, the management module 200 can determine that the data is allowed to be transmitted to the data storage device 100.

[0137] In the second method, the management module 200 determines whether the data is allowed to be transmitted to the data storage device 100 based on the attributes of the data storage device 100.

[0138] For example, when the data storage device 100 requests to obtain data, the management module 200 can analyze the address of the data storage device 100 (such as the MAC address or IP address). After determining that the address of the data storage device 100 belongs to the preset address set allowed to obtain data, the management module 200 can determine that the data is allowed to be transmitted to the data storage device 100.

[0139] In the third method, the management module 200 determines whether the data can be transmitted to the data storage device 100 based on the attributes of the data storage device 100 and the attributes of the data itself.

[0140] For example, when the data storage device 100 requests to obtain data, the management module 200 can analyze the address of the data storage device 100 (such as the MAC address or IP address). After determining that the address of the data storage device 100 belongs to the preset address set allowed to obtain data, it can further determine whether the data can be transmitted to the data storage device 100 according to the attributes of the data itself. If it is determined that the address of the data storage device 100 does not belong to the preset address set allowed to obtain data, the management module 200 can directly determine that the data is not allowed to be transmitted to the data storage device 100.

[0141] The following introduces a specific implementation method for the management module 200 provided in the embodiments of the present application to determine whether the data can be transmitted to the data storage device 100 based on the attributes of the data storage device 100 and the attributes of the data itself:

[0142] In the embodiments of the present application, when the transfer attribute of the data satisfies the transfer policy with the transfer attribute of the data storage device 100 that requests to obtain the data, the data is allowed to be transmitted to the data storage device 100 that requests to obtain the data; otherwise, the data is not allowed to be transmitted to the data storage device 100 that requests to obtain the data. In some scenarios, the data storage device 100 that requests to obtain the data can be referred to as the receiving device.

[0143] In other words, when determining whether a certain data is allowed to be transmitted to a certain data storage device 100, it is necessary to obtain the transfer attribute of the data and the transfer attribute of the data storage device 100; determine whether the data is allowed to be transmitted to the data storage device 100 according to the transfer attribute of the data, the transfer attribute of the data storage device 100, and the transfer policy. In some scenarios, the data storage device 100 may need to receive the data, and the data storage device 100 can be referred to as the receiving device.

[0144] The management module 200 can obtain the transfer attributes of the metadata and the transfer attributes of the data storage device 100, and can determine whether the data is allowed to be transmitted to the data storage device 100 according to the obtained transfer attributes.

[0145] The embodiments of the present application do not limit the deployment manner of the management module 200 in the data transmission system. For example, as Figure 2A shown, in the data transmission system, a management module 200 is deployed in each data storage device 100. For any one of the data storage devices 100, when other data storage devices request to obtain data or metadata from the data storage device 100 (such as sending a data request or a metadata request to request to obtain data or metadata in the embodiments of the present application), the data storage device 100 can determine by itself whether the data or metadata is allowed to be transmitted to other data storage devices.

[0146] For another example, as Figure 2B shown, in the data transmission system, the management module 200 can be independently deployed, that is, the management module 200 can be deployed in the data transmission system as a device independent of the data storage device 100. For the convenience of description, the device independent of the data storage device 100 is called a management device 300, and the management device 300 includes the management module 200. For any one of the data storage devices 100 in the data transmission system, when other data storage devices request to obtain data (or metadata) from the data storage device 100 (such as sending a data request or a metadata request to request to obtain data or metadata in the embodiments of the present application), the data storage device 100 can ask the management device 300 whether the data (or metadata) is allowed to be transmitted to other data storage devices 100 (such as the data storage device 100 sending a first inquiry message or a second inquiry message to inquire whether the target data or metadata is allowed to be transmitted to other data storage devices in the embodiments of the present application). The management device 300 obtains the transfer attributes of the data (or the transfer attributes of the metadata) and the transfer attributes of the data storage device 100, and can determine whether the data (or metadata) is allowed to be transmitted to other data storage devices according to the obtained transfer attributes, and notify the data storage device 100 that the data is allowed to be transmitted to other data storage devices, notify the data storage device 100 that the data is not allowed to be transmitted to other data storage devices, or transmit a metadata set to the other data storage devices, and the metadata set includes the metadata allowed to be transmitted to other data storage devices.

[0147] Regardless of whether the management module 200 is deployed in the data storage device 100 or in the management device 300, in addition to having the management function of the transfer permissions of data and metadata, the management module 200 can also configure transfer attributes for the data and / or the data storage device 100.

[0148] Configuration 1: Configure transfer attributes for data.

[0149] The management module 200 is user - oriented and provides a configuration interface for the transfer attributes of data. For the convenience of description, the configuration interface for the transfer attributes of data is called the first configuration interface. Through this first configuration interface, the user can configure the transfer attributes for the data. The management module 200 obtains the transfer attributes of the user - configured data through this first configuration interface and records the transfer attributes of the data in the metadata of the data.

[0150] For example, when the data storage devices 100 in the data transmission system form a global file system, the management module 200 can display the global data view of the global file system to the user through this first configuration interface. By viewing this global data view, the user can configure the transfer attributes for some or all of the data displayed in the global data view. Taking the data stored in a certain data storage device 100 organized and stored in a file system as an example, the user can view that the files and directories in the file system form a tree - like structure through this global data view, and the user can configure the transfer attributes for the files or directories in the file system starting from the root directory. The management module 200 obtains the transfer attributes configured by the user for the files or directories through this first configuration interface, records the transfer attributes of the files in the metadata of the files, and records the transfer attributes of the directories in the metadata of the directories.

[0151] Configuration 2: Configure transfer attributes for the data storage device 100.

[0152] The management module 200 is user - oriented and provides a configuration interface for the transfer attributes of the data storage device 100. For the convenience of description, the configuration interface for the transfer attributes of the data storage device 100 is called the second configuration interface. Through this second configuration interface, the user can configure the transfer attributes for the data storage device 100. The management module 200 obtains the transfer attributes configured by the user for the data storage device 100 through this second configuration interface.

[0153] For example, when the data storage devices 100 in the data transmission system form a global file system, the management module 200 can display each data storage device 100 that has joined the global file system to the user through this second configuration interface. The user can configure the transfer attributes for some or all of the data storage devices 100 that have joined the global file system, and the management module 200 obtains the transfer attributes configured by the user for the data storage device 100 through this second configuration interface.

[0154] For another example, the management module 200 can display, through the second configuration interface, each data storage device 100 connected to the management module 200 to the user. The user can configure the transfer attributes for some or all of the data storage devices 100 connected to the management module 200, and the management module 200 obtains the transfer attributes configured by the user for the data storage device 100 through the second configuration interface.

[0155] For another example, the management module 200 can display the data storage device 100 without using the second configuration interface. Instead, the user can transmit, through the second configuration interface, the address (or identifier) of the data storage device 100 for which the transfer attributes need to be configured and the transfer attributes configured for it to the management module 200. The address of the data storage device 100 is the information required for the management module 200 to establish a connection with the data storage device 100. The identifier of the data storage device 100 is the information that can be recognized by the management module 200 and uniquely identifies the data storage device 100. After the management module 200 obtains the transfer attributes configured by the user for the data storage device 100 through the second configuration interface, the management module 200 transmits the transfer attributes of the data storage device 100 to the data storage device 100 based on the address of the data storage device 100.

[0156] After the management module 200 obtains the transfer attributes configured by the user for the data storage device 100, it can perform some or all of the following operations:

[0157] Operation 1: The management module 200 transmits the transfer attributes configured by the user for it to the data storage device 100.

[0158] After the management module 200 obtains the transfer attributes configured by the user for the data storage device 100 through the second configuration interface, it can transmit the transfer attributes configured by the user for it to the data storage device 100 so that the data storage device 100 can obtain and save the transfer attributes of the data storage device 100 in a timely manner.

[0159] Operation 2: The management module 200 saves the transfer attributes of the data storage device 100.

[0160] The management module 200 may store a device flow attribute set, in which the flow attributes of each data storage device 100 in the data transmission system are recorded. After the management module 200 obtains the flow attributes configured by the user for the data storage device 100 through the second configuration interface, the flow data of the data storage device 100 may be recorded in the device flow attribute set. The embodiment of the present application does not limit the manner in which the flow attributes of each data storage device 100 are recorded in the device flow attribute set. For example, the device flow attribute set may identify the data storage device 100 by the address of the data storage device 100, that is, what is recorded in the device flow attribute set is the mapping relationship between the flow attributes of each data storage device 100 and its address information. The address of the data storage device 100 may be the MAC address or IP address of the data storage device 100. For another example, the device flow attribute set may identify the data storage device 100 by the identifier of the data storage device 100, that is, what is recorded in the device flow attribute set is the mapping relationship between the flow attributes of each data storage device 100 and its identifier.

[0161] It should be noted that in some scenarios, the user only informs the management module 200 of the flow attributes configured for the data storage device 100 through the second configuration interface, and the data storage device 100 has obtained the flow attributes configured by the user through other means. Therefore, in this scenario, the management module 200 does not need to transmit the flow attributes to the data storage device 100, and the management module 200 can only perform operation 2. In some scenarios, when the data storage device 100 initiates a data request or a metadata request, it will carry the flow attributes of the data storage device 100, that is, the management module 200 can easily obtain the flow attributes of the data storage device 100. In this scenario, when the management module 200 obtains the flow attributes configured by the user for it through the second configuration interface, it can only perform operation 1 and not perform operation 2.

[0162] In the above description, only the example of the management module 200 configuring the flow attributes for the data storage device 100 under the user's instruction is used for explanation, and this configuration method is only a possible configuration method. The embodiment of the present application does not limit the management module 200 to configure the flow attributes for the data storage device 100. For example, the management module 200 can obtain the topological relationship between the various data storage devices 100 in the data transmission system, and the topological relationship indicates the subordinate relationship between the various data storage devices 100. The management module 200 has a certain learning ability. Through the learning of the topological relationship, the data storage device 100 at the upper layer, the data storage device 100 at the middle layer, and the data storage device 100 at the lower layer are determined, and then the flow attributes are spontaneously configured for each data storage device 100 in the data transmission system based on this.

[0163] In the embodiments of the present application, the first configuration interface and the second configuration interface are used to represent a certain function provided by the management module 200 to users. The embodiments of the present application do not limit the specific presentation forms of the first configuration interface and the second configuration interface. For example, the first configuration interface and the second configuration interface can be presented to users in the form of a visual interface. For another example, the first configuration interface and the second configuration interface can be provided to users in the form of pre-set commands, and users can complete the configuration of the transfer attributes of data or the data storage device 100 by sending the pre-set commands to the management device.

[0164] In the embodiments of the present application, the specific form of the management module 200 is not limited. The management module 200 can be hardware, such as a single computing device, or a processor or computing circuit logic in a computing device. The management module 200 can also be a software module, such as data management software running on a computing device, or computing instances such as containers and virtual machines running on a computing device.

[0165] The following introduces two examples of applying the data transmission system architectures shown in Figure 1 to actual scenarios.

[0166] Example 1, the data distribution scenario of a bank.

[0167] In the management system of a bank, there is a data center for managing the data of each branch, and a site for each branch (the site can be a single computing device or a computing device cluster), and each branch site is used to manage the data of the branch. Each branch site has the permission to obtain the data of its own branch, but does not have the permission to obtain the data of other branches.

[0168] As Figure 3A shown, it is a schematic diagram of the data transmission system structure in the data distribution scenario of a bank provided by the embodiments of the present application. In this data transmission system, three branch sites are exemplarily shown, and the three branch sites are respectively marked as Site A, Site B, and Site C. Correspondingly, the three branches are respectively marked as Branch A, Branch B, and Branch C.

[0169] Site A can only obtain the data of Branch A from the data center, Site B can only obtain the data of Branch B from the data center, and Site C can only obtain the data of Branch C from the data center.

[0170] The data center can configure the same transfer attributes for the data of Site A and Branch A, the data center can configure the same transfer attributes for the data of Site B and Branch B, and the data center can configure the same transfer attributes for the data of Site C and Branch C. The transfer attributes of Site A, Site B, and Site C are completely different.

[0171] The transfer policy stored in the data center is that when the transfer attribute of the data of the site and the branch requested by the site is the same, the site is allowed to obtain the data of the branch.

[0172] Example 2: Data protection scenario in the data center.

[0173] In the data center, a large amount of data is usually stored. These data need to be protected according to the security level to prevent data leakage. The data center can transfer data to other data centers. The data center can transmit the stored data to other data centers. However, not all data can be transmitted to other data centers during this process. Therefore, in order to protect the data, the data center can set a security level for other data centers. The higher the security level, the safer the other data center is, and the more data it can obtain.

[0174] As Figure 3B shown, it is a schematic structural diagram of a data transmission system in the data protection scenario of the data center provided by the embodiment of the present application. In this data transmission system, three edge data centers are exemplarily shown, and these three edge data centers are respectively marked as Edge Data Center A, Edge Data Center B, and Edge Data Center C.

[0175] The data center can configure security levels for Edge Data Center A, Edge Data Center B, and Edge Data Center C respectively. Among them, the security level of Edge Data Center A is 10, which is the highest; the security level of Edge Data Center B is 8; the security level of Edge Data Center CB is 2, which is the lowest.

[0176] The data center records the security level of the data in the metadata of the stored data, where the security level of the data is also equivalent to the security level of the metadata. The transfer policy stored in the data center is that the edge data center can only obtain data or metadata whose security level is lower than that of the edge data center. In this example, the security level is a specific manifestation form of the transfer attribute.

[0177] That is to say, Edge Data Center A can obtain data or metadata with a security level less than 10. Edge Data Center B can obtain data or metadata with a security level less than 8. Edge Data Center C can obtain data or metadata with a security level less than 2.

[0178] When any edge data center requests data or metadata from a data center, it can carry the security level of the edge data center in the request. After receiving the edge data center, the data center determines the security level of the edge data center and the security level of the requested data or metadata. When the security level of the edge data center and the security level of the requested data or metadata meet the transfer policy, the data center transmits the requested data or metadata to the edge data center.

[0179] The following describes the data transmission method provided by the embodiments of the present application respectively in the cases where the management module 200 is deployed in the data storage device 100 and the management module 200 is independently deployed (i.e., deployed in the management device 300).

[0180] I. The management module 200 is deployed in the data storage device 100:

[0181] The following combines Figure 4 to describe a data transmission method provided by the embodiments of the present application. This data transmission method includes three parts. One part is the transfer policy and transfer attribute configuration process, which can be specifically referred to in steps 400 to 402. One part is the metadata transmission process, which can be specifically referred to in steps 403 to 406. One part is the data transmission process, which can be specifically referred to in steps 407 to 410. In the following text, to distinguish different data storage devices 100, the data storage device 100A is used as the data storage device 100 storing the target data, and the data storage device 100B is used as the data storage device 100 that needs to request the target data or metadata.

[0182] Step 400: The data storage device 100A obtains the transfer policy.

[0183] There are many ways for the data storage device 100A to obtain the transfer policy. For example, the user can send the transfer policy to the data storage device 100A through a computing device on the user side. For another example, the user can directly operate the data storage device 100A and enter the transfer policy on the data storage device 100A. For another example, the transfer policy has been pre-saved in the data managed by the data storage device 100A, and the data storage device 100A can obtain the data from the data.

[0184] The following introduces two ways for the user to configure the transfer policy for the data storage device 100A:

[0185] Method 1: The user configures the transfer policy for the data storage device 100A by means of a command.

[0186] The data storage device 100A provides a command that can configure the transfer policy. The user completes the configuration of the transfer policy by entering the command into the data storage device 100A.

[0187] For example, taking the data managed by the data storage device 100A existing in the form of a Linux file system as an example, Linux provides the vfs setxattr command, which is a command for setting extended attributes in the Linux file system. The extended attribute is a kind of metadata in a file or directory in the Linux file system. That is to say, the extended attribute can be regarded as a kind of attribute within the metadata. A user can configure a transfer policy through the vfs setxattr command and configure the transfer policy into all files and directories in the Linux file system.

[0188] Method 2: The user configures a transfer policy for the data storage device 100A through a management interface.

[0189] The data storage device 100A can provide a visual management interface for users. The management interface provides an option for configuring a transfer policy, and the user can configure the management policy in the management interface.

[0190] Such as Figure 5 As shown, it is a schematic diagram of a management interface provided by an embodiment of the present application. Assume the transfer attributes of the data and the transfer attributes of the data storage device 100 describe the security level of the data and the security level of the data storage device 100. The management interface provides an option for configuring a transfer policy, and the user can configure a specific transfer policy by typing or selecting the size relationship between the transfer attributes of the data and the transfer attributes of the data storage device 100.

[0191] In the embodiment of the present application, it is allowed to change the transfer policy after the transfer policy is configured. When the user determines that the transfer policy needs to be changed, the user can adopt the method of configuring the transfer policy mentioned above and configure the changed transfer policy to the data storage device 100A.

[0192] Step 401: The data storage device 100A configures transfer attributes for the data stored in the data storage device 100A, and the transfer attributes of the data can be saved in the metadata of the data. The transfer attributes of different data can be the same or different.

[0193] The data storage device 100A can configure transfer attributes for all the data stored in the data storage device 100A under the instruction of the user; the data storage device 100A can also, under the instruction of the user, only configure transfer attributes for part of the data stored in the data storage device 100A. For example, the data storage device 100A can, under the instruction of the user, only configure transfer attributes for the data with a higher confidentiality level or a higher security level among the data stored in the data storage device 100A, and for the data without configured transfer attributes, it is default that the data is allowed to be transmitted.

[0194] The manner in which the data storage device 100A configures the transfer attribute for the data stored in the data storage device 100A under the instruction of the user can refer to the introduction of the management module 200 configuring the transfer attribute for the data in the foregoing description, which will not be elaborated here.

[0195] Assume that the data stored in the data storage device 100A is organized in the form of a file system. In this file system, files and directories form a tree structure. The data storage device 100A configures the transfer attribute for the files or directories in the file system starting from the root directory of the file system under the instruction of the user, records the transfer attribute of the file in the metadata of the file, and records the transfer attribute of the directory in the metadata of the directory.

[0196] In this file system, the configuration of the transfer attribute for files or directories has the following characteristics:

[0197] Characteristic 1: Subdirectories and files under a directory can inherit the transfer attribute of the directory.

[0198] The subdirectories and files under this directory can have the same transfer attribute as the directory to which they belong. For subdirectories or files that have inherited the transfer attribute of the directory, the operation of configuring the transfer attribute can be omitted; that is, when the data storage device 100A queries the transfer attribute of a certain file or a certain subdirectory, if the transfer attribute of the certain file or the certain subdirectory is not recorded in the metadata of the file or the subdirectory, the transfer attribute of the directory to which the file or the subdirectory belongs can be queried, and the transfer attribute of the directory can be used as the transfer attribute of the file or the subdirectory.

[0199] For subdirectories or files that have inherited the transfer attribute of the directory, when configuring their transfer attributes, indication information indicating the inheritance of the transfer attribute of the directory can be added to the metadata of the file or the subdirectory. That is, when the data management subsystem queries the transfer attribute of a certain file or a certain subdirectory, if the metadata of the certain file or the certain subdirectory contains the indication information, the transfer attribute of the directory to which the file or the subdirectory belongs can be queried, and the transfer attribute of the directory can be used as the transfer attribute of the file or the subdirectory.

[0200] Note: A subdirectory is a special "directory" and is a relative concept used in the description of the directory structure. A subdirectory refers to the next-level "directory" included in the directory.

[0201] Characteristic 2: Subdirectories and files under a directory can override the transfer attribute of the directory, that is, they do not inherit the transfer attribute of the directory.

[0202] The subdirectories and files in this directory can have different transfer attributes from the directory they belong to. For subdirectories or files that do not inherit the transfer attributes of the directory, the transfer attributes of the subdirectories and files need to be added to the metadata of the subdirectories and files.

[0203] Step 402: The data storage device 100A configures the transfer attributes for the data storage device 100B, and the data storage device 100B saves the transfer attributes configured for it by the data storage device 100A.

[0204] The following describes a method for the data storage device 100A provided in the embodiment of the present application to configure the transfer attributes for the data storage device 100B:

[0205] Step 1: The data storage device 100A obtains the transfer attributes configured by the user for the data storage device 100B through the second configuration interface, and generates a certificate recording the transfer attributes of the data storage device 100B.

[0206] To ensure the security of the data in the certificate, the data storage device 100A can also perform some or all of the following security operations on the certificate:

[0207] Security operation 1: Encrypt the certificate using the public key of the data storage device 100B. The public key of the data storage device 100B is publicly available information provided externally, and any data storage device 100 can obtain it. The data storage device 100B internally stores the private key corresponding to the public key. Here, only the example of encrypting the certificate using the asymmetric encryption algorithm is described. In fact, the embodiment of the present application does not limit the way the data storage device 100A encrypts the certificate.

[0208] Security operation 2: Add signature information to the certificate, and the signature information is generated using the private key of the data storage device 100A. The private key of the data storage device 100A can only be obtained by the data storage device A, and the public key corresponding to the private key is publicly available information provided externally.

[0209] Step 2: The data storage device 100A sends the certificate to the data storage device 100B.

[0210] Step 3: The data storage device 100B receives the certificate, verifies the certificate, and saves the transfer attributes of the data storage device 100B after the verification is completed.

[0211] For the two security operations mentioned in Step 1, the data storage device 100B verifies the certificate as follows:

[0212] For security operation 1, the data storage device 100B decrypts the certificate using the private key of the data storage device 100B. If the decryption is successful, the verification of the certificate is successful; otherwise, the verification fails.

[0213] For security operation 2, the data storage device 100B verifies the signature information on the certificate using the public key of the data storage device 100A. If the verification is successful, the verification of the certificate is successful; otherwise, the verification fails.

[0214] Step 4: The data storage device 100B notifies the data storage device 100A that the certificate has been received successfully, and saves the transfer attributes of the data storage device 100B.

[0215] In the embodiments of the present application, it is allowed to change the transfer attributes of the data storage device 100B after the transfer attributes of the data storage device 100B are configured. The data storage device 100A can reconfigure the transfer attributes for the data storage device 100B under the instruction of the user, or the data storage device 100A can also reconfigure the transfer attributes for the data storage device 100B at the request of the data storage device 100B. When the data storage device 100A changes the transfer attributes of the data storage device 100B, the changed transfer attributes can be configured for the data storage device 100B by using the method of configuring transfer attributes mentioned above.

[0216] So far, the data storage device 100A has completed the acquisition of the transfer policy and the configuration of the transfer attributes. After that, the data storage device 100A can determine whether to transmit data or metadata to the storage device B based on the transfer policy, the transfer attributes of the data, and the transfer attributes of the data storage device 100B.

[0217] It should be noted that the embodiments of the present application do not limit the execution order of step 400 to step 402. In practical applications, the acquisition of the transfer policy and the configuration of the transfer attributes can be carried out synchronously; or the transfer attributes of the data storage device 100B and the transfer attributes of the data can be configured first, and then the transfer policy can be acquired.

[0218] The deployment location of the data storage device 100B can be closer to the user. The user (through the computing device on the user side) can directly interact with the data storage device 100B to obtain data from the data storage device 100B or view the attribute information of the data. During the process of the user interacting with the data storage device 100B to request to obtain data or view the attribute information of the data, the data storage device 100B can request the data storage device 100A to obtain data or metadata.

[0219] Step 403: The data storage device 100B sends a metadata request to the data storage device 100A. The metadata request is used to request a metadata set. Optionally, the metadata request carries the transfer attribute of the data storage device 100B.

[0220] In step 403, the metadata set requested by the metadata request may include all the metadata that the data storage device 100B can access. The transfer attributes of the metadata that the data storage device 100B can access satisfy the transfer policy with the transfer attributes of the data storage device 100. The metadata request may carry indication information indicating that all metadata needs to be requested. The metadata request may not carry this indication information. In the case of not carrying the indication information, it is default that the metadata requested by the data storage device 100A is all the metadata that the data storage device 100B can access.

[0221] The metadata set requested by the metadata request may include some of the metadata that the data storage device 100B can access. Information for indicating the part of the metadata may be carried in the metadata request. For example, the metadata requested by the metadata request may be the metadata of the data with the service type of service A, and information indicating service A is carried in the metadata request.

[0222] Step 404: The data storage device 100A receives the metadata request and determines the metadata set according to the transfer attribute of the data storage device 100B.

[0223] When the metadata request device carries the transfer attribute of the data storage device 100B, the data storage device 100A can directly obtain the transfer attribute of the data storage device 100B from the metadata request.

[0224] When the metadata request device does not carry the transfer attribute of the data storage device 100B, the data storage device 100A saves the device transfer attribute set, and the transfer attributes of each data storage device 100 in the data transmission system are recorded in the device transfer attribute set. The data storage device 100A can obtain the transfer attribute of the data storage device 100B from the device transfer attribute set. For example, the device transfer attribute set records the mapping relationship between the transfer attributes of each data storage device 100 and the addresses of the respective data storage devices 100. The data storage device 100A queries the device transfer attribute set according to the address of the data storage device 100B carried in the metadata request and obtains the transfer attribute of the data storage device 100B from it.

[0225] In addition to obtaining the transfer attributes of the data storage device 100B, the data storage device 100A also needs to obtain the transfer attributes of the data stored in the data storage device 100A, that is, the data storage device 100A obtains the transfer attributes of the data from the metadata of the data stored in the data storage device 100A.

[0226] After determining the transfer attributes of the data storage device 100B and the transfer attributes of the data, the data storage device 100A can further determine whether the transfer attributes of the data storage device 100B and the transfer attributes of the data meet the transfer policy. For the metadata of any data, if the transfer attributes of the data storage device 100B and the transfer attributes of the data meet the transfer policy, the metadata is the metadata that the data storage device 100B is allowed to access; otherwise, the metadata is not allowed to be accessed by the data storage device 100B.

[0227] Suppose the transfer attributes of the data describe the security level of the data, and the transfer attributes of the data storage device 100B describe the security level of the data storage device 100B.

[0228] When the transfer policy is that the transfer attributes of the data storage device 100 are the same as the transfer attributes of the data, if the security level of the data storage device 100B is the same as the security level of the data, then the transfer attributes of the data storage device 100B and the transfer attributes of the data meet the transfer policy, and the metadata of the data is the metadata that the data storage device 100B is allowed to access. If the security level of the data storage device 100B is not the same as the security level of the data, then the transfer attributes of the data storage device 100B and the transfer attributes of the data do not meet the transfer policy, and the metadata of the data is not the metadata that the data storage device 100B can access.

[0229] When the transfer policy is that the transfer attributes of the data storage device 100B are greater than the transfer attributes of the data, if the security level of the data storage device 100B is the same as the security level of the data, then the transfer attributes of the data storage device 100B and the transfer attributes of the data do not meet the transfer policy, and the metadata of the data is not the metadata that the data storage device 100B can access; if the security level of the data storage device 100B is less than the security level of the data, then the transfer attributes of the data storage device 100B and the transfer attributes of the data do not meet the transfer policy, and the metadata of the data is not the metadata that the data storage device 100B can access. If the security level of the data storage device 100B is greater than the security level of the data, then the transfer attributes of the data storage device 100B and the transfer attributes of the data meet the transfer policy, and the metadata of the data is the metadata that the data storage device 100B is allowed to access.

[0230] Taking the file system as an example, in view of the two characteristics that the file transfer attributes and directory transfer attributes in the file system in the foregoing step 401 can have. For any directory in the file, the files and subdirectories included in the directory can all inherit the transfer attributes of the directory, can all override the transfer attributes of the directory, or there can be some files and / or subdirectories that inherit the transfer attributes of the directory and some that override the inheritance of the transfer attributes of the directory by the files and / or subdirectories.

[0231] For such subdirectories or files that do not inherit the transfer attributes of the directory, if the subsequent data storage device 100B requests the metadata of the directory or the files or subdirectories included in the directory, the data storage device 100A needs to determine whether the transfer policy is satisfied based on the transfer attributes of the subdirectory or file and the transfer attributes of the data storage device 100B, and whether it can send the metadata of the subdirectory or file to the data storage device 100B.

[0232] For such subdirectories or files that inherit the transfer attributes of the directory, if the subsequent data storage device 100B requests the metadata of the directory or the files or subdirectories included in the directory, the data storage device 100A needs to determine whether the transfer policy is satisfied based on the transfer attributes of the directory and the transfer attributes of the data storage device 100B, and whether it can send the metadata of the subdirectory or file to the data storage device 100B.

[0233] Step 405: After the data storage device 100A determines the metadata that is allowed to be accessed by the data storage device 100B, it sends a positive metadata response to the data storage device 100B, and the positive metadata response carries a metadata set.

[0234] When the metadata requested by the metadata request can be all the metadata that the data storage device 100B can access, the metadata set includes all the metadata that the data storage device 100B can access.

[0235] The metadata requested by the metadata request can be some of the metadata that the data storage device 100B can access. The metadata set includes some of the metadata that the data storage device 100B can access.

[0236] The transfer attributes of the data storage device 100B and the transfer attributes of the data meet the transfer policy, indicating that the data storage device 100B has the permission to obtain the data and its metadata. After the data storage device 100A transmits the metadata to the data storage device 100B through a metadata positive response, if the metadata of the data is updated, the data storage device 100A can send a metadata update notification message to the data storage device 100B, and the metadata update notification information is used to indicate that the metadata has been updated. After receiving the metadata update notification message, the data storage device 100B can send a metadata request to request the updated metadata. If the metadata of the data is updated, the data storage device 100A can also directly send the updated metadata to the data storage device 100B.

[0237] Step 406: After determining that there is no metadata that allows the data storage device 100B to access, the data storage device 100A feeds back a metadata negative response to the data storage device 100B, and the metadata negative response indicates that it has no right to obtain the metadata.

[0238] The transfer attributes of the data storage device 100B and the transfer attributes of the data do not meet the transfer policy, indicating that the data storage device 100B does not have the permission to obtain the metadata, and the metadata will not be transmitted to the data storage device 100B.

[0239] It should be noted that after the metadata is transmitted to the data storage device 100B, it can be considered that the data storage device 100B has the permission to process the obtained metadata. If subsequent changes in some or all of the transfer attributes of the data, the transfer attributes of the data storage device 100B, and the transfer policy result in the transfer attributes of the data and the transfer attributes of the data storage device 100B no longer meeting the transfer policy, the data storage device 100A can reject the metadata request initiated by the subsequent data storage device 100B for requesting the metadata of the data, that is, notify the data storage device 100B that it has no right to view the metadata. For the metadata obtained by the data storage device 100B before some or all of the transfer attributes of the data, the transfer attributes of the data storage device 100B, and the transfer policy change, the data storage device 100A can notify the data storage device 100B to delete the obtained metadata, or it can also not trace the metadata obtained by the data storage device 100B. If some or all of the changes in the transfer attributes of the data, the transfer attributes of the data storage device 100B, and the transfer policy result in an increase in some data that is allowed to be accessed by the data storage device 100B, the data storage device 100A can transmit the metadata of the increased data to the data storage device 100B.

[0240] After the data storage device 100B obtains the metadata, that is, obtains the address information of the data, the data storage device 100B may request the data storage device 100 to obtain the data. The address information of the data may be the address of the data, such as the logical block address (LBA) of the data, or the information required to determine the address of the data, such as the identifier of a file or directory, etc.

[0241] Taking the data storage device 100B requesting to obtain the target data from the data storage device 100A as an example, the method of transmitting data between the data storage device 100B and the data storage device 100A will be described below.

[0242] Step 407: The data storage device 100B sends a data request to the data storage device 100A. The data request is used to request the target data, and the data request device carries the address information of the target data. Optionally, the data request may also carry the transfer attribute of the data storage device 100B.

[0243] When the user interacts through the data storage device 100B to request to obtain the target data, if the target data is stored in the data storage device 100A, the data storage device 100B needs to obtain the target data from the data storage device 100A to display the target data to the user or send it to the user (that is, the computing device on the user side). When the data storage device 100B obtains the target data from the data storage device 100A, step 407 is executed.

[0244] Step 408: The data storage device 100A receives the data request and determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the target data satisfy the transfer policy.

[0245] After receiving the data request, the data storage device 100A needs to obtain the transfer attribute of the target data and the transfer attribute of the data storage device 100B.

[0246] For the transfer attribute of the target data, the data storage device 100A may determine the metadata of the target data according to the address information of the target data, and then obtain the transfer attribute of the target data from the metadata of the data.

[0247] Regarding the transfer attribute of the data storage device 100B, if the data request carries the transfer attribute of the data storage device 100B, the data storage device 100A can obtain the transfer attribute of the data storage device 100B from the data request. If the data request does not carry the transfer attribute of the data storage device 100B, the data storage device 100A can obtain the transfer attribute of the data storage device 100B from the saved set of device transfer attributes. For the method by which the data storage device 100A obtains the transfer attribute of the data storage device 100B from the set of device transfer attributes, reference can be made to the foregoing description and will not be elaborated here.

[0248] After the data storage device 100A obtains the transfer attribute of the target data and the transfer attribute of the data storage device 100B, it determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy. The method by which the data storage device 100A determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy is similar to the method in step 404 by which the data storage device 100A determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy. For details, reference can be made to the foregoing description and will not be elaborated here.

[0249] Step 409: When the data storage device 100A determines that the transfer attribute of the data storage device 100B and the transfer attribute of the target data meet the transfer policy, it sends a data positive response to the data storage device 100B, and the data positive response carries the target data.

[0250] The fact that the transfer attribute of the data storage device 100B and the transfer attribute of the target data meet the transfer policy indicates that the data storage device 100B has the permission to obtain the target data. After the data storage device 100A transmits the target data to the data storage device 100B through a data positive response, if the target data is updated, the data storage device 100A can send a data update notification message to the data storage device 100B, and the data update notification information is used to indicate that the target data is updated. After receiving the data update notification message, the data storage device 100B can send a data request to request to obtain the updated target data, or in the case where the user requests to view the target data again, it can also send a data request to request to obtain the updated target data. If the target data is updated, the data storage device 100A can also directly send the updated data to the data storage device 100B.

[0251] Step 410: When the data storage device 100A determines that the transfer attribute of the data storage device 100B does not meet the transfer policy for the target data, the data storage device 100A feeds back a data negative response to the data storage device 100B, and the data negative response indicates that the data storage device 100B has no right to obtain the target data.

[0252] The transfer attribute of the data storage device 100B does not meet the transfer policy for the target data, indicating that the data storage device 100B does not have the right to obtain the target data, and the target data will not be transmitted to the data storage device 100B. After receiving the data negative response, the data storage device 100B can notify the user that they have no right to query the target data.

[0253] It should be noted that when the target data is transmitted to the data storage device 100B, it can be considered that the data storage device 100B has the right to process the obtained target data. If subsequent partial or all changes in the transfer attribute of the target data, the transfer attribute of the data storage device 100B, and the transfer policy result in the transfer attribute of the target data and the transfer attribute of the data storage device 100B no longer meeting the transfer policy, the data storage device 100A can reject a data request initiated by the subsequent data storage device 100B for requesting the data, that is, notify the data storage device 100B that it has no right to query the target data. For the target data obtained by the data storage device 100B before partial or all changes occur in the transfer attribute of the target data, the transfer attribute of the data storage device 100B, and the transfer policy, the data storage device 100A can notify the data storage device 100B to delete the obtained target data, or it can also not trace the target data obtained by the data storage device 100B.

[0254] II. The management module 200 is independently deployed (the management module 200 is deployed in the management device 300):

[0255] The following combines Figure 6 A data transmission method provided by an embodiment of the present application will be described. The data transmission method includes three parts. One part is the transfer policy and transfer attribute configuration process, which can be specifically referred to in steps 600 to 602. One part is the metadata transmission process, which can be specifically referred to in steps 603 to 609. One part is the data transmission process, which can be specifically referred to in steps 610 to 612. In the following, to distinguish different data storage devices 100, the data storage device 100A is used as the data storage device 100 storing the target data, and the data storage device 100B is used as the data storage device 100 that needs to request the target data or metadata.

[0256] Step 600: The management device 300 obtains a transfer policy. The management device 300 executes step 600 in a manner similar to the way the data storage device 100A executes step 400. For details, please refer to the foregoing description and will not be elaborated here.

[0257] Step 601: The management device 300 configures transfer attributes for the data stored in the data storage device 100A and saves the transfer attributes of the data. The transfer attributes of different data may be the same or different. The management device 300 executes step 601 in a manner similar to the way the data storage device 100A executes step 401. For details, please refer to the foregoing description and will not be elaborated here.

[0258] It should be noted that after the management device 300 configures transfer attributes for the data stored in the data storage device 100A, it may transmit the transfer attributes of the data to the data storage device 100A, and the data storage device 100A may save the transfer attributes of the data in the metadata of the data. The management device 300 may also not transmit the transfer attributes of the data to the data storage device 100A. The management device 300 may save the transfer attributes of the data and may also save the transfer data of the data in the metadata of the data. The metadata containing the transfer attributes of the data may be saved in the management device 300.

[0259] Step 602: The management device 300 configures transfer attributes for the data storage device 100B, and the data storage device 100B saves the transfer attributes configured for it by the management device 300. The management device 300 executes step 602 in a manner similar to the way the data storage device 100A executes step 402. For details, please refer to the foregoing description and will not be elaborated here.

[0260] It should be noted that the embodiments of the present application do not limit the execution order of steps 600 to 602. In practical applications, the acquisition of the transfer policy and the configuration of the transfer attributes can be carried out synchronously; it is also possible to first configure the transfer attributes of the data storage device 100B and the transfer attributes of the data, and then obtain the transfer policy.

[0261] Step 603: The data storage device 100B sends a metadata request to the data storage device 100A. The metadata request is used to request metadata. Optionally, the metadata request device carries the transfer attributes of the data storage device 100B. The execution manner of step 603 is similar to the execution manner of step 403. For details, please refer to the foregoing description and will not be elaborated here.

[0262] Step 604: After the data storage device 100A receives the metadata request, it sends a second inquiry message to the management device 300. The second inquiry message is used to inquire about the metadata set, and the metadata set includes the metadata that is allowed to be transmitted to the receiving device. Optionally, the second inquiry message carries the transfer attribute of the data storage device 100B.

[0263] Step 605: The management device 300 receives the second inquiry message and determines the metadata set according to the transfer attribute of the data storage device 100B. The management device 300 obtains the transfer attribute of the data storage device 100B and the method of determining the metadata set according to the transfer attribute of the data storage device 100B is similar to the method in step 404 for the data storage device 100A to obtain the transfer attribute of the data storage device 100B and determine the metadata set according to the transfer attribute of the data storage device 100B. For specific details, please refer to the foregoing content and will not be elaborated here.

[0264] Step 606: After the management device 300 determines the metadata that is allowed to be accessed by the data storage device 100B, it feeds back the metadata set to the data storage device 100A.

[0265] When the metadata requested by the metadata request can be all the metadata that the data storage device 100B can access, the metadata set includes all the metadata that the data storage device 100B can access.

[0266] The metadata requested by the metadata request can be part of all the metadata that the data storage device 100B can access. The metadata set includes part of all the metadata that the data storage device 100B can access.

[0267] Step 607: The data storage device 100A feeds back a metadata positive response to the data storage device 100B, and the metadata positive response carries the metadata set.

[0268] Step 608: After the management device 300 determines that there is no metadata that is allowed to be accessed by the data storage device 100B, it notifies the data storage device 100A that the data storage device 100B has no right to obtain the metadata.

[0269] Step 609: The data storage device 100A feeds back a metadata negative response to the data storage device 100B, and the metadata negative response indicates that there is no right to obtain the metadata.

[0270] The transfer attribute of the data storage device 100B does not satisfy the transfer policy with the transfer attribute of the data, indicating that the data storage device 100B does not have the right to obtain the metadata, and the metadata will not be transmitted to the data storage device 100B.

[0271] It should be noted that after the metadata is transmitted to the data storage device 100B, it can be considered that the data storage device 100B has the permission to process the acquired metadata. If some or all of the subsequent data transfer attributes, the transfer attributes of the data storage device 100B, and the transfer policy change, resulting in the data transfer attributes and the transfer attributes of the data storage device 100B no longer meeting the transfer policy, for the metadata request initiated by the subsequent data storage device 100B to request the metadata of the data, the management device 300 can notify the data storage device 100B that it has no right to view the metadata through the data storage device 100A. For the metadata acquired by the data storage device 100B before some or all of the data transfer attributes, the transfer attributes of the data storage device 100B, and the transfer policy change, the management device 300 can notify the data storage device 100B to delete the acquired metadata through the data storage device 100A, or it can also not trace the metadata acquired by the data storage device 100B. If some or all of the data transfer attributes, the transfer attributes of the data storage device 100B, and the transfer policy change result in an increase in some data that is allowed to be accessed by the data storage device 100B, the management device 300 can transmit the metadata of the increased data to the data storage device 100B through the data storage device 100A.

[0272] Taking the data storage device 100B requesting to obtain target data from the data storage device 100A as an example, the method of data transfer between the data storage device 100B and the data storage device 100A will be described below.

[0273] Step 610: The data storage device 100B sends a data request to the data storage device 100A. The data request is used to request data, and the data request device carries the address information of the target data. Optionally, the data request may also carry the transfer attributes of the data storage device 100B. The execution manner of step 610 is similar to that of step 407. For specific details, reference can be made to the foregoing description and will not be elaborated here.

[0274] Step 611: After receiving the data request, the data storage device 100A sends a first inquiry message to the management device 300. The first inquiry message is used to inquire whether the target data is allowed to be transmitted to the data storage device 100B. Optionally, the first inquiry message carries the transfer attributes of the target data and / or the transfer attributes of the data storage device 100B.

[0275] If the data storage device 100A stores the transfer attributes of the target data, for example, after the management device 300 configures the transfer attributes for the target data, it can transmit the transfer attributes of the target data to the data storage device 100A, and the data storage device 100A can carry the transfer data of the target data in the first inquiry message.

[0276] If the data storage device 100A does not save the transfer attribute of the target data, the transfer attribute of the target data may not be carried in the first inquiry message. The first inquiry message may carry the identification information of the target data, such as the file name or directory name, or other information that can uniquely identify the target data. Of course, if the data storage device 100A saves the transfer attribute of the target data, the transfer attribute of the target data may also not be carried in the first inquiry message. The management device 300 can determine the metadata of the target data according to the identification information of the target data by itself, and then the management device 300 obtains the transfer attribute of the target data from the saved metadata of the target data.

[0277] If the transfer attribute of the data storage device 100B is carried in the data request, the transfer attribute of the data storage device 100B may be carried in the first inquiry message. If the transfer attribute of the data storage device 100B is not carried in the data request, the transfer attribute of the data storage device 100B may not be carried in the first inquiry message. The first inquiry message may carry the address or identification of the data storage device 100B, and the address or identification of the data storage device 100B may be carried in the data request. So that the subsequent management device 300 can obtain the transfer attribute of the data storage device 100B from the device transfer attribute set based on the address or identification of the data storage device 100B. Of course, if the transfer attribute of the data storage device 100B is carried in the data request, the transfer attribute of the data storage device 100B may also not be carried in the first inquiry message. The management device 300 can determine the transfer attribute of the data storage device 100B according to the address or identification of the data storage device 100B by itself.

[0278] Step 612: After receiving the first inquiry message, the management device 300 determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy. The manner in which the management device 300 obtains the transfer attribute of the target data and the transfer attribute of the data storage device 100B and determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy is similar to the manner in step 408 in which the data storage device 100A obtains the transfer attribute of the target data and the transfer attribute of the data storage device 100B and determines whether the transfer attribute of the data storage device 100B and the transfer attribute of the data meet the transfer policy. The difference is that in step 612, the management device 300 directly obtains the transfer attribute of the target data or the transfer attribute of the data storage device 100B from the first inquiry message or determines the transfer attribute of the target data or the transfer attribute of the data storage device 100B according to the information carried in the first inquiry message. That is, the messages processed by the management device 300 and the data storage device 100 are different. For specific details, please refer to the foregoing description and will not be elaborated here.

[0279] Step 613: When the management device 300 determines that the transfer attribute of the data storage device 100A and the transfer attribute of the target data meet the transfer policy, the management device 300 sends a first notification message to the data storage device 100A. The first notification message is used to notify that the target data is allowed to be transmitted to the data storage device 100B.

[0280] Step 614: After receiving the first notification message, the data storage device 100A feeds back a data positive response to the data storage device 100B. The data positive response carries the target data.

[0281] The transfer attribute of the data storage device 100B and the transfer attribute of the target data meet the transfer policy, indicating that the data storage device 100B has the permission to obtain the target data. After the data storage device 100A transmits the target data to the data storage device 100B through a data positive response, if the target data is updated, the data storage device 100A sends a data update notification message to the data storage device 100B. The data update notification message is used to indicate that the target data is updated. After receiving the data update notification message, the data storage device 100B can send a data request to request to obtain the updated target data, or when the user requests to view the target data again, send a data request to request to obtain the updated target data. If the data is updated, the data storage device 100A can also directly send the updated data to the data storage device 100B.

[0282] Step 615: When the management device 300 determines that the transfer attribute of the data storage device 100A and the transfer attribute of the target data do not meet the transfer policy, the management device 300 sends a second notification message to the data storage device 100A. The second notification message is used to notify that the target data is not allowed to be transmitted to the data storage device 100B.

[0283] Step 616: The data storage device 100A feeds back a data negative response to the data storage device 100B. The data negative response indicates that the right to obtain the target data is not available.

[0284] The transfer attribute of the data storage device 100B and the transfer attribute of the target data do not meet the transfer policy, indicating that the data storage device 100B does not have the permission to obtain the target data, and the target data will not be transmitted to the data storage device 100B. After receiving the data negative response, the data storage device 100B can notify the user that the right to query the target data is not available.

[0285] It should be noted that after the target data is transmitted to the data storage device 100B, it can be considered that the data storage device 100B has the permission to process the obtained target data. If some or all of the transfer attributes of the subsequent target data, the transfer attributes of the data storage device 100B, and the transfer policy change, resulting in the transfer attributes of the target data and the transfer attributes of the data storage device 100B no longer meeting the transfer policy, the management device 300 can notify the data storage device 100A that the data storage device 100B has no right to obtain the target data, and the data storage device 100A can reject the data request initiated by the subsequent data storage device 100B for requesting the data, that is, notify the data storage device 100B that it has no right to query the target data. For the target data obtained by the data storage device 100B before some or all of the transfer attributes of the target data, the transfer attributes of the data storage device 100B, and the transfer policy change, the data storage device 100A can notify the data storage device 100B to delete the obtained target data, or it can also not trace the target data obtained by the data storage device 100B.

[0286] Based on the same inventive concept as the method embodiment, the embodiment of the present application also provides a data transmission device, which is used to execute the method executed by the data storage device 200 or the management device 300 in the above method embodiment. As Figure 7 shown, the data transmission device 700 includes a management module 200. When the data transmission device 700 has the behavior function of implementing the data storage device, the data transmission device 700 may further include a first transmission module 701. When the data transmission device 700 has the behavior function of implementing the management device, the data transmission device 700 may further include a second transmission module 702.

[0287] The management module 200 can obtain the transfer attributes of the target data to be transmitted and the transfer attributes of the receiving device. The transfer attributes of the target data characterize the restricted factors for the transmission of the target data, and the transfer attributes of the receiving device characterize the restricted factors for the receiving device to obtain data.

[0288] The management module 200 can also determine whether the target data is allowed to be transmitted to the receiving device according to the transfer attributes of the target data, the transfer attributes of the receiving device, and the transfer policy. Among them, the transfer policy describes the conditions that the transfer attributes of the target data and the transfer attributes of the receiving device need to follow when the receiving device has the permission to obtain the target data.

[0289] As a possible implementation manner, the first transmission module 701 receives a data request sent by the receiving device. The data request is used to request to obtain the target data, and the transfer attributes of the receiving device are carried in the data request; the management module 200 obtains the transfer attributes of the receiving device from the data request.

[0290] As a possible implementation, the management module 200 may obtain the transfer attribute of the target data from the metadata of the target data.

[0291] As a possible implementation, the first transmission module 701 may also receive a metadata request sent by the receiving device, and the transfer attribute of the receiving device is carried in the metadata request.

[0292] In response to the metadata request, the management module 200 determines a metadata set according to the transfer attribute of the receiving device, and the metadata set includes the metadata allowed to be transmitted to the receiving device;

[0293] The first transmission module 701 transmits the metadata set to the receiving device.

[0294] As a possible implementation, after the management module 200 determines that the target data is allowed to be transmitted to the receiving device, the first transmission module 701 sends the target data to the receiving device.

[0295] As a possible implementation, the second transmission module 702 receives a first inquiry message sent by the data storage device. The first inquiry message is used to inquire whether the target data is allowed to be transmitted to the receiving device, and the transfer attribute of the target data and the transfer attribute of the receiving device are carried in the first inquiry message.

[0296] The management module 200 obtains the transfer attribute of the target data and the transfer attribute of the receiving device from the first inquiry message.

[0297] As a possible implementation, the second transmission module 702 receives a second inquiry message sent by the data storage device. The second inquiry message is used to inquire about the metadata set, and the metadata set includes the metadata allowed to be transmitted to the receiving device. The transfer attribute of the receiving device is carried in the second inquiry message. In response to the second inquiry message, the management module 200 determines the metadata set according to the transfer attribute of the receiving device. The second transmission module 702 transmits the metadata set to the data storage device.

[0298] As a possible implementation, when the management module 200 determines that the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, the second transmission module 702 sends a notification message to the data storage device. The notification message is used to notify that the target data is allowed to be transmitted to the receiving device.

[0299] As a possible implementation, the management module 200 configures the transfer attribute for the receiving device under the user's instruction; configures the transfer attribute for the target data under the user's instruction, and records the transfer attribute of the target data in the metadata of the target data.

[0300] As a possible implementation, the management module 200 generates a certificate recording the transfer attributes of the receiving device, and performs the following partial or all operations on the certificate: encrypting the certificate using the public key of the receiving device, and adding signature information to the certificate; wherein, the signature information is generated using its own private key; the management module 200 sends the certificate to the receiving device.

[0301] As a possible implementation, the management module 200 obtains the transfer attributes of the receiving device from the set of device transfer attributes preconfigured by the user, and the set of device transfer attributes includes the transfer attributes configured by the user for at least one device.

[0302] As a possible implementation, the transfer attributes of the target data indicate the following partial or all: the security level of the target data, the service type of the target data, and the transfer attributes of the receiving device indicate the following partial or all: the security level of the receiving device, the service type of the service undertaken by the receiving device.

[0303] The division of modules in the embodiments of the present application is illustrative, only a logical function division. In actual implementation, there may be other division methods. In addition, in each embodiment of the present application, each functional module may be integrated in a processor, or may exist physically alone, or two or more modules may be integrated into one module. The above integrated modules may be implemented in the form of hardware or in the form of software functional modules.

[0304] If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a terminal device (which may be a personal computer, a mobile phone, or a network device, etc.) or a processor to execute all or part of the steps of the method in each embodiment of the present application. The foregoing storage medium includes: various media such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc that can store program codes.

[0305] The present application also provides a computing device 800 as Figure 8 shown. The computing device 800 includes a bus 801, a processor 802, a communication interface 803, and a memory 804. The processor 802, the memory 804, and the communication interface 803 communicate with each other through the bus 801.

[0306] Among them, the processor 802 can be a central processing unit (CPU), or can also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0307] The memory 804 can adopt a dynamic random access memory (DRAM). In addition to DRAM, the memory 804 can also be other random access memories, such as a static random access memory (SRAM), etc. Additionally, the memory 802 can also be a read-only memory (ROM). For the read-only memory, for example, it can be a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), etc. The memory 804 can also be a flash memory medium (FLASH), a hard disk drive (HDD), or a solid state disk (SSD), etc. Computer program instructions are stored in the memory 804, and the processor 802 executes the computer program instructions to execute the steps performed by the data storage device 100A in the method described above Figure 4 or execute the steps performed by the management device 300 in the method described above Figure 8 . The memory 804 can also include other software modules required for running processes such as an operating system (such as multiple modules in the data transmission device 700). The operating system can be LINUX TM , UNIX TM , WINDOWS TM , etc.

[0308] This application also provides a computing device system, and the computing device system includes at least one such as Figure 9The computing device 900 shown. The computing device 900 includes a bus 901, a processor 902, a communication interface 903, and a memory 904. Communication occurs between the processor 902, the memory 904, and the communication interface 903 via the bus 901. Communication occurs between at least one of the computing devices 900 in the computing device system via a communication path.

[0309] Among them, for the specific types of the processor 902 and the memory 904, refer to the relevant descriptions of the processor 602 and the memory 604, which will not be elaborated here. The processor 902 executes the computer program instructions stored in the memory 604 to execute some or all of the steps performed by the data storage device 100A in the method described above, or the processor 902 executes the computer program instructions stored in the memory 604 to execute some or all of the steps performed by the management device 300 in the method described above. The memory may also include other software modules required for running processes such as an operating system. The operating system can be LINUX Figure 4 , UNIX Figure 6 , WINDOWS TM , etc. TM , etc. TM etc.

[0310] Communication is established between at least one of the computing devices 900 in the computing device system via a communication network, and any one or any combination of modules in the data transmission device 700 runs on each computing device 900.

[0311] The above embodiments can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded or executed on a computer, the processes or functions described in the embodiments of the present invention are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that contains one or more collections of available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, or magnetic tape), an optical medium (such as a DVD), or a semiconductor medium. The semiconductor medium can be a solid state drive (SSD).

[0312] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0313] The present application is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to the present application. It should be understood that each process and / or block in the flowcharts and / or block diagrams, and the combination of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate means for implementing the functions specified in one Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0314] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means embodying the function specified in the flowchart(s) Figure 1 a flowchart or flowcharts and / or block(s) Figure 1 a block or blocks.

[0315] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the function specified in the flowchart(s) Figure 1 a flowchart or flowcharts and / or block(s) Figure 1 a block or blocks.

[0316] It will be apparent to those skilled in the art that various modifications and variations can be made to the present application without departing from the scope of the application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalent technologies, the present application is also intended to cover these modifications and variations.

Claims

1. A data transmission method, characterized in that, the method includes: obtaining the transfer attribute of the target data to be transmitted and the transfer attribute of the receiving device, where the transfer attribute of the target data represents the restricted factors for the transmission of the target data, and the transfer attribute of the receiving device represents the restricted factors for the receiving device to obtain data; determining whether the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, where the transfer policy describes the conditions that the transfer attribute of the target data and the transfer attribute of the receiving device need to follow when the receiving device has the permission to obtain the target data.

2. The method according to claim 1, characterized in that, the obtaining of the transfer attribute of the receiving device includes: receiving a data request sent by the receiving device, where the data request is used to request to obtain the target data, and the data request carries the transfer attribute of the receiving device.

3. The method according to claim 1 or 2, characterized in that, the obtaining of the transfer attribute of the target data to be transmitted includes: obtaining the transfer attribute of the target data from the metadata of the target data.

4. The method according to claim 2 or 3, characterized in that, before receiving the data request sent by the receiving device, it further includes: receiving a metadata request sent by the receiving device, where the metadata request carries the transfer attribute of the receiving device; responding to the metadata request, determining the metadata set according to the transfer attribute of the receiving device, where the metadata set includes the metadata allowed to be transmitted to the receiving device; transmitting the metadata set to the receiving device.

5. The method according to any one of claims 2 to 3, characterized in that, the method further includes: after determining that the target data is allowed to be transmitted to the receiving device, sending the target data to the receiving device.

6. The method according to claim 1, characterized in that, the obtaining of the transfer attribute of the target data to be transmitted and the transfer attribute of the receiving device includes: receiving a first inquiry message sent by the data storage device, where the first inquiry message is used to inquire whether the target data is allowed to be transmitted to the receiving device, and the first inquiry message carries the transfer attribute of the target data and the transfer attribute of the receiving device.

7. The method according to claim 6, characterized in that, before receiving the first inquiry message sent by the data storage device, it further includes: receiving a second inquiry message sent by the data storage device, where the second inquiry message is used to inquire about the metadata set, and the metadata set includes the metadata allowed to be transmitted to the receiving device, and the second inquiry message carries the transfer attribute of the receiving device; responding to the second inquiry message, determining the metadata set according to the transfer attribute of the receiving device; transmitting the metadata set to the data storage device.

8. The method according to claim 6 or 7, characterized in that, When it is determined that the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, the method further includes: Sending a notification message to the data storage device, where the notification message is used to notify that the target data is allowed to be transmitted to the receiving device.

9. The method according to any one of claims 1 to 8, characterized in that, Before obtaining the transfer attribute of the target data to be transmitted and the transfer attribute of the receiving device, it further includes: Configuring the transfer attribute for the receiving device under the instruction of the user; Configuring the transfer attribute for the target data under the instruction of the user, and recording the transfer attribute of the target data in the metadata of the target data.

10. The method according to claim 9, characterized in that, Configuring the transfer attribute for the receiving device includes: Generating a certificate recording the transfer attribute of the receiving device, and performing part or all of the following on the certificate: encrypting the certificate using the public key of the receiving device, adding signature information to the certificate; where the signature information is generated using its own private key; Sending the certificate to the receiving device.

11. The method according to claim 1, characterized in that, Obtaining the transfer attribute of the receiving device includes: Obtaining the transfer attribute of the receiving device from a set of device transfer attributes pre-configured by the user, where the set of device transfer attributes includes the transfer attributes configured by the user for at least one device.

12. The method according to any one of claims 1 to 11, characterized in that, The transfer attribute of the target data indicates part or all of the following: the security level of the target data, the service type of the target data.

13. The method according to any one of claims 1 to 12, characterized in that, The transfer attribute of the receiving device indicates part or all of the following: the security level of the receiving device, the service type of the service undertaken by the receiving device.

14. A data transmission device, characterized in that, The device includes a management module, The management module is used to obtain the transfer attribute of the target data to be transmitted and the transfer attribute of the receiving device, where the transfer attribute of the target data characterizes the restricted factors for the transmission of the target data, and the transfer attribute of the receiving device characterizes the restricted factors for the receiving device to obtain data; Determining whether the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, where the transfer policy describes the conditions that the transfer attribute of the target data and the transfer attribute of the receiving device need to follow when the receiving device has the permission to obtain the target data.

15. The device according to claim 14, characterized in that, The device further includes a first transmission module, The first transmission module is used to: receive a data request sent by the receiving device, where the data request is used to request to obtain the target data, and the data request carries the transfer attribute of the receiving device; The management module is configured to obtain the transfer attribute of the receiving device from the data request.

16. The device according to claim 14 or 15, wherein, the management module is configured to: obtain the transfer attribute of the target data from the metadata of the target data.

17. The device according to claim 15 or 16, wherein, the first transmission module is further configured to: receive a metadata request sent by the receiving device, where the metadata request carries the transfer attribute of the receiving device; the management module is further configured to, in response to the metadata request, determine the metadata set according to the transfer attribute of the receiving device, where the metadata set includes metadata allowed to be transmitted to the receiving device; the first transmission module is further configured to: transmit the metadata set to the receiving device.

18. The device according to any one of claims 16 to 17, wherein, the first transmission module is further configured to, after the management module determines that the target data is allowed to be transmitted to the receiving device, send the target data to the receiving device.

19. The device according to claim 14, wherein, the device further includes a second transmission module; the second transmission module is configured to: receive a first inquiry message sent by a data storage device, where the first inquiry message is used to inquire whether the target data is allowed to be transmitted to the receiving device, and the first inquiry message carries the transfer attribute of the target data and the transfer attribute of the receiving device; the management module is configured to obtain the transfer attribute of the target data and the transfer attribute of the receiving device from the first inquiry message.

20. The device according to claim 19, wherein, the second transmission module is further configured to: receive a second inquiry message sent by the data storage device, where the second inquiry message is used to inquire about a metadata set, where the metadata set includes metadata allowed to be transmitted to the receiving device, and the second inquiry message carries the transfer attribute of the receiving device; the management module is further configured to, in response to the second inquiry message, determine the metadata set according to the transfer attribute of the receiving device; the second transmission module is further configured to transmit the metadata set to the data storage device.

21. The device according to claim 19 or 20, wherein, in the case that it is determined that the target data is allowed to be transmitted to the receiving device according to the transfer attribute of the target data, the transfer attribute of the receiving device, and the transfer policy, the second transmission module is further configured to: send a notification message to the data storage device, where the notification message is used to notify that the target data is allowed to be transmitted to the receiving device.

22. A computing device, wherein, the computing device includes a processor and a memory, and the processor is configured to call computer program instructions stored in the memory to execute the method according to any one of claims 1 to 12.