680 likes | 762 Views
Session Abstract. Agenda. Introduction Network Configurations, Node Models Interfacing WLAN with higher and lower layers MAC Process Model States, interrupt types, state transitions Lab: Customizing the Back-off Algorithm Physical Layer Model Pipeline Stage Model Modifications
E N D
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway points • Appendix
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway Points • Appendix
Implemented Standards • OPNET WLAN suite implemented based on the following standards: • Base standard: IEEE 802.11 • Standard for Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications • Defines a MAC sub-layer and three physical layers • FHSS, DSSS, and Infrared • Data rates: 1 and 2 Mbps • Amendments: 802.11a, 802.11b and 802.11g • Higher Data Rates • DSSS: 5.5 and 11 Mbps in the 2.4 GHz band (11b) • OFDM: 6, 9, 12, 18, 24, 36, 48 and 54 Mbps • In the 5.0 GHz band (11a) • In the 2.4 GHz band (11g)
OPNET’s WLAN Model Features • Distributed Coordination Function (DCF) • Point Coordination Function (PCF) • Reliable data transmission via RTS-CTS exchange (threshold based) • Fragmentation (threshold based) • Exponential back-off – reduced collision probability • Protection for mixed 11b/11g wireless LANs • CTS-to-self or regular RTS/CTS exchange • Physical Layer Technologies • FHSS, IR, DSSS, OFDM, Extended Rate PHY-OFDM • Auto-assignment of channels to BSSs (optional) • Data Rates (Mbps): 1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54 • Modulations: DPSK, BPSK, QPSK, CCK, QAM-16, QAM-64 • Roaming (can be turned on/off)
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway Points • Appendix
BSS 1 BSS 2 BSS 3 Infrastructure BSS Ad-hoc Network Internet Extended Service Set Supported Network Configurations
Wireless Backbone Supported Network Configurations (Cont.)
WLAN Node Models: Workstation, Server, and Station Application Layer Transport Layer Network Layer Medium Access Layer Physical Layer Use this model for studies that focus only on MAC and physical layers
WLAN Node Model: Bridge/Switch You can create custom node models with desired number/type of ports and interfaces using device creator utility
WLAN Node Model: Router Routing domain Wired interface Wireless interface
Wireless LAN Module Packet stream characteristics Statwire characteristics 1. Packet-based communication1. Used for physical carrier sensing 2. Information exchange between2. Communicate values between the attached subsystemssource and destination ports 3. Interrupt-based data sensing3. Scheduled interrupt-based carrier sensing 4. Indicates changes in transmitter/receiverstatus Statwires Packet Streams to/from Higher Layer Radio Receiver Packet Streams Radio Transmitter
Antenna Module • Isotropic antenna pattern • Since no antenna module is attached to the node model, the default isotropic antenna pattern is associated by the simulation kernel • 0 dB gain in all directions
WLAN MAC and Higher Layers Higher Layer Data Packets to Tx + an ICI with “dest_addr” field (e.g.: wlan_mac_request) Data Packets Rx + ICI (wlan_mac_ind) WLAN MAC
WLAN Packet Format (Data) Data Packet (wlan_mac)
WLAN Packet Format (Control) Control Packet (wlan_control)
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway Points • Appendix
WLAN Interrupts • Stream Interrupts • Higher layer data arrival • Lower (physical) layer data arrival • Statwire Interrupts • Receiver busy • Receiver idle • Transmitter idle • Self Interrupts • Deference (SIFS, PIFS, DIFS and EIFS time intervals) • Back-off elapse • Contention window elapse • Frame timeout • Beacon transmission time (APs only) • Contention free period end (APs only) • NAV Reset • AP Evaluate and channel scan end (roaming stations only)
WLAN INIT • WLAN process registration • Initialize all state variables • Initiate MAC auto-addressing
WLAN BSS_INIT • Complete MAC auto-addressing • Network configuration validation • For PCF enabled networks, form a list of CF-Pollable stations
WLAN IDLE • Idling MACs wait in this state • Empty transmission buffer, no ongoing transmissions, no response to send, no CFP • After a successful completion of congestion window and no further data to send • After completion of contention free period and no data to send • Note: higher layer packet arrivals are processed in any unforced state
WLAN DEFER • A frame or response to transmit, or in contention free period • Check for receiver status and network allocation vector (NAV) • If busy, wait until it gets idle • If idle, wait for inter-frame spacing (SIFS, PIFS, DIFS or EIFS) before advancing to the next state
WLAN BKOFF_NEEDED • Decide whether back-off is needed • If needed, check whether starting a new back-off or resuming; if a new one: • Increase the contention window in case of a retransmission • Compute total back-off duration
WLAN BACKOFF • Wait for the completion of back-off period • If the back-off is suspended, compute the remaining back-off duration
WLAN TRANSMIT • Data/Control packet transmissions • Detect collisions if any packet is received during transmission
WLAN FRM_END • Decide the state transition following the completion of packet transmission by the transmitter
WLAN WAIT_FOR_RESPONSE • Wait for the response message until: • The expected ACK or any type of message is received, or • ACK-waiting timer expires
WLAN SCAN • Visited only by roaming-enabled non-AP MACs when the connection with the current AP is lost or weakened • Left only when a new, reliable AP (WLAN channel) is found
Frame Timeout RTS collides Life Cycle of Packet : RTS/CTS • RTS Transmission, RTS lost due to collision RTS to send, medium is idle for longer than DIFS
Received interrupt, suspend back-off Life Cycle of Packet : RTS/CTS (cont.) • Suspending back-off Wait for DIFS
CTS received Life Cycle of Packet : RTS/CTS (cont.) • Resuming back-off, RTS retransmission, CTS reception Wait for DIFS Complete the pending back-off
ACK received Data transmission Life Cycle of Packet : RTS/CTS (cont.) • Data transmission, ACK reception Wait for SIFS
Life Cycle of Packet : RTS/CTS (cont.) • Back to idle if no more data to send Wait for DIFS
Polled station responds with either a Data, Data-Null, Data-ACK or ACK frame Transmit Poll Life Cycle of Packet : PCF POLL • AP transmitting Poll frame Wait for PIFS
Life Cycle of Packet : CTS-to-self • Transmitting CTS-to-self with op_pk_send()ANDop_pk_deliver_delayed() Own CTS-to-self Received Transmit CTS-to-self
Key WLAN Functions • wlan_mac_sv_init() • State variable initialization • Read the “Wireless LAN Parameters” configuration • wlan_higher_layer_data_arrival() • Packet queuing • In the DCF mode all packets inserted into the hld_list_ptr • Packets received by the AP during contention free period inserted into the cfpd_list_ptr • wlan_interrupts_process() • Handles the appropriate processing needed for each interrupt. This function is called in the “exit exec” of unforced state
Key WLAN Functions (cont.) • wlan_frame_transmit() • Determines the frame type for the next transmission • If an AP polling stations, selects the next station to poll • wlan_prepare_frame_to_send() • Called by wlan_frame_transmit() • Creates a packet of requested type and populates its MAC header fields • Saves a copy of the packet for possible retransmissions if required • Fragments the higher layer data packets if required • wlan_physical_layer_data_arrival() • Processes the frames received by the station from the lower layer • Course of action taken depends on the packet received • wlan_data_process() • Called by wlan_physical_layer_data_arrival() • Handles the de-fragmentation process • Data sent to higher layer if the receiver is the destination of the packet • If the received packet is a broadcast, action taken depends on the station type
Key WLAN Roaming Related Functions • wlan_begin_new_scan() • Switches the MAC’s transceivers to the next WLAN channel • Initiates the evaluation of the new channel • wlan_find_new_ap_virtual() • Evaluates the currently scanned channel • Used by distance based approach • wlan_ap_switch() • Performs the de-association from the current AP and re-association with the new AP • De-association and re-association are implicitly modeled
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway Points • Appendix
Lab 1: Network Model Configuring the type and frequency of FTP requests • Application configuration • FTP Traffic • 50% GET, 50% PUT • One request every 1 second • Size of each file 5000 bytes (40K bits) • Total application traffic in the network • (40000 bits / 1 sec) * 15 clients = 0.6 Mbps • Sufficient to saturate a wireless LAN operating at 1 Mbps and therefore to cause retransmissions Wireless FTP Servers Wireless FTP Clients
How Much Throughput Can I have in a Wireless LAN? • Data Rate: 11Mbps • Traffic Load: 8Mbps • Packet Size: 1024 bytes (constant) • Physical Layer: DSSS • RTS/CTS: Off • Fragmentation: Off
Agenda • Introduction • Network Configurations, Node Models • Interfacing WLAN with higher and lower layers • MAC Process Model • States, interrupt types, state transitions • Lab: Customizing the Back-off Algorithm • Physical Layer Model • Pipeline Stage Model Modifications • Improving Model Performance • FAQs • Related Sessions • Takeaway Points • Appendix
*Module attribute values are overwritten Physical Layer Configuration Node Attributes Module Attributes
BSS A Ch 1 BSS B Ch 6 BSS C Ch 11 Ch 1 Ch 2 Ch 3 Ch 4 Ch 5 Ch 6 Ch 7 Ch 8 Ch 9 Ch 10 Ch 11 BSS D Ch 2 BSS E Ch 7 2,401 MHz 2,451 MHz 2,473 MHz Reserved Frequency Band for WLAN Channels in U.S. at 2.4 GHz (11/11b/11g) BSS A Ch 36 BSS D Ch 48 BSS B Ch 40 BSS C Ch 44 Ch 36 Ch 40 Ch 44 Ch 48 5,170 MHz 5,230 MHz 5,190 MHz 5,210 MHz Reserved Frequency Band for WLAN Channels in U.S. at 5 GHz (11a) Auto-Allocation of WLAN Channels to BSSs • Example • 5 BSSs: from “BSS A” to BSS “E” where A < B < C < D < E
Receiver Sensitivity Configuration • Attribute “high threshold trigger” of the statwire will be overwritten by • Wireless LAN Parameters Packet Reception-Power Threshold
WLAN Transmitter Pipeline Stages • wlan_rxgroup • Exclude your own receiver • Exclude the receivers in different OPNET subnets (an optional feature for faster simulation run) • wlan_txdel • Retrieve the transmission data rate from the packet • dra_closure • Three modes: • No occlusion • Spherical Earth line-of-sight • Terrain based using TMM • wlan_chanmatch • Match conditions are based only on the transmitting and receiving frequency and bandwidth Tx Antenna Gain: None
WLAN Receiver Pipeline Stages • wlan_propdel • Warning message added to “Simulation Log” if the distance between the transmitter and receiver exceeds 300 meters Rx Antenna Gain: None • wlan_power • In addition to the default behavior, • Mark a received packet as “Noise” if the • Receiver is busy • Received power is lower than the threshold specified • Monitor the beacons for channel evaluation
WLAN Receiver Pipeline Stages • wlan_ber • Loads all WLAN modulations into an array using the new kernel procedure op_tbl_modulation_get() • Picks the corresponding modulation based on the transmission rate of the received packet instead of using receiver’s modulation • Computes the processing gain by itself using the data rate information conveyed in the packet