Content delivery routing through an airplane edge server
Patent Information
- Application Number
- CN202080107140.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-10-06
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2040-10-06
AI Technical Summary
因此,将用于乘客的媒体内容项目仅限制于存储在飞机上的媒体内容会使乘客的媒体体验降级
Smart Images

Figure CN116964992B_ABST
Abstract
Description
Background Technology
[0001] In wireless communication systems, satellite communication systems can provide in-flight entertainment to several devices coupled to a satellite terminal. The entertainment provided to these devices can be onboard content, such as a collection of movies stored on a hard drive located on the aircraft. Due to the size, weight, and power constraints of the aircraft, the media content that can be stored onboard may be limited. Therefore, restricting the media content available to passengers to only those stored onboard would degrade the passenger's media experience. Summary of the Invention
[0002] The described features typically involve a comprehensive system that provides request routing from the requesting client device to a content server, including an on-plane edge server. A content delivery network (CDN) comprising server layers can be defined. First-tier servers (e.g., on-plane edge servers) can be servers located on different mobile transportation vehicles, such as airplanes. Second-tier servers can be servers located on the ground in different zones. Subsequent server layers can connect to the second server layer. Different servers can store or access different media content items. The techniques described herein handle requests for media content items throughout this layer's connection topology.
[0003] The request routing system can route requests for media content items from devices located within a mobile platform connected to a satellite terminal in a satellite communication system. For example, each customer or passenger can use a device located on an aircraft to request media content items that may or may not be stored on the aircraft. The techniques described herein can route requests from the requesting client device to an on-aircraft edge server or a land server to locate a source capable of accessing the media content item. For example, a passenger on an aircraft can request to play a movie on their mobile device. A CDN Domain Name System (DNS) (e.g., on land or on the aircraft) can receive the request and determine whether the requested media content item is already stored on the aircraft. If the requested media content item is stored on the aircraft, then the onboard edge server serves the media content item to the mobile device. However, if the requested media content item is not stored on the aircraft, then the system routes the request to a land server that has the media content (e.g., directly or via another land server). In some cases, different servers can be associated with different content providers and have access to different materials. The media content item can be on-demand or live streaming content.
[0004] The techniques described in this article provide different ways to use network form factors to deliver content to client devices, perform handovers, and maintain and update CDN layer connection topologies. Once a server containing the requested media content item is found, the CDN can provide the network address of that server to either the aircraft's edge server or the client device. In some instances, the server is chosen because it may be the closest to the client device in terms of network proximity, rather than necessarily geographical proximity. The client device or edge server then requests the media content item from the server. As long as the aircraft remains within the coverage area of one or more satellite access nodes associated with the server, the server can stream the media content item to the client device. Once the aircraft begins to fly out of the coverage area, a handover to another server containing the requested media content item can be performed.
[0005] The foregoing has provided a fairly extensive overview of the features and technical advantages of examples according to this disclosure, enabling a better understanding of the following specific embodiments. Additional features and advantages will be described below. The disclosed concepts and specific examples can be readily used as the basis for modifications or the design of other structures for performing the same purposes of this disclosure. Such equivalent constructions do not depart from the scope of the appended claims. The features of the concepts disclosed herein, their organization and methods of operation, together with their associated advantages, when considered in conjunction with the accompanying drawings, will be better understood from the following description. Each of the figures is provided for illustrative and descriptive purposes only and is not intended to limit the scope of the claims. Attached Figure Description
[0006] A further understanding of the nature and advantages of this disclosure can be achieved by referring to the following figures. In the figures, similar components or features may have the same reference numerals. Furthermore, various components of the same type can be distinguished by a dash following the reference numeral and a second numeral used to differentiate them among similar components. If only the first reference numeral is used in the specification, the description applies to any similar component having the same first reference numeral but independent of the second reference numeral.
[0007] Figure 1 A diagram illustrating a satellite communication environment according to aspects of this disclosure;
[0008] Figure 2 A diagram illustrating a satellite communication environment according to various aspects of this disclosure;
[0009] Figure 3 A block diagram illustrating an example of a satellite path in a satellite communications environment according to various aspects of this disclosure;
[0010] Figure 4A block diagram illustrating an example of a terrestrial content delivery network hierarchy in a satellite communications environment according to various aspects of this disclosure;
[0011] Figure 5 A block diagram illustrating an example of a terrestrial content delivery network hierarchy in a satellite communications environment according to various aspects of this disclosure;
[0012] Figure 6 The process flow for instance content delivery routing for an on-aircraft edge server is illustrated according to various aspects of this disclosure;
[0013] Figure 7 This illustrates the process flow for delivering instance content via an on-aircraft edge server according to various aspects of this disclosure;
[0014] Figure 8 This illustrates the process flow for delivering instance content via an on-aircraft edge server according to various aspects of this disclosure;
[0015] Figure 9 A diagram illustrating the routing of instance content delivery via an on-aircraft edge server according to various aspects of this disclosure;
[0016] Figure 10A and 10B A diagram illustrating network handover in an instance-layer connection topology according to various aspects of this disclosure;
[0017] Figure 11 A flowchart illustrating an example method of layer connection management according to aspects of this disclosure is provided.
[0018] Figure 12 and 13 A flowchart illustrating an example method for performing a handover during content delivery to an airborne client device, according to aspects of this disclosure; and
[0019] Figures 14 to 16 A flowchart illustrating an example method for routing content delivery via an on-aircraft edge server, according to various aspects of this disclosure, is provided. Detailed Implementation
[0020] Satellite terminals (e.g., multi-user access terminals) within a satellite communication system can establish a communication link between the satellite terminal and a communication satellite using a communication antenna. In some cases, the communication link can be configured for two-way communication (e.g., transmission and reception) or one-way communication (e.g., reception). This communication link can provide communication services between a terrestrial network and a mobile platform containing the satellite terminal. These communication links can also be used to provide services to devices of passengers located on the mobile platform (e.g., user devices such as mobile phones, tablets, and laptops).
[0021] The technology described herein provides content items, such as media items, to a client device located on a mobile platform, such as an airplane, which has connectivity to an external network via a satellite communication system. The satellite communication system relays network traffic for specific content items between the client device and the content delivery network. That is, the technology described herein provides the delivery of content to a client device on a mobile platform via a content delivery network while the mobile platform is en route. The content delivery network may include terrestrial servers located on the ground and edge servers located on the mobile platform, such as an airplane, ship, train, spacecraft, or the like. The content delivery network may include one or more layers of terrestrial servers and one or more layers of edge servers. A satellite terminal may connect a mobile edge server in the edge server layer of the content delivery network to at least one terrestrial server in the terrestrial server layer of the content delivery network via one or more satellite communication links. Content stored in the one or more terrestrial server layers can be provided to the mobile edge server via the satellite communication link or directly to the client device. The mobile edge server can forward the content to the client device on the mobile platform.
[0022] According to aspects of this disclosure, a content delivery network can provide one or more content items to a satellite terminal. The satellite terminal can then provide the content items to a device onboard a mobile platform communicating with the satellite terminal. The CDN can locate the server closest to the client device in terms of network proximity. The CDN can use a content replication system to determine which server contains the requested media content item. Once the appropriate source is located, the CDN can provide the network address of the server to the client device or associated edge server. The client device or edge server can use the network address to obtain the media content item from the server.
[0023] In some instances, the CDN returns the address of the associated edge server to the client device. The client device can then request media content items from the edge server. If the edge server stores the media content items, it can serve them to the client device. If the edge server does not store the media content items, it can then begin requesting media content items through the connected server layer.
[0024] The techniques described in this article can also enable CDNs to push media content items stored on different servers. For example, a CDN can instruct media content items stored on a remote server to be pushed to a closer server or even to an edge server.
[0025] In some instances, content items can be delivered on demand or in real-time streaming. Satellite terminals can facilitate access to content items by acting as repeaters for network activity. In some instances, content items can be multicast as live streams, where live content is simultaneously streamed to multiple devices.
[0026] This description provides examples and is not intended to limit the scope, applicability, or configuration of embodiments of the principles described herein. Rather, the following description is intended to provide a illustrative description for those skilled in the art to implement embodiments of the principles described herein. Various variations can be made to the function and arrangement of the elements.
[0027] Therefore, various embodiments may omit, substitute, or add various procedures or components as appropriate. For example, it should be understood that methods may be performed in a different order than those described, and various steps may be added, omitted, or combined. Furthermore, aspects and elements described relative to certain embodiments may be combined in various other embodiments. It should also be understood that the following systems, methods, apparatuses, and software may individually or collectively be components of a larger system, wherein other procedures may be applied preferentially or otherwise modified.
[0028] Figure 1 A diagram illustrating a satellite communication environment 100 according to aspects of this disclosure is provided. The satellite communication environment 100 includes a wireless communication system 105, which in... Figure 1 The example described is a communication satellite system. Example satellite communication system 105 includes one or more communication satellites 102, one or more gateways 110, and one or more satellite terminals 112. Satellite terminal 112 may be a multi-user access terminal providing network access connectivity to multiple user devices on mobile platform 160. Satellite communication environment 100 may include CDN 122. CDN 122 may include one or more mobile platform edge servers 170, terrestrial CDN layers 120, and one or more origin servers 130.
[0029] The one or more communication satellites 102 in satellite communication system 105 may comprise any suitable type of communication satellite configured to wirelessly communicate with the one or more gateways 110 and the one or more satellite terminals 112. In some instances, some or all of the communication satellites 102 may be in geostationary orbit, such that their positions relative to terrestrial installations can be relatively fixed, or fixed within operational tolerances or other orbital windows. In other instances, any suitable orbit (e.g., low Earth orbit (LEO), medium Earth orbit (MEO), etc.) of the one or more communication satellites 102 for satellite communication environment 100 may be used.
[0030] Satellite terminal 112 may include a satellite terminal communication antenna configured to receive signal 106 from communication satellite 102 and transmit signals to said communication satellite. Therefore, satellite terminal 112 may be configured for one-way or two-way communication with one or more communication satellites 102 of satellite communication system 105. In some instances, the satellite terminal communication antenna may be directional. For example, the satellite terminal communication antenna may have a peak gain along a principal axis (e.g., the antenna line of sight). In some instances, the peak gain may roll off sharply in an off-axis direction. A sharp roll-off in antenna gain can be referred to as a narrow field of view for the antenna. In some instances, the satellite terminal communication antenna may be configured with a narrow field of view by means of a fixed configuration of focusing and / or reflecting elements, such as an antenna with a parabolic dish reflector or an array of antenna elements. The satellite terminal communication antenna may be positioned (e.g., pointed at communication satellite 102) by a locator (e.g., an elevation / azimuth locator). In some instances, satellite terminal communication antennas can be configured with a narrow field of view by means of beamforming, wherein the field of view can be electronically configured at the antenna element array to aim at signal transmission and / or reception along a desired direction.
[0031] Communication satellite 102 can communicate via service beam 108 pointing to the service beam coverage area 109 containing satellite terminal 112. For illustrative purposes, Figure 1 An aggregation of service beams 108 is shown, wherein each service beam 108 may be associated with a service beam coverage area 109. The service beam coverage area 109 may cover any suitable service area (e.g., circular, elliptical, hexagonal, local, regional, national, etc.) and provide service to any number of satellite terminals 112 located within the service beam coverage area 109. In some instances, the communication satellite 102 may be a multi-beam satellite and may have multiple service beams 108 covering multiple service beam coverage areas 109 that may or may not overlap with adjacent service beam coverage areas.
[0032] Communication satellite 102 can transmit a forward link signal in signal 106 via service beam 108 for reception by satellite terminal 112. Satellite terminal 112 can receive the forward link signal using its communication antenna. To establish a suitable communication link for the forward link signal between satellite terminal 112 and communication satellite 102, the forward link signal can be received at satellite terminal 112 with a signal strength or signal-to-noise ratio (SNR) higher than a threshold value, which may depend on the transmission power of communication satellite 102, the alignment and position of the communication antenna of satellite terminal, and the attenuation environment around the communication antenna of satellite terminal (e.g., the attenuation environment between satellite terminal 112 and communication satellite 102).
[0033] Communication satellite 102 can communicate with one or more gateways 110 by transmitting and / or receiving signals 104 via one or more gateway beams 132, each of which can be associated with a corresponding gateway beam coverage area 136. Gateway beams 132 can carry, for example, communication services for the one or more satellite terminals 112 (e.g., relayed by communication satellite 102), or other communications between communication satellite 102 and the one or more gateways 110.
[0034] Satellite terminal 112 can transmit a return link signal to communication satellite 102 via signal 106, and the communication satellite can relay the return link signal to one or more gateways 110 via signal 104. To establish a suitable communication link for the return link signal between satellite terminal 112 and communication satellite 102, the return link signal can be received at communication satellite 102 with a signal strength and / or SNR above a threshold, which may again depend on the transmit power of satellite terminal 112, the alignment and position of the satellite terminal communication antenna of satellite terminal 112, and the attenuation environment around the satellite terminal communication antenna (e.g., the attenuation environment between satellite terminal 112 and communication satellite 102). For example, the satellite terminal communication antenna can be considered correctly aligned with the target (e.g., communication satellite 102) when the transmitted signal of satellite terminal 112 has sufficient antenna gain in the direction of the target to allow signal communication with the desired performance characteristics.
[0035] Satellite terminal 112 may be part of a satellite terminal antenna assembly, which may further include various hardware for mounting the satellite terminal antenna, which may be mounted on a mobile platform 160. The mobile platform 160 may carry or couple to satellite terminal 112, which may include the satellite terminal antenna assembly and a satellite terminal receiver. The satellite terminal antenna assembly may also include circuitry and / or a processor for converting between radio frequency (RF) satellite communication signals (e.g., signal 106) and satellite terminal communication signals transmitted between the satellite terminal communication antenna and the satellite terminal receiver (e.g., performing frequency conversion, modulation / demodulation, multiplexing / demultiplexing, filtering, forwarding, etc.). Such circuitry and / or a processor may be included in the antenna communication assembly, which may be mounted externally to the mobile platform 160 (e.g., external to the fuselage of an aircraft). Alternatively or additionally, the satellite terminal receiver may include circuitry and / or a processor for performing various RF signal operations (e.g., receiving, performing frequency conversion, modulation / demodulation, multiplexing / demultiplexing, etc.).
[0036] Satellite terminal 112 can be connected to one or more devices within mobile platform 160 via wired or wireless connections, and can provide access to multiple specific content items for each of the devices via satellite communication environment 100, such as streaming network access services (e.g., Internet access, content items, etc.) or other communication services (e.g., broadcast media, etc.). Devices within mobile platform 160 may include, for example (but not limited to), user devices such as mobile phones, personal digital assistants (PDAs), other handheld devices, netbooks, laptops, tablets, and other display devices for connectivity or content consumption (e.g., TVs, computer monitors, etc.). In some instances, satellite terminal 112 provides bidirectional communication between the device and terrestrial CDN layer 120 via communication satellite 102 and gateway 110.
[0037] The satellite communication environment 100 (including communication satellite 102, gateway 110, and satellite terminal 112, etc.) can operate in one or more frequency bands. For example, the wireless communication system can operate in the International Telecommunication Union (ITU) Ku, K or Ka bands, C band, X band, S band, L band, etc.
[0038] Satellite terminal 112 can be located on mobile platform 160. Mobile platform 160 can be any device, equipment, or object capable of supporting satellite terminal 112 and mobile location. For example, mobile platform 160 can be a mobile platform carrier, such as an aircraft, ship, vehicle (e.g., car, bus, train), spacecraft, or the like. Figure 1 As shown, mobile platform 160 is an aircraft, but in other instances, other types of mobile platforms, such as ships, boats, trains, or buses, may include satellite terminal 112 and / or edge server 170. Figure 1 Three mobile platforms 160 are described: a first mobile platform 160-1 with a first edge server 170-1, a second mobile platform 160-2 with a second edge server 170-2, and an nth mobile platform 160-n with an nth edge server 170-n.
[0039] The one or more gateways 110 may use a gateway antenna system to transmit signal 104 to and receive signal 104 from the communication satellite 102 of the satellite communication system. The gateway antenna system may be bidirectional and designed with sufficient transmit power and receive sensitivity to reliably communicate with at least one communication satellite 102 of the satellite communication system. Gateway 110 may also communicate with a terrestrial content distribution network layer 120. Satellite terminals 112 within the satellite communication environment 100 may access the terrestrial CDN layer 120 via the one or more gateways 110. The terrestrial CDN layer 120 may include terrestrial servers connected via one or more networks, such as a local area network (LAN), metropolitan area network (MAN), wide area network (WAN), or any other suitable public or private network, and may be connected to other communication networks, such as the Internet, telephone networks (e.g., the Public Switched Telephone Network (PSTN), etc.) and / or similar.
[0040] A terrestrial CDN tier 120 can represent the terrestrial portion of a content delivery network and may contain one or more server tiers. Each server tier may contain one or more servers. In some instances, a server tier contains multiple servers located throughout a geographic region. Servers may store media content items or access stored media content items. Some media content items may be stored on a single server or on a single server, while other media content items may be stored on multiple servers or on multiple servers. In some instances, each server in a server tier stores the same content item, while in other instances, servers within a server tier may store at least some unique media content items relative to other servers in their server tier.
[0041] A terrestrial CDN tier 120 may contain two or more server tiers and one or more origin servers 130. A first server tier may contain a first number of servers geographically dispersed across a service area. A second server tier may contain a second number of servers, fewer than the first number. While the second server tier may also be geographically dispersed, it typically has a greater geographical or networking distance between servers or at the periphery of the network (e.g., where a user or gateway 110 may be located) and any given server in the second server tier. In some instances, servers in the second server tier may typically store more content (e.g., have larger storage capacity) than servers in the first server tier.
[0042] The one or more source servers 130 may be part of a terrestrial CDN layer 120, serving as the final server layer. That is, no other server layer is connected after the source server 130. For example, the terrestrial CDN layer 120 may include a first server layer, a second server layer connected to the first server layer, a third server layer connected to the second server layer, and so on, until the nth server layer is connected to one or more source servers 130.
[0043] Origin server 130 may represent one or more servers that ultimately store media content items replicated throughout the content delivery network. That is, one or more media content items stored at origin server 130 may be replicated to other servers in other server tiers. In some instances, origin server 130 may contain media content items that are not stored on any other servers. In this case, origin server 130 provides the media content items when requested. In some instances, origin server 130 may be associated with a content provider and may be separate from CDN tier 120. Therefore, CDN 122 may provide CDN services to one or more content providers, each associated with a different origin server 130.
[0044] (For example, the terrestrial server in the first server layer of terrestrial CDN layer 120) can be coupled to gateway 110 and one or more other servers. In various instances, the terrestrial server may be co-located with or otherwise located near one or more gateways 110, or may be installed at an Internet exchange point (IXP) between the terrestrial network serving gateway 110 and other networks. Therefore, the terrestrial server can communicate with gateway 110 and / or terrestrial CDN layer 120 via one or more wired and / or wireless communication links.
[0045] The terrestrial CDN tier 120 may include a content replication system 140 and a domain name system 150. The content replication system 140 can manage and control the operation of the content delivery network 122, which includes the terrestrial CDN tier 120 and edge servers 170. The domain name system 150 can maintain a list of domain names and addresses for each server in the CDN 122 and one or more origin servers 130 (e.g., if outside the CDN 122). The domain name system 150 can be queried when a request for media content items is received by the satellite communication environment 100 (e.g., from a device onboard a mobile platform 160). Parts of the content replication system 140 and the domain name system 150 may reside within various servers of the CDN 122, including terrestrial servers, origin servers 130, or edge servers 170.
[0046] As described, CDN 122 comprises a terrestrial CDN tier 120 and multiple mobile edge servers 170. This network topology provides flexibility in what media content is stored onboard to the mobile platform. For example, due to aircraft size, weight, and power as a percentage (SWaP) requirements, CDN 122 can have a “hybrid” CDN topology. That is, due to SWaP requirements, edge servers 170 can have relatively low storage capacity compared to at least some of the servers in the terrestrial CDN tier 120. For example, the servers in the terrestrial CDN tier 120 can effectively be high-capacity data centers. This topology allows devices on the mobile platform 160 to access a significantly larger amount of media content than would normally be available onboard to the mobile platform 160. In some instances, the number of edge servers 170 can be greater than the number of servers in the terrestrial CDN tier 120. In other words, multiple edge servers 170 can be associated with the same server in the terrestrial CDN tier 120. Association can mean that the terrestrial server and the one or more edge servers can be connected in a network layer connectivity topology.
[0047] Satellite communication environment 100 can use the techniques described herein to route media content items to one or more devices onboard mobile platform 160 in response to requests for such items. Media content can be delivered regardless of the location of mobile platform 160. Satellite communication environment 100 can provide communication between onboard devices and a terrestrial CDN hosting the media content items. These techniques can reduce costs, improve streaming functionality, reduce the size, weight, and power requirements of mobile platforms, provide passengers with more personalized and relevant media content items, and reduce network traffic.
[0048] Figure 2 A diagram illustrating a communication environment 200 according to various aspects of this disclosure is provided. The communication environment 200 includes a wireless communication system 105-a. Figure 2 The diagram illustrates a satellite communication system comprising at least one satellite 102-a, a gateway 110-a, and a satellite terminal 112-a mounted on a mobile platform 160-a (e.g., an aircraft). The communication environment 200 also includes a CDN 122-a, which may include a terrestrial CDN layer 120-a, a source server 130-a, and an edge server 170-a mounted on the mobile platform 160-a. The terrestrial CDN layer 120-a can communicate with the gateway 110-a. In operation, the wireless communication system 105-a provides bidirectional communication between devices on the mobile platform 160-a containing the edge server 170-a and a terrestrial network containing the terrestrial CDN layer 120-a and other networks (e.g., the Internet). The satellite 102-a, gateway 110-a, satellite terminal 112-a, source server 130-a, and terrestrial CDN layer 120-a can be respectively... Figure 1 Instances of or including aspects of satellite 102, gateway 110, satellite terminal 112, source server 130 and terrestrial CDN layer 120.
[0049] The one or more satellites 102-a in satellite communication system 105-a may comprise any suitable type of communication satellite. In some instances, some or all of the satellites may be in geostationary or geostationary orbit (GEO). In other instances, any suitable orbit for satellite communication system 105-a may be used (e.g., medium Earth orbit (MEO), low Earth orbit (LEO), etc.). Some or all of the satellites 102-a in satellite communication system 105-a may be multi-beam satellites configured to provide service over multiple service beam coverage areas within a predefined geographic service area.
[0050] Gateway 110-a may be bidirectional and is designed with sufficient transmit power and receive sensitivity to reliably communicate with satellite communication system 105-a. Satellite communication system 105-a can communicate with gateway 110-a by transmitting and receiving signals 104-a via one or more beams. Gateway 110-a uses a gateway antenna system to transmit signals 104-a to and receive signals from satellite communication system 105-a. Gateway 110-a may connect to the one or more networks and terrestrial CDN layer 120-a.
[0051] Land-based CDN tier 120-a may include content replication system 140-a. Content replication system 140-a may include replication manager 240, server index 242, CDN Domain Name System (DNS) 244, and tier connection topology 246. Replication manager 240 can manage the replication of content within land-based CDN tier 120-a and aircraft-based edge servers such as edge server 170-a. Media content items may be stored on a single server, or they may be replicated across two or more servers. For example, newer or more popular media content items may be stored on several servers, which may include land-based servers or aircraft-based edge servers. In contrast, obscure, older, or less popular media content items may be stored on fewer servers. Replication manager 240 can track where media content items are stored, control the replication of certain media content items on certain servers, provide commands for copying or deleting, and similar operations. Replication manager 240 can use server index 242 to determine where media content items are stored. Server index 242 may be an index of the content stored in each of the various servers, such as edge servers 170-a on airplanes and terrestrial CDN tiers 120-a.
[0052] CDN DNS 244 can receive Domain Name System (DNS) queries for requested content items, which may be generated based on a request for content made by client device 220 or 222. CDN DNS 244 can resolve DNS queries for the requested content. CDN DNS 244 can map DNS requests to appropriate CDN servers so that requesting client device 220 or 222 can obtain the requested content. The appropriate CDN server may be part of terrestrial CDN tier 120-a or may be an edge server. Prior to mapping the DNS request to the appropriate CDN server, there may be an initial DNS request to a non-CDN DNS server (hereinafter referred to as a "DNS resolver"), which redirects the DNS query to CDN DNS 244. CDN DNS 244 can use server index 242 and tier connection topology 246 to determine the nearest server currently storing the requested content.
[0053] CDN DNS 244 can use various techniques to resolve DNS queries. For example, each satellite access node (or other entity in the satellite communication system 105-a, such as a core node) may contain a DNS resolver that receives DNS queries from client devices 220 or 222. As another example, each aircraft 160-a may contain a DNS resolver. The DNS resolver can append information to the DNS query and provide the modified DNS query to CDN DNS 244. For example, the appended information can identify the aircraft from which the request originated. In this case, CDN DNS 244 can store a table indicating which aircraft contain which edge servers and look up the identification information to determine the edge server on the aircraft from which the request originated. As another example, the appended information can identify the edge server on the aircraft. After determining the edge server on the aircraft, CDN DNS can then use layer connection topology 246 and return the address of the appropriate CDN server to client devices 220 or 222 (e.g., using...). Figures 6 to 8 (Some of the technologies shown in the image).
[0054] In example Figure 6 In some instances, such as the examples shown, CDN DNS 244 can return the address of the nearest server from which the requesting client device 220 or 222 can subsequently obtain content. In instances where CDN DNS 244 returns the address of the nearest server (nearest in terms of network proximity, not necessarily physical proximity) to the requesting client device currently storing the requested content, CDN DNS 244 can use server index 242 to determine whether a particular server currently stores content. For example... Figure 7In the example shown, or other alternative examples, CDN DNS 244 can return the address of the aircraft edge server 170-a, and the aircraft edge server 170-a is then responsible for obtaining the content using layer connection topology 246 or from a copy stored locally.
[0055] Layer connection topology 246 manages the associations or relationships between edge servers and servers in terrestrial CDN layer 120-a. For example, layer connection topology 246 can determine how different servers are connected to each other within various networks. Layer connection topology 246 can also determine which servers reside in which layers of terrestrial CDN layer 120-a.
[0056] CDN DNS 244 can use layer connection topology 246 to return the address of the appropriate CDN server to client device 220 or 222. Layer connection topology 246 can also be used by a given CDN server in terrestrial CDN layer 120-a to know which "upstream" server(s) to request content from if the given CDN server does not currently store content. For example, the layer connection topology between an aircraft upper-edge server and a layer 2 server(s) is where the aircraft upper-edge server can obtain requested content that is not currently stored by the aircraft upper-edge server.
[0057] In an instance where multiple server layers exist within a terrestrial CDN layer 120-a, the layer connection topology 246 can indicate the relationships between servers in those various layers. The content replication system 140-a can distribute the layer connection topology information to various servers in the CDN (e.g., CDN 122) and can send updates as needed due to changes in the layer connection topology. Specifically, due to the mobile nature of aircraft 160-a, the satellite access nodes serving aircraft 106-a can change when aircraft 106-a moves to different user beams. Therefore, the server in terrestrial CDN layer 120-a that is closest to the edge server on aircraft 160-a in terms of network proximity can change over time. Therefore, the content replication system 140-a can update the layer connection topology 246 for edge server 170-a to improve content delivery. Besides network proximity, the content replication system 140-a can also consider other factors (e.g., load balancing, network speed, etc.) when managing the layer connection topology 246.
[0058] Aircraft communication equipment 206 may include a satellite terminal 112-a (which may be a multi-user access terminal, a part of a multi-user access terminal, or an aspect including a multi-user access terminal), an edge server 170-a, a network access unit 214, a wireless access point 216, and user equipment 220 and 222. Satellite terminal 112-a may include one or more mobile terminal antennas, a transceiver 210, and a modem 212.
[0059] Aircraft 160-a includes aircraft communication equipment 206, which includes a satellite terminal 112-a. The satellite terminal includes an antenna, which may be an antenna array. Aircraft 160-a can use the antenna of satellite terminal 112-a to communicate with satellite communication system 105-a via one or more signals 108-a. Parts of satellite terminal 112-a (e.g., antenna, transceiver 210) may be mounted externally to the fuselage or at other locations on the exterior of aircraft 160-a, and may be mounted under a radome. In other instances, other types of housings may be used to accommodate parts of satellite terminal 112-a. Other parts of satellite terminal 112-a may be located internally to the aircraft (e.g., modem 212). Satellite terminal 112-a may operate in ITU-T Ku, K, or Ka bands. Alternatively, satellite terminal 112-a may operate in other bands, such as C-band, X-band, S-band, L-band, etc.
[0060] Data transmitted to satellite communication system 105a via one or more signals 104-a and 108-a on the downlink and uplink can be formatted using a modulation and coding scheme (MCS), which can be satellite-customized or similar to other schemes in the industry. For example, the MCS can contain multiple code points, each associated with a modulation technique (e.g., BPSK, QPSK, 16QAM, 64QAM, 256QAM, etc.) and a coding rate based on the ratio of coded information bits to the total number of coded bits containing redundant information.
[0061] Edge server 170-a may reside on aircraft 160-a and may include processor 230, network interface 232, and memory 234. Processor 230 may execute instructions stored in memory 234 to perform the functions of edge server 170-a. Memory 234 may store instructions for the operation of edge server 170-a, local copies of content, and may also store index 236. Index 236 may be an index to the content stored in memory 234. In some instances, index 236 may be an index to content stored on other servers and indicate the storage location of the content. Index 236 can be used to determine whether requested content is locally stored and whether the content is retrievable.
[0062] The onboard communication system of aircraft 160-a can provide communication services to client devices 220 and 222 of aircraft 160-a via modem 212. Client devices 220 and 222 can connect to and access the land-based CDN layer 120-a via modem 212. Client devices 220 and 222 can be mobile devices or other devices within aircraft 160-a. Client devices 220 and 222 can communicate with modem 212 via network access unit 214, which can provide network services such as DNS, IP address management (e.g., Dynamic Host Configuration Protocol (DHCP)), Network Address Translation (NAT), etc. Client devices 220 or 222 can be connected to network access unit 214 via wired or wireless connections. For example, client device 222 can connect to network access unit 214 via wireless access point (WAP) 216, which can provide wireless connectivity within aircraft 160-a. For example, wireless connections can be based on technologies such as IEEE 802.11 (Wi-Fi) wireless local area network (WLAN) technology, or other wireless communication technologies.
[0063] exist Figure 2 In the examples shown, two client devices 220-a and 220-b (collectively referred to herein as client device 220) and two client devices 222-a and 222-b (collectively referred to herein as client device 222) are illustrated. Other instances may include other numbers of client devices 220 and 222. Client device 220 may be a mobile device, such as a wireless device, a remote device, a handheld device, a subscriber device, or some other suitable term, wherein "device" may also be referred to as a unit, station, terminal, or client. Client device 220 may also be a personal electronic device, such as a cellular telephone, a personal digital assistant (PDA), a tablet computer, a laptop computer, a personal computer, or the like. Client device 222 may be a device installed within aircraft 160-a, such as a seatback display screen or monitor.
[0064] Client devices 220 or 222 can generate requests for content items. For example, a user associated with client device 220-a can use the connectivity provided by WAP 216, network access unit 214, and satellite terminal 112-a to browse available content items from a media provider associated with CDN 122-a (e.g., connected to origin server 130-a or another server within terrestrial CDN tier 120-a). After selecting a content item to accept, the user can prompt client device 220-a to send a request for the content item, which can identify the selected content item and any other relevant information, including requested characteristics, content duration, related content, recommended content, and similar items. CDN 122-a can be used to serve the content to client device 220-a. For example, if the content is locally stored at edge server 170-a, then edge server 170-a can use the content service (e.g., via network access unit 214 and WAP 216). If the content is not stored locally, the server in terrestrial CDN tier 120-a can provide the content (e.g., via satellite terminal 112-a, network access unit 214, and WAP 216).
[0065] Satellite communication environment 200 can use the techniques described herein to route requests for media content items to client devices onboard mobile platform 160. CDN 122-a can provide network addresses for one or more servers, at which client devices or associated edge servers 170-a can obtain media content items. Regardless of the location of mobile platform 160, media content items can be served by servers that may be geographically farther away than other servers storing media content items (e.g., closer in the network topology, considering the connection via satellite 102-a and gateway 110-a). These techniques can reduce costs, improve streaming functionality, reduce size, weight, and power limitations of mobile platforms, provide passengers with more personalized and relevant media content items, offer passengers a wider range of media content items, or reduce network traffic.
[0066] Figure 3 A block diagram illustrating an example of a satellite path 310 in a communication environment 300 according to various aspects of this disclosure is shown. The communication environment 300 includes a wireless communication system. Figure 3The satellite communication system 105-b is depicted herein as a satellite communication system 105-b. Satellite communication system 105-b includes at least one satellite 102-b and multiple satellite access nodes 110-b (also referred to herein as gateways 110-b). Communication environment 300 also includes a CDN 122-a, which includes a terrestrial CDN layer 120-b, an origin server 130-b, and edge servers 170-b located on various mobile platforms, including aircraft. Satellite communication system 105-b, satellite 102-b, gateway 110-b, and CDN 122-b can be... Figure 1 and 2 Examples of or aspects thereof, including satellite communication system 105, satellite 102, gateway 110 and CDN 122.
[0067] Satellite communication system 105-b can provide communication connectivity between satellite access node 110-b and edge server 170-b. Satellite access node 110-b can be distributed over a wide geographical area. Each satellite access node 110-b can communicate with terminals (e.g., mobile terminal 112) within satellite communication system 105-b using one or more of satellite paths 310. Each satellite access node 110-b can communicate with terminals within one or more user beam groups 320 via satellite path 310.
[0068] The correspondence between gateway 110-b and user beamgroup 320 can be fixed or dynamic. In an instance where the correspondence between satellite access node 110-b and user beamgroup 320 is dynamic, the user beamgroup 320 for a particular satellite access node 110-b can change over time. However, in Figure 3 In this instance, the correspondence between satellite access node 110-b and user beam group 320 is fixed, meaning that the user beam group 320 associated with a specific satellite access node 110-b does not change over time. In some instances, the user beams within user beam group 320 are fixed, while in other instances, the user beams can be dynamic (e.g., active or deactivated).
[0069] like Figure 3 As shown, depending on the user beam group 320 in which the aircraft is located, the aircraft and its edge server 170-b can communicate with a specific satellite access node 110-b. Therefore, as the aircraft moves into the user beam group 320, it can change which satellite access node 110-b provides connectivity. The correspondence between the edge server 170-b and the user beam group 320 on the aircraft is represented by the user beam / edge server link 330, which is shown with arrows indicating changes over time.
[0070] Edge server 170-b can serve content items to onboard client devices. If a content item is unavailable on a given edge server 170-b, it can be retrieved from origin server 130-b or from another server in the terrestrial CDN tier 120-b. Which satellite access node 110-b provides connectivity to the requesting edge server 170-b can depend on the aircraft's location at the time of content item request or delivery. Because the communication satellite access node 110-b can change as the aircraft travels to different locations covered by different user beam groups 320, the proximity between edge server 170-b and servers in the terrestrial CDN tier can change over time.
[0071] Figure 4 A block diagram of an example content delivery network layer 400 in a satellite communications environment according to various aspects of this disclosure is shown. Content delivery network layer 400 includes an origin server 130-c, a terrestrial CDN layer 120-c, multiple satellite access nodes 110-c, satellite paths and user beamgroups 410, and an edge server layer 402 (e.g., including edge servers 170-c-1, 170-c-2, and 170-cn). The origin server 130-c, terrestrial CDN layer 120-c, the multiple satellite access nodes 110-c, satellite paths and user beamgroups 410, and edge server layer 402 can be respectively... Figures 1 to 3 The instances or aspects of the terrestrial CDN layer 120, gateway 110, satellite path 310, user beam group 320, user beam / edge server link 330, and edge server 170.
[0072] Servers within CDN tier 400 can be grouped into different tiers. For example, an aircraft-mounted edge server tier 402 could be organized as the first tier of CDN tier 400. Land-based CDN tier 120-c can also be divided into one or more tiers, such as a second server tier 404 and an Nth server tier 406. Any number of server tiers can exist between the second server tier 404 and the Nth server tier 406. The second server tier 404 and the Nth server tier 406 can each contain one or more servers capable of storing content items. Server tiers can contain geographically distributed servers.
[0073] When a content item is requested from an onboard client device, the content delivery network layer 400 can retrieve the content item from the server layer closest to the requesting client device in terms of network proximity to the content item. The content replication system 140-b can be used to manage content items within the content delivery network layer 400. If the content item is stored on an edge server on the aircraft, the content replication system 140-b retrieves the content item from the nearest server in terms of network proximity to the aircraft, which would be the onboard edge server in the first server layer 402. If the content item is not stored onboard, the content replication system 140-b can continue searching down the server layers according to the layer hierarchy. For example, the content replication system 140-b can query the server in the second server layer 404 associated with a given edge server for the content item. If the server in the second server layer 404 contains the content item, the server in the second server layer 404 can serve the content item to the client device (e.g., via satellite access node 110-c). If the server in the second server layer 404 does not store the content item, then the content replication system 140-b queries the associated server in the next server layer, which is in... Figure 4 In this example, it is server layer N 406. If the associated server in server layer N 406 stores the content item, then the associated server in server layer N 406 can provide the content item. If it is not stored, then the content replication system 140-b continues to query the associated server in subsequent server layers.
[0074] Associations may exist between the aircraft upper-edge server of the first server layer 402 and the satellite path / user beam group 410, and between the satellite access node 110-c and the servers of the terrestrial CDN layer 120-c. The association between the aircraft upper-edge server of the first server layer 402 and the satellite path / user beam group 410 can change as the aircraft travels along its flight path. Compared to the frequent changes in the association between the aircraft upper-edge server and the satellite access node 110-c in the first server layer 402 during flight, the association between the satellite access node 110-c and the servers of the terrestrial CDN layer 120-c can be fixed. In some instances, the association between the satellite access node 110-c and the servers of the terrestrial CDN layer 120-c may not be fixed, but may change relatively infrequently (e.g., due to network upgrades, reconfigurations, or maintenance). For example, the association between the satellite access node 110-c and the server in the terrestrial CDN layer 120-c can change less frequently than the association between the aircraft upper edge server in the first server layer 402 and the satellite path / user beam group 410.
[0075] Figure 5 A block diagram of an example content delivery network layer 500 in a satellite communication environment according to various aspects of this disclosure is shown. Content delivery network layer 500 includes a first layer 402-a comprising source server 130-d, terrestrial CDN layer 120-d, multiple satellite access nodes 110-d, satellite path / user beamgroup 410-a, and edge server 170-d. Source server 130-d, terrestrial CDN layer 120-d, the multiple satellite access nodes 110-d, satellite path / user beamgroup 410-a, and edge server 170-d can be respectively... Figures 1 to 4 The terrestrial CDN layer 120, satellite access node or gateway 110, satellite path 310, user beam group 320, user beam / edge server link 330, first layer 402 of edge server 170, and instances or aspects thereof of satellite path / user beam group 410.
[0076] CDN tier 500 servers can be as follows Figure 4 The CDN can be structured into different layers, as in the example above. For instance, the airborne edge server layer 170-d could be the first server layer 402-a in CDN layer 500. The terrestrial CDN layer 120-d can also be arranged with one or more layers, such as the second server layer 404-a and the third server layer 406-a. The terrestrial CDN layer 120-d can contain, in addition to... Figure 5 The two layers shown are additional server layers beyond the main layers. Land-based CDN layer 120-d may also contain origin server 130-d. Content replication system 140-c can be used to manage content items within content delivery network layer 500.
[0077] Each server in a given server tier can be associated with a server in a higher (e.g., N+1) server tier. For example, each server in the second server tier 404-a can be associated with a server in the third server tier 406-b, and so on. Each server in the Nth server tier can be associated with one or more servers in a lower (e.g., N-1) server tier. In some cases, a given server can be associated with a server in a non-proximity server tier. For example, a server in the second server tier 404-a can be associated with a server in the fourth server tier (e.g., where there might not be any servers in the third server tier that are network-proximity to servers in the second server tier).
[0078] For example, each edge server 170-d of the first server layer 402-a may be associated with a server 522 of the second server layer 404-a. The association between edge server 170-d and server 522 of the second server layer 404-a may be based on network proximity between the satellite access node 110-d serving the user beam providing the service and the aircraft where edge server 170-d is located. For example, an aircraft-borne edge server 170-d within a user beam served by satellite access node 110-d-1 (e.g., via satellite path / user beam group 410-a) may be associated with server 522-a of the second server layer 404-a. Server 522 of the second server layer 404-a may be associated with edge server 170-d in a beam group served by multiple satellite access nodes 110-d. For example, an aircraft-borne edge server 170-d within a user beam served by satellite access node 110-d-2 (e.g., via satellite path / user beam group 410-a) can also be associated with server 522-a of the second server layer 404-a. Also... Figure 5 As shown, the aircraft-borne edge server 170-d, within the user beam served by satellite access nodes 110-d-3 and 110-dn (e.g., via satellite path / user beam group 410-a), can be associated with servers 522-b and 522-n of the second server layer 404-a, respectively.
[0079] Similarly, servers in the third server tier 406-a can each be associated with a server in a higher server tier and one or more servers in a lower server tier. For example, servers 522-a and 522-b in the second server tier 404-a are associated with server 532-a in the third server tier 406-a, while server 522-c is associated with server 532-b in the third server tier 406-a. Each server in the highest tier of the terrestrial CDN tier 120-d can be associated with source server 130-d. Therefore, each branch of the terrestrial CDN tier 120-d can terminate at source server 130-d. In some cases, CDN tier 120-d can represent the network topology of servers within a tier. For example, servers in a given server tier may not communicate directly with each other, or the network connection topology used for CDN tier 120-d may not include connections between servers in a given server tier.
[0080] CDN DNS 244-a can use these associations to determine which server containing a content item is closest to the requesting client device or the edge server on the aircraft in terms of network proximity. These associations can be used to retrieve the content item.
[0081] Figure 6 This illustration shows a process flow 600 for instance content delivery routing for an aircraft edge server 170-b, according to various aspects of this disclosure. Process flow 600 includes an origin server 130-e, a CDN DNS 244-b, a second server layer 522-db, an edge server 170-e, an aircraft 160-b, and a client device 220-c. The origin server 130-e, CDN DNS 244-a, second server layer 522-d, edge server 170-e, aircraft 160-b, and client device 220-c can be respectively... Figures 1 to 5 The origin server 130, CDN DNS 244, Layer 2 server 522, edge server 170, aircraft 160, and client device 220 or 222 instances or aspects thereof. In some instances, process flow 600 may be... Figures 1 to 5 The content described herein is delivered in a network layer or satellite communication environment, at least a portion of which is executed.
[0082] Process flow 600 illustrates the actions taken over time by different devices in the line when processing a request for a content item. Process flow 600 provides an example of how requests for content items can be generated, routed, processed, and fulfilled through one or more different servers. Specifically, process flow 600 illustrates how a request for content item A can be routed through content delivery network tiers. In this example, CDN DNS 244-a can use server indexes from the edge server tier and the second server tier to determine whether to return the network address of edge server 170-e, the corresponding tier 2 server (e.g., tier 2 server 522-d), or origin server 130-e. Figure 6 In this example, only two server layers are shown (edge server layer and second server layer). In other instances, there may be more than two server layers.
[0083] Aircraft 160-b may include edge server 170-e and client device 220-c. Aircraft 160-b may contain more than one client device; instances of this can be, for example, [examples would be inserted here]. Figure 1 The client device 220 or 222 described herein. Client device 220-c initiates a request for content item A, which may be a multimedia item, movie, game, program, live streaming event, or the like. At 602, a Domain Name System (DNS) request for item A is generated. The DNS request is forwarded to CDN DNS 244-a. For example, CDN DNS 244-a may be associated with a content provider for content item A, and the request for content item A (e.g., an HTTP request) may be made to a content provider address.
[0084] In 604, CDN DNS 244-a can determine the location of edge server 170-b on aircraft 160-b. This determination may include identifying aircraft 160-b and which of a plurality of edge servers is located on aircraft 160-b. Identifying the aircraft may include the address from which the lookup request was sent (which may be associated with network access unit 214 that may encapsulate or perform NAT for the request). Identifying the edge server may include sending a query to aircraft 160-b that consults a database or similar indexed for aircraft and edge servers. The determination may further include determining a unique identifier for edge server 170-b or a network address for said edge server.
[0085] At 606, CDN DNS 244-a can determine whether item A is stored in edge server 170-b. If so, then at 608, CDN DNS 244-a can return the address of edge server 170-b to client device 220-c. For example, CDN DNS 244-a can send a redirect to client device 220-c with the address of edge server 170-b. At 620, client device 220-c can request item A from edge server 170-b. Edge server 170-b can receive the request at 622 and serve item A to client device 220-c. Alternatively, CDN DNS 244-a can send the message directly to edge server 170-b, which can then serve item A to client device 220-c, just as if the address came from a content provider or origin server 130-e. For example, CDN DNS 244-a can provide encryption or other information (such as a Secure Sockets Layer (SSL) certificate) for edge server 170-b to respond directly to client device 220-c. At 624, client device 220-c can receive item A from edge server 170-b. After receiving item A, client device 220-c can display or otherwise output item A. In some instances, client device 220-c can directly query edge server 170-b for item A.
[0086] Returning to 606, if CDN DNS 244-a determines that item A is not stored in edge server 170-e, then process flow 600 proceeds to 630. At 630, CDN DNS 244-a can determine the identity of the Layer 2 server associated with edge server 170-e. In this example, Layer 2 server 522-d is associated with edge server 170-e. At 632, CDN DNS 244-a determines whether item A is stored in Layer 2 server 522-d. If so, then process flow 600 proceeds to 634 and CDN DNS 244-a returns the address of Layer 2 server 522-d to client device 220-c (e.g., in a redirect message). At 640, client device 220-c receives the address of Layer 2 server 522-d and at 642 requests item A from Layer 2 server 522-d. Alternatively, CDN DNS 244-a can send the message directly to Layer 2 server 522-d, which can then serve item A to client device 220-c, just as it would from the address of content provider or origin server 130-e. For example, CDN DNS 244-a can provide encryption or other information (e.g., SSL certificate) to Layer 2 server 522-d for direct response to client device 220-c. Layer 2 server 522-d can then serve item A to client device 220-c. At 644, client device 220-c can receive item A from Layer 2 server 522-d. After receiving item A, client device 220-c can display or otherwise output item A.
[0087] Returning to 632, if CDN DNS 244-a determines that item A is not stored in the second-tier server 522-d, then process flow 600 proceeds to 650. At 650, CDN DNS 244-a provides the address of origin server 130-e to client device 220-c (e.g., in a redirect message). At 652, client device 220-c can request item A from origin server 130-e at 654. Alternatively, CDN DNS 244-a can send the message directly to origin server 130-e, which can then provide item A to client device 220-c, just as if it were from a content provider's address. For example, CDN DNS 244-a can provide origin server 130-e with encryption or other information for direct response to client device 220-c (e.g., an SSL certificate). Origin server 130-e can provide item A to client device 220-c at 656. After receiving item A at 656, client device 220-c can display or otherwise output item A.
[0088] Figure 6 The example only illustrates a single server layer between the edge server layer and the origin server. However, in an example with an additional server layer, CDN DNS 244-a can query the additional server layer for item A before CDN DNS 244-a returns the address of origin server 130-e to client device 220-c. After determining that the server in the additional server layer stores item A, CDN DNS 244-a can send the address of that server to client device 220-c (e.g., in a redirect message) or instruct the server to respond to the request with item A.
[0089] In some instances, another device on board the aircraft, besides client device 220-c, can be the recipient of the address of the server storing item A. For example, a satellite terminal, transceiver, modem, network access unit, edge server, or wireless access point can receive and process the address (e.g., acting as a proxy server for client device 220-c).
[0090] An example of process flow 600 may include a method for use in a communication system comprising a content delivery network, the content delivery network including an edge server layer located on a mobile platform served by a wireless communication link of the communication system and at least one terrestrial server layer geographically distributed within the communication system. Process flow 600 may include receiving a request for a media content item from a device within the mobile platform served via the wireless communication link of the communication system. Process flow 600 may further include determining the identity of a mobile edge server located on the mobile platform based at least in part on the network address of the device associated with the request. Process flow 600 may determine whether the media content item is stored on the mobile edge server. When the media content item is stored on the mobile edge server, process flow 600 may redirect the request for the media content item to the mobile edge server. When the media content item is not stored on the mobile edge server, process flow 600 may determine whether the media content item is stored on a first terrestrial server of a first server layer of the at least one terrestrial server layer, the first terrestrial server being coupled to an access node (e.g., a satellite access node) serving the mobile platform and associated with the mobile edge server for the content delivery network. When a media content item is stored on a first land server in the first server layer, process flow 600 may include redirecting requests for the media content item to the first land server.
[0091] Figure 7This illustration shows a process flow 700 for delivering routed content via an instance of an edge server on an aircraft, according to various aspects of this disclosure. Process flow 700 includes an origin server 130-f, a CDN DNS 244-b, a second-layer server 522-e, an edge server 170-f, an aircraft 160-c, and a client device 220-d. The origin server 130-f, CDN DNS 244-b, second-layer server 522-c, edge server 170-f, aircraft 160-c, and client device 220-d can be respectively... Figures 1 to 6 The origin server 130, CDN DNS 244, Layer 2 server 522, edge server 170, aircraft 160, and client device 220 or 222 instances or aspects thereof. In some instances, process flow 700 may be... Figures 1 to 5 The content described herein is delivered in a network layer or satellite communication environment, at least a portion of which is executed.
[0092] Figure 7 The examples illustrate how requests for content items can be generated, routed, processed, and fulfilled through one or more different servers. Specifically, process flow 700 shows how a request for content item A can be routed through the content delivery network hierarchy. In process flow 700, CDN DNS 244-b can always return the network address of edge server 170-f to client device 220-d when it receives a request for the content item from client device 220-d. Edge server 170-f then takes over the delivery of the content item to client device 220-d. Figure 7 The example shown has only two server layers (edge server layer and second server layer). Alternatively, there may be more than two server layers.
[0093] Aircraft 160-c may include an edge server 170-f and a client device 220-d. Aircraft 160-c may include more than one client device, which can be, for example... Figure 1 The client device 220 or 222 described herein. Client device 220-d can initiate a request for at least content item A, which may be a movie, game, program, live streaming event, or the like. At 702, a Domain Name System (DNS) request for item A is generated. The DNS request is forwarded to CDN DNS 244-b.
[0094] In 704, CDN DNS 244-b can determine edge server 170-f located on aircraft 160-c. This determination may include identifying which of a plurality of edge servers is located on aircraft 160-c. This may include sending a query to aircraft 160-c, consulting a database indexed for aircraft and edge servers, and detecting an identifier or similar for edge server 170-f in a DNS request for item A. The determination may further include determining a unique identifier for edge server 170-f or its network address.
[0095] At 706, CDN DNS 244-b can return the address of edge server 170-f to client device 220-d (e.g., in a redirect message). At 708, in response to receiving the address for edge server 170-f, client device 220-d can request item A from edge server 170-f. Edge server 170-f can receive the request at 710 and determine if it stores item A. If edge server 170-f does store item A, then edge server 170-f provides item A to client device 220-d at 712. At 714, client device 220-d receives item A from edge server 170-f. After receiving item A, client device 220-d can display or otherwise output item A. In some instances, client device 220-d can query edge server 170-f directly for item A, instead of through CDN DNS outside of aircraft 160-c. Direct queries can be facilitated via the onboard network access unit (e.g., network access unit 214) of the aircraft 160-c (e.g., network access unit 214 may include a DNS resolver that can resolve the address of a query to the edge server 170-f).
[0096] Returning to 710, if edge server 170-f determines that it does not store item A, then process flow 700 proceeds to 720. At 720, edge server 170-f can request item A from the Tier 2 server associated with it. In this example, Tier 2 server 522-e is associated with edge server 170-f. At 722, Tier 2 server 522-e determines whether it stores item A. If so, then process flow 700 proceeds to 724 and Tier 2 server 522-e provides item A to edge server 170-f. At 726, edge server 170-f can forward item A to client device 220-d. At 728, client device 220-d receives item A from edge server 170-f. After receiving item A, client device 220-d can display or otherwise output item A.
[0097] Returning to 722, if the second-tier server 522-e determines that it does not store item A, then process flow 700 proceeds to 730. At 730, the second-tier server 522-e requests item A from the source server 130-f. In other instances with additional server layers between the edge server layer and the source server 130-f, the second-tier server 522-e may query the next server layer for item A before or instead of querying the source server 130-f.
[0098] At 732, source server 130-f receives a request for item A and provides item A to second-tier server 522-e. At 734, second-tier server 522-e receives item A and provides it to edge server 170-f. Edge server 170-f can then provide item A to client device at 736. After receiving item A at 738, client device 220-d can display, output, or otherwise use item A.
[0099] Figure 7 The example illustrates how each server serves item A to a neighboring server in the CDN tier. Alternatively, the requesting server can provide the address of edge server 170-f or client device 220-d to the next server. In this example, the server storing item A can send item A directly to edge server 170-f or client device 220-d. For example, origin server 130-f can serve item A directly to edge server 170-f (e.g., without going through tier 2 server 522-e).
[0100] In some instances, instead of requesting item A from layer 2 server 522-e as in 720, edge server 170-f can redirect client device 220-d to layer 2 server 522-e. However, some content items may involve several requests, and therefore this alternative can result in significant latency due to the inherent latency in each round trip over a satellite network. In process flow 700, edge server 170-f can reduce the number of requests, for example, by receiving all or different portions of the content item along with each request. For instance, when a single request identifying a content item (e.g., a movie or other streaming content) is received at edge server 170-f, edge server 170-f can request all or a significant portion of the content item from layer 2 server 522-e and respond directly to the request from client device 220-d, thus incurring no latency for each request for a smaller portion of the content item.
[0101] An example of process flow 700 may include a method for use in a communication system including a content delivery network comprising an edge server layer located on a mobile platform served by a wireless communication link of the communication system and at least one terrestrial server layer geographically distributed within the communication system. Process flow 700 may include receiving a request for a media content item for a device within the mobile platform at a mobile edge server located on the mobile platform, wherein the request is redirected from a server of the content delivery network outside the mobile platform. Process flow 700 may further include determining whether the media content item is stored at the mobile edge server, and providing the media content item to the device if it is stored at the mobile edge server. When the media content item is not stored at the mobile edge server, process flow 700 may query at least one terrestrial server of the at least one terrestrial server layer for the media content item via an access node serving the mobile platform through a wireless communication link, receive the media content item from the at least one terrestrial server, and provide the media content item to the device.
[0102] Figure 8 This illustration shows a process flow 800 for delivering routed content via an instance of an edge server on an aircraft, according to various aspects of this disclosure. Process flow 800 includes an origin server 130-g, a CDN DNS 244-c, a Layer 2 server 522-f, an edge server 170-g, an aircraft 160-d, and a client device 220-e. The origin server 130-g, CDN DNS 244-c, Layer 2 server 522-f, edge server 170-g, aircraft 160-d, and client device 220-e can be respectively... Figures 1 to 7 The origin server 130, CDN DNS 244, second-layer server 522, edge server 170, aircraft 160, and client device 220 or 222 instances or aspects thereof. In some instances, process flow 800 may be... Figures 1 to 5 The content described herein is delivered in a network layer or satellite communication environment, at least a portion of which is executed.
[0103] Figure 8The examples illustrate how requests for content items can be generated, routed, processed, and fulfilled through one or more different servers, and how decisions can be made regarding storing the requested items on various servers. Specifically, process flow 800 illustrates how requests for content item A can be routed through the content delivery network hierarchy and how storage / non-storage decisions can be made. In process flow 800, CDN DNS 244-c can return the network address of edge server 170-g to client device 220-e when it receives a request for the content item from client device 220-e (e.g., in a redirect message). CDN DNS 244-c can also determine whether to store the content item on a particular server. Figure 8 The example shown has only two server layers (edge server layer and second server layer). Alternatively, there may be more than two server layers.
[0104] Aircraft 160-d may include an edge server 170-g and a client device 220-e. Aircraft 160-d may include more than one client device, which can be, for example... Figure 1 The client device 220 or 222 described herein. Client device 220-e can initiate a DNS request for at least content item A, which may be a movie, game, program, live streaming event, or the like. At 802, a Domain Name System (DNS) request for item A is generated. The DNS request is forwarded to CDN DNS 244-c. For example, CDN DNS 244-c may be associated with a content provider for content item A, and the request for content item A (e.g., an HTTP request) may be made to the content provider's address.
[0105] In 804, CDN DNS 244-c can determine the location of edge server 170-g on aircraft 160-d. This determination may include identifying aircraft 160-d and which of a plurality of edge servers is located on aircraft 160-d, as can be referenced above. Figure 6The process is as described in section 604. At 806, CDN DNS 244-c can determine whether edge server 170-g stores item A. If edge server 170-g does store item A, then CDN DNS 244-c can return the network address of edge server 170-g to client device 220-e at 808 (e.g., in a redirect message). At 810, client device 220-e can receive the address of edge server 170-g from CDN DNS 244-c and can request item A from edge server 170-g. At 812, edge server 170-g can serve item A to client device 220-e. Alternatively, CDN DNS 244-c can send the message directly to edge server 170-g, which can then serve item A to client device 220-e, just as if the address came from a content provider or origin server 130-g. For example, CDNDNS 244-c can provide encryption or other information (such as SSL certificates) for edge server 170-g to respond directly to client device 220-e. After receiving item A at 814, client device 220-e can use, display, or otherwise output item A.
[0106] Returning to 806, if CDN DNS 244-c determines that edge server 170-g does not store item A, then process flow 800 proceeds to 820. At 820, CDN DNS 244-c can determine which Layer 2 server is associated with edge server 170-g. In this example, Layer 2 server 522-f is associated with edge server 170-g. At 822, CDN DNS 244-e determines whether Layer 2 server 522-f stores item A. If so, then process flow 800 proceeds to 824, where CDN DNS 244-c determines whether item A is stored in edge server 170-g. If CDN DNS 244-c decides to store item A in edge server 170-g, then CDN DNS 244-c pushes item A to edge server 170-g at 826, or returns the edge server address to client device 220-e at 808. Pushing project A to edge server 170-g can include an instruction to the server closest to edge server 170-g in terms of network proximity to edge server 170-g to forward project A to edge server 170-g. Edge server 170-g can store project A. For example... Figure 8As shown, DNS 244-c determines in step 824 whether to store each item in edge server 170-g. Alternatively, each item can be pushed from its terrestrial server (e.g., in this case, tier 2 server 522-f) to edge server 170-g. Edge server 170-g can then determine whether to store the item. This technique can be used for other items that can be stored in other tiers of the terrestrial CDN hierarchy.
[0107] Once project A is instructed to be pushed or successfully pushed to edge server 170-g, CDN DNS 244-c can return the edge server address to client device 220-e at 808. The process flow 800 can be referenced as described above. Figure 6 The descriptions in 610, 612 and 614 continue along 810, 812 and 814.
[0108] Factors that may be considered when determining whether to store item A on the edge server may include the frequency with which client devices onboard Aircraft 160-d request or can request item A, the storage size of item A, network latency, network load, network traffic, time of day, popularity of item A, rating of item A, publication date of item A, digital or other legal rights associated with item A, available storage space on edge server 170-g, network proximity of the nearest server currently storing item A, the remaining duration of the flight of Aircraft 160-d, and other factors. One or more of these factors may be used together to determine whether to store the content item on the edge server or not.
[0109] If CDN DNS 244-c determines at 824 that item A is not stored in the edge server, then CDN DNS 244-d at 830 returns the network address of the Layer 2 server 522-f to the client device 220-e. At 832, the client device 220-e can request item A from the Layer 2 server 522-f. At 834, the Layer 2 server 522-f serves item A to the client device 220-e. Alternatively, CDN DNS 244-d can send the message directly to the Layer 2 server 522-f, which can then serve item A to the client device 220-e, just as it would from the address of the content provider or origin server 130-g. For example, CDN DNS 244-c can provide encryption or other information (e.g., an SSL certificate) to the Layer 2 server 522-f in a direct response to the client device 220-e. At 836, the client device 220-e can receive item A from the Layer 2 server 522-f. After receiving item A, the client device 220-e can display or otherwise output item A.
[0110] Returning to 822, if the second-tier server 522-f determines that it does not store item A, then process flow 800 proceeds to 840. At 840, CDN DNS 244-c returns the network address of origin server 130-g to client device 220-e (e.g., in a redirect message). At 842, client device 220-e can request item A from origin server 130-g. At 844, origin server 130-g can provide item A to client device 220-e. At 846, client device 220-e can receive item A from origin server 130-g. After receiving item A, client device 220-e can display or otherwise output item A.
[0111] In addition to providing request routing, process flow 800 also enables the CDN layer to determine whether content should be stored on different servers, and to store content at the edge server 170 as part of serving the content to the requesting device. Storing items at a server closer to the requesting client device in terms of network proximity can reduce latency, improve speed, reduce traffic for items that may be requested again, and similar benefits.
[0112] Figure 9 A map illustrating a communication environment 900 including an example content delivery network 122-c according to various aspects of this disclosure is provided. The communication environment 900 may include a satellite communication system 105-c, which may include satellites 102-c and multiple gateways 110-e. CDN 122-c may include two layers: an airborne edge server 170-h, an origin server 130-h, and a terrestrial CDN. The first layer of the terrestrial CDN may be a second server layer comprising four servers 522-g, 522-h, 522-i, and 522-j (collectively referred to as second server layer 404-b). The second layer of the terrestrial CDN may be a third server layer comprising servers 532-c and 532-d (collectively referred to as third server layer 406-b). The satellite communication system 105-c, the multiple gateways 110-e, the airborne edge server 170-h, the second server layer 404-b, the origin server 130-h, and the third server layer 406-b may be respectively... Figures 1 to 8 Examples or aspects thereof of the satellite communication system 105, the plurality of gateways 110, the airborne edge server 170, the source server 130, the second server layer 404 and the third server layer 406.
[0113] The map shows CDN 122-c distributed across the continental United States, but in other instances, it may encompass other regions. In some instances, CDN 122-c extends beyond international borders. Server layers 404-b and 406-b can also be geographically distributed.
[0114] exist Figure 9 In this example, edge server 170-h is located on an aircraft flying over the eastern part of the continental United States. Edge server 170-h communicates with satellite communication system 105-c. When a client device on board the aircraft requests a media content item, edge server 170-h sends a DNS request for the content item via satellite communication system 105-c. In this example, CDN 122-c determines that the server with the requested content item is the second-tier server 522-g in terms of network proximity. CDN 122-c provides the client device with the network address for either edge server 170-h or second-tier server 522-g, as described herein.
[0115] As explained, client devices can receive content items from servers located on the west side of the continental United States, even if the aircraft is on the east side, regardless of the presence of other satellite access nodes and servers physically closer to the aircraft. This is because associations within the CDN hierarchy can be based on proximity to satellite access nodes that can communicate with the aircraft, rather than on the aircraft's geographical location. The proximity of satellite access nodes serving the aircraft can be based on, as referenced... Figures 3 to 5 The satellite path and user beamgroup 320 discussed (e.g., satellite path / user beamgroup 410) mean that the physical location of the aircraft may not be highly relevant to how the servers in the terrestrial CDN layer are associated with the upper-edge server 170-h on the aircraft. Rather, it can be based on the proximity to the satellite access node that communicates with the aircraft and therefore with the upper-edge server 170-h on the aircraft.
[0116] Figure 10A and 10B This illustrates an instance of communication link switching between a satellite terminal located on an aircraft and multiple satellite access nodes while the aircraft is in motion. Figure 10A A diagram illustrating network handover in instance layer connection topology 1000 according to various aspects of this disclosure is provided. Figure 10A Follow the aircraft from the first time (time A) to the second time (time B) while the aircraft is flying at 160-e. Figure 10BThe flight of aircraft 160-e continues from the third time point (Time C) to the fourth time point (Time D). Layer connection topology 1000 includes aircraft 160-e, airborne edge server 170-i, multiple satellite access nodes 110-f, second server layer 404-c, third server layer 406-c, and source server 130-i. Second server layer 404-c can contain the four servers shown in the diagram and can be the first layer of a terrestrial CDN. Third server layer 406-c can contain the four servers shown in the diagram and can be the second layer of a terrestrial CDN. Aircraft 160-e, airborne edge server 170-i, multiple satellite access nodes 110-f, second server layer 404-c, third server layer 406-c, and source server 130-i can be respectively... Figures 1 to 9 The aircraft 160, edge server 170, the plurality of satellite access nodes 110, second server layer 404, third server layer 406 and source server 130 are instances or include aspects thereof.
[0117] Layer connection topology 1000 shows a first satellite access node 110-f associated with a first server in the second server layer 404-c. This first server in the second server layer is associated with a first server in the third server layer 406-c, which in turn is associated with a source server 130-i. Layer connection topology 1000 also shows a second satellite access node 110-f associated with a second server in the second server layer 404-c. This second server is associated with a first server in the third server layer 406-f. The third satellite access node 110-f is associated with a third server in the second server layer 404-c. This third server in the second server layer is associated with a second server in the third server layer 406-c, which in turn is associated with a source server 130-i. Finally, a fourth satellite access network 110-f is associated with a fourth server in the second server layer 404-c. This fourth server in the second server layer is associated with a second server in the third server layer 406-c, which in turn is associated with a source server 130-i. Layer connection topology 1000 is only an example network topology. As discussed in this article, being associated with... in a CDN topology means that requests that cannot be fulfilled by the server are sent or redirected to the associated node or server. In other instances, different numbers of satellite access nodes, server layers, and servers may be used. In some instances, different connections may be formed between various nodes and servers.
[0118] At time A, aircraft 160-e is within the first user beam 1030-a. In this example, the first user beam 1030-a is associated with the first satellite access node 110-f. The association between the land server and the edge server 170-i can be determined by the layer network topology 1000. Here, because aircraft 160-e is within the first user beam 1030-a, any DNS request originating from aircraft 160-e will be routed through network path 1010, represented by a dark line connecting the first satellite access node 110-f to the first server in the second server layer 404-c, then to the first server in the third server layer 406-c, and then to the source server 130-i. This is an example of how CDN DNS can route DNS requests throughout the layer connection topology 1000 when aircraft 160-e is within the first user beam 1030-a.
[0119] At time B, aircraft 160-e has moved from the first user beam 1030-a to the second user beam 1030-b. In this example, the second user beam 1030-b is served via the second satellite access node 110-f. When aircraft 160-e moves to be served via the second satellite access node 110-f, the association of edge server 170-i within the layer connection topology 1000 changes from the first server in the second server layer 404-b to the second server. Therefore, when aircraft 160-e is in the second user beam 1030-b, DNS requests originating from the aircraft will be routed through network path 1020, represented by a dark line, which connects the second satellite access node 110-f to the second server in the second server layer 404-c, then to the first server in the third server layer 406-c, and then to the source server 130-i. This is an example of how CDN DNS can route DNS requests across the entire layer connection topology 1000 when the aircraft 160-e is within the second user beam 1030-b.
[0120] Figure 10B A diagram illustrating network handover in instance layer connection topology 1000 according to various aspects of this disclosure is provided. Figure 10B from Figure 10A The sequence is from time B to time C, then to time D, following flight 160-e. Layer connection topology 1000 can be compared to the above. Figure 10A The same as described above.
[0121] At time C, aircraft 160-e has moved from the second user beam 1030-b to the third user beam 1030-c. In this example, the third user beam 1030-c is served by the third satellite access node 110-f. When aircraft 160-e moves to be served via the second satellite access node 110-f, the association of edge server 170-i within the layer connection topology 1000 changes from the second server in the second server layer 404-b to the third server. When aircraft 160-e is in the third user beam 1030-c, DNS requests originating from the aircraft will be routed through network path 1060, represented by a dark line, which connects the third satellite access node 110-f to the third server in the second server layer 404-c, then to the second server in the third server layer 406-c, and then to the source server 130-i. This is an example of how CDN DNS can route DNS requests across the entire layer connection topology 1000 when the aircraft 160-e is within the third user beam 1030-c.
[0122] At time D, aircraft 160-e has moved from the third user beam 1030-c to the fourth user beam 1030-d. In this example, the fourth user beam 1030-d is associated with the fourth satellite access node 110-f. When aircraft 160-e moves to be served via the fourth satellite access node 110-f, the association of edge server 170-i within the layer connection topology 1000 changes from the third server in the second server layer 404-b to the fourth server. When aircraft 160-e is in the fourth user beam 1030-d, any DNS requests originating from the aircraft will be routed through network path 1070, represented by a dark line, which connects the fourth satellite access node 110-f to the fourth server in the second server layer 404-c, then to the second server in the third server layer 406-c, and then to the source server 130-i. This is an example of how CDN DNS can route DNS requests across the entire layer connection topology 1000 when aircraft 160-e is within the fourth user beam 1030-d.
[0123] As illustrated in this example, the layer connectivity topology for the edge server can change over time as the aircraft moves between various user beams. Although described as depending solely on the specific satellite access node serving the current user beam, the association of the edge server 170-i can depend on additional factors, such as loading at one or more of the terrestrial server layers, such as the second server layer 404-c or the third server layer 406-c.
[0124] Figure 11A flowchart illustrating an example method 1100 for layer connection management according to aspects of this disclosure is shown. Some or all of the steps in example method 1100 can be performed by various devices in a satellite communication environment or CDN, such as those described in Reference 1100. Figures 1 to 10B The described method 1100 refers to one or more of the following: satellite terminal 112, communication satellite 102 of satellite communication system 105, gateway or satellite access node 110, CDNDNS 244, edge server 170, or client device 220. In the description of method 1100, one or more devices in the satellite communication environment may perform each of the described steps. In some instances, one device in the satellite communication environment may perform the steps.
[0125] Method 1100 may illustrate how layer connectivity management can be performed and updated when a mobile transportation vehicle moves within a geographic area. At 1110, method 1100 may include maintaining the CDN layer connectivity topology. The CDN layer connectivity topology may be determined based on the association between servers at the edge server layer and servers at a second server layer (e.g., a first layer of terrestrial servers). For example, the CDN layer connectivity topology may be based on satellite access nodes providing services to the current location of the mobile transportation vehicle. Method 1100 may include maintaining the CDN layer connectivity topology for a specific mobile transportation vehicle, such as an aircraft.
[0126] At 1120, method 1100 may include obtaining an indication of a handover from a first satellite access node to a second satellite access node. This handover may be indicated because the aircraft has moved from a first user beam associated with the first satellite access node to a second user beam associated with the second satellite access node. However, the aircraft may have a handover in both the first and second user beams, still indicating a handover based, for example, on different network conditions. In some instances, the satellite communication system may indicate the handover to the CDN. For example, a modem or network access unit on the aircraft or the satellite access node may notify the aircraft's edge server or the CDN's land server or CDN DNS when a handover occurs.
[0127] At 1130, method 1100 may include determining whether to change one or more land servers associated with the edge server on the aircraft. If method 1100 decides not to change the server, then method 1100 proceeds back to 1110 and maintains the CDN layer connection topology. One instance of why method 1100 may not change the server could be that the second satellite access node indicated during the handover is the same as the first satellite access node (e.g., the first and second user beams are served by the same satellite access node). Another reason could be that the server is associated with multiple satellite access nodes in the topology. In other instances, other reasons could be used to actually maintain the CDN layer connection topology (e.g., server loading).
[0128] Alternatively, if method 1100 decides to change the server, then method 1100 proceeds to 1140. At 1140, method 1100 updates the CDN layer connection topology. Method 1100 may change the CDN layer connection topology for several reasons, including, but not limited to, the aircraft being in a new user beamgroup served by a second satellite access node, where the second satellite access node is located closer to a different server at a specific layer of the CDN (e.g., the first land server layer).
[0129] Figure 12 A flowchart illustrating an example method 1200 for performing a handover during content delivery to an airborne client device, according to aspects of this disclosure, is shown. Some or all of the steps of example method 1200 can be performed by various devices in a satellite communication environment, such as those described in Reference 1200. Figures 1 to 10B The satellite terminal 112, the communication satellite 102 of the satellite communication system, the gateway 110, the content copying system 140-d, the edge server 170, or the client device 220 described herein. Figure 12 The actions taken by the onboard client device 220-f and edge server 170-j, the first server 522-k of the second server layer, the second server 522-l of the second server layer, and the content replication system 140-d, are as follows: The aircraft 160-f, client device 220-f, onboard edge server 170-k, servers 522-k and 522-l, and content replication system 140-d can be respectively... Figures 1 to 9 An instance of or including aspects of the aircraft 160, edge server 170, client device 220, server 522, and content replication system 140.
[0130] Method 1200 may include client device 220-f requesting and obtaining media content items from a content distribution network. In this example, client device 220-f may communicate directly with a server storing the requested media content items. At 1202, client device 220-f may request the media content items. Based on the current location of aircraft 160-f, the Layer 2 server 522-k may be the server closest to aircraft 160-f in terms of network proximity to the media content items, whether storing them or otherwise having access to them. At 1204, Layer 2 server 522-k streams the media content items to client device 220-f, and continues streaming the media content items at 1206.
[0131] While streaming media content items, aircraft 160-f may fly to an area where the Layer 1 Server 522-k is no longer the closest in terms of network proximity to aircraft 160-f (e.g., a new user beam served by a new satellite access node). At 1208, content replication system 140-d may update the CDN layer connection topology to indicate that the Layer 2 Server 522-l, which stores or can access the media content items, is now the closest in terms of network proximity to aircraft 160-f. Content replication system 140-d may make this update because the network connection with the aircraft is switching to the second satellite access node, as aircraft 160-f has moved outside the user beam served by the first satellite access node. In another instance, content replication system 140-d may make this update for other reasons, such as the Layer 1 Server 522-k no longer being able to access the media content items or experiencing high network load.
[0132] At 1210, content replication system 140-d may send a message indicating that it has made an update to the CDN layer connection topology to Layer 2 server 522-k. This message may instruct Layer 2 server 522-k to inform client device 220-f of the update or that client device 220-f should request media content items from Layer 2 server 522-l. At 1212, Layer 2 server 522-k may send a message (e.g., a redirection message) to client device 220-f to request media content items from Layer 2 server 522-l. At 1214, client device 220-f requests media content items from Layer 2 server 522-l. At 1216, Layer 2 server 522-l may stream the media content items to client device 220-f.
[0133] In some instances, buffering or other techniques can be implemented to avoid interrupting the streaming of media content items at client device 220-f. In some instances, edge server 170-j can execute requests and receive any updates instead of client device 220-f, such as... Figure 13 As shown. Method 1200 can be executed as many times as required throughout the entire flight of aircraft 160-f.
[0134] Figure 13 A flowchart illustrating an example method 1300 for performing a handover during content delivery to an airborne client device, according to aspects of this disclosure, is shown. Some or all of the steps of example method 1300 can be performed by various devices in a satellite communication environment, such as those described in Reference 1300. Figures 1 to 10BThe satellite terminal 112, the communication satellite 102 of the satellite communication system 105, the gateway or satellite access node 110, the content copying system 140, the edge server 170, or the client device 220 described herein. Figure 13 The contents can be respectively Figures 1 to 9 The actions taken by the aircraft 160, edge server 170, client device 220, server 522 and content replication system 140 of 12, or the aircraft 160-g onboard client device 220-g and edge server 170-k, first server 522-m of the second server layer, second server 522-n of the second server layer and content replication system 140-e.
[0135] Method 1300 may include a client device 220-g requesting and obtaining media content items from a content distribution network, and illustrates a method for identifying a server for delivering the media content items. In an example of method 1300, the client device 220-g communicates with an edge server 170-k to obtain the desired media content items. At 1302, the client device 220-g may request the media content items from the edge server 170-k. The edge server 170-k may determine which server in the CDN is the closest in terms of network proximity to store the media content items. Based on the current location of the client device 160-g, the Layer 2 server 522-m may be the closest in terms of network proximity to store or otherwise have access to the media content items. The edge server 170-k may request the media content items from the Layer 2 server 522-m at 1304. At 1306, the Layer 2 server 522-m streams the media content items to the edge server 170-k, and at 1310 continues to stream the media content items. Edge server 170-k forwards streaming data to client device 220-g at 1308 and 1312.
[0136] While streaming media content items, aircraft 160-g can begin flying outside the user beam area of the first satellite access node, and a handover can be appropriate. At 1314, content replication system 140-d can update the CDN layer connection topology to indicate that the second layer 2 server 522-n, which stores or can access the media content items, is now closest to aircraft 160-g in terms of network proximity (e.g., based on aircraft 160-g being served by the second satellite access node). At 1316, content replication system 140-e can send a message to edge server 170-k stating that it has updated the CDN layer connection topology. This message can inform edge server 170-k to request media content items from second layer 2 server 522-n. At 1318, edge server 170-k can request media content items from second layer 2 server 522-n. At 1320, second layer 2 server 522-n begins streaming media content items to edge server 170-k. At 1322, edge server 170-k forwards streaming data to client device 220-g.
[0137] Figure 14 A flowchart illustrating a method 1400 supporting content delivery routing via an on-aircraft edge server, according to aspects of this disclosure, is shown. Operation of method 1400 can be implemented by a content delivery network or its components as described herein. For example, operation of method 1400 can be achieved by, as referenced... Figures 1 to 13 The CDN execution described herein. In some instances, a CDN may execute a set of instructions to control the functional elements of the CDN to perform the functions described below. Alternatively, a CDN may use dedicated hardware to perform aspects of the functions described below.
[0138] At 1405, the CDN can receive requests for media content items from devices within a mobile platform served via a wireless communication link of the communication system. For example, the CDN can receive media content requests from either a client device or an edge server. At 1410, the CDN can identify the mobile edge server located on the mobile platform based on the network address of the device associated with the request.
[0139] In step 1415, a CDN can determine whether a media content item is stored on a mobile edge server. In some instances, determining whether a media content item is stored on a mobile edge server located within a mobile platform further includes querying a server index that identifies one or more media content items stored on one or more servers that include the mobile edge server. In other instances, determining whether a media content item is stored on a mobile edge server further includes sending a request to the mobile edge server to check whether the media content item is stored on the mobile edge server, and receiving a message from the mobile edge server indicating whether the media content item is stored there.
[0140] In step 1420, when media content items are stored on a mobile edge server, the CDN can redirect requests for media content items to the mobile edge server. In some instances, redirecting requests for media content items to a mobile edge server further includes providing the address of the mobile edge server to the device in response to the request for the media content item. In other instances, redirecting requests for media content items to a mobile edge server may include sending an instruction to the mobile edge server to provide the media content item in response to the request for the media content item.
[0141] At 1425, when the media content item is not stored on the mobile edge server, the CDN can determine whether the media content item is stored on the first land server of the first server layer of the at least one land server layer, the first land server being coupled to the access node serving the mobile platform and associated with the mobile edge server for the content delivery network.
[0142] At 1430, when a media content item is stored on the first land server of the first server layer, the CDN can redirect requests for the media content item to the first land server.
[0143] In some instances, when the media content item is not stored on the first land server, method 1400 may include determining whether the media content item is stored on a second land server of a second server layer of the at least one land server layer, wherein the second land server is associated with the first land server. When the media content item is stored on the second land server, the method may include redirecting requests for the media content item to the second land server. In some instances, when the media content is not stored on the second land server, method 1400 may include redirecting requests for the media content item to the origin server of the content delivery network.
[0144] In some instances, method 1400 may include mapping requests for media content items to a proxy server associated with an access node serving the wireless communication link of the mobile platform. In other instances, method 1400 may include sending media content items to a mobile edge server for storage when the media content items are not stored at the mobile edge server. In other instances where the access node serving the wireless communication link of the mobile platform is a first access node, the method further includes determining that the mobile platform has switched to being served by a second access node and updating the association of the mobile edge server used for the content delivery network to be associated with a second terrestrial server coupled to the second access node.
[0145] Operations 1405, 1410, 1415, 1420, 1425, and 1430 can be performed according to the methods described herein. In some instances, aspects of the operations 1405, 1410, 1415, 1420, 1425, and 1430 may be derived from, as referenced... Figures 1 to 13 The CDN execution described herein. In some instances, a CDN includes components (e.g., content replication system 140) containing memory and a processor capable of executing the method 1400 described herein. For example, the memory may contain instructions that, when executed by the processor, cause the processor to execute method 1400.
[0146] Figure 15 A flowchart illustrating a method 1500 supporting content delivery routing via an on-aircraft edge server is shown according to aspects of this disclosure. The operation of method 1500 can be implemented by an edge server or its components as described herein. For example, the operation of method 1500 can be performed by, as referenced... Figures 1 to 13 The edge server described herein performs the functions described. The edge server may reside on a mobile platform (e.g., an aircraft). In some instances, the edge server may execute a set of instructions to control the functional elements of the edge server to perform the functions described below. Alternatively, the edge server may use dedicated hardware to perform aspects of the functions described below.
[0147] At 1505, the edge server can receive requests for media content items for devices within the mobile platform, wherein the requests are redirected from servers on a content delivery network outside the mobile platform. At 1510, the edge server can determine whether the media content item is stored at the mobile edge server. At 1515, if the media content item is stored at the mobile edge server, the edge server can provide the media content item to the device.
[0148] At 1520, when the media content item is not stored at the mobile edge server, the edge server can query at least one land server of the at least one land server layer for the media content item via an access node serving the mobile platform through a wireless communication link, receive the media content item from the at least one land server, and provide the media content item to the device.
[0149] In some instances, querying the at least one land server includes querying a first land server of a first server layer for a media content item, the first land server being coupled to an access node serving a mobile platform and associated with a mobile edge server for a content delivery network, receiving media content items from the first land server when the media content item is stored there, and receiving a message indicating that the media content item is not stored there when the media content item is not stored there.
[0150] In other instances, querying the at least one land server includes querying a second land server of a second server layer of the at least one land server layer for a media content item when the media content item is not stored at the first land server, wherein the second land server is associated with the first land server for the content delivery network, receives the media content item from the second land server when the media content item is stored at the second land server, and receives a message indicating that the media content item is not stored at the second land server when the media content item is not stored at the second land server. Querying the at least one land server may further include querying a source server of the content delivery network for a media content item when the media content item is not stored at the second land server, and receiving the media content item from the source server.
[0151] In some instances, method 1500 may include storing media content items at a mobile edge server in response to receiving media content items from the at least one land server.
[0152] Operations 1505, 1510, 1515, and 1520 can be performed according to the methods described herein. In some instances, aspects of the operations 1505, 1510, 1515, and 1520 may be derived from, as referenced... Figures 1 to 13 The edge server described herein performs the operation. In some instances, the edge server includes memory and a processor capable of executing the method 1400 described herein.
[0153] Figure 16A flowchart illustrating a method 1600 supporting content delivery routing via an on-aircraft edge server, according to aspects of this disclosure, is shown. Operation of method 1600 can be implemented by means of devices or components thereof in a content delivery network as described herein. For example, operation of method 1600 can be performed by means of means such as those described in reference... Figures 1 to 13 The CDN, edge server, or satellite node described herein shall perform the functions described. In some instances, the apparatus in the CDN may execute a set of instructions to control the functional elements of the apparatus to perform the functions described below. Alternatively, the apparatus may use dedicated hardware to perform aspects of the functions described below.
[0154] At 1605, the apparatus can determine that a modem on a mobile platform in the mobile platform set is provided with communication via a first satellite beam served by a first satellite access node. At 1610, the apparatus can determine, based on the network topology of the at least one terrestrial server layer and the location of the first satellite access node, that a first server in the at least one terrestrial server layer is closest to the first satellite access node in terms of network proximity.
[0155] In 1615, the device may associate a mobile edge server located on a mobile platform with the first server of the at least one terrestrial server layer based on determining that the first server is the closest in terms of network proximity to the first satellite access node.
[0156] In some instances, method 1600 may include obtaining an indication of a modem on a mobile platform switching from communication provided by a first satellite access node to communication provided by a second satellite access node. Method 1600 may also include determining, at least in part, that a second server of the at least one terrestrial server layer is closer to the first satellite access node in terms of network proximity to the first server, based at least partially on the network topology of the at least one terrestrial server layer and the location of the second satellite access node, and associating a mobile edge server with the second server, at least in part on the determination that the second server is closer to the first server in terms of network proximity.
[0157] In some instances of method 1600, the mobile platform is located at a first location, which is geographically closer to a second server in the land server layer.
[0158] Method 1600 may include: determining a satellite beam group associated with a first satellite access node; and selecting the first satellite access node to communicate with a mobile edge server located on a mobile platform, based at least in part on the fact that the first satellite beam is a member of the satellite beam group. In some instances, the method includes associating each server in the edge server layer with a corresponding server in the terrestrial server layer, based at least in part on the topology of the network of the at least one terrestrial server layer and the location of a corresponding serving satellite access node among a plurality of satellite access nodes in the communication system.
[0159] In some instances, method 1600 includes receiving a request for a media content item from a mobile edge server located on a mobile platform and forwarding the request for the media content item to a first server of the at least one terrestrial server layer. Some instances may include receiving a media content item from a first server of the at least one terrestrial server layer and forwarding the media content item to a mobile edge server located on a mobile platform. Other instances may include receiving a media content item from a second server of the at least one terrestrial server layer or a source server of the at least one terrestrial server layer and forwarding the media content item to a mobile edge server located on a mobile platform. Method 1600 may include receiving a media content item from a source server of the at least one terrestrial server layer and forwarding the media content item to a mobile edge server located on a mobile platform.
[0160] Operations 1605, 1610, and 1615 can be performed according to the methods described herein. In some instances, aspects of the operations 1605, 1610, and 1615 may be derived from, as referenced... Figures 1 to 13 The described network apparatus is executed. In some instances, a CDN includes components (e.g., content replication system 140) containing memory and a processor capable of executing the method 1400 described herein. In other instances, an edge server or satellite node contains memory and a processor capable of executing the method 1400 described herein.
[0161] The specific embodiments described above with reference to the accompanying drawings are examples and do not represent the only examples that can be implemented or are within the scope of the claims. The term "example" as used in this specification means "serving as an example, illustration, or description" and is not "preferred" or "advantageous" over other examples. Detailed descriptions include specific details to provide an understanding of the described techniques. However, these techniques can be practiced without these specific details. In some cases, well-known structures and components are shown in block diagram form to avoid obscuring the concept of the described examples.
[0162] The information and signals described herein can be represented using any of a variety of different techniques and skills. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description can be represented by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, light fields or light particles, or any combination thereof.
[0163] The various illustrative boxes and components described herein can be implemented or performed using a general-purpose processor, a digital signal processor (DSP), an ASIC, an FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but alternatively, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, a microprocessor incorporating a DSP core, or any other such configuration.
[0164] The functions described herein can be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions can be stored as instructions or code on or transmitted via a computer-readable medium. Other examples and embodiments are within the scope of this disclosure and the appended claims. For example, due to the nature of software, the functions described above can be implemented using software executed by a processor, hardware, firmware, hardwired, or any combination thereof. Features implementing the functions can also be physically located in various locations, including distributed so that different parts of the functions are implemented in different physical locations. As used herein, the term “and / or” included in the claims, when used in a list having two or more items, means that any one of the listed items can be used alone, or any combination of two or more of the listed items can be used. For example, if a composition is described as containing components A, B, and / or C, then the composition may contain: A alone; B alone; C alone; a combination of A and B; a combination of A and C; a combination of B and C; or a combination of A, B, and C. Moreover, as used herein, the “or” used in the list of items contained in the claims (e.g., a list of items beginning with phrases such as “at least one of” or “one or more of”) indicates a separate list, such that a list such as “at least one of A, B or C” means A or B or C, or AB or AC or BC, or ABC (i.e., A and B and C).
[0165] Computer-readable media includes both computer storage media and communication media, with communication media encompassing any media that facilitates the transfer of a computer program from one place to another. Storage media can be any available media accessible by a general-purpose or special-purpose computer. By way of example, and not limitation, computer-readable media can include RAM, ROM, EEPROM, flash memory, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, or any other media that can be used to carry or store desired program code in the form of instructions or data structures and is accessible by a general-purpose or special-purpose computer or a general-purpose or special-purpose processor. Furthermore, any connection is appropriately referred to as computer-readable media. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, these are included in the definition of media. As used in this article, disks and optical discs include compact optical discs (CDs), laser discs, optical discs, digital multifunction discs (DVDs), floppy disks, and Blu-ray discs. Disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. Combinations of these are also included within the scope of computer-readable media.
[0166] As used herein, the phrase “based on” should not be construed as referring to a closed set of conditions. For example, without departing from the scope of this disclosure, an exemplary step described as “based on condition A” may be based on both condition A and condition B. In other words, as used herein, the phrase “based on” should be interpreted in the same manner as the phrase “at least partially based on”.
[0167] The prior description of this disclosure is provided to enable those skilled in the art to make or use this disclosure. Various modifications to this disclosure will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other variations without departing from the scope of this disclosure. Therefore, this disclosure is not limited to the examples and designs described herein, but is given the broadest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for use in a communication system (100) including a content delivery network (122), the content delivery network comprising an edge server layer (402) located on a mobile platform (160) served by a wireless communication link (106) of the communication system and two or more terrestrial server layers (404) geographically distributed within the communication system, the method comprising: A request (1202) for a media content item is received from a device (220) within a mobile platform (160) served via a wireless communication link (106) of the communication system. The identity of the mobile edge server (170-a) located on the mobile platform is determined at least in part based on the network address of the device associated with the request; Determine whether the media content item is stored on the mobile edge server; When the media content item is stored on the mobile edge server, the request for the media content item will be redirected to the mobile edge server; When the media content item is not stored on the mobile edge server, determine whether the media content item is stored on the first land server (522-a) of the first land server layer (404) of the two or more land server layers, the first land server (522-a) being coupled to the first access node (110-d-1) serving the mobile platform and associated with the mobile edge server for the content delivery network; When the media content item is stored on the first land server (522-a) of the first land server layer, the request for the media content item will be redirected to the first land server (522-a). While the mobile platform is en route, it is determined that the mobile platform has switched to being served by the second access node (110-d-3); The second access node is determined to be associated with a second land server (522-b) of a first land server layer in one of the two or more land server layers, the association being at least in part based on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers; and The association between the mobile edge server of the content delivery network and the second land server (522-b) is updated, the association being at least in part based on the mobile platform transitioning to being served by the second access node (110-d-3) and the established association between the second access node and the second land server.
2. The method according to claim 1, further comprising: When the media content item is not stored on the first land server: Determine whether the media content item is stored on a second land server (532), wherein the second land server belongs to the second land server layer (406) of the two or more land server layers, wherein the second land server is associated with the first land server; as well as When the media content item is stored on the second land server, the request for the media content item will be redirected to the second land server.
3. The method according to claim 2, further comprising: When the media content item is not stored on the second land server, the request for the media content item will be redirected to the source server (130) of the content delivery network.
4. The method according to any one of claims 1 to 3, wherein redirecting the request for the media content item to the mobile edge server comprises: In response to the request for the media content item, the address of the mobile edge server is provided to the device.
5. The method of claim 1, wherein redirecting the request for the media content item to the mobile edge server comprises: In response to the request for the media content item, an instruction is sent to the mobile edge server to provide the media content item.
6. The method of claim 1, wherein determining whether the media content item is stored on the mobile edge server located within the mobile platform further comprises: Query the server index (242), which identifies one or more media content items stored on at least the mobile edge server.
7. The method of claim 1, wherein determining whether the media content item is stored on the mobile edge server further comprises: Send a request (1302) to the mobile edge server to check whether the media content item is stored on the mobile edge server; as well as Receive a message from the mobile edge server indicating whether the media content item is stored on the mobile edge server.
8. The method of claim 1, further comprising: The request for the media content item is mapped to a proxy server (216) associated with the first access node of the wireless communication link serving the mobile platform.
9. The method of claim 1, further comprising: When the media content item is not stored on the mobile edge server, the media content item is sent to the mobile edge server for storage on the mobile edge server.
10. The method of claim 1, wherein, The association of updating the mobile edge server of the content delivery network includes: The domain name server (DNS) is updated using the address of the second land server to update the association between the mobile edge server of the content delivery network and the second land server.
11. A method for use in a communication system (100) including a content delivery network (122), the content delivery network comprising an edge server layer (402) located on a mobile platform (160) served by a wireless communication link (106) of the communication system and two or more terrestrial server layers (404) geographically distributed within the communication system, the method comprising: A request (1202) for a media content item for a device (220) within the mobile platform is received at a mobile edge server (170-a) located on the mobile platform (160), wherein the request is redirected from a server (404) of the content delivery network outside the mobile platform. Determine whether the media content item is stored at the mobile edge server; When the media content item is stored at the mobile edge server, the media content item is provided to the device; as well as When the media content item is not stored at the mobile edge server: The first access node (110) serving the mobile platform via the wireless communication link (106) queries the first land server of the two or more land server layers for the media content item. Receive the media content items from the first land server; The media content items are provided to the device; While the mobile platform is en route, it is determined that the mobile platform has switched to being served by the second access node (110-d-3); The second access node is determined to be associated with a second land server (522-b), the association being at least partially based on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers; and The association between the mobile edge server of the content delivery network and the second land server (522-b) is updated, the association being at least in part based on the mobile platform transitioning to being served by the second access node (110-d-3) and the established association between the second access node and the second land server.
12. The method of claim 11, wherein querying the first land server comprises: For the media content item, query the first land server (522-a) of the first land server layer (404) of the two or more land server layers, the first land server being coupled to the first access node serving the mobile platform and associated with the mobile edge server for the content delivery network. The media content item is received from the first land server when it is stored there. as well as When the media content item is not stored at the first land server, a message indicating that the media content item is not stored at the first land server is received.
13. The method of claim 12, wherein querying the first land server comprises: When the media content item is not stored at the first land server, the third land server (532-a) of the second land server layer (406-b) of the two or more land server layers is queried for the media content item, wherein the third land server is associated with the first land server for the content delivery network. The media content item is received from the third land server when the media content item is stored at the third land server. as well as When the media content item is not stored at the third land server, a message indicating that the media content item is not stored at the third land server is received.
14. The method of claim 13, wherein querying the first land server comprises: When the media content item is not stored at the third land server, query the source server (130) of the content delivery network for the media content item. as well as Receive the media content items from the source server.
15. The method of claim 11, further comprising: In response to receiving the media content item from the first land server, the media content item is stored at the mobile edge server.
16. A method for use in a communication system (100) including a content delivery network (122), the content delivery network comprising an edge server layer (402) located on a plurality of mobile platforms (160) served by a wireless communication link (106) of the communication system and two or more terrestrial server layers (404) geographically distributed within the communication system, the method comprising: It is determined that the modem (212) on the mobile platform (160-a) of the plurality of mobile platforms is provided with communication via the first satellite beam (108) served by the first satellite access node (102); The first land server (522-a) of the two or more land server layers is determined to be the closest to the first satellite access node in terms of network proximity, based at least in part on the topology of the network (120) of the two or more land server layers and the location of the first satellite access node. The mobile edge server (170-a) located on the mobile platform is associated with the first land server of the two or more land server layers, based at least in part on the determination that the first land server is the closest in terms of network proximity to the first satellite access node. The second access node is determined to be associated with a second land server in one of the two or more land server layers, the association being at least in part based on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers. as well as The association between the mobile edge server and the second land server of the two or more land server layers is updated, the association being at least in part based on determining that the second land server is closer to the first land server in terms of network proximity, and the established association between the second access node and the second land server.
17. The method of claim 16, further comprising: Obtain an indication of switching of the modem on the mobile platform from communication provided by the first satellite access node to communication provided by the second satellite access node (110-d-2); The second land server (522-b) of the two or more land server layers is determined to be closer to the first land server than the first land server in terms of network proximity to the first satellite access node, based at least in part on the topology of the network of the two or more land server layers and the location of the second satellite access node.
18. The method of claim 17, wherein the mobile platform is located at a first location after updating the association of the mobile edge server, and wherein the first location is geographically closer to the first land server than to the second land server.
19. The method of claim 16, further comprising: Determine the satellite beam group (1030) associated with the first satellite access node. as well as The first satellite access node is selected to communicate with the mobile edge server located on the mobile platform, at least in part, based on the fact that the first satellite beam (1030-a) is a member of the satellite beam group.
20. The method of claim 16, further comprising: Each server in the edge server layer is associated with a corresponding server in the two or more terrestrial server layers, at least in part, based on the topology of the network (122) of the two or more terrestrial server layers and the location of the corresponding service satellite access node in the multiple satellite access nodes (110) of the communication system.
21. The method of claim 16, further comprising: Before updating the association of the mobile edge server, a request for a media content item is received from the mobile edge server located on the mobile platform (1304). as well as The request for the media content item is forwarded to the first land server of the two or more land server layers.
22. The method of claim 21, further comprising: The media content items are received from the first land server of the two or more land server layers; as well as The media content items are forwarded to the mobile edge server located on the mobile platform.
23. The method of claim 21, further comprising: After updating the association of the mobile edge server, the media content item is received from the second land server (522-b) of the two or more land server layers or the source server (130) of the two or more land server layers; and The media content items are forwarded to the mobile edge server located on the mobile platform.
24. The method of claim 21, further comprising: The media content items are received from the source servers (130) of the two or more land server layers; as well as The media content items are forwarded to the mobile edge server located on the mobile platform.
25. A communication system (100) comprising: The content delivery network (122) includes an edge server layer (402) located on a mobile platform (160) served by the wireless communication link (106) of the communication system and two or more land server layers (404) geographically distributed within the communication system. Processor (230); A memory (234) that is in electronic communication with the processor; as well as Instructions, which are stored in the memory and can be executed by the processor, to enable the communication system to: A request for a media content item is received (1202) from a device (220) within a mobile platform (160-a) served via a wireless communication link (108-a) of the communication system. The identity of the mobile edge server (170-a) located on the mobile platform is determined at least in part based on the network address of the device associated with the request; Determine whether the media content item is stored on the mobile edge server; When the media content item is stored on the mobile edge server, the request for the media content item will be redirected to the mobile edge server; When the media content item is not stored on the mobile edge server, determine whether the media content item is stored on the first land server (522-a) of the first land server layer (404) of the two or more land server layers, the first land server (522-a) being coupled to the first access node (110-d-1) serving the mobile platform and associated with the mobile edge server for the content delivery network; When the media content item is stored on the first land server (522-a) of the first land server layer, the request for the media content item will be redirected to the first land server (522-a). While the mobile platform is en route, it is determined that the mobile platform has switched to being served by the second access node (110-d-3); The second access node is determined to be associated with a second land server (522-b), the association being at least partially based on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers; and Update the association between the mobile edge server and the second land server (522-b) of the content delivery network, the association being at least in part based on the mobile platform switching to being served by the second access node (110-d-3), and the established association between the second access node and the second land server.
26. The communication system of claim 25, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: When the media content item is not stored on the first land server, determine whether the media content item is stored on a third land server (532), wherein the third land server is the second land server layer (406) of the two or more land server layers, and wherein the third land server is associated with the first land server; and When the media content item is stored on the third land server, the request for the media content item will be redirected to the third land server.
27. The communication system of claim 26, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: When the media content item is not stored on the third land server, the request for the media content item will be redirected to the source server (130) of the content delivery network.
28. The communication system according to any one of claims 25 to 27, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: In response to the request for the media content item, the address of the mobile edge server is provided to the device; or In response to the request for the media content item, an instruction is sent to the mobile edge server to provide the media content item.
29. A communication system comprising: The content delivery network (122) includes an edge server layer (402) located on a mobile platform (106) served by the wireless communication link of the communication system and two or more land server layers (404) geographically distributed within the communication system. Processor (230); A memory (234) that is in electronic communication with the processor; as well as Instructions, which are stored in the memory and can be executed by the processor, to enable the communication system to: A request (1202) for a media content item for a device (220) within the mobile platform is received at a mobile edge server (170-a) located on the mobile platform (160), wherein the request is redirected from a server (404) of the content delivery network outside the mobile platform. Determine whether the media content item is stored at the mobile edge server; When the media content item is stored at the mobile edge server, the media content item is provided to the device; as well as When the media content item is not stored at the mobile edge server: The first access node (110) serving the mobile platform via the wireless communication link (106) queries the first land server of the two or more land server layers for the media content item. Receive the media content items from the first land server; The media content items are provided to the device; While the mobile platform is en route, it is determined that the mobile platform has switched to being served by the second access node (110-d-3); The second access node is determined to be associated with a second land server (522-b), the association being at least partially based on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers; and Update the association between the mobile edge server and the second land server (522-b) of the content delivery network, the association being at least in part based on the mobile platform switching to being served by the second access node (110-d-3), and the established association between the second access node and the second land server.
30. The communication system of claim 29, wherein the instructions stored in the memory and executable by the processor for querying the first land server further enable the communication system to: For the media content item, query the first land server (522-a) of the first land server layer (404) of the two or more land server layers, the first land server being coupled to the first access node serving the mobile platform and associated with the mobile edge server for the content delivery network. When the media content item is stored at the first land server, the media content item is received from the first land server; and When the media content item is not stored at the first land server, a message indicating that the media content item is not stored at the first land server is received.
31. The communication system of claim 30, wherein the instructions stored in the memory and executable by the processor for querying the first land server further enable the communication system to: When the media content item is not stored at the first land server, the third land server (532-a) of the second land server layer (406-b) of the two or more land server layers is queried for the media content item, wherein the third land server is associated with the first land server for the content delivery network. When the media content item is stored at the third land server, the media content item is received from the third land server; and When the media content item is not stored at the third land server, a message indicating that the media content item is not stored at the third land server is received.
32. The communication system of claim 29, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: In response to receiving the media content item from the first land server, the media content item is stored at the mobile edge server.
33. A communication system (100) comprising: The content delivery network (122) includes an edge server layer (402) located on multiple mobile platforms (160) served by the wireless communication link (106) of the communication system and two or more land server layers (404) geographically distributed within the communication system. Processor (230); A memory (234) that is in electronic communication with the processor; as well as Instructions, which are stored in the memory and can be executed by the processor, to enable the communication system to: It is determined that the modem (212) on the mobile platform (160-a) of the plurality of mobile platforms is provided with communication via the first satellite beam (108) served by the first satellite access node (102); The first land server (522-a) of the two or more land server layers is determined to be the closest to the first satellite access node in terms of network proximity, based at least in part on the topology of the network (120) of the two or more land server layers and the location of the first satellite access node. as well as The mobile edge server (170-a) located on the mobile platform is associated with the first land server of the two or more land server layers, based at least in part on the determination that the first land server is the closest in terms of network proximity to the first satellite access node. The association between the second access node and the second land server is determined, and the association is based at least in part on the topology of the two or more land server layers and the location of the exchange point between the land network serving the second access node and the topology of the two or more land server layers. as well as The association between the mobile edge server and a second land server in one or more land server layers is updated, the association being at least in part based on determining that the second land server is closer to the first land server in terms of network proximity, and the established association between the second access node and the second land server.
34. The communication system of claim 33, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: Obtain an indication of switching of the modem on the mobile platform from communication provided by the first satellite access node to communication provided by the second satellite access node (110-d-2); The second land server (522-b) of the two or more land server layers is determined to be closer to the first land server than the first land server in terms of network proximity to the first satellite access node, based at least in part on the topology of the network of the two or more land server layers and the location of the second satellite access node.
35. The communication system according to any one of claims 33 and 34, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: Determine the satellite beam group (1030) associated with the first satellite access node; and The first satellite access node is selected to communicate with the mobile edge server located on the mobile platform, at least in part, based on the fact that the first satellite beam (1030-a) is a member of the satellite beam group.
36. The communication system of claim 33, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: Each server in the edge server layer is associated with a corresponding server in the two or more terrestrial server layers, at least in part, based on the topology of the network (122) of the two or more terrestrial server layers and the location of the corresponding service satellite access node in the multiple satellite access nodes (110) of the communication system.
37. The communication system of claim 33, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: Receive a request for a media content item from the mobile edge server located on the mobile platform (1304); and The request for the media content item is forwarded to the first land server of the two or more land server layers.
38. The communication system of claim 37, wherein the instructions stored in the memory and executable by the processor further cause the communication system to: Receive the media content items from the first land server of the two or more land server layers; and The media content items are forwarded to the mobile edge server located on the mobile platform.
Citation Information
Patent Citations
Mobility across satellite beams using l2 connectivity
US20130242856A1
Content delivery network protection from malware and data leakage
US20170223029A1
Leveraging mobile environment to distribute cache data
US20200259921A1