A cloud data transmission method, device, computing device and storage medium

Through batch sending strategy and data retransmission mechanism during cloud data transmission, the problem of data loss in cloud data transmission is solved, and the reliability and processing rate of data transmission are improved.

CN115442453BActive Publication Date: 2025-09-02ZHEJIANG DAHUA TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211060555.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-31
Publication Date
2025-09-02
Estimated Expiration
2042-08-31

AI Technical Summary

Technical Problem

There are data pile loading and loss problems during the existing cloud data transmission process, and the integrity and reliability of data cannot be guaranteed.

Method used

By obtaining the data volume at the source and destination, determining the batch sending strategy, monitoring the data transmission and reception, adjusting the sending level and batch according to the difference value and the load capacity of the destination, and performing data retransmission to ensure data integrity.

Benefits of technology

Improves the reliability of data transmission, reduces data loss, and optimizes data processing rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115442453B_ABST
    Figure CN115442453B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a cloud data transmission method, apparatus, computing device and storage medium, which relates to the field of cloud native technology. The method includes: obtaining a first data volume of cloud data to be sent in a source end and a second data volume of load cloud data in a destination end; determining a batch sending strategy for the cloud data to be sent and notifying the source end of the batch sending strategy for the cloud data to be sent; monitoring the data sending status of the source end for the cloud data to be sent and the data receiving status of the destination end for the cloud data to be sent according to the batch sending strategy for the cloud data to be sent; determining whether to retransmit the data based on the data sending status and the data receiving status. Through the above cloud data transmission method, the pressure on the data source end can be effectively reduced, data can be sent at the optimal instruction granularity, the problem of data loss can be reduced, and the reliability of the data can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of cloud native technology, and in particular to a cloud data transmission method, apparatus, computing device, and storage medium. Background Art

[0002] "Cloud native" is a portmanteau term. The original meaning of "cloud native" is that applications are "born in the cloud and thrive in the cloud," which is the true meaning of the word "native." Applications or services are designed and built from the outset based on cloud platforms. "Cloud-based" means they are designed and built using the products and services provided by the cloud platform to enable data transmission. Cloud-native technology, with its inherent efficiency, high versatility, and high scalability, greatly facilitates cloud data transmission, making it a key choice for data transmission.

[0003] However, as the amount of data continues to increase, existing data will experience data compression and data loss during transmission, making it impossible to ensure data integrity. In summary, a method for reducing data transmission loss is proposed to improve the reliability of the data transmission process. Summary of the Invention

[0004] The present invention provides a method, apparatus, computing device, and storage medium for cloud data transmission, which can reduce data transmission loss and thus improve data transmission reliability.

[0005] In a first aspect, an embodiment of the present application provides a cloud data transmission method, the method comprising: obtaining a first data volume of cloud data to be sent from a source end and a second data volume of cloud data carried by a destination end;

[0006] Determining a batch sending strategy for the cloud data to be sent based on the first data volume and the second data volume, and notifying the source end of the batch sending strategy for the cloud data to be sent;

[0007] According to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the source end for the cloud data to be sent and the data receiving status of the cloud data to be sent by the destination end;

[0008] Determine whether to retransmit the data according to the data sending situation and the data receiving situation.

[0009] Cloud data refers to data that is transmitted in the cloud. When cloud data is being transmitted, a first amount of cloud data to be sent from the source and a second amount of cloud data (cloud data being processed) loaded at the destination are obtained to send the cloud data in batches. In this process, the optimal amount of data to be sent for each batch can be determined. By sending the cloud data in batches, data transmission loss can be reduced, and the data processing rates at the source and destination can be increased. At the same time, the successful reception of the cloud data sent by the source at the time of batch delivery is monitored, and any unsuccessful data is resent, further effectively resolving the issue of data loss and improving the reliability of data transmission.

[0010] In one possible design, determining a batch sending strategy for the to-be-sent cloud data based on the first data amount and the second data amount includes: determining a sending class to which the to-be-sent cloud data belongs based on the first data amount and the second data amount;

[0011] Based on the second data volume and the maximum load capacity of the destination end, the sending batch of the cloud data to be sent and the batch sending volume of the cloud data to be sent are determined in the batch sending strategy corresponding to the sending level.

[0012] The batched transmission strategy divides the first data volume to be transmitted into different batches and sends them to the destination in batches. The maximum load capacity of the destination refers to the destination's limited ability to receive and process data, so there is a maximum load capacity. By dividing the first data volume to be transmitted into different levels and sending the corresponding data volume in batches based on the level classification, this can, to a certain extent, avoid the accumulation of the first data volume to be forwarded and the data transmission congestion caused by direct transmission to the destination.

