Data transmission method and apparatus, electronic device, and computer-readable storage medium
By splitting job data into multiple sub-job data packets through the user gateway and sending them to the computing power routing node for processing, the problem of high network bandwidth consumption is solved, and efficient data transmission and resource saving are achieved.
Patent Information
- Application Number
- CN202211166028.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-23
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2042-09-23
AI Technical Summary
In existing technologies, transmitting job data to multiple computing power routing nodes via point-to-point methods can easily consume network bandwidth, resulting in low data transmission efficiency.
The user gateway splits the job data into multiple sub-job data packets and sends them to the corresponding computing power routing nodes for processing. The extended header fields carry identity information, quantity information, sequence number information, and processing method information to achieve efficient transmission and processing of data packets.
It improves data transmission efficiency, saves network bandwidth and user terminal computing resources, and reduces network resource occupancy.
Smart Images

Figure CN115514771B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of network technology, and in particular to a data transmission method, apparatus, electronic device, and computer-readable storage medium. Background Technology
[0002] With the continuous development of network technology, computing power networks can integrate computing, storage, and other resources from different owners, and provide corresponding resource services and network connections according to the different needs of user businesses. Therefore, users often need to transmit job data to multiple corresponding computing power routing nodes in the computing power network, and these multiple computing power routing nodes will process the job data separately.
[0003] In related technologies, job data can be transmitted in a point-to-point manner, with a single user on a wide area network sending job data to multiple computing power routing nodes. If the number of computing power routing nodes is large, sending data may consume a significant amount of network bandwidth, severely impacting the user's data transmission efficiency.
[0004] Therefore, there is an urgent need for a method that can efficiently transmit job data, thereby saving network bandwidth and effectively reducing the network resource occupancy rate of users.
[0005] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0006] This disclosure provides a data transmission method, apparatus, electronic device, and computer-readable storage medium, which at least to some extent overcomes the problem in related technologies that sending data may consume a large amount of network bandwidth and seriously affect the user's data transmission efficiency.
[0007] Other features and advantages of this disclosure will become apparent from the following detailed description, or may be learned in part from practice of this disclosure.
[0008] According to one aspect of the present disclosure, a data transmission method is provided, which is executed by a user gateway, including: acquiring job data; splitting the job data to obtain multiple sub-job data; encapsulating the multiple sub-job data to obtain multiple sub-job data packets; determining computing power routing nodes for processing each sub-job data packet, wherein each sub-job data packet corresponds to one computing power routing node; sending each sub-job data packet to the corresponding computing power routing node; and receiving response data packets returned by each computing power routing node.
[0009] In some embodiments of this disclosure, the sub-job data packets are all IPv4 data packets. The extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information. The processing method information is used to instruct the first computing power routing node to process the first sub-job data packet. The first sub-job data packet is any one sub-job data packet, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet.
[0010] In some embodiments of this disclosure, the extended header field of the first sub-job data packet further includes: distribution type information, distribution tag length information, and job verification information; wherein, the distribution type information is used to indicate that the extended header field is used to distribute the first sub-job data packet, the distribution tag length information indicates the length of the extended header field, and the job verification information is used to perform error checking on the first sub-job data packet.
[0011] In some embodiments of this disclosure, obtaining job data includes: obtaining service rule data sent by a user terminal; and determining job data based on the service rule data.
[0012] After receiving the response data packets returned by each computing power routing node, the method further includes: determining the data processing result based on the response data packets returned by each computing power routing node; and returning the data processing result to the user terminal.
[0013] According to another aspect of this disclosure, a data transmission method is provided, which is executed by a first computing power routing node, comprising: receiving a first sub-job data packet sent by a user gateway; parsing the first sub-job data packet to obtain an extended header field of the first sub-job data packet, wherein the first sub-job data packet is one of a plurality of sub-job data packets sent by the user gateway; obtaining a first response data packet corresponding to the first sub-job data packet according to the processing method information in the extended header field; and returning the first response data packet to the user gateway.
[0014] In some embodiments of this disclosure, the extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information; obtaining the first response data packet corresponding to the first sub-job data packet according to the processing method information in the extended header field includes: processing the first sub-job data packet according to the processing method information in the extended header field to obtain first response data; encapsulating the first response data to obtain a first response data packet, wherein the first response data packet is an IPv4 data packet, and the extended header field of the first response data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processed information, wherein the processed information is used to indicate that the first response data packet is obtained by processing the first sub-job data packet.
[0015] In some embodiments of this disclosure, obtaining the first response data packet corresponding to the first sub-job data packet according to the processing method information in the extended header field includes: sending the first sub-job data packet to the second computing power routing node for processing according to the processing method information in the extended header field; and obtaining the first response data packet returned by the second computing power routing node.
[0016] In some embodiments of this disclosure, the extended header field of the first response data packet further includes: processing type information, processing tag length information, and response verification information; wherein, the processing type information is used to indicate that the first response data packet contains data obtained by processing the first response data packet, the processing tag length information indicates the length of the extended header field of the first response data packet, and the response verification information is used to perform error checking on the first response data packet.
[0017] According to another aspect of this disclosure, a data transmission apparatus is provided, applied to a user gateway. The apparatus includes: a sub-job data determination module, configured to acquire job data and split the job data to obtain multiple sub-job data; a sub-job data packet encapsulation module, configured to encapsulate the multiple sub-job data respectively to obtain multiple sub-job data packets; a computing power routing node determination module, configured to determine the computing power routing node that processes each sub-job data packet, wherein each sub-job data packet corresponds to one computing power routing node; a sub-job data packet sending module, configured to send each sub-job data packet to the corresponding computing power routing node; and a response data receiving module, configured to receive response data packets returned by each computing power routing node.
[0018] In some embodiments of this disclosure, the sub-job data packets are all IPv4 data packets. The extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information. The processing method information is used to instruct the first computing power routing node to process the first sub-job data packet. The first sub-job data packet is any one sub-job data packet, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet.
[0019] In some embodiments of this disclosure, the extended header field of the first sub-job data packet further includes: distribution type information, distribution tag length information, and job verification information; wherein, the distribution type information is used to indicate that the extended header field is used to distribute the first sub-job data packet, the distribution tag length information indicates the length of the extended header field, and the job verification information is used to perform error checking on the first sub-job data packet.
[0020] In some embodiments of this disclosure, the sub-job data determination module is used to obtain service rule data sent by the user terminal; and determine job data based on the service rule data.
[0021] The apparatus provided in this embodiment further includes: a data processing result return module, used to determine the data processing result based on the response data packets returned by each computing power routing node; and return the data processing result to the user terminal.
[0022] According to another aspect of this disclosure, a data transmission apparatus is provided, applied to a first computing power routing node. The apparatus includes: a first sub-job data packet receiving module, configured to receive a first sub-job data packet sent by a user gateway, parse the first sub-job data packet to obtain an extended header field of the first sub-job data packet, wherein the first sub-job data packet is one of a plurality of sub-job data packets sent by the user gateway; a first response data packet obtaining module, configured to obtain a first response data packet corresponding to the first sub-job data packet according to the processing method information in the extended header field; and a first response data packet sending module, configured to return the first response data packet to the user gateway.
[0023] In some embodiments of this disclosure, the extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information; the first response data packet acquisition module is used to process the first sub-job data packet according to the processing method information in the extended header field to obtain first response data; the first response data is encapsulated to obtain a first response data packet, wherein the first response data packet is an IPv4 data packet, and the extended header field of the first response data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processed information, wherein the processed information is used to indicate that the first response data packet is obtained by processing the first sub-job data packet.
[0024] In some embodiments of this disclosure, the first response data packet acquisition module is used to send the first sub-job data packet to the second computing power routing node for processing according to the processing method information in the extended header field; and to acquire the first response data packet returned by the second computing power routing node.
[0025] In some embodiments of this disclosure, the extended header field of the first response data packet further includes: processing type information, processing tag length information, and response verification information; wherein, the processing type information is used to indicate that the first response data packet contains data obtained by processing the first response data packet, the processing tag length information indicates the length of the extended header field of the first response data packet, and the response verification information is used to perform error checking on the first response data packet.
[0026] According to another aspect of this disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the above-described data transfer method by executing the executable instructions.
[0027] According to another aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the above-described data transmission method.
[0028] According to another aspect of this disclosure, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the data transfer method provided in various alternative embodiments of this disclosure.
[0029] The technical solution provided by the embodiments of this disclosure can split job data into multiple sub-job data through a user gateway. Each sub-job data packet can be simultaneously sent to its corresponding computing power routing node for processing. Therefore, the embodiments of this disclosure can efficiently transmit job data, thereby saving network bandwidth and effectively reducing the network resource occupancy of user terminals. Furthermore, splitting job data through a user gateway can further save computing resources on user terminals.
[0030] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0031] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0032] Figure 1 A schematic diagram illustrating the implementation environment of a data transmission method according to an embodiment of this disclosure is shown.
[0033] Figure 2 This diagram illustrates a data transmission method flowchart according to an embodiment of the present disclosure.
[0034] Figure 3 This diagram illustrates another data transmission method flowchart in an embodiment of the present disclosure;
[0035] Figure 4 This diagram illustrates a data transmission system according to an embodiment of the present disclosure;
[0036] Figure 5 This diagram illustrates another data transmission method flowchart in an embodiment of the present disclosure;
[0037] Figure 6 This diagram illustrates a data transmission apparatus according to an embodiment of the present disclosure.
[0038] Figure 7 This diagram illustrates another data transmission apparatus according to an embodiment of the present disclosure;
[0039] Figure 8 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation
[0040] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided so that this disclosure will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0041] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0042] Figure 1 A schematic diagram illustrates an implementation environment in which the data transmission method applicable to embodiments of this disclosure can be applied.
[0043] like Figure 1 As shown, the implementation environment of the data transmission method may include a user terminal 101, a user gateway 102, and a computing power routing node 103. Communication between the user terminal 101 and the user gateway 102, and between the user gateway 102 and the computing power routing node 103, can be achieved via a network. Exemplarily, this network can be a wired network or a wireless network; this embodiment of the disclosure does not limit this.
[0044] In an exemplary embodiment, user terminal 101 can send job data to user gateway 102. Then, user gateway 102 can, according to the data transmission method provided in this embodiment, split and encapsulate the job data to obtain multiple sub-job data packets, and send these sub-job data packets to each computing power routing node. Each computing power routing node 103 can then obtain a corresponding response data packet based on the acquired sub-job data packets and return the response data packet to user gateway 102. User gateway 102 can either return the received multiple response data packets to user terminal 101 separately, or integrate the multiple response data packets into a single target data packet and return the target data packet to user terminal 101.
[0045] Optionally, the aforementioned wireless or wired networks use standard communication technologies and / or protocols. The network is typically the Internet, but can also be any network, including but not limited to Local Area Networks (LANs), Metropolitan Area Networks (MANs), Wide Area Networks (WANs), mobile, wired or wireless networks, private networks, or any combination of virtual private networks. In some embodiments, technologies and / or formats including Hyper Text Markup Language (HTML), Extensible Markup Language (XML), etc., are used to represent data exchanged over the network. Furthermore, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Networks (VPNs), and Internet Protocol Security (IPsec) can be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies can be used to replace or supplement the aforementioned data communication technologies.
[0046] User terminal 101 can be various electronic devices, including but not limited to smartphones, tablets, laptops, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.
[0047] Optionally, the application clients installed on different user terminals 101 may be the same, or clients of the same type of application based on different operating systems. Depending on the terminal platform, the specific form of the application client may also differ; for example, the application client may be a mobile client, a PC client, etc.
[0048] The computing power routing node 103 can be any electronic device with computing capabilities, such as a server that provides various services, or a backend management server that supports the operation of the device by the user using the user terminal 101. The backend management server can analyze and process the received requests and other data, and feed the processing results back to the user terminal.
[0049] Optionally, the server can be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0050] Those skilled in the art will know that Figure 1 The number of user terminals 101, user gateways 102, and computing power routing nodes 103 shown in the figures is merely illustrative. Any number of user terminals 101, user gateways 102, and computing power routing nodes 103 can be used as needed. This disclosure does not limit the number of such instances.
[0051] The following detailed description of this exemplary implementation method is provided in conjunction with the accompanying drawings and embodiments.
[0052] First, this disclosure provides a data transmission method that can be executed by a user gateway.
[0053] Figure 2 A flowchart of a data transmission method according to an embodiment of this disclosure is shown, such as... Figure 2 As shown, the data transmission method provided in this embodiment includes the following steps S202 to S210.
[0054] S202, Obtain job data, split the job data, and obtain multiple sub-job data.
[0055] This disclosure does not limit the model or type of the user gateway; the user gateway can be any gateway device capable of forwarding data.
[0056] This disclosure does not limit the content of the operational data; the content can be determined based on the application scenario. For example, the operational data could be order data from an e-commerce platform, which could use the method provided in this disclosure to obtain information such as user-preferred products corresponding to the order data. Alternatively, the operational data could be information such as air temperature, air humidity, and cloud thickness for a given day. Therefore, using the method provided in this disclosure, weather information such as the probability of precipitation for that day can be predicted based on the operational data.
[0057] In one possible implementation, the user gateway may be connected to a controller of the user gateway, which may include a job assignment policy library that stores policies for splitting job data received by the user gateway.
[0058] Therefore, the controller of the user gateway can determine a job data splitting scheme based on the job assignment strategy library. Then, the user gateway can split the received job data based on this strategy. This embodiment of the disclosure does not limit the strategies for splitting job data stored in the job assignment strategy library. The strategy for splitting job data can be determined based on experience or the implementation environment; for example, it can be split based on the actual computing power of each computing power routing node.
[0059] This disclosure does not limit the multiple sub-job data obtained by splitting. For example, each sub-job data may include all or part of the job data.
[0060] In some embodiments, obtaining job data includes: obtaining service rule data sent by a user terminal; and determining job data based on the service rule data.
[0061] For example, when a user terminal needs to execute a job through a computing power routing node, it can send corresponding business rule data to the user gateway. This business rule data can, for instance, be used to calculate user preference information or statistical information about a certain type of data. After obtaining this business rule data, the user terminal can generate corresponding job data through the job database. The format of this job data can be recognized and processed by subsequent computing power routing nodes.
[0062] For example, this job database can store data on various types of jobs involved in the business. Through this job database, corresponding job data can be generated based on business rule data. This job database can reside in the user gateway or the user gateway's controller.
[0063] S204 encapsulates the data of multiple sub-jobs separately to obtain multiple sub-job data packets.
[0064] In some embodiments, the sub-job data packet can be an IPv4 data packet, and the extended header field of the first sub-job data packet may include: job data identification information, number of sub-job data packets, sequence number of the first sub-job data packet, and processing method information.
[0065] The processing method information can be used to instruct the first computing power routing node to process the first sub-job data packet. The first sub-job data packet can be any sub-job data packet, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet.
[0066] For example, this extended header field can be appended to the options field in the header of an IPv4 packet. The identity information of the job data can be assigned by the user gateway. This embodiment of the disclosure does not limit the identity information of the job data; each job data generated by the user gateway can correspond to a unique identity information.
[0067] This disclosure does not limit the quantity of the sub-job data packet. For example, if the user gateway splits the job data into 10 parts, then the quantity of the sub-job data packet is 10. Or, for example, if the user gateway splits the job data into 32 parts, then the quantity of the sub-job data packet is 32.
[0068] Taking the user gateway splitting job data into 10 parts as an example, the sequence numbers of the 10 sub-job data packets can be 01, 02, ..., 10. The first sub-job data packet can be any one of the sub-job data packets; therefore, the sequence number of the first sub-job data packet can be 01, 02, ..., 10. For example, the sequence number of the first sub-job data packet cannot exceed the total number of sub-job data packets.
[0069] For example, the processing method information of the first sub-job data packet may include method 1, method 2, method 3 and method 0. Among them, method 1 indicates that the first sub-job data packet is backed up, method 2 indicates that the first sub-job data packet is forwarded, method 3 indicates that the first sub-job data packet is processed normally, and method 0 indicates that the first sub-job data packet has been processed.
[0070] In some embodiments, the extended header fields of the first subjob data packet may further include: distribution type information, distribution tag length information, and job verification information.
[0071] For example, the distribution type information is used to indicate that the extended header field is used to distribute the first subjob data packet, the distribution tag length information indicates the length of the extended header field, and the job verification information is used to perform error verification on the first subjob data packet.
[0072] In one possible implementation, the extended header fields of any subjob data packet can be as shown in Table 1 below.
[0073] Table 1
[0074]
[0075] As shown in Table 1, the field length of the distribution type information can be 1 byte, the field length of the distribution tag length information can be 1 byte, the field length of the job data identification information can be 4 bytes, the field length of the sub-job data packet quantity information can be 4 bytes, the field length of the sub-job data packet sequence number information can be 4 bytes, the field length of the processing method information can be 2 bytes, and the field length of the job verification information can be 4 bytes.
[0076] S206, determine the computing power routing node that processes each sub-job data packet, with each sub-job data packet corresponding to one computing power routing node.
[0077] For example, the computing power routing node that processes the data packets of each sub-job can be determined by the controller of the user gateway.
[0078] S208 sends each sub-job data packet to the corresponding computing power routing node.
[0079] For example, the contents of the extended header field of the first sub-job data packet included in each sub-job data packet can be as shown in Table 2 below.
[0080] Table 2
[0081]
[0082] The distribution type information indicates that the first sub-job data packet is a distribution job, thus distinguishing it from other services. As shown in Table 2, the distribution tag length of the first sub-job data packet is 20 bytes. The identification information of the first sub-job data packet is TID. The number of sub-job data packets is 150. The sequence number of the first sub-job data packet can be 75. Therefore, the first sub-job data packet can be the 75th sub-job data packet obtained by splitting the job data.
[0083] Additionally, the processing method information for this first sub-job data packet may be method 1, method 2, method 3, or method 0. The job verification information for this first sub-job data packet can be a string of first checksums. After receiving the first sub-job data packet, the corresponding computing power routing node can verify the first sub-job data packet based on this string of first checksums.
[0084] It should be noted that the embodiments of this disclosure define the aforementioned extended header field, which expands and effectively utilizes the optional IPv4 fields and defines the processing actions required for subjob data packets. Therefore, the efficiency of transmitting job data can be further improved.
[0085] S210 receives response data packets returned by each computing power routing node.
[0086] In some embodiments, job data is sent by the user to the user gateway. Therefore, after receiving the response data packets returned by each computing power routing node, the data transmission method provided in this disclosure further includes: determining the data processing result based on the response data packets returned by each computing power routing node; and returning the data processing result to the user terminal.
[0087] In an exemplary embodiment, the user gateway can integrate the response data packets returned by each computing power routing node to obtain a target data packet. This target data packet contains the data processing result. Then, the target data packet can be returned to the user terminal.
[0088] Figure 3 A flowchart of a data transmission method according to an embodiment of this disclosure is shown, such as... Figure 3 As shown, this method can be executed by the first computing power routing node. The data transmission method provided in this embodiment includes the following steps S302 to S210.
[0089] S302, receive the first sub-job data packet sent by the user gateway, parse the first sub-job data packet to obtain the extended header field of the first sub-job data packet, wherein the first sub-job data packet is one of the multiple sub-job data packets sent by the user gateway.
[0090] For example, the contents of the extended header field of the first subjob data packet can be as shown in Table 2 in S208 above, and will not be repeated here.
[0091] S304. Based on the processing method information in the extended header field, obtain the first response data packet corresponding to the first subjob data packet.
[0092] In an exemplary embodiment, the extended header field of the first sub-job data packet includes: job data identification information, number of sub-job data packets, sequence number of the first sub-job data packet, and processing method information.
[0093] Therefore, in some embodiments, obtaining the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field may include: processing the first sub-job data packet according to the processing method information in the extended header field to obtain the first response data; and encapsulating the first response data to obtain the first response data packet.
[0094] For example, the first response packet can be an IPv4 packet. The extended header field of the first response packet may include: job data identification information, number of sub-job packets, sequence number of the first sub-job packet, and processed information. The processed information is used to indicate that the first response packet was obtained by processing the first sub-job packet.
[0095] For example, the processing method information can be found in S204 above. The job data identification information, the number of sub-job data packets, and the sequence number of the first sub-job data packet included in the extended header field of the first response data packet can be used to indicate to the user gateway that the first response data packet corresponds to the first sub-job data packet.
[0096] In other embodiments, obtaining the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field may include: sending the first sub-job data packet to the second computing power routing node for processing based on the processing method information in the extended header field; and obtaining the first response data packet returned by the second computing power routing node.
[0097] For example, the first computing power routing node can process the first sub-job data packet itself, or it can forward it to the second computing power routing node for processing. This can be limited based on the application scenario, and this disclosure does not limit it in this way.
[0098] In some embodiments, the extended header fields of the first response data packet further include: processing type information, processing tag length information, and response verification information.
[0099] For example, the processing type information is used to indicate that the data in the first response data packet is obtained by processing the first response data packet, the processing tag length information indicates the length of the extended header field of the first response data packet, and the response verification information is used to perform error verification on the first response data packet.
[0100] For example, the extended header fields of the response packet can correspond to the extended header fields of the subjob packets shown in Table 1. The extended header fields of the first response packet can be as shown in Table 3.
[0101] Table 3
[0102]
[0103] S306, the first response data packet is returned to the user gateway.
[0104] For example, the contents of the extended header field of the first response packet can be as shown in Table 4 below.
[0105] Table 4
[0106]
[0107] The processing type information indicates that the first response data packet is a service returning a job result, thus distinguishing it from other services. As shown in Table 4, the processing tag length of the first response data packet is 20 bytes. The identification information of the job data corresponding to the first response data packet is TID. The number of sub-job data packets is 150. The sequence number of the sub-job data packet corresponding to the first response data packet is 75. Therefore, the first response data packet can contain the result of responding to the 75th sub-job data packet obtained by splitting the job data.
[0108] Additionally, the processed information indicates that the data in the first response data packet has been processed. The response verification information in the first response data packet can be a second checksum. Therefore, the first response data packet can be verified based on this second checksum. This second checksum can be different from the first checksum.
[0109] The method provided in the embodiments of this disclosure can split job data into multiple sub-job data through a user gateway. Each sub-job data packet can be simultaneously sent to its corresponding computing power routing node for processing. Therefore, the embodiments of this disclosure can efficiently transmit job data, thereby saving network bandwidth and effectively reducing the network resource occupancy of user terminals. Furthermore, splitting job data through a user gateway can further save computing resources on user terminals.
[0110] In an exemplary embodiment, a possible data transmission system may be as follows: Figure 4 As shown in the diagram, the tenant sends business rule data to the user gateway via the user terminal. The user gateway then verifies the tenant's identity using the tenant authentication module and generates job data based on the business rule data using the job database. Furthermore, the user gateway determines how to allocate the job data to each computing power routing node using the job allocation policy library. Finally, the IPv4 packet encapsulation module encapsulates the job data into multiple sub-job packets, which are then sent to the respective computing power routing nodes via the routing module.
[0111] Multiple computing power routing nodes can each receive corresponding sub-job data packets; the first computing power routing node is used as an example here. The first computing power routing node can decapsulate the first sub-job data packet using the IPv4 packet decapsulation module to obtain the sub-job data. At this time, the computing node database stores the IP (Internet Protocol) addresses of each computing power routing node, and allocates the appropriate computing power routing node for computation based on the content of the first sub-job data packet. The computing node scheduling module is used to allocate the first sub-job data packet to a suitable second computing power routing node; this scheduling strategy can be adjusted by the controller.
[0112] In addition, the computing resource awareness module is used to acquire computing resources in the computing resource pool corresponding to the first computing resource routing node. This module can assist in routing the first sub-job data packet to the appropriate second computing resource routing node. Finally, the routing module can send the first sub-job data packet to the corresponding second computing resource routing node.
[0113] After receiving the first response data packet, the first computing power routing node can obtain the extended header fields of the first response data packet through the IPv4 packet decapsulation module to determine that the first response data packet corresponds to the first subjob data packet. Then, it can return the first response data packet to the user gateway. The user gateway can decapsulate the first response data packet through the IPv4 packet decapsulation module, integrate the data from the received multiple response data packets to obtain the data processing result, and then encapsulate the data processing result to obtain the target data packet. This target data packet is then returned to the corresponding tenant.
[0114] In an exemplary embodiment, a flowchart of a data transmission method can be as follows: Figure 5 As shown.
[0115] S502, Initialization. For example, the initialization step may include assigning identity information to job data, having the controller of the user gateway calculate the computing power routing node that can execute the job corresponding to the job data, and sending the forwarding path of the computing power routing node to the corresponding computing power routing node.
[0116] S504, the user gateway processes job data, obtains multiple sub-job data packets, and forwards the multiple sub-job data packets to the corresponding computing power routing nodes.
[0117] S506, the computing power routing nodes parse the corresponding sub-job data packets and execute the corresponding jobs to obtain the corresponding response data packets.
[0118] S508: The user gateway receives multiple response data packets, integrates them to obtain a target data packet, and returns the target data packet to the user terminal.
[0119] It should be noted that each step in S502 to S508 can be referred to in the above embodiments, and will not be repeated here.
[0120] Based on the same inventive concept, this disclosure also provides a data transmission device, as described in the following embodiments. Since the principle by which this device embodiment solves the problem is similar to that of the above-described method embodiment, the implementation of this device embodiment can refer to the implementation of the above-described method embodiment, and repeated details will not be elaborated further.
[0121] Figure 6 This diagram illustrates a data transmission apparatus according to an embodiment of the present disclosure, such as... Figure 6 As shown, this device is used in a user gateway and includes:
[0122] The sub-job data determination module 601 is used to acquire job data, split the job data, and obtain multiple sub-job data.
[0123] The sub-job data packet encapsulation module 602 is used to encapsulate multiple sub-job data packets separately to obtain multiple sub-job data packets;
[0124] The computing power routing node determination module 603 is used to determine the computing power routing node for processing each sub-job data packet, with each sub-job data packet corresponding to one computing power routing node;
[0125] The sub-job data packet sending module 604 is used to send each sub-job data packet to the corresponding computing power routing node;
[0126] The response data receiving module 605 is used to receive response data packets returned by each computing power routing node.
[0127] In some embodiments of this disclosure, the sub-job data packets are all IPv4 data packets. The extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information. The processing method information is used to instruct the first computing power routing node to process the first sub-job data packet. The first sub-job data packet is any one sub-job data packet, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet.
[0128] In some embodiments of this disclosure, the extended header field of the first sub-job data packet further includes: distribution type information, distribution tag length information, and job verification information; wherein, the distribution type information is used to indicate that the extended header field is used to distribute the first sub-job data packet, the distribution tag length information indicates the length of the extended header field, and the job verification information is used to perform error checking on the first sub-job data packet.
[0129] In some embodiments of this disclosure, the sub-job data determination module 601 is used to acquire service rule data sent by the user terminal and determine job data based on the service rule data.
[0130] The apparatus provided in this embodiment further includes: a data processing result return module, used to determine the data processing result based on the response data packets returned by each computing power routing node; and return the data processing result to the user terminal.
[0131] Figure 7 This diagram illustrates a data transmission apparatus according to an embodiment of the present disclosure, such as... Figure 7 As shown, the device is applied to the first computing power routing node and includes:
[0132] The first sub-job data packet receiving module 701 is used to receive the first sub-job data packet sent by the user gateway, parse the first sub-job data packet, and obtain the extended header field of the first sub-job data packet. The first sub-job data packet is one of multiple sub-job data packets sent by the user gateway.
[0133] The first response data packet acquisition module 702 is used to acquire the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field.
[0134] The first response data packet sending module 703 is used to return the first response data packet to the user gateway.
[0135] In some embodiments of this disclosure, the extended header field of the first sub-job data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processing method information; the first response data packet acquisition module 702 is used to process the first sub-job data packet according to the processing method information in the extended header field to obtain first response data; and to encapsulate the first response data to obtain a first response data packet, wherein the first response data packet is an IPv4 data packet, and the extended header field of the first response data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processed information, wherein the processed information is used to indicate that the first response data packet is obtained by processing the first sub-job data packet.
[0136] In some embodiments of this disclosure, the first response data packet acquisition module 702 is used to send the first sub-job data packet to the second computing power routing node for processing according to the processing method information in the extended header field; and to acquire the first response data packet returned by the second computing power routing node.
[0137] In some embodiments of this disclosure, the extended header field of the first response data packet further includes: processing type information, processing tag length information, and response verification information;
[0138] Among them, the processing type information is used to indicate that the data in the first response data packet is obtained by processing the first response data packet, the processing tag length information indicates the length of the extended header field of the first response data packet, and the response verification information is used to perform error verification on the first response data packet.
[0139] The apparatus provided in the embodiments of this disclosure can split job data into multiple sub-job data through a user gateway. Each sub-job data packet can be simultaneously sent to its corresponding computing power routing node for processing. Therefore, the embodiments of this disclosure can efficiently transmit job data, thereby saving network bandwidth and effectively reducing the network resource occupancy of user terminals. Furthermore, splitting job data through a user gateway can further save computing resources on user terminals.
[0140] Those skilled in the art will understand that various aspects of this disclosure can be implemented as a system, method, or program product. Therefore, various aspects of this disclosure can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, collectively referred to herein as a "circuit," "module," or "system."
[0141] The following reference Figure 8 To describe an electronic device 800 according to such an embodiment of the present disclosure. Figure 8 The electronic device 800 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.
[0142] like Figure 8 As shown, the electronic device 800 is manifested in the form of a general-purpose computing device. The components of the electronic device 800 may include, but are not limited to: at least one processing unit 810, at least one storage unit 820, and a bus 830 connecting different system components (including storage unit 820 and processing unit 810).
[0143] The storage unit stores program code that can be executed by the processing unit 810, causing the processing unit 810 to perform the steps described in the "Detailed Description" section of this specification according to various exemplary embodiments of this disclosure.
[0144] Storage unit 820 may include a readable medium in the form of a volatile storage unit, such as random access memory (RAM) 8201 and / or cache memory 8202, and may further include a read-only memory (ROM) 8203.
[0145] The storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.
[0146] Bus 830 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0147] Electronic device 800 can also communicate with one or more external devices 840 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable a user to interact with electronic device 800, and / or with any device that enables electronic device 800 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 850. Furthermore, electronic device 800 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 860. As shown, network adapter 860 communicates with other modules of electronic device 800 via bus 830. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0148] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0149] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. A program product capable of implementing the methods described above is stored thereon. In some possible implementations, various aspects of this disclosure may also be implemented as a program product including program code, which, when run on a terminal device, causes the terminal device to perform the steps of the various exemplary embodiments of this disclosure described in the "Detailed Description" section of this specification.
[0150] More specific examples of computer-readable storage media in this disclosure may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0151] In this disclosure, a computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of transmitting, propagating, or transmitting a program for use by or in connection with an instruction execution system, apparatus, or device.
[0152] Optionally, the program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0153] In practical implementation, program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0154] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0155] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0156] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0157] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope of this disclosure is indicated by the appended claims.
Claims
1. A data transmission method, characterized in that, The method is executed by the user gateway, and the method includes: Obtain the job data, and split the job data to obtain multiple sub-job data; Multiple sub-job data are encapsulated to obtain multiple sub-job data packets. Each sub-job data packet is an IPv4 data packet. The extended header field of the first sub-job data packet includes processing method information. The processing method information is used to instruct the first computing power routing node to process the first sub-job data packet, or to instruct the first computing power routing node to forward the first sub-job data packet to another computing power routing node for processing. The first sub-job data packet is one of multiple sub-job data packets, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet. Each sub-job data packet is assigned a computing power routing node for processing. Each sub-job data packet corresponds to one computing power routing node. Send each sub-job data packet to the corresponding computing power routing node; Receive response data packets returned by each computing power routing node.
2. The data transmission method according to claim 1, characterized in that, The extended header fields of the first sub-job data packet include: the identity information of the job data, the number of sub-job data packets, the sequence number of the first sub-job data packet, and the processing method information.
3. The data transmission method according to claim 2, characterized in that, The extended header fields of the first sub-job data packet also include: distribution type information, distribution tag length information, and job verification information; The distribution type information is used to indicate that the extended header field is used to distribute the first sub-job data packet, the distribution tag length information indicates the length of the extended header field, and the job verification information is used to perform error verification on the first sub-job data packet.
4. The data transmission method according to any one of claims 1 to 3, characterized in that, The acquisition of job data includes: Obtain business rule data sent by the user terminal; Determine the operation data based on the aforementioned business rule data; After receiving the response data packets returned by each computing power routing node, the method further includes: The data processing result is determined based on the response data packets returned by each computing power routing node; The data processing result is returned to the user terminal.
5. A data transmission method, characterized in that, The method is executed by the first computing power routing node, and the method includes: The system receives a first sub-job data packet sent by a user gateway, parses the first sub-job data packet to obtain the extended header field of the first sub-job data packet, wherein the first sub-job data packet is one of multiple sub-job data packets sent by the user gateway, and all sub-job data packets are IPv4 data packets. The extended header field of the first sub-job data packet includes processing method information, which is used to instruct the first computing power routing node to process the first sub-job data packet, or to instruct the first computing power routing node to forward the first sub-job data packet to another computing power routing node for processing. Based on the processing method information in the extended header field, obtain the first response data packet corresponding to the first sub-job data packet; The first response data packet is returned to the user gateway.
6. The data transmission method according to claim 5, characterized in that, The extended header fields of the first sub-job data packet include: the identity information of the job data, the number of sub-job data packets, the sequence number of the first sub-job data packet, and the processing method information; The step of obtaining the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field includes: Based on the processing method information in the extended header field, the first sub-job data packet is processed to obtain the first response data; The first response data is encapsulated to obtain a first response data packet, wherein the first response data packet is an IPv4 data packet, and the extended header field of the first response data packet includes: job data identification information, sub-job data packet quantity information, first sub-job data packet sequence number information, and processed information, wherein the processed information is used to indicate that the first response data packet is obtained by processing the first sub-job data packet.
7. The data transmission method according to claim 6, characterized in that, The step of obtaining the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field includes: Based on the processing method information in the extended header field, the first sub-job data packet is sent to the second computing power routing node for processing; Obtain the first response data packet returned by the second computing power routing node.
8. The data transmission method according to any one of claims 6 or 7, characterized in that, The extended header fields of the first response data packet also include: processing type information, processing tag length information, and response verification information; The processing type information indicates that the first response data packet contains data obtained by processing the first response data packet; the processing tag length information indicates the length of the extended header field of the first response data packet; and the response verification information is used to perform error verification on the first response data packet.
9. A data transmission device, characterized in that, Applied to user gateways, including: The sub-job data determination module is used to acquire job data and split the job data to obtain multiple sub-job data. The sub-job data packet encapsulation module is used to encapsulate multiple sub-job data separately to obtain multiple sub-job data packets. The sub-job data packets are all IPv4 data packets. The extended header field of the first sub-job data packet includes processing mode information. The processing mode information is used to instruct the first computing power routing node to process the first sub-job data packet, or to instruct the first computing power routing node to forward the first sub-job data packet to another computing power routing node for processing. The first sub-job data packet is one of multiple sub-job data packets, and the first computing power routing node is the computing power routing node corresponding to the first sub-job data packet. The computing power routing node determination module is used to determine the computing power routing node for processing each sub-job data packet, with each sub-job data packet corresponding to one computing power routing node; The subjob data packet sending module is used to send each subjob data packet to the corresponding computing power routing node; The response data receiving module is used to receive response data packets returned by each computing power routing node.
10. A data transmission device, characterized in that, Applied to the first computing power routing node, including: The first sub-job data packet receiving module is used to receive the first sub-job data packet sent by the user gateway, parse the first sub-job data packet to obtain the extended header field of the first sub-job data packet, wherein the first sub-job data packet is one of a plurality of sub-job data packets sent by the user gateway, and the sub-job data packets are all IPv4 data packets. The extended header field of the first sub-job data packet includes processing method information, which is used to instruct the first computing power routing node to process the first sub-job data packet, or to instruct the first computing power routing node to forward the first sub-job data packet to another computing power routing node for processing. The first response data packet acquisition module is used to acquire the first response data packet corresponding to the first sub-job data packet based on the processing method information in the extended header field; The first response data packet sending module is used to return the first response data packet to the user gateway.
11. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the data transmission method according to any one of claims 1 to 8 by executing the executable instructions.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the data transmission method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Task execution method and device, storage medium and electronic device
CN113849302A
Computing power distribution method and computing power distribution device
CN114860448A