CN111225042B - Data transmission method and device, computer equipment and storage medium - Google Patents

Data transmission method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN111225042B
CN111225042B CN201911376432.1A CN201911376432A CN111225042B CN 111225042 B CN111225042 B CN 111225042B CN 201911376432 A CN201911376432 A CN 201911376432A CN 111225042 B CN111225042 B CN 111225042B
Authority
CN
China
Prior art keywords
data
target
rdma
cache
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911376432.1A
Other languages
Chinese (zh)
Other versions
CN111225042A (en
Inventor
王晓亮
邱昊楠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Tencent Technology Shenzhen Co Ltd
Original Assignee
Nanjing University
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University, Tencent Technology Shenzhen Co Ltd filed Critical Nanjing University
Priority to CN201911376432.1A priority Critical patent/CN111225042B/en
Publication of CN111225042A publication Critical patent/CN111225042A/en
Application granted granted Critical
Publication of CN111225042B publication Critical patent/CN111225042B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Abstract

The application discloses a data transmission method, a data transmission device, computer equipment and a storage medium, and belongs to the technical field of computers. The method comprises the following steps: receiving a data sending instruction, and acquiring a data storage address corresponding to the data sending instruction, wherein the data storage address is used for storing target data to be sent; determining a data amount of the target data stored in the data storage address; if the data volume of the target data is larger than the data volume threshold value, registering the data storage address as an RDMA temporary cache, and sending the target data based on the RDMA temporary cache; copying the target data into an RDMA cache allocated in an RDMA connection establishment process if the data volume of the target data is less than or equal to a data volume threshold, and transmitting the target data based on the RDMA cache. The data transmission efficiency can be improved through the application.

Description

Data transmission method and device, computer equipment and storage medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for data transmission, a computer device, and a storage medium.
Background
With the development of computer network technology, it is very common for people to transmit data through a network, and for this purpose, RDMA (Remote Direct Memory Access) technology has been developed for the technical personnel to transmit data on the network.
RDMA technology transport mode is as follows: and copying the data to be sent to an RDMA cache distributed in the process of establishing the RDMA connection, and sending the target data based on the RDMA cache.
In the process of implementing the present application, the inventor finds that the prior art has at least the following problems:
because data needs to be copied to the RDMA cache when the data is transmitted in the transmission mode, certain processing time is needed for data copying, and particularly, long time is needed for data copying when the data volume is large, so that the efficiency of data transmission is affected.
Disclosure of Invention
The embodiment of the application provides a data transmission method, a data transmission device, computer equipment and a storage medium, and can solve the problem of low transmission efficiency caused by the fact that data needs to be copied to an RDMA (remote direct memory access) cache when large data are sent. The technical scheme is as follows:
in one aspect, a method for data transmission is provided, where the method includes:
receiving a data sending instruction, and acquiring a data storage address corresponding to the data sending instruction, wherein the data storage address is used for storing target data to be sent;
determining a data amount of the target data stored in the data storage address;
if the data volume of the target data is larger than the data volume threshold value, registering the data storage address as an RDMA temporary cache, and sending the target data based on the RDMA temporary cache;
copying the target data into an RDMA cache allocated in an RDMA connection establishment process if the data volume of the target data is less than or equal to a data volume threshold, and transmitting the target data based on the RDMA cache.
Optionally, after receiving the data transmission instruction, the method further includes:
determining a connection identifier of an RDMA connection between a local device and a target device for data transmission;
determining a storage address of corresponding target connection attribute information based on a corresponding relation between a pre-stored connection identifier and the storage address of the connection attribute information and the connection identifier of RDMA connection between the local device and a target device for data transmission;
acquiring the target connection attribute information at the storage address of the target connection attribute information;
the sending the target data based on the RDMA temporary cache comprises: transmitting the target data based on the RDMA temporary cache and the target connection attribute information.
The sending the target data based on the RDMA cache comprises: transmitting the target data based on the RDMA cache and the target connection attribute information.
Optionally, the sending the target data based on the RDMA temporary cache includes:
sending an RDMA data transmission request to a target device, wherein the RDMA data transmission request carries the data volume;
receiving a data receiving address sent by the target equipment;
transmitting the target data stored in the RDMA temporary cache to the target device based on the data receiving address.
Optionally, the sending the target data based on the RDMA cache includes:
transmitting the target data stored in the RDMA cache to the target device based on a data reception address transmitted by the target device in an RDMA connection establishment procedure.
Optionally, after sending the target data based on the RDMA temporary cache, the method further includes:
and after the target data is sent, logging out and recovering the RDMA temporary buffer.
Optionally, after sending the target data based on the RDMA cache, the method further includes:
and after the target data is sent, clearing the target data in the RDMA cache.
In another aspect, an apparatus for data transmission is provided, the apparatus comprising:
the device comprises an acquisition module, a sending module and a sending module, wherein the acquisition module is used for receiving a data sending instruction and acquiring a data storage address corresponding to the data sending instruction, and the data storage address is used for storing target data to be sent;
a determining module, configured to determine a data amount of the target data stored in the data storage address;
the registration module is used for registering the data storage address as an RDMA temporary cache if the data volume of the target data is larger than a data volume threshold value, and transmitting the target data based on the RDMA temporary cache;
and the copying module is used for copying the target data into an RDMA cache allocated in the RDMA connection establishment process and transmitting the target data based on the RDMA cache if the data volume of the target data is less than or equal to a data volume threshold.
Optionally, the obtaining module is further configured to:
determining a connection identifier of an RDMA connection between a local device and a target device for data transmission;
determining a storage address of corresponding target connection attribute information based on a corresponding relation between a pre-stored connection identifier and the storage address of the connection attribute information and the connection identifier of RDMA connection between the local device and a target device for data transmission;
acquiring the target connection attribute information at the storage address of the target connection attribute information;
the registration module is configured to: transmitting the target data based on the RDMA temporary cache and the target connection attribute information.
The replication module is configured to: transmitting the target data based on the RDMA cache and the target connection attribute information.
Optionally, the registration module is configured to:
sending an RDMA data transmission request to a target device, wherein the RDMA data transmission request carries the data volume;
receiving a data receiving address sent by the target equipment;
transmitting the target data stored in the RDMA temporary cache to the target device based on the data receiving address.
Optionally, the copy module is configured to:
transmitting the target data stored in the RDMA cache to the target device based on a data reception address transmitted by the target device in an RDMA connection establishment procedure.
Optionally, the registration module is further configured to:
and after the target data is sent, logging out and recovering the RDMA temporary buffer.
Optionally, the copy module is further configured to:
and after the target data is sent, clearing the target data in the RDMA cache.
In yet another aspect, a computer device is provided that includes one or more processors and one or more memories having stored therein at least one instruction that is loaded and executed by the one or more processors to perform an operation performed by the method of data transfer.
In yet another aspect, a computer-readable storage medium having at least one instruction stored therein is provided, which is loaded and executed by a processor to perform operations performed by the method for data transmission.
The technical scheme provided by the embodiment of the application has the following beneficial effects:
according to the method and the device, the size of the data volume of the target data is detected, whether the size of the data volume is larger than a preset threshold value is judged, the transmission mode is selected according to the judgment result, and when the data volume of the target data is larger, the storage address for storing the target data is directly registered as the RDMA temporary cache, so that the target data does not need to be copied to the RDMA cache which is applied in advance during RDMA transmission of the target data, the data copying time is saved, and the data transmission efficiency can be improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a flowchart of a method for data transmission according to an embodiment of the present application;
FIG. 2 is a diagram of sending target data according to an embodiment of the present disclosure;
fig. 3 is a logic structure diagram of a method for data transmission according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a data transmission apparatus according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a terminal provided in an embodiment of the present application;
fig. 6 is a schematic structural diagram of a server according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
The embodiment of the application provides a data transmission method, which can be realized by equipment. The device can be a terminal or a server, the terminal can be a mobile phone, a desktop computer, a tablet computer, a notebook computer and the like, and the server can be an independent server or a server group. The device may have an application installed therein, which may be any application (hereinafter referred to as an application) that needs to transmit data. The device may have data transfer functionality and the device may support the RDMA network transfer protocol.
When RDMA data Transmission is carried out, an application calls a corresponding connection interface, the application sends an RDMA network connection establishment instruction through a local device, firstly, a TCP (Transmission Control Protocol) network connection is established between two devices through three-way handshake by sending a network connection request, secondly, after the establishment of the TCP network connection is completed, the local device sends a preset identification for establishing the RDMA network connection to a target device based on a TCP network, the target device receives the identification, the corresponding interface is called to detect the identification, when the identification is detected to be the preset identification for establishing the RDMA network connection, the target device and the local device establish the RDMA network connection, and the target device continues to use the TCP network connection under the condition that the identification is not received. After the RDMA network connection is established, the local device may perform data transfer with the target device over the RDMA network connection.
Fig. 1 is a flowchart of a data transmission method according to an embodiment of the present application. Referring to fig. 1, the process includes:
step 101, receiving a data sending instruction, and acquiring a data storage address corresponding to the data sending instruction.
The data storage address is used for storing target data to be sent, the application can call the connection interface to establish network connection, the network connection can be TCP network connection or RDMA network connection, and the application can establish different network connections by inputting different parameters to the connection interface. The system program can be established with middleware, which is software for providing basic service of the system program for the application, can serve different applications, and can uniformly process resources.
In implementation, when an application wants to perform data transmission, an instruction may be sent to the system program by calling the relevant interface, and the system program receives the instruction through the middleware and performs an operation of establishing a network connection according to the instruction. If the application sends an RDMA network connection establishing instruction, namely calling a connection interface and inputting parameters corresponding to the RDMA network connection establishing instruction to the connection interface, the middleware receives the RDMA network connection establishing instruction and calls the connection interface to judge whether the RDMA network connection exists.
If the RDMA network connection exists, the local device and the target device directly acquire the connection attribute information of the existing RDMA network connection, then establish the RDMA network connection, and apply for a block of memory as an RDMA cache for the local device to use when transmitting data. Then the local device and the target device respectively generate connection identifiers for the established connection attribute information, and simultaneously the local device and the target device negotiate a unique ID and allocate the ID to the connection attribute information, wherein the connection attribute information can comprise TCP connection resources and RDMA connection resources.
If the TCP network connection request does not exist, firstly, the TCP network connection interface is called to send a network connection request to the target equipment, and the target equipment detects the network connection request through the monitoring function and establishes the TCP network connection through three-way handshake. Secondly, after the TCP network connection is established, the target device detects the packet sent by the local device through the monitoring function, and based on different detection results, the following processes may be performed:
first, when a preset identifier for establishing an RDMA network connection is not detected in a packet received by a target device, a function for establishing a TCP network connection is called for subsequent processing.
Secondly, when detecting that the message contains a preset identifier for establishing RDMA network connection, calling a function for establishing the RDMA network connection to enable the local device and the target device to directly configure the quantity of a transceiving queue, a system queue, a complete queue and an event queue in the network card according to a preset configuration table, then exchanging information of the transceiving queue and routing information through the established TCP network connection, after the exchange is completed, packaging the transceiving queue information and the routing information into the connection attribute information respectively established by the local device and the target device, packaging all resources connected with the TCP network into TCP connection resources, packaging all resources connected with the RDMA network into RDMA connection resources, packaging the TCP connection resources and the RDMA connection resources into the connection attribute information by the local device, and negotiating a unique ID for the connection attribute information and the target connection attribute information by the local device and the target device, the local device and the target device encapsulate the ID into the connection attribute information and the target connection attribute information, respectively.
After the connection attribute information and the target connection attribute information are established, the local device and the target device apply for a block of memory as an RDMA cache for the connection attribute information and the target connection attribute information, the size of the cache may be preset, and then the cache is divided into cache blocks of a preset size based on a preset configuration table, for example, divided into cache blocks of 4 KB. The preset configuration table may be as shown in table 1:
TABLE 1
Parameter name Default optimum value
Number of parallel transmit queues used 4
Buffer block size 4KB/16KB
Send queue length 64
Receive queue length 256
Transmit buffer size Transmit queue length × buffer block size
Receive buffer size Receive queue length × buffer block size
After the configuration is completed, the local device and the target device respectively allocate connection identifiers for the connection attribute information and the target connection attribute information, the connection identifier can be used for internal communication of the local device or the target device, and the connection identifier and the connection attribute information are put into a hash table for mapping to generate a corresponding relation between the connection identifier and the connection attribute information, then storing the corresponding relation, sending the connection identifier to the application, simultaneously requesting a uniform processing mechanism to associate the connection identifier with the connection attribute information and storing the connection identifier, the request unification processing mechanism is a processing mechanism on a worker process in the middleware, which may be a process dedicated to processing the send target data in the middleware, for example, the request unification processing mechanism may be an epoll detection mechanism, the connection identifier may be registered in the epoll event tree after associating the connection identifier with the connection attribute information.
After the application of the local device receives the connection identifier, the user can send data by using the connection identifier through the application. When a user triggers a data sending instruction, the data sending instruction is transmitted to the middleware, the data sending instruction comprises a connection identifier, the middleware finds the connection attribute information according to the corresponding relation between the connection identifier and the connection attribute information, and then the middleware acquires a data storage address based on the connection attribute information.
Step 102, determining the data amount of the target data stored in the data storage address.
In implementation, after the data storage address is obtained, the middleware calls a data volume detection function to detect the data storage address, so as to obtain the data volume of the target data.
And 103, if the data volume of the target data is larger than the data volume threshold, registering the data storage address as an RDMA temporary cache, and transmitting the target data based on the RDMA temporary cache.
In implementation, a technician needs to set a data volume threshold before sending, and the technician can set the data volume threshold by:
first, the registration process duration of the RDMA temporary cache is obtained.
The technician may set a duration calculation function and then use the local device to call the duration calculation function to obtain the duration consumed to register the RDMA temporary cache.
Second, the amount of data that the local device can copy the data in the storage device to the RDMA cache for the duration of the registration process is determined.
The technician may call a data volume calculation function through the local device, and calculate how much data in the storage device can be copied to the RDMA cache by the local device within the registration processing duration to obtain the data volume.
Next, the data amount is determined as a data amount threshold.
After the data volume is obtained, the data volume is used as a data volume threshold value, namely when the data volume of the target data is larger than the data volume threshold value, the time consumed for registering the RDMA temporary cache is shorter, and if the data volume of the target data is not larger than the data volume threshold value, the time consumed for copying the target data from the storage address to the RDMA cache is shorter.
During sending, according to the relationship between the data amount and the data threshold, the sending process may be performed in two parts, i.e., registering the RDMA temporary buffer, and sending the target data to the target device, as shown in the upper part of fig. 2.
When the data volume of the target data is detected to be larger than the data volume threshold, a request unified processing mechanism in a worker process on the middleware detects a connection identifier, finds corresponding connection attribute information according to the connection identifier, and acquires the connection attribute information, wherein the connection identifier can be detected through an epoll detection mechanism, for example, an epoll detection mechanism is arranged in the worker process in the middleware, an epoll event tree of the mechanism detects whether a request points to each connection attribute information, and the request can be a connection identifier.
Then, the middleware registers the data storage address as an RDMA temporary cache, that is, registers the data storage address as a cache corresponding to the connection attribute information of the local device, then acquires the data volume of the target data obtained through the detection according to the instruction, and packages the data volume into a message, after the packaging is completed, queries a unique ID between the connection attribute information negotiated between the local device and the target connection attribute information stored in the memory, obtains the ID, writes the ID into a specific bit of the message, then sets another specific bit as the identifier according to the identifier of the sending request stored by both the local device and the target device, and sends the message to the target device through a sending queue after the operation is completed.
The target equipment receives the message sent by the local equipment, analyzes the specific bit of the message to obtain an ID and an identifier of a sending request, the middleware of the target equipment judges according to the identifier that the local equipment sends the sending request to the target equipment, then finds out the connection attribute information of the corresponding target equipment based on the ID, and then finds out the cached address, namely the data storage address, distributed to the target equipment based on the connection attribute information. And after the address of the cache is found, detecting the size of the cache, and if the size of the cache is smaller than the target data volume, reallocating the corresponding cache for the target connection attribute information to enable the finally-allocated cache to be larger than or equal to the target data volume, wherein the cache is the final data storage address. Then the target device informs the local device to resend the sending request, then the target device detects whether the size of the cache is smaller than the target data volume again, and if not, the access authority of the data receiving address and the data receiving address are packaged into a message to be sent to the local device.
After the local device receives the message, the middleware calls a corresponding function to analyze the message to obtain the access authority of the data receiving address and the cached address, and the cached address is the data storage address.
A determination is then made as to whether the data-based storage address and the data-based receiving address are aligned to a cache-line boundary.
And if the data storage addresses are aligned, packaging the data storage addresses and the access rights of the data storage addresses and the data receiving addresses and the access rights of the data receiving addresses and sending the data storage addresses and the access rights of the data receiving addresses to the worker process.
If not, the process can be carried out by the following way:
in the first mode, when the data storage address and the data receiving address are not aligned to the cache line and have the same length, the data receiving address is segmented.
In the second mode, when the data storage address and the data receiving address are not aligned to the cache line and the length of the data receiving address is greater than that of the data storage address, the memory starting address of the data receiving address is shifted backward to enable the offset of the memory starting address and the cache line to reach a target offset, the target offset is the offset of the data storage address and the cache line, and then the data storage address and the data receiving address with the shifted backward starting address are simultaneously segmented to obtain a part aligned to the cache line and a part not aligned to the cache line.
After the alignment is finished, the data storage address and the access authority of the data storage address and the aligned data receiving address and the access authority of the data receiving address are packaged and sent to a worker process.
Then, the middleware sends an instruction to the connection attribute information through the request unified processing mechanism, packs the data in the cache corresponding to the connection attribute information according to the parameters recorded in the connection attribute information, for example, packs the target data into a plurality of cache blocks with the size of 4KB, and then notifies the sending queue to directly send the target data to the data receiving address of the target device.
And 104, if the data volume of the target data is less than or equal to the data volume threshold, copying the target data into an RDMA cache allocated in the process of establishing the RDMA connection, and transmitting the target data based on the RDMA cache.
In implementation, when sending, according to the relationship between the data amount and the data threshold, the sending process may be performed in two parts, namely, registering the RDMA temporary buffer, and sending the target data to the target device, as shown in the lower half of fig. 2.
When detecting that the data amount of the target data is smaller than the data amount threshold, the middleware copies the target data into the RDMA cache established in advance, where the copying process may be performed according to the configuration in the configuration table, for example, the local device sets the cache block to 4KB according to the configuration table, and the middleware notifies the worker process to send the content in the cache block to the target device through the connection identifier every time the middleware copies one cache block, and the target device stores the content in the RDMA cache established in advance by the target device after receiving the content, and the application of the target device may acquire the data.
After the transmission is completed, the local device and the target device monitor the event queue through the polling thread, after the transmission-completed event is monitored, the transmission-completed cache block is extracted from the completion queue, the transmission-completed cache block is recycled, and then the application data is notified of the completion of the transmission through the connection identifier.
It should be noted that the hardware of the computer device needs to be configured before the RDMA transfer is performed.
Before RDMA transmission, the local device and the target device configure the device environment of the RDMA network card based on the network card driver, encapsulate interfaces provided by existing RDMA and TCP network protocols, and encapsulate the interfaces into a socket-like interface, for example, the connection interface, the name of the socket-like interface is the same as that of the TCP network protocol, and the socket-like interface includes all interfaces provided by the RDMA and TCP network protocols and encapsulates the interfaces according to logic. For example, a connection interface is an interface used to establish a connection in the original RDMA and TCP network protocols, plus a logical decision and then repackaged.
Before RDMA transmission, after configuring hardware of a computer device, a target device may detect an incoming packet through a snoop function, where the detection may be performed periodically or continuously, and the packet may be a connection request, target data, or a preset identifier for establishing an RDMA network connection.
Fig. 3 is a schematic logical structure diagram of a data transmission method according to an embodiment of the present application. Referring to fig. 3, the logical structure includes:
the application comprises the following steps: the application is a data center distributed application, which is an application for transmitting, accelerating, showing, calculating and storing data information on internet network infrastructure through a specific device network cooperating globally, such as Ceph, MXNet, tensflo and the like.
Interface: the interface is a socket interface, the monitoring interface is used for monitoring various requests sent by other devices, the requests comprise data storage addresses and access permissions of the data storage addresses, the connection interface and the receiving interface are used for establishing network connection, namely establishing TCP connection resources and RDMA connection resources, the closing interface is used for disconnecting the network connection, the sending interface is used for sending the requests or sending target data, and the receiving interface is used for receiving the target data.
A connection establishment module: the module is responsible for initializing the RDMA hardware environment, configuring RDMA devices according to a preset configuration table and allocating RDMA caches. The method is used for establishing the RDMA network connection and is responsible for allocating RDMA connection resources and RDMA cache before establishing the RDMA network connection and then assisting in establishing the RDMA network connection through a TCP connection.
A connection management module: the module is responsible for storing, querying and deleting the encapsulated connection attribute information. The module associates the connection attribute information with the connection identifier of the RDMA network connection or the TCP network connection contained in the connection attribute information through a hash table, stores the connection attribute information internally, and provides the connection identifier for external application to realize the connection abstract service of the class socket.
The network communication function module: the module is responsible for processing data transmitted by an application through interfaces such as sending/receiving and the like, and is used for network transceiving.
A resource multiplexing module: the module is responsible for multiplexing the established bottom RDMA network connection (QP, transceiving queue) and serving network requests initiated by the upper multiple network communication function modules according to different connection attribute information, or forwarding data received from the bottom RDMA network connection (QP, transceiving queue) to different connection attribute information in the upper multiple network communication function modules.
According to the method and the device, the size of the data volume of the target data is detected, whether the size of the data volume is larger than a preset threshold value is judged, the transmission mode is selected according to the judgment result, and when the data volume of the target data is larger, the storage address for storing the target data is directly registered as the RDMA temporary cache, so that the target data does not need to be copied to the RDMA cache which is applied in advance during RDMA transmission of the target data, the data copying time is saved, and the data transmission efficiency can be improved.
All the above optional technical solutions may be combined arbitrarily to form the optional embodiments of the present disclosure, and are not described herein again.
The embodiment of the present application provides an apparatus for modifying a delivery location, where the apparatus may be a local device in the foregoing embodiment, as shown in fig. 4, the apparatus includes:
the obtaining module 410 is configured to receive a data sending instruction, and obtain a data storage address corresponding to the data sending instruction, where the data storage address is used to store target data to be sent.
A determining module 420, configured to determine a data amount of the target data stored in the data storage address.
A registering module 430, configured to register the data storage address as an RDMA temporary cache if the data volume of the target data is greater than a data volume threshold, and send the target data based on the RDMA temporary cache.
A copy module 440, configured to copy the target data into an RDMA cache allocated in an RDMA connection setup process if the data amount of the target data is less than or equal to a data amount threshold, and send the target data based on the RDMA cache.
Optionally, the obtaining module 410 is further configured to:
a connection identification of an RDMA connection between a local device and a target device that is transmitting data is determined.
And determining the storage address of the corresponding target connection attribute information based on the corresponding relation between the pre-stored connection identifier and the storage address of the connection attribute information and the connection identifier of the RDMA connection between the local device and the target device for data transmission.
And acquiring the target connection attribute information at the storage address of the target connection attribute information.
The registration module 430 is configured to: transmitting the target data based on the RDMA temporary cache and the target connection attribute information.
The replication module 440 is configured to: transmitting the target data based on the RDMA cache and the target connection attribute information.
Optionally, the registration module 430 is configured to:
and sending an RDMA data transmission request to a target device, wherein the RDMA data transmission request carries the data volume.
And receiving a data receiving address sent by the target equipment.
Transmitting the target data stored in the RDMA temporary cache to the target device based on the data receiving address.
Optionally, the copying module 440 is configured to:
transmitting the target data stored in the RDMA cache to the target device based on a data reception address transmitted by the target device in an RDMA connection establishment procedure.
Optionally, the registration module 430 is further configured to:
and after the target data is sent, logging out and recovering the RDMA temporary buffer.
Optionally, the copy module 440 is further configured to:
and after the target data is sent, clearing the target data in the RDMA cache.
According to the method and the device, the size of the data volume of the target data is detected, whether the size of the data volume is larger than a preset threshold value is judged, the transmission mode is selected according to the judgment result, and when the data volume of the target data is larger, the storage address for storing the target data is directly registered as the RDMA temporary cache, so that the target data does not need to be copied to the RDMA cache which is applied in advance during RDMA transmission of the target data, the data copying time is saved, and the data transmission efficiency can be improved.
It should be noted that: in the data transmission apparatus provided in the foregoing embodiment, only the division of the functional modules is illustrated when data transmission is performed, and in practical applications, the functions may be distributed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the embodiments of the data transmission method provided by the above embodiments belong to the same concept, and specific implementation processes thereof are described in the embodiments of the method for the data transmission method, which are not described herein again.
Fig. 5 shows a block diagram of a terminal 500 according to an exemplary embodiment of the present application. The terminal may be a local device or a target device, and the terminal 500 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3), an MP4 player (Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4), a notebook computer, or a desktop computer. Terminal 500 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, and the like.
In general, the terminal 500 includes: a processor 501 and a memory 502.
The processor 501 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so on. The processor 501 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 501 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 501 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, processor 501 may also include an AI (Artificial Intelligence) processor for processing computational operations related to machine learning.
Memory 502 may include one or more computer-readable storage media, which may be non-transitory. Memory 502 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 502 is used to store at least one instruction for execution by processor 501 to implement the method of data transmission provided by the method embodiments herein.
In some embodiments, the terminal 500 may further optionally include: a peripheral interface 503 and at least one peripheral. The processor 501, memory 502 and peripheral interface 503 may be connected by a bus or signal lines. Each peripheral may be connected to the peripheral interface 503 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 504, touch screen display 505, camera 506, audio circuitry 507, positioning components 508, and power supply 509.
The peripheral interface 503 may be used to connect at least one peripheral related to I/O (Input/Output) to the processor 501 and the memory 502. In some embodiments, the processor 501, memory 502, and peripheral interface 503 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 501, the memory 502, and the peripheral interface 503 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.
The Radio Frequency circuit 504 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 504 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 504 converts an electrical signal into an electromagnetic signal to transmit, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 504 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuitry 504 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: metropolitan area networks, various generation mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the rf circuit 504 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The display screen 505 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display screen 505 is a touch display screen, the display screen 505 also has the ability to capture touch signals on or over the surface of the display screen 505. The touch signal may be input to the processor 501 as a control signal for processing. At this point, the display screen 505 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, the display screen 505 may be one, providing the front panel of the terminal 500; in other embodiments, the display screens 505 may be at least two, respectively disposed on different surfaces of the terminal 500 or in a folded design; in still other embodiments, the display 505 may be a flexible display disposed on a curved surface or on a folded surface of the terminal 500. Even more, the display screen 505 can be arranged in a non-rectangular irregular figure, i.e. a shaped screen. The Display screen 505 may be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), and other materials.
The camera assembly 506 is used to capture images or video. Optionally, camera assembly 506 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 506 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
Audio circuitry 507 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 501 for processing, or inputting the electric signals to the radio frequency circuit 504 to realize voice communication. For the purpose of stereo sound collection or noise reduction, a plurality of microphones may be provided at different portions of the terminal 500. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 501 or the radio frequency circuit 504 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, audio circuitry 507 may also include a headphone jack.
The positioning component 508 is used for positioning the current geographic Location of the terminal 500 for navigation or LBS (Location Based Service). The Positioning component 508 may be a Positioning component based on the united states GPS (Global Positioning System), the chinese beidou System, the russian graves System, or the european union's galileo System.
Power supply 509 is used to power the various components in terminal 500. The power source 509 may be alternating current, direct current, disposable or rechargeable. When power supply 509 includes a rechargeable battery, the rechargeable battery may support wired or wireless charging. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 500 also includes one or more sensors 510. The one or more sensors 510 include, but are not limited to: acceleration sensor 511, gyro sensor 512, pressure sensor 513, fingerprint sensor 514, optical sensor 515, and proximity sensor 516.
The acceleration sensor 511 may detect the magnitude of acceleration on three coordinate axes of the coordinate system established with the terminal 500. For example, the acceleration sensor 511 may be used to detect components of the gravitational acceleration in three coordinate axes. The processor 501 may control the touch screen 505 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 511. The acceleration sensor 511 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 512 may detect a body direction and a rotation angle of the terminal 500, and the gyro sensor 512 may cooperate with the acceleration sensor 511 to acquire a 3D motion of the user on the terminal 500. The processor 501 may implement the following functions according to the data collected by the gyro sensor 512: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
The pressure sensor 513 may be disposed on a side bezel of the terminal 500 and/or an underlying layer of the touch display screen 505. When the pressure sensor 513 is disposed on the side frame of the terminal 500, a user's holding signal of the terminal 500 may be detected, and the processor 501 performs left-right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 513. When the pressure sensor 513 is disposed at the lower layer of the touch display screen 505, the processor 501 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 505. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 514 is used for collecting a fingerprint of the user, and the processor 501 identifies the identity of the user according to the fingerprint collected by the fingerprint sensor 514, or the fingerprint sensor 514 identifies the identity of the user according to the collected fingerprint. Upon recognizing that the user's identity is a trusted identity, the processor 501 authorizes the user to perform relevant sensitive operations including unlocking the screen, viewing encrypted information, downloading software, paying, and changing settings, etc. The fingerprint sensor 514 may be provided on the front, back, or side of the terminal 500. When a physical button or a vendor Logo is provided on the terminal 500, the fingerprint sensor 514 may be integrated with the physical button or the vendor Logo.
The optical sensor 515 is used to collect the ambient light intensity. In one embodiment, the processor 501 may control the display brightness of the touch display screen 505 based on the ambient light intensity collected by the optical sensor 515. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 505 is increased; when the ambient light intensity is low, the display brightness of the touch display screen 505 is turned down. In another embodiment, processor 501 may also dynamically adjust the shooting parameters of camera head assembly 506 based on the ambient light intensity collected by optical sensor 515.
A proximity sensor 516, also referred to as a distance sensor, is typically disposed on the front panel of the terminal 500. The proximity sensor 516 is used to collect the distance between the user and the front surface of the terminal 500. In one embodiment, when the proximity sensor 516 detects that the distance between the user and the front surface of the terminal 500 gradually decreases, the processor 501 controls the touch display screen 505 to switch from the bright screen state to the dark screen state; when the proximity sensor 516 detects that the distance between the user and the front surface of the terminal 500 becomes gradually larger, the processor 501 controls the touch display screen 505 to switch from the screen-rest state to the screen-on state.
Those skilled in the art will appreciate that the configuration shown in fig. 5 is not intended to be limiting of terminal 500 and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be used.
Fig. 6 is a schematic structural diagram of a server, which may be a local device or a target device, according to an embodiment of the present disclosure, where the server 600 may generate a relatively large difference due to different configurations or performances, and may include one or more processors (CPUs) 601 and one or more memories 602, where at least one instruction is stored in the memories 602, and the at least one instruction is loaded and executed by the processors 601 to implement the methods provided by the foregoing method embodiments. Of course, the server may also have components such as a wired or wireless network interface, a keyboard, and an input/output interface, so as to perform input/output, and the server may also include other components for implementing the functions of the device, which are not described herein again.
In an exemplary embodiment, a computer-readable storage medium, such as a memory, including instructions executable by a processor in a terminal to perform the method of data transmission in the above embodiments is also provided. For example, the computer-readable storage medium may be a Read-only Memory (ROM), a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (14)

1. A method for data transmission, the method being applied in a local device, the method comprising:
receiving a data sending instruction, and acquiring a data storage address corresponding to the data sending instruction, wherein the data storage address is used for storing target data to be sent to target equipment;
determining a data amount of the target data stored in the data storage address;
if the data volume of the target data is larger than the data volume threshold value, registering the data storage address as an RDMA temporary cache, and sending the target data stored in the RDMA temporary cache to the target equipment;
if the data volume of the target data is less than or equal to the data volume threshold, copying the target data into an RDMA cache allocated in the process of establishing the RDMA connection, and transmitting the target data stored in the RDMA cache to the target device.
2. The method of claim 1, wherein after receiving the data transmission instruction, the method further comprises:
determining a connection identification of an RDMA connection between the local device and the target device;
determining a storage address of corresponding target connection attribute information based on a corresponding relation between a pre-stored connection identifier and a storage address of connection attribute information and a connection identifier of RDMA connection between the local device and the target device;
acquiring the target connection attribute information at the storage address of the target connection attribute information;
the sending the target data stored in the RDMA temporary cache to the target device includes: sending the target data stored in the RDMA temporary cache to the target device based on the target connection attribute information;
the sending the target data stored in the RDMA cache to the target device includes: transmitting the target data stored in the RDMA cache to the target device based on the target connection attribute information.
3. The method of claim 1, wherein the sending the target data stored in the RDMA temporary cache to the target device comprises:
sending an RDMA data transmission request to the target equipment, wherein the RDMA data transmission request carries the data volume;
receiving a data receiving address sent by the target equipment;
transmitting the target data stored in the RDMA temporary cache to the target device based on the data receiving address.
4. The method of claim 1, wherein the sending the target data stored in the RDMA cache to the target device comprises:
transmitting the target data stored in the RDMA cache to the target device based on a data reception address transmitted by the target device in an RDMA connection establishment procedure.
5. The method of claim 1, wherein after the sending the target data stored in the RDMA temporary cache to the target device, the method further comprises:
and after the target data is sent, logging out and recovering the RDMA temporary buffer.
6. The method of claim 1, wherein after the transmitting the target data stored in the RDMA cache to the target device, the method further comprises:
and after the target data is sent, clearing the target data in the RDMA cache.
7. An apparatus for data transmission, the apparatus located in a local device, the apparatus comprising:
the device comprises an acquisition module, a sending module and a sending module, wherein the acquisition module is used for receiving a data sending instruction and acquiring a data storage address corresponding to the data sending instruction, and the data storage address is used for storing target data to be sent to target equipment;
a determining module, configured to determine a data amount of the target data stored in the data storage address;
a registration module, configured to register the data storage address as an RDMA temporary cache if a data volume of the target data is greater than a data volume threshold, and send the target data stored in the RDMA temporary cache to the target device;
and the copying module is used for copying the target data into an RDMA cache allocated in the process of establishing the RDMA connection and transmitting the target data stored in the RDMA cache to the target equipment if the data volume of the target data is less than or equal to a data volume threshold value.
8. The apparatus of claim 7, wherein the obtaining module is further configured to:
determining a connection identification of an RDMA connection between the local device and the target device;
determining a storage address of corresponding target connection attribute information based on a corresponding relation between a pre-stored connection identifier and a storage address of connection attribute information and a connection identifier of RDMA connection between the local device and the target device;
acquiring the target connection attribute information at the storage address of the target connection attribute information;
the registration module is configured to: sending the target data stored in the RDMA temporary cache to the target device based on the target connection attribute information;
the replication module is configured to: transmitting the target data stored in the RDMA cache to the target device based on the target connection attribute information.
9. The apparatus of claim 7, wherein the registration module is configured to:
sending an RDMA data transmission request to the target equipment, wherein the RDMA data transmission request carries the data volume;
receiving a data receiving address sent by the target equipment;
transmitting the target data stored in the RDMA temporary cache to the target device based on the data receiving address.
10. The apparatus of claim 7, wherein the replication module is configured to:
transmitting the target data stored in the RDMA cache to the target device based on a data reception address transmitted by the target device in an RDMA connection establishment procedure.
11. The apparatus of claim 7, wherein the registration module is further configured to:
and after the target data is sent, logging out and recovering the RDMA temporary buffer.
12. The apparatus of claim 7, wherein the replication module is further configured to:
and after the target data is sent, clearing the target data in the RDMA cache.
13. A computer device comprising a processor and a memory, the memory having stored therein at least one instruction that is loaded and executed by the processor to perform operations performed by a method of data transmission according to any one of claims 1 to 6.
14. A computer-readable storage medium having stored therein at least one instruction which is loaded and executed by a processor to perform operations performed by a method of data transmission according to any one of claims 1 to 6.
CN201911376432.1A 2019-12-27 2019-12-27 Data transmission method and device, computer equipment and storage medium Active CN111225042B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911376432.1A CN111225042B (en) 2019-12-27 2019-12-27 Data transmission method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911376432.1A CN111225042B (en) 2019-12-27 2019-12-27 Data transmission method and device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111225042A CN111225042A (en) 2020-06-02
CN111225042B true CN111225042B (en) 2021-09-17

