July, 2004 IEEE P802.15-<doc#>
IEEE P802.15
Wireless Personal Area Networks
Project / IEEE P802.15 Working Group for Wireless Personal Area Networks (WPANs)Title / Fast CTA Reversal
Date Submitted / [28 June, 2004]
Source / [Julian Hall]
[Artimi Ltd]
[Mount Pleasant House
Huntingdon Road
Cambride CB3 0RN
United Kingdom] / Voice:[+44 1223 464464]
Fax:[ +44 1223 461337]
E-mail:[
Re: / [This document contains a proposal for the TG3b MAC enhancements project]
Abstract / [Proposes a mechanism to allow the direction of a directed CTA to be reversed to improve channel time utilization for acknowledged higher layer protocols such as TCP]
Purpose / [The recommendations contained in this document are to be applied to the 802.15.3b baseline.]
Notice / This document has been prepared to assist the IEEE P802.15. It is offered as a basis for discussion and is not binding on the contributing individual(s) or organization(s). The material in this document is subject to change in form and content after further study. The contributor(s) reserve(s) the right to add, amend or withdraw material contained herein.
Release / The contributor acknowledges and accepts that this contribution becomes the property of IEEE and may be made publicly available by P802.15.
Problem
The use of unidirectional directed CTAs for carrying acknowledged higher layer traffic often results in poor channel time utilization when higher layer transport protocols stop and wait for acknowledgement. To illustrate the problem, consider a file transfer using FTP over TCP. The data flow is predominantly unidirectional with TCP ACKs flowing in the reverse direction. The amount of data acknowledged per ACK will depend on the current TCP window size. The following diagram illustrates a typical flow of packets:
Two CTAs are assigned, one in the direction DEV A to DEV B, and the other in the reverse direction. The following diagram illustrates the mapping of packets to CTAs over successive superframes:
In this example, almost half of the channel time assigned to the CTA in the direction A to B is wasted due to TCP waiting for an ACK. The duration of the CTA could be modified to improve the situation but in practice, dynamic adjustment would be impractical as the TCP window size and the number of frames transmitted per frame will vary (due to MAC retransmissions).
Throughput is effectively limited by the TCP window size. When a CTA is long enough to accommodate a full window, increasing the CTA duration does not improve throughput. The following graph illustrates expected TCP throughput against CTA duration. The expected throughput for unacknowledged UDP traffic is also illustrated as a reference. (PHY rate is 54Mbps)
Solution
A mechanism should be defined that allows the sender to relinquish ownership of a CTA to allow the receiver to send. The mechanism should be restricted to directed CTA. CTA reversal can be achieved using the following procedure.
A new bit in the Frame Control field is used to indicate that a sending DEV has no more data to send (semantics are not the same as the More Data bit). The bit should be set either in the last frame before the sender’s transmit queue becomes empty or in a zero length frame, sent after the queue becomes empty. Having set the bit, the sending DEV commits to sending no more data except for retransmissions for a defined period (Relinquish IFS). If no data is received during this period, the original sender may resume transmissions if new data has subsequently become available. If the original receiver detects that the original sender has relinquished the CTA, the original receiver should wait for a defined period (Reversal IFS) before claiming the CTA by transmitting. The CTA may be reversed any number of times up to the limit of the CTA using this procedure.
Two new interframe spaces are needed:
- Relinquish IFS (RqIFS)
- Reversal IFS (RvIFS)
To allow retransmission to occur: RqIFS > RvIFS > RIFS
Also, RvIFS should be long enough to allow higher layers to turn around an ACK.
By using this procedure, the mapping of frames to CTAs is modified as follows. Note that the CTA in the direction B to A becomes unnecessary and unused time in the CTA A to B is greatly reduced.
The following graph illustrates expected throughput against CTA duration using CTA reversal. All other parameters are the same as the previous example.
SubmissionPage 1Julian Hall, Artimi Ltd