Node collaborative data distribution method

Through collaborative cooperation between the CDN service node and the CDN collaborative service node, data sharding and collaborative distribution are realized, which solves the problem of unstable service quality of P2PCDN nodes, reduces data distribution costs and improves distribution efficiency.

CN120111050APending Publication Date: 2025-06-06INST OF ACOUSTICS CHINESE ACAD OF SCI +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311657103.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-05
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

In the prior art, the service quality of the P2 PCDN node is unstable, resulting in unstable connections. Switching PCDN node services is delayed for a long time, making it difficult to meet users' needs for high-quality videos.

Method used

A node-coordinated data distribution method is proposed. Through the collaborative cooperation between the CDN service node and the CDN collaborative service node, data sharding and collaborative distribution are realized, the distribution cost of the CDN node is reduced, and the stability of the connection with users is ensured.

Benefits of technology

This method can ensure the distribution quality while reducing data distribution costs, avoiding the problems of connection instability and time delay caused by PCDN node instability, and providing a more efficient data distribution solution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120111050A_ABST
    Figure CN120111050A_ABST
Patent Text Reader

Abstract

The invention discloses a node collaborative data distribution method, and relates to a CDN service node and a CDN collaborative service node, a list of CDN collaborative service nodes for collaborative data distribution is maintained on the CDN service node, and the method comprises the following steps: a user sends a service request requiring establishment and maintenance of connection to a target CDN service node; after the connection is successful, the target CDN service node carries out data fragmentation in the connection; the target CDN service node creates a collaborative distribution information message based on the connection information and the data fragment information, and sends the collaborative distribution information message to CDN collaborative service nodes on a list according to a strategy; and the CDN collaborative service node constructs a response data packet based on the received collaborative distribution information message, and directly distributes the response data packet to the user. According to the method, the CDN cooperative service nodes with low bandwidth are used for helping the CDN service nodes to distribute data, and the distribution cost of the CDN service nodes is reduced while the connection stability and the service quality are ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network technology and communication technology, and in particular to a node collaborative data distribution method. Background Art

[0002] With the development of live broadcast, video on demand and other services, users have an increasing demand for high-quality videos, which requires both video quality and good user experience. Content delivery networks (CDNs) publish and cache website content to CDN nodes at the "edge" of the network closest to users, allowing users to obtain the required content nearby, solving network congestion and improving the response speed of users accessing websites. As the number of service users increases, the bandwidth demand of edge CDN nodes also increases exponentially. Point-to-point content delivery network (P2PCDN, PCDN for short) is a technology that combines P2P and CDN. It is based on P2P technology and uses massive fragmented idle resources of edge networks, including home bandwidth, to build a low-cost content distribution network service. Due to the instability of edge clients, the stability and performance of services provided by PCDN nodes are difficult to guarantee.

[0003] Existing research attempts to use PCDN nodes instead of CDN nodes to distribute data and reduce the cost of CDN node distribution. The main method is that after the user finds a suitable PCDN node through the CDN node, they establish a connection with the PCDN node, and the PCDN node directly distributes data to the user. When the PCDN node goes offline or the service quality cannot meet user needs, the user needs to find the PCDN node again through the CDN node to establish a connection. Since the service quality of the PCDN node is unstable, the connection will be unstable; and when switching the PCDN node service, the connection needs to be re-established, which has a long delay. Summary of the invention

[0004] The purpose of the present invention is to overcome the defects of the prior art and propose a node collaborative data distribution method.

[0005] In order to achieve the above object, the present invention proposes a node collaborative data distribution method, involving a CDN service node and a CDN collaborative service node, wherein the CDN service node maintains a list of CDN collaborative service nodes for collaborative data distribution, and the method comprises:

[0006] The user sends a service request to the target CDN service node to establish and maintain a connection;

[0007] After the connection is successful, the target CDN service node performs data sharding within the connection;

[0008] The target CDN service node creates a collaborative distribution message based on the connection information and data sharding information, and sends it to the CDN collaborative service nodes on the list according to the strategy;

