Content distribution system, method, electronic device, and storage medium

CN116320032BActive Publication Date: 2026-08-11ALIBABA (CHINA) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-13
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

[0003]本申请的多个方面提供一种内容分发系统、方法、电子设备及存储介质,用以减轻内容资源访问的带宽压力,解决内容资源访问慢,甚至无法访问的问题

Benefits of technology

[0009]在本申请实施例中,以同一个边缘节点组为粒度进行域名解析,进而实现边缘节点就近访问同一个边缘节点组中的边缘节点便可获取所需的内容资源,实现了内容资源的就近分发,减轻了带宽压力,节约带宽资源,能够有效降低内容资源访问慢甚至无法访问情形的出现概率,特别是弱网环境或网络单向可见的场景下,无需搭建专线或者其他更加特殊的网络解决方案,便可实现访问加速。另外,日常的访问流量基本都在边缘节点之间,本申请实施例提供的技术方案在实际应用中的流量成本几乎为0,带来非常大的带宽节约。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116320032B_ABST
    Figure CN116320032B_ABST
Patent Text Reader

Abstract

This application provides a content distribution system, method, electronic device, and storage medium. In this embodiment, domain name resolution is performed at the granularity of the same edge node group, enabling edge nodes to access the required content resources by accessing the nearest edge node in the same edge node group. This achieves localized distribution of content resources, reducing bandwidth pressure and saving bandwidth resources. It effectively reduces the probability of slow or inaccessible content resources, especially in weak network environments or scenarios with one-way network visibility. Access acceleration can be achieved without building dedicated lines or other more specialized network solutions. Furthermore, since daily access traffic is primarily between edge nodes, the technical solution provided in this application has almost zero traffic cost in practical applications, resulting in significant bandwidth savings.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a content distribution system, method, electronic device, and storage medium. Background Technology

[0002] Currently, a common content distribution method involves all content resource retrieval requests from the edge side being sent directly to the content resource provider on the central side via the public internet to obtain the required content resources. However, as the number of content resource retrieval requests from the edge side increases, the bandwidth pressure between the edge and central sides grows, consuming more and more bandwidth resources. This can easily lead to slow or even inaccessible content resources, especially in weak network environments or scenarios with only one-way network visibility. Summary of the Invention

[0003] This application provides a content distribution system, method, electronic device, and storage medium to alleviate bandwidth pressure on content resource access and solve the problems of slow or even inaccessible content resources.

[0004] This application provides a content distribution system, including: a domain name resolution node and at least one edge node group, the edge node group including at least two edge nodes; a first edge node in the first edge node group, configured to send a first domain name resolution request to the domain name resolution node through a first service instance deployed thereon, and receive the access address of a second service instance deployed on a second edge node returned by the domain name resolution node, and send a content resource acquisition request to the second edge node through the first service instance based on the access address of the second service instance, the second edge node being located in the first edge node group; a domain name resolution node, configured to perform domain name resolution according to the first domain name resolution request, to determine the access address of the second service instance deployed on the second edge node from the access addresses of service instances deployed on each edge node in the first edge node group other than the first edge node; and a second edge node, configured to respond to the content resource acquisition request through the second service instance to acquire a first content resource, and return the first content resource to the first edge node.

[0005] This application also provides a content distribution method, applied to a first edge node in any first edge node group within a content distribution system. The content distribution system includes a domain name resolution node and at least one edge node group, where any edge node group includes at least two edge nodes located within the same local area network. The method includes: sending a first domain name resolution request to the domain name resolution node through a first service instance deployed on the first edge node; receiving an access address of a second service instance deployed on a second edge node, which is located in the first edge node group, returned by the domain name resolution node; sending a content resource acquisition request to the second edge node through the first service instance based on the access address of the second service instance; and receiving a first content resource returned by the second edge node through the second service instance.

[0006] This application also provides a content distribution method applied to a domain name resolution node in a content distribution system. The content distribution system further includes: at least one edge node group, any edge node group including at least two edge nodes located in the same local area network; the method includes: receiving a first domain name resolution request sent by a first edge node in a first edge node group through a first service instance deployed thereon; performing domain name resolution according to the first domain name resolution request to determine the access address of a second service instance deployed on a second edge node from the access addresses of service instances deployed on each edge node in the first edge node group other than the first edge node.

[0007] This application also provides an electronic device, including: a memory and a processor; the memory for storing a computer program; and the processor coupled to the memory for executing the computer program to perform steps in a content distribution method.

[0008] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, enables the processor to implement the steps in the content distribution method.

[0009] In this embodiment, domain name resolution is performed at the granularity of the same edge node group. This allows edge nodes to access the required content resources by accessing the nearest edge node in the same edge node group, achieving localized distribution of content resources. This reduces bandwidth pressure, saves bandwidth resources, and effectively reduces the probability of slow or inaccessible content resources. Especially in weak network environments or scenarios with one-way network visibility, access acceleration can be achieved without building dedicated lines or other more specialized network solutions. Furthermore, since daily access traffic is primarily between edge nodes, the technical solution provided in this embodiment has almost zero traffic cost in practical applications, resulting in significant bandwidth savings. Attached Figure Description

