IP Library Granted Patent US 10,817,460
Granted Patent B2
US 10,817,460 · App. 16/854,740 · Granted Oct 27, 2020

RDMA data sending and receiving methods, electronic device, and readable storage medium

Inventors: Yinchao Zou (Hangzhou, CN); Changqing Li (Hangzhou, CN); Changhua He (Hangzhou, CN); Peng Wu (Hangzhou, CN); Jincan Kong (Hangzhou, CN)
Assignee: ADVANCED NEW TECHNOLOGIES CO., LTD.
G06F15/17331G06F3/0655G06F11/3041G06F12/0868G06F13/28H04L29/08117H04W8/205H04W8/22H03M7/30
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,817,460
App. No.
16/854,740
Granted
Oct 27, 2020
Kind
B2
Abstract

A Remote Direct Memory Access (RDMA) data sending method is disclosed. The method is applicable to a sending end, with a data-transmission RDMA device disposed thereon. The method includes: the data-transmission RDMA device acquiring raw data; the data-transmission RDMA device compressing the raw data by using a preset compression method to obtain compressed data; and the data-transmission RDMA device encapsulating the compressed data into a data packet, and transmitting the data packet to a receiving end. The data packet may include a method tag corresponding to the preset compression method. In this method, the compression and transmission of the raw data are conducted by the data-transmission RDMA device on the hardware level.

Claims (66)

1. A Remote Direct Memory Access (RDMA) data transmission method, comprising:

acquiring, by a data-transmitting RDMA device, raw data;

compressing, by the data-transmitting RDMA device, the raw data using a preset compression method to obtain compressed data;

encapsulating, by the data-transmitting RDMA device, the compressed data into a data packet, wherein the data packet includes a method tag corresponding to the preset compression method; and

transmitting, by the data-transmitting RDMA device, the data packet to a receiving device.

2. The method of claim 1 , wherein the compressing, by the data-transmitting RDMA device, the raw data using a preset compression method to obtain compressed data comprises:

receiving, by the data-transmitting RDMA device, a data compression instruction;

obtaining, by the data-transmitting RDMA device and in response to the data compression instruction, the preset compression method; and

compressing, by the data-transmitting RDMA device, the raw data using the preset compression method to obtain the compressed data.

3. The method of claim 1 , further comprising:

encapsulating the method tag into a transport header of the data packet; and

encapsulating the compressed data into a user data field of the data packet.

4. The method of claim 3 , further comprising:

encapsulating a compression tag into the transport header of the data packet, the compression tag indicating data of the data packet has been compressed.

5. The method of claim 1 , further comprising:

receiving, by a data-receiving RDMA device, the data packet;

determining, by the data-receiving RDMA device and according to the method tag in the data packet, the preset compression method;

determining, by the data-receiving RDMA device and according to the preset compression method, a decompression algorithm; and

decompressing, by the data-receiving RDMA device, the compressed data using the decompression algorithm to obtain the raw data.

6. The method of claim 5 , wherein the determining, by the data-receiving RDMA device and according to the method tag in the data packet, the preset compression method comprises:

determining, by the data-receiving RDMA device and according to a compression tag in a transport header of the data packet and the method tag, the preset compression method, wherein the compression tag indicates data of the data packet has been compressed.

7. The method of claim 5 , further comprising: after decompressing the compressed data using the decompression algorithm to obtain the raw data,

storing, by the data-receiving RDMA device, the raw data in a storage device.

8. A Remote Direct Memory Access (RDMA) data transmission system, comprising a data-transmitting RDMA device having a memory configured with instructions executable to:

acquire raw data;

compress the raw data using a preset compression method to obtain compressed data;

encapsulate the compressed data into a data packet, wherein the data packet includes a method tag corresponding to the preset compression method; and

transmit the data packet to a data-receiving RDMA device.

9. The system of claim 8 , wherein the memory of the data-transmitting RDMA device is further configured with instructions executable to:

acquire a data compression instruction sent from an RDMA application interface; and

acquire, according to the data compression instruction, the preset compression method.

10. The system of claim 8 , wherein the memory of the data-transmitting RDMA device is further configured with instructions executable to:

encapsulate the method tag into a transport header of the data packet; and

encapsulate the compressed data into a user data field of the data packet.

11. The system of claim 10 , wherein the memory of the data-transmitting RDMA device is further configured with instructions executable to:

encapsulate a compression tag into the transport header of the data packet, the compression tag indicating data of the data packet has been compressed.

12. The system of claim 8 , wherein the system further comprises a data-receiving RDMA device having a memory configured with instructions executable to:

receive the data packet;

determine, according to the method tag in the data packet, the preset compression method;

determine, according to the preset compression method, a decompression algorithm; and

decompress the compressed data using the decompression algorithm to obtain the raw data.

13. The system of claim 12 , wherein to determine the preset compression method, the memory of the data-receiving RDMA device is further configured with instructions executable to:

determine, according to a compression tag in a transport header of the data packet and the method tag, the preset compression method, wherein the compression tag indicates data of the data packet has been compressed.

14. The system of claim 12 , wherein the memory of the data-receiving RDMA device is further configured with instructions executable to:

after decompressing the compressed data using the decompression algorithm to obtain the raw data, store the raw data in a storage device.

15. A non-transitory computer-readable storage medium having instructions stored thereon executable by a processor to cause the processor to perform operations, comprising:

acquiring, by a data-transmitting RDMA device, raw data;

compressing, by the data-transmitting RDMA device, the raw data using a preset compression method to obtain compressed data;

encapsulating, by the data-transmitting RDMA device, the compressed data into a data packet, wherein the data packet includes a method tag corresponding to the preset compression method; and

transmitting, by the data-transmitting RDMA device, the data packet to a receiving device.

16. The storage medium of claim 15 , wherein the compressing, by the data-transmitting RDMA device, the raw data using a preset compression method to obtain compressed data comprises:

receiving, by the data-transmitting RDMA device, a data compression instruction;

obtaining, by the data-transmitting RDMA device and in response to the data compression instruction, the preset compression method; and

compressing, by the data-transmitting RDMA device, the raw data using the preset compression method to obtain the compressed data.

17. The storage medium of claim 15 , wherein the operations further comprise:

encapsulating the method tag into a transport header of the data packet; and

encapsulating the compressed data into a user data field of the data packet.

18. The storage medium of claim 17 , wherein the operations further comprise:

encapsulating a compression tag into the transport header of the data packet, the compression tag indicating data of the data packet has been compressed.

19. The storage medium of claim 15 , wherein the operations further comprise:

receiving, by a data-receiving RDMA device, the data packet;

determining, by the data-receiving RDMA device and according to the method tag in the data packet, the preset compression method;

determining, by the data-receiving RDMA device and according to the preset compression method, a decompression algorithm; and

decompressing, by the data-receiving RDMA device, the compressed data using the decompression algorithm to obtain the raw data.

20. The storage medium of claim 19 , wherein the determining, by the data-receiving RDMA device and according to the method tag in the data packet, the preset compression method comprises:

determining, by the data-receiving RDMA device and according to a compression tag in a transport header of the data packet and the method tag, the preset compression method, wherein the compression tag indicates data of the data packet has been compressed.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053796/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053702/0392 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2020
From: ZOU, YINCHAO; LI, CHANGQING; HE, CHANGHUA; WU, PENG; KONG, JINCAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052945/0676 →