[0013] In one possible design, determining a sending level to which the to-be-sent cloud data belongs includes: there are N sending levels, each sending level being configured with at least one batch sending amount;

[0014] Determining, based on the first data amount and the second data amount, a sending level to which the to-be-sent cloud data belongs, includes:

[0015] determining, based on a difference between the first data amount and the second data amount, a sending level to which the to-be-sent cloud data belongs;

[0016] Determining, based on the second data volume and the maximum load capacity of the destination end, a sending batch and a sending volume of the cloud data to be sent in a batch sending strategy corresponding to the sending level, includes:

[0017] determining, based on a ratio of the second data volume to the maximum load capacity of the destination end, a batch sending volume that matches the ratio from at least one batch sending volume corresponding to the sending level;

[0018] Based on the batch sending amount that matches the ratio, a sending batch of the cloud data to be sent and a batch sending amount of the cloud data to be sent are determined.

[0019] Each sending level has a corresponding batch size. Different sending levels have different batch sizes, and there can be more than one batch size within a sending level. The above method uses a ratio of the maximum load capacity of the destination to determine the cloud data sending volume from the source to the destination. This design ensures coordinated and orderly cloud data transmission, completing data transmission at a faster speed.

[0020] In one possible design, determining the sending level to which the to-be-sent cloud data belongs includes: setting a minimum batch sending amount and a maximum batch sending amount in each sending level;

[0021] Determining a batch sending amount that matches the ratio includes:

[0022] If the ratio is greater than a preset threshold, determining the batch sending amount that matches the ratio as the lowest batch sending amount in the sending level;

[0023] If the ratio is not greater than the preset threshold, the batch sending amount that matches the ratio is determined to be the highest batch sending amount in the sending level.

[0024] A preset threshold is a parameter set in advance against which subsequent calculation results are compared to determine whether the result matches a specific option and complete the corresponding operation. The above method uses the destination load to compare it with the preset threshold to select different batch sizes. This design allows the destination load to be incorporated into the sending level to determine the most appropriate batch size.

[0025] In one possible design, according to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the cloud data to be sent by the source end and the data receiving status of the cloud data to be sent by the destination end, including: for each sending batch, monitoring the data sending amount of the sending batch by the source end and the data receiving amount of the sending batch by the destination end;

[0026] Determining whether to retransmit the data according to the data sending status and the data receiving status includes:

[0027] For each sending batch, if the data sending amount of the sending batch does not match the data receiving amount of the sending batch, it is determined that the sending batch is to be retransmitted.

[0028] By monitoring the number of data sent by the source and the number of data received by the destination in each batch, we can determine whether the data has been received by the destination. By monitoring the data transmission status of the source end and the data reception status of the destination end, we can retransmit data in the event of a data transmission failure, ensuring that data is not lost during transmission and improving data reliability.

[0029] In one possible design, according to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the cloud data to be sent by the source end and the data receiving status of the cloud data to be sent by the destination end includes: for any sending batch, monitoring the instruction sending status of each instruction in the sending batch by the source end and the instruction receiving status of each instruction in the sending batch by the destination end;

[0030] Determining whether to retransmit the data according to the data sending status and the data receiving status includes:

[0031] For any sending batch, determining whether there is a transmission lost instruction based on the instruction sending status and instruction receiving status of each instruction in the sending batch;

[0032] Retransmit data for instructions that have been lost.

[0033] Data loss during transmission is reduced by monitoring data. Monitoring involves issuing transmission instructions for any batch of data, which are then received by the destination. Data instructions contain a unique identifier, allowing for easy identification of lost instructions during transmission and retransmission of the data based on the lost instructions. Instruction-based lookup speeds up data retransmission after loss.

[0034] In one possible design, the instruction for data retransmission due to transmission loss includes: storing any data lost in transmission for retransmission;

[0035] After the sending batch transmission is completed, the data in the retransmission storage is classified and summarized according to the task identifier and the source end is notified to retransmit the classified and summarized data.

[0036] Data retransmission involves sending failed data to the source, retransmitting the data to the destination, and sending a retransmission instruction for the failed data to enable the data source to retrieve and retransmit the data. Data lost during data transmission is categorized and aggregated based on its identifier. After the batch is completed, the failed data in the batch is aggregated and an instruction is sent to the source to retransmit the data, ensuring that no more data is lost.