[0009] The CDN collaborative service node constructs a response data packet based on the received collaborative distribution message and distributes it directly to the user.

[0010] Preferably, the CDN service node is a service node deployed in a content distribution network close to a user-side edge network, and has the following functions:

[0011] Supports establishing and maintaining connections with users, receiving user request messages, message parsing and session management;

[0012] Supports data caching and management. The types of cached data supported include but are not limited to video streams and data blocks. The formats of cached data supported include but are not limited to flv and hls.

[0013] Support retrieval and acquisition of cached data based on data index, the data index includes but is not limited to: live channel ID, video stream ID and data URL;

[0014] Supports maintenance of CDN collaborative service node list, CDN collaborative service node status detection, and collaborative service node selection and switching;

[0015] Supports the construction of collaborative distribution message packets and sends them to CDN collaborative service nodes.

[0016] Preferably, the types of the CDN collaborative service nodes include but are not limited to: planned and deployed CDN nodes and CDN nodes composed of one or more edge Internet access devices, and the edge Internet access devices include but are not limited to: edge IDC computer rooms, home routers, optical modems and boxes; the functions of the CDN collaborative service nodes include:

[0017] Supports data caching and management. The types of cached data supported include but are not limited to: video streams and data blocks. The protocol formats of cached data supported include but are not limited to: flv and hls.

[0018] Support retrieval and acquisition of cached data based on data index, the data index includes but is not limited to: live channel ID, video stream ID and data URL;

[0019] Support receiving and parsing collaborative distribution message packets sent by CDN service nodes;

[0020] Supports collaborative distribution of message packets, construction and encapsulation of corresponding data packets, and direct distribution to service users.

[0021] Preferably, the service request includes but is not limited to: a real-time streaming media playback request and a non-real-time streaming media playback request; the information carried in the streaming media playback request includes but is not limited to: a user network address and port number, a target CDN network address and port number, and a channel identifier.

[0022] Preferably, the connection established between the user and the target CDN service node uses an IP quintuple identifier, and the status of data distribution within the connection can be queried based on the IP quintuple and the currently sent message sequence number, including but not limited to: video stream ID, current data sending offset and sending length; the protocols supported by the connection include but are not limited to: HTTP-FLV and HLS.

[0023] Preferably, the target CDN service node performs data sharding within the connection including:

[0024] Based on the application layer and transport layer protocols within the connection, the data to be sent is fragmented and the relevant information required to construct the transport layer header is generated, including but not limited to: sequence number, confirmation number, data offset and checksum.

[0025] Preferably, the connection information includes but is not limited to: source IP, destination IP, source port, destination port and TCP header related information.

[0026] Preferably, the method of providing the data fragmentation information includes but is not limited to: providing complete data fragments and providing index information for recovering data fragments, and the index information includes but is not limited to: video stream ID, starting audio and video tags, timestamp, offset and length.

[0027] Preferably, the collaborative distribution message includes but is not limited to: data segmentation information and connection information, and the steps of creating the collaborative distribution message include:

[0028] Step 1) The CDN service node reads the data fragment or fragment index information from the corresponding connection according to the IP quintuple information corresponding to the connection and the sequence number of the message to be sent currently;

[0029] Step 2) Construct a collaborative distribution message, fill in the destination address with the network address of the selected CDN collaborative service node, and use the data fragmentation, fragmentation index information and / or connection information as the message payload; the protocols that carry the collaborative distribution message include but are not limited to: UDP protocol, TCP protocol and other transport layer protocols.

[0030] Preferably, sending according to the policy to the CDN collaborative service node on the list includes:

[0031] Detect the survival status of the nodes in the list of the CDN collaborative service nodes, and select one or a group of nodes as collaborative forwarding nodes from all online CDN collaborative service nodes through an optimal selection algorithm; factors that need to be considered by the optimal selection algorithm include but are not limited to: node forwarding cost, node available bandwidth and node request load.

[0032] Preferably, the constructing of the response data packet includes:

[0033] Step 1) Determine the method of carrying data fragmentation information in the collaborative distribution message. If it carries complete data fragmentation information, go to step 3), otherwise go to step 2);

[0034] Step 2) Read the index information of the data fragment in the payload of the collaborative distribution message, determine the video stream ID, the starting audio and video tag, timestamp, offset and length, retrieve the video stream from the cache according to the video stream ID, and generate the data fragment required to construct the message according to the starting audio and video tag, timestamp, offset and length;

[0035] Step 3) Read the connection information in the payload of the collaborative distribution message, build the message header, use the data fragments as the payload, reassemble the message, and reply to the user.

[0036] Preferably, the manner of carrying the data fragmentation information in the collaborative distribution message includes, but is not limited to: advance configuration, negotiation between nodes, and use of relevant field identifiers in the collaborative distribution message.

[0037] Compared with the prior art, the advantages of the present invention are:

[0038] The node collaborative data distribution method of the present invention forms a structure with edge CDN nodes and multiple collaborative CDN nodes, and uses collaborative CDN nodes with low bandwidth (e.g. PCDN nodes) to help CDN nodes distribute data, thereby reducing the CDN node distribution cost. At the same time, the CDN node maintains a stable connection with the user, and there is no need to re-establish the connection when switching the collaborative CDN service node, which is transparent to the user and can efficiently ensure the quality of data distribution. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] Figure 1 It is a flow chart of the node collaborative data distribution method of the present invention;

[0040] Figure 2 It is a data distribution flow chart when the target CDN service node of the present invention does not cache the requested data;

[0041] Figure 3 It is a data distribution flow chart when the target CDN service node of the present invention caches request data;

[0042] Figure 4 It is a timing diagram of CDN node collaborative data distribution of the present invention;

[0043] Figure 5 It is a schematic diagram of constructing a data compression message and a response data message of the present invention. DETAILED DESCRIPTION

[0044] In order to solve the problem of edge CDN nodes distributing data to users, the present invention aims to design a CDN node collaborative distribution method, which aims to use some CDN nodes with lower bandwidth costs (e.g. PCDN nodes) as collaborative nodes for data distribution, while ensuring the stability of the connection with users and shielding the impact of unstable collaborative CDN nodes on users, so as to achieve the goal of reducing data distribution costs while ensuring distribution quality. Figure 1 shown.

[0045] The technical solution of the present invention is described in detail below with reference to the accompanying drawings and embodiments.

[0046] Example 1

[0047] The embodiment of the present invention takes a CDN-based live broadcast scenario as an example, and uses PCDN nodes composed of fragmented idle resources at the edge of the network to assist the CDN system in data distribution.

[0048] The entire system includes: live broadcast source station, parent CDN node, edge CDN node (CDN service node), PCDN node (CDN collaborative service node), users and anchors. CDN service nodes include gateway modules and data compression modules, among which: the gateway module is responsible for establishing and maintaining connections with users, receiving, processing and replying to user request messages, and requesting, receiving and caching CDN data; the data compression module is responsible for maintaining and selecting PCDN nodes, building compressed message packets, and sending packets to PCDN nodes. PCDN nodes are equipped with CDN service modules, which are responsible for receiving and caching CDN data, processing compressed messages, building (data expansion) and sending response data packets.

[0049] like Figure 2 The figure shows the data distribution process when the target CDN service node does not cache the requested data, which specifically includes:

[0050] (1) When the anchor is broadcasting live, the live broadcast data is pushed to the source station;

[0051] (2) When watching live broadcast, the user initiates a request to the target CDN service node;

[0052] (3) The target CDN service node has no cached data locally and pulls data from the parent CDN node;

[0053] (4) If the parent CDN node does not have relevant data, it pulls data from the live broadcast source station; otherwise, it fetches data from the cache;

[0054] (5) The parent CDN node distributes live broadcast data to the CDN service node and its collaborative PCDN node through unicast or multicast;

