US20230179524A1 - Optimized routing in connected environments - Google Patents
Optimized routing in connected environments Download PDFInfo
- Publication number
- US20230179524A1 US20230179524A1 US18/162,241 US202318162241A US2023179524A1 US 20230179524 A1 US20230179524 A1 US 20230179524A1 US 202318162241 A US202318162241 A US 202318162241A US 2023179524 A1 US2023179524 A1 US 2023179524A1
- Authority
- US
- United States
- Prior art keywords
- controller
- network
- exemplary embodiments
- mobile device
- processing system
- 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
- 238000004891 communication Methods 0.000 claims abstract description 98
- 230000001413 cellular effect Effects 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 12
- 230000001953 sensory effect Effects 0.000 claims description 8
- 230000009977 dual effect Effects 0.000 claims 7
- 230000005540 biological transmission Effects 0.000 description 8
- 230000011664 signaling Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000010267 cellular communication Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
-
- 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
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/22—Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- 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
- H04W88/04—Terminal devices adapted for relaying to or from another terminal or user
Definitions
- Video streaming can waste network resources. For example, many people request video data for delivery to their mobile devices. However, the video data is often sent into a cellular or other broadband network and routed perhaps hundreds of miles, even though a mobile device is within feet of a WI-FI® or other peer-to-peer network. Cellular and network bandwidth are unnecessarily consumed and transmission delay and jitter may be introduced.
- FIGS. 1 - 4 are simplified schematics illustrating an environment in which exemplary embodiments may be implemented
- FIGS. 5 - 7 are more detailed block diagrams illustrating the operating environment, according to exemplary embodiments.
- FIGS. 8 - 9 are schematics further illustrating device-to-device communication, according to exemplary embodiments.
- FIGS. 10 - 12 are schematics illustrating usage of locational information, according to exemplary embodiments.
- FIGS. 13 - 14 are schematics illustrating routing paths, according to exemplary embodiments.
- FIGS. 15 - 17 are schematics illustrating additional routing examples, according to exemplary embodiments.
- FIG. 18 is a flowchart illustrating an algorithm for efficient routing, according to exemplary embodiments.
- FIGS. 19 - 24 depict still more operating environments for additional aspects of the exemplary embodiments.
- first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first device could be termed a second device, and, similarly, a second device could be termed a first device without departing from the teachings of the disclosure.
- FIGS. 1 - 4 are simplified schematics illustrating remote notification of video data, according to exemplary embodiments. While exemplary embodiments may be implemented in many environments, FIG. 1 illustrates a common residential environment that most readers will understand.
- a human visitor activates a doorbell 20 at a front door
- exemplary embodiments notify a mobile device 22 .
- the mobile device 22 is illustrated as a smartphone 24 .
- a camera 26 may capture live video data 28 of the visitor at the door.
- the video data 28 is then routed over a wireless or wired connection (not shown for simplicity) to a controller 30 of a security system 32 .
- FIG. 1 illustrates the video data 28 routing for delivery to the smartphone 24 .
- the smartphone 24 processes the video data 28 for display (such as by a touch screen display device 34 ). The user of the smartphone 24 may thus remotely see the human visitor that activated the doorbell 20 .
- FIG. 2 illustrates inefficient routing.
- the controller 30 may inefficiently send the video data 28 over a wired or wireless connection to a wide area communications network (or “WAN”) 40 .
- the video data 28 may then route into a cellular network 42 for wireless transmission from a base station to the smartphone 24 .
- the video data 28 may thus travel along many miles of communications cables before being wirelessly transmitted to the smartphone 24 .
- These lengthy communications paths consume precious bandwidth in the wide area communications network 40 .
- the video data 28 also consumes bandwidth and radio frequency spectrum in the cellular network 42 .
- These communications paths also introduce packet delay and jitter, thus degrading the quality of the video data 28 .
- FIG. 3 illustrates optimized routing.
- exemplary embodiments may first determine the geographic proximity 50 of the smartphone 24 to the controller 30 . If the smartphone 24 is geographically close and/or physically proximate to the home controller 30 , exemplary embodiments may select a shorter communications path 52 to the smartphone 24 . That is, exemplary embodiments may select a packet routing that traverses a physically shorter distance from the controller 30 to the smartphone 24 , based on the geographic proximity 50 . If the controller 30 and the smartphone 24 are geographically close, routing links or sections may be chosen that reduce distances traversed and packet switching. Packets in the video data 28 may thus traverse less physical distance, which also reduces jitter and delay. Bandwidth consumption is reduced, and the smartphone 24 renders an improved visual experience for the end user.
- FIG. 4 illustrates one such efficient, shorter communications path 52 .
- the controller 30 may determine that alternative communications paths are available.
- the controller 30 may have multiple communications paths with the mobile device 22 .
- the controller 30 may communicate with the smartphone 24 via a first physical wired connection or a wireless connection with the wide area communications network 40 .
- the controller 30 may also separately or simultaneously communicate with the smartphone 24 via a second wireless connection to a local wireless peer-to-peer network 60 . If the controller 30 can verify communications using the wireless peer-to-peer network 60 , the controller 30 may decline routing the video data 28 into the wide area communications network 40 .
- the controller 30 may route the video data 28 into the wireless peer-to-peer network 60 for delivery to the smartphone 24 , as the wireless peer-to-peer network 60 likely provides a shorter communications path 52 .
- the controller 30 may wirelessly transmit the video data 28 to the smartphone 24 .
- the controller 30 may have one or more wireless transceivers 62 that are capable of unicasting the video data 28 to the smartphone 24 .
- the controller 30 may transmit the video data 28 using cellular frequencies and standards.
- the controller 30 may additionally or alternatively transmit the video data 28 using wireless fidelity (“WI-FI”) frequencies and standards.
- WI-FI wireless fidelity
- the controller 30 and the smartphone 24 may utilize device-to-device communications protocols.
- the wireless peer-to-peer network 60 thus provides the much shorter communications path 52 , which reduces bandwidth consumption with little or no degradation. User experiences are also improved.
- FIGS. 5 - 7 are more detailed block diagrams illustrating the operating environment, according to exemplary embodiments.
- the controller 30 may first determine the geographic proximity 50 of the mobile device 22 . If the mobile device 22 is geographically close, the controller 30 may select the shorter communications path 52 for a more efficient routing assignment.
- the controller 30 has a processor 70 (e.g., “ ⁇ P”), application specific integrated circuit (ASIC), or other component that executes a controller application 72 stored in a memory device 74 .
- the controller application 72 instructs the processor 70 to perform operations, such as detecting or determining if the mobile device 22 is reachable using the shorter communications path 52 via the wireless peer-to-peer network 60 . If the controller 30 and the smartphone 24 can communicate using device-to-device communications protocols via the wireless peer-to-peer network 60 , a more efficient routing path exists.
- FIG. 6 illustrates sensory event notification.
- the controller 30 of the security system 32 interfaces with many sensory devices. This disclosure already explained how the controller 30 interfaces with the doorbell 20 and the camera 26 .
- the security system 32 may additionally or alternatively interface with other sensors 80 , such as infrared or ultrasonic detectors, smoke/heat/monoxide sensors, water sensors, contact elements, and many other sensory elements.
- the controller 30 may receive a sensor notification 82 .
- the doorbell 20 sends the sensor notification 82 as a signal or message to the controller 30 .
- the controller application 72 determines if remote notification is required.
- the controller application 72 is commonly configured to remotely notify of many events, such as the visitor activating the doorbell 20 .
- the controller application 72 causes the controller 30 to query for a remote notification address 84 .
- the controller 30 may be programmed to query for and retrieve one or more remote notification addresses 84 .
- FIG. 6 illustrates the remote notification address 84 being locally retrieved, but the remote notification address 84 may be remotely retrieved from any memory device that is accessible to, or operatively coupled with, the controller 30 .
- the remote notification address 84 may be a cellular telephone number and/or an email address, which most readers are assumed familiar.
- the controller 30 may then notify an operator's server 90 in the wide area communications network (“WAN”) 40 .
- the wide area communications network 40 may be operated or provided by a network service provider.
- the controller 30 sends an electronic notification message 92 to a network address (e.g., Internet Protocol address) associated with the operator's server 90 .
- the controller 30 may packetize the notification message 92 into packets of data according to a packet protocol, such as the Internet Protocol.
- the packets of data contain bits or bytes of data describing the contents, or payload, of a message.
- a header of each packet of data may contain routing information identifying an origination address and/or a destination address.
- the controller 30 calls or invokes a network interface to send the electronic notification message 92 into the wide area communications network 40 for routing and delivery to the network address assigned to the operator's server 90 .
- the electronic notification message 92 may identify the remote notification address 84 .
- the notification message 92 may include bits or bytes that identify the remote notification address 84 .
- the notification message 92 may include data representing an email address and/or a cellular identifier that is to be remotely notified.
- the cellular identifier may uniquely identify the mobile device 22 using a cellular telephone number, International Mobile Subscriber Identity, or Mobile Station International Sub scriber Directory Number.
- FIG. 6 also illustrates push notifications.
- the operator's server 90 may forward or relay the notification message 92 to a push notification service provider.
- FIG. 6 illustrates the operator's server 90 sending the electronic notification message 92 to a network address associated with a provider's server 94 operating in the service provider's cloud network 96 . While the provider's server 94 may be controlled or operated by any service provider, the reader is perhaps most familiar with an APPLE® or ANDROID® push notification service.
- the provider's server 94 generates and sends (or “pushes”) an electronic push notification 100 addressed to the remote notification address 84 (such as the email address and/or the cellular identifier associated with the smartphone 24 ).
- the electronic push notification 100 may utilize any messaging or notification service (such as Apple's push notification service, Microsoft's messenger service, or Google's cloud messaging service). Regardless, the provider's server 94 pushes the electronic push notification 100 to the mobile device 22 using the email address and/or the cellular identifier associated with the smartphone 24 . The push notification 100 alerts the mobile device 22 to some event, such as the requirement for remote notification from the controller 30 .
- any messaging or notification service such as Apple's push notification service, Microsoft's messenger service, or Google's cloud messaging service.
- FIG. 7 illustrates proximity detection.
- the push notification 100 routes through the wide area communications network 40 and is broadcast from a base station antenna in the cellular network 42 .
- the mobile device 22 launches a proximity application 110 .
- the mobile device 22 (such as the smartphone 24 ) also houses a processor 112 and a memory device 114 .
- the electronic push notification 100 may identify the proximity application 110 and cause the processor 112 in the mobile device 22 to launch or awaken the proximity application 110 .
- the proximity application 110 has program code, instructions, and/or an algorithm that performs operations, such as detecting if the mobile device 22 is within the geographic proximity 50 of the controller 30 .
- the mobile device 22 thus calls, retrieves, and/or executes the proximity application 110 in response to receipt of the electronic push notification 100 .
- the proximity application 110 instructs the mobile device 22 to initiate wireless communication with the transceiver 62 in the controller 30 .
- the mobile device 22 may be preregistered with the controller 30 , thus allowing the wireless recognition using cellular, wireless fidelity (“WI-FI®”), and/or BLUETOOTH® technologies. If the mobile device 22 and the controller 30 can communicate using the wireless peer-to-peer network 60 , then exemplary embodiments may infer or conclude that the mobile device 22 is reachable and within the geographic proximity 50 of the controller 30 , based on wireless reception using the wireless peer-to-peer network 60 .
- WI-FI® wireless fidelity
- the controller 30 and the mobile device 22 may thus communicate using the shorter communications path 52 offered by the wireless peer-to-peer network 60 . However, if the mobile device 22 and the controller 30 cannot establish communication using the wireless peer-to-peer network 60 , exemplary embodiments may conclude that the mobile device 22 is not within the geographic proximity 50 of the controller 30 .
- Exemplary embodiments may thus push or force the shorter communications path 52 . If the mobile device 22 is preregistered with the controller 30 , exemplary embodiments may force or reestablish communication using the wireless peer-to-peer network 60 . Even if the mobile device 22 is not currently registered to the wireless peer-to-peer network 60 , then exemplary embodiments may force registration to establish the shorter communications path 52 . Any push notification service may thus be used relieve packet traffic in the wide area communications network 40 and in the cellular network 42 .
- FIGS. 8 - 9 are schematics further illustrating device-to-device communication, according to exemplary embodiments.
- FIG. 8 illustrates the wireless peer-to-peer network 60 as a wireless fidelity (“WI-FI”) network 120 .
- WI-FI wireless fidelity
- the controller 30 and the mobile device 22 may communicate using device-to-device communication protocols.
- the mobile device 22 may retrieve a service set identifier 122 and a network password 124 to register with the wireless fidelity network 120 .
- the controller 30 may thus bypass the wide area communications network 40 and, instead, instruct the wireless transceiver 62 to transmit the video data 28 for reception at the subnetworking mask address assigned to or associated with the smartphone 24 .
- the controller 30 and the mobile device 22 may thus use device-to-device communication protocols to transfer the video data 28 .
- the smartphone 24 is within transmission range, the shorter communications path 52 offered by the wireless fidelity network 120 may be preferred.
- the mobile device 22 processes the video data 28 for display, thus providing remote notification.
- Exemplary embodiments need only authenticate once.
- exemplary embodiments may store and retrieve the authentication credentials (e.g., the SSID 122 and network password 124 ) for future uses. That is, when the controller 30 and the mobile device 22 recognize each other, formal authentication need not be repeated.
- Exemplary embodiments may be configured to require authentication with each session.
- authentication may bypass the wide area communications network 40 operated or provided by a network service provider. When the authentication relies on the wireless peer-to-peer network 60 , signaling overhead and delay is reduced.
- FIG. 9 illustrates cellular communication.
- the controller 30 may have cellular transmission capabilities, thus allowing device-to-device communication using cellular frequencies and standards.
- FIG. 9 illustrates the wireless peer-to-peer network 60 as a local cellular network 130 .
- the controller 30 may have multiple transceivers, allowing the controller 30 to establish wireless communication using several different standards and frequency ranges in the electromagnetic spectrum. If the controller 30 and the mobile device 22 can establish cellular communication using device-to-device cellular communication protocols, exemplary embodiments may infer or conclude that the mobile device 22 is reachable and within the geographic proximity 50 of the controller 30 , based on wireless reception using the local cellular network 130 .
- Cellular communication may thus utilize unique cellular identifiers, such as the cellular telephone number (“CTN”) 132 , International Mobile Subscriber Identity (or “IMSI”) 134 , or Mobile Station International Subscriber Directory Number (“MSISDN”) 136 .
- the controller 30 may thus bypass the wide area communications network 40 and, instead, instruct the wireless transceiver 62 to transmit the video data 28 for reception at the cellular network address assigned to or associated with the smartphone 24 .
- the controller 30 and the mobile device 22 may thus use device-to-device communication protocols to transfer the video data 28 .
- the smartphone 24 is within transmission range, the shorter communications path 52 offered by the local cellular network 130 may be preferred.
- the mobile device 22 processes the video data 28 for display, thus providing better video quality with reduced network congestion.
- FIGS. 10 - 12 are schematics illustrating usage of locational information, according to exemplary embodiments.
- the geographic proximity 50 may be determined using global positioning system information 140 .
- the mobile device 22 executes the proximity application 110 , the mobile device 22 may retrieve its current location 142 .
- many electronic devices have a global positioning system receiver and circuitry that determines the current location 142 based on the global positioning system information 140 .
- FIG. 10 illustrates, when the mobile device 22 and the controller 30 communicate using the wireless peer-to-peer network 60 , the mobile device 22 may sends its current location 142 to the controller 30 .
- the controller 30 likewise, may retrieve and exchange its own current location 142 , perhaps determined by its own internal global positioning system receiver and circuitry.
- the controller application 72 and the proximity application 110 may thus cooperate to determine the geographic proximity 50 .
- exemplary embodiments may compare the current location 142 a of the controller 30 to the current location 142 b associated with the mobile device 22 . If the current locations 142 a and 142 b match, then exemplary embodiments may infer or conclude that the mobile device 22 is within the geographic proximity 50 of the controller 30 , based on matching global positioning system information 140 . Exemplary embodiments, however, may still infer the geographic proximity 50 if a difference between the current locations 142 a and 142 b is equal to or less than some threshold value (such as a maximum coordinate radius about the controller 30 or a maximum linear or length distance from the controller 30 ). GPS technology may thus be used to select the shorter communications path 52 offered by the wireless peer-to-peer network 60 .
- some threshold value such as a maximum coordinate radius about the controller 30 or a maximum linear or length distance from the controller 30 .
- FIG. 11 illustrates locational push notifications.
- electronic push notification 100 may include locational information of the controller 30 .
- the controller 30 needs to remotely notify the remote notification address 84 of some sensory event, the controller 30 sends the electronic notification message 92 to the operator's server 90 .
- the controller application 72 may include the current location 142 a of the controller 30 , as perhaps represented by global positioning system information (determined by its own internal global positioning system receiver and circuitry).
- the operator's server 90 then sends the electronic notification message 92 to the network address associated with the provider's server 94 operating in the service provider's cloud network 96 .
- the electronic notification message 92 may include header or packet data that identifies the global positioning system information representing the current location 142 a of the controller 30 .
- the provider's server 94 generates and sends (or “pushes”) the electronic push notification 100 addressed to the remote notification address 84 (such as the email address and/or the cellular identifier associated with the smartphone 24 ).
- the electronic push notification 100 may also include header and/or packet information that identify the global positioning system information representing the current location 142 a of the controller 30 . Exemplary embodiments may thus push the GPS coordinates associated with the controller 30 when alerting the mobile device 22 of any sensory event.
- Exemplary embodiments may determine the geographic proximity 50 . Now that the current location 142 a of the controller 30 is known, exemplary embodiments may determine the geographic proximity 50 . For example, the controller application 72 and/or the proximity application 110 may compare the current location 142 a of the controller 30 (obtained from the electronic push notification 100 ) to the current location 142 b associated with the mobile device 22 . If the current locations 142 a and 142 b match, then exemplary embodiments may infer or conclude that the mobile device 22 is within the geographic proximity 50 of the controller 30 , based on matching global positioning system information 140 .
- Exemplary embodiments may still infer the geographic proximity 50 if a difference between the current locations 142 a and 142 b is equal to or less than some threshold value (such as a maximum coordinate radius about the controller 30 or a maximum linear or length distance from the controller 30 ). GPS technology may thus be used to select the shorter communications path 52 offered by the wireless peer-to-peer network 60 .
- some threshold value such as a maximum coordinate radius about the controller 30 or a maximum linear or length distance from the controller 30 .
- FIG. 12 further illustrates the geographic proximity 50 .
- exemplary embodiments may determine the geographic proximity 50 based on wireless reception.
- the electronic push notification 100 causes the mobile device 22 to launch or awaken the proximity application 110 (as earlier explained).
- the proximity application 110 causes the mobile device 22 to initiate wireless communication with the transceiver 62 in the controller 30 using cellular, wireless fidelity (“WI-FI”), BLUETOOTH®, or any other short-range or near-field technology. If the mobile device 22 and the controller 30 can establish communication using the wireless peer-to-peer network 60 , then exemplary embodiments may infer or conclude that the mobile device 22 is within the geographic proximity 50 of the controller 30 .
- WI-FI wireless fidelity
- BLUETOOTH® wireless fidelity
- the controller 30 and the mobile device 22 may thus communicate using the shorter communications path 52 offered by the wireless peer-to-peer network 60 . However, if the mobile device 22 and the controller 30 cannot establish communication using the wireless peer-to-peer network 60 , exemplary embodiments may conclude that the mobile device 22 is not within the geographic proximity 50 of the controller 30 .
- FIGS. 13 - 14 are schematics illustrating routing paths, according to exemplary embodiments.
- FIG. 13 illustrates an exemplary routing of the video data 28 when proximity is not determined.
- the controller 30 may route the video data 28 into the wide area communications network 40 .
- the video data 28 traverses links and segments in the wide area communications network 40 for eventual routing into the cellular network 42 for wireless transmission to the mobile device 22 . Again, this routing may traverse many miles, consuming bandwidth and introducing delay and jitter.
- FIG. 14 illustrates the shorter communications path 52 .
- the controller 30 and the mobile device 22 authenticate using the wireless peer-to-peer network 60
- the controller 30 may decline the wide area communications network 40 .
- the controller 30 instructs the wireless transceiver 62 to transmit the video data 28 using the wireless peer-to-peer network 60 .
- the wireless peer-to-peer network 60 provides the shorter communications path 52 , thus consuming little or perhaps no bandwidth in the wide area communications network 40 .
- the shorter communications path 52 consumes little or perhaps no bandwidth or electromagnetic spectrum in the cellular network 42 . Indeed, the efficiencies are significant, especially considering the cumulative effects of thousands or even millions of users requesting video data in today's mobile society.
- FIGS. 15 - 17 are schematics illustrating additional routing examples, according to exemplary embodiments. Even if the mobile device 22 is proximate the controller 30 , exemplary embodiments may still implement routing decisions based on radio and network conditions. That is, even if the mobile device 22 and the controller 30 can communicate using device-to-device protocols, exemplary embodiments may still prefer the wide area communications network 40 . Network and radio considerations may influence the controller 30 to select a routing into the wide area communications network 40 . For example, in FIG. 15 , the controller 30 may determine that the wireless peer-to-peer network 60 is too congested for delivery of the video data 28 . Suppose, for example, that the controller 30 determines there is limited or even unavailable bandwidth in the wireless peer-to-peer network 60 .
- the controller 30 may resort to the wide area communications network (“WAN”) 40 . Indeed, there may be times when the wide area communications network 40 has ample bandwidth, perhaps during off-peak uncongested hours.
- the controller 30 may thus receive or retrieve a LAN congestion parameter 150 describing congestion or load in the wireless peer-to-peer network 60 .
- the controller application 72 may compare the LAN congestion parameter 150 to a LAN threshold value 152 . If the LAN congestion parameter 150 is less than the LAN threshold value 152 , then the controller 30 may route the video data 28 into the wireless peer-to-peer network 60 for wireless transmission to the mobile device 22 . However, if the LAN congestion parameter 150 is equal to or greater than the LAN threshold value 152 , then the controller 30 may route the video data 28 into the wide area communications network 40 for transmission from the cellular network 42 .
- FIG. 16 illustrates further decisional analysis.
- the controller 30 may also evaluate the congestion in the wide area communications network 40 .
- the controller 30 may receive a WAN congestion parameter 160 describing congestion or load in the wide area communications network 40 . While the WAN congestion parameter 160 may be received from any network element or device, FIG. 16 illustrates an edge router 162 originating the WAN congestion parameter 160 to the controller 30 .
- the controller 30 may thus weigh or evaluate the congestion in both the wide area communications network 40 (based on the WAN congestion parameter 160 ) and in the wireless peer-to-peer network 60 (based on the LAN congestion parameter 150 ).
- the controller application 72 may compare the LAN congestion parameter 150 and the WAN congestion parameter 160 to respective threshold values 152 and 154 .
- the controller application 72 may then retrieve one or more logical rules 166 for selecting which routing is preferred. For example, if cellular bandwidth or spectrum is more plentiful, the controller 30 may prefer the wide area communications network 40 and the cellular network 42 . If the wireless peer-to-peer network 60 has ample bandwidth, the controller 30 may prefer the wireless peer-to-peer network 60 . Of course, if the mobile device 22 lacks the geographic proximity 50 , the controller 30 may default to the wide area communications network 40 .
- FIG. 17 illustrates separate video and voice routings.
- the controller 30 may also receive or process audio data 170 (such as a digital recording of the voice of the visitor ringing the doorbell 20 ).
- audio data 170 such as a digital recording of the voice of the visitor ringing the doorbell 20 .
- many security systems may have both the camera 26 and a microphone 172 trained or aimed to capture video and voice of the visitor at the front door.
- the microphone 172 may interface with a voice codec that outputs the packetized audio data 170 for receipt by the controller 30 .
- the controller 30 may need to route both the video data 28 and the audio data 170 to the user's mobile device 22 for remote notification.
- the controller 30 may thus again receive and compare the LAN congestion parameter 150 and/or the WAN congestion parameter 160 and to their respective threshold values 152 and 164 .
- the controller application 72 may then retrieve the logical rule(s) 166 for selecting which routing is preferred.
- the controller 30 may prefer to stream the lower bandwidth audio data 170 into the wide area communications network 40 and the cellular network 42 to maintain quality of voice data.
- the controller 30 may prefer to route the higher bandwidth stream of video data 28 into the wireless peer-to-peer network 60 .
- Exemplary embodiments may thus prefer high quality, lower bandwidth remote notification of the audio data 170 , thus perhaps ensuring the user's smartphone 24 accurately renders the visitor's voice via the cellular network 42 .
- the video data 28 may be delivered by the wireless peer-to-peer network 60 for improved synchronization. Indeed, if congestion is high, exemplary embodiments may sacrifice the quality or timing of the video data 28 to ensure voice signals are delivered.
- Exemplary embodiments may be applied regardless of networking environment. Exemplary embodiments may be easily adapted to stationary or mobile devices having cellular, wireless fidelity (WI-FI®), near field, and/or BLUETOOTH® capability. Exemplary embodiments may be applied to mobile devices utilizing any portion of the electromagnetic spectrum and any signaling standard (such as the IEEE 802 family of standards, GSM/CDMA/TDMA or any cellular standard, and/or the ISM band). Exemplary embodiments, however, may be applied to any processor-controlled device operating in the radio-frequency domain and/or the Internet Protocol (IP) domain.
- IP Internet Protocol
- Exemplary embodiments may be applied to any processor-controlled device utilizing a distributed computing network, such as the Internet (sometimes alternatively known as the “World Wide Web”), an intranet, a local-area network (LAN), and/or a wide-area network (WAN).
- Exemplary embodiments may be applied to any processor-controlled device utilizing power line technologies, in which signals are communicated via electrical wiring. Indeed, exemplary embodiments may be applied regardless of physical componentry, physical configuration, or communications standard(s).
- Exemplary embodiments may be applied to other networking environments.
- the controller 30 and the mobile device 22 may establish BLUETOOTH® and/or other near-field communications links. If the user's mobile device 22 and the controller 30 can establish device-to-device communication using a BLUETOOTH® and/or other near-field communications link, exemplary embodiments may conclude or infer that the mobile device 22 and the controller 30 are geographically close to each other. Device-to-device communication alleviates broadband usage of the wide area communications network 40 and the cellular network 42 , as previously explained.
- Exemplary embodiments may be applied to video storage. While the controller 30 is described as a component of the security system 32 , exemplary embodiments may be applied to any operating environment.
- the controller 30 may be a component of a video storage system.
- the controller 30 may control or manage access to stored content, whether rented or owned.
- the controller 30 may control or manage access to a vault that stores home videos, digital pictures and other electronic images, music, software applications, backup and archival data, and any other electronic content or information.
- the controller 30 may still have multiple transmitters for multiple network interfaces, and/or the controller 30 may communicate with a router also having multiple transmitters for multiple network interfaces.
- exemplary embodiments may be applied to any device-to-device opportunity.
- Exemplary embodiments may utilize any processing component, configuration, or system.
- Any processor could be multiple processors, which could include distributed processors or parallel processors in a single machine or multiple machines.
- the processor can be used in supporting a virtual processing environment.
- the processor could include a state machine, application specific integrated circuit (ASIC), programmable gate array (PGA) including a Field PGA, or state machine.
- ASIC application specific integrated circuit
- PGA programmable gate array
- any of the processors execute instructions to perform “operations”, this could include the processor performing the operations directly and/or facilitating, directing, or cooperating with another device or component to perform the operations.
- FIG. 18 is a flowchart illustrating an algorithm for efficient routing, according to exemplary embodiments.
- the controller 30 determines remote notification is required (Block 200 ).
- the controller 30 retrieves the remote notification address 84 (Block 202 ) and notifies the push notification provider (Block 204 ).
- the push notification provider sends the push notification 100 to the remote notification address 84 (Block 206 ).
- the proximity application 110 executes (Block 208 ).
- the controller application 72 and the proximity application 110 cooperate to determine the geographic proximity 50 between the controller 30 and the mobile device 22 (Block 210 ).
- the controller 30 selects a routing based on the geographic proximity 50 (Block 212 ).
- FIG. 19 is a schematic illustrating still more exemplary embodiments.
- FIG. 19 is a more detailed diagram illustrating a processor-controlled device 300 .
- the controller application 72 and/or the proximity application 110 may partially or entirely operate in any mobile or stationary processor-controlled device.
- FIG. 19 illustrates the controller application 72 and/or the proximity application 110 stored in a memory subsystem of the processor-controlled device 300 .
- One or more processors communicate with the memory subsystem and execute either, some, or all applications. Because the processor-controlled device 300 is well known to those of ordinary skill in the art, no further explanation is needed.
- FIG. 20 depicts other possible operating environments for additional aspects of the exemplary embodiments.
- FIG. 20 illustrates the controller application 72 and/or the proximity application 110 operating within various other processor-controlled devices 300 .
- FIG. 20 illustrates that the controller application 72 and/or the proximity application 110 may entirely or partially operate within a set-top box (“STB”) ( 302 ), a personal/digital video recorder (PVR/DVR) 304 , a Global Positioning System (GPS) device 308 , an interactive television 310 , a tablet computer 312 , or any computer system, communications device, or processor-controlled device utilizing any of the processors above described and/or a digital signal processor (DP/DSP) 314 .
- STB set-top box
- PVR/DVR personal/digital video recorder
- GPS Global Positioning System
- DP/DSP digital signal processor
- the processor-controlled device 300 may be pre-configured with fixed GPS coordinates, perhaps representing an installed or operating location.
- the processor-controlled device 300 may be a wired or wireless router.
- a user interface may permit entry of GPS coordinates after installation and/or a relocation.
- the processor-controlled device 300 may also include wearable devices (such as watches), radios, vehicle electronics, clocks, printers, gateways, mobile/implantable medical devices, and other apparatuses and systems. Because the architecture and operating principles of the various devices 300 are well known, the hardware and software componentry of the various devices 300 are not further shown and described.
- FIGS. 21 - 23 are schematics further illustrating various communications devices for presenting ring tones, according to exemplary embodiments.
- FIG. 21 is a block diagram of a Subscriber Identity Module 300
- FIGS. 22 and 23 illustrate, respectively, the Subscriber Identity Module 300 embodied in a plug 302 and in a card 304 .
- the Subscriber Identity Module 300 may be used in conjunction with many communications devices (such as the mobile device 22 and the controller 30 ).
- the Subscriber Identity Module 300 stores user information (such as the user's International Mobile Subscriber Identity, the user's K number, and other user information) and any portion of the controller application 72 and/or the proximity application 110 .
- the plug 302 and the card 304 each may interface with the mobile device 22 and/or the controller 30 .
- FIG. 21 is a block diagram of the Subscriber Identity Module 300 , whether embodied as the plug 302 of FIG. 22 or as the card 304 of FIG. 23 .
- the Subscriber Identity Module 300 comprises a microprocessor 306 ( ⁇ P) communicating with memory modules 308 via a data bus 310 .
- the memory modules 308 may include Read Only Memory (ROM) 312 , Random Access Memory (RAM) and or flash memory 314 , and Electrically Erasable-Programmable Read Only Memory (EEPROM) 316 .
- the Subscriber Identity Module 300 stores some or all of the controller application 72 and/or the proximity application 110 in one or more of the memory modules 308 .
- FIG. 1 is a block diagram of the Subscriber Identity Module 300 , whether embodied as the plug 302 of FIG. 22 or as the card 304 of FIG. 23 .
- the Subscriber Identity Module 300 comprises a microprocessor 306 ( ⁇ P) communicating with memory modules 308 via a data bus 310 .
- the memory modules 308
- FIG. 21 shows the controller application 72 and/or the proximity application 110 residing in the Erasable-Programmable Read Only Memory 316 , yet either module may alternatively or additionally reside in the Read Only Memory 312 and/or the Random Access/Flash Memory 314 .
- An Input/Output module 318 handles communication between the Subscriber Identity Module 300 and the communications device. Because Subscriber Identity Modules are well known in the art, this patent will not further discuss the operation and the physical/memory structure of the Subscriber Identity Module 300 .
- FIG. 24 is a schematic further illustrating the operating environment, according to exemplary embodiments.
- FIG. 24 is a block diagram illustrating some componentry of the mobile device 22 and/or the controller 30 .
- the componentry may include one or more radio transceiver units 352 , an antenna 354 , a digital baseband chipset 356 , and a man/machine interface (MMI) 358 .
- the transceiver unit 352 includes transmitter circuitry 360 and receiver circuitry 362 for receiving and transmitting radio-frequency (RF) signals.
- the transceiver unit 352 couples to the antenna 354 for converting electrical current to and from electromagnetic waves.
- the digital baseband chipset 356 contains a digital signal processor (DSP) 364 and performs signal processing functions for audio (voice) signals and RF signals. As FIG. 24 shows, the digital baseband chipset 356 may also include an on-board microprocessor 366 that interacts with the man/machine interface (MMI) 358 .
- the man/machine interface (MMI) 358 may comprise a display device 368 , a keypad 370 , and the Subscriber Identity Module 300 .
- the on-board microprocessor 366 may also interface with the Subscriber Identity Module 300 and with the controller application 72 and/or the proximity application 110 .
- FIGS. 21 - 24 may illustrate a Global System for Mobile (GSM) communications device. That is, the communications device may utilize the Global System for Mobile (GSM) communications signaling standard.
- GSM Global System for Mobile
- exemplary embodiments are equally applicable to any communications device utilizing the Time Division Multiple Access signaling standard, the Code Division Multiple Access signaling standard, the “dual-mode” GSM-ANSI Interoperability Team (GAIT) signaling standard, or any variant of the GSM/CDMA/TDMA signaling standard.
- Exemplary embodiments may also be applied to other standards, such as the I.E.E.E. 802 family of standards, the Industrial, Scientific, and Medical band of the electromagnetic spectrum, BLUETOOTH®, and any other.
- Exemplary embodiments may be physically embodied on or in a computer-readable storage medium.
- This computer-readable medium may include CD-ROM, DVD, tape, cassette, floppy disk, optical disk, memory card, memory drive, and large-capacity disks.
- This computer-readable medium, or media could be distributed to end-subscribers, licensees, and assignees.
- a computer program product comprises processor-executable instructions for optimized routing, as the above paragraphs explained.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
- Databases & Information Systems (AREA)
Abstract
Geographic proximity and network congestion are used to determine efficient routing of data in networks. If two devices are geographically close, then device-to-device communication may be possible. Data may thus be routed using device-to-device communication, which avoids consuming bandwidth in wide area networks and in cellular networks.
Description
- This application is a continuation of U.S. application Ser. No. 17/156,777, filed Jan. 25, 2021, which is a continuation of U.S. application Ser. No. 16/040,600, filed Jul. 20, 2018 (now U.S. Pat. No. 10,958,578), which is a continuation of U.S. application Ser. No. 14/714,296, filed May 17, 2015 (now U.S. Pat. No. 10,057,172), which are incorporated herein by reference in their entirety.
- Video streaming can waste network resources. For example, many people request video data for delivery to their mobile devices. However, the video data is often sent into a cellular or other broadband network and routed perhaps hundreds of miles, even though a mobile device is within feet of a WI-FI® or other peer-to-peer network. Cellular and network bandwidth are unnecessarily consumed and transmission delay and jitter may be introduced.
- The features, aspects, and advantages of the exemplary embodiments are understood when the following Detailed Description is read with reference to the accompanying drawings, wherein:
-
FIGS. 1-4 are simplified schematics illustrating an environment in which exemplary embodiments may be implemented; -
FIGS. 5-7 are more detailed block diagrams illustrating the operating environment, according to exemplary embodiments; -
FIGS. 8-9 are schematics further illustrating device-to-device communication, according to exemplary embodiments; -
FIGS. 10-12 are schematics illustrating usage of locational information, according to exemplary embodiments; -
FIGS. 13-14 are schematics illustrating routing paths, according to exemplary embodiments; -
FIGS. 15-17 are schematics illustrating additional routing examples, according to exemplary embodiments; -
FIG. 18 is a flowchart illustrating an algorithm for efficient routing, according to exemplary embodiments; and -
FIGS. 19-24 depict still more operating environments for additional aspects of the exemplary embodiments. - The exemplary embodiments will now be described more fully hereinafter with reference to the accompanying drawings. The exemplary embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. These embodiments are provided so that this disclosure will be thorough and complete and will fully convey the exemplary embodiments to those of ordinary skill in the art. Moreover, all statements herein reciting embodiments, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future (i.e., any elements developed that perform the same function, regardless of structure).
- Thus, for example, it will be appreciated by those of ordinary skill in the art that the diagrams, schematics, illustrations, and the like represent conceptual views or processes illustrating the exemplary embodiments. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software. Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named manufacturer.
- As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless expressly stated otherwise. It will be further understood that the terms “includes,” “comprises,” “including,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. Furthermore, “connected” or “coupled” as used herein may include wirelessly connected or coupled. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
- It will also be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first device could be termed a second device, and, similarly, a second device could be termed a first device without departing from the teachings of the disclosure.
-
FIGS. 1-4 are simplified schematics illustrating remote notification of video data, according to exemplary embodiments. While exemplary embodiments may be implemented in many environments,FIG. 1 illustrates a common residential environment that most readers will understand. When a human visitor activates adoorbell 20 at a front door, exemplary embodiments notify amobile device 22. Themobile device 22, for simplicity, is illustrated as asmartphone 24. When the visitor rings thedoorbell 20, acamera 26 may capturelive video data 28 of the visitor at the door. Thevideo data 28 is then routed over a wireless or wired connection (not shown for simplicity) to acontroller 30 of asecurity system 32. As the reader likely knows, many homes and businesses have security systems that protect occupants from fire, intrusion, and other security conditions. When thecontroller 30 receives thevideo data 28, thecontroller 30 is often programmed to send thevideo data 28 to some remote location for monitoring.FIG. 1 illustrates thevideo data 28 routing for delivery to thesmartphone 24. When thesmartphone 24 receives thevideo data 28, thesmartphone 24 processes thevideo data 28 for display (such as by a touch screen display device 34). The user of thesmartphone 24 may thus remotely see the human visitor that activated thedoorbell 20. -
FIG. 2 illustrates inefficient routing. When thecontroller 30 receives thevideo data 28, thecontroller 30 may inefficiently send thevideo data 28 over a wired or wireless connection to a wide area communications network (or “WAN”) 40. Thevideo data 28 may then route into acellular network 42 for wireless transmission from a base station to thesmartphone 24. Thevideo data 28 may thus travel along many miles of communications cables before being wirelessly transmitted to thesmartphone 24. These lengthy communications paths consume precious bandwidth in the widearea communications network 40. Moreover, thevideo data 28 also consumes bandwidth and radio frequency spectrum in thecellular network 42. These communications paths also introduce packet delay and jitter, thus degrading the quality of thevideo data 28. -
FIG. 3 , though, illustrates optimized routing. Here, before thecontroller 30 routes thevideo data 28 to thesmartphone 24, exemplary embodiments may first determine thegeographic proximity 50 of thesmartphone 24 to thecontroller 30. If thesmartphone 24 is geographically close and/or physically proximate to thehome controller 30, exemplary embodiments may select ashorter communications path 52 to thesmartphone 24. That is, exemplary embodiments may select a packet routing that traverses a physically shorter distance from thecontroller 30 to thesmartphone 24, based on thegeographic proximity 50. If thecontroller 30 and thesmartphone 24 are geographically close, routing links or sections may be chosen that reduce distances traversed and packet switching. Packets in thevideo data 28 may thus traverse less physical distance, which also reduces jitter and delay. Bandwidth consumption is reduced, and thesmartphone 24 renders an improved visual experience for the end user. -
FIG. 4 illustrates one such efficient,shorter communications path 52. When thecontroller 30 receives thevideo data 28, exemplary embodiments may determine that alternative communications paths are available. For example, thecontroller 30 may have multiple communications paths with themobile device 22. Thecontroller 30, as previously explained, may communicate with thesmartphone 24 via a first physical wired connection or a wireless connection with the widearea communications network 40. Thecontroller 30, however, may also separately or simultaneously communicate with thesmartphone 24 via a second wireless connection to a local wireless peer-to-peer network 60. If thecontroller 30 can verify communications using the wireless peer-to-peer network 60, thecontroller 30 may decline routing thevideo data 28 into the widearea communications network 40. Thecontroller 30, instead, may route thevideo data 28 into the wireless peer-to-peer network 60 for delivery to thesmartphone 24, as the wireless peer-to-peer network 60 likely provides ashorter communications path 52. For example, thecontroller 30 may wirelessly transmit thevideo data 28 to thesmartphone 24. Thecontroller 30 may have one ormore wireless transceivers 62 that are capable of unicasting thevideo data 28 to thesmartphone 24. Thecontroller 30, for example, may transmit thevideo data 28 using cellular frequencies and standards. Thecontroller 30, however, may additionally or alternatively transmit thevideo data 28 using wireless fidelity (“WI-FI”) frequencies and standards. Regardless, if thesmartphone 24 is geographically proximate to thecontroller 30, thecontroller 30 and thesmartphone 24 may utilize device-to-device communications protocols. The wireless peer-to-peer network 60 thus provides the muchshorter communications path 52, which reduces bandwidth consumption with little or no degradation. User experiences are also improved. -
FIGS. 5-7 are more detailed block diagrams illustrating the operating environment, according to exemplary embodiments. Whenever thecontroller 30 needs to communicate with themobile device 22, thecontroller 30 may first determine thegeographic proximity 50 of themobile device 22. If themobile device 22 is geographically close, thecontroller 30 may select theshorter communications path 52 for a more efficient routing assignment. AsFIG. 5 illustrates, thecontroller 30 has a processor 70 (e.g., “μP”), application specific integrated circuit (ASIC), or other component that executes acontroller application 72 stored in amemory device 74. Thecontroller application 72 instructs theprocessor 70 to perform operations, such as detecting or determining if themobile device 22 is reachable using theshorter communications path 52 via the wireless peer-to-peer network 60. If thecontroller 30 and thesmartphone 24 can communicate using device-to-device communications protocols via the wireless peer-to-peer network 60, a more efficient routing path exists. -
FIG. 6 illustrates sensory event notification. Thecontroller 30 of thesecurity system 32 interfaces with many sensory devices. This disclosure already explained how thecontroller 30 interfaces with thedoorbell 20 and thecamera 26. Thesecurity system 32, though, may additionally or alternatively interface withother sensors 80, such as infrared or ultrasonic detectors, smoke/heat/monoxide sensors, water sensors, contact elements, and many other sensory elements. Whatever thesensor 80, thecontroller 30 may receive asensor notification 82. For example, when the visitor rings thedoorbell 20, the doorbell 20 sends thesensor notification 82 as a signal or message to thecontroller 30. When thecontroller 30 receives thesensor notification 82, thecontroller application 72 determines if remote notification is required. Thecontroller application 72 is commonly configured to remotely notify of many events, such as the visitor activating thedoorbell 20. Thecontroller application 72 causes thecontroller 30 to query for aremote notification address 84. Whenever remote notification is required, thecontroller 30 may be programmed to query for and retrieve one or more remote notification addresses 84.FIG. 6 illustrates theremote notification address 84 being locally retrieved, but theremote notification address 84 may be remotely retrieved from any memory device that is accessible to, or operatively coupled with, thecontroller 30. For simplicity, theremote notification address 84 may be a cellular telephone number and/or an email address, which most readers are assumed familiar. - The
controller 30 may then notify an operator'sserver 90 in the wide area communications network (“WAN”) 40. As the reader may understand, the widearea communications network 40 may be operated or provided by a network service provider. Thecontroller 30, for example, sends anelectronic notification message 92 to a network address (e.g., Internet Protocol address) associated with the operator'sserver 90. Thecontroller 30 may packetize thenotification message 92 into packets of data according to a packet protocol, such as the Internet Protocol. The packets of data contain bits or bytes of data describing the contents, or payload, of a message. A header of each packet of data may contain routing information identifying an origination address and/or a destination address. Thecontroller 30 calls or invokes a network interface to send theelectronic notification message 92 into the widearea communications network 40 for routing and delivery to the network address assigned to the operator'sserver 90. - The
electronic notification message 92 may identify theremote notification address 84. When thecontroller 30 sends the packetizednotification message 92, thenotification message 92 may include bits or bytes that identify theremote notification address 84. Thenotification message 92, for example, may include data representing an email address and/or a cellular identifier that is to be remotely notified. The cellular identifier may uniquely identify themobile device 22 using a cellular telephone number, International Mobile Subscriber Identity, or Mobile Station International Sub scriber Directory Number. -
FIG. 6 also illustrates push notifications. Once thecontroller 30 notifies the operator'sserver 90, the operator'sserver 90 may forward or relay thenotification message 92 to a push notification service provider.FIG. 6 illustrates the operator'sserver 90 sending theelectronic notification message 92 to a network address associated with a provider'sserver 94 operating in the service provider'scloud network 96. While the provider'sserver 94 may be controlled or operated by any service provider, the reader is perhaps most familiar with an APPLE® or ANDROID® push notification service. The provider'sserver 94 generates and sends (or “pushes”) anelectronic push notification 100 addressed to the remote notification address 84 (such as the email address and/or the cellular identifier associated with the smartphone 24). Theelectronic push notification 100 may utilize any messaging or notification service (such as Apple's push notification service, Microsoft's messenger service, or Google's cloud messaging service). Regardless, the provider'sserver 94 pushes theelectronic push notification 100 to themobile device 22 using the email address and/or the cellular identifier associated with thesmartphone 24. Thepush notification 100 alerts themobile device 22 to some event, such as the requirement for remote notification from thecontroller 30. -
FIG. 7 illustrates proximity detection. Thepush notification 100 routes through the widearea communications network 40 and is broadcast from a base station antenna in thecellular network 42. When themobile device 22 receives theelectronic push notification 100, themobile device 22 launches aproximity application 110. The mobile device 22 (such as the smartphone 24) also houses aprocessor 112 and amemory device 114. When themobile device 22 receives theelectronic push notification 100, theelectronic push notification 100 may identify theproximity application 110 and cause theprocessor 112 in themobile device 22 to launch or awaken theproximity application 110. As theproximity application 110 is executed, theproximity application 110 has program code, instructions, and/or an algorithm that performs operations, such as detecting if themobile device 22 is within thegeographic proximity 50 of thecontroller 30. Themobile device 22 thus calls, retrieves, and/or executes theproximity application 110 in response to receipt of theelectronic push notification 100. Theproximity application 110, for example, instructs themobile device 22 to initiate wireless communication with thetransceiver 62 in thecontroller 30. Themobile device 22, for example, may be preregistered with thecontroller 30, thus allowing the wireless recognition using cellular, wireless fidelity (“WI-FI®”), and/or BLUETOOTH® technologies. If themobile device 22 and thecontroller 30 can communicate using the wireless peer-to-peer network 60, then exemplary embodiments may infer or conclude that themobile device 22 is reachable and within thegeographic proximity 50 of thecontroller 30, based on wireless reception using the wireless peer-to-peer network 60. Thecontroller 30 and themobile device 22 may thus communicate using theshorter communications path 52 offered by the wireless peer-to-peer network 60. However, if themobile device 22 and thecontroller 30 cannot establish communication using the wireless peer-to-peer network 60, exemplary embodiments may conclude that themobile device 22 is not within thegeographic proximity 50 of thecontroller 30. - Exemplary embodiments may thus push or force the
shorter communications path 52. If themobile device 22 is preregistered with thecontroller 30, exemplary embodiments may force or reestablish communication using the wireless peer-to-peer network 60. Even if themobile device 22 is not currently registered to the wireless peer-to-peer network 60, then exemplary embodiments may force registration to establish theshorter communications path 52. Any push notification service may thus be used relieve packet traffic in the widearea communications network 40 and in thecellular network 42. -
FIGS. 8-9 are schematics further illustrating device-to-device communication, according to exemplary embodiments.FIG. 8 illustrates the wireless peer-to-peer network 60 as a wireless fidelity (“WI-FI”)network 120. When themobile device 22 authenticates to the WI-FI® network 120, thecontroller 30 and themobile device 22 may communicate using device-to-device communication protocols. Themobile device 22 may retrieve a service set identifier 122 and anetwork password 124 to register with thewireless fidelity network 120. Thecontroller 30 may thus bypass the widearea communications network 40 and, instead, instruct thewireless transceiver 62 to transmit thevideo data 28 for reception at the subnetworking mask address assigned to or associated with thesmartphone 24. Thecontroller 30 and themobile device 22 may thus use device-to-device communication protocols to transfer thevideo data 28. As thesmartphone 24 is within transmission range, theshorter communications path 52 offered by thewireless fidelity network 120 may be preferred. Themobile device 22 processes thevideo data 28 for display, thus providing remote notification. - Exemplary embodiments need only authenticate once. When the
controller 30 and themobile device 22 initially authenticate, exemplary embodiments may store and retrieve the authentication credentials (e.g., the SSID 122 and network password 124) for future uses. That is, when thecontroller 30 and themobile device 22 recognize each other, formal authentication need not be repeated. Exemplary embodiments, however, may be configured to require authentication with each session. Moreover, authentication may bypass the widearea communications network 40 operated or provided by a network service provider. When the authentication relies on the wireless peer-to-peer network 60, signaling overhead and delay is reduced. -
FIG. 9 illustrates cellular communication. Here thecontroller 30 may have cellular transmission capabilities, thus allowing device-to-device communication using cellular frequencies and standards.FIG. 9 illustrates the wireless peer-to-peer network 60 as a localcellular network 130. Thecontroller 30 may have multiple transceivers, allowing thecontroller 30 to establish wireless communication using several different standards and frequency ranges in the electromagnetic spectrum. If thecontroller 30 and themobile device 22 can establish cellular communication using device-to-device cellular communication protocols, exemplary embodiments may infer or conclude that themobile device 22 is reachable and within thegeographic proximity 50 of thecontroller 30, based on wireless reception using the localcellular network 130. Cellular communication may thus utilize unique cellular identifiers, such as the cellular telephone number (“CTN”) 132, International Mobile Subscriber Identity (or “IMSI”) 134, or Mobile Station International Subscriber Directory Number (“MSISDN”) 136. Again, then, thecontroller 30 may thus bypass the widearea communications network 40 and, instead, instruct thewireless transceiver 62 to transmit thevideo data 28 for reception at the cellular network address assigned to or associated with thesmartphone 24. Thecontroller 30 and themobile device 22 may thus use device-to-device communication protocols to transfer thevideo data 28. As thesmartphone 24 is within transmission range, theshorter communications path 52 offered by the localcellular network 130 may be preferred. Themobile device 22 processes thevideo data 28 for display, thus providing better video quality with reduced network congestion. -
FIGS. 10-12 are schematics illustrating usage of locational information, according to exemplary embodiments. Here thegeographic proximity 50 may be determined using globalpositioning system information 140. When themobile device 22 executes theproximity application 110, themobile device 22 may retrieve its current location 142. As the reader may understand, many electronic devices have a global positioning system receiver and circuitry that determines the current location 142 based on the globalpositioning system information 140. AsFIG. 10 illustrates, when themobile device 22 and thecontroller 30 communicate using the wireless peer-to-peer network 60, themobile device 22 may sends its current location 142 to thecontroller 30. Thecontroller 30, likewise, may retrieve and exchange its own current location 142, perhaps determined by its own internal global positioning system receiver and circuitry. Thecontroller application 72 and theproximity application 110 may thus cooperate to determine thegeographic proximity 50. For example, exemplary embodiments may compare thecurrent location 142 a of thecontroller 30 to thecurrent location 142 b associated with themobile device 22. If thecurrent locations mobile device 22 is within thegeographic proximity 50 of thecontroller 30, based on matching globalpositioning system information 140. Exemplary embodiments, however, may still infer thegeographic proximity 50 if a difference between thecurrent locations controller 30 or a maximum linear or length distance from the controller 30). GPS technology may thus be used to select theshorter communications path 52 offered by the wireless peer-to-peer network 60. -
FIG. 11 illustrates locational push notifications. Hereelectronic push notification 100 may include locational information of thecontroller 30. For example, when thecontroller 30 needs to remotely notify theremote notification address 84 of some sensory event, thecontroller 30 sends theelectronic notification message 92 to the operator'sserver 90. Here, though, thecontroller application 72 may include thecurrent location 142 a of thecontroller 30, as perhaps represented by global positioning system information (determined by its own internal global positioning system receiver and circuitry). The operator'sserver 90 then sends theelectronic notification message 92 to the network address associated with the provider'sserver 94 operating in the service provider'scloud network 96. Again, though, theelectronic notification message 92 may include header or packet data that identifies the global positioning system information representing thecurrent location 142 a of thecontroller 30. The provider'sserver 94 generates and sends (or “pushes”) theelectronic push notification 100 addressed to the remote notification address 84 (such as the email address and/or the cellular identifier associated with the smartphone 24). Here, though, theelectronic push notification 100 may also include header and/or packet information that identify the global positioning system information representing thecurrent location 142 a of thecontroller 30. Exemplary embodiments may thus push the GPS coordinates associated with thecontroller 30 when alerting themobile device 22 of any sensory event. - Exemplary embodiments may determine the
geographic proximity 50. Now that thecurrent location 142 a of thecontroller 30 is known, exemplary embodiments may determine thegeographic proximity 50. For example, thecontroller application 72 and/or theproximity application 110 may compare thecurrent location 142 a of the controller 30 (obtained from the electronic push notification 100) to thecurrent location 142 b associated with themobile device 22. If thecurrent locations mobile device 22 is within thegeographic proximity 50 of thecontroller 30, based on matching globalpositioning system information 140. Exemplary embodiments, however, may still infer thegeographic proximity 50 if a difference between thecurrent locations controller 30 or a maximum linear or length distance from the controller 30). GPS technology may thus be used to select theshorter communications path 52 offered by the wireless peer-to-peer network 60. -
FIG. 12 further illustrates thegeographic proximity 50. Once themobile device 22 is informed of thecurrent location 142 a of thecontroller 30, exemplary embodiments may determine thegeographic proximity 50 based on wireless reception. Theelectronic push notification 100 causes themobile device 22 to launch or awaken the proximity application 110 (as earlier explained). Theproximity application 110 causes themobile device 22 to initiate wireless communication with thetransceiver 62 in thecontroller 30 using cellular, wireless fidelity (“WI-FI”), BLUETOOTH®, or any other short-range or near-field technology. If themobile device 22 and thecontroller 30 can establish communication using the wireless peer-to-peer network 60, then exemplary embodiments may infer or conclude that themobile device 22 is within thegeographic proximity 50 of thecontroller 30. Thecontroller 30 and themobile device 22 may thus communicate using theshorter communications path 52 offered by the wireless peer-to-peer network 60. However, if themobile device 22 and thecontroller 30 cannot establish communication using the wireless peer-to-peer network 60, exemplary embodiments may conclude that themobile device 22 is not within thegeographic proximity 50 of thecontroller 30. -
FIGS. 13-14 are schematics illustrating routing paths, according to exemplary embodiments.FIG. 13 illustrates an exemplary routing of thevideo data 28 when proximity is not determined. For example, if thecontroller 30 and themobile device 22 cannot verify thegeographic proximity 50, thecontroller 30 may route thevideo data 28 into the widearea communications network 40. Thevideo data 28 traverses links and segments in the widearea communications network 40 for eventual routing into thecellular network 42 for wireless transmission to themobile device 22. Again, this routing may traverse many miles, consuming bandwidth and introducing delay and jitter. -
FIG. 14 , though, illustrates theshorter communications path 52. If thecontroller 30 and themobile device 22 authenticate using the wireless peer-to-peer network 60, thecontroller 30 may decline the widearea communications network 40. Thecontroller 30, instead, instructs thewireless transceiver 62 to transmit thevideo data 28 using the wireless peer-to-peer network 60. The wireless peer-to-peer network 60 provides theshorter communications path 52, thus consuming little or perhaps no bandwidth in the widearea communications network 40. Theshorter communications path 52 consumes little or perhaps no bandwidth or electromagnetic spectrum in thecellular network 42. Indeed, the efficiencies are significant, especially considering the cumulative effects of thousands or even millions of users requesting video data in today's mobile society. -
FIGS. 15-17 are schematics illustrating additional routing examples, according to exemplary embodiments. Even if themobile device 22 is proximate thecontroller 30, exemplary embodiments may still implement routing decisions based on radio and network conditions. That is, even if themobile device 22 and thecontroller 30 can communicate using device-to-device protocols, exemplary embodiments may still prefer the widearea communications network 40. Network and radio considerations may influence thecontroller 30 to select a routing into the widearea communications network 40. For example, inFIG. 15 , thecontroller 30 may determine that the wireless peer-to-peer network 60 is too congested for delivery of thevideo data 28. Suppose, for example, that thecontroller 30 determines there is limited or even unavailable bandwidth in the wireless peer-to-peer network 60. Thecontroller 30, then, may resort to the wide area communications network (“WAN”) 40. Indeed, there may be times when the widearea communications network 40 has ample bandwidth, perhaps during off-peak uncongested hours. Thecontroller 30 may thus receive or retrieve aLAN congestion parameter 150 describing congestion or load in the wireless peer-to-peer network 60. Thecontroller application 72 may compare theLAN congestion parameter 150 to aLAN threshold value 152. If theLAN congestion parameter 150 is less than theLAN threshold value 152, then thecontroller 30 may route thevideo data 28 into the wireless peer-to-peer network 60 for wireless transmission to themobile device 22. However, if theLAN congestion parameter 150 is equal to or greater than theLAN threshold value 152, then thecontroller 30 may route thevideo data 28 into the widearea communications network 40 for transmission from thecellular network 42. -
FIG. 16 illustrates further decisional analysis. Here thecontroller 30 may also evaluate the congestion in the widearea communications network 40. Thecontroller 30, for example, may receive aWAN congestion parameter 160 describing congestion or load in the widearea communications network 40. While theWAN congestion parameter 160 may be received from any network element or device,FIG. 16 illustrates anedge router 162 originating theWAN congestion parameter 160 to thecontroller 30. Thecontroller 30 may thus weigh or evaluate the congestion in both the wide area communications network 40 (based on the WAN congestion parameter 160) and in the wireless peer-to-peer network 60 (based on the LAN congestion parameter 150). Thecontroller application 72 may compare theLAN congestion parameter 150 and theWAN congestion parameter 160 torespective threshold values 152 and 154. Thecontroller application 72 may then retrieve one or morelogical rules 166 for selecting which routing is preferred. For example, if cellular bandwidth or spectrum is more plentiful, thecontroller 30 may prefer the widearea communications network 40 and thecellular network 42. If the wireless peer-to-peer network 60 has ample bandwidth, thecontroller 30 may prefer the wireless peer-to-peer network 60. Of course, if themobile device 22 lacks thegeographic proximity 50, thecontroller 30 may default to the widearea communications network 40. -
FIG. 17 illustrates separate video and voice routings. Here thecontroller 30 may also receive or process audio data 170 (such as a digital recording of the voice of the visitor ringing the doorbell 20). Again, as the reader may imagine, many security systems may have both thecamera 26 and amicrophone 172 trained or aimed to capture video and voice of the visitor at the front door. Themicrophone 172 may interface with a voice codec that outputs the packetizedaudio data 170 for receipt by thecontroller 30. Here, then, thecontroller 30 may need to route both thevideo data 28 and theaudio data 170 to the user'smobile device 22 for remote notification. Thecontroller 30 may thus again receive and compare theLAN congestion parameter 150 and/or theWAN congestion parameter 160 and to theirrespective threshold values controller application 72 may then retrieve the logical rule(s) 166 for selecting which routing is preferred. For example, thecontroller 30 may prefer to stream the lowerbandwidth audio data 170 into the widearea communications network 40 and thecellular network 42 to maintain quality of voice data. Thecontroller 30, however, may prefer to route the higher bandwidth stream ofvideo data 28 into the wireless peer-to-peer network 60. Exemplary embodiments may thus prefer high quality, lower bandwidth remote notification of theaudio data 170, thus perhaps ensuring the user'ssmartphone 24 accurately renders the visitor's voice via thecellular network 42. Thevideo data 28 may be delivered by the wireless peer-to-peer network 60 for improved synchronization. Indeed, if congestion is high, exemplary embodiments may sacrifice the quality or timing of thevideo data 28 to ensure voice signals are delivered. - Exemplary embodiments may be applied regardless of networking environment. Exemplary embodiments may be easily adapted to stationary or mobile devices having cellular, wireless fidelity (WI-FI®), near field, and/or BLUETOOTH® capability. Exemplary embodiments may be applied to mobile devices utilizing any portion of the electromagnetic spectrum and any signaling standard (such as the IEEE 802 family of standards, GSM/CDMA/TDMA or any cellular standard, and/or the ISM band). Exemplary embodiments, however, may be applied to any processor-controlled device operating in the radio-frequency domain and/or the Internet Protocol (IP) domain. Exemplary embodiments may be applied to any processor-controlled device utilizing a distributed computing network, such as the Internet (sometimes alternatively known as the “World Wide Web”), an intranet, a local-area network (LAN), and/or a wide-area network (WAN). Exemplary embodiments may be applied to any processor-controlled device utilizing power line technologies, in which signals are communicated via electrical wiring. Indeed, exemplary embodiments may be applied regardless of physical componentry, physical configuration, or communications standard(s).
- Exemplary embodiments may be applied to other networking environments. For example, the
controller 30 and themobile device 22 may establish BLUETOOTH® and/or other near-field communications links. If the user'smobile device 22 and thecontroller 30 can establish device-to-device communication using a BLUETOOTH® and/or other near-field communications link, exemplary embodiments may conclude or infer that themobile device 22 and thecontroller 30 are geographically close to each other. Device-to-device communication alleviates broadband usage of the widearea communications network 40 and thecellular network 42, as previously explained. - Exemplary embodiments may be applied to video storage. While the
controller 30 is described as a component of thesecurity system 32, exemplary embodiments may be applied to any operating environment. For example, thecontroller 30 may be a component of a video storage system. Thecontroller 30 may control or manage access to stored content, whether rented or owned. In other words, thecontroller 30 may control or manage access to a vault that stores home videos, digital pictures and other electronic images, music, software applications, backup and archival data, and any other electronic content or information. Thecontroller 30 may still have multiple transmitters for multiple network interfaces, and/or thecontroller 30 may communicate with a router also having multiple transmitters for multiple network interfaces. Indeed, exemplary embodiments may be applied to any device-to-device opportunity. - Exemplary embodiments may utilize any processing component, configuration, or system. Any processor could be multiple processors, which could include distributed processors or parallel processors in a single machine or multiple machines. The processor can be used in supporting a virtual processing environment. The processor could include a state machine, application specific integrated circuit (ASIC), programmable gate array (PGA) including a Field PGA, or state machine. When any of the processors execute instructions to perform “operations”, this could include the processor performing the operations directly and/or facilitating, directing, or cooperating with another device or component to perform the operations.
-
FIG. 18 is a flowchart illustrating an algorithm for efficient routing, according to exemplary embodiments. Thecontroller 30 determines remote notification is required (Block 200). Thecontroller 30 retrieves the remote notification address 84 (Block 202) and notifies the push notification provider (Block 204). The push notification provider sends thepush notification 100 to the remote notification address 84 (Block 206). Theproximity application 110 executes (Block 208). Thecontroller application 72 and theproximity application 110 cooperate to determine thegeographic proximity 50 between thecontroller 30 and the mobile device 22 (Block 210). Thecontroller 30 selects a routing based on the geographic proximity 50 (Block 212). -
FIG. 19 is a schematic illustrating still more exemplary embodiments.FIG. 19 is a more detailed diagram illustrating a processor-controlleddevice 300. As earlier paragraphs explained, thecontroller application 72 and/or theproximity application 110 may partially or entirely operate in any mobile or stationary processor-controlled device.FIG. 19 , then, illustrates thecontroller application 72 and/or theproximity application 110 stored in a memory subsystem of the processor-controlleddevice 300. One or more processors communicate with the memory subsystem and execute either, some, or all applications. Because the processor-controlleddevice 300 is well known to those of ordinary skill in the art, no further explanation is needed. -
FIG. 20 depicts other possible operating environments for additional aspects of the exemplary embodiments.FIG. 20 illustrates thecontroller application 72 and/or theproximity application 110 operating within various other processor-controlleddevices 300.FIG. 20 , for example, illustrates that thecontroller application 72 and/or theproximity application 110 may entirely or partially operate within a set-top box (“STB”) (302), a personal/digital video recorder (PVR/DVR) 304, a Global Positioning System (GPS)device 308, aninteractive television 310, atablet computer 312, or any computer system, communications device, or processor-controlled device utilizing any of the processors above described and/or a digital signal processor (DP/DSP) 314. Even if the processor-controlleddevice 300 lacks GPS capability, the processor-controlleddevice 300 may be pre-configured with fixed GPS coordinates, perhaps representing an installed or operating location. For example, the processor-controlleddevice 300 may be a wired or wireless router. Regardless, a user interface may permit entry of GPS coordinates after installation and/or a relocation. Moreover, the processor-controlleddevice 300 may also include wearable devices (such as watches), radios, vehicle electronics, clocks, printers, gateways, mobile/implantable medical devices, and other apparatuses and systems. Because the architecture and operating principles of thevarious devices 300 are well known, the hardware and software componentry of thevarious devices 300 are not further shown and described. -
FIGS. 21-23 are schematics further illustrating various communications devices for presenting ring tones, according to exemplary embodiments.FIG. 21 is a block diagram of aSubscriber Identity Module 300, whileFIGS. 22 and 23 illustrate, respectively, theSubscriber Identity Module 300 embodied in aplug 302 and in acard 304. As those of ordinary skill in the art recognize, theSubscriber Identity Module 300 may be used in conjunction with many communications devices (such as themobile device 22 and the controller 30). TheSubscriber Identity Module 300 stores user information (such as the user's International Mobile Subscriber Identity, the user's K number, and other user information) and any portion of thecontroller application 72 and/or theproximity application 110. As those of ordinary skill in the art also recognize, theplug 302 and thecard 304 each may interface with themobile device 22 and/or thecontroller 30. -
FIG. 21 is a block diagram of theSubscriber Identity Module 300, whether embodied as theplug 302 ofFIG. 22 or as thecard 304 ofFIG. 23 . Here theSubscriber Identity Module 300 comprises a microprocessor 306 (μP) communicating withmemory modules 308 via adata bus 310. Thememory modules 308 may include Read Only Memory (ROM) 312, Random Access Memory (RAM) and orflash memory 314, and Electrically Erasable-Programmable Read Only Memory (EEPROM) 316. TheSubscriber Identity Module 300 stores some or all of thecontroller application 72 and/or theproximity application 110 in one or more of thememory modules 308.FIG. 21 shows thecontroller application 72 and/or theproximity application 110 residing in the Erasable-Programmable Read OnlyMemory 316, yet either module may alternatively or additionally reside in the Read OnlyMemory 312 and/or the Random Access/Flash Memory 314. An Input/Output module 318 handles communication between theSubscriber Identity Module 300 and the communications device. Because Subscriber Identity Modules are well known in the art, this patent will not further discuss the operation and the physical/memory structure of theSubscriber Identity Module 300. -
FIG. 24 is a schematic further illustrating the operating environment, according to exemplary embodiments.FIG. 24 is a block diagram illustrating some componentry of themobile device 22 and/or thecontroller 30. The componentry may include one or moreradio transceiver units 352, anantenna 354, adigital baseband chipset 356, and a man/machine interface (MMI) 358. Thetransceiver unit 352 includestransmitter circuitry 360 andreceiver circuitry 362 for receiving and transmitting radio-frequency (RF) signals. Thetransceiver unit 352 couples to theantenna 354 for converting electrical current to and from electromagnetic waves. Thedigital baseband chipset 356 contains a digital signal processor (DSP) 364 and performs signal processing functions for audio (voice) signals and RF signals. AsFIG. 24 shows, thedigital baseband chipset 356 may also include an on-board microprocessor 366 that interacts with the man/machine interface (MMI) 358. The man/machine interface (MMI) 358 may comprise adisplay device 368, akeypad 370, and theSubscriber Identity Module 300. The on-board microprocessor 366 may also interface with theSubscriber Identity Module 300 and with thecontroller application 72 and/or theproximity application 110. - Exemplary embodiments may be applied to any signaling standard. As those of ordinary skill in the art recognize,
FIGS. 21-24 may illustrate a Global System for Mobile (GSM) communications device. That is, the communications device may utilize the Global System for Mobile (GSM) communications signaling standard. Those of ordinary skill in the art, however, also recognize that exemplary embodiments are equally applicable to any communications device utilizing the Time Division Multiple Access signaling standard, the Code Division Multiple Access signaling standard, the “dual-mode” GSM-ANSI Interoperability Team (GAIT) signaling standard, or any variant of the GSM/CDMA/TDMA signaling standard. Exemplary embodiments may also be applied to other standards, such as the I.E.E.E. 802 family of standards, the Industrial, Scientific, and Medical band of the electromagnetic spectrum, BLUETOOTH®, and any other. - Exemplary embodiments may be physically embodied on or in a computer-readable storage medium. This computer-readable medium, for example, may include CD-ROM, DVD, tape, cassette, floppy disk, optical disk, memory card, memory drive, and large-capacity disks. This computer-readable medium, or media, could be distributed to end-subscribers, licensees, and assignees. A computer program product comprises processor-executable instructions for optimized routing, as the above paragraphs explained.
- While the exemplary embodiments have been described with respect to various features, aspects, and embodiments, those skilled and unskilled in the art will recognize the exemplary embodiments are not so limited. Other variations, modifications, and alternative embodiments may be made without departing from the spirit and scope of the exemplary embodiments.
Claims (20)
1. A device comprising:
a processing system including a processor; and
a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations comprising:
receiving a message identifying a proximity application;
executing the proximity application;
determining, using the proximity application, dual communications paths to a system comprising a controller in communication with a plurality of devices;
selecting a peer connectivity of the dual communications paths for communications with the system; and
identifying a logical rule regarding the selecting.
2. The device of claim 1 , wherein the message is received from a cloud-based service.
3. The device of claim 1 , wherein the plurality of devices comprises a plurality of sensors, and wherein the system comprises a sensory event notification system.
4. The device of claim 1 , wherein the peer connectivity facilitates wireless communication between the processing system and the controller.
5. The device of claim 1 , wherein the proximity application executes on a wireless device.
6. The device of claim 5 , wherein the operations further comprise registering the wireless device.
7. The device of claim 5 , wherein the operations further comprise determining the peer connectivity of the wireless device to the system.
8. The device of claim 1 wherein the operations further comprise receiving a wireless network broadcast by the system.
9. The device of claim 1 , wherein the operations further comprise determining a cellular network as the peer connectivity.
10. The device of claim 1 , wherein the operations further comprise determining a congestion associated with at least one of the dual communications paths.
11. A method comprising:
receiving, by a processing system including a processor of a wireless device, a message identifying a proximity application;
executing, by the processing system, the proximity application;
determining, by the processing system using the proximity application, dual communications paths to a system comprising a controller in communication with a plurality of devices;
selecting, by the processing system, a peer connectivity of the dual communications paths for communications with the system; and
identifying, by the processing system, a logical rule regarding the selecting.
12. The method of claim 11 , wherein the message is received from a cloud-based service.
13. The method of claim 11 , wherein the plurality of devices comprises a plurality of sensors, and wherein the system comprises a sensory event notification system.
14. The method of claim 11 , wherein the peer connectivity facilitates wireless communication between the processing system and the controller.
15. The method of claim 11 , further comprising determining, by the processing system, the peer connectivity of the wireless device to the system.
16. A non-transitory machine-readable medium comprising executable instructions that, when executed by a processing system including a processor of a mobile device, facilitate performance of operations comprising:
receiving a message identifying a proximity application;
executing the proximity application;
determining, using the proximity application, dual communications paths to a system comprising a controller in communication with a plurality of devices;
selecting a peer connectivity of the dual communications paths for communications with the system; and
identifying a logical rule regarding the selecting.
17. The non-transitory machine-readable medium of claim 16 , wherein the message is received from a cloud-based service.
18. The non-transitory machine-readable medium of claim 16 , wherein the plurality of devices comprises a plurality of sensors, and wherein the system comprises a sensory event notification system.
19. The non-transitory machine-readable medium of claim 16 , wherein the peer connectivity facilitates wireless communication between the processing system and the controller.
20. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise determining the peer connectivity of the mobile device to the system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/162,241 US20230179524A1 (en) | 2015-05-17 | 2023-01-31 | Optimized routing in connected environments |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/714,296 US10057172B2 (en) | 2015-05-17 | 2015-05-17 | Optimized routing in connected environments |
US16/040,600 US10958578B2 (en) | 2015-05-17 | 2018-07-20 | Optimized routing in connected environments |
US17/156,777 US11595310B2 (en) | 2015-05-17 | 2021-01-25 | Optimized routing in connected environments |
US18/162,241 US20230179524A1 (en) | 2015-05-17 | 2023-01-31 | Optimized routing in connected environments |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/156,777 Continuation US11595310B2 (en) | 2015-05-17 | 2021-01-25 | Optimized routing in connected environments |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230179524A1 true US20230179524A1 (en) | 2023-06-08 |
Family
ID=57277260
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/714,296 Active 2035-10-03 US10057172B2 (en) | 2015-05-17 | 2015-05-17 | Optimized routing in connected environments |
US16/040,600 Active US10958578B2 (en) | 2015-05-17 | 2018-07-20 | Optimized routing in connected environments |
US17/156,777 Active 2035-09-04 US11595310B2 (en) | 2015-05-17 | 2021-01-25 | Optimized routing in connected environments |
US18/162,241 Abandoned US20230179524A1 (en) | 2015-05-17 | 2023-01-31 | Optimized routing in connected environments |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/714,296 Active 2035-10-03 US10057172B2 (en) | 2015-05-17 | 2015-05-17 | Optimized routing in connected environments |
US16/040,600 Active US10958578B2 (en) | 2015-05-17 | 2018-07-20 | Optimized routing in connected environments |
US17/156,777 Active 2035-09-04 US11595310B2 (en) | 2015-05-17 | 2021-01-25 | Optimized routing in connected environments |
Country Status (1)
Country | Link |
---|---|
US (4) | US10057172B2 (en) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11716575B2 (en) | 2011-12-23 | 2023-08-01 | Shenzhen Shokz Co., Ltd. | Bone conduction speaker and compound vibration device thereof |
US10057172B2 (en) * | 2015-05-17 | 2018-08-21 | At&T Intellectual Property I, L.P. | Optimized routing in connected environments |
US10257474B2 (en) * | 2016-06-12 | 2019-04-09 | Apple Inc. | Network configurations for integrated accessory control |
US10965899B1 (en) * | 2017-04-17 | 2021-03-30 | Alarm.Com Incorporated | System and method for integration of a television into a connected-home monitoring system |
US10805613B2 (en) | 2018-02-20 | 2020-10-13 | Netgear, Inc. | Systems and methods for optimization and testing of wireless devices |
US11272189B2 (en) | 2018-02-20 | 2022-03-08 | Netgear, Inc. | Adaptive encoding in security camera applications |
US11064208B2 (en) * | 2018-02-20 | 2021-07-13 | Arlo Technologies, Inc. | Transcoding in security camera applications |
US10742998B2 (en) | 2018-02-20 | 2020-08-11 | Netgear, Inc. | Transmission rate control of data communications in a wireless camera system |
US11102492B2 (en) | 2018-02-20 | 2021-08-24 | Arlo Technologies, Inc. | Multi-sensor motion detection |
US11558626B2 (en) | 2018-02-20 | 2023-01-17 | Netgear, Inc. | Battery efficient wireless network connection and registration for a low-power device |
US11756390B2 (en) | 2018-02-20 | 2023-09-12 | Arlo Technologies, Inc. | Notification priority sequencing for video security |
US11076161B2 (en) | 2018-02-20 | 2021-07-27 | Arlo Technologies, Inc. | Notification priority sequencing for video security |
US11153198B2 (en) * | 2019-01-31 | 2021-10-19 | Sensata Technologies, Inc. | Hybrid communication between battery sensor nodes of a battery management system |
US11159772B2 (en) * | 2019-02-28 | 2021-10-26 | Arlo Technologies, Inc. | Electronic doorbell system with camera selection |
CN114979013B (en) * | 2022-05-17 | 2023-12-05 | 南京邮电大学 | Multi-mode service-oriented transmission mode selection and resource allocation method |
CN114980248B (en) * | 2022-08-01 | 2022-11-15 | 深圳市信润富联数字科技有限公司 | Wireless networking method, device, equipment and storage medium |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856346B2 (en) * | 2004-01-15 | 2014-10-07 | Unwired Planet, Llc | Stateful push notifications |
US20060221182A1 (en) | 2005-04-01 | 2006-10-05 | Sham John C | Security surveillance viewing and recording assembly |
US8619136B2 (en) | 2006-12-01 | 2013-12-31 | Centurylink Intellectual Property Llc | System and method for home monitoring using a set top box |
US9003488B2 (en) * | 2007-06-06 | 2015-04-07 | Datavalet Technologies | System and method for remote device recognition at public hotspots |
US9516116B2 (en) * | 2008-06-06 | 2016-12-06 | Apple Inc. | Managing notification service connections |
US8135392B2 (en) * | 2008-06-06 | 2012-03-13 | Apple Inc. | Managing notification service connections and displaying icon badges |
GB2469472B (en) * | 2009-04-14 | 2014-08-20 | Skype | Optimising communications |
MX2012014329A (en) * | 2010-06-17 | 2013-01-29 | Nokia Siemens Networks Oy | Improved peer-to-peer system. |
US20120149344A1 (en) | 2010-12-09 | 2012-06-14 | Dasgupta Sudeep | Method and System for Remote Notification and Answering of a Visitor at a Dooor |
US20120182382A1 (en) | 2011-01-16 | 2012-07-19 | Pedro Serramalera | Door mounted 3d video messaging system |
CN102254385B (en) | 2011-03-25 | 2013-09-25 | 宇龙计算机通信科技(深圳)有限公司 | Control method and system of doorbell response |
US20130045763A1 (en) | 2011-04-28 | 2013-02-21 | Cellnock Corporation | System and method for providing notice of visitor |
US8812661B2 (en) * | 2011-08-16 | 2014-08-19 | Facebook, Inc. | Server-initiated bandwidth conservation policies |
US20130057695A1 (en) | 2011-09-07 | 2013-03-07 | Timothy J. Huisking | Method and apparatus for unlocking/locking a door and enabling two-way communications with a door security system via a smart phone |
US9197600B2 (en) * | 2011-09-29 | 2015-11-24 | Israel L'Heureux | Smart router |
US20140070922A1 (en) | 2012-09-10 | 2014-03-13 | Garry Davis | Doorbell system, apparatus, and method |
CN102915630A (en) | 2012-10-10 | 2013-02-06 | 鸿富锦精密工业(深圳)有限公司 | Remote doorbell control system and intelligent doorbell device thereof |
KR101514394B1 (en) | 2013-07-02 | 2015-04-24 | 주식회사 슈어컴 | Outdoor doorbell apparatus and system of identifying visitor using wireless wifi communication and methods thereof |
US20150022618A1 (en) | 2013-07-18 | 2015-01-22 | Bot Home Automation Inc. | Wireless Entrance Communication Device |
US9060104B2 (en) * | 2013-07-26 | 2015-06-16 | SkyBell Technologies, Inc. | Doorbell communication systems and methods |
US8953040B1 (en) | 2013-07-26 | 2015-02-10 | SkyBell Technologies, Inc. | Doorbell communication and electrical systems |
US9058738B1 (en) * | 2013-07-26 | 2015-06-16 | SkyBell Technologies, Inc. | Doorbell communication systems and methods |
US9094584B2 (en) * | 2013-07-26 | 2015-07-28 | SkyBell Technologies, Inc. | Doorbell communication systems and methods |
US9165444B2 (en) | 2013-07-26 | 2015-10-20 | SkyBell Technologies, Inc. | Light socket cameras |
US9948690B2 (en) * | 2013-08-15 | 2018-04-17 | Comcast Cable Communications, Llc | Caching media in a media fling system |
CN103473839A (en) | 2013-09-13 | 2013-12-25 | 惠州Tcl移动通信有限公司 | Implementation method and implementation system of intelligent video access control system |
EP2997768B1 (en) * | 2014-02-10 | 2018-03-14 | SZ DJI Technology Co., Ltd. | Adaptive communication mode switching |
US20160044165A1 (en) * | 2014-08-11 | 2016-02-11 | Vonage Network, Llc | On-board handling of caller identification for wireless telephony device |
WO2016041569A1 (en) * | 2014-09-15 | 2016-03-24 | Nokia Solutions And Networks Oy | Wi-fi signaling network insight delivery |
US10804958B2 (en) * | 2015-02-24 | 2020-10-13 | Comcast Cable Communications, Llc | Multi-bitrate video with dynamic blocks |
US9270634B1 (en) * | 2015-03-02 | 2016-02-23 | Dewmobile, Inc. | Building a proximate social networking database based on relative distance profiling of two or more operably coupled computers |
US10085294B2 (en) * | 2015-03-06 | 2018-09-25 | Apple Inc. | Determining when to establish connection between mobile client and proxy devices |
US10375620B2 (en) * | 2015-03-06 | 2019-08-06 | Apple Inc. | Determining routing of proxy traffic between mobile client and proxy devices |
US10057172B2 (en) * | 2015-05-17 | 2018-08-21 | At&T Intellectual Property I, L.P. | Optimized routing in connected environments |
-
2015
- 2015-05-17 US US14/714,296 patent/US10057172B2/en active Active
-
2018
- 2018-07-20 US US16/040,600 patent/US10958578B2/en active Active
-
2021
- 2021-01-25 US US17/156,777 patent/US11595310B2/en active Active
-
2023
- 2023-01-31 US US18/162,241 patent/US20230179524A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20180331956A1 (en) | 2018-11-15 |
US20210152475A1 (en) | 2021-05-20 |
US11595310B2 (en) | 2023-02-28 |
US20160337243A1 (en) | 2016-11-17 |
US10057172B2 (en) | 2018-08-21 |
US10958578B2 (en) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11595310B2 (en) | Optimized routing in connected environments | |
CN109845332B (en) | Mobile device relay service for reliable internet of things | |
US10039071B2 (en) | Systems, apparatus, and methods for association in multi-hop networks | |
US10764809B2 (en) | Mesh connection systems and algorithms for connecting devices through intermediate nodes | |
EP3764669B1 (en) | Communications network for conveying short message service sms messages | |
US20230209334A1 (en) | Methods and apparatus for secure voice communications | |
US20220225061A1 (en) | Communication method and device in wireless communication system supporting edge computing | |
TW201605196A (en) | System, electronic device and method | |
JP2016541163A (en) | System, method and device for changing relay operation of a wireless device | |
US11290982B2 (en) | Notifications concerning UE unreachability | |
US9439169B2 (en) | Reducing paging delays using location analytics in communications networks | |
EP4342157A1 (en) | Exchanging status messages during a call | |
CN107637047B (en) | Aggregating targets and exploring queries | |
US20180368190A1 (en) | Transmission of data over client probe frames | |
CN117083888A (en) | Establishing a data connection with an emergency control center via a RAN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: AT&T INTELLECTUAL PROPERTY I, L.P., GEORGIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CUI, ZHI;WU, JING;SIGNING DATES FROM 20150513 TO 20150515;REEL/FRAME:062674/0845 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |