WO2019117763A1 - Channel scanning in a mesh network - Google Patents
Channel scanning in a mesh network Download PDFInfo
- Publication number
- WO2019117763A1 WO2019117763A1 PCT/SE2017/051245 SE2017051245W WO2019117763A1 WO 2019117763 A1 WO2019117763 A1 WO 2019117763A1 SE 2017051245 W SE2017051245 W SE 2017051245W WO 2019117763 A1 WO2019117763 A1 WO 2019117763A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- wireless device
- multiple channels
- scanning
- scan
- schedule
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/121—Wireless traffic scheduling for groups of terminals or users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/65—Arrangements characterised by transmission systems for broadcast
- H04H20/71—Wireless systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Definitions
- the present application relates generally to a mesh network, and more specifically to channel scanning in a mesh network.
- a mesh network is a local network topology in which devices communicate directly and non-hierarchically to other devices, e.g., so as to form a“mesh” of communication paths rather than a“tree” or“star” as is conventional.
- data propagates from a source to a destination outside the source’s range via one or more intermediate devices that relay the data.
- a routed mesh network individual devices in the network establish routes over which data is efficiently sent from source to destination.
- devices in the network relay data by broadcasting or multicasting the data to other devices in range, rather than selectively transmitting the data only to the next-hop device on a route to the destination.
- This flooding approach enables simple and scalable mesh networks without the complexities of routing table creation and management.
- the flooding approach can also prove very reliable as it inherently exploits multipath to ensure data reaches its destination.
- Some contexts jeopardize reliability.
- wireless devices may be limited in the number of channels they can scan at the same time for data and/or limited in how much time they scan for data. These limitations may increase the risk that data goes unrelayed or otherwise undelivered to the intended destination.
- wireless devices in a flooding-based mesh network cooperate with one another on when to scan channels for data, e.g., that may need to be relayed.
- a wireless device may for instance base its schedule of when it will scan one or more of the channels on the schedule of when another wireless device in the network will scan one or more of the channels.
- the devices in this regard may exchange signaling indicating their respective scanning schedules. With channel scanning scheduled in this way, the devices may cooperate to scan the same channel but during different time intervals so as to avoid inefficient “double coverage” that wastes power and to help ensure at least one device is scanning the channel at any given time.
- the devices may cooperate to scan different channels during the same time interval, so as to more efficiently exploit multipath and improve reliability.
- embodiments herein include a method performed by a wireless device in a mesh network for scanning multiple channels in cooperation with one or more other wireless devices in the mesh network.
- the method comprises receiving signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels.
- the method comprises, based on the received signaling, the wireless device scheduling when the wireless device will scan one or more of the multiple channels.
- the scheduling comprises scheduling the wireless device to scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will not scan that certain one of the multiple channels.
- the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will scan that certain one of the multiple channels.
- the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels that, according to the received signaling, will be scanned to at least a threshold extent by the at least one other wireless device.
- the scheduling comprises, based on the received signaling, scheduling one or more of which of the multiple channels the wireless device will scan, if any; an order in which the wireless device will sequentially scan two or more of the multiple channels; a duration for which the wireless device will scan each of one or more of the multiple channels; or a starting time of a periodic scanning schedule according to which the wireless device scans one or more of the multiple channels.
- the scheduling comprises switching from scanning one or more of the multiple channels according to a default schedule to scanning one or more of the multiple channels according to a schedule determined based on the received signaling.
- the scheduling is performed based on a received signal strength or a received signal quality of the received signaling.
- the method may further comprise scanning one or more of the multiple channels in accordance with the scheduling.
- Embodiments herein also include a method performed by a wireless device in a mesh network for scanning multiple channels in cooperation with one or more other wireless devices in the mesh network.
- the method comprises transmitting signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
- the signaling indicates the schedule by indicating one or more of which of the multiple channels will be scanned; an order in which two or more of the multiple channels will be sequentially scanned; a duration for which each of one or more of the multiple channels will be scanned; or a starting time of the schedule.
- the multiple channels may be advertising channels in a Bluetooth mesh network.
- the methods may further comprise in a connection less data transfer mode, receiving data over a scanned broadcast channel and selectively relaying the data towards another wireless device in the mesh network depending on whether the wireless device is a destination of the data.
- Embodiments herein further include a wireless device configured for scanning multiple channels in cooperation with one or more other wireless devices in a mesh network.
- the wireless device is configured to receive signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels.
- the wireless device is configured to, based on the received signaling, schedule when the wireless device will scan one or more of the multiple channels.
- the wireless device comprises a receiving module for receiving signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels. In some embodiments the wireless device further comprises a scheduling module for scheduling, based on the received signaling, when the wireless device will scan one or more of the multiple channels.
- the wireless device comprises processing circuitry and a memory.
- the memory contains instructions executable by the processing circuitry whereby the wireless device is configured to receive signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels.
- the memory contains instructions executable by the processing circuitry whereby the wireless device is configured to, based on the received signaling, schedule when the wireless device will scan one or more of the multiple channels.
- Embodiments herein further include a wireless device configured for scanning multiple channels in cooperation with one or more other wireless devices in a mesh network.
- the wireless device is configured to transmit signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
- the wireless device comprises a transmitting module for transmitting signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
- the wireless device comprises processing circuitry and a memory.
- the memory contains instructions executable by the processing circuitry whereby the wireless device is configured to transmit signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
- one or more of the wireless devices described above is configured to perform one or more methods described herein.
- Embodiments also include corresponding computer programs and carriers such as non- transitory computer readable storage mediums.
- Figure 1 is a block diagram of a mesh network with wireless devices according to some embodiments.
- Figure 2 is a signaling diagram according to some embodiments.
- Figure 3 is a signaling diagram according to some embodiments.
- Figure 4 is a logic flow diagram of a method performed by a wireless device according to some embodiments.
- Figure 5A is a logic flow diagram of a method performed by a wireless device according to some embodiments.
- Figure 5B is a logic flow diagram of a method performed by a wireless device according to some embodiments.
- Figure 6A is a block diagram of a wireless device according to some embodiments.
- Figure 6B is a block diagram of a wireless device according to some embodiments.
- Figure 7A is a block diagram of a wireless device according to some embodiments.
- Figure 7B is a block diagram of a wireless device according to some embodiments.
- FIG. 1 shows a mesh network 100 according to some embodiments.
- the mesh network 100 includes multiple wireless devices, two of which are shown as devices 10, 12, that form a mesh for collectively propagating data 24 (e.g., application data or user data) from a source 22 to a destination 26.
- the mesh network 100 in some embodiments is a flooding-based mesh network that relies on at least some devices in the network 100 to propagate the data 24 by broadcasting, multicasting, or otherwise transmitting that data to other devices in range.
- the channels 14 are broadcast channels.
- the channels 14 may be advertising channels on which connection advertisements (e.g., connectable advertising packets) are broadcasted for discovery of and connection to other devices.
- connection advertisements e.g., connectable advertising packets
- devices may exploit the advertising channels for transmitting data 24 in a connectionless data transfer mode, e.g., so as to propagate the data 24 without establishing connections between the devices.
- Figure 1 shows an example where the source 22 of the data 24 transmits the data 24 on one or more of the channels 14 (e.g., channel 14-1).
- Each of the devices 10, 12 scans one or more of these channels 14 for any data that may be destined for it or that may need to be relayed.
- device 12 receives the data 24 and then (e.g., after a random delay) relays the received data 24 towards the destination 26 by transmitting the data 24 on one or more of the channels 14 (e.g., channel 14-N).
- devices 10, 12 conserve power by limiting how much time they scan for data.
- wireless devices 10, 12 in the mesh network 100 cooperate with one another on when to scan the channels 14 for data 24.
- Wireless device 12 may for instance base its schedule of when it will scan one or more of the channels 14 on the schedule of when wireless device 10 will scan one or more of the channels 14.
- FIG. 1 in this regard shows that wireless device 10 is configured to scan one or more of the channels 14 according to a certain scanning schedule 16, which may be for instance a default schedule.
- a certain scanning schedule 16 which may be for instance a default schedule.
- the device 10 scans channel 14-1 during time periods P1 and P3 which may recur periodically.
- the device 10 may also scan one or more others of the channels 14, such as by scanning channel 14-N during periods P2 and P4 as shown.
- the scanning schedule 16 governs when and on what channels the wireless device 10 scans.
- wireless device 10 transmits (e.g., broadcasts) signaling 18 indicating this schedule 16 of when the wireless device 10 will scan one or more of the multiple channels 14.
- the signaling 18 may indicate the schedule 16 for instance by indicating which of the channels 14 will be scanned, a duration for which each of one or more of the channels 14 will be scanned, a starting time of the schedule 16, and/or an order in which two or more of the channels 14 will be sequentially scanned.
- wireless device 12 receives the signaling 16. Based on that signaling 16, wireless device 12 in some embodiments schedules when the device 12 will scan one or more of the channels 14.
- the wireless device 12 may for instance establish, adjust, or otherwise determine its own scanning schedule 20 based on the scanning schedule 16 of wireless device 10 indicated by the received signaling 18. Accordingly, wireless device 12’s scanning schedule 20 may be dependent on or otherwise influenced by wireless device 10’s scanning schedule 16.
- the wireless device 12 may schedule to not scan a certain one of the multiple channels (e.g., channel 14-1) during at least some of the time when, according to the received signaling 18, wireless device 10 will scan that certain one of the multiple channels. For example, as shown in Figure 1 , the wireless device 12 schedules to not scan channel 14-1 during time periods P1 and P3 in which wireless device 10 scans channel 14-1. In other words, wireless device 12 refrains from scheduling to scan channel 14-1 during time periods P1 and P3 in which wireless device 10 scans channel 14-1. With channel scanning scheduled in this way, the devices 10, 12 effectively cooperate so as to avoid inefficient“double coverage” that wastes power.
- the devices 10, 12 effectively cooperate so as to avoid inefficient“double coverage” that wastes power.
- both devices 10, 12 had scanned channel 14-1 during time periods P1 and P3, both devices 10, 12 would receive the same data and re-transmit the same data.
- the devices 10, 12 are substantially co-located with one another so as to have similar transmission coverage areas, reception and re-transmission by both devices 10, 12 would prove unnecessarily duplicative and inefficient.
- the wireless device 12 may instead schedule to scan a certain one of the multiple channels (e.g., channel 14-1) during at least some of the time when, according to the received signaling 18, wireless device 10 will not scan that certain one of the multiple channels.
- the wireless device 12 schedules to scan channel 14-1 during time periods P2 and P4 based on the signaling 18 indicating that wireless device 10 is not scanning channel 14-1 during those time periods. This may for instance involve the wireless device 12 revising its scanning schedule from scanning channel 14-1 during time periods P1 and P3 to scanning channel 14-1 during time periods P2 and P4.
- Scheduling channel scanning in this way therefore may also help ensure that at least one device is scanning channel 14-1 at any given time.
- data transmitted during time periods P1 or P3 will be relayed by device 10 whereas data transmitted during time periods P2 or P4 will be relayed by device 12, e.g., ignoring propagation delay.
- device 10 scanning channel 14-1 during time periods P1 and P3 only so as to leave time periods P2 and P4“uncovered”, this increases the probability that at least one device 10,12 will receive and relay data transmission on channel 14-1 and in turn increases the reliability of data transmission in the mesh network 100.
- the devices 10, 12 may cooperate to scan different channels during the same time interval, so as to more efficiently exploit multipath and improve reliability.
- devices 10, 12 cooperate so that device 10 scans channel 14-1 during time period P1 while device 12 scans channel 14-N during that time period P1.
- devices 10, 12 cooperate so that device 10 scans channel 14-N during time period P2 while device 12 scans channel 14-1 during that time period P1.
- the data will be received and selectively relayed by at least one of the devices 10, 12.
- Scheduling channel scanning in these or other ways may involve establishing a schedule, adjusting a current or default schedule, or maintaining a current or default schedule.
- Figures 2 and 3 illustrate various examples in this regard in the context of a BLE mesh network where wireless devices limit their scanning to one channel at any given time.
- the multiple channels 14 that wireless devices 10, 12 scan are advertisement or broadcast channels 37, 38, and 39 of a BLE mesh network.
- Each of wireless devices 10 and 12 has a scanning schedule in the form of a scanning pattern that periodically recurs. In each recurring scanning period, a wireless device scans one or more of the advertising channels during a respective window of time. Where more than one advertising channels are scanned, the device’s scanning may sequentially hop from channel to channel in a certain order.
- device 12 As shown, for instance, device 12’s scanning pattern defines a scanning period 312-A.
- device 12 first scans channel 37 for a defined duration during scanning window 412-A, then switches to scanning channel 38 for the same duration during a subsequent, non-overlapping scanning window, and next switches to scanning channel 39 for the same duration during another subsequent, non-overlapping scanning window.
- device 10 s scanning pattern defines a scanning period 310-A.
- this scanning period 310-A device 10 first scans channel 37 during scanning window 410-A, then switches to scanning channel 38 during a subsequent, non-overlapping scanning window, and next switches to scanning channel 39 during another subsequent, non-overlapping scanning window.
- the devices’ respective scanning windows on each channel partially overlap in time, e.g., so as to constitute double coverage of the channels by the devices 10, 12 during the overlap.
- Figure 2 illustrates how a device may change its scanning schedule from scanning period to scanning period, e.g., based on signaling from another device announcing or otherwise indicating its scanning schedule.
- wireless device 10 transmits signaling on each of the channels that indicates device 10’s schedule for scanning the channels.
- Wireless device 12 receives that signaling while scanning channel 37 during scanning window 412-A of scanning period 312-A. The reception of this signaling may be unscheduled or otherwise uncoordinated between the devices.
- Wireless device 12 may for example have been configured by default (e.g., on startup) to scan channel 37 during this scanning window 412-A, and may just happen to receive device 12’s signaling while scanning.
- wireless device 12 adjusts its schedule of when it will scan the channels during the next scanning period, namely scanning period 312-B.
- wireless device 12 changes its schedule by simply changing the order in which it will scan the channels during scanning period 312-B, e.g., while keeping the scanning duration the same.
- device 12 schedules to scan channel 38 first, then channel 39, and then channel 37 in scanning period 312-B. This has the effect of advancing the relative time within the scanning period 312-B at which the device 12 scans channels 38 and 39, but deferring the time at which the device 12 scans channel 37. This effectively eliminates overlap between the windows of time during which the devices 10, 12 will scan the channels. Indeed, as a result of device 12’s schedule adjustment, the scanning windows of the devices 10, 12 in the next scanning periods 310-B and 410-B do not overlap in time.
- wireless device 12 in this example adjusts its scanning schedule and, at the beginning of its next scanning period 312-B, transmits signaling indicating that adjusted schedule.
- Wireless device 10 receives that signaling while scanning channel 39 at the end of scanning period 310-A. Because the signaling indicates that no overlap will exist between the devices’ scanning windows in device 10’s next scanning period 310-B, device 10 need not adjust its scanning schedule for that next scanning period 310-B.
- wireless device 12 may in some embodiments adjust its schedule to not only reduce scanning overlap with another wireless device (as in Figure 2) but also increase the total time over which the devices collectively scan one or more of the channels 14.
- Wireless device 12 does this in Figure 3 by adjusting (e.g., increasing) the duration of time over which it scans one or more certain channels, namely channels 37 and 38.
- wireless device 12 increases the duration of its scanning window 412-C on channel 37 in the next scanning period 312-C, e.g., to reduce the amount of time during which neither device 10 nor device 12 scans channel 37.
- Wireless device 12 similarly increases the duration of its scanning window on channel 38 in the next scanning period. With at least some of the channels scanned by at least one device for a greater amount of time, this has the advantage of increasing the probability that data is reliably propagated from source to destination.
- a wireless device may schedule when it will scan one or more of the channels to achieve any number of objectives, not just those illustrates by the above examples.
- a wireless device may instead decrease the duration of its scanning window on a certain channel, e.g., to conserve power, especially if that scanning window overlaps with that of another device.
- a wireless device may schedule to not scan a certain one of the channels (at all).
- the wireless device may for instance schedule to not scan a certain channel that, according to received signaling, will be scanned to at least a threshold extent by at least one other wireless device.
- This threshold extent may be defined for example in terms of a total amount of time or percentage of time (e.g., 90%) the channel is scanned by other devices. This advantageously allows the wireless device to conserve power where there is sufficient monitoring for data on a channel during a period of time.
- a wireless device herein may perform that scheduling based on received signaling 18 indicating another device’s scanning schedule, in any number of ways.
- a wireless device 12 may schedule which of the channels 14 the wireless device 12 will scan, if any, based on the received signaling 18.
- a wireless device 12 may schedule an order in which the wireless device 12 will scan two or more of the channels 14, based on the received signaling.
- the wireless device 12 may schedule, based on the received signaling, a duration for which the device 12 will scan each of one or more of the channels 14.
- the wireless device 12 may schedule, based on the received signaling, a starting time of a periodic scanning schedule according to which the device 12 scans one or more of the channels 14.
- the above-described approach of starting with a default scanning schedule advantageously allows each device to begin scanning independently (e.g., in an asynchronous fashion with respect to other devices).
- the default scanning schedule may be configured so that it is likely a device will be scanning when at least one other device transmits signaling indicating that device’s scanning schedule.
- Figure 4 shows a flow chart 500 for wireless device 12 to adjust its scanning schedule according to some embodiments employing a default schedule.
- the wireless device 12 is initialized (Block 501).
- the wireless device 12 sets up a default schedule upon initialization (Block 502).
- the default schedule may be derived by the wireless device (e.g., randomly selecting a default schedule from a pool of available default schedules) or predefined on the wireless device 12.
- the wireless device 12 transmits signaling indicating its scanning schedule (Block 503).
- the wireless device 12 then starts scanning according to its scanning schedule (Block 504). If the wireless device 12 receives signaling indicating a scanning schedule of another wireless device 10, (Block 505), it determines whether it should adjust its scanning schedule (Block 506).
- the device 12 performs that adjustment (Block 507). This may for instance involve the device switching from scanning one or more of the channels according to a default schedule to scanning one or more of the channels according to a schedule determined based on the received signaling. After performing the adjustment, or determining no such adjustment is to be made, the device 12 may keep listening for signaling from any other devices until the end of its scanning period (Block 508). At the end of the scanning period, the device 12 transmits signaling again indicating its scanning schedule, which may be adjusted relative to the schedule signaled previously.
- signaling 18 herein may indicate a wireless device’s scanning schedule in any number of ways.
- the signaling 18 may for instance indicate such a schedule across one or more messages, at any protocol layer.
- the signaling 18 may indicate the scanning schedule in terms of any number of parameters or information fields.
- the signaling may for example indicate which of the multiple channels 14 will be scanned, an order in which two or more of the channels 14 will be sequentially scanned, a duration for which each of one or more of the channels 14 will be scanned, and/or a starting time of the schedule.
- the signaling 18 may comprise a single message transmitted on a single channel but indicating when the device 12 will scan each of multiple channels.
- the signaling 18 may comprise multiple individual messages transmitted on respective ones of the channels to indicate when the device 12 will scan that channel.
- wireless device 12 may schedule its channel scanning based on signaling received from one or more other wireless devices. In this way, wireless device 12 may account for the channel scanning scheduled by multiple other wireless devices in the network 100, e.g., to avoid scanning overlap with any of those multiple devices.
- signaling 18 indicating a device’s scanning schedule may not be relayed according to some embodiments. This means that only other devices within transmission range will receive signaling indicating a device’s scanning schedule, e.g., so that only substantially co-located devices cooperate in scanning the channels 14.
- a wireless device 12 may schedule its channel scanning based on signaling received from another wireless device 10, in a way that depends on how close the other wireless device 10 is and/or on how much the other wireless device’s transmission or reception coverage area overlaps with its own.
- wireless device 12 schedules its channel scanning to avoid overlap with a closer device’s scanning, but to not avoid overlap with the scanning of a device that is farther away.
- wireless device 12 implements this by performing channel scanning scheduling based on a received signal strength or received signal quality of the signaling 18.
- the received signal strength may for instance be reflected in a received signaling strength indicator (RSSI) value.
- RSSI received signaling strength indicator
- a device may preferentially schedule its scanning to overlap with one or more other devices whose signaling 18 is received with lower RSSI, e.g., relative to the higher RSSI with which signaling is received from still other devices.
- This lower RSSI may implicitly indicate that the other devices are farther away and so their coverage areas do not overlap as much.
- embodiments herein are extendable to any type of flooding-based mesh network. Some embodiments though provide particularly efficient performance in stationary (or slowly moving) networks (e.g., in which signaling 18 indicating a device’s channel scanning schedule is transmitted with a periodicity of minutes or hours).
- some embodiments herein are transparent to any legacy wireless devices in the mesh network 100. Indeed, if there are legacy devices in the area (either joining or operating beforehand), embodiments will not affect the system because these legacy devices will not be detected by wireless devices implementing the embodiments as they will not transmit signaling indicating a scanning schedule. Further, the legacy devices will not understand the contents of any received signaling.
- a wireless device herein is any type of device capable of wirelessly communicating with another device in a mesh network.
- a wireless device may therefore refer to a user equipment (UE), a machine-to-machine (M2M) device, a machine-type communications (MTC) device, a NB-loT (narrowband internet of things) device, etc.
- UE user equipment
- M2M machine-to-machine
- MTC machine-type communications
- NB-loT narrowband internet of things
- a wireless device may also be referred to as a radio device, a radio communication device, a wireless terminal, or simply a terminal - unless the context indicates otherwise, the use of any of these terms is intended to include device-to-device UEs or devices, machine-type devices or devices capable of machine-to-machine communication, sensors equipped with a wireless device, wireless-enabled table computers, mobile terminals, smart phones, laptop-embedded equipped (LEE), laptop-mounted equipment (LME), USB dongles, wireless customer-premises equipment (CPE), etc.
- LOE laptop-embedded equipped
- LME laptop-mounted equipment
- CPE wireless customer-premises equipment
- M2M machine-to-machine
- MTC machine-type communication
- wireless sensor and sensor may also be used. It should be understood that these devices may be UEs, but are generally configured to transmit and/or receive data without direct human interaction.
- a wireless device as described herein may be, or may be comprised in, a machine or device that performs monitoring or measurements, and transmits the results of such monitoring measurements to another device or a network.
- a wireless device as described herein may be comprised in a vehicle and may perform monitoring and/or reporting of the vehicle’s operational status or other functions associated with the vehicle.
- Figures 5A-5B illustrate methods performed by wireless devices described herein according to some embodiments.
- Figure 5A is directed to a method 200 implemented by a wireless device 10 for scanning multiple channels 14 in cooperation with one or more other wireless devices in a mesh network 100.
- the method comprises transmitting signaling 18 indicating a scanning schedule 16 of when the wireless device 10 will scan one or more of the multiple channels 14 (Block 202).
- Figure 5B is directed to a method 250 implemented by a wireless device 12 for scanning multiple channels 14 in cooperation with one or more other wireless devices in a mesh network 100.
- the method comprises receiving signaling 18 that indicates a schedule 20 of when at least one other wireless device 10 in the mesh network 100 will scan one or more of the multiple channels 14 (Block 251).
- Methods 200 and 250 can be used independently or conjunction with one another.
- the received signaling 18 may be transmitted from wireless device 10 as shown in Figure 1.
- the received signaling may be from another entity (e.g., another wireless device in the mesh network 100).
- the wireless device 12, based on the received signaling 18, schedules when it will scan one or more of the multiple channels 14. (Block 253).
- Wireless device 10 and/or wireless device 12 may in some embodiments, scan one or more of the multiple channels 14 according to their respective scanning schedule 16 and 20 (Blocks 204, 255). In some situations, the wireless device 10 or 12 will receive data on one or more of the scanned channels (Blocks 206, 257). In some embodiments, the wireless device 10 or 12 receiving data determines whether to relay, keep, or discard the received data (Blocks 208, 259). For instance, the wireless device 10 may keep data relevant to the wireless device or intended for the wireless device 10. The wireless device 10 may alternatively or additionally relay the data to other wireless devices in range (e.g., by broadcasting the data). In other examples, the wireless device 10 may discard duplicative received data to avoid endlessly flooding the mesh network with the same data.
- Wireless device 12 as described above may perform the method in Figure 5B and any other processing herein by implementing any functional means or units.
- the wireless device 12 comprises respective circuits or circuitry configured to perform the steps shown in Figure 5B.
- the circuits or circuitry in this regard may comprise circuits dedicated to performing certain functional processing and/or one or more microprocessors in conjunction with memory.
- memory which may comprise one or several types of memory such as read-only memory (ROM), random-access memory, cache memory, flash memory devices, optical storage devices, etc.
- the memory stores program code that, when executed by the one or more processors, carries out the techniques described herein.
- FIG 6A illustrates a wireless device 12 implemented in accordance with one or more embodiments.
- the wireless device 12 includes processing circuitry 900 and communication circuitry 910.
- the communication circuitry 910 is configured to transmit and/or receive information to and/or from one or more other nodes, e.g., via any communication technology. Such communication may occur via one or more antennas that are either internal or external to the wireless device 12.
- the processing circuitry 900 is configured to perform processing described above, e.g., in Figure 5B, such as by executing instructions stored in memory 920.
- the processing circuitry 900 in this regard may implement certain functional means or units for realizing the method 250 in Figure 5B described above.
- Figure 6B illustrates a wireless device 12 implemented in accordance with one or more other embodiments.
- the wireless device 12 implements various functional means (or units), e.g., via the processing circuitry 900 in Figure 6A and/or via software code.
- These functional means e.g., for implementing the method in Figure 5B, include for instance means for implementing a receiving module 950 for receiving signaling 18 indicating a scanning schedule 16 as described herein.
- the wireless device 12 includes other functional means for implementing embodiments described herein.
- wireless device 12 in some embodiments includes a scheduling module 930 for scheduling based on a received scanning schedule; a scanning module 940 for scanning in accordance with the scanning schedule of the wireless device 12; a transmitting module 970 for transmitting signaling indicating a scanning schedule of the wireless device 12 and a processing module 960 for processing related to implementing the various modules or methods described herein.
- the wireless device 10 as described above may perform the method in
- the wireless device 10 comprises respective circuits or circuitry configured to perform the steps shown in Figure 5A.
- the circuits or circuitry in this regard may comprise circuits dedicated to performing certain functional processing and/or one or more microprocessors in conjunction with memory.
- memory which may comprise one or several types of memory such as read-only memory (ROM), random-access memory, cache memory, flash memory devices, optical storage devices, etc.
- the memory stores program code that, when executed by the one or more processors, carries out the techniques described herein.
- Figure 7 A illustrates a wireless device 10 implemented in accordance with one or more embodiments.
- the wireless device 10 includes processing circuitry 1000 and communication circuitry 1010.
- the communication circuitry 1010 is configured to transmit and/or receive information to and/or from one or more other nodes, e.g., via any communication technology. Such communication may occur via one or more antennas that are either internal or external to the wireless device 10.
- the processing circuitry 1000 is configured to perform processing described above, e.g., in Figure 5A, such as by executing instructions stored in memory 1020.
- the processing circuitry 1000 in this regard may implement certain functional means or units for realizing the method 250 in Figure 5A described above.
- Figure 7B illustrates a wireless device 10 implemented in accordance with one or more other embodiments.
- the wireless device 10 implements various functional means (or units), e.g., via the processing circuitry 1000 in Figure 7 A and/or via software code.
- These functional means e.g., for implementing the method in Figure 5A, include for instance means for implementing a transmitting module 1070 for transmitting signaling 18 indicating a scanning schedule 16 of wireless device 10 as described herein.
- the wireless device 10 includes other functional means for implementing embodiments described herein.
- wireless device 10 in some embodiments includes a receiving module 1050 for receiving signaling indicating a scanning schedule of a another wireless device; a scheduling module 1030 for scheduling based on a received scanning schedule; a scanning module 1040 for scanning in accordance with the scanning schedule of the wireless device 10; a processing module 1060 for processing related to implementing any of the modules or methods described herein.
- a computer program comprises instructions which, when executed on at least one processor of a wireless device, cause the wireless device to carry out any of the respective processing described above.
- a computer program in this regard may comprise one or more code modules corresponding to the means or units described above.
- Embodiments further include a carrier containing such a computer program.
- This carrier may comprise one of an electronic signal, optical signal, radio signal, or computer readable storage medium.
- embodiments herein also include a non-transitory computer readable (storage or recording) medium and comprising instructions that, when executed by a processor of a wireless device, cause the wireless device to perform as described above.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
A wireless device (12) in a mesh network (100) is configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in the mesh network (100). The wireless device (12) receives signaling (18) that indicates a schedule (16) of when at least one other wireless device (10) in the mesh network (100) will scan one or more of the multiple channels (14). Based on the received signaling (18), the wireless device (12) schedules (20) when the wireless device (12) will scan one or more of the multiple channels (14).
Description
CHANNEL SCANNING IN A MESH NETWORK
TECHNICAL FIELD
The present application relates generally to a mesh network, and more specifically to channel scanning in a mesh network.
BACKGROUND
A mesh network is a local network topology in which devices communicate directly and non-hierarchically to other devices, e.g., so as to form a“mesh” of communication paths rather than a“tree” or“star” as is conventional. In a mesh network, data propagates from a source to a destination outside the source’s range via one or more intermediate devices that relay the data. In a routed mesh network, individual devices in the network establish routes over which data is efficiently sent from source to destination. In a flooding mesh network, devices in the network relay data by broadcasting or multicasting the data to other devices in range, rather than selectively transmitting the data only to the next-hop device on a route to the destination.
This flooding approach enables simple and scalable mesh networks without the complexities of routing table creation and management. The flooding approach can also prove very reliable as it inherently exploits multipath to ensure data reaches its destination. Some contexts however jeopardize reliability. For example, in some contexts such as in Bluetooth Low Energy (BLE) mesh networks, wireless devices may be limited in the number of channels they can scan at the same time for data and/or limited in how much time they scan for data. These limitations may increase the risk that data goes unrelayed or otherwise undelivered to the intended destination.
SUMMARY
According to some embodiments herein, wireless devices in a flooding-based mesh network cooperate with one another on when to scan channels for data, e.g., that may need to be relayed. A wireless device may for instance base its schedule of when it will scan one or more of the channels on the schedule of when another wireless device in the network will scan one or more of the channels. The devices in this regard may exchange signaling indicating their respective scanning schedules. With channel scanning scheduled in this way, the devices may cooperate to scan the same channel but during different time intervals so as to avoid inefficient “double coverage” that wastes power and to help ensure at least one device is scanning the channel at any given time. Alternatively or additionally, the devices may cooperate to scan different channels during the same time interval, so as to more efficiently exploit multipath and improve reliability. Regardless, cooperative channel scanning in some embodiments preserves the reliability of a flooding-based mesh network while still allowing devices in some contexts to conserve power by limiting how much time they scan for data.
More particularly, embodiments herein include a method performed by a wireless device in a mesh network for scanning multiple channels in cooperation with one or more other wireless devices in the mesh network. The method comprises receiving signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels. In some embodiments, the method comprises, based on the received signaling, the wireless device scheduling when the wireless device will scan one or more of the multiple channels.
In some embodiments, the scheduling comprises scheduling the wireless device to scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will not scan that certain one of the multiple channels.
Alternatively or additionally, the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will scan that certain one of the multiple channels.
Alternatively or additionally, the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels that, according to the received signaling, will be scanned to at least a threshold extent by the at least one other wireless device.
Alternatively or additionally, the scheduling comprises, based on the received signaling, scheduling one or more of which of the multiple channels the wireless device will scan, if any; an order in which the wireless device will sequentially scan two or more of the multiple channels; a duration for which the wireless device will scan each of one or more of the multiple channels; or a starting time of a periodic scanning schedule according to which the wireless device scans one or more of the multiple channels.
Alternatively or additionally, the scheduling comprises switching from scanning one or more of the multiple channels according to a default schedule to scanning one or more of the multiple channels according to a schedule determined based on the received signaling.
Alternatively or additionally, the scheduling is performed based on a received signal strength or a received signal quality of the received signaling.
In any of the above embodiments, the method may further comprise scanning one or more of the multiple channels in accordance with the scheduling.
Embodiments herein also include a method performed by a wireless device in a mesh network for scanning multiple channels in cooperation with one or more other wireless devices in the mesh network. The method comprises transmitting signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
In some embodiments, the signaling indicates the schedule by indicating one or more of which of the multiple channels will be scanned; an order in which two or more of the multiple
channels will be sequentially scanned; a duration for which each of one or more of the multiple channels will be scanned; or a starting time of the schedule.
In any of the above embodiments, the multiple channels may be advertising channels in a Bluetooth mesh network.
In any of the above embodiments, the methods may further comprise in a connection less data transfer mode, receiving data over a scanned broadcast channel and selectively relaying the data towards another wireless device in the mesh network depending on whether the wireless device is a destination of the data.
Embodiments herein further include a wireless device configured for scanning multiple channels in cooperation with one or more other wireless devices in a mesh network. The wireless device is configured to receive signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels. In some embodiments the wireless device is configured to, based on the received signaling, schedule when the wireless device will scan one or more of the multiple channels.
In some embodiments, the wireless device comprises a receiving module for receiving signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels. In some embodiments the wireless device further comprises a scheduling module for scheduling, based on the received signaling, when the wireless device will scan one or more of the multiple channels.
In some embodiments, the wireless device comprises processing circuitry and a memory. The memory contains instructions executable by the processing circuitry whereby the wireless device is configured to receive signaling that indicates a schedule of when at least one other wireless device in the mesh network will scan one or more of the multiple channels. In some embodiments the memory contains instructions executable by the processing circuitry whereby the wireless device is configured to, based on the received signaling, schedule when the wireless device will scan one or more of the multiple channels.
Embodiments herein further include a wireless device configured for scanning multiple channels in cooperation with one or more other wireless devices in a mesh network. The wireless device is configured to transmit signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
In some embodiments, the wireless device comprises a transmitting module for transmitting signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
In some embodiments, the wireless device comprises processing circuitry and a memory. The memory contains instructions executable by the processing circuitry whereby the wireless device is configured to transmit signaling indicating a schedule of when the wireless device will scan one or more of the multiple channels.
In some embodiments, one or more of the wireless devices described above is configured to perform one or more methods described herein.
Embodiments also include corresponding computer programs and carriers such as non- transitory computer readable storage mediums.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram of a mesh network with wireless devices according to some embodiments.
Figure 2 is a signaling diagram according to some embodiments.
Figure 3 is a signaling diagram according to some embodiments.
Figure 4 is a logic flow diagram of a method performed by a wireless device according to some embodiments.
Figure 5A is a logic flow diagram of a method performed by a wireless device according to some embodiments.
Figure 5B is a logic flow diagram of a method performed by a wireless device according to some embodiments.
Figure 6A is a block diagram of a wireless device according to some embodiments.
Figure 6B is a block diagram of a wireless device according to some embodiments.
Figure 7A is a block diagram of a wireless device according to some embodiments.
Figure 7B is a block diagram of a wireless device according to some embodiments.
DETAILED DESCRIPTION
Figure 1 shows a mesh network 100 according to some embodiments. The mesh network 100 includes multiple wireless devices, two of which are shown as devices 10, 12, that form a mesh for collectively propagating data 24 (e.g., application data or user data) from a source 22 to a destination 26. The mesh network 100 in some embodiments is a flooding-based mesh network that relies on at least some devices in the network 100 to propagate the data 24 by broadcasting, multicasting, or otherwise transmitting that data to other devices in range.
Devices in the mesh network 100 use multiple channels 14 for propagating the data 24 in this way. Figure 1 shows N such channels 14 labeled as channels 14-1 ,... 14-N, with N > 1. In some embodiments, the channels 14 are broadcast channels. For example, where the network 100 is a Bluetooth Low Energy (BLE) mesh network, the channels 14 may be advertising channels on which connection advertisements (e.g., connectable advertising packets) are broadcasted for discovery of and connection to other devices. In this case, devices may exploit the advertising channels for transmitting data 24 in a connectionless data transfer mode, e.g., so as to propagate the data 24 without establishing connections between the devices.
Regardless of the particular type of the channels 14, though, Figure 1 shows an example where the source 22 of the data 24 transmits the data 24 on one or more of the channels 14
(e.g., channel 14-1). Each of the devices 10, 12 scans one or more of these channels 14 for any data that may be destined for it or that may need to be relayed. In Figure 1’s example, device 12 receives the data 24 and then (e.g., after a random delay) relays the received data 24 towards the destination 26 by transmitting the data 24 on one or more of the channels 14 (e.g., channel 14-N).
In some embodiments, though, devices 10, 12 conserve power by limiting how much time they scan for data. In these and other embodiments, then, wireless devices 10, 12 in the mesh network 100 cooperate with one another on when to scan the channels 14 for data 24. Wireless device 12 may for instance base its schedule of when it will scan one or more of the channels 14 on the schedule of when wireless device 10 will scan one or more of the channels 14.
Figure 1 in this regard shows that wireless device 10 is configured to scan one or more of the channels 14 according to a certain scanning schedule 16, which may be for instance a default schedule. In Figure 1’s example, the device 10 scans channel 14-1 during time periods P1 and P3 which may recur periodically. In some embodiments, the device 10 may also scan one or more others of the channels 14, such as by scanning channel 14-N during periods P2 and P4 as shown. Regardless, the scanning schedule 16 governs when and on what channels the wireless device 10 scans.
Notably, wireless device 10 transmits (e.g., broadcasts) signaling 18 indicating this schedule 16 of when the wireless device 10 will scan one or more of the multiple channels 14. The signaling 18 may indicate the schedule 16 for instance by indicating which of the channels 14 will be scanned, a duration for which each of one or more of the channels 14 will be scanned, a starting time of the schedule 16, and/or an order in which two or more of the channels 14 will be sequentially scanned. Regardless of how the signaling 18 indicates the device’s scanning schedule 16, wireless device 12 receives the signaling 16. Based on that signaling 16, wireless device 12 in some embodiments schedules when the device 12 will scan one or more of the channels 14. The wireless device 12 may for instance establish, adjust, or otherwise determine its own scanning schedule 20 based on the scanning schedule 16 of wireless device 10 indicated by the received signaling 18. Accordingly, wireless device 12’s scanning schedule 20 may be dependent on or otherwise influenced by wireless device 10’s scanning schedule 16.
For instance, the wireless device 12 may schedule to not scan a certain one of the multiple channels (e.g., channel 14-1) during at least some of the time when, according to the received signaling 18, wireless device 10 will scan that certain one of the multiple channels. For example, as shown in Figure 1 , the wireless device 12 schedules to not scan channel 14-1 during time periods P1 and P3 in which wireless device 10 scans channel 14-1. In other words, wireless device 12 refrains from scheduling to scan channel 14-1 during time periods P1 and P3 in which wireless device 10 scans channel 14-1.
With channel scanning scheduled in this way, the devices 10, 12 effectively cooperate so as to avoid inefficient“double coverage” that wastes power. Indeed, if both devices 10, 12 had scanned channel 14-1 during time periods P1 and P3, both devices 10, 12 would receive the same data and re-transmit the same data. Especially where the devices 10, 12 are substantially co-located with one another so as to have similar transmission coverage areas, reception and re-transmission by both devices 10, 12 would prove unnecessarily duplicative and inefficient.
Accordingly, the wireless device 12 may instead schedule to scan a certain one of the multiple channels (e.g., channel 14-1) during at least some of the time when, according to the received signaling 18, wireless device 10 will not scan that certain one of the multiple channels. For example, as shown in Figure 1 , the wireless device 12 schedules to scan channel 14-1 during time periods P2 and P4 based on the signaling 18 indicating that wireless device 10 is not scanning channel 14-1 during those time periods. This may for instance involve the wireless device 12 revising its scanning schedule from scanning channel 14-1 during time periods P1 and P3 to scanning channel 14-1 during time periods P2 and P4.
Scheduling channel scanning in this way therefore may also help ensure that at least one device is scanning channel 14-1 at any given time. In this example, then, data transmitted during time periods P1 or P3 will be relayed by device 10 whereas data transmitted during time periods P2 or P4 will be relayed by device 12, e.g., ignoring propagation delay. Compared to both devices 10, 12 scanning channel 14-1 during time periods P1 and P3 only so as to leave time periods P2 and P4“uncovered”, this increases the probability that at least one device 10,12 will receive and relay data transmission on channel 14-1 and in turn increases the reliability of data transmission in the mesh network 100.
Alternatively or additionally, the devices 10, 12 may cooperate to scan different channels during the same time interval, so as to more efficiently exploit multipath and improve reliability.
In Figure Ts example, for instance, devices 10, 12 cooperate so that device 10 scans channel 14-1 during time period P1 while device 12 scans channel 14-N during that time period P1. Similarly, devices 10, 12 cooperate so that device 10 scans channel 14-N during time period P2 while device 12 scans channel 14-1 during that time period P1. This way, no matter on which of the channels 14-1 , 14-N data is transmitted during time periods P1 and P2, the data will be received and selectively relayed by at least one of the devices 10, 12. Some embodiments thereby avoid a situation in which multiple devices scan one channel, but no devices scan another of the channels.
Scheduling channel scanning in these or other ways may involve establishing a schedule, adjusting a current or default schedule, or maintaining a current or default schedule. Figures 2 and 3 illustrate various examples in this regard in the context of a BLE mesh network where wireless devices limit their scanning to one channel at any given time.
As shown in Figure 2, the multiple channels 14 that wireless devices 10, 12 scan are advertisement or broadcast channels 37, 38, and 39 of a BLE mesh network. Each of wireless devices 10 and 12 has a scanning schedule in the form of a scanning pattern that periodically recurs. In each recurring scanning period, a wireless device scans one or more of the advertising channels during a respective window of time. Where more than one advertising channels are scanned, the device’s scanning may sequentially hop from channel to channel in a certain order. As shown, for instance, device 12’s scanning pattern defines a scanning period 312-A. In this scanning period 312-A, device 12 first scans channel 37 for a defined duration during scanning window 412-A, then switches to scanning channel 38 for the same duration during a subsequent, non-overlapping scanning window, and next switches to scanning channel 39 for the same duration during another subsequent, non-overlapping scanning window.
Similarly, device 10’s scanning pattern defines a scanning period 310-A. In this scanning period 310-A, device 10 first scans channel 37 during scanning window 410-A, then switches to scanning channel 38 during a subsequent, non-overlapping scanning window, and next switches to scanning channel 39 during another subsequent, non-overlapping scanning window. In this example, then, the devices’ respective scanning windows on each channel partially overlap in time, e.g., so as to constitute double coverage of the channels by the devices 10, 12 during the overlap.
Figure 2 illustrates how a device may change its scanning schedule from scanning period to scanning period, e.g., based on signaling from another device announcing or otherwise indicating its scanning schedule. In Figure 2’s example, for instance, wireless device 10 transmits signaling on each of the channels that indicates device 10’s schedule for scanning the channels. Wireless device 12 receives that signaling while scanning channel 37 during scanning window 412-A of scanning period 312-A. The reception of this signaling may be unscheduled or otherwise uncoordinated between the devices. Wireless device 12 may for example have been configured by default (e.g., on startup) to scan channel 37 during this scanning window 412-A, and may just happen to receive device 12’s signaling while scanning.
In any event, based on this signaling, wireless device 12 adjusts its schedule of when it will scan the channels during the next scanning period, namely scanning period 312-B. As shown, for instance, wireless device 12 changes its schedule by simply changing the order in which it will scan the channels during scanning period 312-B, e.g., while keeping the scanning duration the same. Rather than scanning channel 37 first, then channel 38, and then channel 39 as in scanning period 312-A, device 12 schedules to scan channel 38 first, then channel 39, and then channel 37 in scanning period 312-B. This has the effect of advancing the relative time within the scanning period 312-B at which the device 12 scans channels 38 and 39, but deferring the time at which the device 12 scans channel 37. This effectively eliminates overlap between the windows of time during which the devices 10, 12 will scan the channels. Indeed, as a result of
device 12’s schedule adjustment, the scanning windows of the devices 10, 12 in the next scanning periods 310-B and 410-B do not overlap in time.
This may be the case even if, as in this example, device 10 does not adjust its scanning schedule. In fact, wireless device 12 in this example adjusts its scanning schedule and, at the beginning of its next scanning period 312-B, transmits signaling indicating that adjusted schedule. Wireless device 10 receives that signaling while scanning channel 39 at the end of scanning period 310-A. Because the signaling indicates that no overlap will exist between the devices’ scanning windows in device 10’s next scanning period 310-B, device 10 need not adjust its scanning schedule for that next scanning period 310-B.
Figure 3 shows that wireless device 12 may in some embodiments adjust its schedule to not only reduce scanning overlap with another wireless device (as in Figure 2) but also increase the total time over which the devices collectively scan one or more of the channels 14. Wireless device 12 does this in Figure 3 by adjusting (e.g., increasing) the duration of time over which it scans one or more certain channels, namely channels 37 and 38. In particular, as contrasted with Figure 2, wireless device 12 increases the duration of its scanning window 412-C on channel 37 in the next scanning period 312-C, e.g., to reduce the amount of time during which neither device 10 nor device 12 scans channel 37. Wireless device 12 similarly increases the duration of its scanning window on channel 38 in the next scanning period. With at least some of the channels scanned by at least one device for a greater amount of time, this has the advantage of increasing the probability that data is reliably propagated from source to destination.
Note of course that a wireless device may schedule when it will scan one or more of the channels to achieve any number of objectives, not just those illustrates by the above examples. In some embodiments, for example, a wireless device may instead decrease the duration of its scanning window on a certain channel, e.g., to conserve power, especially if that scanning window overlaps with that of another device. Alternatively or additionally, a wireless device may schedule to not scan a certain one of the channels (at all). The wireless device may for instance schedule to not scan a certain channel that, according to received signaling, will be scanned to at least a threshold extent by at least one other wireless device. This threshold extent may be defined for example in terms of a total amount of time or percentage of time (e.g., 90%) the channel is scanned by other devices. This advantageously allows the wireless device to conserve power where there is sufficient monitoring for data on a channel during a period of time.
Generally, though, no matter the objective of channel scanning scheduling, a wireless device herein may perform that scheduling based on received signaling 18 indicating another device’s scanning schedule, in any number of ways. For example, a wireless device 12 may schedule which of the channels 14 the wireless device 12 will scan, if any, based on the received signaling 18. Alternatively or additionally, a wireless device 12 may schedule an
order in which the wireless device 12 will scan two or more of the channels 14, based on the received signaling. In still other embodiments, the wireless device 12 may schedule, based on the received signaling, a duration for which the device 12 will scan each of one or more of the channels 14. In yet other embodiments, the wireless device 12 may schedule, based on the received signaling, a starting time of a periodic scanning schedule according to which the device 12 scans one or more of the channels 14.
Note too that the above-described approach of starting with a default scanning schedule advantageously allows each device to begin scanning independently (e.g., in an asynchronous fashion with respect to other devices). In some embodiments, though, the default scanning schedule may be configured so that it is likely a device will be scanning when at least one other device transmits signaling indicating that device’s scanning schedule.
Regardless, Figure 4 shows a flow chart 500 for wireless device 12 to adjust its scanning schedule according to some embodiments employing a default schedule. First, the wireless device 12 is initialized (Block 501). The wireless device 12 according to some embodiments sets up a default schedule upon initialization (Block 502). For instance, the default schedule may be derived by the wireless device (e.g., randomly selecting a default schedule from a pool of available default schedules) or predefined on the wireless device 12. The wireless device 12 transmits signaling indicating its scanning schedule (Block 503). The wireless device 12 then starts scanning according to its scanning schedule (Block 504). If the wireless device 12 receives signaling indicating a scanning schedule of another wireless device 10, (Block 505), it determines whether it should adjust its scanning schedule (Block 506). If so, the device 12 performs that adjustment (Block 507). This may for instance involve the device switching from scanning one or more of the channels according to a default schedule to scanning one or more of the channels according to a schedule determined based on the received signaling. After performing the adjustment, or determining no such adjustment is to be made, the device 12 may keep listening for signaling from any other devices until the end of its scanning period (Block 508). At the end of the scanning period, the device 12 transmits signaling again indicating its scanning schedule, which may be adjusted relative to the schedule signaled previously.
Note that signaling 18 herein may indicate a wireless device’s scanning schedule in any number of ways. The signaling 18 may for instance indicate such a schedule across one or more messages, at any protocol layer. The signaling 18 may indicate the scanning schedule in terms of any number of parameters or information fields. The signaling may for example indicate which of the multiple channels 14 will be scanned, an order in which two or more of the channels 14 will be sequentially scanned, a duration for which each of one or more of the channels 14 will be scanned, and/or a starting time of the schedule.
In some embodiments, the signaling 18 may comprise a single message transmitted on a single channel but indicating when the device 12 will scan each of multiple channels.
Alternatively, the signaling 18 may comprise multiple individual messages transmitted on respective ones of the channels to indicate when the device 12 will scan that channel.
Note that although embodiments herein have been illustrated for simplicity with respect to two wireless devices 10, 12, in the mesh network 100, the embodiments may be extendable to more than two wireless devices in the network 10. Rather than simply scheduling channel scanning based on signaling 18 received from one other wireless device 10, for instance, wireless device 12 may schedule its channel scanning based on signaling received from one or more other wireless devices. In this way, wireless device 12 may account for the channel scanning scheduled by multiple other wireless devices in the network 100, e.g., to avoid scanning overlap with any of those multiple devices.
Furthermore, although data 24 may be relayed in the network 100, signaling 18 indicating a device’s scanning schedule may not be relayed according to some embodiments. This means that only other devices within transmission range will receive signaling indicating a device’s scanning schedule, e.g., so that only substantially co-located devices cooperate in scanning the channels 14.
That said, in some embodiments, a wireless device 12 may schedule its channel scanning based on signaling received from another wireless device 10, in a way that depends on how close the other wireless device 10 is and/or on how much the other wireless device’s transmission or reception coverage area overlaps with its own. In one embodiment, for instance, wireless device 12 schedules its channel scanning to avoid overlap with a closer device’s scanning, but to not avoid overlap with the scanning of a device that is farther away. In some embodiments, wireless device 12 implements this by performing channel scanning scheduling based on a received signal strength or received signal quality of the signaling 18. The received signal strength may for instance be reflected in a received signaling strength indicator (RSSI) value. Accordingly, in a case where many wireless devices exist in a certain area and some device’s scanning has to overlap with another device’s scanning, a device may preferentially schedule its scanning to overlap with one or more other devices whose signaling 18 is received with lower RSSI, e.g., relative to the higher RSSI with which signaling is received from still other devices. This lower RSSI may implicitly indicate that the other devices are farther away and so their coverage areas do not overlap as much.
Although some embodiments are described in the context of a BLE mesh network, embodiments herein are extendable to any type of flooding-based mesh network. Some embodiments though provide particularly efficient performance in stationary (or slowly moving) networks (e.g., in which signaling 18 indicating a device’s channel scanning schedule is transmitted with a periodicity of minutes or hours).
Moreover, some embodiments herein are transparent to any legacy wireless devices in the mesh network 100. Indeed, if there are legacy devices in the area (either joining or operating beforehand), embodiments will not affect the system because these legacy devices
will not be detected by wireless devices implementing the embodiments as they will not transmit signaling indicating a scanning schedule. Further, the legacy devices will not understand the contents of any received signaling.
In view of the above, a wireless device herein is any type of device capable of wirelessly communicating with another device in a mesh network. A wireless device may therefore refer to a user equipment (UE), a machine-to-machine (M2M) device, a machine-type communications (MTC) device, a NB-loT (narrowband internet of things) device, etc. However it should be noted that a UE does not necessarily have a“user” in the sense of an individual person owning and/or operating the device. A wireless device may also be referred to as a radio device, a radio communication device, a wireless terminal, or simply a terminal - unless the context indicates otherwise, the use of any of these terms is intended to include device-to-device UEs or devices, machine-type devices or devices capable of machine-to-machine communication, sensors equipped with a wireless device, wireless-enabled table computers, mobile terminals, smart phones, laptop-embedded equipped (LEE), laptop-mounted equipment (LME), USB dongles, wireless customer-premises equipment (CPE), etc. In the discussion herein, the terms machine-to-machine (M2M) device, machine-type communication (MTC) device, wireless sensor, and sensor may also be used. It should be understood that these devices may be UEs, but are generally configured to transmit and/or receive data without direct human interaction.
In an internet of things (loT) scenario, a wireless device as described herein may be, or may be comprised in, a machine or device that performs monitoring or measurements, and transmits the results of such monitoring measurements to another device or a network.
Particular examples of such machines are power meters, industrial machinery, or home or personal appliances, e.g. refrigerators, televisions, personal wearables such as watches etc. In other scenarios, a wireless device as described herein may be comprised in a vehicle and may perform monitoring and/or reporting of the vehicle’s operational status or other functions associated with the vehicle.
Generally, then, Figures 5A-5B illustrate methods performed by wireless devices described herein according to some embodiments. Figure 5A is directed to a method 200 implemented by a wireless device 10 for scanning multiple channels 14 in cooperation with one or more other wireless devices in a mesh network 100. The method comprises transmitting signaling 18 indicating a scanning schedule 16 of when the wireless device 10 will scan one or more of the multiple channels 14 (Block 202).
Figure 5B is directed to a method 250 implemented by a wireless device 12 for scanning multiple channels 14 in cooperation with one or more other wireless devices in a mesh network 100. The method comprises receiving signaling 18 that indicates a schedule 20 of when at least one other wireless device 10 in the mesh network 100 will scan one or more of the multiple channels 14 (Block 251). Methods 200 and 250 can be used independently or conjunction with one another. For example, the received signaling 18 may be transmitted from wireless device
10 as shown in Figure 1. Alternatively, the received signaling may be from another entity (e.g., another wireless device in the mesh network 100). Regardless, in some embodiments, the wireless device 12, based on the received signaling 18, schedules when it will scan one or more of the multiple channels 14. (Block 253).
Wireless device 10 and/or wireless device 12 according to either method may in some embodiments, scan one or more of the multiple channels 14 according to their respective scanning schedule 16 and 20 (Blocks 204, 255). In some situations, the wireless device 10 or 12 will receive data on one or more of the scanned channels (Blocks 206, 257). In some embodiments, the wireless device 10 or 12 receiving data determines whether to relay, keep, or discard the received data (Blocks 208, 259). For instance, the wireless device 10 may keep data relevant to the wireless device or intended for the wireless device 10. The wireless device 10 may alternatively or additionally relay the data to other wireless devices in range (e.g., by broadcasting the data). In other examples, the wireless device 10 may discard duplicative received data to avoid endlessly flooding the mesh network with the same data.
Wireless device 12 as described above may perform the method in Figure 5B and any other processing herein by implementing any functional means or units. In one embodiment, for example, the wireless device 12 comprises respective circuits or circuitry configured to perform the steps shown in Figure 5B. The circuits or circuitry in this regard may comprise circuits dedicated to performing certain functional processing and/or one or more microprocessors in conjunction with memory. In embodiments that employ memory, which may comprise one or several types of memory such as read-only memory (ROM), random-access memory, cache memory, flash memory devices, optical storage devices, etc., the memory stores program code that, when executed by the one or more processors, carries out the techniques described herein.
Figure 6A illustrates a wireless device 12 implemented in accordance with one or more embodiments. As shown, the wireless device 12 includes processing circuitry 900 and communication circuitry 910. The communication circuitry 910 is configured to transmit and/or receive information to and/or from one or more other nodes, e.g., via any communication technology. Such communication may occur via one or more antennas that are either internal or external to the wireless device 12. The processing circuitry 900 is configured to perform processing described above, e.g., in Figure 5B, such as by executing instructions stored in memory 920. The processing circuitry 900 in this regard may implement certain functional means or units for realizing the method 250 in Figure 5B described above.
Figure 6B illustrates a wireless device 12 implemented in accordance with one or more other embodiments. As shown, the wireless device 12 implements various functional means (or units), e.g., via the processing circuitry 900 in Figure 6A and/or via software code. These functional means, e.g., for implementing the method in Figure 5B, include for instance means for implementing a receiving module 950 for receiving signaling 18 indicating a scanning
schedule 16 as described herein. In some embodiments, the wireless device 12 includes other functional means for implementing embodiments described herein. For instance, wireless device 12 in some embodiments includes a scheduling module 930 for scheduling based on a received scanning schedule; a scanning module 940 for scanning in accordance with the scanning schedule of the wireless device 12; a transmitting module 970 for transmitting signaling indicating a scanning schedule of the wireless device 12 and a processing module 960 for processing related to implementing the various modules or methods described herein.
The wireless device 10 as described above may perform the method in
Figure 5A and any other processing herein by implementing any functional means or units. In one embodiment, for example, the wireless device 10 comprises respective circuits or circuitry configured to perform the steps shown in Figure 5A. The circuits or circuitry in this regard may comprise circuits dedicated to performing certain functional processing and/or one or more microprocessors in conjunction with memory. In embodiments that employ memory, which may comprise one or several types of memory such as read-only memory (ROM), random-access memory, cache memory, flash memory devices, optical storage devices, etc., the memory stores program code that, when executed by the one or more processors, carries out the techniques described herein.
Figure 7 A illustrates a wireless device 10 implemented in accordance with one or more embodiments. As shown, the wireless device 10 includes processing circuitry 1000 and communication circuitry 1010. The communication circuitry 1010 is configured to transmit and/or receive information to and/or from one or more other nodes, e.g., via any communication technology. Such communication may occur via one or more antennas that are either internal or external to the wireless device 10. The processing circuitry 1000 is configured to perform processing described above, e.g., in Figure 5A, such as by executing instructions stored in memory 1020. The processing circuitry 1000 in this regard may implement certain functional means or units for realizing the method 250 in Figure 5A described above.
Figure 7B illustrates a wireless device 10 implemented in accordance with one or more other embodiments. As shown, the wireless device 10 implements various functional means (or units), e.g., via the processing circuitry 1000 in Figure 7 A and/or via software code. These functional means, e.g., for implementing the method in Figure 5A, include for instance means for implementing a transmitting module 1070 for transmitting signaling 18 indicating a scanning schedule 16 of wireless device 10 as described herein. In some embodiments, the wireless device 10 includes other functional means for implementing embodiments described herein.
For instance, wireless device 10 in some embodiments includes a receiving module 1050 for receiving signaling indicating a scanning schedule of a another wireless device; a scheduling module 1030 for scheduling based on a received scanning schedule; a scanning module 1040 for scanning in accordance with the scanning schedule of the wireless device 10; a processing
module 1060 for processing related to implementing any of the modules or methods described herein.
Those skilled in the art will also appreciate that embodiments herein further include corresponding computer programs.
A computer program comprises instructions which, when executed on at least one processor of a wireless device, cause the wireless device to carry out any of the respective processing described above. A computer program in this regard may comprise one or more code modules corresponding to the means or units described above.
Embodiments further include a carrier containing such a computer program. This carrier may comprise one of an electronic signal, optical signal, radio signal, or computer readable storage medium.
In this regard, embodiments herein also include a non-transitory computer readable (storage or recording) medium and comprising instructions that, when executed by a processor of a wireless device, cause the wireless device to perform as described above.
The present invention may, of course, be carried out in other ways than those specifically set forth herein without departing from essential characteristics of the invention. The present embodiments are to be considered in all respects as illustrative and not restrictive, and all changes coming within the meaning and equivalency range of the appended claims are intended to be embraced therein.
Claims
1. A method performed by a wireless device (12) in a mesh network (100) for scanning multiple channels (14) in cooperation with one or more other wireless devices in the mesh network (100), the method comprising:
receiving (251) signaling (18) that indicates a schedule (16) of when at least one other wireless device (10) in the mesh network (100) will scan one or more of the multiple channels (14); and
based on the received signaling (18), scheduling (253) when the wireless device (12) will scan one or more of the multiple channels (14).
2. The method of claim 1 , wherein the scheduling comprises scheduling the wireless device to scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will not scan that certain one of the multiple channels.
3. The method of any of claims 1-2, wherein the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels during at least some of the time when, according to the received signaling, the at least one other wireless device will scan that certain one of the multiple channels.
4. The method of any of claims 1-3, wherein the scheduling comprises scheduling the wireless device to not scan a certain one of the multiple channels that, according to the received signaling, will be scanned to at least a threshold extent by the at least one other wireless device.
5. The method of any of claims 1-4, wherein the scheduling comprises, based on the received signaling, scheduling one or more of:
which of the multiple channels the wireless device will scan, if any;
an order in which the wireless device will sequentially scan two or more of the multiple channels;
a duration for which the wireless device will scan each of one or more of the multiple channels; or
a starting time of a periodic scanning schedule according to which the wireless device scans one or more of the multiple channels.
6. The method of any of claims 1-5, wherein the scheduling comprises switching from scanning one or more of the multiple channels according to a default schedule to scanning one or more of the multiple channels according to a schedule determined based on the received signaling.
7. The method of any of claims 1-6, wherein the scheduling is performed based on a received signal strength or a received signal quality of the received signaling.
8. The method of any of claims 1-7, further comprising scanning one or more of the multiple channels (14) in accordance with the scheduling.
9. A method performed by a wireless device (10) in a mesh network (100) for scanning multiple channels (14) in cooperation with one or more other wireless devices in the mesh network (100), the method comprising:
transmitting signaling (18) indicating a schedule (16) of when the wireless device (10) will scan one or more of the multiple channels (14).
10. The method of any of claims 1-9, wherein the signaling indicates the schedule by indicating one or more of:
which of the multiple channels will be scanned;
an order in which two or more of the multiple channels will be sequentially scanned; a duration for which each of one or more of the multiple channels will be scanned; or a starting time of the schedule.
11. The method of any of claims 1-10, wherein the multiple channels are advertising channels (37, 38, 39) in a Bluetooth mesh network.
12. The method of any of claims 1-11 , further comprising, in a connection-less data transfer mode, receiving data over one of the channels when scanning that channel and selectively relaying the data towards another wireless device in the mesh network depending on whether the wireless device is a destination of the data.
13. A wireless device (12) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device (12) configured to:
receive signaling (18) that indicates a schedule (16) of when at least one other wireless device (10) in the mesh network (100) will scan one or more of the multiple channels (14); and
based on the received signaling, schedule (20) when the wireless device (12) will scan one or more of the multiple channels (14).
14. The wireless device of claim 13, configured to perform the method of any of claims 1-8 and 10 12
15. A wireless device (12) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device comprising: a receiving module (950) for receiving signaling (18) that indicates a schedule (16) of when at least one other wireless device in the mesh network will scan one or more of the multiple channels (14); and
a scheduling module (940) for scheduling, based on the received signaling (18), when the wireless device (12) will scan one or more of the multiple channels.
16. The wireless device of claim 15, comprising one or more modules for performing the method of any of claims 1-8 and 10-12.
17. A wireless device (12) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device comprising: processing circuitry (900) and a memory (920), the memory (920) containing instructions executable by the processing circuitry (900) whereby the wireless device (12) is configured to:
receive signaling (18) that indicates a schedule of when at least one other
wireless device (10) in the mesh network (100) will scan one or more of the multiple channels (14); and
based on the received signaling, schedule (20) when the wireless device (12) will scan one or more of the multiple channels (14).
18. The wireless device of claim 17, the memory (920) containing instructions executable by the processing circuitry (900) whereby the wireless device is configured to perform the method of any of claims 1-8 and 10-12.
19. A wireless device (10) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device (10) configured to:
transmit signaling (18) indicating a schedule (16) of when the wireless device (10) will scan one or more of the multiple channels.
20. The wireless device of claim 19, configured to perform the method of any of claims 10-12.
21. A wireless device (10) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device (10) comprising:
a transmitting module (1070) for transmitting signaling (18) indicating a schedule (16) of when the wireless device (10) will scan one or more of the multiple channels (14).
22. The wireless device of claim 21 , comprising one or more modules for performing the method of any of claims 10-12.
23. A wireless device (10) configured for scanning multiple channels (14) in cooperation with one or more other wireless devices in a mesh network (100), the wireless device (10) comprising:
processing circuitry (1000) and a memory (1020), the memory (1020) containing
instructions executable by the processing circuitry (1000) whereby the wireless device (10) is configured to transmit signaling (18) indicating a schedule (16) of when the wireless device (10) will scan one or more of the multiple channels (14).
24. The wireless device of claim 23, the memory (1020) containing instructions executable by the processing circuitry (1000) whereby the wireless device is configured to perform the method of claims 10-12.
25. A computer program comprising instructions which, when executed by at least one processor of the wireless device, causes the wireless device to carry out the method of any of claims 1-12.
26. A carrier containing the computer program of claim 25, wherein the carrier is one of an electronic signal, optical signal, radio signal, or computer readable storage medium.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/SE2017/051245 WO2019117763A1 (en) | 2017-12-11 | 2017-12-11 | Channel scanning in a mesh network |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/SE2017/051245 WO2019117763A1 (en) | 2017-12-11 | 2017-12-11 | Channel scanning in a mesh network |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019117763A1 true WO2019117763A1 (en) | 2019-06-20 |
Family
ID=66819419
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/SE2017/051245 Ceased WO2019117763A1 (en) | 2017-12-11 | 2017-12-11 | Channel scanning in a mesh network |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2019117763A1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20150245369A1 (en) * | 2014-02-25 | 2015-08-27 | Cambridge Silicon Radio Limited | Communicating data over a mesh network |
| US9380531B1 (en) * | 2015-01-27 | 2016-06-28 | Dragonfly Technology Inc. | Systems and methods for providing wireless sensor networks with an asymmetric network architecture |
| US20160309496A1 (en) * | 2015-04-20 | 2016-10-20 | Intel IP Corporation | Apparatus, System And Method Of Communicating In A Neighbor Awareness Networking (NAN) Cluster |
| US20170019853A1 (en) * | 2015-07-14 | 2017-01-19 | Intel Corporation | Power saving architectures and techniques in wireless networks |
-
2017
- 2017-12-11 WO PCT/SE2017/051245 patent/WO2019117763A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20150245369A1 (en) * | 2014-02-25 | 2015-08-27 | Cambridge Silicon Radio Limited | Communicating data over a mesh network |
| US9380531B1 (en) * | 2015-01-27 | 2016-06-28 | Dragonfly Technology Inc. | Systems and methods for providing wireless sensor networks with an asymmetric network architecture |
| US20160309496A1 (en) * | 2015-04-20 | 2016-10-20 | Intel IP Corporation | Apparatus, System And Method Of Communicating In A Neighbor Awareness Networking (NAN) Cluster |
| US20170019853A1 (en) * | 2015-07-14 | 2017-01-19 | Intel Corporation | Power saving architectures and techniques in wireless networks |
Non-Patent Citations (1)
| Title |
|---|
| HEYDON R. ET AL.: "Mesh Profile", BLUETOOTH SIG; INC, 13 July 2017 (2017-07-13), pages 1 - 331, XP055503252, Retrieved from the Internet <URL:https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=429633> * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9686369B2 (en) | System and method for multihop service discovery with member station proxy service advertisements | |
| US9402266B2 (en) | Priority-based data transmission method in a peer-to-peer communication system | |
| US8706145B2 (en) | Multihop paging of a peer in a peer-to-peer communication network | |
| US9723581B2 (en) | Systems and methods for establishing synchronization across multiple networks and participating STAs via operations on a known common channel | |
| US9723464B2 (en) | System and method for identifying a service mesh | |
| US20160380778A1 (en) | A Master Device and Methods Therein | |
| US20090017797A1 (en) | Paging a peer in a peer-to-peer communication network | |
| US10893457B2 (en) | Route discovery in a mesh communication network | |
| CN107005419B (en) | Broadcast in a mesh network | |
| US10070388B2 (en) | Coordinated duty cycle assignment in mesh networks | |
| Vukadinovic et al. | Enhanced power saving mode for low-latency communication in multi-hop 802.11 networks | |
| US9626698B2 (en) | Systems and methods for power efficient discovery of infrastructure services on a network | |
| US20180062975A1 (en) | Method of Packet Transmission in a Mesh Network | |
| Ahmed et al. | Ad-rdc: A novel adaptive dynamic radio duty cycle mechanism for low-power iot devices | |
| Campista et al. | Advanced routing protocols for wireless networks | |
| US11044771B2 (en) | Method and device for sharing an established connection between a primary device and one of a plurality of secondary devices in a network | |
| Guerroumi et al. | On the medium access control protocols suitable for wireless sensor networks-a survey | |
| WO2019117763A1 (en) | Channel scanning in a mesh network | |
| Sudheendran et al. | Challenges of mobility aware MAC protocols in WSN | |
| CN114902736B (en) | Data transmission method, device and system | |
| Jin et al. | An energy-efficient uncoordinated cooperative scheme with uncertain relay distribution intensity | |
| Kang et al. | A reliable and scalable broadcast protocol for wireless multi-hop networks using subcarrier-level tone-signals | |
| Ait Aoudia et al. | Research Article OPWUM: Opportunistic MAC Protocol Leveraging Wake-Up Receivers in WSNs |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17934605 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17934605 Country of ref document: EP Kind code of ref document: A1 |