[0010] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0011] Figure 1 A system architecture diagram of an exemplary content distribution system provided in this application embodiment;

[0012] Figure 2 Signaling interaction diagram of a content distribution method provided in an embodiment of this application;

[0013] Figure 3 Signaling interaction diagram of another content distribution method provided in the embodiments of this application;

[0014] Figure 4 A flowchart illustrating a content distribution method provided in an embodiment of this application;

[0015] Figure 5 A flowchart illustrating another content distribution method provided in this application embodiment;

[0016] Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0017] Figure 7 This is a schematic diagram of another data processing apparatus provided in an embodiment of this application;

[0018] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0019] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0020] In the embodiments of this application, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the access relationship between associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates that the preceding and following associated objects have an "or" relationship. Furthermore, the terms "first," "second," "third," etc., in the embodiments of this application are merely for distinguishing the content of different objects and have no other special meaning.

[0021] A common content distribution method involves sending all content resource retrieval requests from the edge directly to the content resource provider on the central side via the public internet, in order to obtain the required content resources from the central provider. However, as the number of content resource retrieval requests from the edge increases, the bandwidth pressure between the edge and central sides grows, consuming more and more bandwidth resources. This can easily lead to slow or even inaccessible content resources, especially in weak network environments or scenarios with only one-way network visibility.

[0022] Another common content distribution method is using a Content Delivery Network (CDN). However, CDNs rely on a geographically dispersed network of edge nodes to distribute content resources. Users access nearby edge nodes via the public internet to obtain the content. However, in dedicated or private cloud environments, users may not have public internet access, or even if they do, CDN edge nodes may not be geographically located, leading to slow or even unavailable content access.

[0023] To address this, this application provides a content distribution system, method, electronic device, and storage medium. In this embodiment, domain name resolution is performed at the granularity of the same edge node group, enabling edge nodes to access the required content resources by accessing the nearest edge node in the same edge node group. This achieves localized distribution of content resources, reducing bandwidth pressure and saving bandwidth resources. It effectively reduces the probability of slow or inaccessible content resources, especially in weak network environments or scenarios with only one-way network visibility. Access acceleration can be achieved without building dedicated lines or other more specialized network solutions. Furthermore, since daily access traffic is primarily between edge nodes, the technical solution provided in this application has almost zero traffic cost in practical applications, resulting in significant bandwidth savings.

[0024] The technical solutions provided by the various embodiments of this application are described in detail below with reference to the accompanying drawings.

[0025] Figure 1 This is a system architecture diagram of an exemplary content distribution system provided for embodiments of this application. See also... Figure 1 The content distribution system may include: at least one group of edge nodes, such as Figure 1 Edge node groups 1 to 2 in the dataset, each edge node group can include at least two edge nodes. Figure 1 Taking edge node group 1, which includes edge nodes 1-1 to 1-3, and edge node group 2, which includes edge nodes 2-1 to 2-3, as an example, at least some of the edge nodes in at least one edge node group have service instances deployed on them. Figure 1 Service instance 1 is deployed on edge node 1-1, service instance 2 and service instance 3 are deployed on edge node 1-2, service instance 4 is deployed on edge node 1-2, service instance 1 is deployed on edge node 2-1, service instance 2 and service instance 3 are deployed on edge node 2-2, and service instance 4 is deployed on edge node 2-3. It is worth noting that the same service instance can be deployed on multiple different edge nodes without restriction.

[0026] In this embodiment, there are no restrictions on the network where the edge nodes in the same edge node group are located, as long as the network quality of the edge nodes in the same edge node group is good. Further optionally, the edge nodes in the same edge node group are located in the same local area network (LAN). This allows one edge node in the same edge node group to access another edge node through the LAN, without needing to access another edge node through the public network, reducing bandwidth pressure and saving bandwidth resources. In addition, the relatively good network quality of the LAN can effectively reduce the probability of slow or even inaccessible content resources, especially in weak network environments or scenarios with one-way network visibility. Access acceleration can be achieved without building dedicated lines or other more specialized network solutions.

[0027] In this embodiment, there is no limit to the number of edge nodes included in the edge node group. Several service instances can be deployed in all or some of the edge nodes. A service instance is the smallest unit of cloud service provided by a cloud service provider. In practical applications, cloud service providers offer various types of instances, such as instances providing AI (Artificial Intelligence) models, various application scenario instances based on AI (Artificial Intelligence) models for predictive processing, load balancing instances, database instances, and cloud server instances, etc. Application scenario instances include, but are not limited to, instances predicting citizen travel by public transportation, instances predicting advertising click behavior, or instances predicting user ratings.

[0028] Further, see Figure 1 The content distribution system also includes domain name resolution nodes responsible for domain name resolution. When any edge node needs to access a service instance of another edge node, it requests the domain name resolution node to perform domain name resolution on the domain name of the service instance to be accessed, obtain the access address of the service instance to be accessed, and access the corresponding service instance based on the access address to obtain the required content resources. The access address includes, but is not limited to, the IP (Internet Protocol) address and port number of the service instance to be accessed. Content resources include, but are not limited to, video data, audio data, text data, image data, application installation packages, or compressed data packages. Compressed data packages include, but are not limited to, compressed data packages of AI models.