[0055] (6) CDN service nodes and their collaborative PCDN nodes cache data locally;

[0056] (7) CDN service nodes distribute data to users.

[0057] like Figure 3 The figure shows the data distribution process when the target CDN service node caches the requested data. Figure 4 This is a timing diagram of CDN and PCDN node collaborative data distribution. The specific steps include:

[0058] (1) When watching a live broadcast, the user initiates a request to the target CDN service node;

[0059] (2) The target CDN service node gateway module receives the request message, calculates the data flow ID through its five-tuple information, retrieves the corresponding data from the cache, and synchronizes the TCP session information and HTTP payload index information used to construct the HTTP data message to the data compression module;

[0060] (3) The compression module of the target CDN service node constructs a data compression message according to the synchronization information of the gateway module;

[0061] (4) Select a PCDN node according to the PCDN node status and send a data compression message;

[0062] (5) Based on the received data compression information, the PCDN node retrieves the corresponding data from the cache and constructs an HTTP data message;

[0063] (6) PCDN nodes distribute data packets to users.

[0064] like Figure 5 FIG. 1 is a schematic diagram showing the construction of a data compression message on a CDN node and the generation of a data packet based on the compressed message on a PCDN node, wherein:

[0065] The method for constructing data compression messages on CDN nodes is as follows:

[0066] (1) The CDN node gateway module extracts the relevant information of the IP header and TCP header in the HTTP data message to be constructed, including: five-tuple information (source IP, destination IP, source port, destination port and protocol number) and sequence number (seq) information, and queries the locally maintained session information to obtain data index information, including: corresponding data flow ID, TAG information, TAG offset and length;

[0067] (2) Construct a compressed message based on the TCP protocol, fill the data index information into the TAG compression area in the message payload, and fill the IP and TCP header information into the connection information area of ​​the message payload.

[0068] The method for generating data packets based on compressed messages on a PCDN node is as follows:

[0069] (1) The PCDN node extracts the connection information area related fields in the compressed message payload as the IP header and TCP header for constructing the data message;

[0070] (2) The PCDN node extracts the TAG compression area related fields in the compressed message payload, queries the data cache location through the data stream ID and TAG information fields, determines the starting position and length of the data fragment to be sent through the TAG offset field and length, fills the data fragment into the data message payload, and completes the HTTP data message construction.

[0071] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit the present invention. Although the present invention is described in detail with reference to the embodiments, it should be understood by those skilled in the art that any modification or equivalent replacement of the technical solutions of the present invention does not depart from the spirit and scope of the technical solutions of the present invention and should be included in the scope of the claims of the present invention.

Claims

1. A node collaborative data distribution method, involving a CDN service node and a CDN collaborative service node, in, The CDN service node maintains a list of CDN collaborative service nodes for collaborative data distribution, and the method includes: The user sends a service request to the target CDN service node to establish and maintain a connection; After the connection is successful, the target CDN service node performs data sharding within the connection; The target CDN service node creates a collaborative distribution message based on the connection information and data sharding information, and sends it to the CDN collaborative service nodes on the list according to the strategy; The CDN collaborative service node constructs a response data packet based on the received collaborative distribution message and distributes it directly to the user.

2. The node collaborative data distribution method according to claim 1, It is characterized in that The CDN service node is a service node deployed in the content distribution network close to the user-side edge network, and has the following functions: Supports establishing and maintaining connections with users, receiving user request messages, message parsing and session management; Supports data caching and management. The supported cached data types include video streams and data blocks. The supported cached data formats include flv and hls. Supports retrieval and acquisition of cached data based on data index, the data index includes: live channel ID, video stream ID and data URL; Supports maintenance of CDN collaborative service node list, CDN collaborative service node status detection, and collaborative service node selection and switching; Supports the construction of collaborative distribution message packets and sends them to CDN collaborative service nodes.

