The present invention relates to wireless communications. More particularly, the present invention relates to recovery techniques in wireless communications networks.
Short-range wireless communications networks typically involve devices that have a communications range of one hundred meters or less. To provide communications over long distances, these networks often interface with other networks. For example, short-range networks may interface with cellular networks, wireline telecommunications networks, and the Internet.
Terminals in short-range wireless networks often behave in an ad hoc manner. That is, they dynamically create and terminate connections with each other. For instance, a terminal may create a connection when it desires to communicate with another terminal in its communications range or coverage area.
Ad hoc networks typically employ wireless transmission techniques that are well suited for short-range communications. Examples of such techniques include Bluetooth, IEEE 802.15.3, and ultra wideband (UWB) technologies.
Various short-range networks, such as Bluetooth and IEEE 802.15.3 networks, are referred to as wireless personal area networks (WPANs) or piconets. These networks include a single coordinator device (e.g, a master or piconet coordinator) and multiple non-coordinating devices (e.g., DEVs or slave devices)
IEEE 802.15.3 specifies a WPAN having multiple devices (DEVs). One of these devices functions as a piconet coordinator (PNC) while the other devices behave in a non-coordinator role. The timing of IEEE 802.15.3 piconets are based on a repeating pattern of “superframes” in which the network devices may be allocated communications resources.
Connections between the devices within an IEEE 802.15.3 piconet may be either “normal” connections or peer-to-peer connections. In “normal” connections, all traffic is routed through the PNC, while in peer-to-peer connections, all traffic is sent directly between the peer devices (DEVs). However, peer-to-peer connections still require PNC involvement as the PNC allocates a portion of the piconet's common transmission medium for the DEVs to communicate over the peer-to-peer connection. This is because, in IEEE 802.15.3 networks, the PNC handles connection establishment for all types of connections (i.e., normal and peer-to-peer) and allocates the network's resources.
Moreover, the PNC's role is critical during the entire pendency of a connection. For instance, if a piconet's PNC loses its connection with the other DEVs in the piconet, or if the PNC needs to terminate such connections temporarily, all connections involving these DEVs are totally lost. Therefore, the PNC is a single point of failure in an IEEE 802.15.3 piconet.
Recovery of the piconet from such a failure involves recreating its connections at all levels (e.g., physical, logical, link, network, etc.). Unfortunately, this is an involved process requiring tasks, such as piconet querying and the determination of nearby DEVs. Moreover, authentication and key exchange procedures may also need to be performed for the piconet to be recovered.
Such procedures are undesirable because they require a substantial amount of valuable time. Moreover, disappearance of the PNC may cause data to be lost if the piconet cannot be reformed. Accordingly, techniques are needed for devices to maintain their communications connections when contact with a coordinator device is lost.
The present invention provides recovery techniques for wireless communications devices. For instance, according to embodiments of the present invention, a device and method may participate in a wireless communications network having a coordinator device that is responsible for allocating resources in the wireless communications network. Further, the device and method may establish a peer-to-peer connection with a remote device in the wireless communications network. This peer-to-peer connection is based on a reservation of resources from the coordinator device, wherein the reservation has one or more timing parameters. Upon detecting a disappearance of the coordinator device from the wireless communications network, communications with the remote device continues according to the one or more timing parameters of the peer-to-peer connection.
This disappearance may be detected in various ways. For instance, this detection may involve failing to receive a beacon transmission from the coordinator device, or failing to receive a predetermined number of consecutive beacon transmission from the coordinator device.
In aspects of the present invention, a query may be sent to the remote device across the peer-to-peer connection. This query asks the remote device whether it has detected the disappearance of the coordinator device from the wireless communications network. A response to this query may indicate that the remote device continues to detect the presence of the coordinator device. Alternatively, the response may indicate that the remote device has detected the disappearance of the coordinator device.
In this case, the device and method waits for a reappearance of the coordinator device during a predetermined time interval. When the coordinator device fails to reappear during the predetermined time interval, the device and method determines with the remote device whether to become a new coordinator device for the wireless communications network.
The present invention also provides an apparatus having a transceiver and controller that are configured to perform various features of the present invention. In addition, the present invention also provides computer program product and system aspects.
Also, the present invention provides recovery techniques for networks that employ a distributed approach for the allocation of communications resources.
Embodiments of the present invention advantageously save time and prevent the loss of information. Further features and advantages of the present invention will become apparent from the following description and accompanying drawings.
In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the reference number. The present invention will be described with reference to the accompanying drawings, wherein:
I. Operational Environment
In network 100, each of DEVs 102 may communicate with coordinator device 104 across a corresponding link 120. For instance,
Each of these links 120 are referred to herein as indirect links when considering communications between DEVs 102, because they provide multihop routes for communications between DEVs 102 through coordinator device 104. As an alternative to such indirect links, DEVs 102 may communicate with each other directly. For instance,
Links 120 provide for coordinator device 104 to transmit network configuration information (e.g., beacons) to DEVs 102. The network configuration information (which, in embodiments is included in beacons) may include resource allocation information, such as particular resource allocations, for various network connections according. For instance, in embodiments of the present invention, coordinator device 104 is responsible for allocating resources that establish connections across both indirect links 120 and direct links 122. In addition, coordinator device 104 may repeatedly communicate information regarding these connections through beacon transmissions.
II. Superframe
Wireless network transmissions in the environment of
Each superframe 202 includes a beacon period 204 and a data transfer period 206. Beacon periods 204 convey network configuration information transmissions from at least the piconet coordinator device (PNC) of the beaconing group. For instance, such information may be used to set resource allocations and to communicate management information for the beaconing group. Moreover, in embodiments of the present invention, data transfer periods 206 may be used to transmit information regarding services and features (e.g., information services, applications, games, topologies, rates, security features, etc.) of devices within the beaconing group.
Data transfer period 206 is used for devices to communicate data according to various transmission schemes. These schemes may include, for example, various modulation techniques. Also, these schemes may include frequency hopping techniques. Exemplary frequency hopping techniques include orthogonal frequency division multiplexing (OFDM) and/or time frequency codes (TFCs).
Data transfer periods 206 may support data communications across links 120 and 122. For example,
III. Disappearance Scenarios
As discussed above, a coordinator device may “disappear” from an environment, such as communications network 100.
As a result, DEVs 102 are unable to communicate with coordinator device 104, thus precluding communications between DEVs 102 across indirect links. Moreover, DEVs 102 are unable to establish direct links with each other because there is no coordinator device to perform allocation operations for such links. However, according to embodiments of the present invention, these links may be maintained through recovery techniques in which a device for each of these links becomes a new coordinator device. This techniques are described in greater detail below.
Although
In the scenario of
In the scenario of
In contrast,
IV. Operation
Aspects of the present invention provide techniques in which devices recover from coordinator disappearance scenarios, such as the scenarios of
As shown in
In a step 504, the device establishes a direct or peer-to-peer type of connection with a remote device. As discussed above, this connection exists across a direct link (e.g., one of links 122). Accordingly, step 504 may involve obtaining a reservation from the coordinator device. In embodiments, this reservation may be static such that it may exist so long as the participating devices desire.
This reservation has one or more timing parameters. Examples of such timing parameters may include starting time(s), ending time(s), and/or duration(s) within a timing format, such as a superframe. For instance,
During operation of the network, the coordinator device periodically transmits signals (or beacons) containing network status information. Thus, in a step 506, the device determines whether it has received a beacon from the coordinator device. If so, then the device continues using the allocated reservation, as indicated by a step 508. However, if the device has not received a beacon from the coordinator device, then a step 510 is performed. In embodiments, step 510 is performed when a single coordinator device beacon is not received. However, in alternate embodiments, operation proceeds from step 508 to step 510 when a predetermined number of consecutive coordinator device beacons are not received.
In step 510, the device transmits a query to the remote device across the peer-to-peer connection established in step 504. This query asks the remote device whether it has received a beacon from the coordinator device. The device may utilize a predetermined portion of the link to transmit this query. For instance, this query may be transmitted during the initial portion of the resource (e.g., MAS(s)) reserved for this peer-to-peer connection. It should be further noted that according to embodiments of the present invention, a device may, instead of transmitting a query, receive a query asking whether it has received a beacon from the coordinator device.
As indicated by a step 512, the device may or may not receive a response to this query. If no response is received, then operation proceeds to a step 514. In this step, the device commences a scanning operation to locate other devices (such as the remote device). This scanning may commence after a predetermined amount of time elapses. For instance, in the context of IEEE 802.15.3 networks, step 514 may be performed after a certain number of superframe durations have passed.
However, if a query response is received from the remote device, then in a step 516, the device determines from the response whether the remote device has received a beacon from the coordinator device. If so, then operation proceeds to step 508. As indicated above, in step 508, the device continues using the allocated reservation for direct communication with the remote device.
The device may receive a response to the query indicating that the remote device has received a beacon. Such a response may also include the contents of the received beacon. As shown in
Alternatively, the device may receive a response to the query indicating that the remote device has not received a beacon. If such a response is received, then a step 518 is performed. In step 518, the device waits to receive a beacon for a predetermined amount of time, such as a predetermined number of superframes.
As indicated by a step 520, if the device receives a beacon within this predetermined amount of time, then operation proceeds to step 508 in which the device continues using the reservation. However, if a beacon is not received during this predetermined amount of time, then a step 522 is performed. In step 522, the device and the remote device continue direct communications using the same timing (i.e., the same time slots of the superframe) that was allocated to the devices by the coordinator device in the superframe reservation of the extinct network (e.g., piconet).
In a step 523, the device and the remote device determine which of them will become the coordinator device of a new network (e.g., piconet). Accordingly, this step may comprise the two devices negotiating to select which device will become this coordinator.
Such determination or negotiation may be based on various rules or factors, such as device parameters. Examples of such parameters may include, for example, one or more of remaining battery power, device orientation including the number of devices a device can hear, device ID, and the like.
If the negotiation indicates that the device should become a new coordinator device, the device becomes the new coordinator device (e.g., PNC) in a step 524. Thereafter, the device (as a new coordinator device) renews the direct connection reservation with the remote device. In addition, while renewing this connection, the device may perform a scanning operation to ensure that any other coordinator devices within its coverage area are detected.
V. Query and Response Mechanisms
Aspects of the present invention involve the transmission of queries and responses. Examples of these queries are described above with reference to steps 510 and 512. Such queries and responses may be embedded in existing frame formats, or in new fields. Also, new messages may be defined to handle these queries and responses.
In embodiments of the present invention, the direct or peer-to-peer type of connection may be configured for data transfer that is predominately unidirectional. Such transfers may include, for example, downloads, file transfers, and/or server responses to client requests. For such transfers, the majority of data packets may be transmitted by one peer device, while the other device transmits smaller acknowledgment packets to signal the successful (or unsuccessful) reception of previously transmitted data packets. In embodiments of the present invention, queries and responses may be transmitted in data packets and acknowledgment packets.
VI. Recovery Scenarios
Each of the depicted recovery scenarios involves a different type of coordinator device disappearance. For instance,
At this point, devices A and B understand that the coordinator device has disappeared from their mutual perspective. Despite this, in a step 610, devices A and B continue to use the previous channel allocation for direct peer-to-peer communication. However, to provide a complete network, the devices need to negotiate which of the devices should become a new network (e.g., piconet) coordinator. According to an exemplary embodiment, device A becomes the coordinator device in a step 612 after a negotiation indicated that device A should become the new coordinator. This step may be performed after the occurrence of a predetermined time interval in which a beacon is not received from the missing coordinator device.
Upon receipt of this response, device A has indirectly received information regarding the coordinator device's beacon from device B. Thus, in a step 628, devices A and B may continue to use the allocated reservation for the peer-to-peer connection without one of these devices becoming a new coordinator device of a newly established piconet.
In
Referring again to
As described above, a device in a peer-to-peer connection may become a new coordinator device when, for instance, the existing coordinator device disappears from the perspective of each of the peer devices. For instance,
Once devices 102a and 102c have become coordinator devices, two networks exist. However, these networks may merge into a single wireless network.
This negotiation involves the exchange of information between these devices and results in one of the devices taking on the coordinator device role. For instance, these devices may determine which one should be the coordinator device based on their operating characteristics, such as their remaining battery power or power source. As shown in
VII. Wireless Communications Device
As described above, wireless communications devices, such as DEVs 102, may employ the techniques of the present invention. Accordingly, such devices may be implemented in hardware, software, firmware, or any combination thereof. One such implementation is shown in
As shown in
As shown in
Memory 912 is a computer readable medium that may include random access memory (RAM), read only memory (ROM), and/or flash memory, and stores information in the form of data and software components (also referred to herein as modules). These software components include instructions (e.g., logic) that can be executed by processor 910. Various types of software components may be stored in memory 912. For instance, memory 912 may store software components that control the operations of transceiver 920. Also, memory 912 may store software components that provide for the functionality of a media access controller (MAC). This controller may perform various features, such as the steps described with reference to
In addition, memory 912 may store software components that control the exchange of information through user interface 914. As shown in
The elements shown in
VIII. Distributed Control Networks
The above description has been made with reference to networks having a central coordinator device. However, techniques of the present invention may also be applied in networks that do not employ a central coordinator. An example of such a network is defined by the Multiband OFDM Alliance (MBOA).
MBOA involves the development of a high rate physical layer (PHY) standard for the IEEE 802.15.3a WPAN. In particular, this PHY involves a frequency hopping application of orthogonal frequency division multiplexing (OFDM). In addition, the MBOA is focused on developing a Medium Access Control (MAC) layer that would be used with the OFDM physical. A current version of the MBOA MAC involves a group of wireless communications devices (referred to as a beaconing group) capable of communicating with each other. The timing employed by beaconing groups is based on a repeating pattern of superframes in which the devices may be allocated communications resources.
The MBOA MAC layer provides for the allocation of resources through beacon transmissions. Each device in a beaconing group is assigned a portion of bandwidth to transmit beacons. However, instead of having a central coordinator, the MBOA MAC provides a distributed control approach. According to this approach, multiple devices share MAC layer responsibilities, such as various channel access mechanisms that allow devices to allocate portions of the transmission medium for communications traffic. These mechanisms include a protocol called the distributed reservation protocol (DRP), and a protocol called prioritized contention access (PCA). Thus in these networks, the existence of a beacon period (BP), but not a coordinator, is needed,
In certain situations, the MBOA beacon period can become corrupted due to interference in the corresponding time period. When this occurs, beacons from other devices may not be received. Moreover, techniques of the present invention, such as the operation of
For instance, in an exemplary embodiment, a device and a remote device have a peer-to-peer connection in a network that does not have a central controller (e.g., an MBOA network). Accordingly, if the device does not receive any beacons from other devices in the network (e.g., in its beaconing group), then (as in step 510) the device may send an inquiry to the remote device.
If the remote device replies affirmatively that it received beacons from the other devices in the beaconing group, then (as indicated by steps 516 and 508) the device may safely use its preexisting allocation. In this case, the device has been assured that no collision will occur with members of its beaconing group or with devices in neighboring beaconing groups.
Conversely, if the remote device indicates that it does not hear any beacons either, the devices may continue to use the preexisting allocation (as in step 522). However, since in this case, collisions may still occur, the devices keep searching for beacons from devices within their own beaconing group (as in step 520). In embodiments, this may involve enlarging the beacon period size and/or performing scanning operations on a more frequent basis (increasing scanning). After some time, they may assume all other devices have disappeared, and turn in normal operation mode, i.e., with minimal BP size and normal scanning (as in step 524).
Thus, according to aspects of the present invention a device may participate in a wireless communications network that allocates communications resources according to a distributed approach involving beacons from the network's devices. In such networks, the device establishes a peer-to-peer connection with a remote device. This peer-to-peer connection is based on a reservation having one or more timing parameters. Upon detection of a disappearance of the network devices, the device continues to communicate with the remote device according to the one or more timing parameters of the peer-to-peer connection.
This detection of the disappearance may include a failure to receive beacon transmissions from devices in the network. For example, this may involve a failure to receive beacons from all of the devices, or from some (e.g., at least a predetermined number) of the devices in the wireless communications network. The device may send a query to the remote device regarding this disappearance. In response, the remote device may indicate that it has received the beacons (and include information from these beacons). Alternatively, the remote device may indicate that it also detected the disappearance. If so, then (as described above) the devices may search for the other devices by performing, for example, scanning operations.
Devices performing in such aspects may be implemented in the manner described above with reference to
IX. Conclusion
While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not in limitation. Accordingly, it will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents. For instance, the wireless networks described herein are provided as examples. Thus, other network types are within the scope of the present invention.