A method and system facilitate communications between an unassociated device and a server via a mesh network and a wide area network. The method may include receiving transmissions from candidate proxy devices, wherein each candidate proxy device is associated with a mesh network. The method may include selecting a proxy device from the candidate proxy devices. The method may include communicating with a server via the proxy device and the associated mesh network.
|
1. A method of optimizing communication paths within a mesh network, comprising:
initiating a mesh network, the mesh network including a first mesh device, a second mesh device and an access point, the mesh devices each including a neighbor information table and a temporary path table;
receiving registration information and periodically transmitted information by the access point from each mesh device, wherein the periodically transmitted information comprises the neighbor information table associated with a respective mesh device;
storing the received registration information and the periodically transmitted information in an accessible memory of the access point;
responsive to a predetermined trigger, calculating, by the access point, an optimal path from the first mesh device to the access point, wherein the optimal path is calculated using the received periodically transmitted information and includes a set of mesh device addresses corresponding to a set of intermediate mesh devices along which a message can be forwarded; and
transmitting the calculated optimal path by the access point to the first mesh device and the set of intermediate mesh devices;
the method further comprising:
transmitting a first message from the first mesh device to the access point, wherein each of the first mesh device and a set of intermediate mesh devices forward the first message to a respective next mesh device selected from the neighbor information table as being closer to the access point;
storing, by each of the mesh devices receiving the first message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
transmitting a second message from the access point to the first mesh device by forwarding the second message according to the entries in the respective temporary path tables of the mesh devices that received the first message.
11. A non-transitory computer readable storage medium with an executable program stored thereon, wherein the program instructs a processor to perform the following steps of a method for optimizing communication paths within a mesh network, comprising:
initiating a mesh network, the mesh network including a first mesh device, a second mesh device and an access point, the mesh devices each including a neighbor information table and a temporary path table;
receiving registration information and periodically transmitted information by the access point from each mesh device, wherein the periodically transmitted information comprises the neighbor information table associated with a respective mesh device;
storing the received registration information and the periodically transmitted information in an accessible memory of the access point;
responsive to a predetermined trigger, calculating, by the access point, an optimal path from the first mesh device to the access point, wherein the optimal path is calculated using the received periodically transmitted information and includes a set of mesh device addresses corresponding to a set of intermediate mesh devices along which a message can be forwarded; and
transmitting the calculated optimal path by the access point to the first mesh device and the set of intermediate mesh devices;
the method further comprising:
transmitting a first message from the first mesh device to the access point, wherein each of the first mesh device and a set of intermediate mesh devices forward the first message to a respective next mesh device selected from the neighbor information table as being closer to the access point;
storing, by each of the mesh devices receiving the first message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
transmitting a second message from the access point to the first mesh device by forwarding the second message according to the entries in the respective temporary path tables of the mesh devices that received the first message.
17. A system for optimizing communication paths within a mesh network, comprising:
a mesh network including a first mesh device, a second mesh device, at least one intermediate mesh device and an access point,
wherein the mesh devices each comprise:
a transceiver for transmitting signals to the mesh network or for receiving signals from the mesh network, and a memory for storing a neighbor information table and a temporary path table, and
wherein the access point comprises:
a receiver receiving registration information and periodically transmitted information from each mesh device, wherein the periodically transmitted information comprises the neighbor information table associated with the respective mesh device;
a memory storage for storing the received registration information and the received periodically transmitted information in an accessible memory;
a processor logic, responsive to a predetermined trigger, for calculating an optimal path from the first mesh device to the access point using the received periodically transmitted information, wherein the optimal path includes a set of mesh device addresses corresponding to a set of intermediate mesh devices along which a message can be forwarded; and
a transmitter for transmitting the calculated optimal path to the first mesh device and to the set of intermediate mesh devices,
and wherein the mesh devices each include a processor operative to control the transceiver and to execute instructions:
(a) to transmit a first message from the first mesh device to the access point, wherein each of the first mesh device and the set of intermediate mesh devices forward the first message to a respective next mesh device selected from the neighbor information table as being closer to the access point;
(b) to store, by each of the mesh devices receiving the first message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
(c) to transmit a second message from the access point message according to the entries in the respective temporary path tables of the mesh devices that received the first message.
2. The method according to
reversing the optimal path from the first mesh device to the access point to arrive at an optimal path from the access point to the first mesh device, and
transmitting a third message from the access point to the first mesh device including the optimal path from the access point to the first mesh device.
3. The method according to
executing a route discovery routine including broadcasting a request for determining at least one path from the first mesh device to the second mesh device;
transmitting a fourth message from the first mesh device to the second mesh device using a path determined by the route discovery routine;
storing, by each of the mesh devices receiving the fourth message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
transmitting a fifth message from the second mesh device to the first mesh device by forwarding the fifth message according to the entries in the respective temporary path tables of the second mesh device and of the intermediate mesh devices that received the third message.
4. The method according to
broadcasting the request by the first mesh device to neighboring mesh devices;
checking, by each of the neighboring mesh devices, if it is the second mesh device;
if a neighboring mesh device is the second mesh device, answering to the first mesh device with route information, and
if a neighboring mesh device is not the second mesh device, re-broadcasting the request.
5. The method according to
6. The method according to
7. The method according to
receiving, at an intermediate mesh device, the first message from the first mesh device for forwarding to the access point, wherein the request to transmit the first message to the access point is indicated in a header of the first message;
receiving neighbor information from a set of neighboring mesh devices;
selecting the next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point;
storing an entry in the temporary path table in an accessible memory of the intermediate mesh device, wherein the entry includes an address of the first mesh device and an address of the next mesh device;
the method further comprising:
receiving, at the intermediate mesh device, an answer from the next mesh device;
retrieving the entry in the temporary path table from the accessible memory; and
forwarding the answer toward the first mesh device using the retrieved entry.
8. The method according to
9. The method of
responsive to a failure to receive an acknowledgement for the transmitted first message, selecting, by the intermediate mesh device, another next mesh device from the set of neighboring mesh devices and transmitting the first message to the another next mesh device.
10. The method of
responsive to receiving the neighbor information, updating the neighbor information table in the accessible memory of the intermediate mesh device.
12. The non-transitory computer readable storage medium of
reversing the optimal path from the first mesh device to the access point to arrive at an optimal path from the access point to the first mesh device, and
transmitting a third message from the access point to the first mesh device including the optimal path from the access point to the first mesh device.
13. The non-transitory computer readable storage medium of
executing a route discovery routine including broadcasting a request for determining at least one path from the first mesh device to the second mesh device;
transmitting a fourth message from the first mesh device to the second mesh device using a path determined by the route discovery routine;
storing, by each of the mesh devices receiving the fourth message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
transmitting a fifth message from the second mesh device to the first mesh device by forwarding the fifth message according to the entries in the respective temporary path tables of the second mesh device and of the intermediate mesh devices that received the third message.
14. The non-transitory computer readable storage medium of
receiving, at an intermediate mesh device, the first message from the first mesh device for forwarding to the access point, wherein the request to transmit the first message to the access point is indicated in a header of the first message;
receiving neighbor information from a set of neighboring mesh devices;
selecting the next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point;
storing an entry in the temporary path table in an accessible memory of the intermediate mesh device, wherein the entry includes an address of the first mesh device and an address of the next mesh device;
the method further comprising:
receiving, at the intermediate mesh device, an answer from the next mesh device;
retrieving the entry in the temporary path table from the accessible memory; and
forwarding the answer toward the first mesh device using the retrieved entry.
15. The non-transitory computer readable storage medium of
responsive to a failure to receive an acknowledgement for the transmitted first message, selecting, by the intermediate mesh device, another next mesh device from the set of neighboring mesh devices and transmitting the first message to the another next mesh device.
16. The non-transitory computer readable storage medium of
responsive to receiving the neighbor information, updating the neighbor information table in the accessible memory of the intermediate mesh device.
18. The system according to
(d) to transmit a third message from the first mesh device to the second mesh device using a path determined by the route discovery routine;
(e) to store, by each of mesh devices receiving the third message from a transmitting mesh device, an entry in the temporary path table including the respective transmitting mesh device; and
(f) to transmit a fourth message from the second mesh device to the first mesh device by forwarding the fourth message according to the entries in the respective temporary path tables of the second mesh device and of the intermediate mesh devices that received the third message.
19. The system according to
20. The system according to
21. The system according to
(d) to transmit the first message from the first mesh device to the access point, using tree routing, comprising:
i) receiving, at an intermediate mesh device, the first message from the first mesh device for forwarding to the access point, wherein the request to transmit the first message to the access point is indicated in a header of the first message;
ii) receiving neighbor information from a set of neighboring mesh devices;
iii) selecting the next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point;
iv) storing an entry in the temporary path table in an accessible memory of the intermediate mesh device, wherein the entry includes an address of the first mesh device and an address of the next mesh device;
and the processor of the mesh devices is further operable to execute instructions;
(e) to receive, at the intermediate mesh device, an answer from the next mesh device;
(f) to retrieve the entry in the temporary path table from the accessible memory; and
(g) to forward the answer toward the first mesh device using the retrieved entry.
|
This application is a continuation of U.S. patent application Ser. No. 12/275,238, entitled “Communication and Message Route Optimization and Messaging in a Mesh Network,” filed Nov. 21, 2008 now U.S. Pat. No. 8,144,596, which claims the benefit of priority to the following U.S. provisional patent applications, all of which are incorporated herein by reference in their entirety:
This application hereby references and incorporates by reference each of the following U.S. patent applications:
This invention pertains generally to methods and systems for routing communications and messages within a mesh network and more particularly to routing algorithms that optimize mesh network resource use.
A mesh network is a wireless network configured to route data between mesh device nodes within the network. It allows for continuous connections and reconfigurations around broken or blocked paths by retransmitting messages from node to node until a destination is reached. Mesh networks differ from other networks in that nodes can all connect to each other via multiple hops. Thus, mesh networks are self-healing: the network remains operational when a node or a connection fails.
Advanced Metering Infrastructure (AMI) or Advanced Metering Management (AMM) are systems that measure, collect and analyze utility usage, from advanced devices such as electricity meters, gas meters, and water meters, through a network on request or a pre-defined schedule. This infrastructure includes hardware, software, communications, customer associated systems and mesh device Data management software. The infrastructure collects and distributes information to customers, suppliers, utility companies and service providers. This enables these businesses to either participate in, or provide, demand response solutions, products and services. Customers may alter energy usage patterns from normal consumption patterns in response to demand pricing. This improves system load and reliability.
The mesh gate may interface between the mesh network and a server over a wide area network (WAN). Each mesh device may associate with a mesh network and mesh gate, leaving the mesh network vulnerable to a failure in the mesh gate. In addition, there may be limited paths between mesh devices within the mesh network.
An access point periodically calculates an optimal path from each associated mesh device to the access point. The access point also transmits the optimal path to each mesh device. A mesh network routes messages and other communications between nodes. Nodes of the mesh network can include a mesh gate and at least one mesh device. Tree routing may be used to determine an optimal route from a mesh device to the mesh gate via the mesh network by using neighbor information at each mesh device on the path. Source routing may be used to determine an optimal path from the mesh gate to a mesh device by using neighbor information of the entire mesh network at the mesh gate. Mesh routing may be used to determine an optimal route from a first mesh device to a second mesh device. Routes may be periodically optimized for a variety of performance factors.
In one aspect, there is provided a system for optimizing communication paths within a mesh network, including: means for initiating a mesh network, the mesh network including at least one mesh device; a receiver receiving registration information from each mesh device of the mesh network; a memory storage for storing mesh device information in an accessible memory; a processor logic, responsive to predetermined trigger, for calculating an optimal path from each mesh device, wherein the optimal path includes a set of mesh device addresses corresponding to a set of mesh devices along which a message can be forwarded; and a transmitter for transmitting the calculated optimal path to each mesh device.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for optimizing communication paths within a mesh network, including: initiating a mesh network, the mesh network including at least one mesh device; receiving registration information from each mesh device of the mesh network; storing mesh device information in an accessible memory; responsive to predetermined trigger, calculating an optimal path from each mesh device, wherein the optimal path includes a set of mesh device addresses corresponding to a set of mesh devices along which a message can be forwarded; and transmitting the calculated optimal path to each mesh device.
In another aspect, there is provided a method for transmitting a message over a mesh network via a routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; identifying a next mesh device from among a plurality of neighbor mesh devices; and transmitting the message to the identified next mesh device.
In another aspect, there is provided a method for transmitting a message over a mesh network via a routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; and identifying a next mesh device from among a plurality of neighbor mesh devices, the next mesh device being identified by one of: (i) using tree routing comprising: receiving neighbor information from a set of neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device from the set of neighboring mesh devices in response to a request to transmit a message to the access point, wherein the next mesh device is closer to the access point; (ii) using source routing comprising: identifying the next mesh device by receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; or (iii) using mesh routing comprising: broadcasting an optimal path query to neighboring mesh devices in response to a request to transmit a message to a receiving mesh device; receiving replies from the neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device by calculating an optimal path, the optimal path including an address of a next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via a routing, the system including: means associating a first mesh device with a mesh network, the mesh network managed by an access point; and means for identifying a next mesh device from among a plurality of neighbor mesh devices, the next mesh device being identified by one of: (i) using tree routing comprising: receiving neighbor information from a set of neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device from the set of neighboring mesh devices in response to a request to transmit a message to the access point, wherein the next mesh device is closer to the access point; (ii) using source routing comprising: identifying the next mesh device by receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; or (iii) using mesh routing comprising: broadcasting an optimal path query to neighboring mesh devices in response to a request to transmit a message to a receiving mesh device; receiving replies from the neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device by calculating an optimal path, the optimal path including an address of a next mesh device.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for transmitting a message over a mesh network via a routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; and identifying a next mesh device from among a plurality of neighbor mesh devices, the next mesh device being identified by one of: (i) using tree routing comprising: receiving neighbor information from a set of neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device from the set of neighboring mesh devices in response to a request to transmit a message to the access point, wherein the next mesh device is closer to the access point; (ii) using source routing comprising: identifying the next mesh device by receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; or (iii) using mesh routing comprising: broadcasting an optimal path query to neighboring mesh devices in response to a request to transmit a message to a receiving mesh device; receiving replies from the neighboring mesh devices; and identifying the next mesh device by selecting a next mesh device by calculating an optimal path, the optimal path including an address of a next mesh device.
In another aspect, there is provided a method for transmitting a message over a mesh network via tree routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; receiving neighbor information from a set of neighboring mesh devices; responsive to a request to transmit a message to the access point, selecting a next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point; and transmitting the message to the next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via tree routing, the system including: an association logic unit for associating a first mesh device with a mesh network, the mesh network managed by an access point; a receiver for receiving neighbor information from a set of neighboring mesh devices; a selection logic unit responsive to a request to transmit a message to the access point, selecting a next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point; and a transmitter for transmitting the message to the next mesh device.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for transmitting a message over a mesh network via tree routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; receiving neighbor information from a set of neighboring mesh devices; responsive to a request to transmit a message to the access point, selecting a next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point; and transmitting the message to the next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via tree routing, the system including: means for associating a first mesh device with a mesh network, the mesh network managed by an access point; means for receiving neighbor information from a set of neighboring mesh devices; means responsive to a request for transmitting a message to the access point, selecting a next mesh device from the set of neighboring mesh devices, wherein the next mesh device is closer to the access point; and means for transmitting the message to the next mesh device.
In another aspect, there is provided a method for transmitting a message over a mesh network via source routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; and responsive to a request to transmit a message to the access point, transmitting the message to the next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via source routing, the system including: an association logic unit for associating a first mesh device with a mesh network, the mesh network managed by an access point; a receiver for receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; and a transmitter responsive to a request to transmit a message to the access point, for transmitting the message to the next mesh device.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for transmitting a message over a mesh network via source routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; and responsive to a request to transmit a message to the access point, transmitting the message to the next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via source routing, the system including: means for associating a first mesh device with a mesh network, the mesh network managed by an access point; means for receiving a next mesh device address from the access point, wherein the next mesh device is part of an optimal path to the access point; and means responsive to a request to transmit a message to the access point, for transmitting the message to the next mesh device.
In another aspect, there is provided a method for transmitting a message over a mesh network via mesh routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; responsive to a request to transmit a message to a receiving mesh device, broadcasting an optimal path query to neighboring mesh devices; receiving replies from the neighboring mesh devices; calculating an optimal path, the optimal path including an address of a next mesh device; and transmitting the message to the next mesh device.
In another aspect, there is provided a system for transmitting a message over a mesh network via mesh routing, the system including: an association logic unit for associating a first mesh device with a mesh network, the mesh network managed by an access point; a transmitter responsive to a request to transmit a message to a receiving mesh device, for broadcasting an optimal path query to neighboring mesh devices; a receiver for receiving replies from the neighboring mesh devices; a processing logic for calculating an optimal path, the optimal path including an address of a next mesh device; the transmitter being adapted for transmitting the message to the next mesh device.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for transmitting a message over a mesh network via mesh routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; responsive to a request to transmit a message to a receiving mesh device, broadcasting an optimal path query to neighboring mesh devices; receiving replies from the neighboring mesh devices; calculating an optimal path, the optimal path including an address of a next mesh device; and transmitting the message to the next mesh device.
In another aspect, there is provided a method for route discovery within a mesh network via mesh routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; responsive to receiving an optimal path query from a sending mesh device, re-broadcasting the optimal path query to neighboring mesh devices; responsive to receiving an optimal path reply, calculating an optimal path; and replying to the sending mesh device with the optimal path.
In another aspect, there is provided a system for route discovery within a mesh network via mesh routing, the system comprising: means associated with a mesh network, the mesh network managed by an access point; means responsive to receiving an optimal path query from a sending mesh device, for re-broadcasting the optimal path query to neighboring mesh devices; means responsive to receiving an optimal path reply, for calculating an optimal path; and means for replying to the sending mesh device with the optimal path.
In another aspect, there is provided a computer program stored in a computer readable form for execution within a processor and memory associated memory to execute a method for route discovery within a mesh network via mesh routing, the method including: associating a first mesh device with a mesh network, the mesh network managed by an access point; responsive to receiving an optimal path query from a sending mesh device, re-broadcasting the optimal path query to neighboring mesh devices; responsive to receiving an optimal path reply, calculating an optimal path; and replying to the sending mesh device with the optimal path.
Other aspects and features will be apparent from the included description, drawings, and accompanying claims.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
When the forwarding mesh device receives the message, it also looks up a neighbor information table and selects a mesh device closer to the mesh gate. In this way, the message is transmitted from one mesh device to another, until it reaches the mesh gate. A temporary path may be created at each forwarding mesh device. The temporary path may allow a response to be transmitted back to the sending mesh device, if required. Temporary paths may be stored in a memory of forwarding mesh devices for a predetermined interval.
In the example of
In the example of
In the example of
The mesh gate may also be known as a collector, a concentrator, or an access point.
In the example of
In the example of
In the example of
In the example of
In one example embodiment, the server 118 is known as a “head end server” or “head end.”
It will be appreciated that a mesh device association can include a registration for application service at the mesh gate A 102 or the server 118. The mesh gate A102 and the server 118 can maintain a table of available applications and services and requesting mesh devices.
In an alternative, any number of servers may be deployed in the AMI system. For example, servers may be distributed by geographical location for shorter communication distances and latency times. Redundant servers may provide backup and failover capabilities in the AMI system.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In an alternative, the temporary path table may be populated by the mesh gate. The mesh gate may determine an optimal mesh routing path and transmit a temporary path table entry to each mesh device along the path.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In an alternative, the weighting may be dynamically modified to suit the circumstances. For example, if the system detects high traffic congestion, the path value may include a larger weight on the number of hops. In a high traffic network, it may be desirable to reduce the number of hops if possible, even at the expense of lower signal quality.
In an alternative, if the system detects high radio noise, the path value may include a larger weight on signal quality. In a high noise environment, it may be desirable to seek out a path with the best signal to reduce retransmissions.
It will be appreciated that the mesh gate A 102 can maintain a tree structure of optimal paths to each node within the mesh network. This tree can be updated over time as nodes are added and removed from the mesh network and signal quality/strength change. In this way, an optimal path to each node is always available and updated.
It will be appreciated that a mesh device association can include a registration for application service at the mesh gate A 102 or the server 118. The mesh gate A 102 and the server 118 can maintain a table of available applications and services and requesting mesh devices.
A mesh device can be any device configured to participate as a node within a mesh network. An example mesh device is a mesh repeater, which can be a wired device configured to retransmit received mesh transmissions. This extends a range of a mesh network and provides mesh network functionality to mesh devices that enter sleep cycles.
In the example of
In the example of
In the example of
In the example of
In an alternative, the optional metering sensor may be replaced by another component for performing functions within the AMI system. For example, the mesh device may provide a user interface, such as a thermostat or other utilities control. In this example, the metering sensor may be replaced with a thermostat interface. For example, the mesh device may provide a display screen. In this example, the metering sensor may be replaced with a LCD display screen displaying information for the user. For example, the mesh device may be a simple repeater for extending the range of the mesh network. In this example, the mesh device may simply receive and re-transmit mesh transmissions on the mesh network.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In one embodiment, any number of MCUs can exist in the meter 200. For example, two MCUs can be installed, a first MCU for executing firmware handling communication protocols, and a second MCU for handling applications.
In the example of
In the example of
In the example of
In an alternative, mesh devices may be similar to meters except the metering sensor is replaced by whatever component is necessary to perform the mesh device's function. For example, a user display may include an output screen. For example, a thermostat may include a dial for receiving user input and an analog/digital converter to produce an input signal.
It will be appreciated that a mesh device and a mesh gate can share the architecture of meter 200. The radio 202 and the MCU 216 provide the hardware necessary, and the MCU 216 executes any necessary firmware or software.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In one embodiment, an association request can initiate a neighbor information exchange. The neighbor information exchange can include a signal quality in both directions. In some situations, it is possible to have a good signal quality from a first node to a second node in a mesh network, but bad signal quality from the second node to the first node.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In an example of
In the example of
In the example of
In an alternative, if an acknowledgement is not received from the second best mesh device, the mesh device may continue attempting to transmit the message to alternative mesh devices in decreasing order of a path score.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In an alternative, if an acknowledgement is not received from the second best mesh device, the mesh gate may continue attempting to transmit the message to alternative mesh devices in decreasing order of a path score.
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In one embodiment, route discovery can restrict re-broadcasting by signal quality. For example, in a first pass, mesh devices will only re-broadcast to neighbors where a signal exceeds a first threshold. In subsequent passes, the threshold is lowered. In this way, a highest quality signal quality path will be found.
In the example of
In the example of
In the example of
In the example of
In the example of
In an alternative, the route discovery may be executed by a mesh gate accessing the neighbor information of all mesh devices within the mesh network. In this example, the mesh gate may transmit messages to each mesh device along the path, the messages including an entry for the temporary path table of each mesh device to create the mesh route.
In the above procedures, a neighbor exchange can be used to update neighbor information and routing tables. Each mesh device associated with a mesh network periodically generates and transmits a neighbor exchange message that is broadcasted to nearby mesh devices. Each receiving mesh device will also determine a signal quality of the received broadcast, which is stored in a neighborhood table associated with the transmitting mesh device.
An access point such as a NAN-WAN gate and also described as a mesh gate in this and in related applications, may perform any one or more of many different functions including for example, but not limited to, one or any combination of: relaying information from a server (such as to a head end server) to the mesh network nodes, routing information, aggregating information from the nodes and microportals within any sub-network that may be configured for transmission to a server (such as to the head end server), acting as a HAN coordinator, acting as a NAN-WAN gate, transmitting firmware upgrades, and/or multicasting messages. A mesh gate may also be referred to as a collector because it collects information from the NAN-associated or other nodes and/or microportals in its sub-network.
Although the above embodiments have been discussed with reference to specific example embodiments, it will be evident that the various modification, combinations and changes can be made to these embodiments. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than in a restrictive sense. The foregoing specification provides a description with reference to specific exemplary embodiments. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope as set forth in the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.
Patent | Priority | Assignee | Title |
10237756, | Dec 18 2012 | Cisco Technology, Inc. | Optimizing a neighbor list |
Patent | Priority | Assignee | Title |
6704301, | Dec 29 2000 | Hitachi Energy Switzerland AG | Method and apparatus to provide a routing protocol for wireless devices |
7058018, | Mar 06 2002 | Google Technology Holdings LLC | System and method for using per-packet receive signal strength indication and transmit power levels to compute path loss for a link for use in layer II routing in a wireless communication network |
8612386, | Feb 11 2011 | RPX Corporation | Method and apparatus for peer-to-peer database synchronization in dynamic networks |
20040008663, | |||
20040100953, | |||
20050068970, | |||
20050129005, | |||
20050185632, | |||
20060268879, | |||
20070110024, | |||
20070147255, | |||
20070286097, | |||
20080019321, | |||
20090073921, | |||
WO2007015822, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 20 2008 | VEILLETTE, MICHEL | TRILLIANT NETWORKS, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027528 | /0297 | |
Jan 13 2012 | Trilliant Networks, Inc. | (assignment on the face of the patent) | / | |||
Nov 01 2019 | TRILLIANT NETWORKS, INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 | |
Nov 01 2019 | TRILLIANT HOLDINGS, INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 | |
Nov 01 2019 | TRILLIANT NETWORKS CANADA INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 |
Date | Maintenance Fee Events |
Jan 15 2018 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Mar 07 2022 | REM: Maintenance Fee Reminder Mailed. |
Aug 22 2022 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Jul 15 2017 | 4 years fee payment window open |
Jan 15 2018 | 6 months grace period start (w surcharge) |
Jul 15 2018 | patent expiry (for year 4) |
Jul 15 2020 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jul 15 2021 | 8 years fee payment window open |
Jan 15 2022 | 6 months grace period start (w surcharge) |
Jul 15 2022 | patent expiry (for year 8) |
Jul 15 2024 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jul 15 2025 | 12 years fee payment window open |
Jan 15 2026 | 6 months grace period start (w surcharge) |
Jul 15 2026 | patent expiry (for year 12) |
Jul 15 2028 | 2 years to revive unintentionally abandoned end. (for year 12) |