Since the PHY solution of our protocol allows multiple APs to transmit concurrently to their desired clients without interference to undesired clients (alleviating the HT problem), we need to develop a MAC protocol suited for this.
Basically, the challenge for MAC is threefold. First, in order to get a suitable precoding vector as described in Section 4, the CSIs associated with both the desired and the undesired clients within the transmission range of the APs/transmitters have to be obtained. The signaling/handshaking time overhead associated with this process must be as low as possible.
The detailed mechanism for a modified seamless channel sounding process is given in Section 5.1.
Second, the mechanism for medium access for APs and clients is vital. Unlike traditional time-division-based decisions, APs/transmitters in our design decide TXOPs based on the available DoFs of the APs. Thus, we need to design a mechanism that checks DoFs at APs and decides TXOPs accordingly. The provision for DoF-based TXOP for APs is presented in Subsection 3.2.2 whereas the decision procedure is presented in Section 5.2.
Third, our design permits concurrent transmissions between the APs and the clients after the APs win the TXOP. We need to develop a mechanism at MAC to manage these concurrent transmissions which has to compatible with the WLAN standard.
Other important aspects are to move the complexity of signal processing to the APs and dynamically change the combination of concurrent clients in bursty traffic demand, while respecting fairness. We shall discuss these aspects further.
Acquiring CSI associated with transmitter and clients
While IEEE802.11ac incorporates MU-MIMO and provides the basic framework for channel estimation with the null data packet in the standard (called channel sounding), it has noticeable signaling time overheads. We adopt and modify the channel sounding of IEEE802.11ac with a view to reduce a signaling time overhead and better utilization of the precious airtime of the APs. Keeping in mind that the channel sounding process should be as standard-compliant as possible for being amenable to commercial adaptation, we reused some data frames from the standard in our design. Additionally, IEEE 802.11ac leaves the determination of the MU-MIMO precoding scheme open and implementation-dependent. We take ZF beamforming as the principal transmission strategy and design the sounding process accordingly.
The channel sounding is initiated by those APs, who have packets in the queue for transmission. Since APs need to find the channels associated with desired and undesired clients for fairness and throughput-aware precoding, they first transmit a broadcast frame called “ B_frame” so that the clients within the APs’ transmission range can report their channels to the APs. The frame formats used in channel sounding are shown in Fig. 4.
Similar to the null data packet (NDP) announcement frame of 802.11ac, APs broadcast a control frame, B_frame, of 25 bytes. This frame contains a 6-byte field for the transmitter address (i.e., AP) and separate address fields for a set of multiple station information records used to request multi-user feedback. Most importantly, APs assign association identifications (AIDs) to the clients upon association which are included inside the 12 least significant bits (LSB) of station information (STA info).
The second step is to send the training symbols by APs for channel measurement. This is done by the training frame, T_frame, without a data field. Unlike NDP frames in 802.11ac, the T_frame in our design consists of 1-bit CSI request field at VHT-SIG-A2 in the VHT-SIG-A field. The tail bit consists of only 5 bits compared to 6 bits in 802.11ac. This change in tail bits is to make 24 bits correspond to one orthogonal frequency-division multiplexing (OFDM) symbol.
The function of the 1-bit CSI request field is to ask both desired and undesired clients their CSI within the transmission range of APs. Unlike IEEE 802.11ac, it is worthwhile to note that there are no separate polling frames to acquire CSI from the undesired client. All the clients (desired and undesired) respond with their associated CSI after the CSI request field is received as a part of the training frame.
The removal of the separate polling frame in our design in fact decreases the signaling time overheads in the channel sounding process. Specifically, for the two-network scenario that we have considered in previous examples, it removes two short interframe space (SIFS) times and the time for one beamforming poll frame which equals 98.67 μs. The detailed calculation for signaling time overhead is presented in Subsection 7.2.1.
Each client analyzes the training symbols in the PLCP header (of the T_frame) and measures the channel between the APs and themselves. It is obvious that the clients within the overlapping region would hear multiple B_frame broadcasts. Each client responds to the channel request on a first in first out (FIFO) basis in the uplink.
After the reception of the T_frame, the third step is to feedback the measured channels. Owing to the limited feedback channel, the channels (in the form of the matrices) are compressed and sent in the form of VHT compressed beamforming frames.
Since the APs need to differentiate the channels associated with the desired and the undesired clients, our design uses 2 bits from the reserved bits of the compressed beamforming action frame of 802.11ac. The 2 bits can have at most four logical combinations, which are used to distinguish between the desired and the undesired clients. The reserved field bits are set “00” or “11” in the compressed beamforming action frame by the clients who have AID (i.e., desired clients). Otherwise, the bits are set “01” or “10” by the clients who do not have AID (i.e., undesired clients). Hence, upon the reception of the compressed beamforming action frame, APs check the reserved field and distinguish the CSI feedback between the desired and the undesired clients, \({{\mathbf {H}}_{i{i_{Q}}}}\) and \({{\mathbf {H}}_{i{i_{P}}}}\).
In terms of power, regulation can limit the transmit power based on the number of antennas used at the transmitter so that transmit beamforming does not increase the maximum distance range.
Figure 4 represents a basic diagram of the frame formats and the channel measurement process for the APs in a typical ith network, AP2 and two clients, each from the ith and jth networks.
Transmission opportunity for APs with heterogeneous antennas
We present a simple DoF-based approach to decide the TXOPs among APs who compete for the medium at any instant. Thus, APs calculate the precoding vector only when they have sufficient DoF for transmission4; otherwise, the APs end up causing interference to other clients.
Before competing for TXOP, APs go for channel sounding and acquire CSI from Q desired (i.e., \({{\mathbf {h}}_{i{i_{d}}}}\)) and P undesired (i.e., \({{\mathbf {h}}_{i{j_{u}}}}\)) clients in their transmission range, where \( \mathop {{i_{d}}}\limits _{{i_{d}} \ne {j_{u}}} \in \{ 1......QM\}\) and \(\mathop {{j_{u}}}\limits _{{j_{u}} \ne {i_{d}}} \in \{ 1......PM\} \) as described in Section 5.1. Second, APs make a decision for TXOP (i.e., choose to remain in the active or the silent mode), if (i>j
u
), for example for AP2, where i is the number of antennas at AP2, i∈{1.....N}, and j
u
is the number of antennas at undesired clients within range. Note that our design checks i>j
u
rather than \(i \geqslant {j_{u}}\) for TXOP. The aim is to ensure that every AP has at least one DoF after winning TXOP because interference cancellation costs exactly as many DoFs as the number of antenna/s [17].
Suppose that we have three APs in a network having N
1, N
2, and N
3 antennas, respectively. Each of these APs has I
1, I
2, I
3 antennas for undesired clients in the overlapping region. The three APs satisfying N
1>I
2+I
3, N
2>I
1+I
3 and N
3>I
1+I
2 will have TXOP and will remain in the active mode; otherwise, the APs will not have TXOP and remain in the silent mode at that instant. Hence, the TXOP among the APs are decided on the available DoF.
Fairness among APs with heterogeneous antennas
Since TXOP for APs is based on DoF of APs, it is possible that APs with larger number of antennas (i.e., consisting of higher DoFs) would win TXOP all the time.
This may result in a deep unfairness among APs having fewer antennas. In order to prevent APs with a fewer antennas, starving for TXOP, our design executes a simple fairness algorithm for TXOPs, which runs at APs. Since MU-MIMO WLANs are distributed in nature, the fairness algorithm for TXOPs is designed to ensure fairness among APs without requiring coordination with each other.
Specifically, we assign all APs with two types of credit counters (i.e.,“S_Counter” and “F_Counter”, initialized to 0) and a credit threshold (i.e.,“C_threshold,’, set to a constant value). Each time when APs get the TXOP, the ‘S_counter’ counter will be incremented, otherwise the “F_Counter” will be increased. If the “F_Counter” crosses the “C_threshold”, the corresponding AP directly qualifies for TXOP. The basic pseudocode is given in Algorithm 2.
Fairness index of the algorithm for TXOPs
We evaluate the fairness index of our Algorithm 2 Fairness Algorithm for TXOPs, according to the Jain fairness index [24], which fundamentally gives a quantitative measure to any resource sharing or allocation problem. We consider three APs with two, three, and four antennas among which the fairness in throughput is studied. We assume that each AP, after winning TXOP, has at least one stream for transmission and has at most a number of transmission streams equal to the number of antennas at the AP. For instance, a three-antenna AP has at least one transmission stream (worst case) and at most can have three transmission streams (best case) after TXOP. Let R
i
be the ith AP that has TXOP and n be the number of such APs; thus, the Jain fairness index is given by
$$ f\left(R \right) = \frac{{{{\left| {\sum\limits_{i = 1}^{n} {{R_{i}}}} \right|}^{2}}}}{{\sum\limits_{i = 1}^{n} {{R_{i}^{2}}} }},~{R_{i}} \ge 0. $$
((7))
R
i
is calculated as the ratio of the maximum throughput and the least expected throughput, i.e., for the AP with three antennas,
$$ {R_{i}}=\frac{{\mathrm{Throughput~when~three~streams~are~used}}}{\mathrm{Throughput~when~single~stream~is~used}}. $$
((8))
Similarly, R
i
can be calculated for the remaining APs. The fairness index for n=3 (in our case) is calculated and is discussed further in Subsection 7.2.2.
Access to the medium
Since concurrent transmissions take place after the determination of TXOP, there is no contention among the APs during concurrent transmissions. We exploit this fundamental attribute of the concurrent transmission and adopt and expand the IEEE802.11 point coordination function (PCF) mode to address the concurrent transmissions. The reason is that concurrent transmissions are contention free and they can be governed by the contention-free period (CFP) of PCF (the detailed process is discussed below). Besides, the PCF is the part of the IEEE802.11 standard and its expansion to suit our PHY solution would be more straight forward to satisfy the interoperability issues.
Contention-free period and contention period
Similar to the PCF in IEEE802.11, we designate each AP in the network as a point coordinator. We divide time into CFP and contention period (CP) as shown in Fig. 5.
The beginning of the CFP is marked by the transmission of a beacon by APs. This sets the duration of the current CFP. During CFP, APs run the concurrency algorithm as described in Section 4.1 and select the clients for transmissions both at downlink and uplink. The CFP is followed by CP, during which any clients can contend for the medium using IEEE802.11 and point-to-point MIMO. The objective of the CFP is to manage the concurrent transmissions as much as possible so that the network throughput can be increased. The duration of CFP depends on the traffic congestion and may increase or decrease with the rise and fall of the traffic congestion. However, at CFP, the APs serve at least one packet (on downlink and uplink) to all clients that have pending traffic. In contrast, the duration of CP is constant. Similarly to IEEE802.11, we set the minimum length of CP to be equivalent to the time required to transmit and acknowledge one maximum-size frame. However, sometimes it is possible for the contention-based service to run past the expected beginning of CFP, which we call “foreshortening” of CFP.
Medium access to downlink
Figure 5 presents a series of events that take place in this process. APs run the concurrency algorithm and select the group of clients for transmission at that instant. After that, APs transmit their downlink packets and poll the clients for uplink data with the help of the CF-Poll+Data frame. This process is similar to the existing PCF except that the current PCF polls the individual clients one by one whereas, with our MAC, APs poll for uplink traffic a group of clients selected by the concurrency algorithm.
The CF-Poll+Data frame contains two parts. The first part of the frame is shown in Fig. 6 which contains IDs of the clients that are selected as the result of the concurrency algorithm. The IDs are given to the clients upon association to assist with control and management function. It also contains the frame id, Fid, the address of APs, and the checksum of their broadcast. The APs and the clients use this checksum to test whether or not the received data is correct. The second part of the frame is the list of concurrent downlink data of the APs to the clients. For instance, a downlink transmission of the AP with four antennas is given in Fig. 5. Upon reception of data at clients in downlink, the clients send acknowledgments (ACKs) to AP. The order in which they send these ACKs is the same order as the IDs in the Data+Poll frame. Basically, clients send ACKs using the traditional MIMO. Thus, each received data at clients is acknowledged.
Medium access to uplink
The uplink data transmission at CFP is initiated by the grant frame5 broadcast by AP. The grant frame consists of the IDs of the clients determined by the concurrency algorithm that runs at APs. The clients in the uplink transmit the Data+Req frame. This frame contains the uplink data and, if there are more data in the clients to send, it also contains a request frame. The request frame is for transmission of the new frame in the uplink. However, APs do not entertain the new requests immediately. Instead, APs record the ids of the clients who have sent requests along with their uplink data and then polls them in the next cycle. Upon the reception of the poll request, clients with the new data can transmit to APs. APs decode Data+Req frame sent by clients by using the standard MIMO decoding method.
Upon the reception of the Data+Req frame, APs confirm the received data by the broadcast of the ACKs frames within its transmission range. The clients in the transmission range receive the ACKs frames. However, the clients who are not selected for the uplink transmission discard the ACKs. Thus, clients are acknowledged for successful reception of data in the uplink transmission.
The end of CFP is marked by the CF-End frame broadcast by APs. This frame indicates to the clients the end of the CFP. This frame prepares APs and clients to go back to the standard contention mode in DCF.
When to initiate the extended PCF?
Traditionally, the HTs are managed by the RTS/CTS mechanism. Basically, the RTS function determines whether the APs should use the CSMA/CA or the RTS/CTS mechanism to send the payload. Usually, the RTS threshold value is set in the range of 0–2347 and any data bytes more than the threshold exchange data by the RTS/CTS mechanism.
In contrast to this traditional scheme, we set the retransmission threshold at the APs as Re_Threshold. Generally, when the transmitted data are not acknowledged at the APs, either due to data or ACKs loss, APs retransmit the data and retry up to a certain count, Re_count. We compare Re_count and Re_Threshold and, if (Re_count>Re_Threshold), the extended PCF is initiated. The provision of Re_Threshold is similar to the traditional RTS threshold value. However, we choose a retransmission threshold, Re_Threshold, for initiation of the extended PCF. This is because the presence of the HT scenario causes collisions of signals, and there is a high possibility of occurrence of retransmissions. In such a context, our proposed extended PCF comes into play to address the HT scenario.
It is worthwhile to note a few points
-
Are active and silent modes fixed?The active and silent modes for APs are not fixed. Since the number of antennas that APs possess is always fixed, so N is fixed. However, PM is not fixed. It is variable and depends on two components: first, the number of undesired clients, P, present in any AP’s transmission range and second, the number of heterogeneous antennas, M, each undesired client possesses at the given instant where there exists the HT scenario.
Since PM vary from case to case, this will further vary two components in our scheme. First the remaining DoFs at APs are variable because DoF=N-PM (this determines number of concurrent transmissions in the scheme). Second, the TXOP of APs varies because TXOP = (N>P
M). Thus, with variable PM, at one instant, APs can satisfy N>P
M and will have TXOP, while at the other instant, APs may not satisfy N>P
M and lose TXOP. APs with TXOP will remain in an active mode; otherwise, they will remain in a silent mode. Additionally, to ensure fairness for the APs who may remain in the silent mode for a long time and starve for TXOP, we have proposed Algorithm 2, a fairness algorithm for TXOPs.
-
How the concurrent algorithm goes out of active and silent modes?The CPF MaxDuration and Timestamp field of Beacon frame are used to manage the transition of the active and the silent mode APs. The algorithm presented with the flow diagram runs on top of standard DCF, which is invoked when we have an HT scenario in MU-MIMO WLANs. Thus, both the active and the silent mode APs at the end of the algorithm return to the contention-based DCF. The process works as follows: After TXOP is decided, both the active and the silent mode APs set CFP to the maximum duration. Similar to traditional PCF, this is done by setting bit 15 to 1 out of 2 bytes in the CFP MaxDuration field in the CF parameter set [25]. The active mode APs inform this decision to their clients by sending a Beacon frame. Upon the reception of the Beacon frame, clients set their network allocation vector (NAV) to 32,768. On the other hand, silent mode APs do not transmit any Beacon frame; however, they constantly monitor the Timestamp and wake up at the elapse of CFP. Since the duration set for both the active and the silent mode APs is the same, the times when the silent mode APs wake up, and the transmission of CF-End, marking the end of CFP by the active mode APs, coincide.
-
If there is no contention among the APs, how will they synchronize?We see the need of synchronization in our scheme in two stages. Stage 1 synchronization is needed to invoke extended PCF when all APs in the vicinity start experiencing the HT problem. However, the challenge comes from the decentralized and distributed nature of MU-MIMO WLANs where different APs do not communicate with each other. In such a context, we need a synchronization mechanism which can synchronize APs independently before we initiate extended PCF. We describe this synchronization mechanism in stage 1 which is achieved as follows: We use the Re_Threshold and the point control function inter-frame spacing (PIFS) interval to synchronize APs before we initiate extended PCF. Since there exists the HT scenario among APs, there will be a collision of data packets and ACKs are not received at APs. This makes APs retry for transmission of data packets. Our scheme exploits this well-known process of APs in WLANs and set the same retransmission threshold, Re_Threshold, for all APs. Thus, whenever there is a HT problem in the network, APs in the vicinity reach their Re_Threshold more or less at the same time. Now, this is the time for APs to initiate an extended PCF.
Additionally, to better synchronize the initiation of the extended PCF, we make APs wait longer for a specified PIFS interval. This process will give extra time to any APs who lag to reach Re_Threshold. Thus, all APs will be synchronized and will initiate an extended PCF at the same time.
Stage 2 synchronization is needed during the CFP operation. The synchronization is obtained via different types of frames used in CFP, such as management frames, control frames, and data frames.
For example, Acks in our scheme are synced as follows: (Acks) are sent after an SIFS interval whenever APs or clients receive data packets in the uplink or downlink. Since the concurrent algorithm is used to select a group of clients who are to be served at an instant, the transmission of Acks after packet reception can be done by using the traditional MIMO technique both in uplink and downlink.