[0037] In a second aspect, an embodiment of the present application provides a cloud data transmission device, comprising: an acquisition unit, configured to acquire a first data volume of cloud data to be sent from a source end and a second data volume of loaded cloud data from a destination end;

[0038] a determining unit, configured to determine, based on the first data volume and the second data volume, a batch sending strategy for the cloud data to be sent, and notify the source end of the batch sending strategy for the cloud data to be sent;

[0039] a monitoring unit, configured to monitor, according to a batch sending strategy for the cloud data to be sent, a data sending status of the source end for the cloud data to be sent and a data receiving status of the cloud data to be sent by the destination end;

[0040] The determining unit is further configured to determine whether to retransmit the data based on the data sending status and the data receiving status.

[0041] In one possible design, the determination unit is specifically used to determine the sending level of the cloud data to be sent based on the first data volume and the second data volume; based on the second data volume and the maximum load capacity of the destination, determine the sending batches of the cloud data to be sent and the batch sending volume of the cloud data to be sent in the batch sending strategy corresponding to the sending level.

[0042] In one possible design, there are N sending levels, and each sending level is configured with at least one batch sending amount;

[0043] The determination unit is specifically used to determine the sending level of the cloud data to be sent based on the difference between the first data volume and the second data volume; based on the ratio of the second data volume to the maximum load capacity of the destination end, determine the batch sending volume that matches the ratio from at least one batch sending volume corresponding to the sending level; based on the batch sending volume that matches the ratio, determine the sending batch of the cloud data to be sent and the batch sending volume of the cloud data to be sent.

[0044] In one possible design, a minimum batch sending amount and a maximum batch sending amount are set in each sending level;

[0045] The determining unit is specifically configured to determine, if the ratio is greater than a preset threshold, that the batch sending amount matching the ratio is the lowest batch sending amount in the sending level; and if the ratio is not greater than the preset threshold, determine, if the batch sending amount matching the ratio is the highest batch sending amount in the sending level.

[0046] In one possible design, the monitoring unit is specifically configured to monitor, for each sending batch, an amount of data sent by the source end in the sending batch and an amount of data received by the destination end in the sending batch;

[0047] The determining unit is specifically configured to, for each sending batch, determine that the sending batch is to be retransmitted if the data sending amount of the sending batch does not match the data receiving amount of the sending batch.

[0048] In one possible design, the system further includes: a retransmission unit;

[0049] The monitoring unit is specifically configured to monitor, for any sending batch, the instruction sending status of the source end for each instruction in the sending batch and the instruction receiving status of the destination end for each instruction in the sending batch;

[0050] The determining unit is specifically configured to determine, for any sending batch, whether there is any instruction with transmission loss according to the instruction sending status and instruction receiving status of each instruction in the sending batch;

[0051] The retransmission unit is used to retransmit data of instructions whose transmission is lost.

[0052] In one possible design, the device further includes: a storage unit and a notification unit;

[0053] The storage unit is used to retransmit and store any data lost in transmission;

[0054] The notification unit is configured to classify and aggregate the data in the retransmission storage according to the task identifier after the sending batch transmission is completed, and notify the source end to retransmit the classified and aggregated data.

[0055] The beneficial effects of the data synchronization device provided by the second aspect mentioned above can be referred to the beneficial effects brought about by the various possible design implementation methods of the first aspect, and will not be repeated here.

[0056] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a memory and a processor; the memory is used to store program instructions; the processor is used to call the program instructions in the memory so that the electronic device executes any one of the above-mentioned possible design methods.

[0057] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium storing a computer program executable by a computing device, which executes any of the above-mentioned possible design methods when the program runs on the computing device.

[0058] In addition, the technical effects brought about by any implementation method in the third to fourth aspects can refer to the technical effects brought about by different implementation methods in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0060] Figure 1 A system architecture diagram provided for an embodiment of the present application;

[0061] Figure 2 A flow chart of a cloud data transmission method provided in an embodiment of the present application;

[0062] Figure 3 A flow chart of a batch sending strategy for cloud data to be sent provided in an embodiment of the present application;

[0063] Figure 4 A diagram of a cloud data transmission device is also provided for the embodiment of the present application;

[0064] Figure 5 A schematic structural diagram of a computing device provided in an embodiment of the application. DETAILED DESCRIPTION

[0065] To make the objectives, technical solutions, and advantages of this application more clear, this application will be further described in detail below with reference to the accompanying drawings. It is obvious that the embodiments described are only some of the embodiments of this application, not all of them. All other embodiments obtained by ordinary technicians in this field based on the embodiments of this application without making any creative efforts shall fall within the scope of protection of this invention.

