Data transmission method and apparatus, transmission device, terminal device, computer-readbale storage medium, and computer program product

By establishing a data cache queue in the transmission device and responding to the data issuance request of the terminal equipment, the data is extracted from the cache queue and issued the target to the target. Data recovery and higher transmission efficiency.

WO2025016034A1PCT designated stage expired Publication Date: 2025-01-23TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/093204
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-17
Filing Date
2024-05-14
Publication Date
2025-01-23

AI Technical Summary

Technical Problem

During data transmission, packet loss causes the terminal equipment to require a long delay to reacquire the missing data in the service data, affecting the transmission efficiency of the service data.

Method used

By establishing a data cache queue in the transmission device, responding to the data retransmission request of the terminal device, determining the data index, extracting the target retransmission data from the cache queue, and re-delivering it to the terminal device, it avoids forwarding the data retransmission request to the terminal device. Service equipment needs.

Benefits of technology

It shortens the transmission link when missing data is resent, improves the transmission efficiency and stability of business data, and reduces the processing load of service equipment and the load of the transmission network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024093204_23012025_PF_FP_ABST
    Figure CN2024093204_23012025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a data transmission method and apparatus, devices, a storage medium, and a program product. Embodiments of the present application can be applied to data transmission scenarios such as video on demand and live broadcast. The method comprises: in response to a data retransmission request sent by a terminal device for service data, determining a data index corresponding to the data retransmission request, wherein the service data is issued by a service device in response to a data pull request of the terminal device; on the basis of the data index, extracting, from a data cache queue, target retransmission data corresponding to the data retransmission request, the data cache queue being used for caching the service data issued to the terminal device by the service device; and re-issuing the target retransmission data to the terminal device.
Need to check novelty before this filing date? Find Prior Art

Description

Data transmission method, device, transmission equipment, terminal equipment, computer-readable storage medium and computer program product

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application is based on the Chinese patent application with application number 202310874828.9 and application date July 17, 2023, and claims the priority of the above Chinese patent application. The entire content of the above Chinese patent application is hereby introduced into this application as a reference. Technical Field

[0003] The present application relates to information transmission technology, and in particular to a data transmission method, apparatus, transmission equipment, terminal equipment, computer-readable storage medium, and computer program product. Background Art

[0004] During data transmission, packet loss may occur due to various reasons. To solve the problem of packet loss, in related technologies, after detecting packet loss, the terminal device will generate a data retransmission request and send the data retransmission request to the service device through the transmission device. After receiving the request, the service device will resend the data requested by the terminal device in accordance with the requirements of the request. It can be seen that when packet loss occurs, the transmission link for retransmitting the missing data is longer, resulting in a longer delay for the terminal device to reacquire the missing data in the service data, thereby affecting the transmission efficiency of the service data.

[0005] Summary of the Invention

[0006] The embodiments of the present application provide a data transmission method, apparatus, transmission equipment, terminal equipment, computer-readable storage medium, and computer program product, which can improve the transmission efficiency of business data.

[0007] The technical solution of the embodiment of the present application is implemented as follows:

[0008] The present invention provides a data transmission method, which is applied to a transmission device and includes:

[0009] In response to a data retransmission request sent by a terminal device for service data, determining a data index corresponding to the data retransmission request; wherein the service data is sent by a service device in response to a data pull request from the terminal device;

[0010] Based on the data index, extracting the target retransmission data corresponding to the data retransmission request from the data cache queue; the data cache queue is used to cache the service data sent by the service device to the terminal device;

[0011] The target resend data is resent to the terminal device.

[0012] The present invention provides a data transmission method, which is applied to a terminal device and includes:

[0013] Performing an integrity check on the business data to obtain a check result; wherein the business data is sent by the service device in response to the data pull request;

[0014] When the verification result indicates that the service data is missing, sending a data retransmission request to the transmission device;

[0015] Receive target retransmission data returned by the transmission device in response to the data retransmission request.

[0016] The present invention provides a data transmission device, including:

[0017] An index determination module configured to determine a data index corresponding to a data retransmission request sent by a terminal device for service data, in response to the data retransmission request sent by the terminal device; wherein the service data is sent by the service device in response to the data pull request of the terminal device;

[0018] a data extraction module configured to extract, based on the data index, the target retransmission data corresponding to the data retransmission request from a data cache queue; the data cache queue is used to cache the service data sent by the service device to the terminal device;

[0019] The first sending module is configured to resend the target retransmission data to the terminal device.

[0020] The present invention provides a data transmission device, including:

[0021] a data verification module configured to perform integrity verification on the business data and obtain a verification result; wherein the business data is sent by the service device in response to the data pull request;

[0022] A second sending module is configured to send a data retransmission request to a transmission device when the verification result indicates that the service data is missing;

[0023] The second receiving module is configured to receive the target retransmission data returned by the transmission device in response to the data retransmission request.

[0024] An embodiment of the present application provides a transmission device, including:

[0025] a first memory for storing computer-executable instructions;

[0026] The first processor is configured to implement the data transmission method on the transmission device side provided in an embodiment of the present application when executing the computer-executable instructions stored in the first memory.

[0027] An embodiment of the present application provides a terminal device, including:

[0028] a second memory for storing computer-executable instructions;

[0029] The second processor is used to implement the data transmission method on the terminal device side provided in the embodiment of the present application when executing the computer executable instructions stored in the second memory.

[0030] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions, which is used to cause a first processor to execute and implement the data transmission method on the transmission device side provided by the embodiment of the present application, or to cause a second processor to execute and implement the data transmission method on the terminal device side provided by the embodiment of the present application.

[0031] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions. When the computer-executable instructions are executed by a first processor, they implement the data transmission method on the transmission device side provided by the embodiment of the present application. When the computer-executable instructions are executed by a second processor, they implement the data transmission method on the terminal device side provided by the embodiment of the present application.

