US20180102833A1 - Method and system for caching content for mobile distribution - Google Patents
Method and system for caching content for mobile distribution Download PDFInfo
- Publication number
- US20180102833A1 US20180102833A1 US15/701,627 US201715701627A US2018102833A1 US 20180102833 A1 US20180102833 A1 US 20180102833A1 US 201715701627 A US201715701627 A US 201715701627A US 2018102833 A1 US2018102833 A1 US 2018102833A1
- Authority
- US
- United States
- Prior art keywords
- satellite
- data
- module
- broadcast signal
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/1851—Systems using a satellite or space-based relay
- H04B7/18515—Transmission equipment in satellites or space-based relays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/02—Arrangements for relaying broadcast information
- H04H20/08—Arrangements for relaying broadcast information among terminal devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H40/00—Arrangements specially adapted for receiving broadcast information
- H04H40/18—Arrangements characterised by circuits or components specially adapted for receiving
- H04H40/27—Arrangements characterised by circuits or components specially adapted for receiving specially adapted for broadcast systems covered by groups H04H20/53 - H04H20/95
- H04H40/90—Arrangements characterised by circuits or components specially adapted for receiving specially adapted for broadcast systems covered by groups H04H20/53 - H04H20/95 specially adapted for satellite broadcast receiving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/09—Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
- H04H60/14—Arrangements for conditional access to broadcast information or to broadcast-related services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/09—Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
- H04H60/14—Arrangements for conditional access to broadcast information or to broadcast-related services
- H04H60/21—Billing for the use of broadcast information or broadcast-related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/27—Arrangements for recording or accumulating broadcast information or broadcast-related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/49—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying locations
- H04H60/53—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying locations of destinations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/76—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
- H04H60/81—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
- H04H60/90—Wireless transmission systems
- H04H60/92—Wireless transmission systems for local area
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H04L67/18—
-
- H04L67/2842—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H04L67/42—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/20—Adaptations for transmission via a GHz frequency band, e.g. via satellite
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/04—Large scale networks; Deep hierarchical networks
- H04W84/06—Airborne or Satellite Networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
- H04W88/10—Access point devices adapted for operation in multiple networks, e.g. multi-mode access points
Definitions
- aspects of the present application relate to electronic communications. More specifically, to a method and system for caching content for mobile distribution.
- a method and/or apparatus is provided for caching content for mobile distribution, substantially as illustrated by and/or described in connection with at least one of the figures, as set forth more completely in the claims.
- FIGS. 1A and 1B depict a system that is operable to broadcast data to mobile devices.
- FIG. 2 depicts an example implementation of the system of FIG. 1 in which the system comprises a small-cell base station.
- FIG. 3 depicts an example implementation of the system of FIG. 1 in which the system comprises a macrocell basestation.
- FIG. 4 depicts an example system for caching and delivering data.
- FIGS. 5A-5C are flowcharts illustrating exemplary steps for caching and delivering data.
- FIG. 6A illustrates caching of content based on provided route information and/or location prediction.
- FIG. 6B describes an example scenario of content delivery using route-based and/or location predictive content caching.
- circuits and circuitry refer to physical electronic components (i.e. hardware) and any software and/or firmware (“code”) which may configure the hardware, be executed by the hardware, and or otherwise be associated with the hardware.
- code software and/or firmware
- and/or means any one or more of the items in the list joined by “and/or”.
- x and/or y means any element of the three-element set ⁇ (x), (y), (x, y) ⁇ .
- x, y, and/or z means any element of the seven-element set ⁇ (x), (y), (z), (x, y), (x, z), (y, z), (x, y, z) ⁇ .
- the terms “block” and “module” refer to functions than can be performed by one or more circuits.
- the term “exemplary” means serving as a non-limiting example, instance, or illustration.
- the term “e.g.,” introduces a list of one or more non-limiting examples, instances, or illustrations.
- FIGS. 1A and 1B depict a system that is operable to broadcast data to mobile devices.
- the system 100 comprises a broadcast receive module 104 , a wireless input/output (I/O) module 106 , a wired I/O module 108 , and a routing module 124 .
- Also shown are a service provider network 131 , a mobile device 110 , a module 112 , a client device 122 , and a wide area network (WAN) 120 .
- WAN wide area network
- the satellite 102 may broadcast data (e.g., media content) in accordance with a broadcast standard such as, for example, DVB-S.
- a broadcast standard such as, for example, DVB-S.
- some of the bandwidth of the satellite 102 may be utilized for transmitting mobile-formatted content.
- the content of one or more television networks may be concurrently broadcast in a first format (e.g., high-definition, low-compression ratio video and surround-sound audio) a second format (e.g., standard definition, high-compression ration video and stereo audio).
- a first format e.g., high-definition, low-compression ratio video and surround-sound audio
- a second format e.g., standard definition, high-compression ration video and stereo audio.
- the first format may be encrypted and/or scrambled utilizing a first content protection scheme (e.g., a first set of security algorithms and/or a first set of keys and/or certificates) and the second format may be encrypted and/or scrambled utilizing a second content protection scheme (e.g., a first set of security algorithms and/or a first set of keys and/or certificates).
- a first content protection scheme e.g., a first set of security algorithms and/or a first set of keys and/or certificates
- a second content protection scheme e.g., a first set of security algorithms and/or a first set of keys and/or certificates
- content protected with the first scheme may be recoverable only by devices (e.g., gateways) that have built-in hardware-based conditional access systems (CAS), whereas content protected with the second scheme may be recoverable utilizing keys obtained through two-way exchanges.
- CAS hardware-based conditional access systems
- the network 131 represents the network(s) of one or more service providers.
- the network 131 may comprise a network of a cellular service provider, a network of a satellite service provider, and/or a network of a billing service provider that performs billing functions for other service providers.
- the security and/or billing server 130 may manage billing accounts for subscribers of one or more service providers.
- the server 130 may maintain a database of users and/or mobile devices which are subscribed to content that is broadcast by the satellite 102 and delivered in a unicast and/or multicast manner via the WAN 120 , and may track consumption of the content by those users/devices. This information may be provided to a satellite service provider so that the satellite provider can bill the users/devices for the content.
- the server 130 may maintain a database of users and/or mobile devices which are subscribed to wireless (e.g., cellular) services associated with the wireless module 106 and may track usage of the module 106 's bandwidth. This information may be provided to a cellular service provider so that the cellular provider can bill the users/devices for the bandwidth usage.
- wireless e.g., cellular
- the security and/or billing server 130 may manage certificates, keys, and/or other security information for accessing content broadcast by the satellite 102 and/or delivered to the system 100 via the WAN 120 and broadband connection 126 .
- the server 130 may maintain a database of content currently being transmitted to the system 100 and keys and/or other security information associated with that content.
- the system 100 communicates with the server 130 via the WAN 120 .
- the server 130 is reachable wirelessly, via wireless I/O module 132 , such that the system 100 can communicate with the server 130 via a connection 134 without use of the WAN 120 or broadband connection 126 .
- the mobile device 110 may be operable to communicate wirelessly in accordance with one or more wireless communication protocols.
- the device 110 may be a cellular handset operable to communicate in accordance with cellular (e.g., LTE), WiMAX, WiGig, and/or IEEE 802.11 protocols.
- the various components of the system 100 and the module 112 may be collocated on, for example, a cellular tower as shown in FIG. 3 , on a satellite subscriber premises (e.g., a house, multi-dwelling unit, or business) as shown in FIG. 2 , and/or in any other suitable location (e.g., a roadside billboard).
- the system 100 may comprise one or more printed circuit boards and/or one or more integrated circuits (e.g., one or more silicon die).
- the system 100 and the module 112 may be part of a local area network (LAN) and may be interconnected via a LAN technology such as Ethernet (e.g., Ethernet frames communicated over an Ethernet physical layer such as 10/100/1 G/10 G/40 GBASE-T).
- a LAN technology such as Ethernet (e.g., Ethernet frames communicated over an Ethernet physical layer such as 10/100/1 G/10 G/40 GBASE-T).
- each port of the system 100 and the port of module 112 that connects to system 100 may share a common subnet address that is not shared with the port of the module 112 that connects to the WAN 120 .
- the module 112 may interface the LAN to a wide area network (WAN) 120 over broadband connection 126 utilizing, for example, DOCSIS, DSL, Carrier Ethernet, ATM, Frame Relay, ISDN, x.25, and/or other suitable WAN technology.
- the WAN 120 may, for example, backhaul traffic between wireless I/O module 106 and a cellular core
- the broadcast (e.g., satellite broadcast) receive module 104 may be operable to receive broadcast signals and process the received broadcast signals to recover data (e.g., audio content, video content, and/or auxiliary data related to audio and/or video content) carried therein.
- data e.g., audio content, video content, and/or auxiliary data related to audio and/or video content
- this disclosure focuses on satellite radio and satellite television broadcast signals, the present invention is not so limited. Rather, other types of signals such as terrestrial broadcast television signals are contemplated. Accordingly, various implementations of the system 100 may comprise features described in U.S. patent application Ser. No. 13/546,704, which is incorporated herein by reference, as set forth above.
- the receive module 104 may perform channelization such that specific channels, streams, programs, etc.
- the receive module 104 may output data in the form of MPEG transport stream(s) to the routing module 124 .
- the receive module 104 may encapsulate received data utilizing one or more protocols (e.g., Internet Protocol) for output to the routing module 124 .
- the wireless module 106 may be operable to engage in unicast and/or multicast communications with user equipment as represented by the connection 116 .
- the wireless module 106 may be operable to engage in unicast and/or multicast communications with a service provider, as represented by connection 134 .
- the wireless module 106 may be operable to broadcast data (e.g., media content), as represented by signal 136 .
- the wireless module 106 may transmit and/or receive utilizing one or more wireless communication protocols such as, for example, cellular (e.g., LTE), WiMAX, WiGig, and/or IEEE 802.11 protocols.
- the wireless module 106 may transmit and/or receive utilizing frequency spectrum owned and/or licensed by a cellular provider, utilizing unlicensed frequency spectrum (e.g., in an Industrial, Scientific, and Medical (ISM) band) and/or utilizing dedicated frequency spectrum owned and/or licensed by the satellite provider affiliated with the satellite 102 .
- data may be communicated between the wireless module 106 and the routing module 124 in the form of MPEG transport stream (TS) packets.
- TS MPEG transport stream
- IP Internet Protocol
- the wireless module 106 may comprise a timing reference module 128 which may enable the wireless module 106 to synchronize timing of its transmissions to a reference clock and/or frequency of its transmissions to a frequency reference signal.
- the timing reference module 128 may be operable to synchronize to a reference clock and/or frequency reference signal present in received global navigation satellite system (GNSS) signals.
- GNSS global navigation satellite system
- the wired module 108 may be operable to communicate data, via one or more cables 114 , with module 112 .
- the module 112 e.g., a media gateway and/or edge router
- client devices such as client 122
- the wired I/O module 108 may be operable to output, onto the cable(s) 114 , L-band signals received from the receive module 104 . Such signals may be output in instances that the module 112 is a legacy gateway.
- the wired module 108 may be operable to communicate over the cable(s) 114 utilizing Ethernet, Multimedia over Coax Alliance (MoCA), and/or any other suitable protocol(s). In this manner, content may be delivered to the system 100 via the WAN 120 and broadband connection 126 . Such communications may be used, for example, when the module 112 is a gateway that is compatible with an IP-LNB as described in U.S. patent application Ser. No. 13/326,125, which is incorporated by reference herein as set forth above.
- MoCA Multimedia over Coax Alliance
- the module 112 may support a wireless connection and the functionality of the wired module 108 may be subsumed by the wireless module 106 and/or by a second wireless module.
- the routing module 124 may be operable to selectively route data and/or signals between the modules 104 , 106 , and 108 .
- the routing may be based, for example, on IP addresses, TCP/UDP port numbers, packet identifiers (PIDs), stream identifiers, and/or any other suitable field or information.
- packets comprising a first PID e.g., packets carrying mobile-formatted content
- packets comprising a second PID e.g., packets carrying high-definition content
- the routing module 124 may be a digital and/or analog crossbar.
- the routing module 124 may perform an OSI layer-3 packet-routing function and/or an OSI layer-2 packet-switching function.
- the routing module 124 may be configured via one or more control signals (not shown) which may, in turn, be based on input (e.g., utilizing a protocol such as DiSEqC) from the module 112 and/or client devices such as the client device 122 and client device 110 .
- input e.g., utilizing a protocol such as DiSEqC
- the broadcast receive module 104 may receive a satellite signal and perform block down conversion to generate an L-band signal.
- the L-band signal may be conveyed to the wired module 108 for support of legacy gateways.
- the receive module 104 may also demodulate the L-band signal to recover one or more MPEG transport streams, channelize the transport stream(s) to recover one or more programs, and encapsulate the transport stream(s) and/or program(s) into one or more packet streams (e.g., utilizing IP or some other suitable protocol(s)).
- the receive module 104 may be operable to decrypt, encrypt, descramble, and/or scramble recovered transport stream(s)/program(s) as described in U.S. patent application Ser. No. 13/316,796, which is incorporated by reference herein as set forth above.
- the one or more packet streams may be conveyed, via routing module 124 , to the wireless module 106 and/or the wired module 108 .
- the wired module 108 may decapsulate, encode, modulate, encrypt, and/or otherwise process the transport stream(s) to generate signals suitable for transmission via the cable(s) 114 .
- the wired module 108 may transmit the generated signals via the cable(s) 114 .
- the wired module 108 may receive signals via the cable(s) 114 , decapsulate, encode, modulate, encrypt, and/or otherwise process the signals to recover content carried in the signals that may have originated from the module 112 and/or been received via the WAN 120 and the broadband connection 126 .
- the wired module 108 may encapsulate the content into a packet stream and convey the packet stream to the routing module 124 .
- the wireless module 106 may encode, modulate, and/or otherwise process packet stream(s) received from the routing module 124 to generate signals suitable for broadcast by the basestation 226 .
- the system 100 may enable broadcast of satellite data and/or data delivered to the system 100 via the WAN 120 and broadband connection 126 .
- the system 100 may enable delivering the data to the mobile device 110 without the data having to traverse the WAN 120 or the broadband connection 126 .
- the wireless module 106 may also convey information about the mobile device 110 , and information about the data consumed by the mobile device 110 , to the server 130 for purposes of billing and/or usage tracking.
- Broadcasts of data by the wireless module 106 may be synchronized via, the timing reference module 128 , to a received reference clock and/or frequency reference signal.
- the wireless module I/O 106 may be operable to broadcast particular data at the same time and on the same frequency band that the same data is being broadcast by other transmitters (e.g., other instances of the system 100 ).
- the system 100 along with the other transmitters may thus form a single-frequency broadcast network (SFN).
- SFN single-frequency broadcast network
- single frequency network refers to the fact that particular data may be simultaneously (or nearly so) transmitted by multiple transmitters on the same frequency.
- Each transmitter is not limited to broadcasting on only a single frequency. Rather, each transmitter may broadcast data on multiple frequencies.
- Each transmitter that is part of the SFN may adhere to an electronic programming guide (EPG) that is distributed, for example, via the satellite 102 and/or the server 130 .
- the EPG may establish which data should be broadcast on which frequency band.
- the EPG may assign content and frequency bands on a region-by-region basis such that transmitters in a particular region each broadcast the same data on the same frequency. In this manner, to a device 110 roaming around a particular geographic region, the signals from the various transmitters in the region may simply appear, and be processed, as if they are multipath signals from a single transmitter.
- Different frequency bands may be utilized in different regions to, for example, account for different spectrum availability in the different regions.
- FIG. 2 depicts an example implementation of the system of FIG. 1 in which the system comprises a basestation, such as, for example, a small-cell (e.g., femtocell or picocell) base station.
- the system 100 comprises a satellite reception assembly 202 , and a gateway 214 .
- the subassembly 204 comprises a feed horn 212 , an IP-LNB module 224 , a cellular basestation module 226 , a routing module 230 , an Ethernet transceiver module 228 , and a wireless transceiver 232 .
- the various modules of the subassembly 204 may reside in one or more housings, on one or more printed circuit boards, and/or on one or more integrated circuits (e.g., one or more silicon dice).
- the satellite reception assembly is not, however, limited to implementations comprising a dish.
- another implementation of the satellite reception assembly 204 may comprise a linear or parabolic array of antenna elements and/or receiver circuits whose signals may be combined for satellite signal reception.
- the satellite reception assembly 202 comprises a parabolic reflector 206 and a subassembly 204 mounted (e.g., bolted or welded) to a support structure 208 which, in turn, comprises a boom 220 and attaches (e.g., via bolts) to the premises 210 (e.g., to the roof).
- a parabolic reflector 206 and a subassembly 204 mounted (e.g., bolted or welded) to a support structure 208 which, in turn, comprises a boom 220 and attaches (e.g., via bolts) to the premises 210 (e.g., to the roof).
- all or a portion of the modules 224 , 226 , 228 , 230 , and 232 may be mounted to the premises separate from the satellite dish and feed horn (e.g., connected via wired and/or wireless connections), but may still be part of the “outdoor unit.”
- all or a portion of the modules 224 , 226 , 228 , 230 , and 232 may be part of the gateway 214 (or “indoor unit”).
- the IP-LNB module 224 may be an implementation of the receive module 104 described above and may be as described in U.S. patent application Ser. No. 13/326,125, which is incorporated herein by reference, as set forth above.
- the nomenclature “IP-LNB” indicates that the module 224 possesses capabilities beyond the block downconversion of received satellite signals that is performed by conventional LNBs.
- Functions performed by the IP-LNB module 224 may comprise, for example, downconverting received satellite signals, demodulating received satellite signals, channelizing received satellite signals, and/or encapsulating data recovered from received satellite signals into IP packets.
- the routing module 230 may be an implementation of the routing module 124 described above. Functions performed by the routing module 230 may comprise routing of data between the IP-LNB module 224 , the cellular basestation module 226 , and the Ethernet transceiver module 228 . Although an implementation in which the routing module supports IP-based routing is described herein, any suitable protocols (e.g., Ethernet, PCIe, USB, etc.) can be utilized for communication of data between modules 224 , 226 , 228 , 230 , and 232 .
- any suitable protocols e.g., Ethernet, PCIe, USB, etc.
- the Ethernet transceiver module 228 may be an implementation of the wired module 108 described above. Functions performed by the module 228 may comprise encapsulation of data from the routing module 230 into Ethernet frames and transmission of the Ethernet frames onto the cable(s) 114 in accordance with Ethernet protocols. Additionally or alternatively, functions performed by the module 228 may comprise reception of Ethernet frames via the cable(s) 114 , processing of the Ethernet frames to recover data carried therein (e.g., IP packets), and conveyance of the recovered data to the routing module 230 .
- functions performed by the module 228 may comprise reception of Ethernet frames via the cable(s) 114 , processing of the Ethernet frames to recover data carried therein (e.g., IP packets), and conveyance of the recovered data to the routing module 230 .
- the combination of the small-cell basestation module 226 and the wireless module 232 may be an implementation of the wireless module 106 described above.
- Functions performed by the basestation module 226 may comprise communication with cellular-enabled user-equipment (e.g., handsets, tablets, and/or laptops) that are within communication range of the basestation 226 .
- the basestation module 226 may be operable to receive data via one or more cellular connections 116 , process the received data, and output the data to the routing module 230 in the form of one or more IP packets.
- the small-cell basestation 226 may be operable to receive IP packets from the routing module 230 , process the IP packets, and transmit signals carrying the IP packets (or their contents) via one or more connections 116 .
- Functions performed by the wireless module 232 may comprise accessing the security and/or billing server 130 via the wireless connection 134 between the wireless module 106 of the system 100 and the wireless module 132 which provides wireless connectivity to the server 130 .
- the amount of bandwidth needed for communicating billing and/or security information over the connections 116 and 134 may be small relative to the amount of bandwidth needed for the broadcast signals 136 .
- the module 226 may utilize, for example, 4 th generation protocols such as LTE whereas the wireless module 232 may utilize, for example, 2.5 or 3 rd generation protocols such as EDGE, HSPA, or EVDO.
- the gateway 214 may be an implementation of module 112 described above. Functions performed by the gateway 214 may comprise reception, processing, and transmission of data. The gateway 214 may transmit and/or receive data to and/or from the system 100 (via cable(s) 114 ), the WAN 120 (via WAN connection 126 ), and/or one or more client devices 122 (via one or more connections 234 ). For data from the module 228 to a client device 122 , the gateway 214 may recover the data from Ethernet frames received over the cable(s) 114 and output the data to the client device 122 .
- the gateway 214 may encapsulate the data in one or more Ethernet frames and output the frames onto the cable(s) 114 .
- the gateway 214 may perform OSI layer-2 switching and/or OSI layer-3 routing.
- FIG. 2 uses wired connections between the gateway 214 and module 228 , and between the gateway 214 and WAN 120 , other may utilize wireless connections.
- the gateway 214 is depicted as separate from the system 100 , in other implementations at least a portion of the system 100 may reside in and/or be implemented by the gateway 214 .
- the IP-LNB module 224 may process received satellite signals to recover content carried on one or more satellite channels.
- content on one or more of the channels may be formatted for consumption by mobile devices.
- the content may be cached locally (as described below with reference to FIGS. 4-6B ) and conveyed to the routing module 230 .
- mobile-formatted content received from the gateway 214 (such content may have, for example, originated in a digital video recorder of the gateway 214 and/or been received via the WAN 120 ) may be conveyed to the routing module 230 via the Ethernet transceiver 228 .
- the routing module 230 may convey the mobile-formatted content to the small-cell basestation module 226 .
- the system 100 may allocate the content among frequencies that are available for transmitting the content. For example, where the content comprises a plurality of television networks, each network may be broadcast on a different frequency according to an EPG provided to the system 100 (e.g., by the satellite 102 and/or by the server 103 ). Similarly, where the content comprises a plurality of programs, each program may be broadcast on a different frequency according to an EPG provided to the system 100 .
- the mobile device 110 within the coverage area of the basestation module 226 may request satellite content (e.g., a particular TV network or program) via the connection 116 .
- the system 100 may communicate with the server 130 to provide information to the server 130 such that the server can determine whether the mobile device 110 is authorized to receive the requested content, and to provide information to the server 130 so that that an account associated with the mobile device 110 can be billed for the requested content and/or for the bandwidth utilized in receiving the content.
- the system 100 may communicate with the server 130 via the connection 134 . Additionally or alternatively, the system 100 may communicate with the server 130 via the module 228 , cable 114 , gateway 214 , and WAN 120 .
- decryption/descrambling keys, an EPG, and/or other information necessary for receiving the requested content may be transmitted to the device 110 via connections 134 and 116 .
- the mobile device 110 may then tune to the frequency of the desired content, receive the broadcast content, descramble and/or decrypt the received content, and present the content to its user.
- satellite content received via the IP-LNB 224 may be delivered to the mobile device 110 without the content having to traverse the WAN 120 or the connection 126 .
- satellite content may be delivered to the mobile device 110 while only adding a small amount of billing and/or security traffic to the WAN 120 .
- satellite content may be delivered to mobile device 110 without putting any load on the connection 126 or WAN 120 , thus enabling delivery of the satellite content even when the broadband connection 126 and/or WAN 120 are unavailable.
- the mobile device 110 may belong to a first satellite subscriber and the satellite reception assembly 302 may be installed at the home of a second satellite subscriber.
- aspects of the present disclosure may enable the first subscriber to receive satellite content to which he has subscribed via another subscriber's satellite reception assembly.
- FIG. 4 depicts an example system for caching and delivering data.
- the system 100 comprises the modules 104 , 106 , 124 , and 108 described above.
- the implementation of system 100 in FIG. 4 also comprises a data caching module 402 .
- the data caching module 402 may, for example, comprise memory (e.g., magnetic and/or solid state memory) suitable for storing media content, website content, and/or other data.
- the caching module 402 may reside in a next-generation LNB assembly, such as assembly 204 ( FIG. 2 ) or 304 ( FIG. 3 ).
- the caching module 402 may be housed separately but collocated with a satellite reception assembly such as assembly 202 or 302 (e.g., mounted in or to the same house, business, or cell tower and connected to the satellite reception assembly via a wired or wireless connection).
- all or a portion of the system 100 may be mounted to the premises separate from the satellite dish and feed horn (e.g., connected via wired and/or wireless connections), but may still be part of the “outdoor unit.”
- all or a portion of the modules 224 , 226 , 228 , 230 , and 232 may be part of the gateway 214 (or “indoor unit”).
- media data received via one or more of the modules 104 , 106 , and 108 may be stored in the cache module 402 for later transmission via one or both of the modules 106 and 108 .
- Which data is cached may be determined based on, for example, past, current, and/or expected demand for particular data in particular areas; characteristics of devices (and/or subscribers associated therewith) that are, were, and/or will be connected to the wireless module 106 and/or to the wired module 108 ; and/or past, current, and/or an expected number of devices that are, or will be, connected to the module 106 and/or the module 108 .
- Data cached on systems 100 may comprise data delivered via satellite (e.g., satellite 102 ) and/or data delivered via the WAN 120 (e.g., the Internet).
- Data that is cached in particular instances of system 100 may be, for example, based on which content is available in local spot beam incident on the particular instance of system 100 , based on which providers have reached an agreement with an operator of the particular instance of system 100 , based on popularity of particular content in the area served by the particular instance of system 100 , and/or based on any algorithm that attempts to cache content in locations where doing so will improve network efficiencies and/or increase revenues for content providers and/or service providers.
- Instances of the system 100 may cache: individual movies, catalogs of movies, single episodes of shows, entire seasons of shows, individual audio tracks, entire albums, or any combination thereof.
- Cached content may be broadcast and/or delivered on-demand in multicast and/or unicast format.
- web-based content which otherwise may only be available to the system 100 via the WAN 120 may be transmitted by the satellite 102 .
- web-based content that is popular in a particular area may be beamed up to the satellite 102 and then transmitted down to instances of the system 100 via one or more local spot beams.
- the use of the local spot beams may enable rapid caching of the content on the instances of the system 100 without loading down the WAN 120 .
- the system 100 is operable to capture an entire satellite band (e.g., a band of ⁇ 1 GHz)
- large amounts of content may be cached to the system 100 in a very short amount of time such that the reallocation of the spot beam(s) to transmitting web-based content only takes a very short amount of time and/or occurs infrequently (e.g., at off-peak times when one or more local television networks is off air).
- FIGS. 5A-5C Various example caching scenarios are described below with respect to FIGS. 5A-5C .
- step 502 in which a content provider (e.g., a satellite provider) determines that there is, or will be, high demand for particular content in a coverage area served by the system 100 .
- a content provider e.g., a satellite provider
- step 504 the system 100 in the high-demand location receives and stores the high-demand content in its cache module 402 .
- step 506 mobile devices within the coverage area of the system 100 that request the high-demand content are delivered the cached content via the module 106 rather than via the WAN 120 .
- step 512 in which advertising content is received by the system 100 via its module 106 and/or its module 108 .
- the advertising content may be stored in the cache 402 of the system 100 .
- step 516 the system 100 may insert the cached advertisement into one or more media streams being transmitted via the module 106 and/or via the module 108 . Different ads may be sent via the module 106 than the module 108 . Similarly, different ads may be sent in media streams going to different mobile devices.
- Which advertisements are cached in the system 100 and/or which advertisements are inserted into which media streams and/or delivered to which devices may be, for example, determined based on negotiations between content providers and the provider who owns and/or operates the system 100 , and/or based on targeted advertising methods such as is disclosed in U.S. patent application Ser. No. 11/928,203, which is incorporated herein by reference, as set forth above.
- step 522 the mobile device 100 connects to the system 100 and requests particular content (e.g., a particular movie, episode of a television show, whatever is currently playing on a particular television network, a particular webpage, etc.).
- step 524 the system 100 determines whether the requested content is stored in its cache. In not, then the steps may proceed to step 526 .
- step 528 the system 100 determines whether the cached content is up-to-date or whether it is stale. The determination of whether the content is stale may be via a low-bandwidth and/or low-latency signaling between the system 100 and the content provider either via the module 108 or the module 106 . If the content is not stale, then in step 532 the system 100 may transmit the cached content to the mobile device 110 .
- the system 100 may receive the requested content. If the content is available via satellite, the module 104 may be configured to receive the requested content from the satellite 102 and output the content to the module 124 . If the content is available via the WAN 120 (e.g., the Internet), the system 100 may send a request for the content out to the provider via the WAN 120 and receive the content via the module 108 .
- the WAN 120 e.g., the Internet
- step 526 the steps proceed to step 536 in which the content received via the module 104 and/or the module 108 is conveyed, by module 124 , to the module 106 for transmission to the mobile device 110 .
- step 526 the steps conclude with step 540 .
- step 534 the system 100 determines whether to cache the received content in the module 402 . The determination may be, for example, based on the popularity of the content. For example, if the system 100 has received multiple requests for the particular content and/or past traffic patterns indicate the content will be requested again, the system 100 may store the content to module 402 to avoid having to receive the content again in the future. If the system 100 decides to cache the content, then the steps proceed to step 538 in which the content is stored to the module 402 .
- FIG. 6A illustrates caching of content based on provided route information and/or location prediction.
- a satellite subscriber plans to travel from location 606 to 608 with in his/her vehicle 606 which comprises a navigation/entertainment system operable to receive content from instances of the system 100 .
- the navigation/entertainment system may be enabled to receive content broadcast on a connection 116 , and/or content transmitted over a unicast or multicast connection 134 using any suitable wireless technology (e.g., cellular, Wi-Fi, WiMAX, WiGig, etc.).
- the subscriber may travel with a mobile device (e.g., a handset or tablet) operable to receive content from instances of the system 100 .
- a mobile device e.g., a handset or tablet
- the handset or tablet may be enabled to receive content broadcast on a connection 116 , and/or content transmitted over a unicast or multicast connection 134 using any suitable wireless technology (e.g., cellular, Wi-Fi, WiMAX, WiGig, etc.).
- any suitable wireless technology e.g., cellular, Wi-Fi, WiMAX, WiGig, etc.
- the system 100 1 has a coverage area 602 1
- system 100 2 has a coverage area 602 2
- system 100 3 has a coverage area 602 3
- system 100 4 has a coverage area 602 4
- system 100 5 has a coverage area 602 5
- system 100 6 has a coverage area 602 6 .
- FIG. 6B describes an example scenario of content delivery using route-based and/or location predictive content caching.
- the steps begin with step 620 in which the subscriber decides to take a trip from location 606 to location 608 at a particular time.
- the subscriber may upload the planned trip to a server which handles route-based caching and delivery of content.
- the trip may, for example, be uploaded via a vehicle navigation system and/or via a web interface accessed on a mobile device.
- the subscriber may also upload a list of content that s/he would like to consume during the trip.
- the server may calculate a route based on any one or more parameters such as traffic considerations, distance considerations, where instances of the system 100 are located (e.g., which route has the best coverage), subscription models associated with the instances of the system 100 , resource availability in the instances of the system 100 , etc.
- the route 604 is selected either manually by the subscriber or selected by the server based on input from the subscriber and/or other parameters.
- the route may be stored in the server for use in coordinating caching and delivery of content during the trip and may be downloaded to the user's navigation system, in the case of a vehicle, or a map application, in the case of a handset or tablet, for example.
- the server may selectively cache content on the instances of the system 100 that provide coverage along the route 604 .
- only portions of content that are likely to be consumed while in a particular coverage area may be downloaded to the instance of system 100 associated with that coverage area. For example, if, based on the planned route, traffic, etc., the subscriber will be in coverage area 602 1 from 12:00 until 12:15 and in coverage area 602 2 from 12:15 until 12:30, then only the portion of the desired content that the subscriber will consume from 12:00 until 12:15 may be cached on the system 100 1 and only the portion of the desired content that the subscriber will consume from 12:15 until 12:30 may be cached on the system 100 2 .
- the amount of data cached on each system 100 may be reduced relative to having to cache all of the desired content on all instances of system 100 along the route 604 .
- 1 ⁇ 6 of the movie may be cached on each of the systems 100 1 - 100 6 , with the first 1 ⁇ 6 th being cached on system 100 1 , the second sixth being cached on system 100 2 , and so on.
- bandwidth, frequency allocations, and/or other resources of the systems 100 1 - 100 6 may be planned based on the route information. For example, a certain amount of bandwidth necessary for delivering the desired content may be reserved on each of the systems 100 1 - 100 6 for the respective time period in which the subscriber will be in that system's coverage area. Additionally or alternatively, which channels are reserved for providing the reserved bandwidth may depend on the planned route (e.g., which of the systems 100 1 - 100 6 will be handing off to which other of the systems 100 1 - 100 6 ), local restrictions, spectrum licenses, other trips planned for other devices, and/or any other suitable parameter(s).
- the subscriber begins the trip. While in each coverage area 602 i (i being an integer between 1 and 6), the content cached on system 100 i is transmitted to the subscriber's device. During the trip, the subscriber's position and/or velocity (e.g., reported to the systems 100 1 - 100 6 via a low-bandwidth connection) may reported by the subscriber's device and may be used for adjusting caching, reservation of resources, allocation of channels, etc. For example, as it is determined that a portion of the content will be viewed on system 100 i rather than via system 100 i+1 , the system 100 i+1 may flush that portion of the content from memory to make room for other data.
- the subscriber's position and/or velocity e.g., reported to the systems 100 1 - 100 6 via a low-bandwidth connection
- the system 100 i+1 may flush that portion of the content from memory to make room for other data.
- the subscriber's position and velocity may also be used in preparing for hand-off's from system 100 i to system 100 i+1 such that the subscriber receives the content as interruption free as possible.
- An illustrative scenario is described in the following paragraph.
- a first subscriber's device may be receiving content from system 100 , on channel 1 .
- it may be determined (e.g., by a particular one of systems 100 1 - 100 6 and/or by a centralized management entity that manages/coordinates the systems 100 1 - 100 6 ) that the first subscriber's device will be handed-off from system 100 i to 100 i+1 at time T 1 .
- the system 100 i+1 receives a request for bandwidth from a second subscriber's device.
- channel 1 on the system 100 i+1 may be allocated to the second subscriber's device.
- a channel other than channel 1 may be allocated to the second subscriber's device such that channel 1 on the system 100 i+1 is available for handling the first subscriber's device beginning at time T 1 . In this manner, the first subscriber's device does not need to change channels upon being handed off to system 100 i+1 .
- implementations may provide a non-transitory computer readable medium and/or storage medium, and/or a non-transitory machine readable medium and/or storage medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein for caching content for mobile distribution.
- the present method and/or apparatus may be realized in hardware, software, or a combination of hardware and software.
- the present method and/or apparatus may be realized in a centralized fashion in at least one computing system, or in a distributed fashion where different elements are spread across several interconnected computing systems. Any kind of computing system or other apparatus adapted for carrying out the methods described herein is suited.
- a typical combination of hardware and software may be a general-purpose computing system with a program or other code that, when being loaded and executed, controls the computing system such that it carries out the methods described herein.
- Another typical implementation may comprise an application specific integrated circuit or chip.
- the present method and/or apparatus may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods.
- Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
- This patent application is a continuation of U.S. patent application Ser. No. 15/089,760, filed Apr. 4, 2016, which is a continuation of U.S. patent application Ser. No. 13/591,826, filed Aug. 22, 2012 (now U.S. Pat. No. 9,306,684). Each of the above identified applications is hereby incorporated herein by reference in its entirety.
- This patent application makes reference to:
- U.S. Pat. No. 8,700,449 entitled “Targeted Advertisement in the Digital Television Environment;”
- U.S. Pat. No. 9,124,925 entitled “System and Method for Conditional Access in an In-Home Network Based on Multi-Network Communication;”
- U.S. Pat. No. 9,055,329 entitled “System and Method in a Broadband Receiver for Efficiently Receiving and Processing Signals;”
- U.S. Pat. No. 8,466,850 entitled “Method and System for Multi-Service Reception;”
- U.S. Pat. No. 8,929,278 entitled “Method and Apparatus for Content Protection and Billing for Mobile Delivery of Satellite Content;” and
- U.S. Pat. No. 9,008,571 entitled “Method and System for A Single Frequency Network for Broadcasting to Mobile Devices”.
- Each of the above applications is hereby incorporated herein by reference in its entirety.
- Aspects of the present application relate to electronic communications. More specifically, to a method and system for caching content for mobile distribution.
- Conventional methods and system for delivering content to mobile devices can be inefficient. Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such approaches with some aspects of the present method and apparatus set forth in the remainder of this disclosure with reference to the drawings.
- A method and/or apparatus is provided for caching content for mobile distribution, substantially as illustrated by and/or described in connection with at least one of the figures, as set forth more completely in the claims.
-
FIGS. 1A and 1B depict a system that is operable to broadcast data to mobile devices. -
FIG. 2 depicts an example implementation of the system ofFIG. 1 in which the system comprises a small-cell base station. -
FIG. 3 depicts an example implementation of the system ofFIG. 1 in which the system comprises a macrocell basestation. -
FIG. 4 depicts an example system for caching and delivering data. -
FIGS. 5A-5C are flowcharts illustrating exemplary steps for caching and delivering data. -
FIG. 6A illustrates caching of content based on provided route information and/or location prediction. -
FIG. 6B describes an example scenario of content delivery using route-based and/or location predictive content caching. - As utilized herein the terms “circuits” and “circuitry” refer to physical electronic components (i.e. hardware) and any software and/or firmware (“code”) which may configure the hardware, be executed by the hardware, and or otherwise be associated with the hardware. As utilized herein, “and/or” means any one or more of the items in the list joined by “and/or”. As an example, “x and/or y” means any element of the three-element set {(x), (y), (x, y)}. As another example, “x, y, and/or z” means any element of the seven-element set {(x), (y), (z), (x, y), (x, z), (y, z), (x, y, z)}. As utilized herein, the terms “block” and “module” refer to functions than can be performed by one or more circuits. As utilized herein, the term “exemplary” means serving as a non-limiting example, instance, or illustration. As utilized herein, the term “e.g.,” introduces a list of one or more non-limiting examples, instances, or illustrations.
-
FIGS. 1A and 1B depict a system that is operable to broadcast data to mobile devices. Referring toFIG. 1A , thesystem 100 comprises a broadcast receivemodule 104, a wireless input/output (I/O)module 106, a wired I/O module 108, and arouting module 124. Also shown are aservice provider network 131, amobile device 110, amodule 112, aclient device 122, and a wide area network (WAN) 120. - The
satellite 102 may broadcast data (e.g., media content) in accordance with a broadcast standard such as, for example, DVB-S. In an example implementation, some of the bandwidth of thesatellite 102 may be utilized for transmitting mobile-formatted content. For example, the content of one or more television networks may be concurrently broadcast in a first format (e.g., high-definition, low-compression ratio video and surround-sound audio) a second format (e.g., standard definition, high-compression ration video and stereo audio). The first format may be encrypted and/or scrambled utilizing a first content protection scheme (e.g., a first set of security algorithms and/or a first set of keys and/or certificates) and the second format may be encrypted and/or scrambled utilizing a second content protection scheme (e.g., a first set of security algorithms and/or a first set of keys and/or certificates). For example, content protected with the first scheme may be recoverable only by devices (e.g., gateways) that have built-in hardware-based conditional access systems (CAS), whereas content protected with the second scheme may be recoverable utilizing keys obtained through two-way exchanges. - The
network 131 represents the network(s) of one or more service providers. For example, thenetwork 131 may comprise a network of a cellular service provider, a network of a satellite service provider, and/or a network of a billing service provider that performs billing functions for other service providers. The security and/orbilling server 130 may manage billing accounts for subscribers of one or more service providers. For example, theserver 130 may maintain a database of users and/or mobile devices which are subscribed to content that is broadcast by thesatellite 102 and delivered in a unicast and/or multicast manner via the WAN 120, and may track consumption of the content by those users/devices. This information may be provided to a satellite service provider so that the satellite provider can bill the users/devices for the content. Similarly, theserver 130 may maintain a database of users and/or mobile devices which are subscribed to wireless (e.g., cellular) services associated with thewireless module 106 and may track usage of themodule 106's bandwidth. This information may be provided to a cellular service provider so that the cellular provider can bill the users/devices for the bandwidth usage. - Additionally or alternatively, the security and/or
billing server 130 may manage certificates, keys, and/or other security information for accessing content broadcast by thesatellite 102 and/or delivered to thesystem 100 via theWAN 120 andbroadband connection 126. For example, theserver 130 may maintain a database of content currently being transmitted to thesystem 100 and keys and/or other security information associated with that content. In the example implementation shown inFIG. 1A , thesystem 100 communicates with theserver 130 via theWAN 120. In the implementation shown inFIG. 1B , on the other hand, theserver 130 is reachable wirelessly, via wireless I/O module 132, such that thesystem 100 can communicate with theserver 130 via aconnection 134 without use of theWAN 120 orbroadband connection 126. - The
mobile device 110 may be operable to communicate wirelessly in accordance with one or more wireless communication protocols. For example, thedevice 110 may be a cellular handset operable to communicate in accordance with cellular (e.g., LTE), WiMAX, WiGig, and/or IEEE 802.11 protocols. - The various components of the
system 100 and themodule 112 may be collocated on, for example, a cellular tower as shown inFIG. 3 , on a satellite subscriber premises (e.g., a house, multi-dwelling unit, or business) as shown inFIG. 2 , and/or in any other suitable location (e.g., a roadside billboard). Thesystem 100 may comprise one or more printed circuit boards and/or one or more integrated circuits (e.g., one or more silicon die). - The
system 100 and themodule 112 may be part of a local area network (LAN) and may be interconnected via a LAN technology such as Ethernet (e.g., Ethernet frames communicated over an Ethernet physical layer such as 10/100/1 G/10 G/40 GBASE-T). In an example implementation, each port of thesystem 100 and the port ofmodule 112 that connects tosystem 100 may share a common subnet address that is not shared with the port of themodule 112 that connects to theWAN 120. Themodule 112 may interface the LAN to a wide area network (WAN) 120 overbroadband connection 126 utilizing, for example, DOCSIS, DSL, Carrier Ethernet, ATM, Frame Relay, ISDN, x.25, and/or other suitable WAN technology. TheWAN 120 may, for example, backhaul traffic between wireless I/O module 106 and a cellular core network. - The broadcast (e.g., satellite broadcast) receive
module 104 may be operable to receive broadcast signals and process the received broadcast signals to recover data (e.g., audio content, video content, and/or auxiliary data related to audio and/or video content) carried therein. Although this disclosure focuses on satellite radio and satellite television broadcast signals, the present invention is not so limited. Rather, other types of signals such as terrestrial broadcast television signals are contemplated. Accordingly, various implementations of thesystem 100 may comprise features described in U.S. patent application Ser. No. 13/546,704, which is incorporated herein by reference, as set forth above. In an example implementation, the receivemodule 104 may perform channelization such that specific channels, streams, programs, etc. from the receivemodule 104 can be selectively conveyed to therouting module 124. In an example implementation, the receivemodule 104 may output data in the form of MPEG transport stream(s) to therouting module 124. In an example implementation, the receivemodule 104 may encapsulate received data utilizing one or more protocols (e.g., Internet Protocol) for output to therouting module 124. - The
wireless module 106 may be operable to engage in unicast and/or multicast communications with user equipment as represented by theconnection 116. Thewireless module 106 may be operable to engage in unicast and/or multicast communications with a service provider, as represented byconnection 134. Thewireless module 106 may be operable to broadcast data (e.g., media content), as represented bysignal 136. Thewireless module 106 may transmit and/or receive utilizing one or more wireless communication protocols such as, for example, cellular (e.g., LTE), WiMAX, WiGig, and/or IEEE 802.11 protocols. In various example implementations, thewireless module 106 may transmit and/or receive utilizing frequency spectrum owned and/or licensed by a cellular provider, utilizing unlicensed frequency spectrum (e.g., in an Industrial, Scientific, and Medical (ISM) band) and/or utilizing dedicated frequency spectrum owned and/or licensed by the satellite provider affiliated with thesatellite 102. In an example implementation, data may be communicated between thewireless module 106 and therouting module 124 in the form of MPEG transport stream (TS) packets. In an example implementation, data may be communicated between thewireless module 106 and therouting module 124 in the form of Internet Protocol (IP) packets. - In an example implementation, the
wireless module 106 may comprise atiming reference module 128 which may enable thewireless module 106 to synchronize timing of its transmissions to a reference clock and/or frequency of its transmissions to a frequency reference signal. For example, thetiming reference module 128 may be operable to synchronize to a reference clock and/or frequency reference signal present in received global navigation satellite system (GNSS) signals. - The
wired module 108 may be operable to communicate data, via one ormore cables 114, withmodule 112. The module 112 (e.g., a media gateway and/or edge router) may, in turn, route traffic between thesystem 100 and one or more other devices (e.g., client devices, such asclient 122, connected to the gateway and/or interior network nodes connected to the gateway). In an example implementation, the wired I/O module 108 may be operable to output, onto the cable(s) 114, L-band signals received from the receivemodule 104. Such signals may be output in instances that themodule 112 is a legacy gateway. Additionally or alternatively, thewired module 108 may be operable to communicate over the cable(s) 114 utilizing Ethernet, Multimedia over Coax Alliance (MoCA), and/or any other suitable protocol(s). In this manner, content may be delivered to thesystem 100 via theWAN 120 andbroadband connection 126. Such communications may be used, for example, when themodule 112 is a gateway that is compatible with an IP-LNB as described in U.S. patent application Ser. No. 13/326,125, which is incorporated by reference herein as set forth above. - In another example implementation, the
module 112 may support a wireless connection and the functionality of thewired module 108 may be subsumed by thewireless module 106 and/or by a second wireless module. - The
routing module 124 may be operable to selectively route data and/or signals between themodules wireless module 106 and packets comprising a second PID (e.g., packets carrying high-definition content) may be sent to thewired module 108. In an example implementation, therouting module 124 may be a digital and/or analog crossbar. In an example implementation, therouting module 124 may perform an OSI layer-3 packet-routing function and/or an OSI layer-2 packet-switching function. Therouting module 124 may be configured via one or more control signals (not shown) which may, in turn, be based on input (e.g., utilizing a protocol such as DiSEqC) from themodule 112 and/or client devices such as theclient device 122 andclient device 110. - In operation of an example implementation, the broadcast receive
module 104 may receive a satellite signal and perform block down conversion to generate an L-band signal. The L-band signal may be conveyed to thewired module 108 for support of legacy gateways. The receivemodule 104 may also demodulate the L-band signal to recover one or more MPEG transport streams, channelize the transport stream(s) to recover one or more programs, and encapsulate the transport stream(s) and/or program(s) into one or more packet streams (e.g., utilizing IP or some other suitable protocol(s)). In some instances, the receivemodule 104 may be operable to decrypt, encrypt, descramble, and/or scramble recovered transport stream(s)/program(s) as described in U.S. patent application Ser. No. 13/316,796, which is incorporated by reference herein as set forth above. The one or more packet streams may be conveyed, viarouting module 124, to thewireless module 106 and/or thewired module 108. - The
wired module 108 may decapsulate, encode, modulate, encrypt, and/or otherwise process the transport stream(s) to generate signals suitable for transmission via the cable(s) 114. Thewired module 108 may transmit the generated signals via the cable(s) 114. Additionally, thewired module 108 may receive signals via the cable(s) 114, decapsulate, encode, modulate, encrypt, and/or otherwise process the signals to recover content carried in the signals that may have originated from themodule 112 and/or been received via theWAN 120 and thebroadband connection 126. Thewired module 108 may encapsulate the content into a packet stream and convey the packet stream to therouting module 124. - The
wireless module 106 may encode, modulate, and/or otherwise process packet stream(s) received from therouting module 124 to generate signals suitable for broadcast by thebasestation 226. Thus, thesystem 100 may enable broadcast of satellite data and/or data delivered to thesystem 100 via theWAN 120 andbroadband connection 126. For the data received from thesatellite 120, thesystem 100 may enable delivering the data to themobile device 110 without the data having to traverse theWAN 120 or thebroadband connection 126. Thewireless module 106 may also convey information about themobile device 110, and information about the data consumed by themobile device 110, to theserver 130 for purposes of billing and/or usage tracking. - Broadcasts of data by the
wireless module 106 may be synchronized via, thetiming reference module 128, to a received reference clock and/or frequency reference signal. In this manner, the wireless module I/O 106 may be operable to broadcast particular data at the same time and on the same frequency band that the same data is being broadcast by other transmitters (e.g., other instances of the system 100). Thesystem 100 along with the other transmitters may thus form a single-frequency broadcast network (SFN). As utilized herein, “single frequency” network refers to the fact that particular data may be simultaneously (or nearly so) transmitted by multiple transmitters on the same frequency. Each transmitter, however, is not limited to broadcasting on only a single frequency. Rather, each transmitter may broadcast data on multiple frequencies. Each transmitter that is part of the SFN may adhere to an electronic programming guide (EPG) that is distributed, for example, via thesatellite 102 and/or theserver 130. The EPG may establish which data should be broadcast on which frequency band. In an example implementation, the EPG may assign content and frequency bands on a region-by-region basis such that transmitters in a particular region each broadcast the same data on the same frequency. In this manner, to adevice 110 roaming around a particular geographic region, the signals from the various transmitters in the region may simply appear, and be processed, as if they are multipath signals from a single transmitter. Different frequency bands may be utilized in different regions to, for example, account for different spectrum availability in the different regions. -
FIG. 2 depicts an example implementation of the system ofFIG. 1 in which the system comprises a basestation, such as, for example, a small-cell (e.g., femtocell or picocell) base station. InFIG. 2 , thesystem 100 comprises asatellite reception assembly 202, and agateway 214. Thesubassembly 204 comprises afeed horn 212, an IP-LNB module 224, acellular basestation module 226, arouting module 230, anEthernet transceiver module 228, and awireless transceiver 232. The various modules of thesubassembly 204 may reside in one or more housings, on one or more printed circuit boards, and/or on one or more integrated circuits (e.g., one or more silicon dice). The satellite reception assembly is not, however, limited to implementations comprising a dish. For example, another implementation of thesatellite reception assembly 204 may comprise a linear or parabolic array of antenna elements and/or receiver circuits whose signals may be combined for satellite signal reception. - In the example implementation depicted, the
satellite reception assembly 202 comprises aparabolic reflector 206 and asubassembly 204 mounted (e.g., bolted or welded) to asupport structure 208 which, in turn, comprises aboom 220 and attaches (e.g., via bolts) to the premises 210 (e.g., to the roof). In another example implementation, all or a portion of themodules modules - The IP-
LNB module 224 may be an implementation of the receivemodule 104 described above and may be as described in U.S. patent application Ser. No. 13/326,125, which is incorporated herein by reference, as set forth above. The nomenclature “IP-LNB” indicates that themodule 224 possesses capabilities beyond the block downconversion of received satellite signals that is performed by conventional LNBs. Functions performed by the IP-LNB module 224 may comprise, for example, downconverting received satellite signals, demodulating received satellite signals, channelizing received satellite signals, and/or encapsulating data recovered from received satellite signals into IP packets. - The
routing module 230 may be an implementation of therouting module 124 described above. Functions performed by therouting module 230 may comprise routing of data between the IP-LNB module 224, thecellular basestation module 226, and theEthernet transceiver module 228. Although an implementation in which the routing module supports IP-based routing is described herein, any suitable protocols (e.g., Ethernet, PCIe, USB, etc.) can be utilized for communication of data betweenmodules - The
Ethernet transceiver module 228 may be an implementation of thewired module 108 described above. Functions performed by themodule 228 may comprise encapsulation of data from therouting module 230 into Ethernet frames and transmission of the Ethernet frames onto the cable(s) 114 in accordance with Ethernet protocols. Additionally or alternatively, functions performed by themodule 228 may comprise reception of Ethernet frames via the cable(s) 114, processing of the Ethernet frames to recover data carried therein (e.g., IP packets), and conveyance of the recovered data to therouting module 230. - The combination of the small-
cell basestation module 226 and thewireless module 232 may be an implementation of thewireless module 106 described above. Functions performed by thebasestation module 226 may comprise communication with cellular-enabled user-equipment (e.g., handsets, tablets, and/or laptops) that are within communication range of thebasestation 226. Thebasestation module 226 may be operable to receive data via one or morecellular connections 116, process the received data, and output the data to therouting module 230 in the form of one or more IP packets. Similarly, the small-cell basestation 226 may be operable to receive IP packets from therouting module 230, process the IP packets, and transmit signals carrying the IP packets (or their contents) via one ormore connections 116. - Functions performed by the
wireless module 232 may comprise accessing the security and/orbilling server 130 via thewireless connection 134 between thewireless module 106 of thesystem 100 and thewireless module 132 which provides wireless connectivity to theserver 130. The amount of bandwidth needed for communicating billing and/or security information over theconnections module 226 may utilize, for example, 4th generation protocols such as LTE whereas thewireless module 232 may utilize, for example, 2.5 or 3rd generation protocols such as EDGE, HSPA, or EVDO. - The
gateway 214 may be an implementation ofmodule 112 described above. Functions performed by thegateway 214 may comprise reception, processing, and transmission of data. Thegateway 214 may transmit and/or receive data to and/or from the system 100 (via cable(s) 114), the WAN 120 (via WAN connection 126), and/or one or more client devices 122 (via one or more connections 234). For data from themodule 228 to aclient device 122, thegateway 214 may recover the data from Ethernet frames received over the cable(s) 114 and output the data to theclient device 122. For data from theclient device 122 and/orgateway 114 to themodule 228, thegateway 214 may encapsulate the data in one or more Ethernet frames and output the frames onto the cable(s) 114. For data between theWAN 120 and themodule 228, thegateway 214 may perform OSI layer-2 switching and/or OSI layer-3 routing. Although the implementation shown inFIG. 2 uses wired connections between thegateway 214 andmodule 228, and between thegateway 214 andWAN 120, other may utilize wireless connections. Although thegateway 214 is depicted as separate from thesystem 100, in other implementations at least a portion of thesystem 100 may reside in and/or be implemented by thegateway 214. - In operation, the IP-
LNB module 224 may process received satellite signals to recover content carried on one or more satellite channels. In an example implementation, content on one or more of the channels may be formatted for consumption by mobile devices. The content may be cached locally (as described below with reference toFIGS. 4-6B ) and conveyed to therouting module 230. Additionally or alternatively, mobile-formatted content received from the gateway 214 (such content may have, for example, originated in a digital video recorder of thegateway 214 and/or been received via the WAN 120) may be conveyed to therouting module 230 via theEthernet transceiver 228. Therouting module 230 may convey the mobile-formatted content to the small-cell basestation module 226. - The
system 100 may allocate the content among frequencies that are available for transmitting the content. For example, where the content comprises a plurality of television networks, each network may be broadcast on a different frequency according to an EPG provided to the system 100 (e.g., by thesatellite 102 and/or by the server 103). Similarly, where the content comprises a plurality of programs, each program may be broadcast on a different frequency according to an EPG provided to thesystem 100. - The
mobile device 110 within the coverage area of thebasestation module 226 may request satellite content (e.g., a particular TV network or program) via theconnection 116. In response to the request for content, thesystem 100 may communicate with theserver 130 to provide information to theserver 130 such that the server can determine whether themobile device 110 is authorized to receive the requested content, and to provide information to theserver 130 so that that an account associated with themobile device 110 can be billed for the requested content and/or for the bandwidth utilized in receiving the content. Thesystem 100 may communicate with theserver 130 via theconnection 134. Additionally or alternatively, thesystem 100 may communicate with theserver 130 via themodule 228,cable 114,gateway 214, andWAN 120. - Upon the
server 130 determining that themobile device 110 is authorized to receive the content that it is requesting, decryption/descrambling keys, an EPG, and/or other information necessary for receiving the requested content may be transmitted to thedevice 110 viaconnections mobile device 110 may then tune to the frequency of the desired content, receive the broadcast content, descramble and/or decrypt the received content, and present the content to its user. - In this manner, for satellite content received via the IP-
LNB 224, such satellite content may be delivered to themobile device 110 without the content having to traverse theWAN 120 or theconnection 126. Thus, in instances that thesystem 100 communicates with theserver 130 viaconnection 126 andWAN 120, satellite content may be delivered to themobile device 110 while only adding a small amount of billing and/or security traffic to theWAN 120. Moreover, in instances that thesystem 100 communicates with theserver 130 viaconnection 134, satellite content may be delivered tomobile device 110 without putting any load on theconnection 126 orWAN 120, thus enabling delivery of the satellite content even when thebroadband connection 126 and/orWAN 120 are unavailable. - In an example implementation, the
mobile device 110 may belong to a first satellite subscriber and thesatellite reception assembly 302 may be installed at the home of a second satellite subscriber. Thus, aspects of the present disclosure may enable the first subscriber to receive satellite content to which he has subscribed via another subscriber's satellite reception assembly. -
FIG. 4 depicts an example system for caching and delivering data. In the example implementation of thesystem 100 shown inFIG. 4 , thesystem 100 comprises themodules system 100 inFIG. 4 also comprises adata caching module 402. - The
data caching module 402 may, for example, comprise memory (e.g., magnetic and/or solid state memory) suitable for storing media content, website content, and/or other data. In an example implementations, thecaching module 402 may reside in a next-generation LNB assembly, such as assembly 204 (FIG. 2 ) or 304 (FIG. 3 ). In an example implementation, thecaching module 402 may be housed separately but collocated with a satellite reception assembly such asassembly 202 or 302 (e.g., mounted in or to the same house, business, or cell tower and connected to the satellite reception assembly via a wired or wireless connection). - In various example implementations, all or a portion of the
system 100 may be mounted to the premises separate from the satellite dish and feed horn (e.g., connected via wired and/or wireless connections), but may still be part of the “outdoor unit.” In another example implementation, all or a portion of themodules - In operation, media data received via one or more of the
modules cache module 402 for later transmission via one or both of themodules wireless module 106 and/or to thewired module 108; and/or past, current, and/or an expected number of devices that are, or will be, connected to themodule 106 and/or themodule 108. - Data cached on
systems 100 may comprise data delivered via satellite (e.g., satellite 102) and/or data delivered via the WAN 120 (e.g., the Internet). Data that is cached in particular instances ofsystem 100 may be, for example, based on which content is available in local spot beam incident on the particular instance ofsystem 100, based on which providers have reached an agreement with an operator of the particular instance ofsystem 100, based on popularity of particular content in the area served by the particular instance ofsystem 100, and/or based on any algorithm that attempts to cache content in locations where doing so will improve network efficiencies and/or increase revenues for content providers and/or service providers. Instances of thesystem 100 may cache: individual movies, catalogs of movies, single episodes of shows, entire seasons of shows, individual audio tracks, entire albums, or any combination thereof. Cached content may be broadcast and/or delivered on-demand in multicast and/or unicast format. - In an example implementation, web-based content which otherwise may only be available to the
system 100 via theWAN 120 may be transmitted by thesatellite 102. For example, web-based content that is popular in a particular area may be beamed up to thesatellite 102 and then transmitted down to instances of thesystem 100 via one or more local spot beams. The use of the local spot beams may enable rapid caching of the content on the instances of thesystem 100 without loading down theWAN 120. Moreover, where thesystem 100 is operable to capture an entire satellite band (e.g., a band of ˜1 GHz), large amounts of content may be cached to thesystem 100 in a very short amount of time such that the reallocation of the spot beam(s) to transmitting web-based content only takes a very short amount of time and/or occurs infrequently (e.g., at off-peak times when one or more local television networks is off air). - Various example caching scenarios are described below with respect to
FIGS. 5A-5C . - The example steps in
FIG. 5A begin withstep 502 in which a content provider (e.g., a satellite provider) determines that there is, or will be, high demand for particular content in a coverage area served by thesystem 100. Instep 504, thesystem 100 in the high-demand location receives and stores the high-demand content in itscache module 402. Instep 506, mobile devices within the coverage area of thesystem 100 that request the high-demand content are delivered the cached content via themodule 106 rather than via theWAN 120. - The example steps in
FIG. 5B begin withstep 512 in which advertising content is received by thesystem 100 via itsmodule 106 and/or itsmodule 108. Instep 514, the advertising content may be stored in thecache 402 of thesystem 100. Instep 516, thesystem 100 may insert the cached advertisement into one or more media streams being transmitted via themodule 106 and/or via themodule 108. Different ads may be sent via themodule 106 than themodule 108. Similarly, different ads may be sent in media streams going to different mobile devices. Which advertisements are cached in thesystem 100 and/or which advertisements are inserted into which media streams and/or delivered to which devices may be, for example, determined based on negotiations between content providers and the provider who owns and/or operates thesystem 100, and/or based on targeted advertising methods such as is disclosed in U.S. patent application Ser. No. 11/928,203, which is incorporated herein by reference, as set forth above. - The example steps in
FIG. 5C begin withstep 522 in which themobile device 100 connects to thesystem 100 and requests particular content (e.g., a particular movie, episode of a television show, whatever is currently playing on a particular television network, a particular webpage, etc.). Instep 524, thesystem 100 determines whether the requested content is stored in its cache. In not, then the steps may proceed to step 526. - Returning to step 524, if the content is cached in the module 420, then in
step 528, thesystem 100 determines whether the cached content is up-to-date or whether it is stale. The determination of whether the content is stale may be via a low-bandwidth and/or low-latency signaling between thesystem 100 and the content provider either via themodule 108 or themodule 106. If the content is not stale, then instep 532 thesystem 100 may transmit the cached content to themobile device 110. - Returning to step 528, if the content is stale then, in
step 526, thesystem 100 may receive the requested content. If the content is available via satellite, themodule 104 may be configured to receive the requested content from thesatellite 102 and output the content to themodule 124. If the content is available via the WAN 120 (e.g., the Internet), thesystem 100 may send a request for the content out to the provider via theWAN 120 and receive the content via themodule 108. - After
step 526, the steps proceed to step 536 in which the content received via themodule 104 and/or themodule 108 is conveyed, bymodule 124, to themodule 106 for transmission to themobile device 110. Afterstep 526, the steps conclude withstep 540. - In parallel with
step 526 are thesteps step 534 thesystem 100 determines whether to cache the received content in themodule 402. The determination may be, for example, based on the popularity of the content. For example, if thesystem 100 has received multiple requests for the particular content and/or past traffic patterns indicate the content will be requested again, thesystem 100 may store the content tomodule 402 to avoid having to receive the content again in the future. If thesystem 100 decides to cache the content, then the steps proceed to step 538 in which the content is stored to themodule 402. -
FIG. 6A illustrates caching of content based on provided route information and/or location prediction. InFIG. 6A , a satellite subscriber plans to travel fromlocation 606 to 608 with in his/hervehicle 606 which comprises a navigation/entertainment system operable to receive content from instances of thesystem 100. That is, the navigation/entertainment system may be enabled to receive content broadcast on aconnection 116, and/or content transmitted over a unicast ormulticast connection 134 using any suitable wireless technology (e.g., cellular, Wi-Fi, WiMAX, WiGig, etc.). In another implementation, the subscriber may travel with a mobile device (e.g., a handset or tablet) operable to receive content from instances of thesystem 100. That is, the handset or tablet may be enabled to receive content broadcast on aconnection 116, and/or content transmitted over a unicast ormulticast connection 134 using any suitable wireless technology (e.g., cellular, Wi-Fi, WiMAX, WiGig, etc.). - Along the
route 604 are six instances of thesystem 100. Thesystem 100 1 has a coverage area 602 1,system 100 2 has a coverage area 602 2,system 100 3 has a coverage area 602 3,system 100 4 has a coverage area 602 4,system 100 5 has a coverage area 602 5, andsystem 100 6 has a coverage area 602 6. As the subscriber travels alongroute 604 fromlocation 606 to location 608 (indicated by a heavy dashed line), he is in each of the coverage areas for some portion of the trip. Example details of how content is delivered to the subscriber as s/he travels fromlocation 606 tolocation 608 are described below with reference toFIG. 6B . -
FIG. 6B describes an example scenario of content delivery using route-based and/or location predictive content caching. The steps begin withstep 620 in which the subscriber decides to take a trip fromlocation 606 tolocation 608 at a particular time. - In
step 622, the subscriber may upload the planned trip to a server which handles route-based caching and delivery of content. The trip may, for example, be uploaded via a vehicle navigation system and/or via a web interface accessed on a mobile device. The subscriber may also upload a list of content that s/he would like to consume during the trip. - In
step 624, if the user has not manually selected a desired route fromlocation 606 tolocation 608 trip, the server may calculate a route based on any one or more parameters such as traffic considerations, distance considerations, where instances of thesystem 100 are located (e.g., which route has the best coverage), subscription models associated with the instances of thesystem 100, resource availability in the instances of thesystem 100, etc. For purposes of illustration, it is assumed theroute 604 is selected either manually by the subscriber or selected by the server based on input from the subscriber and/or other parameters. The route may be stored in the server for use in coordinating caching and delivery of content during the trip and may be downloaded to the user's navigation system, in the case of a vehicle, or a map application, in the case of a handset or tablet, for example. - In
step 626, the server, utilizing the uploaded route information and list of desired content, may selectively cache content on the instances of thesystem 100 that provide coverage along theroute 604. In an example implementation, only portions of content that are likely to be consumed while in a particular coverage area may be downloaded to the instance ofsystem 100 associated with that coverage area. For example, if, based on the planned route, traffic, etc., the subscriber will be in coverage area 602 1 from 12:00 until 12:15 and in coverage area 602 2 from 12:15 until 12:30, then only the portion of the desired content that the subscriber will consume from 12:00 until 12:15 may be cached on thesystem 100 1 and only the portion of the desired content that the subscriber will consume from 12:15 until 12:30 may be cached on thesystem 100 2. In this manner, the amount of data cached on eachsystem 100 may be reduced relative to having to cache all of the desired content on all instances ofsystem 100 along theroute 604. There may be some overlap in the cached data to account for unforeseen delays and/or to accommodate seamless handoff without the content being interrupted. - To further illustrate, consider an example scenario where the subscriber will be in each of the coverage areas 602 1-602 6 for an equal amount of time and would like to watch a movie that is exactly as long as the trip. In such an idealized scenario, ⅙ of the movie may be cached on each of the systems 100 1-100 6, with the first ⅙th being cached on
system 100 1, the second sixth being cached onsystem 100 2, and so on. - In addition to (or alternatively to) caching on the
systems 100 being planned based on the route information, bandwidth, frequency allocations, and/or other resources of the systems 100 1-100 6 may be planned based on the route information. For example, a certain amount of bandwidth necessary for delivering the desired content may be reserved on each of the systems 100 1-100 6 for the respective time period in which the subscriber will be in that system's coverage area. Additionally or alternatively, which channels are reserved for providing the reserved bandwidth may depend on the planned route (e.g., which of the systems 100 1-100 6 will be handing off to which other of the systems 100 1-100 6), local restrictions, spectrum licenses, other trips planned for other devices, and/or any other suitable parameter(s). - In
step 628, the subscriber begins the trip. While in each coverage area 602 i (i being an integer between 1 and 6), the content cached onsystem 100 i is transmitted to the subscriber's device. During the trip, the subscriber's position and/or velocity (e.g., reported to the systems 100 1-100 6 via a low-bandwidth connection) may reported by the subscriber's device and may be used for adjusting caching, reservation of resources, allocation of channels, etc. For example, as it is determined that a portion of the content will be viewed onsystem 100 i rather than viasystem 100 i+1, thesystem 100 i+1 may flush that portion of the content from memory to make room for other data. During the trip, the subscriber's position and velocity may also be used in preparing for hand-off's fromsystem 100 i tosystem 100 i+1 such that the subscriber receives the content as interruption free as possible. An illustrative scenario is described in the following paragraph. - At time T0, a first subscriber's device may be receiving content from
system 100, on channel 1. Using the first subscriber's pre-uploaded route and current position and velocity, it may be determined (e.g., by a particular one of systems 100 1-100 6 and/or by a centralized management entity that manages/coordinates the systems 100 1-100 6) that the first subscriber's device will be handed-off fromsystem 100 i to 100 i+1 at time T1. At time T1−, thesystem 100 i+1 receives a request for bandwidth from a second subscriber's device. If the second subscriber device needs the bandwidth for period of time less than , channel 1 on thesystem 100 i+1 may be allocated to the second subscriber's device. Conversely, if the second subscriber's device needs the bandwidth for a period of time longer than , a channel other than channel 1 may be allocated to the second subscriber's device such that channel 1 on thesystem 100 i+1 is available for handling the first subscriber's device beginning at time T1. In this manner, the first subscriber's device does not need to change channels upon being handed off tosystem 100 i+1. - Other implementations may provide a non-transitory computer readable medium and/or storage medium, and/or a non-transitory machine readable medium and/or storage medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein for caching content for mobile distribution.
- Accordingly, the present method and/or apparatus may be realized in hardware, software, or a combination of hardware and software. The present method and/or apparatus may be realized in a centralized fashion in at least one computing system, or in a distributed fashion where different elements are spread across several interconnected computing systems. Any kind of computing system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computing system with a program or other code that, when being loaded and executed, controls the computing system such that it carries out the methods described herein. Another typical implementation may comprise an application specific integrated circuit or chip.
- The present method and/or apparatus may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
- While the present method and/or apparatus has been described with reference to certain implementations, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present method and/or apparatus. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present disclosure without departing from its scope. Therefore, it is intended that the present method and/or apparatus not be limited to the particular implementations disclosed, but that the present method and/or apparatus will include all implementations falling within the scope of the appended claims.
Claims (22)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/701,627 US20180102833A1 (en) | 2012-08-22 | 2017-09-12 | Method and system for caching content for mobile distribution |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/591,826 US9306684B2 (en) | 2012-08-22 | 2012-08-22 | Method and system for caching content for mobile distribution |
US15/089,760 US9762310B2 (en) | 2012-08-22 | 2016-04-04 | Method and system for caching content for mobile distribution |
US15/701,627 US20180102833A1 (en) | 2012-08-22 | 2017-09-12 | Method and system for caching content for mobile distribution |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/089,760 Continuation US9762310B2 (en) | 2012-08-22 | 2016-04-04 | Method and system for caching content for mobile distribution |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180102833A1 true US20180102833A1 (en) | 2018-04-12 |
Family
ID=50148410
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/591,826 Expired - Fee Related US9306684B2 (en) | 2012-08-22 | 2012-08-22 | Method and system for caching content for mobile distribution |
US15/089,760 Expired - Fee Related US9762310B2 (en) | 2012-08-22 | 2016-04-04 | Method and system for caching content for mobile distribution |
US15/701,627 Abandoned US20180102833A1 (en) | 2012-08-22 | 2017-09-12 | Method and system for caching content for mobile distribution |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/591,826 Expired - Fee Related US9306684B2 (en) | 2012-08-22 | 2012-08-22 | Method and system for caching content for mobile distribution |
US15/089,760 Expired - Fee Related US9762310B2 (en) | 2012-08-22 | 2016-04-04 | Method and system for caching content for mobile distribution |
Country Status (1)
Country | Link |
---|---|
US (3) | US9306684B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10749249B2 (en) * | 2016-05-04 | 2020-08-18 | Commscope Technologies Llc | Display panel with integrated small cell and billboard with integrated macro site |
US11909111B2 (en) | 2019-01-18 | 2024-02-20 | Commscope Technologies Llc | Small cell base station integrated with storefront sign |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150189543A1 (en) * | 2013-12-26 | 2015-07-02 | International Datacasting Corporation | System and Methods for Providing an Enhanced Content Proxy in a Wireless Network |
US9231673B1 (en) * | 2014-07-01 | 2016-01-05 | Dell Products L.P. | Information handling system antenna multiplexed interface with enhanced extensions |
US11805467B2 (en) * | 2015-03-25 | 2023-10-31 | Comcast Cable Communications, Llc | Distributed content delivery for moving devices |
CN112567814B (en) * | 2018-08-08 | 2024-03-26 | 索尼公司 | Infrastructure equipment, communication device and method |
US11075966B2 (en) | 2018-10-16 | 2021-07-27 | T-Mobile Usa, Inc. | Cache and multicast techniques to reduce bandwidth utilization |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6591084B1 (en) * | 1998-04-27 | 2003-07-08 | General Dynamics Decision Systems, Inc. | Satellite based data transfer and delivery system |
US20020154055A1 (en) | 2001-04-18 | 2002-10-24 | Robert Davis | LAN based satellite antenna/satellite multiswitch |
FR2854015A1 (en) | 2003-04-17 | 2004-10-22 | Thomson Licensing Sa | Digital signal e.g. satellite signal, converter, has re-multiplexer to re-multiplex extracted portions in re-multiplexed flow, and transformation module to modify flow according to communication protocol |
US7372907B2 (en) | 2003-06-09 | 2008-05-13 | Northrop Grumman Corporation | Efficient and flexible oversampled filterbank with near perfect reconstruction constraint |
US20080060024A1 (en) | 2006-08-31 | 2008-03-06 | Bart Decanne | Wirelessly transmitting programming obtained from a satellite system |
US9276664B2 (en) * | 2007-04-30 | 2016-03-01 | Dish Network Corporation | Mobile interactive satellite services |
US8434120B2 (en) | 2007-06-26 | 2013-04-30 | Thomson Licensing | System and method for grouping program identifiers into multicast groups |
US7548198B2 (en) * | 2007-09-28 | 2009-06-16 | Federal Network Systems Llc | Method and system for providing preference based location aware content |
US9942618B2 (en) | 2007-10-31 | 2018-04-10 | The Directv Group, Inc. | SMATV headend using IP transport stream input and method for operating the same |
US8700310B2 (en) * | 2008-02-05 | 2014-04-15 | Madhavi Jayanthi | Mobile device and server for facilitating GPS based services |
US8345798B2 (en) | 2008-05-21 | 2013-01-01 | Entropic Communications, Inc. | Channel stacking system and method of operation |
WO2011033342A1 (en) | 2009-09-18 | 2011-03-24 | Stmicroelectronics Sa | Receive unit for reception of a satellite signal |
US20110312320A1 (en) * | 2010-06-16 | 2011-12-22 | Qualcomm Incorporated | Satellite-assisted positioning in hybrid terrestrial-satellite communication systems |
US8892053B2 (en) * | 2012-03-14 | 2014-11-18 | International Business Machines Corporation | Cache hits via a users speed, direction of movement, location, and band within a cellular network |
-
2012
- 2012-08-22 US US13/591,826 patent/US9306684B2/en not_active Expired - Fee Related
-
2016
- 2016-04-04 US US15/089,760 patent/US9762310B2/en not_active Expired - Fee Related
-
2017
- 2017-09-12 US US15/701,627 patent/US20180102833A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10749249B2 (en) * | 2016-05-04 | 2020-08-18 | Commscope Technologies Llc | Display panel with integrated small cell and billboard with integrated macro site |
US11909111B2 (en) | 2019-01-18 | 2024-02-20 | Commscope Technologies Llc | Small cell base station integrated with storefront sign |
Also Published As
Publication number | Publication date |
---|---|
US20160359550A1 (en) | 2016-12-08 |
US9762310B2 (en) | 2017-09-12 |
US20140057555A1 (en) | 2014-02-27 |
US9306684B2 (en) | 2016-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9762310B2 (en) | Method and system for caching content for mobile distribution | |
US20170317743A1 (en) | Method and apparatus for content protection and billing for mobile delivery of satellite content | |
US9008571B2 (en) | Method and system for a single frequency network for broadcasting to mobile devices | |
JP6862571B2 (en) | Methods and systems for providing non-real-time content delivery services | |
JP2017518660A (en) | Distribution method and distribution apparatus | |
US10250658B2 (en) | Hybrid media stream delivery using multiple network connections | |
US8695043B2 (en) | Method for transmitting information over an integrated telecommunications and broadcast system and integrated telecommunications and broadcast system | |
CN106714006B (en) | A kind of heterogeneous wireless network multi-channel video parallel transmission method based on unicast broadcast technology | |
Chuberre et al. | Hybrid satellite and terrestrial infrastructure for mobile broadcast services delivery: An outlook to the ‘Unlimited Mobile TV’system performance | |
US20110164516A1 (en) | Method and system for providing information access, multimedia content access, and phone connectivity | |
Beutler et al. | Distribution Options | |
Haddad | DVB-H in Denmark Technical and Economic aspects | |
WO2012101476A1 (en) | System and method for accessing a television broadcast with a mobile device using a wireless connection | |
Huseinović et al. | Future of Mobile TV in Bosnia and Herzegovina | |
SES | Use Cases and Scenarios of 5G Integrated Satellite-Terrestrial Networks for Enhanced Mobile Broadband: The SaT5G Approach | |
Davies et al. | Direct IP Based Mobile-to-Mobile Video: First Phase Results |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MAXLINEAR, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LING, CURTIS;REEL/FRAME:044265/0589 Effective date: 20120821 |
|
AS | Assignment |
Owner name: MAXLINEAR, INC., CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046737/0594 Effective date: 20180807 Owner name: ENTROPIC COMMUNICATIONS, LLC (F/K/A ENTROPIC COMMU Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046737/0594 Effective date: 20180807 Owner name: EXAR CORPORATION, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046737/0594 Effective date: 20180807 |
|
AS | Assignment |
Owner name: RADIOXIO, LLC, MINNESOTA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MAXLINEAR, INC.;REEL/FRAME:047264/0199 Effective date: 20180803 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |