US10412600B2 - Leveraging diverse communication links to improve communication between network subregions - Google Patents
Leveraging diverse communication links to improve communication between network subregions Download PDFInfo
- Publication number
- US10412600B2 US10412600B2 US14/271,278 US201414271278A US10412600B2 US 10412600 B2 US10412600 B2 US 10412600B2 US 201414271278 A US201414271278 A US 201414271278A US 10412600 B2 US10412600 B2 US 10412600B2
- Authority
- US
- United States
- Prior art keywords
- original data
- version
- node
- communication link
- subregion
- 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.)
- Active, expires
Links
- 238000004891 communication Methods 0.000 title claims abstract description 117
- 238000000034 method Methods 0.000 claims description 49
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 7
- 238000013459 approach Methods 0.000 description 7
- 238000012937 correction Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003292 diminished effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
Definitions
- Embodiments of the present invention relate generally to wireless network communications and, more specifically, to leveraging diverse communication links to improve communication between network subregions.
- a conventional wireless mesh network includes a plurality of nodes configured to communicate with one another across communication links.
- the communication links between different nodes typically provide varying levels of connectivity between those nodes depending on, for example, geographical relationships between the nodes, interference levels associated with those nodes, or other environmental and/or operational factors than affect wireless transmissions. Accordingly, some nodes may have good connectivity with one another and, thus, be capable communicating with one another with low error rates, while other nodes may have poor connectivity with one another, and, therefore, only be capable of communicating with higher error rates.
- the wireless mesh network can become segmented into “pockets” of nodes that have good internal connectivity, but are not well connected to other pockets of nodes. For example, a group of nodes that reside within close proximity to one another could maintain good communication links with one another that provide a high level of connectivity. However, those nodes could be unable to maintain good communication links with geographically distant nodes in other pockets. As a general matter, although communication between nodes within a given pocket may confer high bandwidth and low error rates communications between nodes within that pocket, poor connectivity between pockets may severely limit the overall capacity of the wireless mesh network in terms of bandwidth and error rate, among other things.
- One embodiment of the present invention sets forth a computer-implemented method for transmitting data between different subregions of a network, including receiving a first version of data transmitted via a first communication link that couples a first network subregion to a second network subregion, receiving a second version of the data transmitted via a second communication link that also couples the first network subregion to the second network subregion, and reconstructing the data at a designated node within the second network subregion based on the first version of the data and the second version of the data.
- first and second subregions may be capable of maintaining effective communication with one another despite interference and other factors that limit connectivity between the two subregions.
- FIG. 1 illustrates a network system configured to implement one or more aspects of the invention
- FIG. 2 illustrates a network interface configured to transmit and receive data within a mesh network, according to one embodiment of the invention
- FIGS. 3A-3C illustrate a plurality of network subregions coupled together via multiple communication links that provide low connectivity, according to various embodiments of the present invention
- FIGS. 4A-4B illustrate exemplary techniques for reconstructing a data packet based on different versions of that data packet received across the multiple communication links of FIGS. 3A-3C , according to various embodiments of the present invention.
- FIG. 5 is a flow diagram of method steps for reconstructing a data packet based on different versions of the data packet, according to one embodiment of the present invention.
- FIG. 1 illustrates a network system 100 configured to implement one or more aspects of the invention.
- the network system 100 includes a wireless mesh network 102 , which may include a source node 110 , intermediate nodes 130 and destination node 112 .
- the source node 110 is able to communicate with certain intermediate nodes 130 via communication links 132 .
- the intermediate nodes 130 communicate among themselves via communication links 134 .
- the intermediate nodes 130 communicate with the destination node 112 via communication links 136 .
- the network system 100 may also include an access point 150 , a network 152 , and a server 154 .
- a discovery protocol may be implemented to determine node adjacency to one or more adjacent nodes.
- intermediate node 130 - 2 may execute the discovery protocol to determine that nodes 110 , 130 - 1 , 130 - 3 , and 130 - 5 are adjacent to node 130 - 2 .
- this node adjacency indicates that communication links 132 - 2 , 134 - 2 , 134 - 4 and 134 - 3 may be established between the nodes 110 , 130 - 1 , 130 - 3 , and 130 - 5 , respectively.
- Any technically feasible discovery protocol may be implemented without departing from the scope and spirit of embodiments of the present invention.
- the discovery protocol may also be implemented to determine the hopping sequences of adjacent nodes, i.e. the sequence of channels across which nodes periodically receive payload data.
- a “channel” may correspond to a particular range of frequencies.
- Each intermediate node 130 may be configured to forward the payload data based on the destination address.
- the payload data may include a header field configured to include at least one switch label to define a predetermined path from the source node 110 to the destination node 112 .
- a forwarding database may be maintained by each intermediate node 130 that indicates which communication link 132 , 134 , 136 should be used and in what priority to transmit the payload data for delivery to the destination node 112 .
- the forwarding database may represent multiple paths to the destination address, and each of the multiple paths may include one or more cost values. Any technically feasible type of cost value may characterize a link or a path within the network system 100 .
- each node within the wireless mesh network 102 implements substantially identical functionality and each node may act as a source node, destination node or intermediate node.
- the access point 150 is configured to communicate with at least one node within the wireless mesh network 102 , such as intermediate node 130 - 4 . Communication may include transmission of payload data, timing data, or any other technically relevant data between the access point 150 and the at least one node within the wireless mesh network 102 .
- Communication may include transmission of payload data, timing data, or any other technically relevant data between the access point 150 and the at least one node within the wireless mesh network 102 .
- communications link 140 may be established between the access point 150 and intermediate node 130 - 4 to facilitate transmission of payload data between wireless mesh network 102 and network 152 .
- the network 152 is coupled to the server 154 via communications link 142 .
- the access point 150 is coupled to the network 152 , which may comprise any wired, optical, wireless, or hybrid network configured to transmit payload data between the access point 150 and the server 154 .
- the server 154 represents a destination for payload data originating within the wireless mesh network 102 and a source of payload data destined for one or more nodes within the wireless mesh network 102 .
- the server 154 executes an application for interacting with nodes within the wireless mesh network 102 .
- nodes within the wireless mesh network 102 may perform measurements to generate measurement data, such as power consumption data.
- the server 154 may execute an application to collect the measurement data and report the measurement data.
- the server 154 queries nodes within the wireless mesh network 102 for certain data. Each queried node replies with requested data, such as consumption data, system status and health data, and so forth.
- each node within the wireless mesh network 102 autonomously reports certain data, which is collected by the server 154 as the data becomes available via autonomous reporting.
- each node within wireless mesh network 102 includes a network interface that enables the node to communicate wirelessly with other nodes.
- Each node 130 may implement the first and/or second embodiments of the invention, as described above, by operation of the network interface. An exemplary network interface is described below in conjunction with FIG. 2 .
- FIG. 2 illustrates a network interface 200 configured to implement multi-channel operation, according to one embodiment of the invention.
- Each node 110 , 112 , 130 within the wireless mesh network 102 of FIG. 1 includes at least one instance of the network interface 200 .
- the network interface 200 may include, without limitation, a microprocessor unit (MPU) 210 , a digital signal processor (DSP) 214 , digital to analog converters (DACs) 220 , 221 , analog to digital converters (ADCs) 222 , 223 , analog mixers 224 , 225 , 226 , 227 , a phase shifter 232 , an oscillator 230 , a power amplifier (PA) 242 , a low noise amplifier (LNA) 240 , an antenna switch 244 , and an antenna 246 .
- PA power amplifier
- LNA low noise amplifier
- a memory 212 may be coupled to the MPU 210 for local program and data storage.
- a memory 216 may be coupled to the DSP 214 for local program and data storage.
- Memory 212 and/or memory 216 may be used to store data structures such as, e.g., a forwarding database, and/or routing tables that include primary and secondary path information, path cost values, and so forth.
- the MPU 210 implements procedures for processing IP packets transmitted or received as payload data by the network interface 200 .
- the procedures for processing the IP packets may include, without limitation, wireless routing, encryption, authentication, protocol translation, and routing between and among different wireless and wired network ports.
- MPU 210 implements the techniques performed by the node, as described in conjunction with FIGS. 1 and 3A-5 , when MPU 210 executes a firmware program stored in memory within network interface 200 .
- the MPU 214 is coupled to DAC 220 and DAC 221 .
- Each DAC 220 , 221 is configured to convert a stream of outbound digital values into a corresponding analog signal.
- the outbound digital values are computed by the signal processing procedures for modulating one or more channels.
- the MPU 214 is also coupled to ADC 222 and ADC 223 .
- Each ADC 222 , 223 is configured to sample and quantize an analog signal to generate a stream of inbound digital values.
- the inbound digital values are processed by the signal processing procedures to demodulate and extract payload data from the inbound digital values.
- network interface 200 represents just one possible network interface that may be implemented within wireless mesh network 102 shown in FIG. 1 , and that any other technically feasible device for transmitting and receiving data may be incorporated within any of the nodes within wireless mesh network 102 .
- each node 130 within wireless mesh network 102 may be associated with a different subregion of wireless mesh network 102 , where each subregion includes nodes 130 coupled together by communication links 134 that provide good connectivity.
- a communication link that provides “good” connectivity generally meets a given connectivity metric.
- a communication link with good connectivity could allow data to be communicated with at least a minimum signal-to-noise ratio (SNR), with below a maximum error rate, or with at least a threshold quality of service (QOS).
- SNR signal-to-noise ratio
- QOS quality of service
- Wireless mesh network 102 may include many network subregions that are interconnected with one another via multiple communication links 134 . However, the different network subregions may be coupled to one another via communication links 134 having poor connectivity, i.e. communication links that fail to meet a given connectivity metric, such as those mentioned above. In such situations, wireless mesh network 102 may become segmented into subregions that cannot effectively communicate with one another, potentially limiting the throughput of the network as a whole.
- nodes 130 within different network subregions may leverage path diversity between those subregions to improve connectivity.
- one or more nodes 130 within a given network subregion transmit multiple versions of a data packet across multiple communication links 134 to one or more nodes 130 within another network subregion.
- the one or more nodes 130 within the other subregion receive data associated with those multiple versions, and then a designated node in that subregion reconstructs the data packet based on the multiple versions, as described in greater detail below in conjunction with FIGS. 3A-5 .
- FIG. 3A illustrates a region 300 of wireless mesh network 102 of FIG. 1 that includes a plurality of network subregions coupled together via multiple communication links that provide low connectivity, according to one embodiment of the present invention.
- each of subregions 310 and 320 include a plurality of nodes 330 coupled together by communication links 332 .
- Each node 330 may represent any of nodes 130 , source 110 , destination 112 , and access point 150 shown in FIG. 1
- each communication link 332 may represent either of communication links 134 or 140 , also shown in FIG. 1 .
- Subregion 310 includes nodes 330 - 1 , 330 - 2 , and 330 - 3 .
- Node 330 - 1 is coupled to nodes 330 - 2 and 330 - 3 by communication links 332 - 1 and 332 - 2 , respectively, and nodes 330 - 2 and 330 - 3 are coupled together by communication link 332 - 3 .
- subregion 320 includes nodes 330 - 4 , 330 - 5 , and 330 - 6 .
- Node 330 - 4 is coupled to nodes 330 - 5 and 330 - 6 by communication links 332 - 4 and 332 - 5 , respectively, and nodes 330 - 5 and 330 - 6 are coupled together by communication link 332 - 6 .
- Subregions 310 and 320 are coupled together by communication links 332 - 7 , 332 - 8 , and 332 - 9 .
- node 330 - 3 of subregion 310 is coupled to nodes 330 - 4 , 330 - 5 , and 330 - 6 by communication links 332 - 7 , 332 - 8 , and 332 - 9 , respectively.
- Subregions 310 and 320 generally represent groups of nodes 330 that have good connectivity with one another (i.e. connectivity that meets a specific connectivity metric such as SNR, QOS, etc).
- communication links 332 - 1 , 332 - 2 , and 332 - 3 provide good connectivity between nodes 330 - 1 , 330 - 2 , and 330 - 3 .
- communication links 332 - 4 , 332 - 5 , and 332 - 6 provide good connectivity between nodes 330 - 4 , 330 - 5 , and 330 - 6 .
- communication links 330 - 7 , 330 - 8 , and 330 - 9 between subregions 310 and 320 may not provide connectivity that is consummate with that between nodes 330 within each such subregion.
- nodes 330 within subregions 310 could reside in close proximity to one another, and would therefore be capable of maintaining good connectivity with one another.
- nodes 330 within subregion 320 could also reside in close proximity to one another and, accordingly, be capable of maintaining good connectivity with one another.
- subregions 310 and 320 could reside sufficiently far apart that good connectivity between those subregions would be difficult to maintain.
- nodes 330 within subregion 310 could be subject to interference that isolates those nodes from subregion 320 , yet allows those nodes to communicate effectively with one another.
- the interference could be radio frequency (RF) interference, a physical barrier (such as a wall between subregions 310 and 320 ), and so forth.
- RF radio frequency
- nodes 330 of subregion 310 are configured to coordinate the transmission of data to nodes 330 of subregion 320 according to various techniques, one of which is described herein in conjunction with FIG. 3A (the other techniques are described below in conjunction with FIGS. 3B-3C ).
- node 330 - 3 receives data packet 340 from node 330 - 1 for transmission to nodes 330 within subregion 320 .
- Node 330 - 3 may also generate packet 340 .
- Node 330 - 3 then transmits data packet 340 across communication links 332 - 7 , 332 - 8 , and 332 - 9 to nodes 330 - 4 , 330 - 5 , and 330 - 6 , respectively.
- different versions 340 - 1 , 340 - 2 and 340 - 3 of data packet 340 actually arrive at subregion 320 .
- Varying connectivity can introduce errors or other types of data corruption into data packet 340 during transmission, resulting in the different versions of data packet 340 .
- Nodes 330 - 4 , 330 - 5 , and 330 - 6 are configured to receive versions 340 - 1 through 340 - 2 and to then collocate those different versions to node 330 - 5 .
- Node 330 - 5 is configured to then reconstruct data packet 340 based on versions 340 - 1 , 340 - 2 , and 340 - 3 .
- Node 330 - 5 can reconstruct data packet 340 through any technically feasible approach to error correction in order to reconcile differences between versions 340 - 1 through 340 - 3 .
- node 330 - 5 could determine that versions 340 - 1 through 340 - 3 include different error information, and then identify specific regions of those versions that potentially include errors (and other regions that may not include errors).
- Node 330 - 5 could then combine the error-free portions of those different versions to reconstruct data packet 340 . This particular example is described in greater detail below in conjunction with FIG. 4A .
- node 330 - 5 could analyze carrier waves (or other transmission media) associated with versions 340 - 1 , 340 - 2 , and 340 - 3 and determine that some of those carrier waves were impeded by interference during transmission. Node 330 - 5 could then identify, across all versions, the carrier waves that did, in fact, arrive at subregion 320 with limited interference, and then assemble those carrier waves to reconstruct data packet 340 . This particular example is discussed in greater detail below in conjunction with FIG. 4B .
- Each node 330 within subregion 320 may also characterize communication links 332 between subregions 310 and 320 and to then incorporate that characterization into the reconstruction process described thus far. For example, node 330 - 4 could determine that communication link 332 - 7 is subject to interference within a particular channel, and could then discard that channel upon receipt of version 340 - 1 (or portions thereof). Node 330 - 4 could also notify node 330 - 5 that version 340 - 1 should be processed to remove the interference associated with communication channel 332 - 7 .
- nodes 330 are configured to buffer received versions of packet data for reconstruction purposes only when needed.
- versions 340 - 1 through 340 - 3 need only be collocated to node 330 —in situations where node 330 - 5 detects errors within version 340 - 2 .
- node 330 - 5 queries nodes 330 - 4 and 330 - 6 , which then retrieves versions 340 - 1 and 340 - 3 , respectively, from buffers within nodes 330 - 4 and 330 - 6 for transmission to node 330 - 5 .
- bandwidth consumption within subregion 320 may be reduced since data may be collocated to node 330 - 5 less often.
- nodes 330 within subregion 320 may receive and share any type of data in order to reconstruct data packet 340 , including versions 340 - 1 through 340 - 3 of data packet 340 , error detection and/or correction data associated with those versions, soft bits or hard bits associated with each received version, channel characterization information, and so forth.
- data packet 340 including versions 340 - 1 through 340 - 3 of data packet 340 , error detection and/or correction data associated with those versions, soft bits or hard bits associated with each received version, channel characterization information, and so forth.
- FIGS. 3B and 3C illustrated in greater detail below, illustrate other possible architectures where the techniques described above may be applied.
- FIG. 3B illustrates a plurality of network subregions coupled together via multiple communication links that provide low connectivity, according to one embodiment of the present invention.
- nodes 330 - 1 , 330 - 2 and 330 - 3 within subregion 310 are coupled to nodes 330 - 5 via communication links 332 - 10 , 332 - 8 , and 332 - 11 .
- the network architecture shown in FIG. 3B differs from that shown in FIG. 3A , the path diversity between subregions 310 and 320 may still be leveraged to improve data transfer between those subregions.
- node 330 - 2 shares data packet 340 with nodes 330 - 1 and 330 - 3 prior to transmission of that data packet. Since nodes 330 - 1 , 330 - 2 and 330 - 3 have good connectivity with one another, the likelihood that each of nodes 330 - 1 though 330 - 3 acquire the same version of data packet 340 is high. Nodes 330 - 1 , 330 - 2 , and 330 - 3 then transmit data packet 340 across communication links 332 - 10 , 332 - 8 , and 332 - 11 , respectively.
- FIGS. 3A-3B those figures represent different extremes of multipath connections between subregions 310 and 320 of region 300 : in FIG. 3A , all nodes 330 of subregion 320 are coupled to a single node 330 - 3 within subregion 310 , while in FIG. 3B , all nodes 330 of subregion 310 are coupled to a single node 330 - 5 within subregion 320 .
- the architecture of region 300 may resemble a combination of these two extremes, and may thus be more diverse than either of the architectures shown in FIGS. 3A-3B . The techniques described thus far are equally applicable to such diverse architectures, as described in greater detail below in conjunction the FIG. 3C .
- FIG. 3C illustrates a plurality of network subregions coupled together via multiple communication links that provide poor connectivity, according to one embodiment of the present invention.
- subregions 310 and 320 are coupled together by communication links 332 - 7 and 332 - 8 , as shown in FIG. 3A , and communication link 332 - 11 , as shown in FIG. 3B .
- subregions 310 and 320 are also coupled together by communication links 332 - 12 , 332 - 13 , and 332 - 14 .
- node 330 - 1 within subregion 310 is coupled to nodes 330 - 4 and 330 - 6 within subregion 320 by communication links 332 - 12 and 332 - 13 , respectively, and node 330 - 2 within subregion 310 is coupled to node 330 - 6 within subregion 320 by communication link 332 - 14 .
- node 330 - 2 is configured to share data packet 340 with nodes 330 - 1 and 330 - 2 .
- Node 330 - 1 then transmits data packet 340 to node 330 - 4 , which receives version 340 - 7 of data packet 340 across communication link 332 - 12 .
- Node 330 - 4 then forwards version 330 - 7 to node 330 - 5 .
- Node 330 - 3 also transmits data packet 340 to node 330 - 5 , which receives version 340 - 2 of data packet 340 across communication link 332 - 8 , and node 330 - 2 transmits data packet 340 to node 330 - 5 , which receives version 340 - 6 of data packet 340 across communication link 332 - 11 .
- the different versions of data packet 340 may then be collocated to node 330 - 5 to allow that node to reconstruct data packet 340 , in similar fashion as described above in conjunction with FIGS. 3A-3B .
- Node 330 - 5 may also acquire versions of data packet 340 received across other communication links, such as versions 340 - 7 and 340 - 8 received across communication links 332 - 12 and 332 - 14 , respectively.
- Persons skilled in the art will recognize that the functionality described herein may be applicable to any technically feasible arrangement of communication links 332 that provide multiple pathways between subregions 310 and 320 .
- nodes 330 may self-organize into subregions 310 and 320 according to a wide variety of different possible techniques. For example, a group of nodes 330 could associate with one another to form a subregion upon determining that the communication links 332 between those nodes provide an acceptable level of connectivity. The nodes 330 within the newly-formed subregion could also identify other subregions with which the newly-formed subregion has unacceptable connectivity, and then implement the aforementioned techniques to communicate effectively with those other subregions. As a general matter, each node 330 within region 300 is configured to identify a particular subregion to which that node should belong, and to then coordinate with other nodes in the identified subregion in the fashion described thus far. In other embodiments, the techniques described herein may be practiced without explicit coordination between nodes, thereby relying on multiple paths between nodes without defined organization into subregions.
- node 330 - 5 when different versions of data packets arrive within subregion 320 , node 330 - 5 reconstructs data packet 340 from those different versions, as described above. As also described, node 330 - 5 may implement a wide variety of possible techniques for reconstructing that data packet.
- FIGS. 4A-4B provide two different examples of reconstruction techniques that may be implemented by nodes 330 . Persons skilled the art will understand that other techniques also fall within the scope of the present invention.
- FIG. 4A illustrates one exemplary technique for reconstructing a data packet based on different versions of that packet received across the multiple communication links of FIGS. 3A-3C , according to one embodiment of the present invention.
- a version 340 - 9 of a data packet 340 includes different portions of data, some of which constitute valid data 410 and others that constitute invalid data 420 .
- version 340 - 9 includes valid data 410 - 1 and 410 - 2 , and invalid data 420 - 1 .
- a version 340 - 10 of data packet 340 includes valid data 410 - 3 and invalid data 420 - 2 .
- Versions 340 - 9 and 340 - 10 may include invalid data due to connectivity issues associated with a communication link across which those versions traveled. Such issues may include interference, among other sources of noise and/or errors.
- a given node 330 to which versions 340 - 9 and 340 - 10 may be collocated is configured to combine those different versions to reconstruct data packet 340 .
- the node 330 parses valid data 410 - 1 and 410 - 2 from version 340 - 9 and valid data 410 - 3 from version 340 - 10 , thereby acquiring all valid data needed for data packet 340 .
- the node 330 may then combine that valid data to reconstruct data packet 340 .
- Persons skilled in the art will recognize that the approach described herein is applicable to other forms of data beyond data packets, including soft bits, samples of data signals, and so forth.
- data within a version of data packet 340 may be identified as valid or invalid via a wide variety of different techniques, including CRC bits and other error detection and/or correction codes.
- FIG. 4B illustrates an exemplary technique for reconstructing frequency data associated with a data packet based on different versions of that frequency data received across the multiple communication links of FIGS. 3A-3C , according to one embodiment of the present invention.
- frequency data 440 represents a set of carrier waves (or other transmission media) used to transmit data packet 340 or portions of data packet 340 from subregion 310 to subregion 320 .
- Versions 440 - 11 and 440 - 12 reflect data that actually arrives at subregion 320 , where that data may be corrupted due to, e.g., poor connectivity between subregions.
- Versions 440 - 11 and 440 - 12 of frequency data 440 correspond to versions 340 - 11 and 340 - 12 of data packet 340 , respectively.
- version 440 - 11 of frequency data 440 includes carrier waves 441 - 1 , 442 - 1 , and 443 - 1 .
- Each such carrier wave resides within a different range of frequencies (i.e. a channel).
- Sub-carrier waves may also be configured to carry data, including packet data, e.g. in an orthogonal frequency-division multiplexing (ODFM) implementation. Nominally, each carrier wave may have sufficient amplitude to enable accurate decoding.
- ODFM orthogonal frequency-division multiplexing
- carrier wave 442 - 1 is diminished in amplitude, or interfered with, compared to carrier waves 441 - 1 and 443 - 1 , and may thus introduce errors when version 340 - 11 of data packet 340 is decoded based on version 440 - 11 of frequency data 440 .
- version 440 - 12 of frequency data 440 includes carrier waves 441 - 2 , 442 - 2 , and 443 - 2 .
- carrier wave 441 - 2 is diminished in amplitude, or interfered with, compared to carrier waves 442 - 2 and 443 - 2 and, likewise, may introduce errors when version 340 - 12 of data packet 340 is decoded based on version 440 - 12 of frequency data 440 .
- versions 440 - 11 and 440 - 12 of frequency data 440 arrive at subregion 320 , those versions are collocated to a node 330 configured to perform the reconstruction process described above in conjunction with FIGS. 3A-3C .
- the node 330 is configured to identify that carrier waves 441 - 1 and 443 - 1 of version 440 - 11 arrived with little to no interference, and similarly, determine that carrier waves 442 - 2 and 443 - 2 of version 440 - 12 also arrived intact. Then, the node 330 combines this valid carrier wave data to reconstruct frequency data 440 , which includes carrier waves 441 - 1 , 442 - 2 , and 443 - 1 .
- Data packet 340 may then be decoded based on the reconstructed frequency data.
- Persons skilled in the art will understand that other transmission media, beyond carrier waves, also falls within the scope of the present invention.
- the technique described in this example provides yet another approach to leveraging path diversity between subregions to improve communications. A more generic approach is described below, in stepwise fashion, in conjunction with FIG. 5 .
- FIG. 5 is a flow diagram of method steps for reconstructing a data packet based on multiple versions of that packet, according to one embodiment of the present invention. Although the method steps are described in conjunction with the systems of FIGS. 1-4B , persons skilled in the art will understand that any system configured to perform the method steps, in any order, is within the scope of the present invention.
- a method 500 begins at step 501 , where a node 330 within subregion 310 generates data packet 340 for transmission between subregion 310 and subregion 320 .
- the node 330 may also share data packet 340 with other nodes 330 within subregion 310 for coordinated transmission to subregion 320 .
- the node 330 and potentially other nodes 330 with which data packet 340 has been shared, transmit data packet 340 from subregion 310 to subregion 320 across multiple communication links 332 between those subregions.
- a designated node 330 within subregion 320 collects packet data associated with the data packet 340 received across the multiple communication links 332 .
- the designated node 330 may acquire the packet data from multiple communication links coupling that node to subregion 310 , acquire the packet data from other nodes 330 within subregion 320 , or a combination of the two.
- the collected packet data may include different versions of data packet 340 that arrive at subregion 320 (e.g., due to connectivity issues) as well as frequency data associated with those versions.
- the designated node 330 may acquire a plurality of different types of packet data, as well as different versions of data packet 340 , from nodes 330 within either or both of subregions 310 and 320 .
- the node 330 collects error information associated with the received packet data, including the output of error detection/correction algorithms, CRC bits, channel characteristics determined by other nodes 330 within subregion 320 , and so forth.
- the node 330 within subregion 320 that collects the packet data and other information at steps 503 and 504 reconstructs data packet 340 based on that collected data.
- the node 330 within subregion 320 may implement any of the reconstruction techniques described above in conjunction with FIGS. 3A-4B when performing step 505 .
- a designated node 330 within subregion 320 may, at step 503 , collect versions of packet data that is initially received by other nodes within subregion 320 and then forwarded to the designated node 330 , as described above in conjunction with FIG. 3A .
- the designated node 330 may also receive versions of packet data directly from one or more nodes within subregion 310 , as described above in conjunction with FIG. 3B .
- the designated node 330 may receive versions of packet data from multiple different nodes 330 residing in either of subregions 310 and 320 , as described above in conjunction with FIG. 3C .
- a first subregion of a wireless mesh network is configured to transmit a data packet to a second subregion of the wireless mesh network via multiple communication links. Due to varying connectivity levels associated with the multiple communication links, the second subregion may receive different versions of the data packet. A designated node within the second subregion collects the different versions of the data and then combines those different versions to reconstruct the data packet and, potentially, to reduce errors associated with those versions. In this fashion, path diversity between the first and second subregions can be leveraged to remedy poor connectivity between the subregions.
- the techniques described herein may be practiced without explicit coordination between nodes, thereby relying on multiple paths between nodes without defined organization into subregions.
- the first and second subregions may be capable of maintaining effective communication with one another despite interference and other factors that limit connectivity between the two subregions. Accordingly, by implementing the techniques described herein, the wireless mesh network as a whole may be capable of maintaining acceptable connectivity with low error rates and, thus, higher overall bandwidth.
- aspects of the present invention may be implemented in hardware or software or in a combination of hardware and software.
- One embodiment of the invention may be implemented as a program product for use with a computer system.
- the program(s) of the program product define functions of the embodiments (including the methods described herein) and can be contained on a variety of computer-readable storage media.
- Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, flash memory, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored.
- non-writable storage media e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, flash memory, ROM chips or any type of solid-state non-volatile semiconductor memory
- writable storage media e.g., floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/271,278 US10412600B2 (en) | 2013-05-06 | 2014-05-06 | Leveraging diverse communication links to improve communication between network subregions |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361819752P | 2013-05-06 | 2013-05-06 | |
US14/271,278 US10412600B2 (en) | 2013-05-06 | 2014-05-06 | Leveraging diverse communication links to improve communication between network subregions |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140328272A1 US20140328272A1 (en) | 2014-11-06 |
US10412600B2 true US10412600B2 (en) | 2019-09-10 |
Family
ID=51841405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/271,278 Active 2036-12-11 US10412600B2 (en) | 2013-05-06 | 2014-05-06 | Leveraging diverse communication links to improve communication between network subregions |
Country Status (1)
Country | Link |
---|---|
US (1) | US10412600B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10412600B2 (en) * | 2013-05-06 | 2019-09-10 | Itron Networked Solutions, Inc. | Leveraging diverse communication links to improve communication between network subregions |
US10575339B2 (en) * | 2015-11-29 | 2020-02-25 | Mobilicom Ltd. | Scalable mobile ad hoc networks |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6263468B1 (en) * | 1997-10-23 | 2001-07-17 | Sony Corporation | Apparatus and method for partial buffering transmitted data to provide robust error recovery in a lossy transmission environment |
US6581170B1 (en) * | 1997-10-23 | 2003-06-17 | Sony Corporation | Source coding to provide for robust error recovery during transmission losses |
US20060120472A1 (en) * | 2000-04-04 | 2006-06-08 | Broadcom Corporation | System and method for multi-carrier modulation |
US20080220788A1 (en) * | 2007-03-07 | 2008-09-11 | Nextwave Broadband, Inc. | Multi-band Channel Aggregation |
US20090181612A1 (en) * | 2005-11-01 | 2009-07-16 | Gunther May | Method for broadcast radio transmission of a multiplicity of different information presentations, and transmission and reception device for this purpose |
US20100149961A1 (en) * | 2007-02-08 | 2010-06-17 | Wook Bong Lee | Method oftransmitting and processing data and transmitter in a wireless communication system |
US20130246726A1 (en) * | 2009-07-07 | 2013-09-19 | Sones Gmbh | Method and device for a memory system |
US20130321588A1 (en) * | 2010-12-07 | 2013-12-05 | Steffen Abraham | method and device for processing image data of two sensors of a stereo sensor system suitable for capturing images |
US20140328272A1 (en) * | 2013-05-06 | 2014-11-06 | Silver Spring Networks, Inc. | Leveraging diverse communication links to improve communication between network subregions |
-
2014
- 2014-05-06 US US14/271,278 patent/US10412600B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6263468B1 (en) * | 1997-10-23 | 2001-07-17 | Sony Corporation | Apparatus and method for partial buffering transmitted data to provide robust error recovery in a lossy transmission environment |
US6581170B1 (en) * | 1997-10-23 | 2003-06-17 | Sony Corporation | Source coding to provide for robust error recovery during transmission losses |
US20060120472A1 (en) * | 2000-04-04 | 2006-06-08 | Broadcom Corporation | System and method for multi-carrier modulation |
US20090181612A1 (en) * | 2005-11-01 | 2009-07-16 | Gunther May | Method for broadcast radio transmission of a multiplicity of different information presentations, and transmission and reception device for this purpose |
US20100149961A1 (en) * | 2007-02-08 | 2010-06-17 | Wook Bong Lee | Method oftransmitting and processing data and transmitter in a wireless communication system |
US20080220788A1 (en) * | 2007-03-07 | 2008-09-11 | Nextwave Broadband, Inc. | Multi-band Channel Aggregation |
US20130246726A1 (en) * | 2009-07-07 | 2013-09-19 | Sones Gmbh | Method and device for a memory system |
US20130321588A1 (en) * | 2010-12-07 | 2013-12-05 | Steffen Abraham | method and device for processing image data of two sensors of a stereo sensor system suitable for capturing images |
US20140328272A1 (en) * | 2013-05-06 | 2014-11-06 | Silver Spring Networks, Inc. | Leveraging diverse communication links to improve communication between network subregions |
Also Published As
Publication number | Publication date |
---|---|
US20140328272A1 (en) | 2014-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10128900B2 (en) | System and method for multi-channel frequency hopping spread spectrum communication | |
WO2017185983A1 (en) | Signaling transmitting and receiving methods, device, network-side device, terminal, and storage medium | |
JP6125014B2 (en) | Multimedia multi-modulation method and multi-data rate mesh network | |
US20110110273A1 (en) | Waveform for use in mobile ad hoc networks | |
US9167439B2 (en) | Non-intrusive in-band link cost estimation in multihop networks | |
US9106567B2 (en) | System and method for setting a path to an access point across a wireless mesh network | |
WO2010028307A1 (en) | Waveform for use in mobile ad hoc networks | |
BR112015027867B1 (en) | USER METHOD AND EQUIPMENT | |
US8902901B2 (en) | Communication packet conversion | |
BRPI0925342B1 (en) | cooperative signal communication method, device, communication network, and computer readable medium | |
US11025367B2 (en) | Channel state information estimation with codeword interference cancellation | |
Hsu et al. | Full-duplex delay-and-forward relaying | |
US9485629B2 (en) | Confirmed link level broadcast using parallel receivers | |
US10412600B2 (en) | Leveraging diverse communication links to improve communication between network subregions | |
Katti et al. | Real network codes | |
EP3011772B1 (en) | Configuring a network of devices to operate within a television whitespace spectrum | |
US9800467B2 (en) | Technique for changing the operating state of a node within a network | |
US9749253B2 (en) | Technique for implementing a latency sensitive communication protocol in a wireless mesh network | |
US20140064085A1 (en) | Communication node and communication method | |
Alay et al. | Transmission of correlated gaussian sources with opportunistic interference | |
US20110103248A1 (en) | Method and device for managing communications in a wireless network, method for setting up a second communication, corresponding computer program product and storage means | |
WO2024007097A1 (en) | Bit allocations for multi-level coding in wireless communications | |
US20240056936A1 (en) | Communication device and communication method | |
Josiam et al. | Multiuser diversity in wireless networks: A diversity-multiplexing perspective | |
KR101562006B1 (en) | Retransmission relay selection method for relay-based transmission system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SILVER SPRING NETWORKS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GOTTLIB, ELAD;REEL/FRAME:032949/0306 Effective date: 20140507 |
|
AS | Assignment |
Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, NORTH CAROLINA Free format text: SECURITY INTEREST;ASSIGNORS:ITRON, INC.;ITRON NETWORKED SOLUTIONS, INC.;REEL/FRAME:045017/0893 Effective date: 20180105 Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, NORTH CARO Free format text: SECURITY INTEREST;ASSIGNORS:ITRON, INC.;ITRON NETWORKED SOLUTIONS, INC.;REEL/FRAME:045017/0893 Effective date: 20180105 |
|
AS | Assignment |
Owner name: ITRON NETWORKED SOLUTIONS, INC., WASHINGTON Free format text: CHANGE OF NAME;ASSIGNOR:SILVER SPRING NETWORKS, INC.;REEL/FRAME:045221/0804 Effective date: 20180105 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT, NORTH CAROLINA Free format text: SECURITY INTEREST;ASSIGNORS:ITRON, INC.;ITRON NETWORKED SOLUTIONS, INC.;REEL/FRAME:065727/0302 Effective date: 20231130 |