[0032] The embodiments of the present application have the following beneficial effects: after receiving a data retransmission request sent by a terminal device for business data, the transmission device will determine the data index, and obtain the data that needs to be re-sent to the terminal device in the data cache queue used to cache the business data sent by the service device to the terminal device through the data index. That is, when the transmission device forwards the business data sent by the service device to the terminal device, it will also cache the business data, that is, use the data cache queue to "back up" the business data. In this way, after receiving the data retransmission request from the terminal device, the transmission device no longer needs to forward the data retransmission request to the service device to trigger the data retransmission process, that is, there is no need to obtain the data that needs to be re-sent from the remote service device, but the data retransmission is directly implemented by the transmission device. In this way, the transmission link of the missing data during retransmission can be shortened, so that the missing data in the business data can be obtained more quickly, thereby improving the transmission efficiency and stability of the business data. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] FIG1 is a processing flow after packet loss occurs in the related art;

[0034] FIG2 is a schematic diagram of the architecture of a data transmission system provided in an embodiment of the present application;

[0035] FIG3 is a schematic diagram of the structure of the server in FIG2 provided in an embodiment of the present application;

[0036] FIG4 is a schematic structural diagram of the terminal in FIG2 provided in an embodiment of the present application;

[0037] FIG5 is a flowchart of a data transmission method according to an embodiment of the present application;

[0038] FIG6 is a second flow chart of a data transmission method according to an embodiment of the present application;

[0039] FIG7 is a third flow chart of a data transmission method according to an embodiment of the present application;

[0040] FIG8 is a schematic diagram of a system framework for short video extraction according to an embodiment of the present application;

[0041] FIG9 is a schematic diagram of the service processing flow of video on demand provided in an embodiment of the present application. DETAILED DESCRIPTION

[0042] In order to make the purpose, technical solutions and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limiting this application. All other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0043] In the following description, reference is made to “some embodiments”, which describes a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0044] In the following description, the terms "first\second" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It is understandable that "first\second" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0045] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.

[0046] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.

[0047] Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations.

[0048] 1) Packet loss refers to the phenomenon in which data packets fail to reach their destination device due to various reasons during network transmission. Packet loss may be caused by network congestion, long transmission distance, network signal interference, etc.

[0049] 2) Data index, which is used to search for index information of data in the data cache queue. There is a mapping relationship between the data index and the data cached in the data cache queue. Through this mapping relationship, the corresponding cached data can be obtained from the data cache queue.

[0050] 3) In response, it is used to indicate the conditions or states on which the executed operations depend. When the dependent conditions or states are met, one or more operations executed can be real-time and can have a set delay; unless otherwise specified, there is no restriction on the order of execution of the multiple operations executed.

[0051] 4) Terminal device refers to the device on the user side of the data transmission link, which is a hardware device used to directly provide applications, services, etc. to users. It can also be understood as the hardware device used by users, such as the user's smartphone, wearable device, etc.

[0052] 5) Service equipment refers to the equipment that provides data services in the data transmission link. It is a device in the cloud that is used to receive data uploaded by different users, process this data, and then provide the processed data to users when users need it, such as short video servers and game background servers in the cloud.

[0053] 6) Transmission equipment refers to the equipment between the service device and the terminal device in the data transmission link. It is used to connect the terminal device and the service device to realize specific business functions. For example, when a terminal device accesses a website, the transmission equipment is responsible for establishing a connection between the terminal device and the website's backend service equipment.

[0054] 7) Hash Code is a method of creating a small digital "fingerprint" from any data. It uses a specific function (hash function) to convert input data (such as a string, number, etc.) into a fixed-length string, which usually consists of numbers and / or letters.

[0055] During data transmission, packet loss may occur due to various reasons. For example, in a video-on-demand scenario, when a short video is being played on a terminal device, network congestion may occur due to excessive user volume or heavy traffic, leading to packet loss. This can cause video frames to be lost, making it impossible for the terminal device to play the video properly.

[0056] In order to solve the problem of packet loss, in related technologies, after detecting packet loss, the terminal device will generate a data retransmission request and send the data retransmission request to the service device through the transmission device. After receiving the request, the service device will resend the data required by the terminal device according to the requirements of the request.

[0057] For example, Figure 1 is a processing flow after packet loss occurs in the related art. When the video frame of a short video is lost, the user's 5G (fifth generation mobile communication technology) terminal 1-1 (referred to as a terminal device) generates a data frame retransmission request and sends it to the wireless base station 1-2 to reach the user plane device 1-31 of the 5G core network (the 5G core network also has a control plane device 1-32, and the user plane device 1-31 can be called a transmission device). The 5G core network user plane device forwards the request to the wired network 1-4, and finally reaches the streaming media server 1-5 (referred to as a service device) that provides video on demand. The streaming media server 1-5 resends the video frame required by the 5G terminal 1-1 according to the requirements of the data frame retransmission request, and the video frame will be returned to the 5G terminal 1-1 along the original path.

[0058] As can be seen, when a terminal device experiences packet loss, the data retransmission request it sends needs to be transmitted over both the wireless and wired networks to the service device, which is then responsible for retransmitting the lost data. This results in a longer transmission link for the lost data (i.e., missing data) to be retransmitted, resulting in a longer delay for the terminal device to reacquire the missing data, thus affecting the transmission efficiency of the service data.

[0059] At the same time, because the transmission link for resending missing data is longer, uplink data retransmission requests and downlink resends of missing data are more likely to cause packet loss due to network uncertainty, which in turn leads to packet loss, further affecting the transmission efficiency of service data. Furthermore, all data retransmission requests are processed by the service device, which undoubtedly increases the load on the transmission network and the processing load on the service device.

[0060] The embodiments of the present application provide a data transmission method, apparatus, transmission equipment, terminal equipment, computer-readable storage medium and computer program product, which can improve the transmission efficiency of business data. The following describes exemplary applications of the transmission equipment and terminal equipment provided by the embodiments of the present application. The terminal equipment provided by the embodiments of the present application can be implemented as various types of user terminals such as laptop computers, tablet computers, desktop computers, set-top boxes, mobile devices, etc., and can also be implemented as servers. The transmission equipment provided by the embodiments of the present application can be implemented as various types of user terminals such as laptop computers, tablet computers, desktop computers, set-top boxes, mobile devices, etc., and can also be implemented as servers. Below, an exemplary application will be described when the terminal equipment is implemented as a terminal and the transmission equipment is implemented as a server.