3. The node collaborative data distribution method according to claim 1, It is characterized in that The types of CDN collaborative service nodes include: planned and deployed CDN nodes and CDN nodes composed of one or more edge Internet access devices, the edge Internet access devices include: edge IDC computer room, home router, optical modem and box; the functions of the CDN collaborative service node include: Supports data caching and management. The types of cached data supported include video streams and data blocks. The protocol formats of cached data supported include flv and hls. Supports retrieval and acquisition of cached data based on data index, the data index includes: live channel ID, video stream ID and data URL; Support receiving and parsing collaborative distribution message packets sent by CDN service nodes; Supports collaborative distribution of message packets, construction and encapsulation of corresponding data packets, and direct distribution to service users.

4. The node collaborative data distribution method according to claim 1, It is characterized in that The service request includes: a real-time streaming media playback request and a non-real-time streaming media playback request; the information carried in the streaming media playback request includes: a user network address and port number, a target CDN network address and port number, and a channel identifier.

5. The node collaborative data distribution method according to claim 1, It is characterized in that The connection established between the user and the target CDN service node is identified by an IP quintuple. Based on the IP quintuple and the current message sequence number, the status of data distribution within the connection can be queried, including: video stream ID, current data sending offset and sending length; the protocols supported by the connection include: HTTP-FLV and HLS.

6. The node collaborative data distribution method according to claim 1, It is characterized in that The target CDN service node performs data sharding within the connection including: Based on the application layer and transport layer protocols within the connection, the data to be sent is fragmented and the relevant information required to construct the transport layer header is generated, including: sequence number, confirmation number, data offset and checksum.

7. The node collaborative data distribution method according to claim 1, It is characterized in that The connection information includes: source IP, destination IP, source port, destination port and TCP header related information.

8. The node collaborative data distribution method according to claim 1, It is characterized in that The data fragmentation information is provided in a manner including: providing complete data fragmentation and providing index information for recovering data fragmentation, wherein the index information includes: video stream ID, starting audio and video tag, timestamp, offset bit and length.

9. The node collaborative data distribution method according to claim 8, It is characterized in that The collaborative distribution message includes: data segmentation information and connection information. The steps of creating the collaborative distribution message include: Step 1) The CDN service node reads the data fragment or fragment index information from the corresponding connection according to the IP quintuple information corresponding to the connection and the sequence number of the message to be sent currently; Step 2) Construct a collaborative distribution message, fill in the destination address with the network address of the selected CDN collaborative service node, and use the data fragmentation, fragmentation index information and / or connection information as the message payload; the protocols that carry the collaborative distribution message include: UDP protocol, TCP protocol and other transport layer protocols.

10. The node collaborative data distribution method according to claim 9, It is characterized in that The sending according to the policy to the CDN collaborative service node on the list includes: Detect the node survival status in the list of the CDN collaborative service nodes, and select one or a group of nodes as collaborative forwarding nodes from all online CDN collaborative service nodes through an optimal selection algorithm; factors that need to be considered by the optimal selection algorithm include: node forwarding cost, node available bandwidth and node request load.

11. The node collaborative data distribution method according to claim 9, It is characterized in that The constructing of the response data packet includes: Step 1) Determine the method of carrying data fragmentation information in the collaborative distribution message. If it carries complete data fragmentation information, go to step 3), otherwise go to step 2); Step 2) Read the index information of the data fragment in the payload of the collaborative distribution message, determine the video stream ID, the starting audio and video tag, timestamp, offset and length, retrieve the video stream from the cache according to the video stream ID, and generate the data fragment required to construct the message according to the starting audio and video tag, timestamp, offset and length; Step 3) Read the connection information in the payload of the collaborative distribution message, build the message header, use the data fragments as the payload, reassemble the message, and reply to the user.

12. The node collaborative data distribution method according to claim 9, It is characterized in that The carrying methods of the data fragmentation information in the collaborative distribution message include: pre-configuration, negotiation between nodes and use of relevant field identifiers in the collaborative distribution message.