Data transmission method, device, transmission device, terminal device, and computer program

By using a data cache queue on the transmission device to directly retransmit missing data to the terminal device, the method addresses packet loss inefficiencies, improving data transmission speed and efficiency and reducing network load.

JP2025540743APending Publication Date: 2025-12-16TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025530788
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-17
Filing Date
2024-05-14
Publication Date
2025-12-16

AI Technical Summary

Technical Problem

In data transmission processes, packet loss leads to lengthy retransmission links, causing delays and inefficiencies due to the need for data to be retrieved from remote service devices, increasing network load and the risk of further packet loss.

Method used

Implementing a data transmission method that utilizes a data cache queue on the transmission device to store business data, allowing for direct retransmission of missing data to the terminal device based on determined data indices, thereby bypassing the need for retransmission from remote service devices.

Benefits of technology

This approach reduces the length of retransmission links, speeds up data retrieval, enhances transmission efficiency, and decreases the likelihood of further packet loss, while also reducing the load on service equipment and network resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025540743000001_ABST
    Figure 2025540743000001_ABST
Patent Text Reader

Abstract

The present application provides a data transmission method, apparatus, device, storage medium, and program product, and embodiments of the present application can be applied to data transmission scenarios such as video on demand and live streaming. The method includes the steps of: responding to a data retransmission request sent by a terminal device for business data, and determining a data index associated with the data retransmission request, where the business data is sent by a service device in response to the data pull request of the terminal device; extracting and obtaining target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, where the data cache queue is used to cache the business data sent by the service device to the terminal device; and re-sending the target retransmission data to the terminal device.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application is based on and claims priority from a Chinese patent application having application number 202310874828.9 and filing date July 17, 2023, the entire contents of which are hereby incorporated by reference into this application.

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

[0003] In the data transmission process, packet loss may occur for various reasons. To solve the problem of packet loss, in the related art, after detecting packet loss, a terminal device generates a data retransmission request, and sends the data retransmission request to a service device through a transmission device. After receiving the request, the service device retransmits the data required by the terminal device according to the requirements of the request. As can be seen from this, when packet loss occurs, the transmission link for retransmitting the lost data is relatively long, so that the terminal device needs a relatively long delay to re-acquire the lost data in the service data, which affects the transmission efficiency of the service data. Summary of the Invention [Means for solving the problem]

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

[0005] The technical solutions of the embodiments of the present application are realized as follows:

[0006] An embodiment of the present application provides a data transmission method, which is applied to a transmission device, a step of determining a data index associated with a data retransmission request transmitted by a terminal device for business data, the business data being transmitted by a service device in response to a data pull request from the terminal device; a step of extracting and obtaining target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, the data cache queue being used to cache business data transmitted by the service device to the terminal device; and a step of retransmitting the target retransmission data to the terminal device.

[0007] An embodiment of the present application provides a data transmission method, which is applied to a terminal device, performing an integrity check on business data and obtaining a check result, wherein the business data is transmitted by a service device in response to a data pull request; sending a data retransmission request to a transmission device when the check result indicates that there is a missing part in the business data; receiving target retransmission data fed back by the transmission device with the data retransmission request as the target.

[0008] An embodiment of the present application provides a data transmission device, an index determination module configured to determine a data index associated with a data retransmission request transmitted by a terminal device for business data, the data retransmission request being transmitted by a service device in response to a data pull request from the terminal device; a data extraction module configured to extract and obtain target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, the data cache queue being used to cache business data transmitted by the service device to the terminal device; and a first transmitting module configured to retransmit the target retransmission data to the terminal device.

[0009] An embodiment of the present application provides a data transmission device, a data check module configured to perform an integrity check on business data and obtain a check result, wherein the business data is transmitted by a service device in response to a data pull request; a second transmission module configured to transmit a data retransmission request to a transmission device when the check result indicates that there is a gap in the business data; and a second receiving module configured to receive target retransmission data fed back by the transmission device with the data retransmission request as the target.

[0010] An embodiment of the present application provides a transmission device, a first memory adapted to store computer-executable instructions; and a first processor, which is used to implement the data transmission method on the transmission device side provided by the embodiments of the present application when executing the computer-executable instructions stored in the first memory.

[0011] An embodiment of the present application provides a terminal device, a second memory adapted to store computer-executable instructions; and a second processor, which is used to implement the terminal device-side data transmission method provided by the embodiments of the present application when executing the computer-executable instructions stored in the second memory.

[0012] An embodiment of the present application provides a computer-readable storage medium having computer-executable instructions stored thereon, which, when executed by a first processor, is used to realize the data transmission method on the transmission device side provided by the embodiment of the present application, or, when executed by a second processor, is used to realize the data transmission method on the terminal device side provided by the embodiment of the present application.

[0013] An embodiment of the present application provides a computer-readable storage medium having stored thereon computer-executable instructions, which, when executed by a first processor, realize a data transmission method on a transmission device side provided by an embodiment of the present application, and, when executed by a second processor, realize a data transmission method on a terminal device side provided by an embodiment of the present application.

[0014] The embodiments of the present application have the following advantageous effects: after receiving a data retransmission request sent by a terminal device for business data, the transmission device determines a data index and, using the data index, obtains the data that needs to be retransmitted to the terminal device from a data cache queue used to cache business data sent by a service device to the terminal device. That is, when the transmission device transfers business data sent by the service device to the terminal device, it also caches the business data, i.e., it uses the data cache queue to "back up" the business data. In this way, after receiving a data retransmission request from the terminal device, the transmission device does not need to forward the data retransmission request to the service device to trigger the data retransmission process. That is, it does not need to obtain the data that needs to be retransmitted from a remote service device, but directly realizes the data retransmission. In this way, the transmission link when retransmitting missing data can be shortened, and the missing data in the business data can be retrieved more quickly, thereby improving the transmission efficiency and stability of business data. [Brief explanation of the drawings]

[0015] [Figure 1]This is a processing process after packet loss occurs in the related art. [Figure 2] FIG. 1 is a schematic diagram of the architecture of a data transmission system provided by an embodiment of the present application. [Figure 3] FIG. 3 is a structural schematic diagram of the server in FIG. 2 provided by an embodiment of the present application; [Figure 4] FIG. 3 is a structural schematic diagram of the terminal in FIG. 2 provided by an embodiment of the present application; [Figure 5] 1 is a process diagram 1 of a data transmission method provided by an embodiment of the present application. [Figure 6] 2 is a process diagram 2 of a data transmission method provided by an embodiment of the present application. [Figure 7] 3 is a process diagram 3 of a data transmission method provided by an embodiment of the present application. [Figure 8] FIG. 1 is a schematic diagram of a system framework for short video pulling provided by an embodiment of the present application. [Figure 9] FIG. 1 is a process diagram of a video-on-demand business process provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE INVENTION

[0016] In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be described in more detail below in conjunction with the drawings. The described embodiments should not be considered as limiting the present application, and all other embodiments obtained by those skilled in the art without any creative work fall within the scope of protection of the present application.

[0017] In the following description, reference to "some embodiments" describes a subset of all possible embodiments, but it will be understood that "some embodiments" may be the same or different subsets of all possible embodiments and may be combined with each other if they do not conflict.

[0018] In the following description, such terms "first / second" are used merely to distinguish between similar objects and do not represent a particular sorting of the objects; it will be understood that "first / second" can be used interchangeably to refer to a particular order or order before or after, where permitted, and that the embodiments of the present application described herein can be implemented in orders other than those illustrated or described herein.

[0019] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program having a certain function, which operates together with other related parts to achieve a certain goal, and can be fully or partially realized using software, hardware (e.g., processing circuitry or memory), or a combination thereof. Similarly, one processor (or multiple processors or memory) can be used to realize one or multiple modules or units. Furthermore, each module or unit may be part of the entire module or unit that includes the module or unit function.

[0020] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art. The terms used herein are for the purpose of describing the examples of the present application only and are not intended to be limiting of the present application.

[0021] Before describing the embodiments of the present application in more detail, the nouns and terms related to the embodiments of the present application will be explained, and the nouns and terms related to the embodiments of the present application will be interpreted as follows.

[0022] 1) Packet loss refers to the phenomenon that data packets are lost during network transmission due to various reasons, such as network congestion, data packets traveling too far, and network signal interference.

[0023] 2) The data index is index information used to search for data in the data cache queue, and there is a mapping relationship between the data index and the data cached in the data cache queue, which can be used to obtain the corresponding cache data from the data cache queue.

[0024] 3) The term "responsive" is used to indicate a condition or state on which the performed operation depends, and when the dependent condition or state is met, the performed operation or operations may be in real time or may have a set delay, and unless otherwise specified, there is no restriction on the order of execution of the performed operations.

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

[0026] 5) Service device refers to a device that provides data services in a data transmission link, which is a device on the cloud side that receives data uploaded by different users, processes this data, and then provides the processed data to users when required by them, such as a short video server on the cloud side and a game background server.

[0027] 6) Transmission equipment refers to equipment located between service equipment and terminal equipment in a data transmission link, and is used to connect the terminal equipment and service equipment to realize specific business functions. For example, when a terminal equipment accesses a website, the transmission equipment is responsible for establishing a connection between the terminal equipment and the background service equipment of the website.

[0028] 7) Hash coding is a method for creating a small digital "fingerprint" from any type of data. It converts the input data (such as strings and numbers) into a fixed-length string, usually consisting of numbers and / or letters, using a specific function (hash function).

[0029] In the data transmission process, packet loss may occur for various reasons. For example, in a video-on-demand scenario, when a terminal device performs on-demand short video, network congestion may occur due to excessive user traffic, busy work, etc., which may result in packet loss. In this way, video frames of the short video may be lost, and the terminal device may not be able to play the short video normally.

[0030] In order to solve the problem of packet loss, in the related technology, after detecting packet loss, the terminal equipment generates a data retransmission request, and sends the data retransmission request to the service equipment via the transmission equipment. After receiving the request, the service equipment retransmits the data requested by the terminal equipment according to the requirements of the request.

[0031] 1 illustrates a processing process after packet loss occurs in the related art. When packet loss occurs in a video frame of a short video, a user's 5G (5th Generation Mobile Communication Technology) terminal 1-1 (referred to as terminal equipment) generates a data frame retransmission request and sends it to a radio base station 1-2, which then reaches a user plane device 1-31 of a 5G core network (a 5G core network further includes a control plane device 1-32, which may also be referred to as transmission equipment). The user plane device of the 5G core network then forwards the request to a wired network 1-4 and finally to a streaming media server 1-5 (referred to as service equipment) that provides video-on-demand. The streaming media server 1-5 retransmits the video frame requested by the 5G terminal 1-1 according to the requirements of the data frame retransmission request, and the video frame is fed back to the 5G terminal 1-1 according to the original route.

[0032] As can be seen from this, when a packet loss occurs, the data retransmission request sent by the terminal device needs to be transmitted to the service device via the wireless network and the wired network, and the service device is responsible for retransmitting the packet loss data. In this way, the transmission link when retransmitting the packet loss data, i.e., the missing data, becomes relatively long, and as a result, the terminal device needs a relatively long delay to re-acquire the missing data in the service data, which affects the transmission efficiency of the service data.

[0033] At the same time, because the transmission link when retransmitting the lost data is relatively long, the upstream data retransmission request and the retransmitted downstream lost data are likely to cause packet loss due to network uncertainty, i.e., the packet loss phenomenon occurs again, which further affects the transmission efficiency of business data. In addition, since the data retransmission request is all processed by the service equipment, it will undoubtedly increase the load on the transmission network and the processing load on the service equipment.

[0034] Embodiments of the present application provide a data transmission method, apparatus, transmission device, terminal device, computer-readable storage medium, and computer program product, which can improve business data transmission efficiency. Hereinafter, exemplary applications of the transmission device and terminal device provided by the embodiments of the present application will be described. The terminal device provided by the embodiments of the present application may be implemented as various types of user terminals such as laptops, tablet PCs, desktop computers, set-top boxes, and mobile devices, or may be implemented as a server. The transmission device provided by the embodiments of the present application may be implemented as various types of user terminals such as laptops, tablet PCs, desktop computers, set-top boxes, and mobile devices, or may be implemented as a server. Hereinafter, exemplary applications when the terminal device is implemented as a terminal and the transmission device is implemented as a server will be described.