[0061] Referring to Figure 2, Figure 2 is a schematic diagram of the architecture of the data transmission system provided in an embodiment of the present application. In order to support a data transmission application, in the data transmission system 100, the terminal (terminal 400-1 and terminal 400-2 are shown as examples) is connected to the server 200 via a network 300. The network 300 can be a wide area network or a local area network, or a combination of the two. In the data transmission system 100, a database 500 is also provided to provide data support to the server 200. Among them, the database 500 can be independent of the server 200, or it can be set in the server 200. Figure 2 shows the case where the database 500 is independent of the server 200.

[0062] Terminal 400-1 and terminal 400-2 are respectively used to perform integrity verification on business data and obtain verification results; when the verification results indicate that there is a missing business data, a data retransmission request is sent to server 200 through network 300; the target retransmission data returned by server 200 in response to the data retransmission request is received, and the target retransmission data is displayed on graphical interface 410-1 and graphical interface 410-2.

[0063] Server 200 is used to respond to the data retransmission request sent by terminal 400-1 and terminal 400-2 for business data, determine the data index corresponding to the data retransmission request; based on the data index, extract the target retransmission data corresponding to the data retransmission request from the data cache queue; and re-send the target retransmission data to terminal 400-1 and terminal 400-2 through network 300.

[0064] The embodiments of the present application can be implemented with the help of cloud technology. Cloud technology refers to a hosting technology that unifies a series of resources such as hardware, software, and network within a wide area network or a local area network to realize data calculation, storage, processing, and sharing.

[0065] Cloud computing is a general term for network technologies, information technology, integration technologies, management platforms, and application technologies used in the cloud computing business model. These technologies can form resource pools that are used on demand and are flexible and convenient. Cloud computing technology will become a crucial support. System backend services within technical networks require extensive computing and storage resources, which must be implemented through cloud computing.

[0066] Exemplarily, the server 200 may be an independent physical server, or a server cluster or distributed system composed 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 communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Terminals 400-1 and 400-2 may be smartphones, tablet computers, laptop computers, desktop computers, smart speakers, smart watches, smart home appliances, car terminals, etc., but are not limited thereto. The terminals and servers may be connected directly or indirectly via wired or wireless communications, which is not limited in the embodiments of the present application.

[0067] Referring to Figure 3, Figure 3 is a structural diagram of the server (an implementation of the transmission device) in Figure 2 provided in an embodiment of the present application. The server 200 shown in Figure 3 includes: at least one first processor 210, a first memory 250, and at least one first network interface 220. The server 200 optionally includes a first user interface 230. The various components in the server 200 are coupled together through a first bus system 240. It can be understood that the first bus system 240 is used to achieve connection and communication between these components. In addition to the data bus, the first bus system 240 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, various buses are labeled as the first bus system 240 in Figure 3.

[0068] The first processor 210 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0069] The first user interface 230 includes one or more first output devices 231 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The first user interface 230 also includes one or more first input devices 232 that include user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0070] The first memory 250 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. The first memory 250 may optionally include one or more storage devices physically located away from the first processor 210.

[0071] The first memory 250 includes a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), and the volatile memory may be a random access memory (RAM). The first memory 250 described in the embodiments of the present application is intended to include any suitable type of memory.

[0072] In some embodiments, the first memory 250 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0073] The first operating system 251 includes system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, and a driver layer, which are used to implement various basic services and process hardware-based tasks;

[0074] A first network communication module 252 for reaching other computing devices via one or more (wired or wireless) first network interfaces 220 , exemplary first network interfaces 220 including Bluetooth, WiFi, and USB;

[0075] a first presentation module 253 for enabling presentation of information (e.g., a user interface for operating peripheral devices and displaying content and information) via one or more first output devices 231 (e.g., a display screen, a speaker, etc.) associated with the first user interface 230;

[0076] The first input processing module 254 is configured to detect one or more user inputs or interactions from one of the one or more first input devices 232 and to translate the detected inputs or interactions.

[0077] In some embodiments, the data transmission device provided in the embodiments of the present application can be implemented in software. FIG3 shows a data transmission device 255 stored in the first memory 250. The data transmission device 255 can be software in the form of a program or plug-in, and includes the following software modules: an index determination module 2551, a data extraction module 2552, a first sending module 2553, a first receiving module 2554, and a cache processing module 2555. These modules are logical and can be arbitrarily combined or further separated according to the functions implemented. The functions of each module will be described below.

[0078] Referring to Figure 4, Figure 4 is a schematic diagram of the structure of the terminal (an implementation of the terminal device) in Figure 2 provided in an embodiment of the present application. The terminal 400 shown in Figure 4 includes: at least one second processor 410, a second memory 450, at least one second network interface 420 and a second user interface 430. The various components in the terminal 400 are coupled together through a second bus system 440. It can be understood that the second bus system 440 is used to achieve connection and communication between these components. In addition to the data bus, the second bus system 440 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, various buses are labeled as the second bus system 440 in Figure 4.

[0079] The second processor 410 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0080] The second user interface 430 includes one or more second output devices 431 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The second user interface 430 also includes one or more second input devices 432, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0081] The second memory 450 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. The second memory 450 may optionally include one or more storage devices physically located away from the second processor 410.

[0082] The second memory 450 includes a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory may be a read-only memory (ROM), and the volatile memory may be a random access memory (RAM). The second memory 450 described in the embodiments of the present application is intended to include any suitable type of memory.

[0083] In some embodiments, the second memory 450 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0084] The second operating system 451 includes system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, and a driver layer, which are used to implement various basic services and process hardware-based tasks;

[0085] A second network communication module 452 for reaching other computing devices via one or more (wired or wireless) second network interfaces 420 , exemplary of which include Bluetooth, WiFi, and USB;

[0086] a second presentation module 453 for enabling presentation of information (e.g., a user interface for operating peripheral devices and displaying content and information) via one or more second output devices 431 (e.g., a display screen, a speaker, etc.) associated with the second user interface 430;

[0087] The second input processing module 454 is configured to detect one or more user inputs or interactions from one of the one or more second input devices 432 and to translate the detected inputs or interactions.

[0088] In some embodiments, the data transmission device provided in the embodiments of the present application can be implemented in software. FIG4 shows a data transmission device 455 stored in the second memory 450. The data transmission device 455 can be software in the form of a program or plug-in, and includes the following software modules: a data verification module 4551, a second sending module 4552, and a second receiving module 4553. These modules are logical and can be arbitrarily combined or further separated according to the functions implemented. The functions of each module will be described below.

[0089] In other embodiments, the data transmission device 255 and the data transmission device 455 provided in the embodiments of the present application can be implemented in hardware. As an example, the data transmission device 255 and the data transmission device 455 provided in the embodiments of the present application can be processors in the form of hardware decoding processors, which are programmed to execute the data transmission method on the transmission device side and the data transmission method on the terminal device side provided in the embodiments of the present application. For example, the processor in the form of a hardware decoding processor can adopt one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs) or other electronic components.

[0090] In some embodiments, the transmission device or terminal device can implement the data transmission method provided in the embodiments of the present application by running a computer program. For example, the computer program can be a native program or software module in the operating system; it can be a local (Native) application (APP, Application), that is, a program that needs to be installed in the operating system to run, such as a short video APP or an instant messaging APP; it can also be a small program, that is, a program that can be run only by downloading it into a browser environment; it can also be a small program that can be embedded in any APP. In short, the above-mentioned computer program can be any form of application, module or plug-in.

[0091] The embodiments of the present application can be applied to data transmission scenarios such as video on demand and live broadcast. Below, the data transmission method provided by the embodiments of the present application will be described in conjunction with exemplary applications and implementations of the transmission device and terminal device provided by the embodiments of the present application.

[0092] Refer to Figure 5, which is a flowchart diagram of the data transmission method provided in an embodiment of the present application. The steps shown in Figure 5 will be described.

[0093] S101. The terminal device performs integrity check on the business data and obtains the check result.

[0094] The embodiment of the present application is implemented in a scenario where a terminal device pulls business data from a service device. More specifically, in the embodiment of the present application, the service device has already sent the business data to the terminal device in response to the data pull request sent by the terminal device. After obtaining the business data, the terminal device will perform an integrity check on the business data to determine whether packet loss occurs during the transmission of the business data, that is, to determine whether the obtained business data is missing. After completing the integrity check, the terminal device can obtain the verification result of the business data, and the verification result is used to characterize whether there is a missing business data.

[0095] It should be noted that the business data is sent by the service device in response to the data pull request of the terminal device. When the terminal device sends a data pull request to the service device, it will first send the data pull request to the transmission device, and then the transmission device will forward it to the service device. Correspondingly, when the service device sends business data to the terminal device, it will also send the business data to the transmission device, and the transmission device will forward it to the terminal device. That is to say, in the embodiment of the present application, the transmission device is used to "connect" the terminal device and the service device, and the transmission device can be a user plane device of the 5G core network or an edge server.

[0096] It is understood that the business data is associated with the specific business scenario of the embodiment of the present application. When the business scenario is a short video scenario, the business data is the relevant data of the short video, such as the video frame sequence of the short video; when the business scenario is a live broadcast scenario, the business data is the relevant data of the live broadcast, such as the interactive messages of the live broadcast (such as barrage, comments), the screen frames of the live broadcast, etc.

[0097] In some embodiments of the present application, the business data includes: a video frame sequence. In this case, S101 in Figure 5, that is, the terminal device performs an integrity check on the business data to obtain a check result, which can be achieved through the following processing: by performing continuity detection on the frame numbers of the video frames in the video frame sequence, completing the integrity check of the video frame sequence and obtaining a check result.

[0098] That is, after receiving a video frame sequence, the terminal device reads the frame numbers of each frame in the sequence and determines whether these frame numbers are continuous. If the frame numbers are continuous, the video frame sequence is complete, and a verification result indicating that there are no missing frames in the video frame sequence can be obtained. If the frame numbers are discontinuous, such as if there are breaks, the video frame sequence is incomplete and there are missing video frames. The terminal device can then obtain a verification result indicating that there are missing frames in the video frame sequence. In this way, the terminal device can complete the integrity check of the service data.

[0099] S102: When the verification result indicates that the service data is missing, the terminal device sends a data retransmission request to the transmission device.

[0100] After completing the integrity check of the business data, the terminal device will determine whether it needs to re-pull the business data based on the check result. When the check result indicates that the business data is missing, that is, the business data has been lost during the transmission process, the terminal device will not be able to display the business data to the user normally. At this time, the terminal device will generate a data retransmission request and send the data retransmission request to the transmission device. The transmission device receives the data retransmission request sent by the terminal device. When the check result indicates that the business data is not missing, that is, the business data has not been lost during the transmission process, the terminal device will not send a data retransmission request to the transmission device, but will display the business data to the user normally.

[0101] It should be noted that the data retransmission request may include the identification information of the terminal device, the identification information of the service device, and the identification information of the data to be retransmitted. The data to be retransmitted may be the entire service data or a missing portion of the service data already received by the terminal device, such as a missing video frame, a missing special effects screen, etc., which is not limited in this embodiment of the present application.

[0102] S103: The transmission device determines a data index corresponding to the data retransmission request in response to the data retransmission request sent by the terminal device for the service data.

[0103] After receiving the data retransmission request sent by the terminal device, the transmission device will respond to the data retransmission request, that is, determine a corresponding data index, which is used to find data that needs to be retransmitted to the terminal device.

[0104] The transmission device can determine the data index corresponding to the data retransmission request based on the identification information of the terminal device and the identification information of the service device. The transmission device can also determine the data index corresponding to the data retransmission request based on the identification information of the data to be retransmitted as needed. This embodiment of the present application does not limit this.

[0105] See Figure 6, which is a second flow chart of a data transmission method provided by an embodiment of the present application. In some embodiments of the present application, S103 in Figure 5, i.e., the transmission device responding to the data retransmission request sent by the terminal device for service data and determining the data index corresponding to the data retransmission request, can be implemented by the following processing:

[0106] S1031 . The transmission device responds to a data retransmission request sent by the terminal device for service data, parses the data retransmission request, and obtains identification information of the terminal device and identification information of the service device.

[0107] The transmission device parses the data retransmission request to extract the terminal device identification information and the service device identification information, wherein the terminal device identification information is used to provide the identity and address of the terminal device, and the service device identification information is used to provide the identity and address of the service device.

[0108] It should be noted that, in the embodiment of the present application, the identification information includes at least a routing address and a port number, wherein the routing address can be understood as an Internet Protocol (IP) address, and the port number identifies different applications used for communication on the device.