[0066] The solution of the present application is an implementation method for data transmission based on a cloud platform, which can be specifically applied to data transmission between cloud platforms, or data transmission between a cloud platform and other terminal devices. The execution subject of the cloud data transmission method provided in the embodiment of the present application can be a cloud platform or a transit server between the two parties of cloud data transmission. Below, a system architecture diagram will be provided as an example.

[0067] Reference Figure 1 An embodiment of the present application provides a system architecture diagram, which includes at least a cloud platform 101, a transit server 102, and a client 103.

[0068] The cloud platform 101 is a hardware-based service that provides computing, networking, and storage capabilities. The cloud platform 101 can be a platform that hosts source terminals.

[0069] The transfer server 102 mainly provides services for the cloud platform 101 and the client 103 when performing data transmission.

[0070] By sensing the operating status of the source and destination, the transit server 102 controls the source to distribute data in batches at a reasonable granularity. Furthermore, by monitoring data transmission at the source and data reception at the destination, it determines whether cloud data is lost during data transmission and retransmits any lost data. Transit server 102 can implement a series of processes by configuring various functional modules. For example, a sensing module can sense the operating status of the source and destination, while a monitoring module can monitor data transmission at the source and data reception at the destination.

[0071] The client 103 is used to process the received cloud data and is the destination end of the cloud data transmission from the source end. The client 103 can also be replaced by another cloud platform, that is, cloud data transmission is performed between the cloud platform with the source end and the cloud platform with the destination end.

[0072] The cloud platform 101 and the transfer server 102 and the client 103 can be connected via wired or wireless communication, which is not limited in this application. Of course, the functions of the transfer server 102 can also be set in the cloud platform 101.

[0073] In the embodiment of the present application, by setting up dynamic perception of the source and destination ends and realizing the monitoring function, data transmission is ensured in batch granularity, the data processing rate is improved, while the loss of data transmission is reduced and the reliability of data transmission is improved.

[0074] Please refer to Figure 2 , Figure 2 A flowchart of a data transmission method according to an embodiment of the present application includes:

[0075] S201. Obtain a first amount of cloud data to be sent from the source and a second amount of cloud data to be loaded from the destination;

[0076] The source, located on a cloud platform, stores a large amount of cloud data and provides the required data to the destination. The "outgoing cloud data" refers to the cloud data that the source intends to send to the destination; the "loaded cloud data" refers to the cloud data currently being processed by the destination. For example, a perception module in a relay server can obtain a first amount of the outgoing cloud data from the source and a second amount of the cloud data currently being processed by the destination.

[0077] The specific acquisition method can be that the transit server sends data volume acquisition requests to the source and destination ends respectively, or the transit server accesses the sending storage area of ​​the source end or the processing storage area of ​​the destination end. The sending storage area is used by the source end to store cloud data to be sent, and the processing storage area is used by the destination end to store cloud data being processed.

[0078] Alternatively, the source end may serve as an executor and send a data volume acquisition request to the destination end to acquire the second data volume of the load cloud data, or the source end may acquire the second data volume of the load cloud data by accessing a processing storage area of ​​the destination end.

[0079] S202. Based on the first data volume and the second data volume, determine a batch sending strategy for the cloud data to be sent and notify the source end of the batch sending strategy for the cloud data to be sent;

[0080] The cloud platform's source client stores a large amount of data, necessitating a batch transmission strategy for data transmission. This batch transmission strategy involves sending the cloud data in batches. Specifically, the batch transmission method can determine the total number of batches and the transmission size of each batch based on the first and second data volumes. The transmission sizes of each batch can be the same or different.

[0081] S203. Monitoring the data transmission status of the source end for the cloud data to be sent and the data reception status of the destination end for the cloud data to be sent according to the batch sending strategy of the cloud data to be sent;

[0082] The purpose of monitoring is to understand in real time the status of each batch of data sent from the source to the destination, as well as the data received by the destination, providing real-time information on the status of data transmission. For example, if 300 cloud data items are sent in three batches of 100 items each, and these 100 cloud data items are sent from the source to the destination, the monitoring function will check whether the batch of cloud data sent by the source is 100 items and whether the cloud data received by the destination is 100 items. In other words, it will monitor the number of cloud data items sent by the source and the number of cloud data items received by the destination.

[0083] S204: Determine whether to retransmit the data based on the data sending status and the data receiving status.