[0035] Referring to FIG. 2, FIG. 2 is a schematic diagram of the architecture of a data transmission system provided by an embodiment of the present application. To support a data transmission application, in the data transmission system 100, terminals (terminal 400-1 and terminal 400-2 are shown as examples) are connected to a server 200 via a network 300, which may be a wide area network, a local area network, or a combination of both. In the data transmission system 100, a database 500 is further installed, which is used to provide data support to the server 200. Here, the database 500 may be independent of the server 200 or may be installed within the server 200. FIG. 2 shows the case where the database 500 is independent of the server 200.

[0036] Terminal 400-1 and terminal 400-2 are each used to perform an integrity check on business data and obtain the check results. When the check results indicate that there is a gap in the business data, they send a data retransmission request to server 200 via network 300, receive target retransmission data fed back by server 200 with the data retransmission request as the target, and display the target retransmission data on graphics interface 410-1 and graphics interface 410-2.

[0037] In response to data retransmission requests sent by terminals 400-1 and 400-2 for business data, server 200 determines a data index associated with the data retransmission request, and based on the data index, extracts target retransmission data corresponding to the data retransmission request from the data cache queue, which is used to re-transmit the target retransmission data to terminals 400-1 and 400-2 via network 300.

[0038] The embodiments of the present application can be realized by relying on cloud technology, which refers to a type of hosting technology that unifies a set of resources such as hardware, software, and networks in a wide area network or a local area network to realize computing, storage, processing, and sharing of data.

[0039] Cloud computing is a collective term for network technologies, information technologies, integration technologies, management platforms, and application technologies applied under the cloud computing business model, which can form a resource pool and be used as needed, flexibly and conveniently. Cloud computing technology is an important support. System background services in technology networks require large amounts of computing and storage resources and must be realized through cloud computing.

[0040] For example, the server 200 may be an independent physical server, a server cluster or a distributed system consisting of multiple physical servers, or a cloud server providing 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, a CDN (Content Delivery Network), and big data and artificial intelligence platforms. The terminals 400-1 and 400-2 may be, but are not limited to, smartphones, tablet PCs, laptops, desktop computers, smart speakers, smart watches, smart home appliances, and in-vehicle terminals. The terminals and the server may be directly or indirectly connected via wired or wireless communication, and this is not a limitation in the embodiments of the present application.

[0041] Referring to FIG. 3, FIG. 3 is a structural schematic diagram of the server (one type of implementation of a transmission device) in FIG. 2 provided by an embodiment of the present application. The server 200 shown in FIG. 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. Each component in the server 200 is coupled together by a first bus system 240. As can be understood, the first bus system 240 is used to realize communication between these components. In addition to a data bus, the first bus system 240 also includes a power bus, a control bus, and a status signal bus. However, for clarity, all of the various buses in FIG. 3 will be referred to as the first bus system 240.

[0042] The first processor 210 may be a type of integrated circuit chip, having signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc., where the general-purpose processor may be a microprocessor, or any common processor, etc.

[0043] The first user interface 230 includes one or more first output devices 231 capable of presenting media content, including one or more speakers and / or one or more visual display screens. The first user interface 230 further includes one or more first input devices 232, including user interface members that contribute to user input, such as a keyboard, mouse, microphone, touchscreen display screen, camera, other input buttons, and control members.

[0044] 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 optionally includes one or more storage devices that are physically located remotely from the first processor 210.

[0045] The first memory 250 may include volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The nonvolatile memory may be read-only memory (ROM), and the volatile memory may be random access memory (RAM). The first memory 250 described in the embodiments herein is intended to include any suitable type of memory.

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

[0047] The first operating system 251 includes system programs used to process various basic system services and perform hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., which are used to realize various basic services and process hardware-based tasks.

[0048] The first network communication module 252 is used to reach other computing devices via one or more (wired or wireless) first network interfaces 220, example first network interfaces 220 include Bluetooth, Wireless Fidelity (WiFi), and Universal Serial Bus (USB), etc.

[0049] The first presentation module 253 is used to present information via one or more first output devices 231 (e.g., a display screen, a speaker, etc.) associated with the first user interface 230 (e.g., a user interface used to operate peripheral devices and display content and information).

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

[0051] In some embodiments, the data transmission device provided by the embodiments of the present application can be realized using a software method. Figure 3 shows a data transmission device 255 stored in a first memory 250, which can be software in the form of a program, plug-in, etc., and includes 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 therefore be arbitrarily combined or further divided based on the realized functions. The functions of each module are described below.

[0052] Referring to FIG. 4, FIG. 4 is a structural schematic diagram of the terminal (one type of terminal device) in FIG. 2 provided by an embodiment of the present application. The terminal 400 shown in FIG. 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 components in the terminal 400 are coupled together by a second bus system 440. As can be understood, the second bus system 440 is used to realize communication between these components. In addition to a data bus, the second bus system 440 also includes a power bus, a control bus, and a status signal bus. However, for clarity, all of the various buses in FIG. 4 will be referred to as the second bus system 440.

[0053] The second processor 410 may be a type of integrated circuit chip, having signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc., where the general-purpose processor may be a microprocessor, or any common processor, etc.

[0054] The second user interface 430 includes one or more second output devices 431 capable of presenting media content, including one or more speakers and / or one or more visual display screens. The second user interface 430 further includes one or more second input devices 432, including user interface members that contribute user input, such as a keyboard, mouse, microphone, touchscreen display screen, camera, other input buttons, and control members.

[0055] 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 optionally includes one or more storage devices that are physically located remotely from the second processor 410.

[0056] The second memory 450 may include volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. Nonvolatile memory may be read-only memory (ROM), and volatile memory may be random access memory (RAM). The second memory 450 described in the embodiments herein is intended to include any suitable type of memory.

[0057] 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 illustratively described below.

[0058] The second operating system 451 includes system programs used to process various basic system services and perform hardware-related tasks, such as a framework layer, a core library layer, and a driver layer, which are used to realize various basic services and process hardware-based tasks.

[0059] The second network communication module 452 is used to reach other computing devices via one or more (wired or wireless) second network interfaces 420, example second network interfaces 420 include Bluetooth, Wireless Fidelity (WiFi), Universal Serial Bus (USB), etc.

[0060] The second presentation module 453 is used to present information via one or more second output devices 431 (e.g., a display screen, a speaker, etc.) associated with the second user interface 430 (e.g., a user interface used to operate peripheral devices and display content and information).

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

[0062] In some embodiments, the data transmission device provided by the embodiments of the present application can be realized using a software method. Figure 4 shows a data transmission device 455 stored in a second memory 450, which can be software in the form of a program, plug-in, etc., and includes software modules: a data check module 4551, a second sending module 4552, and a second receiving module 4553. These modules are logical and can therefore be arbitrarily combined or further divided based on the realized functions. The functions of each module are described below.

[0063] In some other embodiments, the data transmission device 255 and the data transmission device 455 provided by the embodiments of the present application may be implemented using a hardware system. For example, the data transmission device 255 and the data transmission device 455 provided by the embodiments of the present application may be a processor using a hardware decode processor format, which is programmed to execute the data transmission method on the transmission device side and the data transmission method on the terminal device side provided by the embodiments of the present application. For example, the processor in the form of a hardware decode processor may use 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.

[0064] In some embodiments, a transmission device or a terminal device can implement the data transmission method provided by the embodiments of the present application by running a computer program. For example, the computer program may be a native program or software module in an operating system, a local application program (APP, Application), i.e., a program that needs to be installed in an operating system to operate, such as a short video APP or an instant messaging APP, an applet, i.e., a program that can be operated simply by downloading it to a browser environment, or an applet that can be embedded in any APP. In short, the computer program may be any type of application program, module, or plug-in.

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

[0066] Please refer to FIG. 5, which is a process diagram 1 of a data transmission method provided by an embodiment of the present application, which will be explained in conjunction with the steps shown in FIG.

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

[0068] The present embodiment is implemented in a scenario where a terminal device pulls business data from a service device. More specifically, in the present embodiment, the service device transmits business data to the terminal device in response to a data pull request previously sent by the terminal device. After receiving the business data, the terminal device performs an integrity check on the business data to determine whether packet loss occurs during the transmission of the business data, i.e., to determine whether there are gaps in the received business data. After completing the integrity check, the terminal device obtains the check result of the business data, which is used to indicate whether there are gaps in the business data.

[0069] It should be noted that the business data is transmitted by the service equipment in response to a data pull request from the terminal equipment. When the terminal equipment transmits a data pull request to the service equipment, it first transmits the data pull request to the transmission equipment, which then forwards it to the service equipment. Correspondingly, when the service equipment transmits business data to the terminal equipment, it transmits the business data to the transmission equipment, which then forwards it to the terminal equipment. That is, in the embodiments of the present application, the transmission equipment is used to "connect" the terminal equipment and the service equipment, and the transmission equipment may be a user plane device or an edge server of a 5G core network.

[0070] As can be understood, the business data is associated with a business scene to which the embodiments of the present application are specifically applied. When the business scene is a short video scene, the business data is related data of the short video, such as a video frame sequence of the short video. When the business scene is a live streaming scene, the business data is related data of the live streaming, such as interaction messages (e.g., barrages and comments) of the live streaming and screen frames of the live streaming.

[0071] In some embodiments of the present application, the business data includes a video frame sequence. In this case, in FIG. 5, S101, i.e., the terminal device performs an integrity check on the business data and obtains the check result, can be realized by performing continuity detection on the frame numbers of the video frames in the video frame sequence, thereby completing the integrity check on the video frame sequence and obtaining the check result.

[0072] That is, after receiving a video frame sequence, the terminal device reads the frame number of each video frame in the video frame sequence and determines whether these frame numbers are consecutive. If the frame numbers are consecutive, it means that the video frame sequence is complete, and thus a check result can be obtained indicating that there are no gaps in the video frame sequence. If the frame numbers are not consecutive, for example, there is a break, it means that the video frame sequence is not complete and there are missing video frames, and the terminal device can obtain a check result indicating that there are gaps in the video frame sequence. In this way, the terminal device can complete the integrity check for the business data.

[0073] S102: If the check result indicates that there is a gap in the business data, the terminal device transmits a data retransmission request to the transmission device.

[0074] After completing the integrity check on the business data, the terminal device determines whether it needs to re-pull the business data based on the check result. If the check result indicates that there are gaps in the business data, i.e., packet loss occurs during the business data transmission process, the terminal device cannot properly display the business data to the user. In this case, the terminal device generates a data retransmission request and sends the data retransmission request to the transmission device, and the transmission device receives the data retransmission request sent by the terminal device. If the check result indicates that there are no gaps in the business data, i.e., no packet loss occurs during the business data transmission process, the terminal device does not send a data retransmission request to the transmission device and properly displays the business data to the user.

[0075] It should be noted that the data retransmission request may include identification information of the terminal device, identification information of the service device, and identification information of the data that needs to be retransmitted, where the data that needs to be retransmitted may be the entire business data or a missing part of the business data that the terminal device has already received, such as a missing video frame, a missing special effect screen, etc., and the embodiments of the present application are not limited thereto.

[0076] S103: In response to a data retransmission request transmitted by the terminal device for business data, the transmission device determines a data index associated with the data retransmission request.

[0077] After receiving the data retransmission request sent by the terminal device, the transmission device will respond to the data retransmission request, i.e., determine the corresponding data index, which is used to search for the data that needs to be retransmitted to the terminal device.

[0078] The transmission equipment can determine a data index associated with a data retransmission request based on the identification information of the terminal equipment and the identification information of the service equipment, and the transmission equipment can also determine a data index associated with a data retransmission request based on the identification information of the data that needs to be retransmitted, and the embodiments of the present application are not limited here.

[0079] Referring to Fig. 6, Fig. 6 is a process diagram 2 of a data transmission method provided by an embodiment of the present application. In some embodiments of the present application, S103 in Fig. 5, that is, the transmission device responding to a data retransmission request transmitted by a terminal device for business data and determining a data index associated with the data retransmission request, can be realized by the following process.

[0080] S1031: The transmission device responds to a data retransmission request transmitted by the terminal device for business data, analyzes the data retransmission request, and obtains identification information of the terminal device and identification information of the service device.

[0081] The transmitting device analyzes the data retransmission request to extract and obtain the terminal device identification information and the service device identification information therefrom, where 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.

[0082] It should be noted that in the present embodiment, the identification information includes at least a routing address and a port number, where the routing address can be understood as an Internet Protocol (IP) address, and the port number identifies different application programs used to perform communication in the device.

[0083] S1032: The transmission device determines a data index associated with the data retransmission request using the identification information of the terminal device and the identification information of the service device.

[0084] After obtaining the identification information of the terminal device and the identification information of the service device, 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 directly concatenates the identification information of the terminal device and the identification information of the service device to obtain the data index of the data retransmission request. In other embodiments, the transmission device can concatenate the identification information of the terminal device and the identification information of the service device to obtain the concatenated result, and further perform hash coding on the concatenated result to obtain the coded result, and the coded result can be used as the data index of the data retransmission request.

[0085] In some other embodiments of the present application, in FIG. 5, S103, i.e., the transmission device responding to a data retransmission request transmitted by a terminal device for business data and determining a data index associated with the data retransmission request, can be realized by a process of determining a corresponding data pull request for the data retransmission request and setting the request identifier of the data pull request as the data index of the data retransmission request.

[0086] That is, the transmission device first determines which data pull request has fed back the business data for which the data retransmission request is issued, i.e., determines which data pull request the data retransmission request corresponds to, and then uses the request identifier of the determined data pull request, such as the request timestamp or the request identifier, as the data index of the data retransmission request, thereby subsequently searching for the business data corresponding to the data pull request.

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

[0088] After obtaining the data index, the transmitting device uses the data index to search for corresponding data in the data cache queue, and extracts the searched data from the data cache queue to obtain the target retransmission data that needs to be fed back to the terminal device. That is, in this embodiment, after receiving a data retransmission request and generating a corresponding data index, the transmitting device does not forward the data retransmission request to the service device and have the service device retransmit the data to the terminal device, but instead relies on the data index to search for corresponding data in its own data cache queue and retransmit it to the terminal device. In this way, it is possible to retransmit missing data in business data without relying on a remote service device, thereby shortening the transmission link when retransmitting missing data in business data.

[0089] It is worth noting that the data cache queue is used to cache the business data sent by the service device to the terminal device. That is, when the transmission device transfers the business data sent by the service device to the terminal device, it also caches the business data, that is, it uses the data cache queue to "back up" the business data. In this way, after receiving a data retransmission request from the terminal device, the transmission device does not need to transfer the data retransmission request to the service device to trigger the data retransmission process, and the transmission device directly realizes the data retransmission.

[0090] As can be understood, the target retransmission data may be complete business data or missing data in the business data, i.e., data that causes packet loss, and the embodiments of the present application are not limited thereto.

[0091] S105: The transmission device transmits the target retransmission data to the terminal device again.

[0092] After obtaining the target retransmission data, the transmission device transmits the target retransmission data to the terminal device via the network, and the terminal device receives the target retransmission data fed back by the transmission device for the data retransmission request, so that the terminal device can obtain complete business data and provide the business data to the user.

[0093] As can be seen, in the related art, the transmission link when retransmitting missing data is relatively long, and as a result, the terminal device needs a relatively long delay to re-acquire the missing data, ultimately resulting in low transmission efficiency of business data. In contrast, in the embodiments of the present application, after receiving a data retransmission request sent by the terminal device for business data, the transmission device determines a data index, and uses the data index to obtain the data that needs to be re-transmitted to the terminal device in the data cache queue used to cache the business data sent by the service device to the terminal device. There is no need to obtain the data that needs to be re-transmitted from the remote service device. In this way, the transmission link when retransmitting missing data can be shortened, and the missing data in the business data can be obtained more quickly, thereby improving the transmission efficiency of business data. At the same time, since the transmission link is shortened when retransmitting missing data, the probability of data retransmission requests and packet loss when retransmitting missing data can be reduced, thereby further avoiding affecting the transmission efficiency of business data. In addition, by shifting and realizing the data retransmission request to the transmission equipment side, the service equipment and the data retransmission process can be decoupled, which not only reduces the load on the transmission network (i.e., reduces the amount of requests sent to the service equipment), but also reduces the processing load on the service equipment.

[0094] Based on Fig. 5 and referring to Fig. 7, Fig. 7 is a process diagram 3 of a data transmission method provided by an embodiment of the present application. In some embodiments of the present application, before S101 in Fig. 5, i.e., before the terminal device performs an integrity check on the business data and obtains the check result, the method may further include the following process:

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

[0096] The terminal device detects the user's data pull operation on the graphics interface as a target. When the terminal device detects the user's data pull operation (for example, refreshing a page of business data or launching an application program associated with the business data), it determines that the user needs to check the business data, uses its own identification information to generate a message used for performing the data pull, and uses the identification information of the terminal device and the service device to encapsulate the message to obtain a data pull request.

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

[0098] After generating a data pull request, the terminal device will transmit the data pull request to the transmission device via the network. After receiving the data pull request sent by the terminal device, the transmission device will continuously forward the data pull request to the service device via the network. That is, the transmission device is used to forward the data pull request to the service device.

[0099] S108: The transmission device receives the data packet transmitted by the service device with the data pull request as the target.

[0100] After receiving the data pull request, the service equipment (not shown in FIG. 7) obtains the corresponding business data and packages the business data to obtain a data packet that is more convenient for transmission, and then feeds the data packet back to the transmission equipment, which then transmits the data packet to the terminal equipment.

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

[0102] After receiving a data packet, the transmission device performs type detection on the data included in the data packet, i.e., determines whether the data packet contains business data (e.g., a video frame sequence of a short video, interaction data of a live broadcast, etc.) or other types of data (e.g., ordinary communication data). If the data included in the data packet is business data, the transmission device backs up the business data, i.e., writes and stores the business data in a data cache queue. In this way, the business data can be reserved on the transmission device side, thereby avoiding the need to re-obtain the business data from the service device side when retransmitting the data.

[0103] In some embodiments of the present application, in FIG. 7, the transmitting device in S109 performs type detection on the data in the data packet and obtains the detection result by analyzing and obtaining a data type identifier from the data packet, and reading the data type identifier to complete type detection on the data in the data packet and obtain the detection result.

[0104] That is, a data type identifier is usually set in a data packet, which is used to indicate the type information of the data contained in the data packet. The data type identifier is written when the service device generates the data packet. After receiving the data packet, the transmission device can analyze the data packet to extract the data type identifier therefrom. Then, by reading the data type identifier, it can determine the type of the data in the data packet, i.e., whether the data is business data or other common data. In this way, the transmission device can complete type detection for the data in the data packet and thereby obtain a detection result that can be used to indicate whether the data in the data packet is business data.

[0105] In some other embodiments of the present application, in FIG. 7, S109, i.e., the transmitting device performs type detection on the data in the data packet and obtains the detection result, can be further realized by performing compression format analysis on the data in the data packet to complete type detection on the data in the data packet and obtain the detection result.

[0106] It is worth mentioning that different types of data may have different compression formats, for example, the compression format of short video may be Moving Picture Expert Group-4 (MPEG-4), the format of audio may be 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 what type of data in the data packet is based on the compression format of the data in the data packet, thereby obtaining a detection result.

[0107] In an embodiment of the present application, after a transmission device receives a data packet and determines that the data in the data packet is business data, the transmission device can directly write the business data to a data cache queue. However, to avoid excessive storage space in the transmission device, the data cache queue usually has a certain capacity limit. In this case, when the detection result in S109 of FIG. 7 indicates that the data in the data packet is business data, backing up the business data to the data cache queue can be achieved by: when the detection result indicates that the data in the data packet is business data, the transmission device inquires about the remaining capacity of the data cache queue; when the inquiry result indicates that the remaining capacity of the data cache queue is insufficient, the transmission device determines data to be overwritten from the data cache queue; and, when the inquiry result indicates that the remaining capacity of the data cache queue is insufficient, the transmission device overwrites the data to be overwritten using the business data, thereby completing the backup of the business data to the data cache queue.

[0108] In other words, when backing up business data to a data cache queue, the transmission device first inquires whether business data can be continuously written to the data cache queue, i.e., 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, and the data to be overwritten may be considered to be data that needs to be removed from the data cache queue. Next, the transmission device uses 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 when the remaining capacity of the data cache queue is insufficient.

[0109] It should be noted that the data to be overwritten may be any one of the data in the data cache queue, or may be the data that entered the data cache queue earliest, and the embodiments of the present application are not limited thereto.

[0110] Of course, when the inquiry result indicates that the remaining capacity of the data cache queue is sufficient, the transmission device can write the business data directly to the data cache queue, without needing to remove other data.

[0111] S110: The terminal device receives the data packet fed back by the transmission device in response to the data pull request, and analyzes and obtains business data from the data packet.

[0112] The transmission device transmits the data packets to the terminal device, and the terminal device receives the data packets fed back from the transmission device and analyzes the data packets to obtain the business data therefrom, thereby providing the business data to the user.

[0113] As can be seen, in the present embodiment, the transmission equipment can rely on a data cache queue to store business data locally on the transmission equipment, and in this way, when data needs to be retransmitted, the transmission link can be shortened because the business data does not need to be retrieved again from the service equipment.

[0114] The following describes an exemplary application of the embodiment of the present application in one practical application scenario.

[0115] The embodiments of the present application are applied to a video-on-demand scenario, that is, a user's 5G terminal (referred to as terminal equipment) pulls video data (referred to as business data) of short videos (generally referring to videos with a duration less than a default value, e.g., less than 5 minutes) from a streaming media server (referred to as service equipment) via user plane equipment (referred to as transmission equipment) of a 5G core network.

[0116] 8 is a schematic diagram of a system framework for short video pull provided by an embodiment of the present application. As shown in FIG. 8, 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 cloud-side streaming media server 8-5. The 5G core network 8-3 includes a control plane device and a user plane device (User Plane Function, UPF), where the 5G user plane device is used to realize the functions of video frame detection, video frame caching, and retransmission request detection and processing.

[0117] That is, in the embodiment of the present application, three functions, i.e., video frame detection, video frame cache, and retransmission request detection and processing, are added to the user plane device of the 5G core network to ensure that video frame retransmission can be quickly realized when packet loss occurs during video frame transmission. These three functions are described below.

[0118] The video frame detection function is mainly responsible for detecting downstream traffic sent by the streaming media server to the 5G terminal, i.e., detecting whether the type of downstream IP packet (referred to as data packet) is a video frame (referred to as business data).

[0119] The video frame cache function mainly caches video frames when the IP packet type is a video frame, using the 5G terminal's IP address and port number (collectively referred to as identification information) and the streaming media server's IP address and port number as keys (referred to as data indexes) to add and cache the video frame data to the corresponding range memory. When the cache data entries exceed a set threshold, new data is used to overwrite the earliest data (referred to as data to be overwritten), ensuring the validity of the cache data.

[0120] The retransmission request detection and processing function is mainly responsible for detecting the video frame retransmission request (referred to as data retransmission request) sent by the 5G terminal in the uplink. After detecting the request, it searches the corresponding cache data area (referred to as data cache queue) using the IP address + port number of the 5G terminal and the IP address + port number of the streaming media server as key values, and then finds the video frame data (referred to as target retransmission data) corresponding to the retransmission request from the cache data area and sends it directly to the 5G terminal.

[0121] The detailed business process for video on demand is explained below.

[0122] 9 is a process diagram of a video-on-demand business process provided by an embodiment of the present application. As shown in FIG. 9, the process includes the following steps:

[0123] S201: A 5G terminal application requests a streaming media server to obtain a video stream through the UPF of the 5G core network.

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

[0125] S203: The UPF of the 5G core network sends the IP packet to an internal video frame detection module.

[0126] S204: The video frame detection module detects whether the IP packet is a video frame, and if it is a video frame, the video frame cache module caches the data of the IP packet.

[0127] S205: The UPF of the 5G core network forwards the IP packet to the 5G terminal application.

[0128] S206: When a packet loss of a video frame occurs, the 5G terminal application sends a video frame retransmission request to the UPF of the 5G core network.

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

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

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

[0132] It is necessary to note that in the embodiments of the present application, the video frame cache function may be deployed and implemented in an edge server, i.e., the video frame is guided to the edge server for caching by the UPF of the 5G core network.

[0133] As can be appreciated, in embodiments of the present application, user information, such as data pull requests and related data such as business data, may require user permission or consent when the embodiments of the present application are implemented in a specific product or technology, and the collection, use, and processing of related data may need to comply with relevant laws, regulations, and standards.

[0134] The following continues to describe an exemplary structure implemented as a software module of the data transmission device 255 provided by the embodiments of the present application. In some embodiments, as shown in FIG. 3, the software module stored in the data transmission device 255 of the first memory 250: an index determination module 2551 configured to respond to a data retransmission request sent by a terminal device for business data, and determine a data index associated with the data retransmission request, where the business data is transmitted by a service device in response to a data pull request of the terminal device; a data extraction module 2552 configured to extract and obtain target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, the data cache queue being used to cache business data transmitted by the service device to the terminal device; and a first sending module 2553 configured to retransmit the target retransmission data to the terminal device.

[0135] 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 .

[0136] The first receiving module 2554 is configured to receive a data pull request sent by the terminal device, and receive a data packet sent by the service device targeting the data pull request.

[0137] The cache processing module 2555 is configured to perform type detection on the data in the data packet, 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.

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

[0139] In some embodiments of the present application, the cache processing module 2555 is further configured to parse and obtain a data type identifier from the data packet, and by reading the data type identifier, complete type detection for the data in the data packet and obtain the detection result, or perform compression format analysis on the data in the data packet, complete type detection for the data in the data packet and obtain the detection result.

[0140] In some embodiments of the present application, the index determination module 2551 is further configured to respond to the data retransmission request sent by the terminal device for the business data, analyze the data retransmission request, obtain identification information of the terminal device and identification information of the service device, and use the identification information of the terminal device and the identification information of the service device to determine the data index associated with the data retransmission request, where the identification information includes at least a routing address and a port number.

[0141] In some embodiments of the present application, the index determination module 2551 is further configured to 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 retransmission request, or to concatenate the identification information of the terminal device and the identification information of the service device to obtain a concatenation result, perform hash encoding on the concatenation result to obtain an encoding result, and determine the encoding result as the data index corresponding to the data retransmission request.

[0142] In some embodiments of the present application, the cache processing module 2555 is further configured to, when the detection result indicates that the data in the data packet is the business data, inquire about the remaining capacity of the data cache queue, and, when the inquiry result indicates that the remaining capacity of the data cache queue is insufficient, determine data to be overwritten from the data cache queue, overwrite the data to be overwritten using the business data, and complete the backup of the business data to the data cache queue.

[0143] The following continues to describe an exemplary structure implemented as a software module of the data transmission device 455 provided by the embodiments of the present application. In some embodiments, as shown in FIG. 4, the software module stored in the data transmission device 455 of the second memory 450: a data check module 4551 configured to perform an integrity check on business data and obtain a check result, where the business data is transmitted by a service device in response to a data pull request; a second sending module 4552 configured to send a data retransmission request to a transmission device when the check result indicates that there is a gap in the business data; The data retransmission request may include a second receiving module 4553 configured to receive target retransmission data fed back by the transmitting device.

[0144] In some embodiments of the present application, the second sending module 4552 is further configured to respond to a data pull operation targeting the business data, generate a data pull request, and send the data pull request to a transmission device, which is used to forward the data pull request to the service device.

[0145] The second receiving module 4553 is further configured to receive a data packet fed back by the transmission device in response to the data pull request, and analyze and obtain the business data from the data packet.

[0146] In some embodiments of the present application, the business data includes a video frame sequence, and the data check module 4551 is further configured to perform continuity detection on the frame numbers of the video frames in the video frame sequence, thereby completing an integrity check on the video frame sequence and obtaining the check result.

[0147] An embodiment of the present application provides a computer program product, the computer program product including a computer program or computer-executable instructions stored in a computer-readable storage medium, a first processor of a transmission device reading the computer-executable instructions from the computer-readable storage medium and executing the computer-executable instructions to cause the transmission device to perform the data transmission method on the transmission device side of the embodiment of the present application, and a second processor of a terminal device reading the computer-executable instructions from the computer-readable storage medium and executing the computer-executable instructions to cause the terminal device to perform the data transmission method on the terminal device side of the embodiment of the present application.

[0148] An embodiment of the present application provides a computer-readable storage medium having computer-executable instructions stored thereon, wherein the computer-executable instructions are stored, and when the computer-executable instructions are executed by a first processor, the first processor is caused to perform a data transmission method on the transmission device side provided by an embodiment of the present application, and when the computer-executable instructions are executed by a second processor, the second processor is caused to perform a data transmission method on the terminal device side provided by an embodiment of the present application.

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

[0150] In some embodiments, the computer-executable instructions may be created in the form of a program, software, software module, script, or code, according to any type 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.

[0151] By way of example, the computer-executable instructions may correspond to a file in a file system, but may not necessarily correspond to a file in a file system, and may be stored in part of a file that stores other programs or data, for example, in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program under consideration, or in multiple cooperating files (e.g., files that store one or more modules, subprograms, or code portions).

[0152] For example, the 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 further, on multiple transmission devices or multiple terminal devices distributed across multiple locations and interconnected by a communications network.

[0153] As described above, the embodiment of the present application can shorten the transmission link when retransmitting missing data, thereby enabling faster retrieval of missing data in the business data, thereby improving the business data transmission efficiency. At the same time, because the transmission link when retransmitting missing data is shortened, the probability of packet loss when requesting data retransmission and retransmitting missing data can be reduced, thereby further avoiding impact on the business data transmission efficiency. In addition, by shifting the data retransmission request to the transmission equipment side, the connection between the service equipment and the data retransmission process can be decoupled, which not only reduces the load on the transmission network but also reduces the processing load on the service equipment.

[0154] The above is merely an example of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and scope of the present application should be included in the scope of protection of the present application. [Explanation of symbols]