[0109] S1032: The transmission device determines the data index corresponding to the data retransmission request by using the identification information of the terminal device and the identification information of the service device.

[0110] After obtaining the terminal device's identification information and the service device's identification information, the transmission device processes the obtained identification information to obtain a data index corresponding to the data retransmission request. In some embodiments, the transmission device can directly concatenate the terminal device's identification information with the service device's identification information to obtain the data index for the data retransmission request. In other embodiments, the transmission device can also concatenate the terminal device's identification information and the service device's identification information to obtain a concatenated result, then hash-code the concatenated result to obtain an encoded result, and use the encoded result as the data index for the data retransmission request.

[0111] In other embodiments of the present application, S103 in Figure 5, that is, the transmission device determines the data index corresponding to the data retransmission request in response to the data retransmission request sent by the terminal device for business data, can be achieved by the following processing: determining the corresponding data pull request for the data retransmission request, and using the request identifier of the data pull request as the data index of the data retransmission request.

[0112] That is, the transmission device will first determine which data pull request returns the business data for which the data neutralization request is issued, that is, determine which data pull request the data retransmission request corresponds to, and then use the request identifier of the determined data pull request, such as the timestamp of the request, or the identifier of the request, as the data index of the data retransmission request to facilitate subsequent search for the business data corresponding to the data pull request.

[0113] S104: The transmission device extracts target retransmission data corresponding to the data retransmission request from the data cache queue based on the data index.

[0114] After obtaining the data index, the transmission device will use the data index to search for the corresponding data in the data cache queue, and extract the found data from the data cache queue to obtain the target retransmission data that needs to be returned to the terminal device. That is to say, in the embodiment of the present application, after receiving the data retransmission request and generating the corresponding data index, the transmission device will no longer forward the data retransmission request to the service device, and the service device will retransmit the data to the terminal device. Instead, it will use the data index to search for the corresponding data in the data cache queue of the transmission device itself, and re-send it to the terminal device. In this way, the missing data in the business data can be re-sent without relying on the remote service device, thereby shortening the transmission link of the missing data in the business data during retransmission.

[0115] It's important to note that the data cache queue is used to cache service data sent from the service device to the terminal device. That is, when the transmission device forwards service data sent by the service device to the terminal device, it also caches the service data, effectively "backing up" the service data using the data cache queue. This allows the transmission device to directly resend data after receiving a data resend request from the terminal device, rather than forwarding the request to the service device to trigger the data resend process.

[0116] It is understandable that the target retransmission data can be complete business data or missing data in the business data, that is, data where packet loss occurs. This embodiment of the present application does not limit this.

[0117] S105: The transmission device re-sends the target retransmission data to the terminal device.

[0118] After receiving the target retransmission data, the transmission device sends it to the terminal device via the network. The terminal device receives the target retransmission data returned by the transmission device in response to the data retransmission request. In this way, the terminal device can obtain complete service data and provide the service data to the user.

[0119] It can be understood that, compared with the related art, the transmission link of the missing data is longer when it is resent, resulting in a longer delay for the terminal device to reacquire the missing data, which ultimately leads to a low transmission efficiency of the business data. In the embodiment of the present application, after receiving the data retransmission request sent by the terminal device for the business data, the transmission device will determine the data index and obtain the data that needs to be resent to the terminal device in the data cache queue used to cache the business data sent by the service device to the terminal device through the data index, without having to obtain the data that needs to be resent from the remote service device. In this way, the transmission link of the missing data when it is resent can be shortened, thereby obtaining the missing data in the business data more quickly, and thus improving the transmission efficiency of the business data. At the same time, since the transmission link of the missing data is shortened when it is resent, the probability of packet loss of the data retransmission request and the missing data during retransmission can be reduced, thereby avoiding further affecting the transmission efficiency of the business data; in addition, transferring the data retransmission request to the transmission device side can decouple the service device from the data retransmission process, which can not only reduce the load of the transmission network (i.e., reduce the amount of requests sent to the service device), but also reduce the processing load of the service device.

[0120] Based on Figure 5, refer to Figure 7, which is a flowchart diagram of the data transmission method provided by an embodiment of the present application. In some embodiments of the present application, before S101 in Figure 5, that is, before the terminal device performs integrity verification on the service data and obtains the verification result, the method may also include the following processing:

[0121] S106: The terminal device generates a data pull request in response to the data pull operation for the business data.

[0122] The terminal device detects the user's data pulling operation on the graphical interface. When the terminal device detects the user's data pulling operation (such as refreshing the business data page, or starting the application corresponding to the business data), it will determine that the user needs to view the business data, and will use its own identification information to generate a message for data pulling, and use the identification information of the terminal device service device to encapsulate the message to obtain a data pulling request.

[0123] S107: The transmission device receives the data pull request sent by the terminal device, and forwards the data pull request to the service device.

[0124] After generating a data pull request, the terminal device sends it to the transmission device over the network. After receiving the data pull request from the terminal device, the transmission device forwards it to the service device over the network. In other words, the transmission device forwards the data pull request to the service device.

[0125] S108: The transmission device receives the data packet sent by the service device in response to the data pull request.

[0126] After receiving the data pull request, the service device (not shown in Figure 7) will obtain the corresponding business data and package the business data to obtain a data packet that is more convenient for transmission, and then return the data packet to the transmission device so that the data packet can be sent to the terminal device through the transmission device.

[0127] S109: The transmission device performs a type detection on the data in the data packet to obtain a detection result, and when the detection result indicates that the data in the data packet is service data, the transmission device backs up the service data to a data cache queue.

[0128] After receiving a data packet, the transmission device will perform a type detection on the data contained in the data packet, that is, determine whether the data packet contains business data (such as a video frame sequence of a short video, interactive data of a live broadcast, etc.) or other types of data (such as ordinary communication data). When the data contained in the data packet is business data, the transmission device will back up the business data, that is, write the business data to the data cache queue for storage. In this way, the business data can be retained on the transmission device side, thereby avoiding the need to re-acquire the business data from the service device side when the data is retransmitted.

