Mptcp-based multipath transmission method and apparatus for set-top box, and storage medium

By employing the MPTCP protocol's multiplexing method, combined with KM, FPS, and DWC algorithms, the problem of traditional set-top boxes being unable to support ultra-high-definition video in wireless environments has been solved, achieving more efficient data transmission and a better user experience.

WO2026103562A1PCT designated stage Publication Date: 2026-05-21E-SURFING DIGITAL LIFE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
E-SURFING DIGITAL LIFE TECH CO LTD
Filing Date
2025-11-04
Publication Date
2026-05-21

Smart Images

  • Figure CN2025132233_21052026_PF_FP_ABST
    Figure CN2025132233_21052026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the present invention are an MPTCP-based multipath transmission method and apparatus for a set-top box, and a storage medium. The method comprises: in response to a multipath transmission connection request from a target set-top box, establishing an MPTCP multipath transmission channel between a video transmitting end and the target set-top box; acquiring target video data by means of the video transmitting end, encoding the target video data to obtain encoded video data, generating a plurality of sub-stream data packets on the basis of the encoded video data, and then transmitting the plurality of sub-stream data packets to the target set-top box by means of the MPTCP multipath transmission channel; and, by means of the target set-top box, merging the plurality of sub-stream data packets to obtain the encoded video data, and decoding the encoded video data to obtain the target video data. The present invention reduces the transmission delay, improves data transmission efficiency and video service usage experience of users, and can be widely applied to the technical field of communications.
Need to check novelty before this filing date? Find Prior Art

Description

A method, apparatus, and storage medium for set-top box multiplexing based on the MPTCP protocol. Technical Field

[0001] This invention relates to the field of communication technology, and in particular to a set-top box multiplexing method, apparatus and storage medium based on the MPTCP protocol. Background Technology

[0002] In recent years, the development of the ultra-high-definition video industry has been inextricably linked to the upgrading of communication technology. The videoization of information and the upgrading of video to ultra-high definition are major trends in the information industry. With the existing Blu-ray and 1080P experiences, user experience has reached a point of fatigue, leading to the emergence of ultra-high-definition technology, which demands higher standards in resolution, frame rate, color depth, and color gamut. However, 4K ultra-high-definition television has approximately 8.3 million pixels, and 8K ultra-high-definition television reaches 33 million pixels, posing challenges to some services with high real-time requirements. Even with internationally advanced AVS3 and H.265 codec technologies, the bitrate after program compression still reaches over 150Mbps, putting significant pressure on communication links.

[0003] For ultra-high-definition streaming media services with high reliability requirements, UDP transmission is highly sensitive to packet loss due to the lack of a retransmission mechanism, leading to issues such as video distortion and black screens. A single TCP link has limited transmission speed, making it difficult to meet the bitrate requirements of ultra-high-definition video, resulting in significant latency and stuttering. Therefore, traditional set-top box communication methods struggle to support ultra-high-definition video services in wireless environments, impacting data transmission efficiency and user experience.

[0004] Terminology Explanation:

[0005] Stream Control Transmission Protocol (SCTP): A protocol that allows multiple data streams to be transmitted simultaneously between two ends of a network connection.

[0006] Concurrent Multipath Transmission Using SCTP (CMT-SCTP): An extension of the SCTP protocol that allows data to be sent in parallel on multiple paths to improve system throughput.

[0007] Multipath Transmission Control Protocol (MPTCP): Developed by the Internet Engineering Task Force (IETF) Multipath TCP Working Group, its purpose is to allow Transmission Control Protocol (TCP) connections to use multiple paths to maximize channel resource utilization.

[0008] The KM (Kuhn-Munkres) algorithm is a computer algorithm that finds the maximum weight matching under perfect matching conditions.

[0009] Forward Prediction Scheduling (FPS) algorithm: an algorithm to reduce the number of out-of-order packets caused by path delay differences in scenarios with asymmetric links.

[0010] Dynamic Window Coupling (DWC) Algorithm: An MPTCP congestion control algorithm designed based on bottleneck fairness. Summary of the Invention

[0011] The purpose of this invention is to at least partially solve one of the technical problems existing in the prior art.

[0012] Therefore, one objective of this invention is to provide a set-top box multiplexing method based on the MPTCP protocol, which reduces transmission latency, improves data transmission efficiency, and enhances the user's video service experience.

[0013] Another objective of this invention is to provide a set-top box multiplexing device based on the MPTCP protocol.

[0014] To achieve the above-mentioned technical objectives, the technical solutions adopted in the embodiments of the present invention include:

[0015] On one hand, embodiments of the present invention provide a set-top box multiplexing method based on the MPTCP protocol, comprising the following steps:

[0016] In response to the multi-channel transmission connection request of the target set-top box, an MPTCP multi-channel transmission channel is established between the video sending end and the target set-top box;

[0017] The target video data is obtained through the video sending end, encoded to obtain encoded video data, and multiple sub-stream data packets are generated based on the encoded video data. Then, the multiple sub-stream data packets are transmitted to the target set-top box through the MPTCP multiplexing channel.

[0018] The target set-top box merges multiple sub-stream data packets to obtain the encoded video data, and then decodes the encoded video data to obtain the target video data.

[0019] Furthermore, in one embodiment of the present invention, the step of establishing an MPTCP multiplexing channel between the video transmitter and the target set-top box in response to a multiplexing connection request from the target set-top box specifically includes:

[0020] Perform multi-interface detection on the target set-top box to obtain the interface information of the target set-top box;

[0021] The multi-channel transmission connection request is generated based on the interface information, and the multi-channel transmission connection request is sent to the video sending end through the target set-top box;

[0022] The video sending end parses the multi-channel transmission connection request to obtain the interface information, constructs multiple TCP sub-streams based on the interface information, and then establishes the MPTCP multi-channel transmission channel based on the multiple TCP sub-streams.

[0023] Furthermore, in one embodiment of the present invention, the step of generating multiple sub-stream data packets based on the encoded video data specifically includes:

[0024] Add the encoded video data to the transmission buffer;

[0025] The encoded video data is encapsulated using the RTSP / HTTP protocol to obtain multiple encapsulated data packets;

[0026] Multiple target sub-streams are selected from the TCP sub-streams to determine the target sub-stream corresponding to each of the encapsulated data packets;

[0027] Based on the MPTCP protocol, the sub-stream identifier of the corresponding target sub-stream is added to the encapsulated data packet to obtain multiple sub-stream data packets.

[0028] Furthermore, in one embodiment of the present invention, the step of filtering out multiple target sub-streams from the TCP sub-stream specifically includes:

[0029] Obtain the sub-stream rate of each TCP sub-stream, and determine the source port and destination port of each TCP sub-stream;

[0030] Using the source port and the destination port as nodes, each TCP sub-stream as an edge, and the sub-stream rate as the edge weight of the corresponding TCP sub-stream, a bipartite graph is constructed.

[0031] Multiple perfect matching sets of the bipartite graph are determined, and the total weight of the matching edges of each perfect matching set is determined according to the edge weights. Then, the maximum weight matching set is selected from the perfect matching sets according to the total weight of the matching edges.

[0032] The multiple TCP sub-streams corresponding to the maximum weight matching set are taken as the target sub-streams.

[0033] Furthermore, in one embodiment of the present invention, the set-top box multiplexing method further includes the following steps:

[0034] When a link failure occurs in the TCP sub-stream, the TCP sub-stream with the link failure is deleted, and a sub-bipartite graph is constructed based on the unmatched source port and destination port. Then, the maximum weight matching subset is solved based on the bipartite graph.

[0035] Add the plurality of TCP sub-streams corresponding to the maximum weight matching subset to the target sub-stream.

[0036] Furthermore, in one embodiment of the present invention, determining the target sub-stream corresponding to each of the encapsulated data packets specifically includes:

[0037] The encapsulated data packets are sorted to obtain a data packet sequence;

[0038] The current encapsulated data packet is obtained sequentially from the data packet sequence. The arrival time of the current data packet of each target sub-stream is calculated based on the amount of data to be transmitted, the sub-stream speed, and the size of the current encapsulated data packet.

[0039] The target sub-stream with the earliest arrival time of the current data packet is selected as the target sub-stream corresponding to the current encapsulated data packet, and the amount of data to be transmitted in the corresponding target sub-stream is updated.

[0040] Furthermore, in one embodiment of the present invention, the set-top box multiplexing method further includes the following steps:

[0041] When a packet loss / increased latency event is detected in the TCP sub-stream, the TCP sub-stream that experienced the packet loss / increased latency event will be added to the bottleneck set.

[0042] Detect whether there is a congestion event within a preset time range before and after the packet loss / latency increase event. If so, add the TCP sub-stream corresponding to the congestion event to the bottleneck set.

[0043] The congestion window of the TCP sub-stream located in the bottleneck set is adjusted by the DWC coupled congestion control algorithm, and congestion control is performed on the corresponding TCP sub-stream according to the congestion window;

[0044] Congestion control is performed on the TCP sub-streams that are not located in the bottleneck set using a single-path TCP congestion control algorithm.

[0045] On the other hand, embodiments of the present invention provide a set-top box multiplexing device based on the MPTCP protocol, comprising:

[0046] The multi-channel transmission establishment module is used to establish an MPTCP multi-channel transmission channel between the video transmitter and the target set-top box in response to the multi-channel transmission connection request of the target set-top box.

[0047] The sub-stream data packet transmission module is used to acquire target video data through the video sending end, encode the target video data to obtain encoded video data, generate multiple sub-stream data packets based on the encoded video data, and then transmit the multiple sub-stream data packets to the target set-top box through the MPTCP multiplexing channel.

[0048] The sub-stream data packet merging and decoding module is used to merge multiple sub-stream data packets through the target set-top box to obtain the encoded video data, and to decode the encoded video data to obtain the target video data.

[0049] On the other hand, embodiments of the present invention provide an electronic device, the electronic device including a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for implementing connection communication between the processor and the memory, wherein when the program is executed by the processor, it implements the set-top box multiplexing method based on the MPTCP protocol as described above.

[0050] On the other hand, embodiments of the present invention also provide a storage medium, which is a computer-readable storage medium for computer-readable storage. The storage medium stores one or more programs, which can be executed by one or more processors to implement the set-top box multiplexing method based on the MPTCP protocol as described above.

[0051] The advantages and beneficial effects of the present invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention:

[0052] In response to a multi-channel transmission connection request from a target set-top box, this invention establishes an MPTCP multi-channel transmission channel between the video transmitter and the target set-top box. The video transmitter acquires target video data, encodes it to obtain encoded video data, and generates multiple sub-stream data packets based on the encoded video data. These sub-stream data packets are then transmitted to the target set-top box via the MPTCP multi-channel transmission channel. The target set-top box merges the multiple sub-stream data packets to obtain the encoded video data and decodes it to obtain the target video data. This invention introduces the MPTCP protocol for multi-channel video data transmission on top of traditional set-top boxes. Through sub-stream path management, data packet allocation, and congestion control, it reduces transmission latency, improves data transmission efficiency, and enhances the user's video service experience. Attached Figure Description

[0053] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the embodiments of the present invention are described below. It should be understood that the drawings described below are only for the convenience of clearly describing some embodiments of the technical solutions of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0054] Figure 1 is a flowchart of a set-top box multiplexing method based on MPTCP protocol provided in an embodiment of the present invention;

[0055] Figure 2 is a schematic diagram of the encapsulation of the MPTCP protocol provided in an embodiment of the present invention;

[0056] Figure 3 is an overall flowchart of the set-top box multiplexing method based on the MPTCP protocol provided in an embodiment of the present invention;

[0057] Figure 4 is a flowchart of step S101 provided in an embodiment of the present invention;

[0058] Figure 5 is a flowchart of step S102 provided in an embodiment of the present invention;

[0059] Figure 6 is a flowchart of step S1023 provided in an embodiment of the present invention;

[0060] Figure 7 is another flowchart of the set-top box multiplexing method based on the MPTCP protocol provided in an embodiment of the present invention;

[0061] Figure 8 is a schematic diagram of the instructions for sub-flow path management provided in an embodiment of the present invention;

[0062] Figure 9 is a flowchart of another step S1023 provided in an embodiment of the present invention;

[0063] Figure 10 is another flowchart of the set-top box multiplexing method based on the MPTCP protocol provided in an embodiment of the present invention;

[0064] Figure 11 is a schematic diagram of congestion control instructions provided in an embodiment of the present invention;

[0065] Figure 12 is a schematic diagram of the structure of a set-top box multiplexing device based on the MPTCP protocol provided in an embodiment of the present invention;

[0066] Figure 13 is a schematic diagram of the hardware structure of the electronic device provided in an embodiment of the present invention;

[0067] Figure 14 is a schematic diagram of the structure of the storage medium provided in an embodiment of the present invention. Detailed Implementation

[0068] The embodiments of the present invention are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application. It should be noted that although functional modules are divided in the system schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the system schematic diagram or the order in the flowchart. The step numbers in the following embodiments are only set for ease of explanation and do not limit the order between steps. The execution order of each step in the embodiments can be adaptively adjusted according to the understanding of those skilled in the art.

[0069] In the description of this invention, "multiple" means two or more. The use of "first" and "second" is for distinguishing technical features only and should not be construed as indicating or implying relative importance, the number of indicated technical features, or the order of the indicated technical features. Furthermore, 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 to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0070] In recent years, the development of the ultra-high-definition video industry has been inextricably linked to the upgrading of communication technology. The videoization of information and the upgrading of video to ultra-high definition are major trends in the information industry. With the existing Blu-ray and 1080P experiences, user experience has reached a point of fatigue, leading to the emergence of ultra-high-definition technology, which demands higher standards in resolution, frame rate, color depth, and color gamut. However, 4K ultra-high-definition television has approximately 8.3 million pixels, and 8K ultra-high-definition television reaches 33 million pixels, posing challenges to some services with high real-time requirements. Even with internationally advanced AVS3 and H.265 codec technologies, the bitrate after program compression still reaches over 150Mbps, putting significant pressure on communication links.

[0071] For ultra-high-definition streaming media services with high reliability requirements, UDP transmission is highly sensitive to packet loss due to the lack of a retransmission mechanism, leading to issues such as video distortion and black screens. A single TCP link has limited transmission speed, making it difficult to meet the bitrate requirements of ultra-high-definition video, resulting in significant latency and stuttering. Therefore, traditional set-top box communication methods are ill-suited for supporting ultra-high-definition video services in wireless environments.

[0072] Against this backdrop, the rise of multiplexing technology has provided a new solution for set-top boxes to support the demand for ultra-high-definition IPTV. This technology allows simultaneous network access via base stations and WiFi, employing multiple ports for concurrent transmission and leveraging aggregated bandwidth to enhance network transmission capabilities. Multiplexing technologies mainly include Stream Control Transmission Protocol (SCTP), Concurrent Multipath Transmission Using SCTP (CMT-SCTP), and Multipath TCP (MPTCP). Among these, MPTCP, compared to the other two protocols, offers better compatibility with existing network architectures, is transparent to the application layer, and can still be treated as TCP by upper-layer programs.

[0073] To address the challenge of traditional routers supporting ultra-high-definition IPTV services in wireless environments, this invention proposes a set-top box multi-path transmission method based on the MPTCP protocol. This method utilizes concurrent multi-path transmission to aggregate bandwidth, improving transmission efficiency and enhancing the ultra-high-definition IPTV video experience for users in constrained environments. Furthermore, the robustness of the MPTCP protocol and its smooth and stable performance during mobile handovers ensure its effective application during inter-cell handovers.

[0074] Since set-top boxes have limited transmission capabilities in wireless communication environments, this invention considers integrating 4G and 5G communication modules and compiling the kernel to support the MPTCP protocol. To address the issues of multipath availability and fault handling in multi-path transmission, this invention proposes a sub-stream path management method based on the KM algorithm to improve the efficiency of concurrent multi-path transmission and ensure link stability. To address the problem of out-of-order data packets caused by varying transmission speeds, this invention employs the FPS algorithm to reduce application-layer scheduling wait caused by out-of-order packets. To address the issue of unfairness to single-path TCP users due to bottlenecks in multi-path transmission, this invention uses the DWC algorithm to implement congestion control of sub-streams within the bottleneck set. By solving these problems, this invention can provide users with a better ultra-high-definition IPTV service experience.

[0075] The set-top box multiplexing method based on the MPTCP protocol provided in this application can be applied to a terminal, a server, or software running on either a terminal or a server. In some embodiments, the terminal can be a smartphone, tablet, laptop, desktop computer, set-top box, etc.; the server can be configured as an independent physical server, a server cluster or distributed system composed 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 communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application implementing the set-top box multiplexing method based on the MPTCP protocol, but is not limited to the above forms.

[0076] This application can be used in a wide variety of general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics devices, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0077] It should be noted that in all specific embodiments of this application, when processing data related to user identity or characteristics, such as user information, user behavior data, user historical data, and user location information, user permission or consent is obtained first. Furthermore, the collection, use, and processing of this data comply with relevant laws, regulations, and standards of the relevant countries and regions. In addition, when embodiments of this application require access to sensitive personal information of users, separate permission or consent from the user is obtained through pop-ups or redirects to confirmation pages. Only after obtaining the user's separate permission or consent is the necessary user-related data for the proper functioning of the embodiments of this application obtained.

[0078] This invention takes into account that set-top boxes in wireless communication environments cannot provide sufficient transmission rates via wired connections to meet the bitrate requirements of ultra-high-definition IPTV. Therefore, it can add external communication modules such as 4G and 5G to the set-top box to enable multi-channel concurrent communication, provide aggregated bandwidth, reduce transmission latency, improve data transmission efficiency, and enhance the user's video service experience.

[0079] Figure 1 shows a flowchart of a set-top box multiplexing method based on the MPTCP protocol provided in an embodiment of the present invention. Referring to Figure 1, the present invention provides a set-top box multiplexing method based on the MPTCP protocol, which specifically includes the following steps:

[0080] S101. In response to the multi-channel transmission connection request of the target set-top box, establish an MPTCP multi-channel transmission channel between the video transmitter and the target set-top box;

[0081] S102. Obtain target video data through the video sending end, encode the target video data to obtain encoded video data, generate multiple sub-stream data packets based on the encoded video data, and then transmit the multiple sub-stream data packets to the target set-top box through the MPTCP multiplex transmission channel.

[0082] S103. The target set-top box merges multiple sub-stream data packets to obtain encoded video data, and decodes the encoded video data to obtain target video data.

[0083] The MPTCP protocol is a Layer 4 transport protocol in network protocols, located in the middle layer between the socket interface and multiple TCP sub-streams. Figure 2 shows a schematic diagram of the MPTCP protocol encapsulation provided in an embodiment of the present invention. It is responsible for path management, data scheduling, and congestion control of sub-streams. The path management function is responsible for checking whether there is a communication link between the source and destination ends and immediately deleting faulty links to avoid congestion. MPTCP can dynamically adjust the throughput of sub-streams through congestion control algorithms to avoid network congestion and achieve traffic migration and load balancing. In order to ensure the completion time of upper-layer applications, the MPTCP protocol uses data scheduling algorithms to try its best to ensure that data packets arrive at the receiving end in order, avoiding the buffering and waiting of a large number of out-of-order data packets.

[0084] Figure 3 shows the overall flowchart of the set-top box multi-channel transmission method based on the MPTCP protocol provided in this embodiment of the invention. First, the set-top box detects the multiple ports supported by the transmission through interface detection, initiates a request to the video sending end, and establishes an MPTCP multi-channel transmission connection. The video sending end adds the compressed and encoded video source to the sending buffer, encapsulates it with RTSP / HTTP protocol at the application layer, provides reliable byte stream transmission service, and meets the needs of real-time streaming media. The MPTCP protocol is added to the transmission layer to control the transmission of multiple TCP sub-streams, and multi-channel transmission is carried out through 4G, 5G, and WIFI. At the set-top box receiving end, the data sent from different sub-streams is processed and merged through the MPTCP protocol, and the data packets are scheduled to the application layer in order. The application layer parses the data according to the corresponding protocol, stores it in the receiving buffer for decoding, and finally completes the video playback.

[0085] This invention introduces the MPTCP protocol for multi-path transmission of video data on the basis of traditional set-top boxes. Through sub-stream path management, data packet allocation and congestion control, it reduces transmission latency, improves data transmission efficiency and enhances the user's video service experience.

[0086] Figure 4 shows a flowchart of step S101 provided in an embodiment of the present invention. Referring to Figure 4, as an optional implementation, in response to the multi-channel transmission connection request of the target set-top box, an MPTCP multi-channel transmission channel is established between the video transmitter and the target set-top box, which specifically includes:

[0087] S1011. Perform multi-interface detection on the target set-top box to obtain the interface information of the target set-top box;

[0088] S1012. Generate a multi-channel transmission connection request based on the interface information, and send the multi-channel transmission connection request to the video sending end through the target set-top box;

[0089] S1013. The video sending end parses the multi-channel transmission connection request to obtain the interface information, and constructs multiple TCP sub-streams based on the interface information, and then establishes an MPTCP multi-channel transmission channel based on the multiple TCP sub-streams.

[0090] Figure 5 shows a flowchart of step S102 provided in an embodiment of the present invention. Referring to Figure 5, as an optional implementation, multiple sub-stream data packets are generated based on the encoded video data, which specifically includes:

[0091] S1021. Add the encoded video data to the transmission buffer;

[0092] S1022. Encapsulate the encoded video data using the RTSP / HTTP protocol to obtain multiple encapsulated data packets;

[0093] S1023. Select multiple target sub-streams from the TCP sub-streams and determine the target sub-stream corresponding to each encapsulated data packet;

[0094] S1024. Based on the MPTCP protocol, add the corresponding target sub-stream identifier to the encapsulated data packet to obtain multiple sub-stream data packets.

[0095] Figure 6 shows a flowchart of step S1023 provided in an embodiment of the present invention. Referring to Figure 6, as an optional implementation, multiple target sub-streams are further selected from the TCP sub-streams, which specifically includes:

[0096] S10231. Obtain the sub-stream rate of each TCP sub-stream and determine the source port and destination port of each TCP sub-stream;

[0097] S10232. Based on the source port and destination port as nodes, each TCP sub-stream is used as an edge, and the sub-stream rate is used as the edge weight of the corresponding TCP sub-stream to construct a bipartite graph.

[0098] S10233. Determine multiple perfect matching sets of the bipartite graph, and determine the total weight of the matching edges of each perfect matching set according to the edge weights. Then, select the maximum weight matching set from the perfect matching sets according to the total weight of the matching edges.

[0099] S10234. Take the multiple TCP sub-streams corresponding to the maximum weight matching set as the target sub-streams.

[0100] Figure 7 shows another flowchart of the set-top box multiplexing method based on the MPTCP protocol provided in this embodiment of the invention. Referring to Figure 7, as an optional implementation, the set-top box multiplexing method further includes the following steps:

[0101] S201. When a TCP sub-stream experiences a link failure, delete the TCP sub-stream with the link failure, and construct a sub-bipartite graph based on the unmatched source and destination ports. Then, solve for the maximum weight matching subset based on the bipartite graph.

[0102] S202. Add the multiple TCP sub-streams corresponding to the maximum weight matching subset to the target sub-stream.

[0103] Specifically, addressing the issues of availability detection and fault handling in multi-sub-stream paths, this invention proposes a KM-based sub-stream path management method. Figure 8 illustrates the instruction diagram for sub-stream path management provided in this embodiment. First, all available sub-streams are obtained using the Full mesh path management method. The Full mesh method utilizes all available sub-streams for concurrent data transmission, which may lead to the addition of sub-streams with poor performance, dragging down high-performance sub-streams and degrading transmission performance. Therefore, this invention uses the rates of all sub-streams obtained through Full mesh as weights and utilizes the KM algorithm to obtain the maximum weighted matching set. As shown in Figure 8, the values ​​of feasible top labels are first initialized, and then a perfect match is found using the Hungarian algorithm. If no match is found, the feasible top label values ​​are modified, repeating until the source and destination sets are perfectly matched. Finally, unmatched sub-streams are managed based on the matching results. When a link fails, the faulty sub-stream is deleted, and the unmatched source and destination are converted into a bipartite graph. The matching edges are then recalculated using this algorithm to ensure the stability of existing link connections.

[0104] Figure 9 shows another flowchart of step S1023 provided in an embodiment of the present invention. Referring to Figure 9, as an optional implementation, the target sub-stream corresponding to each encapsulated data packet is determined, which specifically includes:

[0105] S10235. Sort the encapsulated data packets to obtain a data packet sequence;

[0106] S10236. Obtain the current encapsulated data packet from the data packet sequence in sequence, and calculate the arrival time of the current data packet of each target sub-stream based on the amount of data to be transmitted, the sub-stream speed, and the size of the current encapsulated data packet.

[0107] S10237. Select the target sub-stream with the earliest arrival time of the current data packet as the target sub-stream corresponding to the current encapsulated data packet, and update the amount of data to be transmitted in the corresponding target sub-stream.

[0108] Specifically, to address the problem of out-of-order arrival of on-demand data packets caused by the simultaneous use of multiple paths, this invention employs a Forward Prediction Scheduling (FPS) algorithm. This algorithm estimates the arrival times of fast and slow sub-streams based on path parameters, thereby ensuring that data packets transmitted by the sub-streams arrive in order. When FPS needs to schedule data packets for a slower sub-stream, it does not schedule the first data packet in the buffer queue for that sub-stream. Instead, it estimates the number of RTT rounds that the fast sub-stream can send when the slow sub-stream arrives, calculates the amount of data that can be transmitted within that time period, and schedules data from the back of that data segment, ensuring that the sub-stream data arrives in an orderly manner.

[0109] Figure 10 shows another flowchart of the set-top box multiplexing method based on the MPTCP protocol provided in an embodiment of the present invention. Referring to Figure 10, as an optional implementation, the set-top box multiplexing method further includes the following steps:

[0110] S301. When a packet loss / increased latency event is detected in a TCP sub-stream, the TCP sub-stream that experienced the packet loss / increased latency event is added to the bottleneck set.

[0111] S302. Detect whether there are congestion events within a preset time range before and after the packet loss / increased latency event. If so, add the TCP sub-stream corresponding to the congestion event to the bottleneck set.

[0112] S303. Adjust the congestion window of the TCP sub-stream located in the bottleneck set through the DWC coupled congestion control algorithm, and perform congestion control on the corresponding TCP sub-stream according to the congestion window.

[0113] S304. Congestion control is performed on TCP sub-streams that are not located in the bottleneck set using a single-path TCP congestion control algorithm.

[0114] Specifically, addressing the unfairness issue between uncoupled MPTCP connection pairs and their single-path TCP connections on the same path, this invention employs a Dynamic Window Coupling (DWC) algorithm that considers bottleneck fairness. This algorithm decouples sub-flows at non-bottleneck locations, improving the throughput of MPTCP connections while ensuring fairness for single-path TCP connections. Bottleneck fairness means that connections at the same bottleneck location should achieve equal throughput at the connection layer, regardless of the number of sub-flows. This guarantees fairness for single-path TCP connections at bottleneck contention points.

[0115] The DWC algorithm groups substreams that experience packet loss or increased latency within the same time period into the same bottleneck set. Figure 11 shows a schematic diagram of the congestion control instructions provided in this embodiment. The DWC algorithm designs a substream management module. When a packet loss or increased latency event is detected in a substream, a bottleneck set is created, and the system monitors whether there are congestion events within RTT / 2 before and after the event time point. If so, the event is added to the set. For the i-th bottleneck set S... i Substream r within, with its congestion window w r The calculation for the addition process is as follows:

[0116] in

[0117] in, For the congestion window that aggregates all sub-flows within the bottleneck set, |S i | indicates the number of sub-flows within the bottleneck set. This represents the shortest latency within the bottleneck set. For sub-streams within the bottleneck set, congestion control is applied to the corresponding TCP sub-streams based on the congestion window. For sub-streams outside the bottleneck set, congestion control is performed according to the single-path TCP connection algorithm.

[0118] The method steps of the embodiments of the present invention have been described above. It can be understood that the embodiments of the present invention introduce the MPTCP protocol for multi-path transmission of video data based on traditional set-top boxes. Through sub-stream path management, data packet allocation, and congestion control, transmission latency is reduced, data transmission efficiency is improved, and the user's video service experience is enhanced.

[0119] Figure 12 shows a schematic diagram of a set-top box multiplexing device based on the MPTCP protocol provided in an embodiment of the present invention. Referring to Figure 12, an embodiment of the present invention provides a set-top box multiplexing device based on the MPTCP protocol, including:

[0120] The multi-channel transmission establishment module is used to establish an MPTCP multi-channel transmission channel between the video transmitter and the target set-top box in response to the multi-channel transmission connection request from the target set-top box.

[0121] The sub-stream data packet transmission module is used to acquire target video data through the video sending end, encode the target video data to obtain encoded video data, generate multiple sub-stream data packets based on the encoded video data, and then transmit the multiple sub-stream data packets to the target set-top box through the MPTCP multiplex transmission channel.

[0122] The sub-stream data packet merging and decoding module is used to merge multiple sub-stream data packets to obtain encoded video data through the target set-top box, and then decode the encoded video data to obtain the target video data.

[0123] The content of the above method embodiments is applicable to the device embodiments. The specific functions implemented by the device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0124] This invention also provides an electronic device, comprising: a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for communication between the processor and the memory. When the program is executed by the processor, it implements the aforementioned set-top box multiplexing method based on the MPTCP protocol. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.

[0125] Figure 13 shows a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention. Referring to Figure 13, an electronic device is provided in an embodiment of the present invention, including:

[0126] The processor 1301 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present invention.

[0127] The memory 1302 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 1302 can store the operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1302 and is called and executed by the processor 1301 to execute the set-top box multiplexing method based on the MPTCP protocol of this invention.

[0128] The input / output interface 1303 is used to implement information input and output;

[0129] The communication interface 1304 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).

[0130] Bus 1305 transmits information between various components of the device (e.g., processor 1301, memory 1302, input / output interface 1303, and communication interface 1304);

[0131] The processor 1301, memory 1302, input / output interface 1303 and communication interface 1304 are connected to each other within the device via bus 1305.

[0132] Figure 14 shows a schematic diagram of the structure of the storage medium provided in an embodiment of the present invention. Referring to Figure 14, the present invention also provides a storage medium, which is a computer-readable storage medium for computer-readable storage. The storage medium stores one or more programs 1401, which can be executed by one or more processors to implement the above-mentioned set-top box multiplexing method based on the MPTCP protocol.

[0133] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0134] This invention also discloses a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the method shown in FIG1.

[0135] In some alternative embodiments, the functions / operations mentioned in the block diagrams may not occur in the order shown in the operation diagrams. For example, depending on the functions / operations involved, two consecutively shown blocks may actually be executed substantially simultaneously, or the aforementioned blocks may sometimes be executed in reverse order. Furthermore, the embodiments presented and described in the flowcharts of this invention are provided by way of example to provide a more comprehensive understanding of the technology. The disclosed methods are not limited to the operations and logic flows presented herein. Alternative embodiments are contemplated in which the order of various operations is changed and sub-operations described as part of a larger operation are executed independently.

[0136] Furthermore, although the invention has been described in the context of functional modules, it should be understood that, unless otherwise stated, one or more of the aforementioned functions and / or features may be integrated into a single physical device and / or software module, or one or more functions and / or features may be implemented in a separate physical device or software module. It is also understood that a detailed discussion of the actual implementation of each module is unnecessary for understanding the invention. Rather, given the properties, functions, and internal relationships of the various functional modules in the apparatus disclosed herein, the actual implementation of the module will be understood within the scope of conventional skill of an engineer. Therefore, those skilled in the art can implement the invention as set forth in the claims using ordinary techniques without excessive experimentation. It is also understood that the specific concepts disclosed are merely illustrative and not intended to limit the scope of the invention, which is determined by the full scope of the appended claims and their equivalents.

[0137] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0138] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device.

[0139] More specific examples of computer-readable media (a non-exhaustive list) include: electrical connections (electronic devices) having one or more wires, portable computer disk drives (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which the aforementioned program can be printed, because the aforementioned program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or, if necessary, processing in other suitable ways, and then stored in computer memory.

[0140] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0141] In the foregoing description of this specification, references to terms such as "one embodiment," "another embodiment," or "some embodiments" indicate that a specific feature, structure, material, or characteristic described in connection with an embodiment or example is included in at least one embodiment or example of the present invention. In this specification, illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0142] Although embodiments of the invention have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.

[0143] The above is a detailed description of the preferred embodiments of the present invention. However, the present invention is not limited to the above embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention. All such equivalent modifications or substitutions are included within the scope defined by the claims of this application.

Claims

1. A method for multi-path transmission of a set-top box based on an MPTCP protocol, characterized in that, Includes the following steps: In response to the multi-channel transmission connection request of the target set-top box, an MPTCP multi-channel transmission channel is established between the video sending end and the target set-top box; The target video data is obtained through the video sending end, encoded to obtain encoded video data, and multiple sub-stream data packets are generated based on the encoded video data. Then, the multiple sub-stream data packets are transmitted to the target set-top box through the MPTCP multiplexing channel. The target set-top box merges multiple sub-stream data packets to obtain the encoded video data, and then decodes the encoded video data to obtain the target video data.