[0084] Retransmission refers to resending a message. This can include resending all data, all lost data, or resending a batch of data with some data loss. Retransmission improves data transmission reliability and reduces data loss.

[0085] The following describes the batch sending strategy in detail. The batch sending strategy can be determined based on specific scenarios and business needs. For example, if the destination's cloud data load is large, the batch sending size can be reduced or the sending of this batch of cloud data can be delayed. Figure 3 A flow chart of a batch sending strategy for cloud data to be sent is provided, including:

[0086] S301. Based on the first data volume and the second data volume, determining the sending level of the cloud data to be sent;

[0087] The delivery level is set based on user needs, and each delivery level can be expressed as a range. The delivery level is determined based on the cloud data to be sent by the source and the cloud data being processed by the destination. Alternatively, the delivery level can be set based solely on the cloud data to be sent.

[0088] Each sending class has its own batch sending strategy. One possible approach is to have N sending classes, each with at least one batch sending volume. The number of sending classes is not fixed and can be customized based on needs. N can be any natural number. The batch sending volume refers to the specific amount of data to be sent in each batch, and a single sending class can have multiple values.

[0089] One possible implementation method is to match the sending level of the cloud data to be sent based on the difference between the first data amount and the second data amount.

[0090] Here, we use three sending levels as an example: Level 1 is less than 100 records; Level 2 is 100-200 records; and Level 3 is greater than 200 records. In this case, the source has 300 records of cloud data to be sent, and the destination has 100 records of cloud data being processed. The difference is 200, and the corresponding sending level is determined to be Level 2.

[0091] S302. Based on the second data volume and the maximum load capacity of the destination end, determine the sending batches of the cloud data to be sent and the batch sending volume of the cloud data to be sent in the batch sending strategy corresponding to the sending level.

[0092] The destination's maximum load capacity refers to the maximum amount of data it can carry. Based on the destination's current load (i.e., the second amount of cloud data being carried) and its maximum load capacity, the destination's remaining load capacity can be determined, allowing the appropriate batch size and corresponding transmission volume to be determined.

[0093] For example, the source end has 300 pieces of cloud data to be sent, the destination end has 100 pieces of cloud data to be loaded, and the destination end has a maximum load capacity of 180. Based on the destination end's load capacity, the sending batches of 300 pieces of data are determined to be 6 times, and the batch sending amount is determined to be 50 pieces of data.

[0094] One possible implementation method is to determine, based on the ratio of the second data volume to the maximum load capacity of the destination end, a batch sending volume that matches the ratio from at least one batch sending volume corresponding to the sending level; and based on the batch sending volume that matches the ratio, determine the sending batch of the cloud data to be sent and the batch sending volume of the cloud data to be sent.

[0095] For example, if there are M batch sending amounts in a sending level, each batch sending amount corresponds to a different ratio interval, such as the batch sending amount corresponding to less than 20% is P1, the batch sending amount corresponding to 20%-50% is P2, the batch sending amount corresponding to 50%-80% is P3, and the batch sending amount corresponding to greater than 80% is P4.

[0096] Another method may be to take a ratio threshold, such as 70%. When the ratio is less than 70%, the set batch sending amount is, for example, 50; when the ratio is greater than 70%, the set data sending amount is, for example, 30.

[0097] Regarding batch sending, the present application provides a specific implementation method, including:

[0098] S401. Each sending level is set with a minimum batch sending amount and a maximum batch sending amount;

[0099] Each transmission level has a corresponding batch transmission volume. The embodiment of the present application adopts the highest batch transmission volume and the lowest batch transmission volume to perform data transmission. The batch transmission volume is determined based on the maximum load capacity ratio of the destination end.

[0100] S402. If the ratio is greater than a preset threshold, determining the batch transmission volume that matches the ratio as the lowest batch transmission volume in the transmission level;

[0101] If the ratio is not greater than the preset threshold, the batch sending amount that matches the ratio is determined to be the highest batch sending amount in the sending level.

[0102] The preset threshold is a critical value set in advance. The preset threshold is determined based on the ratio of the maximum load capacity of the destination. The calculated ratio is compared with the preset threshold. If the ratio is greater than the preset threshold, the corresponding level of sending volume is the lowest batch, otherwise it is the highest batch.