[0129] In some embodiments of the present application, the transmission device in S109 in Figure 7 performs type detection on the data in the data packet to obtain a detection result, which can be achieved through the following processing: parsing the data type identifier from the data packet; completing the type detection of the data in the data packet by reading the data type identifier to obtain a detection result.

[0130] In other words, a data packet typically includes a data type identifier that indicates the type of data contained within it. This type identifier is written by the service device when the data packet is generated. After receiving the data packet, the transmission device can parse it to extract the data type identifier. By reading the data type identifier, the transmission device can determine the type of data contained within the packet, i.e., whether it is service data or other general data. This allows the transmission device to detect the data type within the packet and obtain a result indicating whether the data within the packet is service data.

[0131] In other embodiments of the present application, S109 in Figure 7, that is, the transmission device performs type detection on the data in the data packet to obtain a detection result, can also be achieved through the following processing: by parsing the compressed format of the data in the data packet, completing the type detection of the data in the data packet to obtain a detection result.

[0132] It should be noted that different types of data may have different compression formats. For example, the compression format of short videos is Moving Picture Experts Group-4 (MPEG-4), the audio format is Moving Picture Experts Group Audio Layer III (MP3), and web page data may be in HyperText Markup Language (HTML) format. Therefore, the transmission device can determine the type of data in the data packet based on the compression format of the data in the data packet, and thus obtain the detection result.

[0133] In an embodiment of the present application, after the transmission device obtains a data packet and determines that the data in the data packet is business data, it can directly write the business data into the data cache queue. However, in order to avoid excessive occupation of the storage space of the transmission device, the data cache queue usually has a certain capacity limit. At this time, when the detection result in S109 of Figure 7 indicates that the data in the data packet is business data, the business data is backed up to the data cache queue. This can be achieved by the following processing: when the detection result indicates that the data in the data packet is the business data, the transmission device performs a balance query on the data cache queue; when the query result indicates that the data cache queue has insufficient balance, the transmission device determines the data to be covered from the data cache queue; the transmission device uses the business data to cover the data to be covered, and completes the backup of the business data to the data cache queue.

[0134] That is, when backing up business data to the data cache queue, the transmission device first checks whether the data cache queue can continue to write business data, that is, checks whether the data cache queue is full. When the data cache queue is full, the transmission device determines the data to be overwritten from the data originally stored in the data cache queue, so that the data to be overwritten can be regarded as data that needs to be removed from the data cache queue. Then, the transmission device will use the business data to directly overwrite the data to be overwritten in the data cache queue. In this way, business data can be backed up to the data cache queue even if the data cache queue is insufficient.

[0135] It should be noted that the data to be overwritten can be any data in the data cache queue, or can be the data that enters the data cache queue earliest, which is not limited in the embodiment of the present application.

[0136] Of course, when the query result indicates that the data cache queue has sufficient remaining space, the transmission device can directly write the service data into the data cache queue without removing other data.

[0137] S110. The terminal device receives a data packet returned by the transmission device in response to a data pull request, and parses the data packet to obtain service data.

[0138] The transmission device forwards the data packet to the terminal device. After receiving the data packet returned by the transmission device, the terminal device parses the data packet to obtain the service data. At this point, the terminal device has obtained the service data so that the terminal device can provide the service data to the user.

[0139] It can be understood that in the embodiment of the present application, the transmission device uses a data cache queue to enable business data to be stored locally on the transmission device. In this way, when data retransmission is required, there is no need to obtain business data from the service device, which can shorten the transmission link when data is retransmitted.

[0140] The following describes an exemplary application of the embodiments of the present application in a practical application scenario.

[0141] The embodiment of the present application is applied to a video on demand scenario, that is, the user's 5G terminal (called a terminal device) pulls video data (called business data) of short videos (generally refers to videos with a duration less than a preset value, such as 5 minutes) from a streaming media server (called a service device) through a user-side device (called a transmission device) of the 5G core network.

[0142] FIG8 is a schematic diagram of the system framework for short video extraction provided by an embodiment of the present application. Referring to FIG8 , the system framework includes a 5G terminal 8-1, a 5G base station 8-2, a 5G core network 8-3, a network 8-4, and a streaming media server 8-5 in the cloud. The 5G core network 8-3 includes a control plane device and a user plane device (UPF, User Plane Function), wherein the 5G user plane device is used to implement the functions of video frame detection, video frame caching, and retransmission request detection and processing.

[0143] In other words, in the embodiment of the present application, three new functions are added to the user plane equipment of the 5G core network: video frame detection, video frame buffering, and retransmission request detection and processing. This ensures that when video frames are lost during transmission, they can be quickly retransmitted. These three functions are described below.

[0144] The video frame detection function is mainly responsible for detecting the downlink traffic sent by the streaming media server to the 5G terminal, that is, detecting whether the type of the downlink IP packet (called data packet) is a video frame (called business data).

[0145] The video frame cache function mainly caches video frame data in the corresponding value range memory according to the 5G terminal IP address + port number (collectively referred to as identification information) and the streaming server IP address + port number (called data index) when the IP packet type is a video frame. When the cached data entries exceed the set threshold, the oldest data (called the data to be overwritten) is overwritten with the new data to ensure the validity of the cached data.

[0146] The retransmission request detection and processing function is primarily responsible for detecting video frame retransmission requests (called data retransmission requests) sent uplink by 5G terminals. Upon detecting such a request, the corresponding cached data area (called the data cache queue) is searched using the 5G terminal's IP address + port number and the streaming server's IP address + port number as key values. The cached data area then searches for the video frame data corresponding to the retransmission request (called the target retransmission data) and sends it directly to the 5G terminal.

[0147] The following describes the detailed service processing flow of video on demand.

[0148] FIG9 is a schematic diagram of the video on demand service process flow provided by an embodiment of the present application. Referring to FIG9 , the process includes the following steps:

[0149] S201. The 5G terminal application applies to the streaming media server for obtaining the video stream through the 5G core network UPF.

[0150] S202. The streaming media server sends the IP packet of the video stream to the 5G core network UPF.

[0151] S203, the 5G core network UPF sends the IP packet to the internal video frame detection module.

[0152] S204: The video frame detection module detects whether the IP packet is a video frame. If it is, the video frame buffer module buffers the data of the IP packet.

[0153] S205 and the 5G core network UPF forward the IP packet to the 5G terminal application.