2. The MPTCP protocol-based set-top box multiplexing method of claim 1, wherein, The step of establishing an MPTCP multiplexed transmission channel between the video transmitter and the target set-top box in response to the multiplexed transmission connection request from the target set-top box specifically includes: Perform multi-interface detection on the target set-top box to obtain the interface information of the target set-top box; The multi-channel transmission connection request is generated based on the interface information, and the multi-channel transmission connection request is sent to the video sending end through the target set-top box; The video sending end parses the multi-channel transmission connection request to obtain the interface information, constructs multiple TCP sub-streams based on the interface information, and then establishes the MPTCP multi-channel transmission channel based on the multiple TCP sub-streams.

3. The multi-transmission method of a set-top box based on the MPTCP protocol according to claim 2, characterized in that, The step of generating multiple sub-stream data packets based on the encoded video data specifically includes: Add the encoded video data to the transmission buffer; The encoded video data is encapsulated using the RTSP / HTTP protocol to obtain multiple encapsulated data packets; Multiple target sub-streams are selected from the TCP sub-streams to determine the target sub-stream corresponding to each of the encapsulated data packets; Based on the MPTCP protocol, the sub-stream identifier of the corresponding target sub-stream is added to the encapsulated data packet to obtain multiple sub-stream data packets.

4. The multi-transmission method of a set-top box based on the MPTCP protocol according to claim 3, characterized in that, The step of filtering out multiple target sub-streams from the TCP sub-stream specifically includes: Obtain the sub-stream rate of each TCP sub-stream, and determine the source port and destination port of each TCP sub-stream; Using the source port and the destination port as nodes, each TCP sub-stream as an edge, and the sub-stream rate as the edge weight of the corresponding TCP sub-stream, a bipartite graph is constructed. Multiple perfect matching sets of the bipartite graph are determined, and the total weight of the matching edges of each perfect matching set is determined according to the edge weights. Then, the maximum weight matching set is selected from the perfect matching sets according to the total weight of the matching edges. The multiple TCP sub-streams corresponding to the maximum weight matching set are taken as the target sub-streams.

5. The MPTCP protocol-based set-top box multiplexing method of claim 4, wherein, The set-top box multiplexing method further includes the following steps: When a link failure occurs in the TCP sub-stream, the TCP sub-stream with the link failure is deleted, and a sub-bipartite graph is constructed based on the unmatched source port and destination port. Then, the maximum weight matching subset is solved based on the bipartite graph. Add the plurality of TCP sub-streams corresponding to the maximum weight matching subset to the target sub-stream.

6. The method of claim 3, wherein the MPTCP protocol-based multiple transmission of the set-top box is based on a TCP multipath option (MPTO) protocol. The determination of the target sub-stream corresponding to each of the encapsulated data packets specifically includes: The encapsulated data packets are sorted to obtain a data packet sequence; The current encapsulated data packet is obtained sequentially from the data packet sequence. The arrival time of the current data packet of each target sub-stream is calculated based on the amount of data to be transmitted, the sub-stream speed, and the size of the current encapsulated data packet. The target sub-stream with the earliest arrival time of the current data packet is selected as the target sub-stream corresponding to the current encapsulated data packet, and the amount of data to be transmitted in the corresponding target sub-stream is updated.

7. The MPTCP protocol based set-top box multicasting method according to any one of claims 1 to 6, characterized in that, The set-top box multiplexing method further includes the following steps: When a packet loss / increased latency event is detected in the TCP sub-stream, the TCP sub-stream that experienced the packet loss / increased latency event will be added to the bottleneck set. Detect whether there is a congestion event within a preset time range before and after the packet loss / latency increase event. If so, add the TCP sub-stream corresponding to the congestion event to the bottleneck set. The congestion window of the TCP sub-stream located in the bottleneck set is adjusted by the DWC coupled congestion control algorithm, and congestion control is performed on the corresponding TCP sub-stream according to the congestion window; Congestion control is performed on the TCP sub-streams that are not located in the bottleneck set using a single-path TCP congestion control algorithm.

8. A set-top box multiplexing device based on MPTCP protocol, characterized in that, include: The multi-channel transmission establishment module is used to establish an MPTCP multi-channel transmission channel between the video transmitter and the target set-top box in response to the multi-channel transmission connection request of the target set-top box. The sub-stream data packet transmission module is used to acquire target video data through the video sending end, encode the target video data to obtain encoded video data, generate multiple sub-stream data packets based on the encoded video data, and then transmit the multiple sub-stream data packets to the target set-top box through the MPTCP multiplexing channel. The sub-stream data packet merging and decoding module is used to merge multiple sub-stream data packets through the target set-top box to obtain the encoded video data, and to decode the encoded video data to obtain the target video data.

9. An electronic device, comprising: The electronic device includes a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for enabling communication between the processor and the memory. When the program is executed by the processor, it implements the steps of the set-top box multiplexing method based on the MPTCP protocol as described in any one of claims 1 to 7.

10. A storage medium, the storage medium being a computer-readable storage medium for computer-readable storage, characterized in that, The storage medium stores one or more programs, which can be executed by one or more processors to implement the steps of the set-top box multiplexing method based on the MPTCP protocol as described in any one of claims 1 to 7.