[0029] Further optional, see Figure 1 The content distribution system may also include an access portal, allowing external clients, independent of the content distribution system, to access the content distribution system and obtain the required content resources.

[0030] In this embodiment, any edge node within any edge node group can cache the corresponding content resources locally, enabling the edge node to provide content distribution services to the outside world. In this way, other edge nodes in the same edge node group or external access terminals can access the required content resources from the nearest location, which greatly reduces the frequency of the content resource provider on the remote access center side obtaining the required content resources, alleviates bandwidth pressure, saves bandwidth resources, and can effectively reduce the probability of slow or even inaccessible content resources. Especially in weak network environments or scenarios where the network is only visible in one direction, access acceleration can be achieved without building dedicated lines or other more special network solutions.

[0031] Optionally, the content distribution system may also include a central control node. The central control node can maintain and manage various content resources. For example, it can maintain and manage the current version number of content resources, as well as the version numbers of content resources already distributed to various edge nodes, or which edge nodes need to update content resources, etc. In practical applications, content providers can store the latest version of content resources at the central control node. The central control node can actively or passively trigger each edge node to download the latest version of content resources from the central control node. This ensures that the content resources cached on the edge side are updated in a timely manner, improving the real-time performance of externally distributed content resources with little or no increase in bandwidth costs.

[0032] It is worth noting that, Figure 1 The number and positional relationships of edge node groups, edge nodes, domain name resolution nodes, central control nodes, etc. shown are merely exemplary and are not limited in the embodiments of this application.

[0033] Furthermore, the domain name resolution node can belong to the content distribution system or be independent of it; there are no restrictions on this. A separate domain name resolution node can be configured for each edge node group, or the same domain name resolution node can be configured for multiple edge node groups; alternatively, a separate domain name resolution node can be configured for each edge node, or the same domain name resolution node can be configured for multiple edge nodes; there are no restrictions on this.

[0034] In this embodiment, external access terminals, edge nodes, domain name resolution nodes, and central management nodes can be composed of software and / or hardware. In terms of implementation, edge nodes, domain name resolution nodes, and central management nodes can be terminal devices or servers. The terminal device or server can be hardware or software. When the terminal device is hardware, it can be, for example, a mobile phone, tablet computer, desktop computer, wearable smart device, or smart home device. When the terminal device is software, it can be installed on the aforementioned hardware devices. In this case, the terminal device can be, for example, multiple software modules or a single software module; this embodiment is not limited. The server can be hardware or software. When the server is hardware, it can be a single server or a distributed server cluster composed of multiple servers. When the server is software, it can be multiple software modules or a single software module; this embodiment is not limited.

[0035] To better understand the technical solutions provided in the embodiments of this application, the following is combined with... Figure 2 The signaling interaction diagram shown is used for explanation. Figure 2 This is a signaling interaction diagram of a content distribution method provided in an embodiment of this application. See also... Figure 2 The method may include the following steps:

[0036] 201. The first edge node in the first edge node group sends a first domain name resolution request, including the domain name of the second service instance, to the domain name resolution node through its own deployed first service instance.

[0037] In this embodiment, the first edge node group is any one of at least one edge node group, the first edge node is any one of several edge nodes included in the first edge node group, and the first service instance is any one of several service instances deployed on the first edge node. When the first service instance needs to obtain content resources, it can access the service instance that distributes the required content resources to the outside world. Here, the service instance that distributes the required content resources to the outside world is referred to as the second service instance. For example, if the first service instance is an application scenario instance that performs prediction processing based on an AI model, the first service instance needs to obtain a trained AI model and perform prediction processing based on the AI ​​model. The second service instance is responsible for distributing the trained AI model to the outside world, and the first service instance requests the second service instance to distribute the AI ​​model.

[0038] In this embodiment, the domain name resolution request sent by the first service instance to the domain name resolution node is referred to as the first domain name resolution request. The first domain name resolution request includes the domain name of the second service instance. In order for the first service instance to successfully access the second service instance, the first service instance requests the domain name resolution node to perform domain name resolution on the domain name of the second service instance through the first domain name resolution request, so as to obtain the access address of the second service instance.

[0039] 202. The domain name resolution node performs domain name resolution based on the first domain name resolution request, so as to determine the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group.

[0040] 203. The domain name resolution node sends the access address of the second service instance to the first edge node.

