wlanNode
Download Required: To use wlanNode
,
first download the Communications Toolbox Wireless Network Simulation Library add-on.
Description
Use the wlanNode
object to create and configure a WLAN
node.
Creation
Description
creates a default WLAN
node object.nodeObj
= wlanNode
nodeObj = wlanNode(
sets
properties of the WLAN node
object using one or more optional name-value arguments. You can also use this syntax to
create a row vector of WLAN node objects by setting the value of the Position
property.PropertyName=Value
)
Properties
Node name, specified as a character vector, string scalar, string vector, or cell
array of character vectors. The default format of this value is
"NodeN"
, where N is the
node identifier specified by the ID
property.
When you create a vector of wlanNode
objects by specifying the
Position
property, you can name each node in the vector at once by specifying the
Name
as a string vector or a cell array of character vectors. If
the length of the Name
vector is greater than the number of nodes,
the extra names do not apply. If the length of the Name
vector is
less than the number of nodes, the extra nodes get default names. When creating this
object, you can configure names for multiple nodes simultaneously by setting this
property as a name-value argument. Once you create this object, you can set this
property for one wlanNode
object at a time.
Data Types: char
| string
Position in 3-D Cartesian coordinates, specified as a numeric
N-by-3 matrix, where N is the number of nodes. By
specifying a matrix with N greater than one, you can create a
1-by-N vector of wlanNode
objects.
Specify this value in meters. This value specifies the positions of the nodes in
Cartesian x-, y-, and
z-coordinates. When creating this object, you can configure positions
for multiple nodes simultaneously by setting this property as a name-value argument.
Once you create this object, you can set this property for one wlannode
object at a time.
Data Types: double
MAC frame abstraction, specified as 0
(false
)
or 1
(true
). Set this property to true to make the
MAC frame abstract. An abstract MAC frame means that the node does not generate MAC
frame bits.
Note
You can set this property only when you create the object. After creation, the property is read-only.
All nodes in the network must specify the same value for this property.
Data Types: logical
PHY abstraction method, specified as
"tgax-evaluation-methodology"
,
"tgax-mac-calibration"
, or "none"
.
The value
"tgax-evaluation-methodology"
corresponds to the abstraction method detailed in Appendix 1 of IEEE® 802.11™-14/0571r12 [1].The value
"tgax-mac-calibration"
corresponds to the abstraction method detailed in IEEE 802.11-14/0980r16 [2].The value
"none"
corresponds to full physical layer processing.
For more information, see PHY Abstraction.
Note
You can set this property only when you create the object. After creation, the property is read-only.
All nodes in the network must specify the same value for this property.
Note
Although these methodologies were developed for the 802.11ax™ standard, WLAN Toolbox™ simulations use them for all packet formats.
Data Types: char
| string
Device configuration, specified as a wlanDeviceConfig
object, a
vector of wlanDeviceConfig
objects, or a wlanMultilinkDeviceConfig
object. If you want to configure one or multiple
non-multilink devices (non-MLDs), specify this property as a
wlanDeviceConfig
object or a vector of
wlanDeviceConfig
objects, respectively. To specify settings for
multiple devices in one node, you must set the Mode
property
of each object in the vector to "AP"
or
"mesh"
.
Note
You can set this property only when you create the object. After creation, the property is read-only.
This property is read-only.
Node identifier, returned as an integer. This value specifies a unique identifier for the node in the simulation.
Note
If you create and store the WLAN nodes in an uninitialized matrix, the IDs that this property allocates to the nodes can be non-sequential because of the memory allocation of the object in the matrix. For more information about MATLAB memory allocation, see How MATLAB Allocates Memory.
Data Types: double
Object Functions
associateStations | Associate stations with WLAN node |
addTrafficSource | Add data traffic source to WLAN node |
addMeshPath | Add mesh path to WLAN node |
addMobility | Add random waypoint mobility model to WLAN node |
update | Update configuration of WLAN node |
statistics | Statistics of WLAN node |
Examples
Simulate a wireless local area network (WLAN) using WLAN Toolbox™ with the Communications Toolbox™ Wireless Network Simulation Library.
In this example, you:
Create and configure a WLAN with an access point (AP) node and a station (STA) node.
Add application traffic from the AP node to the STA node.
Simulate the WLAN and retrieve the statistics of the AP node and the STA node.
Check if the Communications Toolbox™ Wireless Network Simulation Library support package is installed. If the support package is not installed, MATLAB® returns an error with a link to download and install the support package.
wirelessnetworkSupportPackageCheck;
Create a wireless network simulator.
networksimulator = wirelessNetworkSimulator.init();
Create a wlanDeviceConfig
object, specifying the operating mode and beacon interval. Use this configuration to create a WLAN node and specify its name and position.
deviceCfg = wlanDeviceConfig(Mode="AP",BeaconInterval=5); apNode = wlanNode(Name="AP",Position=[0 10 0],DeviceConfig=deviceCfg);
Create a WLAN node with the default device configuration. Confirm that the default mode is STA
.
staNode = wlanNode(Name="STA",Position=[5 0 0]);
disp(staNode.DeviceConfig.Mode)
STA
Add a random waypoint mobility model to the WLAN node with the default device configuration. Set the shape of the node's mobility area to "circle"
.
addMobility(staNode,BoundaryShape="circle");
Associate the STA node with the AP node using the associateStations
function.
associateStations(apNode,staNode);
Create a networkTrafficOnOff
object to generate an On-Off application traffic pattern. Specify the data rate in kilobits per second and the packet size in bytes.
traffic = networkTrafficOnOff(DataRate=100,PacketSize=10);
Add application traffic from the AP node to the STA node.
addTrafficSource(apNode,traffic,DestinationNode=staNode);
Add the AP node and STA node to the wireless network simulator.
addNodes(networksimulator,{apNode,staNode});
Set the simulation time in seconds and run the simulation.
simulationTime = 0.5; run(networksimulator,simulationTime);
Get and display the physical layer (PHY) statistics that correspond to the AP node and STA node.
apStats = statistics(apNode); staStats = statistics(staNode); disp(apStats.PHY)
TransmittedPackets: 1243 TransmittedPayloadBytes: 58779 ReceivedPackets: 1146 ReceivedPayloadBytes: 16044 DroppedPackets: 0
disp(staStats.PHY)
TransmittedPackets: 1146 TransmittedPayloadBytes: 16044 ReceivedPackets: 1243 ReceivedPayloadBytes: 58779 DroppedPackets: 0
More About
In system-level simulation, you can model the full physical layer (PHY) transmit and receive chain to determine whether a packet was successfully received. However, modeling the PHY in this way for large networks is computationally expensive. Alternatively, you can abstract the PHY. PHY abstraction, or link-to-system mapping, is a method to run simulations in a timely manner by accurately predicting the performance of a link in a computationally efficient way.
WLAN Toolbox supports two PHY abstraction models:
This PHY abstraction model is very simple. It is intended to be applied to MAC-focused simulations, as specified in [2]. It determines whether a packet was successfully received using interference. If interference is present at any point in the packet duration, the reception of the signal of interest is considered unsuccessful.
This PHY abstraction model, defined in [1], determines whether a reception is successful by taking into account the channel model and the transmission scheme as well as interference. For more information, see the Physical Layer Abstraction for System-Level Simulation example.
Ideal PHY receiver performance is assumed.
No inter-carrier or inter-symbol interference is modeled.
It is assumed that the channel impairment and interference is constant over the duration of an MPDU subframe.
The first received packet that exceeds the energy detection threshold while the CCA is idle is considered to be the signal of interest. Subsequent signals are considered interference.
To speed up simulation when you abstract the decoding of a received packet, the signal to interference and noise ratio (SINR) is calculated only for every fourth subcarrier. For example, when decoding a 20 MHz non-HT packet, the SINR is calculated for 13 of the 52 subcarriers.
Abstract PHY supports only full-band co-channel interference modeling. It does not support modeling overlapping and adjacent channel interference.
No inter-device interference is modeled between simultaneous transmit and receive (STR) links in a multilink device (MLD).
Configure the devices and links to ensure that their operating frequencies do not partially overlap.
System-level simulation using abstract PHY does not support enhanced clear channel assessment (CCA) for non-primary channels by using guard interval (GI) correlation.
No sample clock offset impairment or correction is modeled.
If the operating frequencies partially overlap, the
InterferenceModeling
property of all devices and links must be set to"overlapping-adjacent-channel"
or"non-overlapping-adjacent-channel"
.System-level simulation using full PHY does not support enhanced CCA for non-primary channels by using guard interval (GI) correlation.
The random waypoint mobility models that you can add to a
wlanNode
using theaddMobility
object function are unrelated to the stochastic mobility modeling that thehSLSTGaxMultiFrequencySystemChannel
helper function uses.
STAs do not process or adopt the information in the received beacon frames.
References
[1] IEEE 802.11-14/0571r12, TGax Evaluation Methodology.
[2] IEEE 802.11-14/0980r16, TGax Simulation Scenarios.
Version History
Introduced in R2023aThe wlanNode
object now enables you to model primary and secondary
channels for all supported channel bandwidths. Additionally, you can also model CCA
sensitivity for all primary and secondary channels.
The wlanNode
object now validates channel bandwidth against the channel
number according to regulatory requirements. See Valid Channel Number and Bandwidth Combinations.
You can now create a WLAN node with MLD configuration by setting the DeviceConfig
property to the wlanMultilinkDeviceConfig
value.
You can now model adjacent channel interference. To configure this feature, use the
InterferenceModeling
and MaxInterferenceOffset
properties of the wlanDeviceConfig
object.
Full PHY system-level simulations now use single-precision numeric values.
You can now use wlanNode
to model the reception of Bluetooth
signals in full PHY system-level simulations.
You can now specify the
TransmissionFormat
property of thewlanDeviceConfig
object as"EHT-SU"
.You can now specify the
ChannelBandwidth
property of thewlanDeviceConfig
object as320e6
.You can now specify the
MCS
property of thewlanDeviceConfig
object as12
or13
.You can now specify the
MPDUAggregrationLimit
property of thewlanDeviceConfig
object as an integer in the range [1, 1024].
Use the
TransmitQueueSize
property of thewlanDeviceConfig
object to configure the size of the MAC transmission queue.Use the
EnableUplinkOFDMA
property of thewlanDeviceConfig
object to configure uplink OFDMA transmissions.
Use the addMobility
object function to add a random waypoint mobility model to a WLAN node.
See Also
Objects
Functions
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: United States.
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)