[0103] For example, the preset threshold is set to 0.7, there are 300 data to be forwarded at the source end, 100 data are being processed at the destination end, and the difference is 200. The first level is set to less than 200, and the corresponding sending volume is 30; the second level is set to 100-200, and the corresponding maximum sending volume is 50, and the minimum sending volume is 30; the third level is set to greater than 200, and the corresponding maximum sending volume is 70, and the minimum sending volume is 50; when the ratio is greater than 0.7, the highest batch sending volume of 50 is selected at the second level, and when the ratio is less than 0.7, the lowest batch sending volume of 30 is selected at the second level.

[0104] To ensure data is not lost, the embodiment of the present application determines a batch transmission strategy for the cloud data to be sent, monitors the data transmission status of the source end for the cloud data to be sent and the data reception status of the destination end for the cloud data to be sent, and thus determines whether to retransmit. The following provides a processing mechanism for whether to retransmit, including:

[0105] S501. For each sending batch, monitoring the amount of data sent by the source end in the sending batch and the amount of data received by the destination end in the sending batch;

[0106] Monitoring literally means checking, understanding, and observing in real time. For each batch sent, the monitoring module will monitor the data transmission and reception status from the source to the data end. For example, if the source sends 10 data items to the destination, the monitoring module will detect that the source sends 10 data items, while the destination may receive 10 or 9 data items. This is uncertain, but it will provide a specific reception situation.

[0107] S502. For each sending batch, if the data sending amount of the sending batch does not match the data receiving amount of the sending batch, determine that the sending batch is to be retransmitted.

[0108] If the monitoring module detects that the sent and received data are different, the lost data will be retransmitted. Continuing with the above example, the monitoring module will detect that the source end sent 10 data items, but the destination end received 9 data items instead of 10, and will retransmit the lost data item.

[0109] The embodiment of the present application further provides another processing mechanism for determining whether to perform retransmission, including:

[0110] S601. For any sending batch, monitoring the source end for the sending batch of each instruction and the destination end for the sending batch of each instruction receiving instruction;

[0111] The cloud data to be sent includes multiple instructions. When monitoring the data transmission from the source to the destination, you can clearly understand the transmission status of each instruction. During the transmission process, you can achieve a one-to-one correspondence between the instructions sent by the source and the instructions received by the destination, thus realizing the monitoring function.

[0112] S602. For any sending batch, determine whether there is any instruction with transmission loss according to the instruction sending status and instruction receiving status of each instruction in the sending batch.

[0113] For example, when the source sends five instructions to the destination, each instruction is different: the first instruction is A, the second instruction is B, the third instruction is C, the fourth instruction is D, and the fifth instruction is E. If the destination only receives three instructions during the transmission process, but does not receive instructions D and E, it will know that data was lost during the data transmission and retransmit instructions D and E.

[0114] Retransmitting data for instructions that have lost transmission, including: retransmitting and storing any data that has lost transmission;

[0115] After the sending batch transmission is completed, the data in the retransmission storage is classified and summarized according to the task identifier and the source end is notified to retransmit the classified and summarized data.

[0116] In the above example, if instructions D and E are missing, they will be stored in the retransmission storage, which is a specific storage area. After all instructions corresponding to the send batch are transmitted, instructions with the same task ID in the retransmission storage are grouped together. This means that the source end will retransmit them based on the same task ID.

[0117] Implementation, based on the same technical concept, such as Figure 4 As shown, an embodiment of the present application provides a device diagram for cloud data transmission.

[0118] An acquiring unit 401 is configured to acquire a first amount of cloud data to be sent from a source end and a second amount of cloud data to be loaded from a destination end;

[0119] A determining unit 402 is configured to determine a batch sending strategy for the to-be-sent cloud data based on the first data volume and the second data volume, and notify the source end of the batch sending strategy for the to-be-sent cloud data;

[0120] A monitoring unit 403 is configured to monitor, according to the batch sending strategy of the cloud data to be sent, the data sending status of the source end for the cloud data to be sent and the data receiving status of the cloud data to be sent by the destination end;

[0121] The determining unit 402 is further configured to determine whether to retransmit the data according to the data sending status and the data receiving status.

[0122] The implementation unit 402 is further specifically configured to determine the sending level to which the cloud data to be sent belongs based on the first data volume and the second data volume; and to determine the sending batches of the cloud data to be sent and the batch sending volume of the cloud data to be sent in the batch sending strategy corresponding to the sending level based on the second data volume and the maximum load capacity of the destination.

[0123] For implementation, there are N sending levels, and each sending level is set with at least one batch sending amount;