[0041] In this embodiment, the service routing capability provided by the domain name resolution node can perform domain name resolution at the granularity of the same edge node group, thereby enabling the edge node to access the required content resources nearby. In other words, it achieves the distribution of content resources based on proximity. Specifically, when the domain name resolution node performs domain name resolution on the domain name of the second service instance in the first domain name resolution request, it determines the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group. It can be understood that both the first edge node and the second edge node are in the first edge node group, that is, the content resources provided by the second edge node in the first edge node group can be distributed within the same first edge node group. In practical applications, the first edge node and the second edge node can be the same or different edge nodes. For example, if the first edge node deploys multiple service instances, and one service instance requests content distribution from another service instance, then the first edge node and the second edge node are the same edge node. As another example, if the second service instance that the first service instance in the first edge node needs to access is not a service instance deployed in the first edge node, then the first edge node and the second edge node are different edge nodes.

[0042] Optionally, to more accurately and efficiently control access to edge nodes from the nearest node, a mapping table is pre-maintained for each edge node group. The mapping table includes the domain names and access addresses of the service instances deployed on each edge node in the edge node group.

[0043] Based on this, when the domain name resolution node performs domain name resolution according to the first domain name resolution request, it is specifically used to: resolve the first domain name resolution request to obtain the domain name of the second service instance; query the mapping relationship table according to the domain name of the second service instance to determine the access address corresponding to the domain name of the second service instance; wherein, the mapping relationship table includes the domain name and access address of the service instances deployed on each edge node in the first edge node group.

[0044] In practical applications, if each edge node group has its own dedicated DNS resolution node, that DNS resolution node specifically maintains the mapping table for that edge node group. If multiple edge node groups share a DNS resolution node, when the first edge node sends its first DNS resolution request to the DNS resolution node, it can also send the identifier of the first edge node group. The DNS resolution node then determines the mapping table for the first edge node group from multiple mapping tables based on the identifier of the first edge node group. Alternatively, when the first edge node sends its first DNS resolution request to the DNS resolution node, it can also send its own identifier. The DNS resolution node determines the identifier of the first edge node group based on the identifier of the first edge node and then determines the mapping table for the first edge node group from multiple mapping tables. There are no restrictions on this approach.

[0045] Optionally, to more accurately and efficiently control access from the nearest edge node, a global mapping table can be maintained. This table includes node group identifiers for at least one edge node group, and the domain names and access addresses of service instances on each edge node within that group. When the domain name resolution node performs domain name resolution based on the first domain name resolution request, it specifically: resolves the first domain name resolution request to obtain the domain name of the second service instance and the node group identifier of the first edge node group; and queries the global mapping table based on the domain name of the second service instance and the node group identifier of the first edge node group to obtain the access address of the second service instance.

[0046] 204. The first edge node sends a content resource retrieval request to the second edge node through the first service instance based on the access address of the second service instance.

[0047] 205. The second edge node responds to the content resource acquisition request through the second service instance to obtain the first content resource.

[0048] 206. The second edge node returns the first content resource to the first edge node through the second service instance.

[0049] In this embodiment, the domain name resolution node sends the access address of the second service instance to the first edge node, so that the first service instance in the first edge node can access the second service instance deployed by the second edge node in the same edge node group according to the access address of the second service instance.

[0050] In this embodiment, the second edge node responds to the content resource acquisition request through the second service instance and obtains the content resource cached locally by the second edge node. For clarity and distinction, the content resource cached locally by the second edge node in response to the content resource acquisition request is referred to as the first content resource. The second edge node returns the first content resource to the first edge node through the second service instance, thus completing the process of the first edge node obtaining the first content resource from the nearest node.

[0051] In practical applications, the protocol of the first content resource returned by the second service instance may not be a protocol supported by the first service instance. Protocols include, but are not limited to: HTTP (Hypertext Transfer Protocol), TCP (Transmission Control Protocol), or TCP / IP (Transmission Control Protocol / Internet Protocol), etc.

[0052] Optionally, the second service instance can perform protocol conversion on the first content resource so that the protocol of the first content resource is a protocol supported by the first service instance, thereby eliminating the need for the first service instance to perform protocol conversion and increasing the probability that the first content resource can be successfully used by the first service instance.

[0053] Based on this, when the second edge node responds to a content resource retrieval request through the second service instance to obtain the first content resource, it can obtain the initial first content resource cached locally on the second edge node through the second service instance's response to the content resource retrieval request; the initial first content resource is then converted according to the protocol format of the content resource retrieval request to obtain the first content resource. It can be understood that the initial first content resource is transformed into the first content resource through protocol conversion.

[0054] Optionally, the content distribution system may also include a central control node located at the edge or in the cloud. In practical applications, the central control node can provide content resources with the latest version number. The second edge nodes interact with the central control node, and the content resources cached locally on the second edge nodes are updated in a timely manner, thereby achieving real-time distribution of content resources by the second edge nodes.

[0055] For example, the central control node is used to store at least one content resource and the current first version number of each content resource. The second edge node is further used to send a content resource update request to the central control node through a second service instance. The content resource update request includes the second version number of the first content resource cached locally by the second edge node. The central control node is further used to respond to the content resource update request and distribute the first content resource with the first version number to the second edge node according to the second version number and the first version number of the first content resource.

[0056] Specifically, when the second version number of the first content resource is less than the first version number, it indicates that the first content resource cached locally by the second edge node is not the latest version number. In this case, the central control node distributes the latest version number of the first content resource to the second edge node. When the second version number of the first content resource is equal to the first version number, it indicates that the first content resource cached locally by the second edge node is the latest version number. In this case, the central control node does not need to repeatedly distribute the latest version number of the first content resource to the second edge node.

[0057] The technical solution provided in this application performs domain name resolution at the granularity of the same edge node group, thereby enabling edge nodes to access the required content resources by accessing the nearest edge node in the same edge node group. This achieves localized distribution of content resources, reducing bandwidth pressure and saving bandwidth resources. It can effectively reduce the probability of slow or inaccessible content resources, especially in weak network environments or scenarios with one-way network visibility. It can accelerate access without the need to build dedicated lines or other more special network solutions. In addition, daily access traffic is mainly between edge nodes, and the traffic cost of the technical solution provided in this application is almost zero in practical applications, resulting in significant bandwidth savings.

[0058] In practical applications, besides edge nodes having content resource acquisition needs, external access terminals independent of the content distribution system also have content resource acquisition needs, and these external access terminals can achieve access based on proximity. Therefore, this application embodiment also provides a signaling interaction process for a content distribution method.

[0059] Figure 3 Signaling interaction diagram for another content distribution method provided in an embodiment of this application. See also Figure 3 The method may include the following steps:

[0060] 301. External access endpoints send a second domain name resolution request, including the domain name of the third service instance, through the access portal.

[0061] 302. The domain name resolution node performs domain name resolution based on the second domain name resolution request to determine the access address of the third service instance deployed on the third edge node from the access addresses of the service instances deployed on each edge node in the second edge node group.

[0062] 303. The domain name resolution node sends the access address of the third service instance to the external access terminal.

[0063] 304. The external access client sends a content resource retrieval request to the third edge node based on the access address of the third service instance.

[0064] 305. The third edge node responds to the content resource acquisition request through the third service instance to obtain the second content resource.

[0065] 306. The third edge node returns the second content resource to the external access terminal.

[0066] In this embodiment, the third service instance is the service instance requested by the external access client, the third edge node is the edge node where the third service instance is deployed, and the edge node group to which the third edge node is located is called the second edge node group. The second edge node group and the external access client are in the same local area network.

[0067] Specifically, the external access client sends a second domain name resolution request to the domain name resolution node through the access portal provided by the content delivery system. The domain name resolution node receives the second domain name resolution request from the external access client through the access portal; performs domain name resolution based on the second domain name resolution request to determine the access address of the third service instance and returns it to the external access client. The external access client and the second edge node group are on the same local area network, and the third edge node where the third service instance is located is deployed in the second edge node group. It can be understood that when the domain name resolution node performs domain name resolution on the domain name of the third service instance in the second domain name resolution request, it determines the access address of the third service instance deployed on the third edge node from the access addresses of the service instances deployed on various edge nodes in the second edge node group. For more information on domain name resolution, please refer to the foregoing content, which will not be repeated here.

[0068] The external access client sends a content resource retrieval request to the third edge node based on the access address of the third service instance. The third edge node retrieves the locally cached content resource (which can be called the second content resource) through the third service instance and returns it to the external access client. Thus, the external access client completes the nearest access.

[0069] The technical solution provided in this application embodiment allows external access terminals to obtain the required content resources by accessing the nearest edge node, realizing the local distribution of content resources, reducing bandwidth pressure, saving bandwidth resources, and effectively reducing the probability of slow or even inaccessible content resources. Especially in weak network environments or scenarios where the network is only visible in one direction, access acceleration can be achieved without building dedicated lines or other more special network solutions.

[0070] Figure 4 This is a flowchart illustrating a content distribution method provided in an embodiment of this application. The method can be applied to a first edge node in any first edge node group within a content distribution system. The content distribution system includes a domain name resolution node and at least one edge node group. Each edge node group includes at least two edge nodes located within the same local area network, and at least some of the edge nodes in the at least one edge node group have service instances deployed on them.

[0071] See Figure 4 The method may include the following steps:

[0072] 401. Send the first domain name resolution request to the domain name resolution node through the first service instance deployed on the first edge node.

[0073] 402. Receive the access address of the second service instance deployed on the second edge node returned by the domain name resolution node. The second edge node is in the first edge node group.

[0074] 403. Send a content resource retrieval request to the second edge node through the first service instance based on the access address of the second service instance.

[0075] 404. Receive the first content resource returned by the second edge node through the second service instance.

[0076] For detailed implementation processes and technical effects of each step in the above method, please refer to the relevant descriptions in the foregoing embodiments, which will not be repeated here.

[0077] Figure 5 A flowchart illustrating another content distribution method provided in this application embodiment. This method can be applied to a domain name resolution node in a content distribution system. The content distribution system further includes: at least one edge node group, where each edge node group comprises at least two edge nodes located within the same local area network.

[0078] See Figure 5 The method may include the following steps:

[0079] 501. Receive the first domain name resolution request sent by the first edge node in the first edge node group through its own deployed first service instance.

[0080] 502. Perform domain name resolution based on the first domain name resolution request to determine the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group.

[0081] Optionally, performing domain name resolution based on the first domain name resolution request includes: resolving the first domain name resolution request to obtain the domain name of the second service instance; querying a mapping table based on the domain name of the second service instance to determine the access address corresponding to the domain name of the second service instance; wherein the mapping table includes the domain names of service instances deployed on each edge node in the first edge node group and their corresponding access addresses.

[0082] Optionally, performing domain name resolution based on the first domain name resolution request includes: resolving the first domain name resolution request to obtain the domain name of the second service instance and the node group identifier of the first edge node group; querying the global mapping table based on the domain name of the second service instance and the node group identifier of the first edge node group to obtain the access address of the second service instance; wherein the global mapping table includes the node group identifier of at least one edge node group, and the domain name and access address of the service instance on each edge node in the edge node group corresponding to each node group identifier.

[0083] Further optionally, the above method also includes: receiving a second domain name resolution request sent by an external access terminal through an access portal; performing domain name resolution based on the second domain name resolution request to determine the access address of the third service instance and returning it to the external access terminal, wherein the external access terminal and the second edge node group are in the same local area network, and the third edge node is deployed in the second edge node group.

[0084] For detailed implementation processes and technical effects of each step in the above method, please refer to the relevant descriptions in the foregoing embodiments, which will not be repeated here.

[0085] Figure 6 This is a schematic diagram of a data processing apparatus provided in an embodiment of this application. The apparatus can be installed as a first edge node in any first edge node group within a content distribution system. The content distribution system includes a domain name resolution node and at least one edge node group, and any edge node group includes at least two edge nodes located within the same local area network.

[0086] See Figure 6 The device may include:

[0087] The sending module 61 is used to send a first domain name resolution request to the domain name resolution node through a first service instance deployed on the first edge node.

[0088] The first receiving module 62 is used to receive the access address of the second service instance deployed on the second edge node returned by the domain name resolution node. The second edge node is located in the first edge node group.

[0089] The sending module 61 is also used to send a content resource acquisition request to the second edge node through the first service instance based on the access address of the second service instance.

[0090] The first receiving module 62 is used to receive the first content resource returned by the second edge node through the second service instance.

[0091] Figure 6 The device shown can perform Figure 4 The implementation principle and technical effects of the method shown will not be elaborated further. Regarding the above embodiments... Figure 4 The specific methods by which each module and unit performs operations have been described in detail in the foregoing embodiments, and will not be elaborated upon here.

[0092] Figure 7 This is a schematic diagram of another data processing apparatus provided in an embodiment of this application. The apparatus can be installed in a domain name resolution node of a content distribution system. The content distribution system further includes at least one edge node group, where each edge node group includes at least two edge nodes located within the same local area network.

[0093] See Figure 7 The device may include:

[0094] The second receiving module 71 is used to receive the first domain name resolution request sent by the first edge node in the first edge node group through its own deployed first service instance.

[0095] The domain name resolution module 72 is used to perform domain name resolution according to the first domain name resolution request, so as to determine the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group.

[0096] Optionally, when the domain name resolution module 72 performs domain name resolution based on the first domain name resolution request, it is specifically used to: resolve the first domain name resolution request to obtain the domain name of the second service instance; query the mapping relationship table based on the domain name of the second service instance to determine the access address corresponding to the domain name of the second service instance; wherein, the mapping relationship table includes the domain names of service instances deployed on each edge node in the first edge node group and their corresponding access addresses.

[0097] Optionally, when the domain name resolution module 72 performs domain name resolution based on the first domain name resolution request, it is specifically used to: resolve the first domain name resolution request to obtain the domain name of the second service instance and the node group identifier of the first edge node group; query the global mapping relationship table based on the domain name of the second service instance and the node group identifier of the first edge node group to obtain the access address of the second service instance; wherein, the global mapping relationship table includes the node group identifier of at least one edge node group, and the domain name and access address of the service instance on each edge node in the edge node group corresponding to each node group identifier.

[0098] Optionally, the second receiving module 71 is further configured to receive a second domain name resolution request sent by an external access terminal through an access entry point; perform domain name resolution according to the second domain name resolution request to determine the access address of the third service instance and return it to the external access terminal; the second edge node group where the third edge node deploying the third service instance is located is in the same local area network as the external access terminal.

[0099] Figure 7 The device shown can perform Figure 5 The implementation principle and technical effects of the method shown will not be elaborated further. Regarding the above embodiments... Figure 7 The specific methods by which each module and unit performs operations have been described in detail in the foregoing embodiments, and will not be elaborated upon here.

[0100] It should be noted that the execution subject of each step of the method provided in the above embodiments can be the same device, or the method can be executed by different devices. For example, the execution subject of steps 401 to 404 can be device A; or the execution subject of steps 401 and 402 can be device A, and the execution subject of steps 403 and 404 can be device B; and so on.

[0101] Furthermore, in some of the processes described in the above embodiments and accompanying drawings, multiple operations appear in a specific order. However, it should be clearly understood that these operations may not be executed in the order they appear herein, or they may be executed in parallel. The operation numbers, such as 401, 402, etc., are merely used to distinguish different operations and do not represent any execution order. Additionally, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel. It should be noted that the descriptions such as "first" and "second" in this document are used to distinguish different messages, devices, modules, etc., and do not represent a sequential order, nor do they limit "first" and "second" to different types.

[0102] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.

[0103] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 8 As shown, the electronic device includes: a memory 81 and a processor 82;

[0104] Memory 81 is used to store computer programs and can be configured to store various other data to support operation on the computing platform. Examples of this data include instructions for any application or method operating on the computing platform, contact data, phone book data, messages, pictures, videos, etc.

[0105] The memory 81 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random-access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0106] The processor 82, coupled to the memory 81, is used to execute the computer program in the memory 81 for performing the steps in the content distribution method described above.

[0107] Furthermore, such as Figure 8 As shown, the electronic device also includes other components such as a communication component 83, a display 84, a power supply component 85, and an audio component 86. Figure 8 The diagram only shows some components and does not mean that the electronic device includes only these components. Figure 8 The components shown. Additionally... Figure 8 The components within the dashed box are optional, not mandatory, and their specific requirements depend on the product form of the electronic device. The electronic device in this embodiment can be a desktop computer, laptop computer, smartphone, or IoT (Internet of Things) device, or a server-side device such as a conventional server, cloud server, or server array. If the electronic device in this embodiment is a desktop computer, laptop computer, or smartphone, it may include... Figure 8 The components within the dashed box; if the electronic device in this embodiment is implemented as a conventional server, cloud server, or server array, etc., it may be omitted. Figure 8 The component within the dashed box.

[0108] For a detailed description of the implementation process of each action by the processor, please refer to the relevant descriptions in the foregoing method embodiments or device embodiments, which will not be repeated here.

[0109] Accordingly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which, when executed, can implement the steps that can be performed by an electronic device in the above method embodiments.

[0110] Accordingly, this application also provides a computer program product, including a computer program / instructions, which, when executed by a processor, enables the processor to perform the steps that can be executed by an electronic device in the above method embodiments.

[0111] The aforementioned communication components are configured to facilitate wired or wireless communication between the device containing the communication components and other devices. The device containing the communication components can access wireless networks based on communication standards, such as WiFi, 2G, 3G, 4G / LTE, 5G, or combinations thereof. In one exemplary embodiment, the communication components receive broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the communication components also include a Near Field Communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wide Band (UWB), Bluetooth (BT), and other technologies.

[0112] The aforementioned display includes a screen, which may include a Liquid Crystal Display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can sense not only the boundaries of touch or swipe actions but also the duration and pressure associated with the touch or swipe operation.

[0113] The aforementioned power supply components provide power to various components within the device in which they reside. These power supply components may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power to the device in which they reside.

[0114] The aforementioned audio component can be configured to output and / or input audio signals. For example, the audio component includes a microphone (MIC) configured to receive external audio signals when the device containing the audio component is in an operating mode, such as call mode, recording mode, or voice recognition mode. The received audio signals can be further stored in memory or transmitted via a communication component. In some embodiments, the audio component also includes a speaker for outputting audio signals.

[0115] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0116] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0117] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0118] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0119] In a typical configuration, a computing device includes one or more processors (central processing unit, CPU), input / output interfaces, network interfaces, and memory.

[0120] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0121] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change RAM (PRAM), static random-access memory (SRAM), dynamic random-access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device. As defined in this article, computer-readable media do not include transient media, such as modulated data signals and carrier waves.

[0122] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0123] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A content distribution system, characterized by, include: The domain name resolution node and at least one edge node group, wherein the edge node group includes at least two edge nodes, and the edge nodes in the same edge node group are located in the same local area network, and the domain name resolution node performs domain name resolution with the same edge node group as the granularity; The first edge node in the first edge node group is used to send a first domain name resolution request to the domain name resolution node through its own deployed first service instance, and to receive the access address of the second service instance deployed on the second edge node returned by the domain name resolution node, and to send a content resource acquisition request to the second edge node through the first service instance according to the access address of the second service instance. The second edge node is in the first edge node group. The domain name resolution node is used to perform domain name resolution according to the first domain name resolution request, so as to determine the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group. The second edge node is configured to respond to the content resource acquisition request through the second service instance to obtain the first content resource, and return the first content resource to the first edge node; Specifically, when the domain name resolution node performs domain name resolution based on the first domain name resolution request, it is used for: The first domain name resolution request is resolved to obtain the domain name of the second service instance; Based on the domain name of the second service instance, query the mapping table to obtain the access address of the second service instance; The mapping table includes the domain names of service instances deployed on each edge node in the first edge node group and their corresponding access addresses; or, The first domain name resolution request is resolved to obtain the domain name of the second service instance and the node group identifier of the first edge node group; Based on the domain name of the second service instance and the node group identifier of the first edge node group, the global mapping table is queried to obtain the access address of the second service instance; The global mapping table includes a node group identifier for at least one edge node group, and the domain name and access address of the service instance on each edge node in the edge node group corresponding to each node group identifier.

2. The system of claim 1, wherein, It also includes access points; The domain name resolution node is also used to: receive a second domain name resolution request sent by an external access terminal through the access entry; perform domain name resolution according to the second domain name resolution request to determine and return the access address of the third service instance, wherein the external access terminal and the second edge node group are in the same local area network, and the third edge node where the third service instance is located is deployed in the second edge node group.

3. The system of claim 1, wherein, When the second edge node responds to the content resource acquisition request through the second service instance to obtain the first content resource, it is specifically used for: The second service instance responds to the content resource acquisition request to obtain the initial first content resource cached locally by the second edge node; The initial first content resource is converted according to the protocol format of the content resource acquisition request to obtain the first content resource.

4. The system of claim 1, wherein, Also includes: A central control node, wherein the central control node is used to store at least one content resource and the current first version number of each content resource; The second edge node is also configured to send a content resource update request to the central control node through the second service instance, wherein the content resource update request includes a second version number of the first content resource cached locally by the second edge node; The central control node is also used to respond to the content resource update request and distribute the first content resource with the first version number to the second edge node according to the second version number and the first version number of the first content resource.

5. The system of claim 4, wherein, The central control node is specifically used for: In response to the content resource update request, if the second version number of the first content resource is less than the first version number, the first content resource with the first version number is distributed to the second edge node.

6. A content distribution method characterized by, It is applied to the first edge node in any first edge node group in a content distribution system, wherein the content distribution system includes a domain name resolution node and at least one edge node group, and any edge node group includes at least two edge nodes located in the same local area network. Edge nodes within the same edge node group are located within the same local area network, and the domain name resolution nodes perform domain name resolution at the same edge node group granularity. The method includes: A first domain name resolution request is sent to the domain name resolution node through a first service instance deployed on the first edge node; Receive the access address of the second service instance deployed on the second edge node returned by the domain name resolution node, wherein the second edge node is in the first edge node group; The first service instance sends a content resource acquisition request to the second edge node based on the access address of the second service instance, and receives the first content resource returned by the second edge node through the second service instance; Specifically, when the domain name resolution node performs domain name resolution based on the first domain name resolution request, it is used for: The first domain name resolution request is resolved to obtain the domain name of the second service instance; based on the domain name of the second service instance, a mapping table is queried to obtain the access address of the second service instance; wherein, the mapping table includes the domain names of service instances deployed on each edge node in the first edge node group and their corresponding access addresses; or, The first domain name resolution request is parsed to obtain the domain name of the second service instance and the node group identifier of the first edge node group; based on the domain name of the second service instance and the node group identifier of the first edge node group, the global mapping table is queried to obtain the access address of the second service instance; wherein, the global mapping table includes the node group identifier of at least one edge node group, and the domain name and access address of the service instance on each edge node in the edge node group corresponding to each node group identifier.

7. A content distribution method characterized by, A domain name resolution node is applied in a content distribution system, the content distribution system further comprising: at least one edge node group, any edge node group including at least two edge nodes located within the same local area network; edge nodes within the same edge node group are located within the same local area network, and the domain name resolution node performs domain name resolution at the same edge node group as granularity, the method comprising: Receive the first domain name resolution request sent by the first edge node in the first edge node group through its own deployed first service instance; Perform domain name resolution based on the first domain name resolution request to determine the access address of the second service instance deployed on the second edge node from the access addresses of the service instances deployed on each edge node other than the first edge node in the first edge node group. The domain name resolution based on the first domain name resolution request includes: The first domain name resolution request is resolved to obtain the domain name of the second service instance; Based on the domain name of the second service instance, query the mapping table to determine the access address of the second service instance; The mapping table includes the domain names of service instances deployed on each edge node in the first edge node group and their corresponding access addresses; or, The first domain name resolution request is resolved to obtain the domain name of the second service instance and the node group identifier of the first edge node group; Based on the domain name of the second service instance and the node group identifier of the first edge node group, the global mapping table is queried to obtain the access address of the second service instance; The global mapping table includes a node group identifier for at least one edge node group, and the domain name and access address of the service instance on each edge node in the edge node group corresponding to each node group identifier.

8. The method of claim 7, wherein, Also includes: Receive second domain name resolution requests sent by external access terminals through the access portal; Domain name resolution is performed according to the second domain name resolution request to determine the access address of the third service instance and return it to the external access terminal. The external access terminal is in the same local area network as the second edge node group, and the third edge node where the third service instance is located is deployed in the second edge node group.

9. An electronic device, comprising: include: Memory and processor; The memory is used to store computer programs; The processor is coupled to the memory for executing the computer program to perform the steps of the method according to any one of claims 6 to 8.

10. A computer readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it causes the processor to perform the steps of the method according to any one of claims 6 to 8.

Citation Information

Patent Citations

  • Cross-node edge calculation load balancing method and device, and readable storage medium

    CN114153607A

  • Cloud side communication method, device and equipment and computer readable storage medium

    CN115412555A