This repository contains a Matlab/Octave script to study Bianchi's model for both IEEE 802.11n and 802.11ac standards.
Modify the input parameters for the desired use case at the start of the script before running it:
%Change these parameters for the different simulations
standard = 'ac'; %ac or n
frame_aggregation = true; %true or false
guard = 'short'; %short or long
Tested with GNU Octave, version 4.0.0
This model, presented by Giuseppe Bianchi in 2000's paper, evaluates the performance of Medium Access Control (MAC) techniques of 802.11 networks. It is a simple analytical model that can be used to calculate the saturation throughput in ideal channel conditions with accurate results.
Each station is characterized as a Markov model that will transmit in a randomly chosen slot time with a stationary probability τ
. This probability does not depend on the access mechanism employed. The throughput formula can be derived upon the events that may occur within a given slot time and will be a function of τ
.
For the scalability studio, the number of stations will be increased from 1 to 500 in 10-user steps, being this variable named N
. The standards studied will be IEEE 802.11ac (transmission in the 5GHz band) and 802.11n (2.4GHz band). Each of them has a set of mandatory MCS which are used to determine the data rate of a wireless connection.
The code was implemented for all different combinations: 802.11ac and 802.11n, with and without frame aggregation and, finally, with either short or long guard intervals. For each possible scenario we present two plots: the left one shows the throughput versus the number of users for a given payload of 1500 Bytes; the right one yields the throughput against the payload size for the ideal case (only one user transmitting). In the cases where frame aggregation is considered we assume that the number of aggregated frames used will be the maximum that fulfills all the requirements (in terms of frames, data length and time).
As expected, the ideal case is when no collision is possible, i.e. one transmitting user. When the number of users increases, overall performance is degraded due to resource contention and CSMA/CA limitations. Decay pattern is similar across all cases but throughput is much greater when aggregating frames.
Upon payload size increase we obtain a higher throughput efficiency, approaching the theoretical limit. If we use frame aggregation, the gain for a higher payload is not as significant and starts to stagnate for medium payload sizes, as the data length already dominates against the access control information. Both the duration of the guard interval and specification used (except for the added mandatory MCS) have a more subtle effect in the curves and efficiency loss table.
The resulting figures, for each scenario, are:
- 802.11n, short guard interval, no frame aggregation
- 802.11n, long guard interval, no frame aggregation
- 802.11n, short guard interval, frame aggregation
- 802.11n, long guard interval, frame aggregation
- 802.11ac, short guard interval, no frame aggregation
- 802.11ac, long guard interval, no frame aggregation
- 802.11ac, short guard interval, frame aggregation
- 802.11ac, long guard interval, frame aggregation
We can also calculate the loss of efficiency with the previously obtained thorughput results for each case. Frame aggregation and long data sizes can be used to minimize the losses due to the access mechanism.
- Loss of efficiency (MCS 0):
- Loss of efficiency (MCS 7):
- The main goal is to demonstrate the usefulness of Bianchi’s model for throughput calculations.
- Access mechanism is one of the main bottlenecks of current Wi-Fi specifications.
- However, frame aggregation and high payload sizes mitigate throughput losses.
This example is porvided under the MIT License.
Report any issue to the GitHub issue tracker.