[0124] The determination unit 402 is also used to determine the sending level to which the cloud data to be sent belongs based on the difference between the first data volume and the second data volume; based on the second data volume and the maximum load capacity of the destination end, determine the sending batch and the batch sending volume of the cloud data to be sent in the batch sending strategy corresponding to the sending level, including: based on the ratio of the second data volume to the maximum load capacity of the destination end, determine the batch sending volume that matches the ratio from at least one batch sending volume corresponding to the sending level; based on the batch sending volume that matches the ratio, determine the sending batch of the cloud data to be sent and the batch sending volume of the cloud data to be sent.

[0125] For implementation, each sending level has a minimum and maximum batch sending amount.

[0126] The determination unit 402 is further specifically used to determine the batch sending amount that matches the ratio, including: if the ratio is greater than a preset threshold, determining that the batch sending amount that matches the ratio is the lowest batch sending amount in the sending level; if the ratio is not greater than the preset threshold, determining that the batch sending amount that matches the ratio is the highest batch sending amount in the sending level.

[0127] Implementationally, the monitoring unit 403 is further configured to monitor, for each sending batch, the amount of data sent by the source end in the sending batch and the amount of data received by the destination end in the sending batch;

[0128] The determination unit 402 is further specifically used to determine whether to retransmit data based on the data sending situation and the data receiving situation, including: for each sending batch, if the data sending amount of the sending batch does not match the data receiving amount of the sending batch, then determining that the sending batch is to retransmit data.

[0129] For implementation, the monitoring unit 403 monitors, for any sending batch, the instruction sending status of the source end for each instruction in the sending batch and the instruction receiving status of the destination end for each instruction in the sending batch;

[0130] The determining unit 402 is further configured to determine, for any sending batch, whether there is any instruction whose transmission is lost based on the instruction sending status and the instruction receiving status of each instruction in the sending batch;

[0131] The retransmission unit 404 is specifically configured to retransmit data of instructions whose transmission is lost.

[0132] Implementationally, the storage unit 405 is specifically configured to retransmit and store any data lost in transmission;

[0133] The notification unit 406 is specifically configured to classify and aggregate the data in the retransmission storage according to the task identifier after the sending batch transmission is completed, and notify the source end to retransmit the classified and aggregated data.

[0134] Based on the same technical concept, an embodiment of the present invention further provides a computing device, such as Figure 5 As shown, it includes at least one processor 501 and a memory 502 connected to the at least one processor. The embodiment of the present invention does not limit the specific connection medium between the processor 501 and the memory 502. Figure 5 For example, the processor 501 and the memory 502 are connected via a bus. The bus can be divided into an address bus, a data bus, a control bus, and the like.

[0135] In an embodiment of the present invention, the memory 502 stores instructions that can be executed by at least one processor 501. The at least one processor 501 can execute the steps included in the aforementioned browser-based transmission modeling method by executing the instructions stored in the memory 502.

[0136] The processor 501 is the control center of the computing device. It can connect the various parts of the computing device using various interfaces and lines, and realize data processing by running or executing instructions stored in the memory 502 and calling data stored in the memory 502. Optionally, the processor 501 may include one or more processing units. The processor 501 may integrate an application processor and a modem processor. The application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes the issuance of instructions. It is understandable that the above-mentioned modem processor may not be integrated into the processor 501. In some embodiments, the processor 501 and the memory 502 may be implemented on the same chip. In some embodiments, they may also be implemented on separate chips.

[0137] The processor 501 can be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application-specific integrated circuit (ASIC), a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. A general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the browser-based transmission modeling embodiment can be directly implemented as a hardware processor, or can be implemented using a combination of hardware and software modules in the processor.

[0138] The memory 502 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 502 may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (RAM), a static random access memory (SRAM), a programmable read-only memory (PROM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic memory, a magnetic disk, an optical disk, and the like. The memory 502 is any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 502 in the embodiment of the present invention can also be a circuit or any other device that can implement a storage function, for storing program instructions and / or data.

[0139] Based on the same technical concept, an embodiment of the present invention also provides a computer-readable storage medium, which stores a computer program that can be executed by a computing device. When the program runs on the computing device, the computing device executes the steps of the above-mentioned cloud-based data transmission method.

[0140] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

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

[0142] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0143] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0144] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.

Claims

1. A cloud data transmission method, characterized in that: The method comprises: Obtaining a first data volume of cloud data to be sent from the source end and a second data volume of loaded cloud data from the destination end; Determining a batch sending strategy for the to-be-sent cloud data based on the first data volume and the second data volume, and notifying the source end of the batch sending strategy for the to-be-sent cloud data; According to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the source end for the cloud data to be sent and the data receiving status of the cloud data to be sent by the destination end; Determining whether to retransmit the data according to the data sending status and the data receiving status; Determining a batch sending strategy for the to-be-sent cloud data based on the first data volume and the second data volume includes: Determining a sending level to which the to-be-sent cloud data belongs based on the first data amount and the second data amount; Based on the second data volume and the maximum load capacity of the destination end, the sending batches of the cloud data to be sent and the batch sending volume of the cloud data to be sent are determined in the batch sending strategy corresponding to the sending level.

2. The method according to claim 1, wherein Determining the sending level to which the to-be-sent cloud data belongs includes: There are N sending levels, and each sending level is set with at least one batch sending amount; Determining, based on the first data amount and the second data amount, a sending level to which the to-be-sent cloud data belongs, includes: determining, based on a difference between the first data amount and the second data amount, a sending level to which the to-be-sent cloud data belongs; Determining, based on the second data volume and the maximum load capacity of the destination end, a sending batch and a sending volume of the to-be-sent cloud data in a batch sending strategy corresponding to the sending level, includes: determining, based on a ratio of the second data volume to the maximum load capacity of the destination end, a batch sending volume that matches the ratio from at least one batch sending volume corresponding to the sending level; Based on the batch sending amount that matches the ratio, a sending batch of the cloud data to be sent and a batch sending amount of the cloud data to be sent are determined.

3. The method according to claim 2, wherein Determining the sending level to which the to-be-sent cloud data belongs includes: Each sending level has a minimum and maximum batch sending amount. Determining a batch sending amount that matches the ratio includes: If the ratio is greater than a preset threshold, determining the batch sending amount that matches the ratio as the lowest batch sending amount in the sending level; If the ratio is not greater than the preset threshold, the batch sending amount that matches the ratio is determined to be the highest batch sending amount in the sending level.

4. The method according to any one of claims 1 to 3, characterized in that: According to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the cloud data to be sent by the source end and the data receiving status of the cloud data to be sent by the destination end, including: For each sending batch, monitoring the amount of data sent by the source end in the sending batch and the amount of data received by the destination end in the sending batch; Determining whether to retransmit the data according to the data sending status and the data receiving status includes: For each sending batch, if the data sending amount of the sending batch does not match the data receiving amount of the sending batch, it is determined that the sending batch is to be retransmitted.

5. The method according to any one of claims 1 to 3, characterized in that: According to the batch sending strategy of the cloud data to be sent, monitoring the data sending status of the cloud data to be sent by the source end and the data receiving status of the cloud data to be sent by the destination end, including: For any sending batch, monitoring the source end's instruction sending status for each instruction in the sending batch and the destination end's instruction receiving status for each instruction in the sending batch; Determining whether to retransmit the data according to the data sending status and the data receiving status includes: For any sending batch, determining whether there is a transmission lost instruction based on the instruction sending status and instruction receiving status of each instruction in the sending batch; Retransmit data for instructions that have been lost.

6. The method according to claim 5, wherein Retransmit data for lost commands, including: Retransmit and store any data lost in transmission; After the sending batch transmission is completed, the data in the retransmission storage is classified and summarized according to the task identifier and the source end is notified to retransmit the classified and summarized data.

7. A cloud data transmission device, characterized in that: include: an acquiring unit, configured to acquire a first amount of cloud data to be sent from a source end and a second amount of cloud data loaded from a destination end; a determining unit, configured to determine, based on the first data volume and the second data volume, a batch sending strategy for the cloud data to be sent, and notify the source end of the batch sending strategy for the cloud data to be sent; a monitoring unit, configured to monitor, according to a batch sending strategy for the cloud data to be sent, a data sending status of the source end for the cloud data to be sent and a data receiving status of the cloud data to be sent by the destination end; The determining unit is further configured to determine whether to retransmit the data based on the data transmission status and the data reception status; and determine a transmission level to which the to-be-sent cloud data belongs based on the first data volume and the second data volume; Based on the second data volume and the maximum load capacity of the destination end, the sending batches of the cloud data to be sent and the batch sending volume of the cloud data to be sent are determined in the batch sending strategy corresponding to the sending level.

8. A computing device, characterized in that The method comprises at least one processor and at least one memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that It stores a computer program executable by a computing device, and when the computer program is run on the computing device, the computing device is caused to execute the steps of any one of the methods claimed in claims 1 to 6.

Citation Information

Patent Citations

  • A method and system for traffic control

    CN1996942A