[0155] 1-1 5G terminal 1-2 Wireless base station 1-31 User Plane Equipment 1-32 Control Plane Equipment 1-4 Wired Network 1-5 Streaming Media Server 8-1. 5G terminal 8-1 5G terminal 8-2 5G base station 8-3 5G Core Network 8-4 Network 8-5 Streaming Media Server 100 Data Transmission System 200 servers 210 First Processor 220 First Network Interface 230 Primary User Interface 231 First Output Device 232 First input device 240 Bus System No. 1 250 First Memory 251 First Operating System 252 First Network Communication Module 253 First Presentation Module 254 First Input Processing Module 255 Data Transmission Device 300 Network 400 terminals 400-1 terminal 400-2 terminal 410 Second Processor 410-1 Graphics Interface 410-2 Graphics Interface 420 Second Network Interface 430 Secondary User Interface 431 Secondary Output Device 432 Second input device 440 Second Bus System 450 Second Memory 451 Second Operating System 452 Second Network Communication Module 453 Second Presentation Module 454 Second Input Processing Module 455 Data Transmission Equipment 500 databases 2551 Index Determination Module 2552 Data Extraction Module 2553 First Transmitter Module 2554 1st receiving module 2555 Cache Processing Module 4551 Data Check Module 4552 Second Transmitter Module 4553 Second receiving module

Claims

1. 1. A data transmission method applied to a transmission device, the method comprising: a step of determining a data index associated with a data retransmission request transmitted by a terminal device for business data, the business data being transmitted by a service device in response to a data pull request from the terminal device; a step of extracting target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, the data cache queue being used to cache business data transmitted by the service device to the terminal device; and a step of transmitting the target retransmission data to the terminal device again.

2. Before the step of responding to a data retransmission request transmitted by a terminal device for business data and determining a data index associated with the data retransmission request, the method includes: receiving a data pull request sent by the terminal device and forwarding the data pull request to a service device; receiving a data packet transmitted by the service device targeting the data pull request; performing 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, backing up the business data in the data cache queue; The method of claim 1 , further comprising the step of: forwarding the data packet to the terminal device.

3. The step of performing type detection on the data in the data packet and obtaining a detection result includes: parsing the data packet to obtain a data type identifier; completing type detection for the data in the data packet by reading the data type identifier, and obtaining the detection result; or 3. The method of claim 2, further comprising: completing type detection for the data in the data packet by performing a compression format analysis on the data in the data packet to obtain a detection result.

4. The step of responding to a data retransmission request transmitted by a terminal device for business data and determining a data index associated with the data retransmission request includes: responding to the data retransmission request transmitted by the terminal device with the business data as the target, analyzing the data retransmission request, and obtaining identification information of the terminal device and identification information of the service device; determining the data index associated with the data retransmission request by using identification information of the terminal device and identification information of the service device; The method according to any one of claims 1 to 3, wherein the identification information includes at least a routing address and a port number.

5. the step of determining the data index associated with the data retransmission request by using identification information of the terminal device and identification information of the service device, concatenating the identification information of the terminal device and the identification information of the service device to obtain a data index associated with the data retransmission request; or linking the identification information of the terminal device and the identification information of the service device to obtain a linking result; 5. The method of claim 4, further comprising: performing hash coding on the concatenated result to obtain a coding result; and determining the coding result as a data index corresponding to the data retransmission request.

6. When the detection result indicates that the data in the data packet is the business data, the step of backing up the business data to the data cache queue includes: When the detection result indicates that the data in the data packet is the business data, inquiring about the remaining amount of the data cache queue; determining data to be overwritten from the data cache queue when the query result indicates that the data cache queue is low; The method according to claim 2 or 3, further comprising: a step of overwriting the data to be overwritten using the business data, and completing the backup of the business data in the data cache queue.

7. A data transmission method applied to a terminal device, the method comprising: performing an integrity check on business data and obtaining a check result, the business data being transmitted by a service device in response to a data pull request; sending a data retransmission request to a transmission device when the check result indicates that there is a missing part in the business data; receiving target retransmission data fed back by the transmission device with the data retransmission request as the target.

8. Before the step of performing an integrity check on the business data and obtaining a check result, the method includes: generating a data pull request in response to a data pull operation on the business data; sending the data pull request to a transmission device, the transmission device being used to forward the data pull request to the service device; The method of claim 7 , further comprising: receiving a data packet fed back by the transmission device for the data pull request; and analyzing and obtaining the business data from the data packet.

9. The business data includes a video frame sequence, and the step of performing an integrity check on the business data and obtaining a check result includes:

9. The method of claim 7, further comprising the step of completing an integrity check on the video frame sequence by performing continuity detection on frame numbers of video frames in the video frame sequence to obtain the check result.

10. 1. A data transmission device, comprising: an index determination module configured to determine a data index associated with a data retransmission request transmitted by a terminal device for business data, the business data being transmitted by a service device in response to a data pull request from the terminal device; a data extraction module configured to extract and obtain target retransmission data corresponding to the data retransmission request from a data cache queue based on the data index, the data cache queue being used to cache business data transmitted by the service device to the terminal device; a first transmitting module configured to retransmit the target retransmission data to the terminal device.

11. 1. A data transmission device, comprising: a data check module configured to perform an integrity check on business data and obtain a check result, the business data being transmitted by a service device in response to a data pull request; a second transmission module configured to transmit a data retransmission request to a transmission device when the check result indicates that there is a gap in the business data; a second receiving module configured to receive target retransmission data fed back by the transmission device with the data retransmission request as the target.

12. A transmission device, the transmission device comprising: a first memory adapted to store computer-executable instructions; a first processor used to implement the data transmission method according to any one of claims 1 to 6 when executing computer-executable instructions stored in the first memory.

13. A terminal device, the terminal device comprising: a second memory adapted to store computer-executable instructions; a second processor used to implement the data transmission method of any one of claims 7 to 9 when executing computer-executable instructions stored in the second memory.

14. A computer-readable storage medium having stored thereon computer-executable instructions, the computer-executable instructions implementing the data transmission method of any one of claims 1 to 6 when executed by a first processor, and implementing the data transmission method of any one of claims 7 to 9 when executed by a second processor.

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

Citation Information

Patent Citations

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

    CN113872916A

  • Repeating device

    JP2009089197A

  • Cache device, data distribution system, re-transmission method and program

    JP2020127181A