[0154] S206. In the event of video frame loss, the 5G terminal application sends a video frame retransmission request to the 5G core network UPF.

[0155] S207. The 5G core network UPF forwards the video frame retransmission request to the retransmission request detection and processing module.

[0156] S208: The retransmission request detection and processing module obtains the data index of the retransmission request and calls the video frame buffer module.

[0157] S209. The video frame buffer module obtains the video frame data that needs to be retransmitted and sends it to the 5G terminal application.

[0158] It should be noted that in the embodiment of the present application, the video frame caching function can also be deployed on the edge server, that is, the video frame is directed to the edge server for caching through the 5G core network UPF.

[0159] It is understandable that in the embodiments of the present application, when user information is involved, such as data pull requests, business data and other related data, when the embodiments of the present application are applied to specific products or technologies, user permission or consent must be obtained, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards.

[0160] The following further describes an exemplary structure of the data transmission device 255 provided in an embodiment of the present application implemented as a software module. In some embodiments, as shown in FIG3 , the software module stored in the data transmission device 255 of the first memory 250 may include:

[0161] An index determination module 2551 is configured to, in response to a data retransmission request sent by a terminal device for service data, determine a data index corresponding to the data retransmission request; wherein the service data is sent by a service device in response to a data pull request from the terminal device;

[0162] The data extraction module 2552 is configured to extract the target retransmission data corresponding to the data retransmission request from the data cache queue based on the data index; the data cache queue is used to cache the service data sent by the service device to the terminal device;

[0163] The first sending module 2553 is configured to resend the target retransmission data to the terminal device.

[0164] In some embodiments of the present application, the data transmission device 255 further includes: a first receiving module 2554 and a cache processing module 2555;

[0165] The first receiving module 2554 is configured to receive a data pull request sent by the terminal device; receive a data packet sent by the service device in response to the data pull request;

[0166] The cache processing module 2555 is configured to perform a type detection on the data in the data packet to obtain a detection result, and when the detection result indicates that the data in the data packet is the business data, back up the business data to the data cache queue;

[0167] The first sending module 2553 is further configured to forward the data pull request to the service device; and forward the data packet to the terminal device.

[0168] In some embodiments of the present application, the cache processing module 2555 is further configured to parse the data packet to obtain a data type identifier; complete type detection of the data in the data packet by reading the data type identifier to obtain the detection result; or complete type detection of the data in the data packet by performing compression format parsing on the data in the data packet to obtain the detection result.

[0169] In some embodiments of the present application, the index determination module 2551 is further configured to, in response to the data retransmission request sent by the terminal device for the business data, parse the data retransmission request to obtain the identification information of the terminal device and the identification information of the service device; and determine the data index corresponding to the data retransmission request using the identification information of the terminal device and the identification information of the service device; wherein the identification information includes at least a routing address and a port number.

[0170] In some embodiments of the present application, the index determination module 2551 is further configured to splice the identification information of the terminal device and the identification information of the service device to obtain the data index corresponding to the data retransmission request; or, to splice the identification information of the terminal device and the identification information of the service device to obtain a splicing result; perform hash encoding on the splicing result to obtain an encoding result, and determine the encoding result as the data index corresponding to the data retransmission request.

[0171] In some embodiments of the present application, the cache processing module 2555 is further configured to perform a balance query on the data cache queue when the detection result indicates that the data in the data packet is the business data; when the query result indicates that the balance of the data cache queue is insufficient, determine the data to be overwritten from the data cache queue; use the business data to overwrite the data to be overwritten, and complete the backup of the business data to the data cache queue.

[0172] The following further describes an exemplary structure of the data transmission device 455 provided in an embodiment of the present application implemented as a software module. In some embodiments, as shown in FIG4 , the software module stored in the data transmission device 455 of the second memory 450 may include:

[0173] The data verification module 4551 is configured to perform integrity verification on the business data and obtain a verification result; wherein the business data is sent by the service device in response to the data pull request;

[0174] The second sending module 4552 is configured to send a data retransmission request to the transmission device when the verification result indicates that the service data is missing;

[0175] The second receiving module 4553 is configured to receive the target retransmission data returned by the transmission device in response to the data retransmission request.

[0176] In some embodiments of the present application, the second sending module 4552 is further configured to generate a data pull request in response to a data pull operation on the business data; send the data pull request to a transmission device, and the transmission device is configured to forward the data pull request to the service device;

[0177] The second receiving module 4553 is further configured to receive the data packet returned by the transmission device in response to the data pull request, and parse the data packet to obtain the business data.

[0178] In some embodiments of the present application, the business data includes: a video frame sequence; the data verification module 4551 is also configured to complete the integrity verification of the video frame sequence by performing continuity detection on the frame numbers of the video frames in the video frame sequence to obtain the verification result.

[0179] An embodiment of the present application provides a computer program product, comprising a computer program or computer-executable instructions stored in a computer-readable storage medium. A first processor of a transmission device reads the computer-executable instructions from the computer-readable storage medium and executes the computer-executable instructions, causing the transmission device to perform the transmission device-side data transmission method described in the embodiment of the present application. A second processor of a terminal device reads the computer-executable instructions from the computer-readable storage medium and executes the computer-executable instructions, causing the terminal device to perform the terminal device-side data transmission method described in the embodiment of the present application.

[0180] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are stored. When the computer-executable instructions are executed by a first processor, the first processor will execute the data transmission method on the transmission device side provided by the embodiment of the present application. When the computer-executable instructions are executed by a second processor, the second processor will execute the data transmission method on the terminal device side provided by the embodiment of the present application.

[0181] In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface storage, optical disk, or CD-ROM; or various devices including one or any combination of the above memories.

[0182] In some embodiments, computer-executable instructions may be in the form of a program, software, software module, script, or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.

[0183] As an example, computer-executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file that stores other programs or data, such as in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinating files (e.g., files storing one or more modules, subroutines, or code portions).

[0184] As an example, computer-executable instructions may be deployed to be executed on one transmission device or terminal device, or on multiple transmission devices or multiple terminal devices located at one location, or on multiple transmission devices or multiple terminal devices distributed at multiple locations and interconnected by a communication network.

[0185] In summary, through the embodiments of the present application, the transmission link for missing data during retransmission can be shortened, thereby obtaining the missing data in the service data more quickly, thereby improving the transmission efficiency of the service data. At the same time, since the transmission link for missing data during retransmission is shortened, the probability of data retransmission requests and missing data being lost during retransmission can be reduced, thereby avoiding further impact on the transmission efficiency of the service data. In addition, transferring the data retransmission request to the transmission device side can decouple the service device from the data retransmission process, which can not only reduce the load on the transmission network, but also reduce the processing load on the service device.

[0186] The above description is merely an embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, and improvements made within the spirit and scope of the present application are included in the scope of protection of the present application.

Claims

1. A data transmission method, applied to a transmission device, the method comprising: In response to a data retransmission request sent by a terminal device for service data, determining a data index corresponding to the data retransmission request; wherein the service data is sent by a service device in response to a data pull request of the terminal device; Based on the data index, extracting the target retransmission data corresponding to the data retransmission request from the data cache queue; the data cache queue is used to cache the service data sent by the service device to the terminal device; The target resend data is resent to the terminal device.

2. The method according to claim 1, wherein: Before determining the data index corresponding to the data retransmission request in response to the data retransmission request sent by the terminal device for the service data, the method further includes: Receiving a data pull request sent by the terminal device, and forwarding the data pull request to the service device; Receiving a data packet sent by the service device in response to the data pull request; Performing a type detection on the data in the data packet to obtain a detection result, and when the detection result indicates that the data in the data packet is the service data, backing up the service data to the data cache queue; The data packet is forwarded to the terminal device.

3. The method according to claim 2, wherein: The performing type detection on the data in the data packet to obtain a detection result includes: Parsing the data packet to obtain a data type identifier; By reading the data type identifier, completing the type detection of the data in the data packet to obtain the detection result; or, By parsing the compressed format of the data in the data packet, the type of data in the data packet is detected to obtain a detection result.

4. The method according to any one of claims 1 to 3, wherein: The step of determining, in response to a data retransmission request sent by a terminal device for service data, a data index corresponding to the data retransmission request includes: In response to the data retransmission request sent by the terminal device for the service data, parsing the data retransmission request to obtain identification information of the terminal device and identification information of the service device; Determine the data index corresponding to the data resending request by using the identification information of the terminal device and the identification information of the service device; The identification information at least includes a routing address and a port number.

5. The method according to claim 4, wherein the step of determining the data index corresponding to the data retransmission request by using the identification information of the terminal device and the identification information of the service device comprises: Concatenate the identification information of the terminal device and the identification information of the service device to obtain a data index corresponding to the data resending request; or, splicing the identification information of the terminal device and the identification information of the service device to obtain a splicing result; The concatenation result is hash-encoded to obtain an encoding result, and the encoding result is determined as the data index corresponding to the data retransmission request.

6. The method according to claim 2 or 3, wherein: When the detection result indicates that the data in the data packet is the service data, backing up the service data to the data cache queue includes: When the detection result indicates that the data in the data packet is the service data, performing a remainder query on the data cache queue; When the query result indicates that the data cache queue has insufficient remaining space, determining data to be overwritten from the data cache queue; The data to be overwritten is overwritten with the business data to complete the backup of the business data to the data The data is in the cache queue.

7. A data transmission method, applied to a terminal device, the method comprising: Performing integrity check on the business data to obtain a check result; wherein the business data is sent by the service device in response to the data pull request; When the verification result indicates that the service data is missing, sending a data retransmission request to the transmission device; The target retransmission data returned by the transmission device in response to the data retransmission request is received.

8. The method according to claim 7, wherein: Before performing integrity check on the business data and obtaining the check result, the method further includes: In response to a data pulling operation on the business data, generating a data pulling request; Sending the data pull request to a transmission device, wherein the transmission device is used to forward the data pull request to the service device; Receive the data packet returned by the transmission device in response to the data pull request, and parse the data packet to obtain the business data.

9. The method according to claim 7 or 8, wherein: The service data includes: a video frame sequence; the integrity check is performed on the service data to obtain a check result, including: By performing continuity detection on the frame numbers of the video frames in the video frame sequence, the integrity check of the video frame sequence is completed to obtain the check result.

10. A data transmission device, comprising: An index determination module, configured to determine a data index corresponding to a data retransmission request sent by a terminal device for service data, in response to the data retransmission request sent by the terminal device; wherein the service data is sent by a service device in response to a data pull request of the terminal device; A data extraction module is configured to extract the target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index; the data cache queue is used to cache the service data sent by the service device to the terminal device; The first sending module is configured to resend the target resend data to the terminal device.

11. A data transmission device, comprising: A data verification module, configured to perform integrity verification on business data to obtain a verification result; wherein the business data is issued by the service device in response to a data pull request; A second sending module, configured to send a data resending request to a transmission device when the verification result indicates that the service data is missing; The second receiving module is configured to receive the target retransmission data returned by the transmission device in response to the data retransmission request.

12. A transmission device, comprising: A first memory for storing computer executable instructions; The first processor is configured to implement the data transmission method according to any one of claims 1 to 6 when executing the computer executable instructions stored in the first memory.

13. A terminal device, comprising: A second memory for storing computer executable instructions; The second processor is used to implement the data transmission method according to any one of claims 7 to 9 when executing the computer executable instructions stored in the second memory.

14. A computer-readable storage medium storing computer-executable instructions, wherein: The computer executable instructions implement the data transmission method described in any one of claims 1 to 6 when executed by the first processor, and implement the data transmission method described in any one of claims 7 to 9 when executed by the second processor.

15. A computer program product, comprising a computer program or computer executable instructions, wherein the computer program or computer executable instructions, when executed by a first processor, implements the data transmission method according to any one of claims 1 to 6, and when executed by a second processor, implements the data transmission method according to any one of claims 7 to 9.

Citation Information

Patent Citations

  • Data retransmission method and access network gateway in collaborative business transmission

    CN103944691A

  • File transmission method based on fusion transmission system

    CN110099087A

  • Data retransmission method, network equipment and computer readable storage medium

    CN113872916A

  • Data transmission method and device, equipment, storage medium and program product

    CN116600010A

  • Communication control device, communication control method, and non-transitory computer readable medium

    US20180278708A1