Family

ID=70830856

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911376432.1A Active CN111225042B (en) 2019-12-27 2019-12-27 Data transmission method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111225042B (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111863226A (en) * 2020-07-10 2020-10-30 广州市挖米科技有限责任公司 Data management method and device for medical data
CN111930678A (en) * 2020-08-14 2020-11-13 山东云海国创云计算装备产业创新中心有限公司 Data transmission method and device, electronic equipment and storage medium
CN112181963A (en) * 2020-09-28 2021-01-05 新奥数能科技有限公司 Data processing method, device, server and storage medium for digital enterprise
CN112261038B (en) * 2020-10-20 2021-08-06 苏州莱锦机电自动化有限公司 Big data acquisition method and system, computer equipment and storage medium thereof
CN112583655B (en) * 2020-11-02 2023-04-14 北京迈格威科技有限公司 Data transmission method and device, electronic equipment and readable storage medium
CN112685802B (en) * 2020-12-28 2022-07-01 青岛信芯微电子科技股份有限公司 Flash chip reading control method and device and storage medium
CN112765090B (en) * 2021-01-19 2022-09-20 苏州浪潮智能科技有限公司 Method, system, equipment and medium for prefetching target address
CN113422793A (en) * 2021-02-05 2021-09-21 阿里巴巴集团控股有限公司 Data transmission method and device, electronic equipment and computer storage medium
CN112925672B (en) * 2021-02-08 2022-11-22 重庆紫光华山智安科技有限公司 Data recovery method, device, equipment and storage medium
CN113867940B (en) * 2021-09-07 2024-01-12 苏州浪潮智能科技有限公司 Memory management method and related device
CN113885795B (en) * 2021-09-23 2024-01-19 惠州Tcl移动通信有限公司 Data storage method, device, terminal equipment and storage medium
CN115002133B (en) * 2022-05-31 2023-06-09 为准(北京)电子科技有限公司 Data transmission determining method and device based on multiple interfaces
CN115174484A (en) * 2022-06-16 2022-10-11 阿里巴巴(中国)有限公司 RDMA (remote direct memory Access) -based data transmission method, device, equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440202A (en) * 2013-08-07 2013-12-11 华为技术有限公司 RDMA-based (Remote Direct Memory Access-based) communication method, RDMA-based communication system and communication device
CN106980582A (en) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 Data processing method and device
CN107547623A (en) * 2017-06-28 2018-01-05 新华三云计算技术有限公司 Application data transmission method, device, application server and Application Launcher
CN110147345A (en) * 2019-05-22 2019-08-20 南京大学 A kind of key assignments storage system and its working method based on RDMA

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440202A (en) * 2013-08-07 2013-12-11 华为技术有限公司 RDMA-based (Remote Direct Memory Access-based) communication method, RDMA-based communication system and communication device
CN106980582A (en) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 Data processing method and device
CN107547623A (en) * 2017-06-28 2018-01-05 新华三云计算技术有限公司 Application data transmission method, device, application server and Application Launcher
CN110147345A (en) * 2019-05-22 2019-08-20 南京大学 A kind of key assignments storage system and its working method based on RDMA

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"基于RDMA的键值存储系统性能优化";王成;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190715;正文第三章 *
"数据中心RDMA网络资源复用与应用加速研究";邱昊楠;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190715;正文第四章 *

Also Published As

Publication number Publication date
CN111225042A (en) 2020-06-02

Similar Documents

Publication Publication Date Title
CN111225042B (en) Data transmission method and device, computer equipment and storage medium
CN108833607B (en) Physical address acquisition method, device and readable medium
WO2020001564A1 (en) Method, apparatus, and system for processing tasks
CN109246123B (en) Media stream acquisition method and device
CN108762881B (en) Interface drawing method and device, terminal and storage medium
CN111355774B (en) Service communication method, device and system based on P2P
CN110704324B (en) Application debugging method, device and storage medium
CN109697113B (en) Method, device and equipment for requesting retry and readable storage medium
CN111159604A (en) Picture resource loading method and device
CN108848492B (en) Method, device, terminal and storage medium for starting user identity identification card
CN112256425A (en) Load balancing method and system, computer cluster, information editing method and terminal
CN110636144A (en) Data downloading method and device
CN111866140A (en) Fusion management apparatus, management system, service calling method, and medium
CN108401194B (en) Time stamp determination method, apparatus and computer-readable storage medium
CN110086814B (en) Data acquisition method and device and storage medium
CN110381155B (en) Task management method, device, storage medium and terminal
CN111324293B (en) Storage system, data storage method, data reading method and device
CN111881423A (en) Method, device and system for limiting function use authorization
CN110597840A (en) Partner relationship establishing method, device, equipment and storage medium based on block chain
CN111914985A (en) Configuration method and device of deep learning network model and storage medium
CN114785766A (en) Control method of intelligent equipment, terminal and server
CN111694521B (en) Method, device and system for storing file
CN110971692B (en) Method and device for opening service and computer storage medium
CN113448692A (en) Distributed graph computing method, device, equipment and storage medium
CN111741040A (en) Connection establishing method, address obtaining method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant