1. Field of Invention
Embodiments of the present invention pertain to wireless communication, and in particular, to communicating network synchronization information to non-network apparatuses.
2. Background
Wireless communication has evolved from being a means for verbal information to being more focused on total digital interactivity. Enhancements in wireless technology have substantially improved communication abilities, quality of service (QoS), speed, etc., which has contributed to an insatiable desire for new device functionality. As a result, portable wireless apparatuses are no longer just tasked with making telephone calls. They have become integral, and in some cases essential, tools for managing the professional and/or personal life of users.
In order to support the desired expansion of electronic communication, more and more applications that did not incorporate any communication functionality are being redesigned to support wired and/or wireless communication. Such wireless communication support may, in some instances, include the ability to send monitored or observed data to other apparatuses via wireless communication. Example usage scenarios may include natural resource monitoring, biometric sensors, systems for supporting financial transactions, personal communication and/or location devices, etc. Apparatuses such activities and subsequent communications often operate using limited resources. For example, these apparatuses may be simple (e.g., may have limited processing resources), may be small (e.g., may have space constraints due to size limitations imposed in retrofit applications), may have power constraints (e.g., battery powered), etc.
Link establishment and maintenance processes defined in existing communication protocols may not be appropriate for apparatuses operating with resource constraints such as set forth above. For example, standards for existing wireless communication protocols may require periodic interaction in order to keep apparatuses participating in the network synchronized with other apparatuses. These requirements may not take into consideration the burden that periodic network communication places upon resource-constrained devices. As a result, it may become difficult to operate such resource-constrained apparatuses in accordance with these standards.
Example embodiments of the present invention may be directed to a method, apparatus, computer program and system for facilitating apparatus interaction while conserving apparatus resources. In accordance with at least one example implementation, apparatuses may stay synchronized with a network utilizing a reduced or diluted beacon interval that is an integer multiple of a network beacon period signal being transmitted at a set interval. Diluted beacon intervals may the reduce communication burden for apparatuses since the need to communicate occurs less frequently. However, as periods of inactivity increase during diluted beacon intervals it becomes easier for apparatuses to slip out of synchronization with the timing of the network.
In accordance with at least one embodiment of the present invention, solutions are provided in order to allow apparatuses to resynchronize with a wireless network. Apparatuses may be active in the network in accordance with an awake window. During an awake window an apparatus may transmit a beacon and then enter into an empty queue state (e.g., no data still pending for transmission) or non-empty queue state (e.g., data still pending for transmission). Concurrently with these operations, a set time during the awake window may delineate a period of time after which any beacon signal received from another apparatus is deemed to be late. Receiving late beacon signals in an apparatus may trigger the apparatus to perform various operations that may help bring apparatuses that issued late beacons back into synchronization.
For example, apparatuses that receive late beacon signals may transmit additional beacon signals in order to assist other apparatuses realign to the network beacon signal interval, or alternatively to a diluted beacon interval based on an integer multiple of the network beacon signal interval. Apparatuses in a non-empty queue state may first transmit pending data before attempting to transmit an additional beacon. Apparatuses may then participate in contention in the network for communication access. Once access to the communication channel is granted, the apparatus may transmit an additional beacon and then return to the non-empty queue state. Only one additional beacon signal may be transmitted by an apparatus in an awake state period.
The above summarized configurations or operations of various embodiments of the present invention have been provided merely for the sake of explanation, and therefore, are not intended to be limiting. Moreover, inventive elements associated herein with a particular example embodiment of the present invention can be used interchangeably with other example embodiments depending, for example, on the manner in which an embodiment is implemented.
The disclosure will be further understood from the following description of various exemplary embodiments, taken in conjunction with appended drawings, in which:
While the present invention has been described herein in terms of a multitude of example embodiments, various changes or alterations can be made therein without departing from the spirit and scope of the present invention, as set forth in the appended claims.
An example system usable as a basis for explaining the various embodiments of the present invention is disclosed in
Computing device 100 may correspond to various processing-enabled apparatuses including, but not limited to, micro personal computers (UMPC), netbooks, laptop computers, desktop computers, engineering workstations, personal digital assistants (PDA), computerized watches, wired or wireless terminals/nodes/etc., mobile handsets, set-top boxes, personal video recorders (PVR), automatic teller machines (ATM), game consoles, or the like. Elements that represent basic example components comprising functional elements in computing device 100 are disclosed at 102-108. Processor 102 may comprise one or more components configured to execute instructions, for instance, wherein a group of instructions may constitute program code. In at least one scenario, the execution of program code may include receiving input information from other elements in computing device 100 in order to formulate an output (e.g., data, event, activity, etc). Processor 102 may be a dedicated (e.g., monolithic) microprocessor device, or may be part of a composite device such as an ASIC, gate array, multi-chip module (MCM), etc.
Processor 102 may be electronically coupled to other functional components in computing device 100 via a wired and/or wireless bus. For example, processor 102 may access memory 102 in order to obtain stored information (e.g., program code, data, etc.) for use during processing. Memory 104 may generally include removable or imbedded memories that operate in a static or dynamic mode. Further, memory 104 may include read only memories (ROM), random access memories (RAM), and rewritable memories such as Flash, EPROM, etc. Examples of removable storage media based on magnetic, electronic and/or optical technologies are shown at 100 I/O in
One or more interfaces 106 may also be coupled to various components in computing device 100. These interfaces may allow for inter-apparatus communication (e.g., a software or protocol interface), apparatus-to-apparatus communication (e.g., a wired or wireless communication interface) and even apparatus to user communication (e.g., a user interface). These interfaces allow components within computing device 100, other apparatuses and users to interact with computing device 100. Further, interfaces 106 may communicate machine-readable data, such as electronic, magnetic or optical signals embodied on a computer readable medium, or may translate the actions of users into activity that may be understood by computing device 100 (e.g., typing on a keyboard, speaking into the receiver of a cellular handset, touching an icon on a touch screen device, etc.) Interfaces 106 may further allow processor 102 and/or memory 104 to interact with other modules 108. For example, other modules 108 may comprise one or more components supporting more specialized functionality provided by computing device 100.
Computing device 100 may interact with other apparatuses via various networks also shown in
Further, interaction with remote devices may be supported by various providers of short and long range wireless communication 140. These providers may use, for example, long range terrestrial-based cellular systems and satellite communication, and/or short-range wireless access points in order to provide a wireless connection to Internet 120. For example, personal digital assistant (PDA) 142 and cellular handset 144 may interact with computing device 100 over Internet 120 as facilitated by wireless communication 140. Similar functionality may be also be included in other apparatuses, such as laptop computer 146, in the form of hardware and/or software resources configured to allow short and/or long range wireless communication.
Wireless-enabled apparatuses 200 are labeled “A” to “G” in
An example communication between apparatuses in accordance with at least one embodiment of the present invention is disclosed at 300 in
Additional detail with respect to communication example 300 is disclosed further in
Network establishment and media access control (MAC) management messages 304 may be utilized to establish and maintain an underlying wireless network architecture within an operating space that may be utilized to convey data type communication messages 302. In accordance with various example embodiments of the present invention, messages containing apparatus configuration, operation and status information may be exchanged to transparently establish wireless network connections when, for example, an apparatus enters an operating space. Network connections may exist between any or all apparatuses existing within the operating space, and may be in existence for the entire time that an apparatus resides in the operating space. In this way, data-type communication messages 302 may be conveyed between apparatuses using existing networks (new network connections do not need to be negotiated each time messages are sent), which may reduce response delay and increase quality of service (QoS).
In accordance with at least one embodiment of the present invention, an example of distributed local network formation via automated network establishment and MAC management messages 304 is disclosed in
An example of information that may be communicated in network establishment and MAC management messages 304 (e.g., using information elements), in accordance with at least one example embodiment of the present invention, is disclosed in
The WLAN logical architecture comprises stations (STA), wireless access points (AP), independent basic service sets (IBSS), basic service sets (BSS), distribution systems (DS), and extended service sets (ESS). Some of these components map directly to hardware devices, such as stations and wireless access points. For example wireless access points may function as bridges between stations and a network backbone (e.g., in order to provide network access). An independent basic service set is a wireless network comprising at least two stations. Independent basic service sets are also sometimes referred to as an ad hoc wireless network. Basic service sets are wireless networks comprising a wireless access point supporting one or multiple wireless clients. Basic service sets are also sometimes referred to as infrastructure wireless networks. All stations in a basic service set may interact through the access point. Access points may provide connectivity to wired local area networks and provides bridging functionality when one station initiates communication to another station or with a node in a distribution system (e.g., with a station coupled to another access point that is linked through a wired network backbone).
In wireless network architectures like WLAN, beacon signals may be utilized to synchronize the operation of networked apparatuses. In situations where new ad hoc networks are being created, the initiating apparatus may establish standard network beaconing based on it owns clock, and all apparatuses that join the network may conform to this standard beacon. Similarly, apparatuses that desire to join an existing wireless network may synchronize to the existing beacon. In the case of WLAN, apparatuses may synchronize to beacon signals utilizing a timing synchronization function (TSF). The timing synchronization function is a clock function that is local to an apparatus that synchronizes to and tracks the beacon period.
An example of a beacon signal is shown in
In accordance with at least one embodiment of the present invention, functionality may be introduced utilizing the example distributed wireless network described above to allow apparatuses to operate at a standard beaconing rate that has been established in the network, or alternatively, using a “diluted” beaconing rate. “Diluted” beaconing may comprise a beaconing mode operating at a lower frequency than the standard beaconing rate originally established in the network. Diluted beaconing may be based on information (e.g., information elements) that is included in network beacon frames, wherein the included information may express one or more diluted beacon rates as multiples of the beacon. Using the beacon and the one or more associated diluted beacon period indications contained within beacon frames, networked apparatuses may elect to operate (e.g., via random contention) based either on the standard beacon or a diluted beacon period. In particular, all apparatuses may synchronize to the same initial target beacon transmission time (TBTT), for example when TSF=0, and may then count the number periods that occur after the initial TBTT based on the internal TSF function. In this way, apparatuses operating using a diluted beacon period may be active on TBTT counts that corresponds to the multiple defined by the diluted beaconing period.
An example diluted beacon interval of every 10th TBTT is disclosed in
For example, in a network comprising four apparatuses where devices 1, 2 and 4 operate using a diluted beaconing mode having a beacon interval (e.g., a time period between beacon transmissions) of every 6th TBTT, all apparatuses may remain synchronized even though only device 3 may be active (e.g., “competing”) in all beaconing periods 1, 2, 3, 4 and 5 (e.g., all apparatuses may participate in TBTT 0, TBTT 6, TBTT 12, etc.) Therefore, there can be at least two different beacon periods among the apparatuses, and possibly further diluted beacon periods as other groups of apparatuses may have selected their own diluted beaconing period based on the original beaconing period and the one or more associated diluted beacon period indications transmitted therewith.
In accordance with at least one example embodiment of the present invention, beacons will contain a diluted beacon period parameter. The diluted beacon period parameter may, for example, be carried in vendor-specific information elements (IEs). Diluted beacon period parameter values may remain the same for the lifetime of the network. However, should there be need for more flexibility, other beacon intervals may be defined, and all of the defined beacon intervals may be signaled in a manner similar to the diluted beacon interval.
Possible awake windows for an apparatus that is participating in the network are further shown in
The behavior of another example apparatus in accordance with at least one embodiment of the present invention is further disclosed at 650. While all apparatuses in the network will operate based on the same origin point (e.g., TSF=0) and normal beacon period (e.g., as set forth by the TBTT), each apparatus may select an operational mode based upon the one or more diluted beacon period indications that are transmitted in the beacon. For example, the apparatus corresponding to the activity disclosed at 650 is operating utilizing diluted beacon period 652, which is a multiple “4” in this scenario. Therefore, diluted beacon period 652 may involve beacon transmissions per every four TBTTs. Awake windows, for example as shown at 654, may also occur in accordance with the diluted beacon period 652. In at least one example implementation, the awake windows may begin just prior to the commencement of the diluted beacon period.
The duration of awake windows, while configured at constant duration by a predetermined information element (IE) in the beacon, may end up being variable in actual practice. For example, the awake window may be based on a MAC parameter that is similar to the beacon interval and diluted beacon period parameters. A host in the beaconing apparatus may determine it and provides it to the modem for transmission in the beacon. It may be communicated using, for example, a general or vendor specific information element (IE) as with the beacon interval and diluted beacon period. Upon awake window expiration apparatuses may attempt to transition to a “doze” or sleep state. However, the transition to doze state may, in actuality, happen earlier or later in accordance with control methodologies that will be discussed with respect to
The N-EQC state may comprise optional implementations: “Legacy” 700 and “Beacon Prioritized” 750. Using Legacy implementation 700, upon receiving or transmitting a beacon channel contention may be executed as in legacy devices, for example, as defined by the channel access rules specified in the particular wireless communication medium. Legacy implementation 700 represents an example of channel contention in accordance with an existing set of access control rules between 702 and 704. Once the apparatus gains access to media at 704 it will obtain a transmission opportunity (TXOP) during which it may transmit frames to the network (e.g., if one or more frames are queued for transmission. “TX” as shown between 704 and 706 in
In Beacon Prioritized implementation 750, the apparatus that has transmitted the network beacon is permitted to continue transmitting any frames that are queued for transmission in its transmit buffers. The apparatus obtains a TXOP for beacon transmission, and once it has transmitted the beacon at 752 it may automatically obtain a new TXOP, as shown at 754, to transmit any frames that are pending in its transmit buffers. In the disclosed example the new TXOP may start after a short interframe space (SIFS) period following the end of the beacon frame, which is represented in example 750 by the space shown between 752 and 754.
Once the apparatus has completed transmission (e.g., emptied its transmission buffers), it shall enter into an EQC state as shown in implementations 700 and 750 at 706 and 756, respectively. If an apparatus has no frames for transmission during a beacon interval, the device transition directly into an EQC state after the beacon reception/transmission (e.g., at 702, 752). When in the EQC state apparatuses may try to obtain a TXOP for a given number of times (determined, for example, by a “RepeatEmptyQueueContention” parameter). Upon obtaining a TXOP, apparatuses without pending messages may attempt to obtain a new TXOP as shown at 708/710 and 758/760 in implementations 700 and 750, respectively, instead of initiating the transmission of a frame sequence. Devices that obtain a number of TXOPs that is equal to a predetermined threshold value (e.g., RepeatEmptyQueueContention times) during a beacon interval may enter into doze or sleep state. In example implementations 700 and 750 in
The operational example that was originally disclosed in
However, the example disclosed in
In accordance with at least one embodiment of the present invention, operations that may help bring apparatuses back into synchronization with a network beacon signal interval are disclosed in
Activity charts that exemplify events that may occur in accordance with various example implementations of the present invention are disclosed in
The setting for Tlate_beacon may depend upon network characteristics and radio environment, and thus, it may be an adjustable parameter. Apparatuses may need to be able to adjust Tlate_beacon on fly during the operation of the network. Therefore, each apparatus in the network may determine the most appropriate value based on an assessment of the environment in which the network is operating. The value should be set so that a substantial amount (e.g., 95%) of all the beacons in the network are transmitted before the Tlate_beacon is exceeded. A late beacon then becomes a rare case and a real indication of some problems in the beaconing device.
A course of events that may occur when an apparatus receives a late beacon while still having data pending for transmission is disclosed in
The example disclosed in
Other example activity flows, in accordance with at least one embodiment of the present invention, are disclosed at 920 and 922 in
A flowchart for an example beacon transmission process, in accordance with at least one embodiment of the present invention, is disclosed with respect to
Provided that an initial beacon signal was successfully sent in step 1014, a further determination may then be made in step 1016 as to whether the apparatus has entered a period of time after which all received beacons are deemed late. For example, a determination may be made as to whether the time set for Tlate_beacon has passed as counted from the initial TBTT in the current awake window. If in step 1016 it is determined that the late beacon period has not yet begun, then in step 1018 the apparatus may determine whether there are messages pending in the apparatus for transmission. If it is determined that there are no messages pending in step 1018, the apparatus may engage in one or more EQC contentions in step 1020. If it is determined that messages are pending in step 1018, the apparatus may enter N-EQC state contention in step 1022 until access is granted to communicate. After the pending messages are sent in step 1020, the apparatus may again enter EQC state contention in step 1020 until the late beacon period begins.
When the late beacon period has commenced as determined in step 1016, the process may move to step 1024 where a further determination may be made as to whether the apparatus has received a late beacon. If no beacon has been received then the process may move to step 1026 where a determination may be made as to whether the current awake window is over. If the awake window is complete then in step 1028 the process may end and return to step 1000 in order to prepare for the next awake window. Otherwise, the process may return to step 1018 (designated “A” in
Otherwise, if messages are determined to be pending in step 1030, then in step 1034 one of the contention, beacon, message strategies that were discussed in accordance with at least one of the various embodiments of the present invention may be employed to transmit the additional beacon signal and the pending messages. For example, options may exist to transmit an additional beacon signal before or after messages that are already pending in the apparatus. The additional beacon signal may be transmitted during the same TXOP as pending messages, or optionally separate contention periods may be employed to transmit the additional beacon signal and pending messages. Regardless of the particular configuration that is used, the process may then terminate in step 1028 and return to step 1000 to prepare for the next awake window.
Further to the above, the various example embodiments of the present invention are not strictly limited to the above implementations, and thus, other configurations are possible.
For example, apparatuses in accordance with at least one embodiment of the present invention may comprise means for transmitting a beacon signal during a periodic time interval in which communication is permitted in the wireless network, means for receiving a late beacon signal in the apparatus, the beacon signal being deemed late due to being received after a certain time measured from the beginning of the periodic time interval, and means for, in response to receiving the late beacon signal, initiating transmission of an additional beacon signal.
At least one other example embodiment of the present invention may include electronic signals that cause apparatuses to transmit a beacon signal from an apparatus during a periodic time interval in which communication is permitted in the wireless network, receive a late beacon signal in the apparatus, the beacon signal being deemed late due to being received after a certain time measured from the beginning of the periodic time interval, and in response to receiving the late beacon signal, initiate transmission of an additional beacon signal.
Moreover, example criteria that may trigger transmission of an additional beacon may comprise, but is not limited to, receiving a beacon containing a timestamp value indicating that the apparatus that transmitted the beacon is in risk of dropping out of synchrony with the network (e.g., the TSF time in the receiving apparatus at the time a beacon was received−timestamp of the received beacon>a difference that may cause synchronization to be lost).
Another example scenario that may trigger transmission of an additional beacon is when a received beacon does not cause a receiving apparatus to adjust its own TSF timing (e.g., the TSF time in the receiving apparatus at the time the beacon was received≧timestamp of the received beacon, so that the apparatus that transmitted the beacon appears to be running behind).
Accordingly, it will be apparent to persons skilled in the relevant art that various changes in forma and detail can be made therein without departing from the spirit and scope of the invention. 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.