Patent Description:
A mobile communication device may utilize different networks, such as cellular networks, Wi-Fi networks, terrestrial and non-terrestrial (e.g., satellite) networks, and the like, to transmit and/or receive data. In certain situations, the mobile communication device receives network data, such as Content Delivery Network (CDN) data, containing information that enables the mobile communication device to access a first network, such as a cellular network or a satellite network. For example, the network data may include projected characteristics of the first network over time, such as projected network node locations over time, projected frequency channels utilized by the first network over time, and the like. Unfortunately, deviations of the actual characteristics of the first network from the projected characteristics may increase as time goes on if the network data is not refreshed periodically. Thus, the network data and corresponding projected characteristics of the first network may become unreliable. Additionally or alternatively, the network data received by the mobile communication device may include projected characteristics of the first network for a finite period of time, such as two weeks. Thus, the network data and corresponding projected characteristics of the first network expires after the finite period of time lapses, even if they are reliable for the duration of the finite period of time. Document "<NPL>, relates to the feasibility of content distribution between devices mounted in moving vehicles using commodity WiFi. Document <CIT> concerns methods and apparatuses for scanning access points in wireless LAN systems. Document <CIT> relates to a method for operating a user equipment (UE) adapted to transmit beacons. Document "<NPL>, relates to vehicular ad hoc network that allows vehicles to communicate together in the absence of fixed infrastructure. <CIT> relates to downloading satellite ephemeris data using a P2P network.

The present invention provides a mobile communication device and one or more computer-readable media as set out in the appended independent claims. In one embodiment, a mobile communication device includes a transmitter, a memory configured to store first Content Delivery Network (CDN) data, and processing circuitry communicatively coupled to the memory and the transmitter and configured to cause the transmitter to transmit, over a peer-to-peer (P2P) network, a beacon signal indicating a CDN sharing request for second CDN data.

In another embodiment, a mobile communication device includes a transceiver, a memory configured to store Content Delivery Network (CDN) data, and processing circuitry communicatively coupled to the memory and the transceiver and configured to cause the transceiver to receive, from an additional mobile communication device and over a peer-to-peer (P2P) network, a beacon signal indicating a CDN sharing request for the CDN data. The processing circuitry is also configured to cause the transceiver to transmit, over the P2P network, the CDN data to the additional mobile communication device.

In yet another embodiment, a non-transitory, computer readable medium includes instructions thereon that, when executed by one or more processors, are configured to cause the one or more processors to transmit, via a transmitter of a mobile communication device and over a peer-to-peer (P2P) network, a beacon signal indicating a Content Delivery Network (CDN) data sharing request for CDN data when the mobile communication device is without access to a Wi-Fi network and cellular network. The instructions, when executed by the one or more processors, are also configured to cause the one or more processors to receive, via a receiver of the mobile communication device and over the P2P network, the CDN data from an additional mobile communication device.

Various refinements of the features noted above may exist in relation to various aspects of the present disclosure. Further features may also be incorporated in these various aspects as well. These refinements and additional features may exist individually or in any combination. For instance, various features discussed below in relation to one or more of the illustrated embodiments may be incorporated into any of the above-described aspects of the present disclosure alone or in any combination. The brief summary presented above is intended only to familiarize the reader with certain aspects and contexts of embodiments of the present disclosure without limitation to the claimed subject matter.

Various aspects of this disclosure may be better understood upon reading the following detailed description and upon reference to the drawings described below in which like numerals refer to like parts.

This disclosure is directed to sharing network data, such as Content Delivery Network (CDN) data, between mobile communication devices via a peer-to-peer (P2P) network. For example, a mobile communication device may utilize various networks to transmit and/or receive data. The mobile communication device may access a first network (e.g., a non-terrestrial network, a satellite network) via network data, such as CDN data, that includes projected characteristics of the first network. The projected characteristics of the first network may include projected network node locations of the first network for given points in time, projected frequency channels utilized by the first network for given points in time, and the like. However, actual characteristics of the first network may deviate from the projected characteristics. Further, the deviations of the actual characteristics of the first network from the projected characteristics may increase in extent as time goes on. Accordingly, the projected characteristics may become unreliable and the mobile communication device may be unable to access the first network.

Further, each instance of the network data received by the mobile communication device may include projected characteristics of the first network for a finite period of time, such as two weeks. Accordingly, even if the network data is adequately reliable over the finite period of time, the network data may eventually expire. In general, the mobile communication device periodically downloads updated network data from a data source while the mobile communication device is connected to a second network, such as a Wi-Fi or cellular network, different than the first network. Indeed, the network data corresponding to the first network may be too large to download via the first network, the first network may be periodically inaccessible due to incompatible locations of the network nodes of the first network relative to the mobile communication device, and/or the first network may only be accessed by the mobile communication device during emergency scenarios.

In accordance with present embodiments, the mobile communication device may include features configured to enable the mobile communication device to receive the network data without being connected to a central server, such as in the case of the second network (e.g., Wi-Fi or cellular network). Such may be the case when the mobile communication device is disposed in a remote location that does not provide access to the second network. For example, the mobile communication device may be equipped with componentry and control logic that enable the mobile communication device to receive the network data from an additional mobile communication device via a third network, such as a P2P network, different than the first network and the second network. The mobile communication device may periodically transmit, via the P2P network, a beacon signal indicating a network data sharing request for updated network data (e.g., CDN data). Based on various criteria, the mobile communication device may determine how often to transmit the beacon signal. The criteria may include, for example, an origination date of the network data stored on the mobile communication device, an amount of time between the origination date and the present date, a battery health of the mobile communication device, whether the mobile communication device has received an input indicative of an emergency situation (e.g., associated with a user of the mobile communication device), and other criteria described in detail below. In some embodiments, the mobile communication device may include features that enable the mobile communication device to locate areas expected to have a relatively high density of additional mobile communication devices, in order to increase a likelihood that the mobile communication device receives updated network data from one of the additional mobile communication devices via the P2P network.

In accordance with present embodiments, the mobile communication device may also include features that enable the mobile communication device to transmit the network data to an additional mobile communication device requesting the network data. For example, the mobile communication device may receive from the additional mobile communication device a beacon signal indicating a network data sharing request for network data. The mobile communication device may present to the user of the mobile communication device an option to approve transmittal of the network data residing on the mobile communication device to the additional mobile communication device. In some embodiments, the mobile communication device may first determine that additional network data residing on the additional mobile communication device is older than the network data residing on the mobile communication device, and then present the option to approve transmittal of the network data residing on the mobile communication device to the additional mobile communication device. Further, in certain situations, the mobile communication device may automatically transmit the network data to the additional mobile communication device in response to the mobile communication device receiving the beacon signal, such as when the user pre-approves network data transmittal prior to the mobile communication device receiving the beacon signal.

Embodiments herein provide various apparatuses and techniques to enable the mobile communication device to receive reliable network data, such as CDN data, from another mobile communication device when the mobile communication device is unable to receive the network data via another means (e.g., from another data source via a Wi-Fi network connection or a cellular network connection). Further, embodiments herein provide various apparatuses and techniques to enable the mobile communication device to send reliable network data, such as CDN data, to another mobile communication device requesting CDN data. These and other features are described in detail below with reference to the drawings.

With the foregoing in mind, <FIG> is a block diagram of an electronic device or mobile communication device <NUM>, according to embodiments of the present disclosure. The electronic device <NUM> may include, among other things, one or more processors <NUM> (collectively referred to herein as a single processor for convenience, which may be implemented in any suitable form of processing circuitry), memory <NUM>, nonvolatile storage <NUM>, a display <NUM>, input structures <NUM>, an input/output (I/O) interface <NUM>, a network interface <NUM>, and a power source <NUM>. The various functional blocks shown in <FIG> may include hardware elements (including circuitry), software elements (including machine-executable instructions) or a combination of both hardware and software elements (which may be referred to as logic). The processor <NUM>, the memory <NUM>, the nonvolatile storage <NUM>, the display <NUM>, the input structures <NUM>, the input/output (I/O) interface <NUM>, the network interface <NUM>, and/or the power source <NUM> may each be communicatively coupled directly or indirectly (e.g., through or via another component, a communication bus, a network) to one another to transmit and/or receive data between one another. It should be noted that <FIG> is merely one example of a particular implementation and is intended to illustrate the types of components that may be present in electronic device <NUM>.

By way of example, the electronic device <NUM> may include any suitable computing device, including a desktop or notebook computer (e.g., in the form of a MacBook®, MacBook® Pro, MacBook Air®, iMac®, Mac® mini, or Mac Pro® available from Apple Inc. of Cupertino, California), a portable electronic or handheld electronic device such as a wireless electronic device or smartphone (e.g., in the form of a model of an iPhone® available from Apple Inc. of Cupertino, California), a tablet (e.g., in the form of a model of an iPad® available from Apple Inc. of Cupertino, California), a wearable electronic device (e.g., in the form of an Apple Watch® by Apple Inc. of Cupertino, California), and other similar devices. It should be noted that the processor <NUM> and other related items in <FIG> may be generally referred to herein as "data processing circuitry. " Such data processing circuitry may be embodied wholly or in part as software, hardware, or both. Furthermore, the processor <NUM> and other related items in <FIG> may be a single contained processing module or may be incorporated wholly or partially within any of the other elements within the electronic device <NUM>. The processor <NUM> may be implemented with any combination of general-purpose microprocessors, microcontrollers, digital signal processors (DSPs), field programmable gate array (FPGAs), programmable logic devices (PLDs), controllers, state machines, gated logic, discrete hardware components, dedicated hardware finite state machines, or any other suitable entities that may perform calculations or other manipulations of information. The processors <NUM> may perform the various functions described herein.

In the electronic device <NUM> of <FIG>, the processor <NUM> may be operably coupled with a memory <NUM> and a nonvolatile storage <NUM> to perform various algorithms. Such programs or instructions executed by the processor <NUM> may be stored in any suitable article of manufacture that includes one or more tangible, computer-readable media. The tangible, computer-readable media may include the memory <NUM> and/or the nonvolatile storage <NUM>, individually or collectively, to store the instructions or routines. The memory <NUM> and the nonvolatile storage <NUM> may include any suitable articles of manufacture for storing data and executable instructions, such as random-access memory, read-only memory, rewritable flash memory, hard drives, and optical discs. In addition, programs (e.g., an operating system) encoded on such a computer program product may also include instructions that may be executed by the processor <NUM> to enable the electronic device <NUM> to provide various functionalities.

In certain embodiments, the display <NUM> may facilitate users to view images generated on the electronic device <NUM>. In some embodiments, the display <NUM> may include a touch screen, which may facilitate user interaction with a user interface of the electronic device <NUM>. Furthermore, it should be appreciated that, in some embodiments, the display <NUM> may include one or more liquid crystal displays (LCDs), light-emitting diode (LED) displays, organic light-emitting diode (OLED) displays, active-matrix organic light-emitting diode (AMOLED) displays, or some combination of these and/or other display technologies.

