September 2004 11-04-0967-00-000k
IEEE 802.11k
Wireless LANs
Proposed Simplifications to TBTT Offset Format and Calculation
Date: September 8, 2004
Author:
Floyd Simpson
Stephen Wang
Walter Johnson
Motorola, Inc.
Abstract
This proposal presents simplifications to TBTT Offset format and calculation.
1 Issues with the Current TBTT Offset Format and Calculation
The TBTT Offset concept introduced by the current TGk draft is overly complicated in the following aspects:
q The concept of TBTT TU Offset, TBTT TU Accuracy, and Accuracy Granularity is confusing and complicated to implement.
q The serving AP has to convert TBTT Offset from microseconds to TUs before sending the Neighbor Report. Stations, on the other hand, must convert TBTT Offset from TUs back to microseconds before calculating a neighbor AP’s TBTT. The back-to-back conversions should and can be avoided to simplify implementation. .
q TBTT Offsets for individual neighbor APs should be computed at different times. Since there exists only one “Lower Timestamp Reference” field in the current Neighbor Report element, the serving-AP must calculate the individual TBTT Offset values so as to make them all relative to the same “Lower Timestamp Reference”. Although such calculations may vary from vendor to vendor, the task is neither trivial nor risk-free. Furthermore, the algorithm used by the stations to predict neighbor AP’s TBTT remains the same despite the serving AP’s extraordinary effort in calculating the TBTT Offset values relative to the “Lower Timestamp Reference”.
2 Proposed Simplifications to TBTT Offset
To simplify AP implementations and reduce confusion, we propose the following simplifications:
2.1 Redefination of the TBTT Offset Field Format
The proposed new TBTT Offset field format is as follows:
B0 – B15TBTT Offset in Microseconds
Octets: / 2
The new TBTT Offset field contains relative timing information for a neighbor AP.
The value of the TBTT Offset field is taken from the 2nd and 3rd lowest octets of the TBTT Offset value calculated of a neighboring AP.
The proposed TBTT Offset field accommodates approximately 16[1] seconds of TBTT Offset with ¼ TU (256 ms) resolution. Given that the largest possible TBTT Offset is a neighbor AP’s beacon interval, the 16-second allowance is sufficient to handle any typical TBTT Offset values. The ¼ TU (256 ms) resolution provided in this proposal is as fine as the granularity provided in the existing TBTT Offset format.
2.2 Calculation of TBTT Offset Value
With the proposed change in the TBTT Offset field, a neighbor AP’s TBTT Offset is calculated differently. (The same example as in the informative section of clause 7.3.2.26 is used here for the purpose of illustration)
Assuming the serving AP has a TSF equal to 0x00000000AF550F10 and the neighbor AP has a TSF of 0x00000000 with a beacon interval of 0x64.
q Calculate the value of the Neighbor AP’s TSF value modulo the beacon interval
0x64 * 0x400 = 0x19000 ms
0x0011F055 mod 0x19000 = 0xC055 ms
q Subtracting the above calculated value from neighbor AP’s beacon interval
0x19000 - 0xC055 = 0xCFAB ms
q Take the 2nd and 3rd lowest octets from the above calculated value, round up to the next 256 ms, and place in the TBTT Offset field
0x00CF round up to 0x00D0
0x00D0 à TBTT Offset field
When a station received the above TBTT Offset value, it can use it for neighbor AP’s TBTT calculation.
2.3 Move the “Lower Timestamp Reference” Field to Individual Neighbor List Entries
Element ID / Length / Lower Timestamp ReferenceOctets: / 1 / 1 / 4
BSSID / BSSID Information / Channel Number / Channel Band / PHY Options / Lower Timestamp Reference (Optional) / Neighbor TBTT Offset (Optional) / Beacon Interval (Optional)
Octets: / 6 / 2 / 1 / 1 / 1 / 4 / 2 / 2
The optional “Lower Timestamp Reference” references the time at which the corresponding TBTT Offset value is computed.
With the proposed enhancement, the serving AP no longer has to calculate individual TBTT Offset values according to the same timestamp reference. All it has to do is to directly transmit the timestamp reference stored in dot11RRMNeighborReportTimestampReference. This reduces the complexity at the serving AP, which is a very important issue to AP vendors.
The proposed change does increase the size of each Neighbor List Entry from 15 to 19 octets and thus reduce the number of neighbor APs reported in each Neighbor Report element from 16 to 13. Nevertheless, this extra overhead is a worthwhile trade-off for reduced complexity. Furthermore, we can always include more than one Neighbor Report elements in a Neighbor Report Response frame if more than 13 neighbor APs are to be reported.
3 Normative Text for the Proposed Enhancements
Following are the proposed normative text changes in the TGk draft 1.0:
7.3.2.26 Neighbor Report element
Update Figure k18 in the clause as shown:
ElementID / Length / Lower
Timestamp Reference
Octets: / 1 / 2 / 4
BSSID / BSSID Information / Channel Number / Channel Band / PHY Options / Lower Timestamp Reference (Optional) / Neighbor TBTT Offset (Optional) / Beacon Interval (Optional) / The element contains zero or more neighbor list entries
Octets: / 6 / 2 / 1 / 1 / 1 / 4 / 2 / 2
Change the following text in the clause (immediately after Figer k18) as shown:
The Element ID field shall be equal to the Neighbor Report value in Table 20.
The Length field is dependent on the number of Neighbor List Entries representing the neighboring AP’s being reported. Each entry describes an AP and consists of BSSID, BSSID Information, Current Channel, Channel Band, PHY Options, and optionally may also include the Lower Timestamp Reference, Neighbor TBTT Offset and Beacon Interval. The minimum value of the Length field is 0 (i.e. with no neighbor APs in the Neighbor Report element).
The Lower Timestamp Reference field is the lower 4 octets of the serving AP’s Timestamp field (defined in clause 7.3.1.10). It references the time at which the Neighbor TBTT Offset is valid.
Change the following text in the clause (immediately after Figure k21) as shown:
· Condensed PHY Type is the lower 7 bits of the PHY Type of the AP represented by this BSSID. The PHY type will be encoded as defined by dot11PHYType.
· TBTT Offset Flag is a one bit field. When set to 1, it indicates that the Neighbor List Entry contains the Lower Timestamp Reference, Neighbor TBTT Offset, and Beacon Interval fields. The Neighbor Report may have the TBTT Offset Flag set in some Neighbor Report List Entries and not set in others.
The Lower Timestamp Reference field is the lower 4 octets of the serving AP’s Timestamp field (defined in clause 7.3.1.10). It references the time at which the TBTT Offset in the corresponding Neighbor List Entry was computed.
The Neighbor TBTT Offset field is used to indicate relative timing information for a neighbor AP. The Neighbor TBTT Offset field contains the 2nd and 3rd lowest octets of the calculated neighbor AP TBTT Offset value and has a granularity of ¼ TU (256 ms).is composed of three fields as shown in Figure k22: a 1 bit Accuracy Granularity field, a 5 bit TSF TU Accuracy field, and a 10 bit TSF TU Offset field.
TBTT TU Offset / TBTT TU Accuracy / Accuracy GranularityBits: / 1610 / 5 / 1
Figure k22 – Neighbor Report TBTT Offset field format
· The 1 bit Granularity field pertains to the 5 bit TBTT TU Accuracy field. If the bit is set to zero, it indicates fine granularity. It the bit is set to one, it indicates coarse granularity.
· The 5 bit TBTT TU Accuracy field contains the TBTT TU Accuracy of the TBTT TU Offset field. If the Accuracy Granularity field indicates fine granularity, the TBTT TU Accuracy field represents the number of bins in ¼ TU (256us) steps that indicate the accuracy of the TBTT TU Offset field. If the Accuracy Granularity field indicates coarse granularity, the TBTT TU Accuracy field represents the number of bins in 2 TU (2.048ms) steps that indicate the accuracy of the TBTT TU Offset field starting at 10 TUs.Below 8 TUs, the TBTT TU Accuracy field can be represented using fine granularity. A value of all zeros for the 6 bits composed of the Accuracy Granularity and TBTT TU Accuracy fields shall mean that the accuracy is either not known or out of range. A value of all zeros for the 16 bit composing the Neighbor TBTT offset field shall mean that the neighbor TBTT Offset field is not supported.
For example, if the Accuracy Granularity field indicates fine granularity (bit 15 = 0) and the TBTT TU Accuracy field contains 00001, it means that the error of the TBTT TU Offset field is less than ¼ TU. If the value is 10000, it means that the error of the TBTT TU Offset field is less than 8 TUs. If the Accuracy Granularity field indicates coarse granularity (bit 15 = 1) and the TBTT TU Accuracy field is 00000, it means the error of the TBTT TU Offset field is less than 10 TUs. If the TBTT TU Accuracy Field is 11111, it means that the error of the TBTT TU Offset field is less than 72 TUs.
· The 10 bit TBTT TU Offset field contains the TBTT TU Offset expressed in TUs. The TBTT TU Offset field represents the TUs until a neighbor AP’s TBTT.
The Neighbor TBTT Offset field results in a maximum TBTT TU Offset of approximately 16.048 seconds with ¼ TU (256 ms) resolutionand a minimum accuracy of 256us. The mechanisms employed by the equipment vendor of the sender of the Neighbor Report to acquire and maintain the Neighbor TBTT Offset field is outside the scope of this specification. It is required in any algorithm adopted that the TBTT TU Offset field must be accurate to within the TBTT TU Accuracy field.
The Beacon Interval field is the beacon interval of the Neighbor AP being reported. This field is defined in clause 7.3.1.3 and illustrated in Figure 26.
Informative Note:
The following is an example of how a serving AP calculates the Neighbor TBTT Offset field of a Neighbor AP.
At the Lower Timestamp field time when the Neighbor TBTT Offset field is calculated, lets assume the serving AP has a TSF is equal to 0x0000 0000 AF55 0F10 and the neighbour AP has a TSF of 0x0000 0000 0011 F055 with a beacon interval of 0x64.
The serving AP should calculate the value of the Neighbor AP’s TSF value modulo the beacon interval. For this example this results in the following:
0x64 * 0x400 = 0x19000 microseconds
0x0011F055 mod 0x19000 = 0xC055 micrseconds
0xC055 represents the number of microseconds into the beacon interval. Subtracting this value from the beacon interval in microseconds will result in the number of microseconds until the neighbor TBTT.
0x19000 – 0xC055 = 0xCFAB
Take the 2nd and 3rd lowest octets from the above value, round up to the next 256 ms, and place in the TBTT Offset field
0x00CF round up to 0x00D0
TBTT Offset = 0x00D0
To get this value into TUs, the AP divides by the number of microseconds in a TU.
0xCFAB / 0x400 = 0x33
To determine what the accuracy is for the conversion between microseconds and TUs, the modulo of the microseconds left in the neighbour’s beacon interval should be calculated
0xCFAB mod 0x400 = 0x3AB
Representing this value in terms of TBTT TU Accuracy bins results in the following calculation.
0x3AB / 0x100 (256us bin) = 3 + a remainder of 0xAB = 0x4 fine granularity bins.
The Accuracy Granularity field would be set to 0 for fine granularity in this example. Therefore the Neighbor TBTT Offset field is set to 0x1033.
The following is an example of how a STA would use the Neighbor TBTT Offset field to calculate when the Neighbor TBTT will occur.
Using the same values as above, the STA will receive in a Neighbor Report Response frame, which includes a Neighbor TBTT Offset field of 0x00D01033 and a lower Timestamp field of 0xAF550F10.
In calculating when the neighbor’s TBTT will occur, the STA should turn the TBTT TU offset field into a microsecond count.
0x33 * 0x400 = 0xCC00 microseconds
So, the neighbor TBTT will occur in 0xCC00 0x00D0 * 0x100 (represent ¼ TU step size) microseconds with an accuracy of less or equal to 2561024 microseconds. Every subsequent TBTT will occur every 0x19000 microseconds thereafter.
Submission page 1 Motorola
[1] The actual value is 15.999 (0xFFFF00 / 0x400 / 0x400) seconds