The input structures <NUM> of the electronic device <NUM> may enable a user to interact with the electronic device <NUM> (e.g., pressing a button to increase or decrease a volume level). The I/O interface <NUM> may enable electronic device <NUM> to interface with various other electronic devices, as may the network interface <NUM>. In some embodiments, the I/O interface <NUM> may include an I/O port for a hardwired connection for charging and/or content manipulation using a standard connector and protocol, such as the Lightning connector provided by Apple Inc. of Cupertino, California, a universal serial bus (USB), or other similar connector and protocol.

The network interface <NUM> may include, for example, one or more interfaces for a terrestrial (e.g., land-based) network or non-terrestrial network (NTN), a peer-to-peer connection, a personal area network (PAN), such as an ultra-wideband (UWB) or a BLUETOOTH® network, a local area network (LAN) or wireless local area network (WLAN), such as a network employing one of the IEEE <NUM>. 11x family of protocols (e.g., WI-FI®), and/or for a wide area network (WAN), such as any standards related to the Third Generation Partnership Project (3GPP), including, for example, a <NUM>rd generation (<NUM>) cellular network, universal mobile telecommunication system (UMTS), <NUM>th generation (<NUM>) cellular network, long term evolution (LTE®) cellular network, long term evolution license assisted access (LTE-LAA) cellular network, <NUM>th generation (<NUM>) cellular network, and/or New Radio (NR) cellular network, and so on. The network interface <NUM> can further communicate via NTNs, or segments of such networks, using an airborne or spaceborne vehicle (e.g., satellite) for transmission. As used herein, airborne vehicles refer to High Altitude Platforms (HAPs) encompassing satellites, Unmanned Aircraft Systems (UAS) - including tethered UAS, Lighter than Air UAS and Heaver than Air UAS - operating at altitude; typically between <NUM> and <NUM> kilometers, quasi stationary. In particular, the network interface <NUM> may include, for example, one or more interfaces for using a cellular communication standard of the <NUM> specifications that include the millimeter wave (mmWave) frequency range (e.g., <NUM>-<NUM> gigahertz (GHz)). The network interface <NUM> of the electronic device <NUM> may allow communication over the aforementioned networks (e.g., <NUM>, Wi-Fi, LTE-LAA, and so forth). The network interface <NUM> may also include one or more interfaces for, for example, broadband fixed wireless access networks (e.g., WIMAX®), mobile broadband Wireless networks (mobile WIMAX®), asynchronous digital subscriber lines (e.g., ADSL, VDSL), digital video broadcasting-terrestrial (DVB-T®) network and its extension DVB Handheld (DVB-H®) network, UWB network, alternating current (AC) power lines, and so forth. The network interface <NUM> may, for instance, include a transceiver <NUM> for communicating data using one of the aforementioned networks. The power source <NUM> of the electronic device <NUM> may include any suitable source of power, such as a rechargeable lithium polymer (Li-poly) battery and/or an alternating current (AC) power converter.

<FIG> is a functional diagram of the electronic device <NUM> or mobile communication device of <FIG>, according to embodiments of the present disclosure. As illustrated, the processor <NUM>, the memory <NUM>, the transceiver <NUM> (illustrated as 30A-30N, collectively referred to as a transceiver <NUM>), a transmitter <NUM> of the transceiver <NUM>, a receiver <NUM> of the transceiver <NUM>, and/or antennas <NUM> (illustrated as 55A-55N, collectively referred to as an antenna <NUM>) may be communicatively coupled directly or indirectly (e.g., through or via another component, a communication bus, a network) to one another to transmit and/or receive data between one another.

The electronic device <NUM> may include the transmitter <NUM> and/or the receiver <NUM> that respectively enable transmission and reception of data between the electronic device <NUM> and an external device via, for example, a network (e.g., including base stations) or a direct connection. As illustrated, the transmitter <NUM> and the receiver <NUM> may be combined into the transceiver <NUM>. The electronic device <NUM> may also have one or more antennas 55A-55N electrically coupled to the transceiver <NUM>. The antennas 55A-55N may be configured in an omnidirectional or directional configuration, in a single-beam, dual-beam, or multi-beam arrangement, and so on. Each antenna <NUM> may be associated with one or more beams and various configurations. In some embodiments, multiple antennas of the antennas 55A-55N of an antenna group or module may be communicatively coupled to a respective transceiver <NUM> and each emit radio frequency signals that may constructively and/or destructively combine to form a beam. The electronic device <NUM> may include multiple transmitters, multiple receivers, multiple transceivers (e.g., transceivers 30A-30N), and/or multiple antennas as suitable for various communication standards. For example, the electronic device <NUM> may include a first transceiver 30A to send and receive messages using a first wireless communication (e.g., satellite or non-terrestrial) network, a second transceiver 30B to send and receive messages using a second wireless communication (e.g., Wi-Fi or cellular) network, and a third transceiver 30N to send and receive messages using a third wireless communication (e.g., P2P) network, though any or all of these transceivers may be combined in a single transceiver. In some embodiments, the transmitter <NUM> and the receiver <NUM> may transmit and receive information via other wired or wireline systems or means.

The electronic device <NUM> may also include one or more cameras or image or light sensors (e.g., as part of the input structures <NUM>). The one or more cameras or image or light sensors (collectively referred to as a "camera <NUM>" herein) may capture images or determine amounts of light surrounding the electronic device <NUM>. In some embodiments, the camera <NUM> may include a front-facing camera (e.g., disposed on a display surface of the electronic device <NUM> having the display <NUM>) and/or a rear-facing camera (e.g., disposed on a base or back surface, opposite the display surface, of the electronic device <NUM>).

The electronic device <NUM> may include one or more motion sensors <NUM> (e.g., as part of the input structures <NUM>). The one or more motion sensors (collectively referred to as a "motion sensor <NUM>" herein) may include an accelerometer, gyroscope, gyrometer, and the like, that detects or facilitates determining an orientation (e.g., including pitch, yaw, roll, and so on) and/or motion of the electronic device <NUM>.

As illustrated, the various components of the electronic device <NUM> may be coupled together by a bus system <NUM>. The bus system <NUM> may include a data bus, for example, as well as a power bus, a control signal bus, and a status signal bus, in addition to the data bus. The components of the electronic device <NUM> may be coupled together or accept or provide inputs to each other using some other mechanism.

As previously described, and in accordance with the present disclosure, the electronic device <NUM> may access various networks to transmit and/or receive data. For example, the electronic device <NUM> may access a Wi-Fi or cellular network to transmit and/or receive data. In certain conditions, the electronic device <NUM> may be unable to access the Wi-Fi network and the cellular network. Thus, the electronic device <NUM> may access a different network, such as a satellite network or non-terrestrial network, when the electronic device <NUM> is unable to access the Wi-Fi network and the cellular network. For example, the electronic device <NUM> may receive and utilize network data, such as Content Delivery Network (CDN) data, to access the satellite network or non-terrestrial network.

The network data may include projected characteristics of the satellite or non-terrestrial network over time, such as network node (e.g., satellite, HAP) locations of the satellite or non-terrestrial network for given points in time, frequency channels of the satellite or non-terrestrial network for given points in time, and the like. The projected characteristics may deviate from actual characteristics of the satellite or non-terrestrial network as time goes on. Further, the network data including information relating to the projected characteristics may eventually expire. Thus, as the network data becomes unreliable and/or approaches expiration, the electronic device <NUM> may download updated network data. In instances where the electronic device <NUM> is unable to access Wi-Fi networks, cellular networks, the satellite network, and the non-terrestrial network to download updated network data relating to the satellite or non-terrestrial network, the electronic device <NUM> in accordance with the present disclosure may request updated network data from an additional electronic device via a peer-to-peer network between the electronic device <NUM> and the additional electronic device. It should be understood that a peer-to-peer or device-to-device network may include a network of interconnected nodes or "peers" (e.g. including the electronic device <NUM> and the additional electronic device) that share resources amongst each other without use of a centralized administrative system. As such, the peer-to-peer network may operate without a central server.

With the foregoing in mind, <FIG> is a block diagram illustrating an embodiment of a communicative coupling <NUM> between the electronic device <NUM> of <FIG> and an additional electronic device <NUM> via a peer-to-peer (P2P) network. The communicative coupling <NUM> in the illustrated embodiment is a P2P communicative coupling. It should be noted that the electronic device <NUM> and the additional electronic device <NUM> illustrated in <FIG> are simplified relative to the electronic device <NUM> illustrated in <FIG>, but that the electronic device <NUM> and the additional electronic device <NUM> in <FIG> may include the same or similar features as those presented in <FIG>. For example, the additional electronic device <NUM> includes an additional processor <NUM>, an additional memory <NUM>, an additional display <NUM>, an additional power source <NUM>, an additional transceiver <NUM>, and one or more additional antennas <NUM>. Further, the electronic device <NUM> is referred to below as the first mobile communication device <NUM>, and the additional electronic device <NUM> is referred to below as the second mobile communication device <NUM>.

As previously described, in certain circumstances, the first mobile communication device <NUM> may be unable to access certain networks, such as a Wi-Fi network and/or a cellular network. As an alternate to Wi-Fi and cellular networks, the first mobile communication device <NUM> may attempt to access a different network, such as a satellite (as claimed) or a non-terrestrial network. Access to the satellite or non-terrestrial network, for example, may be contingent upon the first mobile communication device <NUM> utilizing network data stored thereon, such as CDN data, including projected characteristics of the satellite network or non-terrestrial (e.g., network node locations at given points in time, frequency channels at given points of time, and the like). According to the invention, the CDN data includes ephemeris data (e.g., a set of parameters that enables an accurate determination of a network node location or a projected network node location at a specific time, including a current time or a future time). If the network data is unreliable due to deviations between actual characteristics of the satellite or non-terrestrial network and projected characteristics, or if the network data is expired, the first mobile communication device <NUM> may be unable to access the satellite or non-terrestrial network.

Further, in certain circumstances, the first mobile communication device <NUM> may be unable to access the satellite or non-terrestrial network (or otherwise unable to receive the network data via access to the satellite or non-terrestrial network) even if the network data is reliable and unexpired. For example, the network node locations may be periodically incompatible with a location of the first mobile communication device <NUM>, or a file size containing the network data may be too large to transmit to the first mobile communication device <NUM> via the satellite network. In accordance with present embodiments, the first mobile communication device <NUM> may utilize the P2P communicative coupling <NUM> between the first mobile communication device <NUM> and the second mobile communication device <NUM> in an attempt to receive updated network data from the second mobile communication device <NUM>.

For example, the first mobile communication device <NUM> may determine that the network data stored on the first mobile communication device <NUM> (e.g., stored on the memory <NUM>, the storage <NUM>, or a separate storage location) is expired, relatively old, or otherwise unreliable or approaching unreliability. The processor <NUM> of the first mobile communication device <NUM> may initiate a beacon transmitted via the transceiver <NUM> and corresponding antenna(s) <NUM> of the first mobile communication device <NUM>, the beacon corresponding to a network data sharing request for updated network data from the second mobile communication device <NUM>. The P2P communicative coupling <NUM> between the first mobile communication device <NUM> and the second mobile communication device <NUM> may be established when the mobile communication devices <NUM>, <NUM> are within a sufficient proximity of one another, in response to the beacon initiated by the processor <NUM> of the first mobile communication device <NUM>, or a combination thereof.

The second mobile communication device <NUM> receives the beacon from the first mobile communication device <NUM> via the P2P communicative coupling <NUM>. In some embodiments, the second mobile communication device <NUM> presents, on the display <NUM> thereof, data indicative of the beacon. A user of the second mobile communication device <NUM> may approve transmission of network data stored on the second mobile communication device <NUM> (e.g., stored in the memory <NUM> or another storage location) to the first mobile communication device <NUM>. In some embodiments, the beacon includes data indicative of an origination date of the network data stored on the first mobile communication device <NUM>. In such embodiments, the second mobile communication device <NUM> may first determine that the network data stored on the second mobile communication device <NUM> is more recent than the network data stored on the first mobile communication device <NUM>, and then present on the display <NUM> of the second mobile communication device <NUM> the option to transmit or share the network data via the P2P communicative coupling <NUM>. The second mobile communication device <NUM> transmits the network data to the first mobile communication device <NUM> in response to a selection of the option to transmit or share the network data.

As described above, the P2P communicative coupling <NUM> may be established when the first mobile communication device <NUM> and the second mobile communication device <NUM> are within a sufficient proximity of one another via, for example, a beacon from the first mobile communication device <NUM>. Further, transmission of the updated network data from the second mobile communication device <NUM> to the first mobile communication device <NUM> may be contingent on a user of the second mobile communication device <NUM> approving transmission. For these reasons, among others, the first mobile communication device <NUM> may send multiple beacon signals until receiving the updated network data. A frequency or rate at which the first mobile communication device <NUM> transmits the beacon signals may be based on various criteria, including an origination date of the network data residing on the mobile communication device, an amount of time between the origination date and the present date, a battery health of the mobile communication device, whether the mobile communication device has received an input indicative of an emergency situation (e.g., associated with a user of the mobile communication device), and the like. These and other features are described in detail below with reference to later drawings.

<FIG> is a process flow diagram of a method <NUM> of sharing network data, such as Content Delivery Network (CDN) data, between the electronic device <NUM> of <FIG> (referred to below as the first mobile communication device <NUM>) and the additional electronic device <NUM> (referred to below as the second mobile communication device <NUM>). In the illustrated embodiment, the method <NUM> is segmented (e.g., via line <NUM>) between actions taken by the first mobile communication device <NUM> and actions taken by the second mobile communication device <NUM>. At block <NUM>, the first mobile communication device <NUM> determines whether a first origination date of first CDN data stored on the first mobile communication device <NUM> is older than a threshold amount of time. Put differently, the first mobile communication device <NUM> determines whether a difference between the present date and the first origination date is greater than the threshold amount of time. The threshold amount may be based upon a likelihood of network data older than the threshold amount of time being unreliable and/or expired. As an example, the threshold amount of time may be one day, two days, three days, four days, five days, six days, or any number of days up to fourteen days (or, in some embodiments, more).

If the first origination date of the network data stored on the first mobile communication device <NUM> is not older than the threshold amount of time, then the method <NUM> may return to block <NUM>. In some embodiments, the method <NUM> includes, at block <NUM>, waiting a duration of time before returning to block <NUM>, or waiting until the first origination date is older than the threshold amount of time, and then continuing to block <NUM>.

At block <NUM>, the first mobile communication device <NUM> transmits, over a P2P network, a beacon signal indicating a network data sharing request for second network data (e.g., CDN data) having a second origination date more recent than the first origination date. As will be appreciated in view of later drawings and description thereof, the first mobile communication device <NUM> transmits multiple beacon signals at a rate or frequency determined by the first mobile communication device <NUM> based on various criteria, such as an age of the first origination date, a battery health of the first mobile communication device <NUM>, whether the first mobile communication device <NUM> has received an input indicative of an emergency situation (e.g., indicating that a user of the first mobile communication device <NUM> is lost or injured), and the like.

At block <NUM>, the second mobile communication device <NUM> receives, via the P2P network, the beacon signal from the first mobile communication device <NUM>. As previously described, the P2P communicative coupling <NUM> illustrated in <FIG> is established when the first mobile communication device <NUM> and the second mobile communication device <NUM> are within sufficient proximity of one another. The P2P network may include, for example, a Bluetooth network, a Bluetooth Low Energy ("Bluetooth LE") network, a P2P Wi-Fi network, a Near-Field Communication network, or the like. It should be noted that multiple instances of the second mobile communication device <NUM> may receive the beacon signal from the first mobile communication device <NUM>, thereby increasing a likelihood that one or more of the second mobile communication devices <NUM> transmits updated network data to the first mobile communication device <NUM>.

At block <NUM>, the second mobile communication device <NUM> determines whether a second origination date of network data (e.g., CDN data) stored on the second mobile communication device <NUM> is more recent than the first origination date of the network data (e.g., CDN data) stored on the first mobile communication device <NUM>. For example, in some embodiments, the beacon signal transmitted by the first mobile communication device <NUM> to the second mobile communication device <NUM> includes data indicative of the first origination date, and the second mobile communication device <NUM> compares the first origination date with the second origination date associated with the network data stored on the second mobile communication device <NUM>. If the second origination date is not more recent than the first origination date, then action by the second mobile communication device <NUM> is ended at block <NUM>.

If the second mobile communication device <NUM> determines that the second origination date is more recent than the first origination date, the method <NUM> continues to block <NUM>. However, in some embodiments, the beacon signal received by the second mobile communication device <NUM> does not include data indicative of the first origination date associated with the first mobile communication device <NUM>, in which case the method <NUM> proceeds directly from block <NUM> to block <NUM>. At block <NUM>, the second mobile communication device <NUM> presents an option (e.g., to the display <NUM> of the second mobile communication device <NUM>) to share the second network data (e.g., second CDN data) with the first mobile communication device <NUM>. A user of the second mobile communication device <NUM> may elect to share or not share the second network data with the first mobile communication device <NUM>. In some embodiments, the second mobile communication device <NUM> may be configured by the user or defaulted to share or not share the second network data with other mobile communication devices (e.g., including the first mobile communication device <NUM>).

At block <NUM>, the second mobile communication device <NUM> transmits, via the P2P network and in response to the selection of the option to share the second network data, the second network data to the first mobile communication device <NUM>. At block <NUM>, the first mobile communication device <NUM> receives the second network data from the second mobile communication device <NUM>. The first mobile communication device <NUM> downloads the second network data and utilizes the second network data to access the network (e.g., satellite or non-terrestrial network) associated with the second (or updated) network data received from the second mobile communication device <NUM>.

As previously described, the first mobile communication device <NUM> continues to transmit beacon signals (e.g., at block <NUM>) until the beacon signal is received and acknowledged by an instance of the second mobile communication device <NUM>. A reliability of the network data stored on the first mobile communication device <NUM> (i.e., prior to receiving updated network data) may decrease over time and ultimately expire. Accordingly, a need for updated network data (e.g., CDN data) may increase as time goes on. Further, transmitting beacon signals over the P2P network for updated network data may tend to deplete a battery life of the power source <NUM> of the first mobile communication device <NUM>. Accordingly, as described in detail below, the first mobile communication device <NUM> may consider various criteria (according to the invention, an age of the network data stored on the first mobile communication device <NUM>, and further optional criteria such as a battery life of the power source <NUM> of the first mobile communication device <NUM>, etc.) to determine a rate or frequency (e.g., how often) to transmit the beacon signal until the beacon signal is answered.

<FIG> is a schematic diagram illustrating an embodiment of time-dependent criteria by which the first mobile communication device <NUM> determines a frequency or rate <NUM> for requesting updated network data from the second mobile communication device <NUM>. The rate <NUM> may include, for example, a number of beacon signals transmitted by the mobile communication device <NUM> per minute, where the rate <NUM> is dependent on an age <NUM> of the network data stored on the mobile communication device <NUM> (e.g., a number of days that have lapsed since the origination date of the network data). In the illustrated embodiment, the rate <NUM> includes a first rate <NUM> of one beacon signal per <NUM> minutes if the age <NUM> of the network data is between three days <NUM> and six days <NUM>. The rate <NUM> includes a second rate <NUM> of one beacon signal per <NUM> minutes if the age <NUM> is between six days <NUM> and nine days <NUM>. The rate <NUM> includes a third rate <NUM> of one beacon signal per <NUM> minutes if the age <NUM> is between nine days <NUM> and twelve days <NUM>. The rate <NUM> includes a fourth rate <NUM> of one beacon signal every two minutes if the age <NUM> is between <NUM> days <NUM> and <NUM> days <NUM>. As previously described, the rate <NUM> determined by the mobile communication device <NUM> for how often to send the beacon signal may be employed at block <NUM> in the method <NUM> illustrated in <FIG> (e.g., until the beacon signal is answered as illustrated in blocks <NUM> and <NUM> of <FIG>). It should be noted that <FIG> is merely provided as an example and that the control logic for determining the rate <NUM> of beacon signal transmission based upon the age <NUM> of the network data stored on the mobile communication device <NUM> may differ.

Other techniques by which the mobile communication device <NUM> determines a rate for requesting network data, such as CDN data, are also possible. Indeed, criteria other than the age <NUM> of the network data stored on the mobile communication device <NUM> may be considered by the mobile communication device <NUM> in determining the rate for sending beacon signals indicating a network sharing request for updated network data. For example, <FIG> is a schematic diagram illustrating a table <NUM> of priority indexes by which the electronic device <NUM> of <FIG> (referred to below as the mobile communication device <NUM>) determines a rate for requesting network data from the additional mobile communication device <NUM>. <FIG>, described in detail below after description of <FIG>, is a process flow diagram of a method <NUM> of sharing network data, such as CDN data, between the mobile communication device <NUM> and the additional mobile communication device <NUM> based on the table <NUM> of priority indexes in <FIG>.

In <FIG>, the table <NUM> includes a priority index column <NUM> and a criteria column <NUM>. The priority index column <NUM> includes a zero priority index <NUM>, a default priority index <NUM>, a first priority index <NUM>, a second priority index <NUM>, and a third priority index <NUM>. The zero priority index <NUM> corresponds to a zero criteria set <NUM> in the criteria column <NUM>, the default priority index <NUM> corresponds to a default criteria set <NUM> in the criteria column <NUM>, the first priority index <NUM> corresponds to a first criteria set <NUM> in the criteria column <NUM>, the second priority index <NUM> corresponds to a second criteria set <NUM> in the criteria column <NUM>, and the third priority index <NUM> corresponds to a third criteria set <NUM> in the criteria column <NUM>.

The zero criteria set <NUM> corresponding to the zero priority index <NUM> is met if the age of the network data (e.g., CDN data) on the mobile communication device <NUM> is between zero days and five days. That is, the zero criteria set <NUM> is met regardless of the battery health (e.g., state of charge percentage) of the mobile communication device <NUM>, and regardless of any user inputs to the mobile communication device <NUM> associated with network data requests. The default criteria set <NUM> corresponding to the default priority index <NUM> is met if none of the other criteria sets <NUM>, <NUM>, <NUM>, <NUM> are met.

The first criteria set <NUM> corresponding to the first priority index <NUM> is met if the battery health (e.g., state of charge percentage) of the mobile communication device <NUM> is low (e.g., below a first battery health threshold), no emergency situation input has been entered to the mobile communication device <NUM> (or a non-emergency input has been entered), and the age of the network data stored on the mobile communication device <NUM> is between zero days and <NUM> days. The first battery health threshold may be, for example, <NUM>% state of charge, <NUM>% state of charge, or <NUM>% state of charge. The second criteria set <NUM> corresponding to the second priority index <NUM> is met if an emergency situation input has been entered to the mobile communication device <NUM> and the age of the network data stored on the mobile communication device <NUM> is between five and <NUM> days. Thus, the second criteria set <NUM> does not include a battery health (e.g., state of charge percentage) of the mobile communication device <NUM>. The third criteria set <NUM> corresponding to the third priority index <NUM> is met if the network data stored on the mobile communication device <NUM> is expired (or if no network data is stored on the mobile communication device <NUM>).

It should be noted that <FIG> is provided merely as an example of how the mobile communication device <NUM> may consider various criteria (e.g., age of network data stored on the mobile communication device <NUM>, whether an emergency situation exists, battery health of the mobile communication device <NUM>), and that other control logic may be employed, including differences in how the various criteria are distributed to various priority indexes. Further, it should be noted that certain of the above-described criteria sets <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may include overlapping parameters, and that a state of the mobile communication device <NUM> may meet multiple of the criteria sets <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. However, as will be appreciated in view of the description below, the mobile communication device <NUM> may consider the criteria sets <NUM>, <NUM>, <NUM>, <NUM>, <NUM> in an ordered series. Thus, once one of the criteria sets <NUM>, <NUM>, <NUM>, <NUM>, <NUM> is met, the mobile communication device <NUM> may select the corresponding priority index <NUM>, <NUM>, <NUM>, <NUM>, <NUM> and not consider the remaining criteria sets.

<FIG>, as previously described, is a process flow diagram of a method <NUM> of sharing network data, such as CDN data, between the mobile communication device <NUM> and the additional mobile communication device <NUM> based on the table <NUM> of priority indexes in <FIG>. At block <NUM> in the illustrated embodiment, the mobile communication device <NUM> transitions from a zone having Wi-Fi or cellular network coverage to a no-coverage zone. Thus, the mobile communication device <NUM> is unable to download updated network data (e.g., CDN data) corresponding to another network, such as a satellite or non-terrestrial network, via Wi-Fi or cellular network connections.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> receives an indication or selection of one or more options associated with network data sharing, including an option to share and receive CDN data automatically, an option to manually trigger searching for CDN data, and/or an option to input an indication of an emergency situation. In some embodiments, the option to manually trigger searching for CDN data automatically triggers an emergency situation. That is, the option to manually trigger searching for CDN data may correspond to entering an input to the mobile communication device <NUM> indicative of an emergency situation. As described above and in more detail below, selection of the various available options may affect a rate at which the mobile communication device <NUM> transmits beacon signals indicating a CDN data sharing request for updated CDN data.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> determines if the age of the CDN data stored on the mobile communication device <NUM> is between zero days and five days old. If the CDN data stored on the mobile communication device <NUM> is between zero and five days old, regardless of the battery health (e.g., state of charge percentage) and user inputs, the processor <NUM> determines that the zero priority index <NUM> corresponding to the zero criteria set <NUM> from <FIG> applies, which corresponds to transmitting a beacon signal once every <NUM> minutes. If the processor <NUM> determines that the age of the CDN data is not between zero days and five days old, the method <NUM> continues to block <NUM>.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> determines if the battery heath (e.g., state of charge percentage) is low (e.g., below the minimum battery health threshold), no emergency input has been entered (or a non-emergency input has been entered), and the age of the CDN data is between <NUM> days and <NUM> days. In other words, the mobile communication device <NUM> determines if the first criteria set <NUM> and corresponding first priority index <NUM> from <FIG> apply. If so, the method <NUM> continues to block <NUM>, where the processor <NUM> transmits, via the transmitter <NUM>, beacon signals indicating a CDN data sharing request for updated CDN data once every <NUM> minutes. Otherwise, the method <NUM> continues to block <NUM>.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> determines if an input indicative of an emergency situation has been entered and the age of the CDN data stored on the mobile communication device <NUM> is between five days and <NUM> days, regardless of the battery health (e.g., state of charge percentage). In other words, the processor <NUM> determines if the second criteria set <NUM> and corresponding second priority index <NUM> from <FIG> apply. If so, the method <NUM> continues to block <NUM>, where the processor <NUM> transmits, via the transmitter <NUM>, beacon signals indicating a CDN data sharing request for updated CDN data once every <NUM> minutes. Otherwise, the method <NUM> continues to block <NUM>.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> determines if the CDN data stored on the mobile communication device <NUM> is expired, regardless of battery health (e.g., state of charge percentage) and regardless of any inputs entered by the user to the mobile communication device <NUM>. In other words, the mobile communication device <NUM> determines if the third criteria set <NUM> and corresponding third priority index <NUM> from <FIG> applies. If so, the method <NUM> continues to block <NUM>, where the processor <NUM> transmits, via the transmitter <NUM>, beacon signals indicating a CDN data sharing request for updated CDN data once every <NUM> minutes. Otherwise, the method <NUM> continues to block <NUM>.

At block <NUM>, the processor <NUM> of the mobile communication device <NUM> determines that the default criteria set <NUM> and corresponding default priority index <NUM> from <FIG> applies (e.g., after having excluded all other criteria sets and priority indexes). The method <NUM> then continues to block <NUM>, where the processor <NUM> transmits, via the transmitter <NUM>, beacon signals indicating a CDN data sharing request for updated CDN data once every <NUM> minutes. Block <NUM> in the illustrated method <NUM> denotes sending of the beacon signals indicating a CDN data sharing request for CDN data at the rate determined by the processor <NUM> of the mobile communication device <NUM> at block <NUM>, <NUM>, <NUM>, <NUM>, or <NUM>.

As previously described, the present disclosure is directed toward network data sharing (e.g., CDN data sharing) between mobile communication devices <NUM>, <NUM> over a P2P network. The P2P network connection is contingent on a proximity between the mobile communication devices <NUM>, <NUM>. Accordingly, the mobile communication device <NUM> requesting updated network data is equipped with componentry that facilitates display of a map on a display of the mobile communication device <NUM>, where the map may enable the user to move the mobile communication device <NUM> to an area having a relatively high density of other mobile communication devices <NUM> capable of sharing network data with the mobile communication device. <FIG> is a diagram of a map <NUM> presented on the display <NUM> of the electronic device <NUM> (referred to below as the mobile communication device <NUM>) of <FIG>.

In some embodiments, the mobile communication device <NUM> presents the map <NUM> in an offline mode that does not require network connection for enabling the user to locate areas expected to have a relatively high density of other mobile communication devices <NUM>. For example, a starting location <NUM> of the mobile communication device <NUM> may be marked on the map <NUM> while the mobile communication device <NUM> has access to one or more networks. Subsequently, the mobile communication device <NUM> may lose network access. Movement <NUM> of the mobile communication device <NUM> from the starting location <NUM> may be tracked by features (e.g., sensors, such as accelerometers, gyroscopes, gyrometers, and the like) on the mobile communication device <NUM> that do not require network connection to operate. A current location <NUM> of the mobile communication device <NUM> may also be denoted on the map <NUM>.

Further, landmark indications <NUM> (e.g., trail head indications) disposed in a boundary indication <NUM> (e.g., park boundary indication) may be included on the map <NUM> and signify to the user of the mobile communication device <NUM> areas that are likely to include a relatively high or higher than current density of other mobile communication devices <NUM>. A user of the mobile communication device <NUM> may utilize the map <NUM> (including the denoted starting location <NUM>, the denoted movement <NUM>, the denoted current location <NUM>, the landmark indications <NUM> within the boundary indication <NUM>, and other map features) to move to areas expected to have a relatively high or higher than current density of additional mobile communication devices <NUM>. In this way, a user may increase a likelihood of the mobile communication device <NUM> coming into a close enough proximity with one or more of the additional communication devices <NUM> to enable data sharing via a P2P network between the mobile communication device <NUM> and the additional mobile communication device(s) <NUM>.

In some embodiments, the map <NUM> does not illustrate the starting location <NUM> of the mobile communication device <NUM>, the movement <NUM> of the mobile communication device <NUM> from the starting location <NUM>, and/or the current location <NUM> of the mobile communication device <NUM>. However, the map <NUM> may still enable the user of the mobile communication device <NUM> to recognize (e.g., in person) landmarks identified via the landmark indications <NUM> on the map <NUM>.

Embodiments of the present disclosure are directed to mobile communication devices that transmit and receive network data, such as CDN data utilized to access a satellite or non-terrestrial network, over a P2P network. For example, a first mobile communication device may transmit a beacon signal indicating a CDN data sharing request for CDN data to a second mobile communication device when the first mobile communication device is without access to Wi-Fi and cellular networks and, thus, unable to download updated CDN data via the Wi-Fi and cellular networks. Technical effects associated with the embodiments of the present disclosure include improved ability to connect to a network, i.e. a satellite network, associated with the CDN data, in particular when the first mobile communication device is without access to Wi-Fi and cellular networks.

The specific embodiments described above have been shown by way of example, and it should be understood that these embodiments may be susceptible to various modifications and alternative forms.

Claim 1:
A mobile communication device (<NUM>), comprising:
a transmitter (<NUM>);
a memory configured to store first Content Delivery Network, CDN, data including first satellite ephemeris information corresponding to a satellite network; and
processing circuitry communicatively coupled to the memory and the transmitter and configured to:
cause the mobile communication device to access the satellite network via the first satellite ephemeris information of the first CDN data, and
cause the transmitter to transmit a plurality of beacon signals at a first rate when the first CDN data is a first age and a second rate greater than the first rate when the first CDN data is a second age greater than the first age, wherein each beacon signal of the plurality of beacon signals indicates a CDN data sharing request for second CDN data including second satellite ephemeris information over a peer-to-peer, P2P, network.