UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Performance study of the IEEE 802.11 wireless media access control protocols Cheung, William K. W. 1995

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata

Download

Media
831-ubc_1995-0536.pdf [ 5.98MB ]
Metadata
JSON: 831-1.0064843.json
JSON-LD: 831-1.0064843-ld.json
RDF/XML (Pretty): 831-1.0064843-rdf.xml
RDF/JSON: 831-1.0064843-rdf.json
Turtle: 831-1.0064843-turtle.txt
N-Triples: 831-1.0064843-rdf-ntriples.txt
Original Record: 831-1.0064843-source.json
Full Text
831-1.0064843-fulltext.txt
Citation
831-1.0064843.ris

Full Text

PERFORMANCE STUDY OF THE IEEE 802.11 WIRELESS MEDIA ACCESS CONTROL PROTOCOLS by WILLIAM K. W. CHEUNG B.A.Sc. (Electrical Engineering), University of British Columbia, Canada, 1992 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE in THE FACULTY OF GRADUATE STUDIES DEPARTMENT OF ELECTRICAL ENGINEERING We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA September 1995 © William K. W. Cheung, 1995 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of gt£crfc>CAL, E^GlNEgfttNfiy The University of British Columbia Vancouver, Canada Date jTepTfrfge^ <AS , l<ftS DE-6 (2/88) Abstract The performance of the IEEE Project 802.11 Wireless Media Access Control (WMAC) protocols for wireless local area networks (WLANs) is studied. In particular, the asynchronous data service in the contention period of the protocol is simulated in both adhoc and infrastructure network topologies. Ptolemy, a powerful mixed-mode and object-oriented simulator, is used as the engine for all discrete-event computer simulations. The sensitivity of network geometry, traffic flow, queueing size, channel models, hardware, and backoff parameters on performance is extensively studied. Moreover, the "hidden terminal problem" is also examined. It turns out that the connectivity and the hidden terminal parameter, Ph, can be used to predict the performance of the system with different geometries. In the worst case considered in this thesis where both the connectivity and Pn are high, the throughput performance for the Carrier Sensing Multiple Access with Collision Avoidance (CSMA/CA) protocol using RTS/CTS and ACK frames drops down to 16% of the data rate. However, the throughput is kept steady even when the system load is twice the data rate. Various other parameters used in the simulation can also affect the performance to some extent. Near optimal values for the queueing size, the receiver sensitivity, the carrier sense thresh-old, the contention window size, and the maximum retransmission value can be found through computer simulations. On the whole, it appears that the performance of the CSMA/CA basic access protocol in the 802.11 standard is acceptable even under adverse channel conditions. Table of Contents Abstract ii List of Tables vii List of Figures viii Acknowledgment xi Chapter 1 Introduction 1 1.1 Characteristics and Types of LANs 1 1.2 Distinctions between a wired LAN and a wireless LAN ..2 1.3 Motivation of IEEE Project 802.11 and Scope of this thesis 3 Chapter 2 An Overview of the I E E E 802.11 W L A N Architecture 6 2.1 Architecture Components 6 2.1.1 Adhoc Network 6 2.1.2 Infrastructure Network '. 7 2.2 Supported Services .8 2.2.1 Physical Layer Services 10 2.2.2 MAC Layer Services 10 2.3 Supported Management Functions 12 2.3.1 Timing Synchronization 13 2.3.2 Power Management 15 Chapter 3 IEEE802 . i l W L A N Media Access Methods 17 3.1 Distributed Coordination Function (DCF) , 18 3.1.1 Carrier Sensing Mechanisms ....18 3.1.2 Inter-Frame Space (IFS) 19 iii 3.1.3 Random Backoff Time Algorithm 20 3.1.4 Basic Access Procedure 20 3.1.5 The Backoff Procedure : 21 3.1.6 The A C K Procedure 22 3.1.7 Directed M P D U Transfer Procedure without R T S / C T S 23 3.1.8 Directed M P D U Transfer Procedure Using R T S / C T S 23 3.1.9 Broadcast and Multicast M P D U Transfer Procedure 25 3.1.10 Duplicated Frame Detection and Recovery. 26 3.2 Point Coordination Function (PCF) 26 3.2.1 Superframe Structure 27 3.2.2 Fundamental P C F Access Procedure 27 3.2.3 Operations of the N A V under P C F 29 Chapter 4 Design of the Simulation Framework 31 4.1 Types of Simulations 31 4.2 The Ptolemy Simulation Environment 32 4.2.1 Why Ptolemy is chosen 32 4.2.2 General Overview of Ptolemy 33 4.2.3 The Discrete Event (DE) Domain 34 4.3 The Software Architecture of the Simulation Framework 35 4.4 The Channel Models 38 4.4.1 Indoor Propagation Model ; 38 4.4.2 Path Loss Model 40 4.4.3 Log-Normal Shadowing Model 41 iv 4.4.4 Short-term Fading Model 42 4.5 Carrier Sensing and Capture Models 43 4.5.1 Carrier Sensing Model 44 4.5.2 Capture Model 45 4.6 The Traffic Generation Models 46 4.6.1 Frame Generation Distribution : 46 4.6.2 Frame Destination Distribution 47 4.6.3 Frame Size Distribution 48 4.7 Station Location Models 48 4.8 Design of the IEEE 802.11 WMAC Transceiver .49 4.8.1 WMAC Finite State Machine (WMACFSM) : 51 4.8.2 Simulation Parameters 54 4.9 The Statistics Collection Class 56 4.9.1 Types of Accumulated Statistics 56 4.9.2 The Simulation Stopping Rules 57 Chapter 5 Discussion of the Simulation Results 59 5.1 Measurement Techniques 59 5.2 Effects of Different Geometries and Network Topology 63 5.2.1 Effects of Increasing the Number of STAs in a Large BSA 64 5.2.2 Effects of Increasing the Number of STAs in a Small BSA ......69 5.2.3 Effects of Increasing the Number of STAs in a Single BSS with Fixed Adja-cent STA Distance 71 5.2.4 Effects of Different Network Arrangements with the Same Number of STAs ..75 5.2.5 Effects of Cochannel Interference between Two Independent BSSs 78 5.2.6 On the Delay Distributions of the Protocols 80 5.3. Effects of Different Traffic Conditions 83 5.3.1 Effects of Different Inbound and Outbound Traffic Flows ..83 5.3.2 Effects of Using RTS/CTS Only for the Inbound Traffic 88 5.3.3 Effects of Varying the Data Frame Size 89 5.4 Effects of RF Hardware Parameters and Channel Conditions 92 5.4.1 Effects of Varying the Receiver Sensitivity 92 5.4.2 Effects of Varying the Carrier Sensing Threshold 94 5.4.3 Effects of Short-Term Rayleigh Fading 96 5.4.4 Effects of Varying Log-Normal Shadowing Parameter 97 5.5 Effects of Varying the Source Queue Size 97 5.6 Effects of Varying the Backoff Parameters 101 5.6.1 Effects of Initial Contention Window Size 101 5.6.2 Effects of the Maximum Retransmission Count 104 Chapter6 Conclusions 106 Glossary 110 References 111 Appendix A Derivation of the Rayleigh Fading Parameter 114 Appendix B Software Architecture of Ptolemy 116 Appendix C Estimation of the Hidden Terminal Parameter 118 vi List of Tables Table 2.1 Timer Adjustment Rules upon receiving a Beacon frame in an Adhoc network. .14 Table 4.1 Summary of all C++ Classes used in the 802.11 WMAC Simulator..... 36 Table 4.2 Summary of all DE Domain Stars used in the 802.11 WMAC Simulator. 37 Table 4.3 Summary of All States and their Transitions in the 802.11 WMACFSM. 52 Table 4.4 List of System Parameters for the 802.11 WMAC Simulator 54 Table 4.5 List of Station Parameters for the 802.11 WMAC Simulator 55 Table 4.6 . Summary of all Statistics Collected and Processed by the Simulator 57 Table 5.1 Geometric Parameters for Different Number of STAs in a Large BSA .65 Table 5.2 Geometric Parameters for Different Number of STAs in a Small BSA 69 Table 5.3 Geometric Parameters for Different Number of STAs in a Equally Spaced BSA.71 Table 5.4 Geometric Parameters for Two Network Arrangements with 16 STAs 75 Table 5.5 Network Setups to Investigate Different Traffic Flow Conditions 84 Table 5.6 Geometric Parameters for Two Network Arrangements with 9 STAs 88 Table 5.7 Values for Ph and Connectivity as a function of the rxs value 95 Table 5.8 Geometric Parameters for Different Number of STAs in a Equally Spaced BSA.99 vii List of Figures Figure 2.1 . Example of Basic Service Sets that form two independent adhoc networks 7 Figure 2.2 Example of an Infrastructure Network where two BSSs are connected to a DS via two APs and an 802.x wired LAN is connected to the DS via a Portal 9 Figure 2.3 IEEE 802.11 Protocol Reference Model 9 Figure 2.4 Example of an Infrastructure Network with the Complete 802.11 Architecture Components .11 Figure 2.5 Illustration of Delayed Beacon Transmission in a busy network 14 Figure 3.1 Breakdown of the WMAC Architecture in terms of Coordination Functions 17 Figure 3.2 An Example of the "Hidden" Terminal Problem 19 Figure 3.3 Basic Access Method when the channel is busy on an initial transmission attempt, and the MPDU is transmitted after the defer access and backoff periods... 21 Figure 3.4 An Example of the IEEE 802.11 WMAC Backoff Procedure 22 Figure 3.5 Illustration of Directed Data/ACK MPDU Transfer Procedure 24 Figure 3.6 Illustration of Directed Data/ACK MPDU Transfer Procedure with RTS/CTS... .25 Figure 3.7 Superframe Structure for PCF. 27 Figure 3.8 An Example of PCF Operation within a Superframe when the PCF is either a Transmitter or a Receiver. 28 Figure 3.9 An Example of PCF Operation within a Superframe when the PCF is neither a Transmitter nor a Receiver but only Station-to-Station Transfers occur (a) with ACK, and (b) without ACK 29 Figure 4.1 A hierarchical application in Ptolemy with Stars, Galaxies and a Universe 34 Figure 4.2 Block Diagram of an IEEE 802.11 WMAC STA in the Simulator. 35 Figure 4.3 Two examples of arranging 16 stations in (a) a 4 x 4 grid, (b) a 2 x 8 grid 49 Figure 4.4 The 802.11 WMACFSM Diagram for the Transmission of a Data Frame 51 viii Figure 4.5 The 802.11 WMACFSM Diagram for the Reception of any frames 52 Figure 5.1 Description of Various Levels of Result Measurements 59 Figure 5.2 Acceptance Rate, Completion Rate, and Throughput for 9, 16, and 36 STAs in a 150m x 150m Square BSA. 66 Figure 5.3 Queueing and Transfer Delay Performances for 9, 16, and 36 STAs in a 150m x 150m Square BSA 67 Figure 5.4 Throughput Performance for 9, 16, and 36 STAs in a 25m x 25m Square BSA. ..70 Figure 5.5 Queueing and Transfer Delay Performances for 9, 16, and 36 STAs in a 25m x 25m Square BSA 71 Figure 5.6 Acceptance Rate, Completion Rate, and Throughput for 9 and 36 STAs whose adjacent distances are set at 50m 72 Figure 5.7 Queueing and Transfer Delay Performances for 9 and 36 STAs whose adjacent distance is set at 50m 73 Figure 5.8 Acceptance Rate, Completion Rate, and Throughput for Two Network Arrangements using 16 STAs whose adjacent distances are set at 50m 76 Figure 5.9 Queueing and Transfer Delay Performances for Two Network Arrangements using 16 STAs whose adjacent distances are fixed at 50m 77 Figure 5.10 Network Setup to test the Effects of Co-channel Interference 79 Figure 5.11 Average Throughput Performance of Two Independent BSSs Sharing the Same Channel 79 Figure 5.12 Cumulative Queueing Delay Distribution Function for the 2 x 8 Network Configuration for (a) C, (b) C+A, (c) C+R/C, and (d) C+R/C+A protocols 81 Figure 5.13 Cumulative Transfer Delay Distribution Function for the 2 x 8 Network Configuration for (a) C, (b) C+A, (c) C+R/C, and (d) C+R/C+A protocols 82 Figure 5.14 Throughput, Acceptance Rate, Transfer and Queueing Delays of Different Traffic Flow Conditions for Two Network Configurations using 9 STAs .85 Figure 5.15 Throughput, Acceptance Rate, Transfer and Queueing Delays of Different Traffic Flow Conditions for Two Network Configurations using 25 STAs 86 Figure 5.16 Effects of Using RTS/CTS Frames in inbound traffic to an AP on the Throughput Performance 89 ix Figure 5.17 Acceptance Rate, Completion Rate, and Throughput of 36 STAs where the Data Frame Size is varied 91 Figure 5.18 Throughput as a Function of Receiver Sensitivity Values for (a) 2 x 8 STAs, and (b) 4x4 STAs 93 Figure 5.19 Throughput as a Function of Carrier Sensing Threshold Values for (a) 2 x 8 STAs, and (b) 4 x 4 STAs 95 Figure 5.20 Throughput Performances of 16 STAs with and without Rayleigh Fading 96 Figure 5.21 Throughput of 16 STAs using a s values of (a) 3.0 dB, (b) 7.0 dB, (c) 9.6 dB, and (d) 14.1 dB 98 Figure 5.22 Acceptance Rate and Throughput of 9 STAs as a function of the Queue Size 99 Figure 5.23 Acceptance Rate and Throughput of 16 STAs as a function of the Queue Size.. 100 Figure 5.24 Throughput Performance of 9 STAs as a Function of CWmm 102 Figure 5.25 Acceptance and Completion Rates of the "C" Protocol at 400 kBytes/s as a Function of CWmin when the number of STAs is 9 102 Figure 5.26 Throughput, Acceptance and Completion Rates for 9 STAs as a Function of the Maximum Retransmission Count, r. 105 Figure B. 1 The Software Architecture of Pigi, Ptolemy Interactive Graphical Interface 116 Figure C l An Illustration of arranging 9 stations in a 3 x 3 grid separated by 75m 119 Acknowledgment I would like to thank Dr. C y r i l Leung for his supervision and useful suggestions in this project. This work was supported by an N S E R C Post-Graduate Scholarship (PGR-A) and N S E R C grant OGP0001731. xi Chapter 1 Introduction From electronic mail access to remote database query to World-Wide Web sites informa-tion retrieval and shopping to future's Virtual Reality Web sites (currently under beta testing) and video-conferencing, people nowadays are relying more and more on the Internet, the "Informa-tion Superhighway". A recent report in Byte Magazine [1] shows that the number of hosts connected to the Internet has been increasing at a rate of about one million per year since 1992, with the current number being four million. Actually, the term internet, or more formally, internetworking, accommodates many diverse underlying hardware technologies and intercon-nects different network topologies and sizes including Wide Area Networks (WANs), Metropoli-tan Area Networks.(MANs), and Local Area Networks (LANs) [2, 3, 4, 5]. In this thesis, we are only concerned with the performance of a special type of LAN called a wireless LAN (WLAN). Before describing the components of a WLAN, we will provide some background information L about the characteristics and types of LANs and the major differences between a wired LAN and a wireless LAN. Then, the motivation for providing an international standard is explained, followed by a definition of the scope of this thesis. 1.1 Characteristics and Types of LANs The four major components of a LAN are the channel or the physical medium, the interface between the medium and the protocol logic, the protocol control logic, and a user workstation [4]. A L A N is characterized by its coverage area which typically ranges from hundreds of square feet to a few square miles. Usually, the area is confined to a building or a plant housing a group of buildings [3, 4]. Due to its local nature, the L A N has substantially higher transmission rates, ranging from 1 to 30 Mbit/s, than networks covering large areas. LANs are Chapter 1 Introduction . 2 mainly used to transport data between computers, terminals, and other devices. As early as 1970s, LANs were used to share expensive and limited computer resources such as memory, hard disks, and printers in order to extend the life of an organization's systems [4]; There are several major types of LANs depending on their topology and how they access the channel. The two most commonly used ones are IEEE 802.3 CSMA/CD (Carrier Sense Multiple Access/ Collision Detection) Ethernet LAN, and IEEE 802.5 Token ring LAN [3, 4]. The 802.3 LAN can be arranged in a linear, tree, or segmented cable topology, whereas the 802.5 LAN can be arranged in a ring, or a star-like cable topology. 1.2 Distinctions between a wired LAN and a wireless LAN WLANs have fundamental characteristics which make them significantly different from wired LANs. The destination address does not always mean the destination location since the destination station, does not, in general, stay in a fixed location. The physical (PHY) layer of a WLAN has the following characteristics which makes it different from a wired LAN: • The physical point to point connection has very limited range due to attenuation. • Outside signals cannot be prevented from entering a system and vice versa since the signal may be able to propagate from one WLAN to an adjacent one if the two networks are not very far apart; hence, "wiretapping" is a built-in feature and this leads to data security issues. • Data transmission in a WLAN is significantly less reliable than in a wired LAN due to propagation loss and fading. Chapter 1 Introduction 3 • The topologies are very dynamic since, in general, the computers are portable, and a different arrangement may yield a different network configuration. Since many stations in a WLAN are hand-held or portable, power is a limited resource, and power-saving features are important. Another not very obvious difference is that since the existing MAC protocols for wired LAN assume reliable data transmission in the physical layer, a WLAN's MAC protocol must incorporate additional management and error control schemes in order to integrate this protocol transparently to the existing upper layer protocols such as TCP/IP (Transmission Control Protocol/Internet Protocol) [2, 6]. 1.3 Motivation of IEEE Project 802.11 and Scope of this thesis With the widespread use of high performance portable computers and the increasing need for network connection to access the information superhighway, WLANs have become an emerging technology for today's computer. But as the market is flooded by various hardware manufacturers, system integrators, and computer manufacturers in providing WLAN solutions, there is a need to ensure interoperability among competing products. Accordingly, in 1990, IEEE Project 802.11 WLAN Standards Working Group was established to recommend an international standard for WLANs that will support high bandwidth wireless data networking. In December 1994, the second pre-release version of the draft specification was made available to the public, and most of the work in this thesis is based on this release. A final version is expected to be released in 1996. The committee has selected the DFWMAC (Distributed Foundation Wireless Media Access Control Protocol) proposed by AT&T Global Information Solutions/NCR Microelectronic Product Wireless Communications and Networking Division, Symbol Technologies, and Xircom Chapter 1 Introduction 4 as the foundation for the development of a WLAN standard. The minimum functional bandwidth is set at 1 Mbps. This was deemed necessary for common operations such as file transfers and transaction processing. For applications such as digital voice and process control, which require real-time data transmission, the committee decided to require support for time-bounded services to minimize delay variance. In addition, the protocol will officially support three types of physical layer including 2.4 GHz ISM band direct sequence spread spectrum (DSSS), 2.4 GHz frequency-hopping spread spectrum (FHSS), and baseband infrared (IR) [7, 8]. The original Project Authorization Request (PAR) defines the scope of this effort to develop a MAC and Physical Layer (PHY) specification for wireless connectivity for fixed, portable and moving stations within a local area. Specifically, the 802.11 standard • describes the functions and services required by an 802.11 compliant device to op-erate within adhoc and infrastructure networks as well as the aspects of station mo-bility (transition) within a local area. • describes the MAC procedures to support the asynchronous and time-bounded MAC service data unit (MSDU) delivery services. • supports the operation of an 802.11 compliant device within a wireless LAN which may coexist with multiple overlapping wireless LANs. • describes the requirement and service to provide security, privacy and authentica-tion of 802.11 compliant devices. This thesis mainly deals with the first three issues in which the system is using the asynchronous MSDU delivery services. The effect of changing various system parameters, such Chapter I Introduction 5 as channel and operating parameters, on statistics such as end-to-end delay distributions and throughput will be studied in both adhoc and infrastructure systems. The sensitivity of the results to various assumptions will be studied extensively. Chapter 2 overviews the general architecture of the 802.11 WLAN. Chapter 3 introduces the underlying MAC mechanism called Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) and explains the CSMA/CA access method in detail. Chapter 4 describes the simulation engine (Ptolemy), the propagation models, and various assumptions used in the simulations. Chapter 5 describes the main results of the simulations and discusses the impact of various parameters on the performance of the system. Finally, Chapter 6 summarizes the observations and concludes the thesis with recommendations. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture This chapter summarizes the major concepts and terminology used within the 802.11 WLAN MAC standard. It describes the major architecture components and network configura-tions supported by the standard. It presents the logical services required to support a distribution system and the physical services required to accommodate its three supported PHY specifications [7]. Moreover, the two major MAC layer management entities, synchronization and power management, that are unique to a wireless LAN are described. 2.1 Architecture Components The basic building block of an 802.11 WLAN is a basic service set (BSS) which is a group of stations controlled by a single coordination function. A station (STA) can be any device which contains an 802.11 conformant MAC and PHY interface to the wireless medium. The coordina-tion function, which is described in detail in Chapter 3, is the logical function that determines when a STA operating within a BSS transmits and receives via the wireless medium. In order to support station mobility transparently for the upper layers, the 802.11 architec-ture consists of several components which interact to provide a WLAN. The architecture is addressed in two major areas: adhoc and infrastructure networks. These network types are differ-ent in how they form a network from the BSSs and where the packet destination is. 2.1.1 Adhoc Network If a network is created in a spontaneous manner, we refer to it as an adhoc network. The main feature of an adhoc network is that the act of creating and dissolving the network is 6 Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 7 sufficiently straightforward and convenient so as to be achievable by any nontechnical users of the network facilities [7]. Each independent BSS forms an adhoc network, and a minimum 802.11 WLAN can consist of only two stations. Figure 2.1 Example of Basic Service Sets mat form two independent adhoc networks. Figure 2.1 shows two adhoc networks. Each grey oval corresponds to a basic service area (BSA) within which members of a BSS can communicate. This mode of operation is possible when 802.11 STAs are "close enough" to form a direct connection. The reason for quoting "close enough" is that well defined coverage areas simply do not exist for wireless PHYs. Propagation characteristics are dynamic and unpredictable. Even a small change in position can result in drastic differences in signal strength. Hence, in Figure 2.1, each grey oval with sharp boundary for a BSS only shows an artifact of pictorial representation and not a physical reality. This is assumed in all illustrations in the rest of this thesis. 2.1.2 Infrastructure Network If roaming between BSSs or a larger coverage area than can be provided by a single BSS is needed, one can form an extended form of an 802.11 WLAN from multiple BSSs. The resulting network is referred to as an infrastructure network. An infrastructure network contains one or Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 8 more Access Points (AP), a Distribution System (DS), and zero or more Portals. Within the infrastructure, there are interfaces between the STAs and APs and between the APs and the DS. The architectural component used to interconnect BSSs is the Distribution System (DS), and the interconnected set of BSSs together with the DS form an Extended Service Set (ESS). Within a BSS, the STA that provides access to the DS is called an AP. If a BSS contains mobile STAs, the DS will provide the logical services necessary to handle address mapping and seamless integration into the ESS. Following the same convention in 802.11 terminology, the area within which members of an ESS can communicate is the Extended Service Area (ESA), and this area is at least as large as a BSA. With these different components, 802.11 logically separates the Wireless Medium (WM) within a BSS and the Distribution System Medium (DSM) between BSSs, and there are no restrictions as to whether both media be the same or not. Figure 2.2 shows an example of an infrastructure network consisting of two BSSs and an existing 802.x1 LAN interoperating together through a DS via two APs and a portal. The portal provides logical integration between the 802.11 architecture and existing wired LANs; More precisely, a portal forms a logical bridge between the wired LAN media and the DSM but not the WM. 2.2 Supported Services The 802.11 WLAN specification does not explicitly specify any specific STA, DS, or PHY layer implementations. Instead, it specifies services which are associated with different components of the architecture. There Is a set of physical layer services designed for the PHY layer and another set of logical services provided for the MAC layer. The parameters required by the services in different layers are communicated via their corresponding Service Access Points 1 The "x" can be "3" for Ethernet, "4" for token bus, and "5" for token ring. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 9 Figure 2.2 Example of an Infrastructure Network where two BSSs are connected to a DS via two APs and an 802.x wired LAN is connected to the DS via a Portal. (SAPs) . Figure 2.3 shows the protocol reference model of the 802.11 specification with the breakdown of how sublayers interact with each other via SAPs. The function of each sublayer and their corresponding services are briefly described in the following sections. The interested reader should refer to the standard in [7] for more details. MAC Layer PHY Layer MAC or MAC Sublayer PHY SAP PLCP Sublayer PMD SAP PMD Sublayer MAC Layer Management ^ Entity PLME SAP PHY Layer Management Entity (PLME) Figure 2.3 . IEEE 802.11 Protocol Reference Model. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 10 2.2.1 Physical Layer Services The interface specification provides the following basic services: • Transfer Physical Layer Interface Data Units (PhlDUs) between the MAC Layer and the Physical Layer (PHYL) in a manner consistent with ISO 7498 [9]. • Insure interoperability between conformant stations of the same PHYL type. • Support a variety of different PHY types using a common medium independent inter-face. In order to achieve this, each PHYL is subdivided into a Physical Layer Conver-gence Procedure (PLCP) sublayer and a Physical Medium Dependent (PMD) sublayer. The PLCP sublayer defines a method of mapping the 802.11 MAC layer Pro-tocol Data Units (MPDU) into a framing format suitable for sending and receiving user data and management information between two or more nodes using the associat-ed PMD sublayer. The PMD sublayer provides a transmission interface and defines the method of transmitting and receiving data via a wireless medium between two or more nodes. • Passing information regarding the characteristics of the received signal and the current PHY state vectors such as data bit-rate and internal buffer sizes across the PHY-MAC interface on a frame by frame basis. There is also the capability for the adjustment of transmission parameters by the MAC on a frame by frame basis. 2.2.2 MAC Layer Services The complete set of 802.11 MAC layer services contains seven services. They are divided into two categories - Station Services (SS) and Distribution System Services (DSS). Each of the Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 11 services is supported by one or more MAC frame types, and there are three types of frames, namely Data, Management, and Control. Figure 2.4 shows an infrastructure network example together with the types of services used between stations. In the figure, the thick dots represent Figure 2.4 Example of an Infrastructure Network with the Complete 802.11 Architecture Components. SS, and the two-headed arrows represent DSS. The SS is a set of services that supports transport of MAC Service Data Units (MSDUs) between stations within a BSS; the SS are present in every 802.11 station since the APs has station functionality also. This subset of services provides authentication, the service used to establish the identity of STAs to each other, and privacy, the data encryption service used to prevent the contents of messages from being read by parties other than the intended recipient. The DSS is a set of services that enables the MAC to transport MSDU between BSSs within an ESS. The Distribution System provides the DSS which are accessible via a special STA called an AP, defined in Section 2.1.2. The provided subset of services include association, Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 12 reassociation, disassociation, distribution, and integration. To deliver a message within a DS, the DSS needs to know which AP to access to for the given 802.11 STA. The association service establishes an initial association between a STA and an AP. When a message is delivered from one BSS to another within an ESS, the reassociation service enables an established association of a STA to be transferred from one AP to another AP. If an existing association needs to be terminated, the disassociation service voids the existing association. By using the association information, the distribution service delivers MSDUs within the DS in such a way that it arrives at the appropriate DS destination for the intended recipient. If the DSS determines that the intended recipient of a message is a member of an integrated L A N 2 , the integration service will be invoked to deliver the message from the Distribution System Medium to the integrated LAN media. Since both distribution and integration services are dependent on a specific DS implemen-tation, the 802.11 WLAN standard does not specify how a message is distributed via these services. Instead, it only provides the DS with enough information to determine which AP or portal a message needs to route to. 2.3 Supported Management Functions As shown in Figure 2.3, the PHY layer has a PHY Layer Management Entity (PLME), and the MAC layer has a MAC Layer Management Entity. These management entities basically address four areas of management functions: frame processing, access control, physical connec-tion, and management function coordination. Since the PHY layer management functions are dependent on the specific type of PHY layer, the 802.11 standard only defines primitives for interaction between the PHY and MAC layer. In fact, the standard only defines primitives for any 2 The integrated LAN refers to the backbone network. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 13 management entity that is implementation independent. A complete list of the primitives can be found in sections 7.4,9,10.4,11.3, and 12.1 of the Draft IEEE 802.11 standard [7]. In this section, we briefly describe the two important implementation independent MAC Layer Management Entities, synchronization and power management, that are unique to the 802.11 WLAN standard. 2.3.1 Timing Synchronization All nodes within a BSS are synchronized to a common clock, whether the BSS is within an adhoc network or part of an infrastructure network. Timing synchronization allows a station to support isochronous (time-bounded) services, management of certain PHYs such as Frequency-Hopped Spread Spectrum (FHSS), mobility support, and power management. The basic approach is to maintain a local Synchronization Timer in all stations. A Timing Synchronization Function (TSF) keeps the timers for all stations within the same BSS synchro-nized. The synchronization information is conveyed via beacon frames, and each beacon contains the local synchronization timer, a SYNC flag indicating whether the local station has been synchronized or not, and a beacon interval. When a station first joins a BSS, it acquires synchroni-zation through a process called scanning. Scanning can be either passive when a station listens to the medium until a valid beacon frame is received or active when a station broadcasts Probes and waits for a Probe Response. To maintain synchronization in an infrastructure network, the AP is the timing master that executes the TSF. To synchronize the other stations in a BSS, the AP periodically3 transmits beacon frames that contain a copy of its synchronization timer. The stations always accept the 3 Since the transmission of a beacon may be delayed because of CSMA/CA deferrals, periodic here means that transmission of a beacon happens once within a certain fixed beacon interval. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture . 14 beacons and update their local synchronization timer from the received timestamp value if they are not already synchronized. Figure 2.5 illustrates two instances of delaying the transfer of beacon frames. Figure 2.5 Illustration of Delayed Beacon Transmission in a busy network. To maintain synchronization in an adhoc network, the TSF is executed by all members of the BSS in a distributed fashion. Each station schedules a beacon transmission using the basic CSMA/CA access mechanism to be described in Section 3.1.4, and this transmission always occurs during the Awake Period of stations that are operating in a low power mode. If a beacon is received from another station during the random backoff period, the transmission is canceled. Upon receiving a beacon frame, a station adjusts its synchronization timer according to Table 2.1. Table 2.1 Timer Adjustment Rules upon receiving a Beacon frame in an Adhoc network. Transmitting Station State Receiving Station State Unsynchronized Synchronized Unsynchronized Take an average value between the current timer and the beacon timer. Ignore beacon. Synchronized Adopt the beacon timer. If the difference between the timers is above a threshold value, take the average value between the current timer and the beacon timer. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 15 2.3.2 Power Management A n essential part of the W M A C is the ability to conserve mobile station power while ensuring that the performance of the network does not degrade drastically. The standard specifies four different modes to trade-off station power consumption and performance. These modes are: • Continuous-Active-Mode ( C A M ) - The receiver is active continuously. Stations may receive frames at any time. • Temporary-Active-Mode ( T A M ) - The receiver is active temporarily. Stations may re-ceive frames at regular intervals while the receiver is active. • Power-Save-Non-Polling (PSNP) - This mode only exists in an infrastructure net-work. A station listens to all Delivery Traffic Indication Maps (DTTMs) that is trans-mitted within every MACMGT_DTIM_Interval beacon frame and keeps its receiver active i f D T I M indicates a frame is buffered for delivery to itself. The A P transmits a buffered frame without waiting for a poll after the D T I M is transmitted. • Power-Save-Polling (PSP) - This mode only exists in an infrastructure network. A sta-tion listens to selected Traffic Indication Maps (TEVIs) that are embedded in every bea-con frame, and polls the A P i f the T I M indicates a frame is buffered (except for broadcast frames.) The A P only transmits buffered frames in response to a poll frame. In an infrastructure network, power saving is accomplished by • Synchronizing all stations operating in Power Save Mode within one B S S . • Al lowing stations to power down their transceivers for most of the time using either P S N P or PSP as explained above. Chapter 2 An Overview of the IEEE 802.11 WLAN Architecture 16 • Temporarily buffering incoming frames for sleeping stations in an AP. • Announcing the buffered frames to the stations at regular predetermined intervals (us-ing TIMs or DTJJVls), so that a station can sleep until it wishes to hear such an an-nouncement, at which point it can take steps to ensure that any buffered frames are properly received. In an adhoc network, a similar approach is followed using the assumption that all stations are synchronized with each other. Since no central buffering function is available in this configu-ration, a frame may be buffered within a transmitting station unti l al l transceivers are awake. W h e n a frame is to be transmitted to a destination station that is i n Power Save mode, the transmitting station first transmits an Adhoc Traffic Indicator Map (ATIM) in a predetermined window in which al l the stations operating in power save mode are active. A STA, upon receiving an A T I M , remains active until a subsequent data frame is received. Chapter 3 IEEE 802.11 WLAN Media Access Methods The fundamental access method of the 802.11 MAC is a Distributed Coordination Function (DCF) known as Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA). This function is fully described in the next section. Another access method is a Point Coordina-tion Function (PCF) which is an optional service and is implemented on top of the DCF. Since this thesis mainly focuses on the DCF part of the 802.11 WMAC protocol, only a brief description of the PCF is provided in Section 3.2. Details about this function can be found in Section 5.3 of the specification [7]. Figure 3.1 shows the breakdown of the MAC architecture which includes the basic DCF that provides asynchronous service and an optional PCF that provides both time-bounded and asynchronous contention free services. Both DCF and PCF can coexist without mutual interfer-optional Time-boundeoV Asynchronous services , Contention-free service MACLayer_ PCF Asynchronous services i ' Contention service DCF (CSMA/CA) I I Z PHY layer Figure 3.1 Breakdown of the WMAC Architecture in terms of Coordination Functions. ence by integrating the access methods in a superframe in which a contention-free period occurs at the beginning of the superframe followed by a contention period. Details on how this works are described in Section 3.2. 17 Chapter 3 IEEE 802.11 WLAN Media Access Methods 18 3.1 Distributed Coordination Function (DCF) The basic 802.11 MAC protocol is a DCF that allows for automatic medium sharing between similar and dissimilar PHY layers through the use of the CSMA/CA protocol. This access method is used when no PCF is detected and when the system is in the contention period of a superframe if PCF is used. In addition, all directed traffic (unicast frames) use immediate positive acknowledgment (ACK frame), and retransmission is scheduled by the sender if no ACK is received. The CSMA/CA protocol is designed to reduce the collision probability between multiple stations accessing the medium; the probability of a collision is highest at the point when the medium becomes free following a busy period, as indicated by the Carrier Sensing (CS) function. This is because multiple stations could have been waiting for the availability of the channel to transmit their pending packets. A random backoff procedure is used to resolve medium contention conflicts. All these aspects of the protocol are described in the following sections. 3.1.1 Carrier Sensing Mechanisms In the 802.11 standard, there are two CS functions, physical and virtual. The physical CS mechanism is handled by the PHY layer and is implementation specific. The virtual CS mechanism is achieved by setting the medium busy reservation information variable, called a Network Allocation Vector (NAV), on each STA through an exchange of RTS and CTS frames prior to the transmission of an actual data frame. The RTS and CTS frames contain a duration field for the period of time that the medium is to be reserved to transmit the actual data frame plus other overheads such as the ACK frame and carrier sensing time. This information is distributed to all stations within the detection range, and its main purpose is to solve the "hidden terminal Chapter 3 IEEE 802.11 WLAN Media Access Methods 19 problem" (HTP) where a transmitter cannot detect that a distant transmitter is simultaneously transmitting a frame, but their common receiver is aware of that. Figure 3.2 illustrates that STA1 and STA2 are "hidden" from each other, but STA3 can sense both STA1 and STA2. This scheme can only be used for directed or unicast frames but not in broadcast or multicast frames. A formal description of the operation of RTS and CTS can be found in Section 3.1.8. in range STA2 out of range Figure 3.2 An Example of me "Hidden" Terminal Problem. 3.1.2 Inter-Frame Space (IFS) The time interval between frames is referred to as the Inter-Frame Space (IFS). There are three types of IFS with different time intervals corresponding to different medium access priority levels. The shortest interval (highest priority) IFS is called Short-IFS (SIPS), and it is used before the transmission of any response frames such as ACK, CTS, and polling in PCF and between fragmented frames. The choice for the value of SIPS is dependent on the PHY layer implementa-tion such as receiver turnaround time and system processing time. The second type of IFS is PCF-IFS (PIFS) which is used only by the PCF to send any of the Contention Free Period (CFP) frames. The PCF allows a STA to transmit after it has detected that the medium is free for PIFS at the beginning of a Contention Free Burst period. Chapter 3 IEEE802.il WLAN Media Access Methods 20 The third type of IFS is DCF-IFS (DIFS) which is used by the D C F to transmit asynchro-nous M P D U s . O f the three IFS types, D I F S has the longest interval and, hence, the lowest priority. The D C F allows a S T A to transmit after it has detected that the medium is free for DIFS, and it is not in a backoff period. 3.1.3 Random Backoff Time Algorithm On an initial access to the channel, i f the C S function detects that a medium is busy, an asynchronous M P D U w i l l go through a random backoff period for an additional deferral time before transmitting. The random backoff time is determined as follows: Backoff Time = Random ( C W ) x Slot Time (3.1) where C W = { c e integer: C W . < c < C W m 1 L ° m i n m a x J R a n d o m ( C W ) = U n i f o r m [ C W m i n , C W ] Slot Time = Transmitter turn-on delay + Medium propagation delay + Medium busy detect response time The Contention Window (CW) is init ial ly set to CWmin and is increased exponentially after every retransmission attempt until CWmax. This is done to improve the stability of the access protocol under high load conditions. 3.1.4 Basic Access Procedure The basic medium access procedure depends on whether a pending M P D U detects a free medium on the initial transmission 1 and whether another pending M P D U needs to be transmitted Chapter 3 IEEE 802.11 WLAN Media Access Methods 21 immediately following the previously transmitted M P D U . A S T A with a pending M P D U may transmit when it detects a free medium for greater than or equal to a DIPS time. If the medium is busy, the backoff procedure described in the next section w i l l be followed. Likewise, i f a M P D U needs to be transmitted immediately following the previously transmitted M P D U , the backoff o procedure w i l l be followed in order to allow fairness of channel access by all competing STAs. Figure 3.3 illustrates the basic access method when the channel is busy on an initial transmission attempt. In this scenario, the M P D U is transmitted after the defer access and backoff periods. DIPS / Busy medium DIPS PIPS KIPS Defer Access Contention Window / / ^ ^ p y Window / / Next MPDU -A h -I Slot Slot time Figure 3.3 Basic Access Method when the channel is busy on an initial transmission attempt, and the MPDU is transmitted after the defer access and backoff periods. 3.1.5 The Backoff Procedure The backoff procedure consists of selecting a backoff time from (3.1). The backoff timer only decrements when the medium is idle. It is stopped when the medium is sensed busy, and once the medium is sensed free for DIFS time, it is decremented again. Whenever the timer goes to zero, M P D U transmission begins. Figure 3.4 depicts an example of the backoff procedure. In region A of the figure, while STA1 is transmitting, STA2 to STA4 attempts to access the channel An initial transmission is defined as an attempt to transmit RTS, data, poll, request, or response MPDU to the channel for the first time. Chapter 3 IEEE802.il WLAN Media Access Methods 22 DIFS DIFS DIFS DIFS STAU STA2 • STA3 • STA4 STA5-; . defer - defer | ^ defer ^  ^ ^ ^ ^ A J L B DIFS Q _ l I 1 1_ I I L_ D E j i i i i i i_ | Initial access attempt ^ ^ , , Backoff Time Remaining Data Frame 1 = D e c r e m e n t i n g ™ Backoff Time Figure 3.4 An Example of the IEEE 802.11 WMAC Backoff Procedure, the first time. Hence, their channel access will be deferred until the medium is free. After STA1 has finished its transmission,, another frame is ready to transmit, but this frame must go into random backoff even though the channel is free for DIFS time. Meanwhile, STA2 to STA4 start to decrement their backoff timer after DIFS time in region B. Since STA 3 has the shortest backoff time, it expires first, and frame transmission immediately follows. At this point, the backoff timers for STA1, STA2 and STA4 are stopped until STA3 has finished transmitting its frame. Just after STA3 has finished transmitting, STA5 has a frame ready to transmit. Since all the other stations are decrementing their backoff timers and this is the first transmission attempt for STA5, this frame is transmitted immediately after DIFS time. The other stations stop their backoff timers as soon as they detect that someone is transmitting in region C. This process continues for regions D, E, and so on. 3.1.6 The A C K Procedure Transmission of an ACK frame occurs after SIFS time interval without regard to the busy/ Chapter 3 IEEE 802.11 WLAN Media Access Methods 23 free status of the medium. Upon successful reception of a data or management frame whose destination is an AP, the AP always generates an ACK frame. A non-AP STA always transmits an ACK frame whenever it receives a directed data or management frame but not any multicast or broadcast frames. If a source STA does not receive an ACK after ACK_timeout 2 amount of time, it can assume that the MPDU was not successfully received. Then, it will double the contention window size according to Section 3.1.3, and a retransmission will be scheduled according to the basic access and backoff procedures until the maximum ACK retry count is reached. 3.1.7 Directed MPDU Transfer Procedure without RTS/CTS Using the definitions and procedures from sections 3.1.1 to 3.1.6, we can now describe the directed MPDU transfer procedure without RTS/CTS as follows: • The source STA transmits an asynchronous frame using the basic access and the back-off procedures. • The destination STA returns the ACK frame according to the ACK procedure. • The other STAs defer access followed by a backoff period if they have pending frames to be transmitted. Figure 3.5 depicts the activities for the source, destination, and other listening stations. 3.1.8 Directed MPDU Transfer Procedure Using RTS/CTS Use of the RTS/CTS exchange depends on the length of an MPDU; If the length of an MPDU is greater than a threshold value or if the threshold value is zero, an RTS/CTS exchange is 2 ACK_timeout includes the transmission time of an ACK and SIFS. Chapter 3 IEEE802.il WLAN Media Access Methods 24 G3 Source G1 = SIFS ..................... G3 = DIFS Data 1 Destination IACKI Other | « G 3 • m Contention Window m | Next MPDU Defer Access Backoff after Deferral Figure 3.5 Illustration of Directed Data/ACK MPDU Transfer Procedure, used. The main reason for this rule is that an RTS/CTS exchange increases transmission overhead, and it is effective only when the MPDU size is greater than a certain threshold value obtained from field tests. Using the definitions and procedures from sections 3.1.1 to 3.1.6, we can now describe the directed MPDU transfer procedure with RTS/CTS as follows: • The source STA transmits an RTS frame using the basic access and the backoff proce-dures; it will start a T l timer after it has transmitted the complete RTS frame. • The destination STA returns the CTS frame after SIFS time; the other STAs also re-ceive the RTS but only set the NAV to the duration of transmitting CTS, Data, ACK, and three times of SIFS and starts a T l timer. (Refer to Figure 3.6.) • Upon successful reception of a CTS, the source STA transmits the data or management frame after SIFS; meanwhile, the other STAs reset the NAV to the duration of trans-mitting Data, ACK, and two times of SIFS. If a CTS cannot be received within T l by any of the other STAs and the CS is not active, that STA will reset its NAV to zero. Chapter 3 IEEE 802.11 WLAN Media Access Methods 25 G3 •* »• Source CW = Contention Window j „ 1 1 „ j r T1 = STPS . i , G3 = DIFS RTS 1 I Data | Destination \<^. Icrs 1 I A C K Other G3 Y//S, NAV from R T S ' / / / / l \ \ NAV from CTS <S Next MPDU Defer Access ^Backoff after Deferral Figure 3.6 Illustration of Directed Data/ACK MPDU Transfer Procedure with RTS/CTS. • When the Data frame is received successfully, the destination STA returns the ACK frame according to the ACK procedure. From the above description, an RTS or a CTS frame carries information about the duration of the pending source STA data or management frame. In addition, if a CTS cannot be received by the source STA within T l , the contention window size is doubled until CWmax, and a retransmis-sion of the RTS is scheduled according to the basic access and backoff procedures until the maximum RTS retry count is reached. 3.1.9 Broadcast and Multicast MPDU Transfer Procedure The scope of a multicast frame is within an ESS. When broadcast or multicast MPDUs are transmitted from an AP to a STA or from one STA to the other STAs within a BSS, only the basic access mechanism is used. No RTS/CTS or ACK procedures will be used. However, when broadcast or multicast MPDUs are received by an AP from one of its STAs, the RTS/CTS exchange rule described in Section 3.1.8 is obeyed, and the ACK procedure will be used by the AP if the data frame is successfully received. This is done to ensure that the AP does not lose any Chapter 3 IEEE 802.11 WLAN Media Access Methods • 26 vital management frames for managing its BSS. 3.1.10 Duplicated Frame Detection and Recovery Duplicated frames can occur in an ARQ (Automatic Retransmission reQuest) protocol when a data frame is successfully received by the destination STA but the ACK is not received by the source STA. Duplicated frames can be detected through the use of an MPDU ID field within the individual frames of an MPDU, including the data and ACK frames. The MPDU ID is a 16-bit hash of the 2 octet3 Network ID field, 6 octet source address and a 1 octet sequence number maintained by the source STA. Frames that are part of the same MPDU have the same ID, and different otherwise. A destination STA rejects a frame if it receives one with an MPDU ID which matches a value of recent MPDU IDs kept in its MPDU ID cache. However, it still performs the ACK procedure even if such an event occurs. 3.2 Point Coordination Function (PCF) The Point Coordination Function (PCF) provides Contention Free services including time-bounded and asynchronous services. A STA in either an adhoc or infrastructure network has an option to become a point coordinator which generates superframes. Because contention between multiple overlapping PCFs is not addressed by the 802.11 standard, the basic restriction in PHY types is that a PCF cannot overlap with another PCF on the same channel in a manner that results in destructive interference with frame transfers. 3 One octet equals eight bits. Chapter 3 IEEE802.il WLAN Media Access Methods 27 3.2.1 Superframe Structure . The P C F uses a superframe (SF) structure consisting of a Contention Free (CF) period followed by a Contention period. This is depicted in Figure 3.7. To ensure that the C F period always precedes the Contention period, the PIFS (used by PCF) has to be shorter than DIFS (used by D C F ) in order to gain higher medium access priority for PCF. Within any SF period, the P C F is active in the C F period which is variable in length on a per SF basis, and the D C F is active in the Contention Period. Also shown in Figure 3.7 is the process of " S F stretching" where the boundary of the SF is extended across a fixed nominal period of a SF, resulting in a shortened SF period for the next SF. This process is explained in the next section. ". Superframe Superframe (fixed nominal length) Stretching Shortened Superframe period *+* *+* CF Period H PCF Contention Period DCF Variable length NAV L \ \ \ \ \ \ \ N Busy medium H (I Hunt PCF Deferral Figure 3.7 Superframe Structure for PCF. 3.2.2 Fundamental PCF Access Procedure Within a BSS, the P C F is based on a polling scheme controlled by a special S T A called the Point Coordinator (PC). Data frames sent from the P C to the associated S T A are known as CF-Down frames, and for the reverse direction, they are known as CF- Up frames. At the beginning of the superframe, i f the P C senses that the medium is free, the P C F waits for PIFS time and transmits a CF-Poll type data frame to the next S T A on the polling list if Chapter 3 IEEE 802.11 WLAN Media Access Methods 28 the C F period is non-null, or a CF-End frame i f the C F period is nul l . If the medium is sensed busy, the P C F continues to monitor the medium until it is free. A t the point the medium is sensed free, the P C F waits for PIFS time and follows the transmission procedure described above. Due to this P C F deferral, the SF is stretched, causing a variable start of the Contention Free period. This is shown in Figure 3.7. If a P C is either a transmitter or a recipient, the P C F may send CF-Down frames from the start of the C F period to the point where a CF-End frame is sent, with a SIFS gap between each poll . The destination S T A polls the CF-Down (CF-Poll type) frame with a CF-Up frame after a SIFS gap except in cases where the station has no CF-Up frame to send. In such cases, the P C sends the next CF-Down frame on its polling list after a PIFS gap from the end of its last transmis-sion. This is shown in Figure 3.8. In any event, since.STAs respond to CF-Poll immediately after Superframe (fixed nominal length) CF Burst —*>JG2|"«— Busy Medium CF-D1 G l CF-U1 CF-D2 CF-D& Contention Period G2 mm CF-Emi I G l No CF-Up I • Reset NAV Other N X X X X X X X X X X X NAV ^ X X X X X X X X X X X X N Dx = Traffic from PC to STA Ux = Traffic from STA to PC G l = SIFS G2 = PIFS Figure 3.8 An Example of PCF Operation within a Superframe when the PCF is either a Transmitter or a Receiver. a SIFS gap whenever a frame is queued, a burst of Contention Free traffic occurs. This is referred to as the Contention Free Burst (CF Burst). If a P C is neither a transmitter nor a recipient, that is, only S T A to S T A transfers occur, a Chapter 3 IEEE802.il WLAN Media Access Methods 29 source STA can transmit a data frame to any STA in the BSS after a SIFS gap upon receiving a CF-Poll frame from the PC. The same ACK procedure as defined in Section 3.1.6 can be used to acknowledge the source STA. The PCF, then, resumes CF-Down frame transmission a SIFS period after the ACK frame. However, if the data frame is not acknowledged, the PCF resumes CF-Down frame transmission a PIFS period after the end of the unacknowledged data frame. Both scenarios are shown in Figure 3.9. (a) Superframe (fixed nominal length) CF Burst G l - * jG2 r *— Busy ^^^"ITT. | Ifoff.. ^ j j ^  — t e -ACK CF-D2 . G l Contention Period CF-End \<:rv;\ I G l G l G l I Reset NAV t Other K \ \ \ \ \ \ V V V \ V NAV Dx = Traffic from PC to STA Ux = Traffic from STA to PC G l = SIFS . G2 = PIFS (b) Busy Medium 4 Reset NAV G l I ~ * i G 2 r * ~ "H02!**" 1  StS - Station-to-Station Data Frame I \Poll I I | CF-D2 | I | CF-U2\ CF-End G l G l CF Burst Contention Period Superframe (fixed nominal length) Figure 3.9 An Example of PCF Operation within a Superframe when the PCF is neither a Transmitter nor a Receiver but only Station-to-Station Transfers occur (a) with ACK, and (b) without ACK. 3.2.3 Operations of the NAV under PCF The PCF, like the DCF, uses the NAV to provide virtual CS function. Each STA, except the PC, presets its NAV to the maximum CF period at the beginning of every SE This is done for the following reasons: Chapter 3 IEEE802.il WLAN Media Access Methods 30 • To prevent stations from taking control of the medium at the beginning of the SF, thus reducing the probability of SF stretching. • To eliminate the possibility of hidden stations from sensing a DIPS gap in the C F peri-od, thus corrupting a C F transmission in progress. A t the end of a C F period, the P C transmits a CF-End frame, attempting to reset the N A V of all STAs to zero in the B S S . This is shown in Figure 3.8 and Figure 3.9. Chapter 4 Design of the Simulation Framework Simulation plays an important role in the design, analysis, and implementation of communication and signal processing systems. In a simulation environment, we use models to represent real-life situations such as how a signal propagates through a wireless medium. A model is an abstraction of a physical system, and, hence, certain assumptions are made to reduce the amount of computations involved. In this chapter, we briefly describe four categories of simula-tion techniques and the reasons why a general purpose mixed-mode simulator, Ptolemy, is chosen for this project [11, 12, 13, 14]. Then, the overall software architecture of the simulation framework is presented. This is followed by the description of the underlying channel, carrier sensing, traffic generation and station location models. Finally, the design of the IEEE 802.11 WMAC transceiver and the statistics collection modules are presented. 4.1 Types of Simulations Simulation techniques can be classified into four categories: time-driven (single- and multiple-rate), data- or stream-driven, event-driven, and a mixed mode of the previous three types [12]. Single-rate time-driven simulations rely on a global clock that increments by a fixed amount, and all the blocks in the simulation model updates their internal states once every clock tick. Multi-rate time-driven simulations are similar to single-rate ones except that the internal states of different blocks can have different updating or "sampling" rates. Time-driven simulations are widely used in areas such as signal processing and the physical layer of a communications system such as modulation, forward error correction (FEC), equalization, etc.. In a communications system, this type of simulation is usually symbol-oriented, that is, the basic data unit is a channel symbol. Data- or stream-driven simulations have the notion of a local clock within each block, 31 Chapter 4 Design of the Simulation Framework '32 and the execution of a block is triggered by the incoming data. Event-driven or discrete-event simulations relies on a global clock that increments to the time of the next event in an event queue. Due to their asynchronous nature, event-driven simulations are computationally more efficient than time-driven simulations for network and logic systems [12]. In a communications network, this type of simulation is usually frame-oriented, that is, the basic data unit is a data frame. Mixed-mode simulations, as the name suggests, contain a mixture of time-driven, data-driven, and event-driven simulations. Currently, a freely available simulation package, Ptolemy, allows mixed-mode operations. Details about this software can be found in the next section. 4.2 The Ptolemy Simulation Environment Ptolemy is a third generation software environment that supports heterogeneous system^ specification, simulation, and design [10]. It is an object-oriented framework [15], written in C++, within which diverse models of computation can coexist and interact. In addition to the usual use of hierarchy to manage complexity, Ptolemy uses hierarchy to mix heterogeneous models of computation, resulting in a unified software environment that aids in rapid prototyping of complex systems. This package is being developed at the University of California at Berkeley with support from the US government and collaboration from more than 19 major companies such as AT&T Bell Labs, BNR, Cadence, Motorola, NEC, etc. 4.2.1 Why Ptolemy is chosen The reasons for choosing Ptolemy as the simulation platform are: • Mixed-mode simulation allows the MAC layer to be simulated using an event-driven model and the PHY layer to be simulated using a data-driven model. Chapter 4 Design of the Simulation Framework 33 • The object-oriented approach simplifies the design since each component in the IEEE 802.11 WMAC can be implemented as an object. This approach separates the proto-col, the traffic generators, and the channel models and makes it easy to experiment with different models required in the simulation. • This software is free, and the complete source code is distributed with the package. This feature is very important in verifying the correctness of the simulation engine and in debugging the simulation software. • Another important feature is its availability on many computer platforms running Unix and X-Windows, including Sun OS 4.1.x, Sun Solaris 2.4, HP/UX, and Linux (on a PC!). In fact, the complete simulation software used in this project was developed on a 486 DX2-66MHz PC with 16Mbytes of memory running Linux and X-Windows Re-lease 6. 4.2.2 General Overview of Ptolemy In Ptolemy, different categories of simulations (or models of computation) are known as Domains. The Synchronous Data Flow (SDF) [16, 17], Dynamic Data Flow (DDF), and Discrete Event (DE) domains correspond to time-driven, data-driven, and event-driven simulations respec-tively. Astronomical terms are used to represent different levels in the hierarchy. A Star is the basic element that requires user coding in a mixed Ptolemy and C++ language [18]. When Stars are connected together, they form a Galaxy. Each Galaxy can have a. different computational model, and they can contain other Galaxies also. On the top level where interconnected galaxies and stars exist, we have a Universe. The Universe is a complete application or program in Ptolemy. Figure 4.1 depicts a hierarchical application in Ptolemy. The "XXX" and "YYY" in the Chapter 4 Design of the Simulation Framework 34 figure represent different types of domain such as DE and SDF. The XXXGalaxy is implemented XXXUniverse S XXXGalaxy Figure 4.1 A hierarchical application in Ptolemy with Stars, Galaxies and a Universe. as an XXX Domain Wormhole, so named because from the outside, it looks monolithic, like a star, but it looks more like a galaxy inside. Data pass between Stars in discrete units called Particles which can be packets, signals, or any abstract data types. On the user level, Ptolemy kernel and domains can be accessed via either the Ptolemy interpreter (Ptcl) or the Ptolemy interactive graphical interface (Pigi). Ptcl has a scripting language based on Tel, a command language developed at Berkeley [19] whereas Pigi uses the X-Window toolkit Tk based on an extension to Tel [20]. The software architectures of Ptcl and Pigi are described in Appendix B. 4.2.3 The Discrete Event (DE) Domain The DE domain provides a general event-driven model for simulating systems such as communication networks, queueing networks, various protocols, and high-level computer architecture. In this domain, a Particle represents an event that may trigger a change of the system state. Associated with each particle is a timestamp that is generated by the block producing the Chapter 4 Design of the Simulation Framework 35 particle. The task of distributing events to all the blocks in the DE Domain is handled by the DE scheduler. This scheduler processes all the events in chronological order, and in case of simulta-neous events, the scheduler processes the events in a first-come-fifst-serve basis. More details about the design and implementation of the DE domain can be found in Volume I, Chapter 8 of [10]. 4.3 The Software Architecture of the Simulation Framework The software architecture of the 802.11 WMAC simulator uses an object-oriented design approach. This follows the design methodology of Ptolemy, the underlying simulation engine. Each STA is made up of four main blocks that operate independently from the other STAs. Figure 4.2 shows the block diagram of a STA in the simulator. In the diagram, the black blocks, iritercon-Statistics Collection Class Traffic Generator FIFO Queue IEEE 802.111 WMAC Transceiver I I Figure 4.2 Block Diagram of an IEEE 802.11 WMAC STA in the Simulator. nected by thick and thin lines, constitute a STA, and the gray block only exists for collecting and processing statistical data. The thick lines represent data frame travelling paths, the thin line represent a control line, and the gray lines transfer statistical data from the STA to the statistics collection class1. Details on each block will be described below. Chapter 4 Design of the Simulation Framework 36 There are altogether seven new C++ base classes and five new Stars defined in the simula-tor, in addition to the five or more2 standard GNU 3 C++ classes and two DE Domain Stars used by the simulator. The seven new C++ classes can be grouped into four categories: frame manage-ment, timing management, system parameters and MAC/ PHY interfacing, and channel modelling; The five standard C++ classes can be classified into two groups: random number generators, and statistics collection. Table 4.1 summarizes the functions of each class. Table 4.1 Summary of all C++ Classes used in the 802.11 WMAC Simulator. Category Class Name Function Refs. Frame Management Frame This class manipulates all types of frames (data, RTS, CTS, ACK, etc.) and keeps track of each data frame's generation time, access time, completion time, trans-mission time, etc. §3.1, §4.9 FTDManager This class generates a unique frame identifier for each frame, and it helps to identify and detect duplicated frame transmission. This Frame ID simulates the MPDU ID. §3.1.10 Timing Management Timer This is a general purpose timer which has start, pause, continue, stop, and reset capabilities. §4.8 BOTimer This class is derived from class Timer with added capabilities to generate a random backoff time. This class also manages the contention window size and keeps track of the number of retransmissions. §3.1.3, §4.8 System Parameter and MAC7PI1Y Interfacing Node This class manipulates all essential STA information such as source address, station location models, the channel rss parameters (to be defined in Section 4.5), and capture model. §4.5-§4.8 Network This class manages system parameters such as trans-mit power, antenna gain, carrier sense threshold val-ues, etc. for the whole network. In addition, it manages a list of STAs belonging to the same network. §4.5 In C++, a class is a collection of data types and the methods (or functions) that manipulate the data in that class. 2 It is hard to account for the actual number of C++ classes used because many of these C++ classes are derived from other C++ classes. 3 GNU is a Free Software Foundation, and one of its products is a free C++ compiler and its class libraries. Chapter 4 Design of the Simulation Framework Table 4.1 (Cont'd) Summary of all C++ Classes used in the 802.11 WMAC Simulator. 37 Category Class Name 1' unction Rels. Channel Mixlclliug PathLoss This class defines a matrix of unladed rss values (to be defined in Section 4.5) between all pairs of STAs. This matrix is precomputed to reduce computational over-head during a simulation run. §4.5 Random NuiiihiM (icncialors Uniform This is a standard class that generates a uniformly dis-tributed random number between any two floating point numbers. This class is used not only in generat-ing uniformly distributed random numbers but also in generating random numbers of other distributions whose cumulative distribution functions (CDFs) are known. N/A DiscreteUniform This is a standard class that generates a uniformly dis-tributed random integer between any two integers. It is used in generating the random backoff time. § 3.1.3 Normal This is a standard class that generates a Gaussian dis-tributed random number given the mean and the vari-ance. §4.4.3 Slaiisiicx Cnlk'Clion SampleStatistic This is a standard class that accumulates statistics such as mean and variance from the data samples. §4.9 SampJeHistogram This is a standard superclass of SampleStatistic that accumulates extra statistics such as distribution of the collected samples. §4.9 Using the 12 classes above as the basis, the seven Stars (five new + two standard) form the simulation framework. These stars, together with their references throughout this chapter, are summarized in Table 4.2 below. Table 4.2 Summary of all DE Domain Stars used in the 802.11 WMAC Simulator. Star Name Function References DEFramo This Star is part of the traffic generator block in Figure 4.2. Its main purpose is to generate frames using the Frame class and distribute them to a destination using a destination dis-tribution model. Whenever the DEPoisson Star fires a Parti-cle, it triggers this block to generate a new data frame. §4 .6 DEMediuni This Star can be thought of as the antenna in Figure 4.2. It implements a wireless medium to be shared by all STAs. It serves as a "wrapper" for the Network class such that it "connects" all STAs to a single channel, and provides an interface to enter system parameters for the Network class. N/A Chapter 4 Design of the Simulation Framework 38 Table 4.2 (Cont'd) Summary of all DE Domain Stars used in the 802.11 WMAC Simulator. Star Name Function References DETxRxCSMACA This Star is the 802.11 WMAC transceiver in Figure 4.2. Details about this star can be found in Section 4.8. §4.8 DECollectStal This Star is part of the Statistics Collection Class in Figure 4.2. It accumulates statistics from the FIFO queue. §4.9 DEStai This Star is part of the Statistics Collection Class in Figure 4.2. It accumulates statistics such as throughput, queueing delay, and transfer delay for a simulation run. §4.9 DEFIFOQueue As part of Ptolemy's DE Domain standard library, this Star queues up data if the "dequeue rate" is less than the input rate, and the first entry of data is dequeued whenever it is triggered to so do. [10] DLToi.sMin This Star is part of the traffic generator block in Figure 4.2. As part of Ptolemy's DE Domain standard library, this star fires a Particle according to the Poisson process where the inter-arrival time between each firing is exponentially dis-tributed. [10], § 4.9 4.4 The Channel Models In this section, we describe the various channel models used in our simulation. Because mobile radio systems tend to be interference limited (due to sharing of the same channel) rather than noise limited, the thermal and man-made noise effects are often insignificant as compared to the signal levels of cochannel users [7, 21, 22, 23]. Thus, understanding the radio propagation mechanisms in wireless systems not only aids in predicting the coverage to a particular mobile user, but it also helps in predicting the interfering signals experienced by the user from other RF sources. 4.4.1 Indoor Propagation Model Radio propagation models are complex and diverse, and they can generally be character-ized by three basic propagation mechanisms: reflection, diffraction, and scattering [21]. Reflec-tion occurs when a propagating electromagnetic (EM) wave hits an object (of nonzero reflectivity Chapter 4 Design of the Simulation Framework 39 value) with dimensions much larger than the wavelength of the travelling EM wave. Reflections may interfere constructively or destructively depending on the delay of the merged waves. Diffraction occurs when the radio path between the transmitter and the receiver is obstructed by an impenetrable object but secondary waves are formed behind the obstructing object. This phenomenon is based on Huygen's principle and is often referred to as the shadowing effect since a diffracted wave can reach a receiver even when it is shadowed by an obstruction. Scattering occurs when the propagating EM wave hits an object with dimensions on the order of the wavelength of the EM wave. It follows the same principle as diffraction, but it is proven to be the most difficult of the three propagation mechanisms to predict [21]. Indoor propagation refers to EM waves travelling within a building. There are three main propagation events that may degrade the performance of a wireless network: multipath delay spread, path loss due to RF attenuation and shadowing, and temporal fading. However, the effect of multipath delay spread is not included in our simulation model since the rms delay spreads are small, on the order of 30 to 60ns [21]. Moreover, spread spectrum techniques tend to minimize this time dispersion effect because we can view the resolvable multipath components resulting from time-dispersive propagation through a channel as self-interference [24]. This type of interference may be suppressed by introducing a pseudorandom pattern in the transmitted signal such as in the DSSS signalling technique. With both the effect of path loss and fading, the received signal strength in milli-Watt (mW) from any transmission is computed according to: (4.1) a • where Chapter 4 Design of the Simulation Framework 40 PR - received signal strength (mW), PT = transmitter output power (mW), GT = transmitter antenna gain ratio, GR = receiver antenna gain ratio, Lp(d) = unfaded path loss ratio as a function of distance, d, Ls (as) = effect of shadowing as a function of the standard deviation, as, a = effect of short-term fading. The PT, GT, and GR parameters are specified by the user, and they remain fixed for the duration of a simulation execution, assuming no dynamic power control is implemented. The parameters Lp(d) , Ls (<5S) , and a are described in the following sections. 4.4.2 Path Loss Model Path loss is a measure of the average RF attenuation inside a building, and it is measured by averaging the received signal over several wavelengths at the receiver. This is a useful quantity since received power is usually measured as a local spatial average rather than an instantaneous value [21]. A general path loss model has been constructed through measurements, using p as a parameter to denote the power law relationship between the distance4, J, and the received power [21, 25, 26, 27]. If P is two, we have free space propagation, and this is the usual case when d is small. As suggested by [23], we can divide d into n "bands", and each band has a different P since p is different from two when d is large [28, 29, 30]. Hence, the expression for Lp (d) is: 4 The distance, d, refers to the amount of separation between the transmitter and the receiver. Chapter 4 Design of the Simulation Framework 41 Lp(d) f *\l And X V J i V * J \ D \ J / = 2v-»-iy / • * \ d l dn-l) , n = 1 , n = 2 , n > 2 (4.2) where d n-l , n = 1 ^d{ + d* ,n>2 (4.3) «= l and A, = wavelength at the average signal frequency _ Speed of Light (4.4) Carrier Frequency * In (4.3), di is the radial distance at the edge of the / th band, d is the residual distance in the n th band, and the pairs {d{, p.) are estimated from field measurements. 4.4.3 Log-Normal Shadowing Model As explained in Section 4.4, shadowing effects result from diffraction of the travelling radio wave. These effects are usually found to be logndrmally distributed [31, 32]. To simplify the expressions, we convert Ls (<5S) into its decibel (dB) equivalent, Ls d B (os) , using Ls,dB^s) = 10 • log (L s(o 5)) (4.5) Chapter 4 Design of the Simulation Framework 42 Now, Ls d B (G s) is a zero mean Gaussian random variable with standard deviation Gs measured in decibels (dB), and its probability density function (pdf) is given by: p(x) = 1 (4.6) • e x P ~2 c7s 4.4.4 Short-term Fading Model Inside a building, propagation geometry may be classified as line of sight (LOS) where there is a direct radio path between the transmitter and receiver or obstructed (OBS) where the transmitter and the receiver are visible to each other only through reflection, diffraction, or scattering. In general, Ricean-distributed envelope fading occurs when there is LOS, and Rayleigh-distributed envelope fading occurs when the propagation is OBS [21, 31]. Since there is no LOS in the Rayleigh fading5 situation, this type of fading is more severe than Ricean fading in most situations. Since Rayleigh fading is easier to handle computationally, we will only consider this type of fading in our simulations. When the signal envelope is Rayleigh distributed, its instantaneous power is exponentially distributed. Hence, the a in (4.1) is given by: where X is uniformly distributed over (0, 1), and "In" is the natural logarithm function. Derivation of (4.7) from the Rayleigh fading model is shown in Appendix A. (4.7) From now on, when we refer to Rayleigh fading, we mean Rayleigh-distributed envelope fading. Chapter 4 Design of the Simulation Framework ' . 43 4.5 Carrier Sensing and Capture Models Carrier sensing refers to the detection of signal power in a wireless medium above a certain threshold value. Capture, on the other hand, refers to the process of selecting or "captur-ing" a signal among others from different sources when all these signals are transmitted simulta-neously over a single channel. Hence, both models are very important in the simulator because the CSMA/CA mechanism relies heavily on them. Although the two models refer to two different processes, they share one common characteristic; they both require the receiving circuit of a STA to monitor the amount of signal .power from the medium. Hence, the channel monitoring model is first described. Since our simulation is frame-oriented as opposed to symbol-oriented, there are no matched filters or correlation detectors and no symbol synchronization circuits in the simulation. Instead, these circuits are replaced by the two received signal strength (rss) indicators (variables), desired received signal strength (drss), and total received signal strength (trss). The rss between any two STAs separated by a distance, d, is given by (4.1). Since all except LS (<JS) and a in P G • G (4.1) are fixed (assuming the STAs are not mobile), the unfaded rss values, 7 J R , are pre-Lp\a) computed between all pairs of STAs at the beginning of the simulation, and a matrix of rss values is formed. Each STA has its own copy of drss and trss, just as each STA independently monitors the channel. Moreover, for computational efficiency, the channel is not monitored at all times by all STAs. Instead, all non-transmitting STAs, within detection range, update their drss and trss values whenever a STA starts or finishes transmitting a frame. This will be explained in Section 4.5.1. Chapter 4 Design of the Simulation Framework 44 A STA only updates its drss if a frame, called a "desired" frame, is destined for it.. This includes all frames such as DATA and ACK frames, control frames such as RTS and CTS frames, and all broadcast frames. All other frames are considered to be interference by a STA. When there is more than one frame transmitting to a STA simultaneously, the receiving STA uses the capture model, to be described in Section 4.5.2, to resolve collisions. In addition to updating its drss, a STA also updates its trss by summing up all rss contri-butions from all STAs currently transmitting any frames. Since no receivers in the real world is perfect, there is usually a certain noise floor, r\F, associated with a receiver. Hence, the trss is calculated as follows: 4.5.1 Carrier Sensing Model There are two parts to the carrier sensing model, and they are controlled by two RF parameters, carrier sensing threshold (est), and receiver sensitivity (rxs). The est controls the rss threshold above which a transmitter declares that the channel is busy, that is, a carrier is detected when trss > est. The rxs controls the rss threshold above which a receiver detects a signal, that is, a signal is detected when rss > rxs. If this rxs is expressed in dBm, its value is given by: (The minimum SIR threshold value is defined in the next section.) Hence, a receiver only updates trss and drss when rss > rxs. Throughout all simulations, est and rxs are assumed to be equal in value unless otherwise specified. (4.8) rxs (dBm) = receiver noise floor (dBm) + mininum SIR threshold (dB). (4.9) Chapter 4 Design of the Simulation Framework 45 4.5.2 Capture Model When two or more frames transmit simultaneously, all frames are assumed to be lost if capture effect is not used. However, in a wireless network, since the rss of all frames are different due to the various propagation effects, the receiver may be able to decode a frame with a higher rss. This model of selecting a frame is known as the capture effect. Because all STAs are not guaranteed to be time synchronized at the point where a channel is sensed idle, there are two situations which the capture model has to deal with: • If a STA, S*, is not already receiving any frames and two or more STAs start to trans-mit frames simultaneously to S , S only considers the one with the largest rss as the "desired" frame, and updates the drss to the rss associated with that frame. All the other frames are considered interference, and their rss values will be added to the S 's trss. This is a usual assumption in the capture model. • If S* is already receiving a frame and another STA starts to transmit another frame to S*, S* rejects the frame even if the rss value associated with the new frame is higher than the current drss; it only updates its trss to reflect that another frame is interfering with the frame currently being received. This assumption says that when a STA's re-ceiving circuit locks in on a particular "desired" frame; it will continue to receive that frame to completion even though it suffers heavy interference in the middle of its re-ception. Using drss and trss, we can compute an interference component, given by trss - drss. Hence, the Signal-to-Interference Ratio (SIR) at any instant is calculated asfollows: Chapter 4 Design of the Simulation Framework 46 SIR = — d I I l — (4.10) trss - drss This SIR is recomputed at the receiving S T A whenever any S T A starts or finishes transmission, and i f it goes below a minimum SIR threshold value, even for a small period of time, the frame is flagged as not correctly received. This is a crude model of the capture effect, and it assumes that the underlying PHWIayer does not have any forward error correction capabilities. 4.6 The Traffic Generation Models There are three major parts in the traffic generation model: the frame generation distribu-tion, the frame destination distribution, and the frame size distribution. Each of these aspects are described in the following three sections. 4.6.1 Frame Generation Distribution Indiv idual data frames are generated according to a Po isson random process wi th exponentially distributed interframe arrival times. Each STA has its own Poisson traffic generator that are statistically independent of each other. One advantage of this approach is that each S T A can have a different mean arrival time; thus, unbalanced inbound and outbound traffic simulations are possible. The mean interframe arr ival time is computed from the user-specified offered load measured in kilobytes per second (kbyte/s). This offered load has several characteristics listed below: • The offered load does not include retransmitted data frames. Chapter 4 Design of the Simulation Framework 47 • The offered load includes those data frames that are generated but never get transmit-ted due to queue overflow in a STA. In the simulator, there is a FIFO queue sitting be-tween the data generator and the MAC layer, and the size of the queue is user-specified. • This offered load includes the data frame's MAC overhead but not the overhead from the handshaking (control) frames such as RTS, CTS, and ACK frames. Thus, when control frames are used, this offered load underestimates the actual channel traffic. • When the offered load is greater than the data rate of the channel, many data frames are rejected due to queue overflow. In Ptolemy, there is a Poisson traffic generator library which allows the user to specify the mean inter-frame arrival time, T, per Particle6. To convert this offered load to that parameter, the following formula is used: The reason for the scaling factor 106 is that our simulator has an intrinsic time resolution of one microsecond so every clock tick in the simulation corresponds to one microsecond, and the result-ing T is in microseconds per frame (|is/frame). 4.6.2 Frame Destination Distribution After each data frame is generated, the associated STA's address is assigned as the source address, whereas the destination STA address is chosen uniformly among all the other reachable T = 106 (\is/s) • Data frame size + MAC header (kbyte) 1 frame • offered load (kbyte/s) (4.11) 6 In our case, a Particle in Ptolemy is a data frame. Chapter 4 Design of the Simulation Framework 48 ^ STAs in a BSS. A STA, S , is said to be reachable if the unfaded (no shadowing or fading) rss at S* from the source STA exceeds rxs value defined in Section 4.5.1. With this model, all transmis-sions are assumed to be single-hopped. 4.6.3 Frame Size Distribution The data frame size, excluding the MAC header, is chosen according to a user-specified probability distribution which is controlled by two parameters, DataLenDist and DataLen. For example, if DataLenDist is 1 and DataLen is 1000, frame size of 1000 bytes are generated all the time; If DataLenDist is (0.4, 0.6) and DataLen is (512, 64), frame sizes of 512 and 64 bytes are generated, respectively, 40% and 60% of the time. To achieve this 4:6 ratio, a uniform random number generator is used to generate a number between 0 and 1, and when this number is below 0.4, the size 512 is chosen; otherwise, the size 64 is chosen. This allows flexibility in exercising the protocol using variable size data frames. 4.7 Station Location Models The location of a STA is specified by its coordinates in a three dimensional Cartesian coordinate system. Two models are used in generating the locations of STAs. The first one basically puts a grid on a rectangular surface, and STAs are put at the vertices of the rectangles. Figure 4.3 shows two examples when 16 stations are arranged in 4 x 4 and 2x8 grids, and each adjacent STA is separated by 50m. This is the most commonly-used model since it is suitable for both adhoc and infrastructure network simulations. The second model puts STAs uniformly around a base station in a circle of radius R. This model is more suitable in the case where there is an AP in the center. Chapter 4 Design of the Simulation Framework 49 1 —H50mh— -I- o o o o o = STA i —H50mH— - L 0 o O O O O O O 50m 50m •y O O O O 0 0 o o - ^ - O O O O O O O O o o o o (a) •(b) Figure 4.3 Two examples of arranging 16 stations in (a) a 4 x 4 grid, (b) a 2 x 8 grid.. 4.8 Design of the IEEE 802.11 WMAC Transceiver This section describes the design of the DETxRxCSMACA Star which is the core of our simulator. This Star implements the complete 802.11 DCF specification which is aimed at asynchronous contention services. An obvious way to implement the procedures described in Section 3.1 is to use a Finite State Machine (FSM) which defines the rules for a transition to occur from one state to the next one. This WMAC FSM is described in the next section. One of the assumptions in implementing an 802.11 STA is that a STA cannot be transmit-ting and receiving at the same time since there is only one antenna7. Due to this assumption, we can integrate both the transmitter and the receiver into one block, called a transceiver, and the reasons for doing this are: • It simplifies the design of the FSM since only one FSM is needed to control both func-tions. (If the transmitter and the receiver were implemented separately, we need a FSM for each function, and there is the problem of synchronizing both FSMs.) 7 This type of transmission is usually referred to as half-duplex. Chapter 4 Design of the Simulation Framework 50 •. It reduces the overhead in passing parameters between the two functions. Due to the complexity of the protocol, this Star is designed with built-in debugging and tracing capabilities. Intermediate state information can be printed out if the simulation program is compiled with the _DEBUG_ flag, and the complete activities, including state transitions and frame transmission, of any STA can be traced. This aids in rapid pinpointing of any errors occurring in the simulation. Another feature in this Star is that it is a very flexible design due to, its object-oriented approach. Adding new capabilities such as power saving mechanisms or the PCF mechanism are relatively easy (although it may still be quite time-consuming due to the complexity of the mechanisms.) This Star supports six modes of operations including: • . Pure ALOHA 8 type of data transmission without ACK • Pure ALOHA type of data transmission with ACK • CSMA/CA - Data only (C protocol) • CSMA/CA - Data + ACK (C+A protocol) • CSMA/CA - Data + RTS/CTS (C+R/C protocol) • CSMA/CA - Data + RTS/CTS + ACK (C+R/C+A protocol) The pure ALOHA modes are only,used to.verify the correctness of the simulator under heavy frame collision conditions. Hence, their performance results are not presented in this thesis. Under the pure ALOHA mode, carrier sensing is not performed before any transmissions. Chapter 4 Design of the Simulation Framework 51 The two CSMA/CA modes with ACK can operate concurrently in a simulation run. The parame-ter, UseRTSCTS, is used to control this operation. More details can be found in Section 4.8.2. 4.8.1 WMAC Finite State Machine (WMACFSM) There are 12 states in the WMACFSM. Although there is only one FSM in the design, it is clearer to show the FSM in two parts: one for the reception of frames and the other for the transmission of a data frame. The two FSMs are shown in Figure 4.4 and Figure 4.5 respectively. Figure 4.4 The 802.11 WMACFSM Diagram for the Transmission of a Data Frame. The states and their transitions are described in Table 4.3. In Figure 4.4, not all transitions into the mReceive state are shown. The missing transitions are shown in Figure 4.5. Chapter 4 Design of the Simulation Framework -— 1^ mRssWaitLow — * 1 mReceive 1 — * ^ S 1 F S ^ H mTransmit 1 H mNoNode J"*"" Figure 4.5 The 802.11 WMACFSM Diagram for the Reception of any frames. Table 4.3 Summary of All States and their Transitions in the 802.11 WMACFSM. State Name Next State Description of IVansition mNoNode mStandby When a STA is idle, that is, no frames are queued up, it is in mNoNode state. When a new data frame is dequeued, it will go into mStandby state. mStandby mRssWaitLow This transition occurs when the STA starts to sense the channel, and it is busy. mDIFSWait This transition occurs when the STA starts to sense the channel, and it is free. It will, then, stay in mDIFSWait for DIFS interval. mDlFSWait mRssWaitLow This transition occurs when the channel is free for less than DIFS interval. niTransmit This transition occurs when the channel is free for DIFS interval. A data or an RTS frame is transmitted depending on the simulator's mode of operation. mRssWaitLow mRssWaitLow This transition occurs when the STA senses the channel again, and it is busy. mDefer This transition occurs when the STA senses the channel again, and it is free. It will, then, stay in mDefer for DIFS interval. Chapter 4 Design of the Simulation Framework Table 4.3 (Cont'd) Summary of All States and their Transitions in the 802.11 WMACFSM. State Name Next State Description of Transition mDel'er mRTSBackOff/ mDatBackOff This transition occurs when the channel is free for DIFS interval. The STA will, then, use the backoff procedure as specified in Section 3.1.5. It goes into mRTSBackOff state if the previous RTS/CTS handshaking failed; otherwise, it goes into mDatBackOff state. mRTSBackOff/ mDatBackOff mRssWaitLow This transition occurs when during the backoff period, a STA senses the channel is busy but the frame is not destined for itself, and the backoff timer is paused. mTransmit This transition occurs when the backoff timer expires. A data or an RTS frame is transmitted depending on the simu-lator's mode of operation. mTransmit mNoNode This transition occurs after a STA has just finished transfer-ring a data frame in the "no ACK" mode, and it has no new data frame in the queue. mRssWaitLow This transition occurs after a STA has just finished transfer-ring a data frame in the "no ACK" mode, and it has a new data frame in the queue. This conforms to the basic access protocol defined in Section 3.1.4. mCTSWait This transition occurs after a STA has just finished transfer-ring an RTS frame. mACKWait This transition occurs after a STA has just finished transfer-ring a data frame and is waiting for an ACK frame. mCTSWait mRssWaitLow This transition occurs when a CTS is not received in time. mReceive This transition occurs when a STA is requested to receive a "desired" frame. This frame can be of any type. mSIFSWait mTransmit This transition occurs when a STA has waited for SIFS interval. According to the specification, no carrier sensing is done at the end of this interval. mACKWait mRssWaitLow This transition occurs when an ACK is not received in time. mReceive This transition occurs when a STA is requested to receive a "desired" frame. This frame can be of any type. Chapter 4 Design of the Simulation Framework 54 Table 4.3 (Cont'd) Summary of All States and their Transitions in the 802.11 WMACFSM. State Name Description of Transition mRssWaitLow This transition occurs: (1) after a STA has finished receiving an ACK frame, or (2) after a non-intended STA has finished receiving an RTS or a CTS frame. In both cases, the STA has some pending data frames to be mReceive mNoNode transmitted. This transition occurs similar to the above case, except that the STA has no pending data frames to be transmitted. mSIFSWait This transition occurs after an intended STA has just suc-cessfully received an RTS, a CTS, or a data frame. All non-intended STAs will set their NAV upon receiving an RTS or a CTS frame. Any Suite mReceive Any of the above states, except mTransmit, can transit into the mReceive state unconditionally. When a STA is in mTransmit state, it is transmitting a frame, and our assump-tion is that trarimission and reception that cannot occur at the same time. Hence* it cannot transit into mReceive state. This transition occurs when a STA is requested to receive a "desired" frame. This frame can be of any type. 4.8.2 Simulation Parameters To make the simulator as flexible as possible, many parameters can be changed by the user during run-time without re-compiling the simulation program. The simulation parameters can be divided into two groups: system parameters and STA parameters. System parameters are global to all stations, that is, a station cannot change their values internally. STA parameters are local to each station, and their values can be different from one station to the next one. The system parameters are summarized in Table 4.4, and the STA parameters are summarized in Table 4.5. Table 4.4 List of System Parameters for the 802.11 WMAC Simulator Parameter Description Default Value DIFS Distributed Inter-frame Spacing interval (in us). 100 us SIFS Short Inter-frame Spacing interval (in us). 20 us Slot'Iimc SlotTime as defined in § 3.1.3 (in us). 50 ^ s Chapter 4 Design of the Simulation Framework Table 4.4 (Cont'd) List of System Parameters for the 802.11 WMAC Simulator 55 Parameter Description Default Value Frequency Carrier Frequency (in Hz). 2.4e9 Hz (CoDistribulion, Coefficient) Path Loss factor pairs (dt p.) as defined in § 4.4.2. {(8.5, 2), (le6, 3.6)} BitRatc Data transmission rate (in Mbil/s). 2Mbit/s MinfSThrcshohlDB Minimum Carrier Sensing Threshold (in dBm). This is the paremeter est as described in § 4.5.1. -85 dBm M inNoi scFloorD B Minimum Receiver Noise Floor (in dBm). This is n F in § 4.5. -95 dBm MinSJRDB Minimum Signal-to-Interference ratio (in dB). The sum of this parameter and MinNoiseFloorDB is rxs as described in § 4.5.1. 10 dB RTSLen RTS Frame Length (in bytes). 24 bytes CTSLcn CTS Frame Length (in bytes). 18 bytes ACKLen ACK Frame Length (in bytes). 18 bytes Sy.sOllerl.oail Offered load of the system (in kbyte/s) 100 kbytes/s Table 4.5 List of Station Parameters for the 802.11 WMAC Simulator Parameter Description Default Value Source Source Address. Must be greater than 0. 1 Destination Destination address. -1 = broadcast, -2 = uniformly distributed reachable stations. -2 Coordinate Location of the station in Cartesian (x, y, z) or uni-formly distributed around radius R. (in meters) (0, 0, 0) QueueSize Size of the FIFO Queue (in frames). -1 = "infinite" 10 frames OfferLoad Offered load of a station (in kbyte/s). SysOfferLoad/ (# of STAs) TransmitPower Transmitter power (in dBm). Note: 100mW = 20 dBm 20 dBm TxAntennaGain Transmitter antenna gain (in dB). OdB RxAntcnnaGain Receiver antenna gain (in dB). OdB (DataLenDist, DataLenProb) Data Length Distribution pairs (length, probability). The probabilities must sum up to one. (1000,1) DataLen Total data length including header. 34 + DataLenDist Chapter 4 Design of the Simulation Framework 56 Table 4.5 (Cont'd) List of Station Parameters for the 802.11 WMAC Simulator Parameter Description Default Value ContentionWindow Minimum and maximum size of. a Contention Win-dow + Maximum number of retries (CWmin, CWmax, # retries) (32,1024,16) UscCSMA_CA Use CSMA/CA access procedure? Yes UseRTSCTS Use RTS/CTS handshaking: 0 = no RTS/CTS, 1 = always use RTS/CTS, > 1 = use RTS/CTS if data length is greater than this threshold value. 1 UseAck Use ACK? Yes Trace Turn on state transition tracing? No Some of the values used are specified in [7, 22, 23]. 4.9 The Statistics Collection Class The statistics collection class is implemented by the DEStat and DECollectStat Stars which, in turn, depend on the two C++ classes, SampleStatistics and SampleHistogram as defined in Section 4.3. As the name suggests, this class is responsible for collecting and processing all statistics and results required by this thesis. The following section lists out the types of statistics collected and processed by the Stars. There is an additional functionality of this class - to signal the end of a simulation run. The last section describes its motivation and the simulation stopping rules. 4.9.1 Types of Accumulated Statistics There are 16 types of statistics collected and 4 types of distributions processed during a simulation run. These statistics provide many insights into the system for performance improve-ments and, at the same time, provide general results to compare the throughput and delay perfor-mances of different modes of operation in the 802.11. WMAC protocol. All collected and Chapter 4 Design of the Simulation Framework 57 processed statistics are shown in Table 4.6. The formulae for obtaining the various results such as Table 4.6 Summary of all Statistics Collected and Processed by the Simulator Statistics Details • Number of RTS frames transmitted • Number of RTS frames received • Number of CTS frames transmitted • Number of CTS frames received • Number of data frames transmitted • Number of data frames received •a cn • Number of ACK frames transmitted • Number of ACK frames received d Slat: • Number of data frames dequeued • Number of data frames duplicated d Slat: • Number of data frames generated ~j • Number of RTS frames (for setting NAV) received • Number of CTS frames (for setting NAV) received WMSi • Total number of MPDU transmitted (including retransmission) • Number of data frames rejected due to queue overflow • Number of data frames rejected due to exceeding the maximum number of trials Processed • Distribution of the Queue including mean and variance • Distribution of Throughput including mean and variance • Distribution of Transfer Delay including mean and variance • Distribution of Queue-Waiting Delay including mean and variance the throughput performance can be found in Section 5.1. 4.9.2 The Simulation Stopping Rules In a simulation, there are usually criteria to stop a running simulation. The most commonly techniques used include stopping after a certain number of received frames or stopping after a certain amount of simulation time has elapsed. Since all these stopping rules require some sort of collected statistics from a simulation run, it is advantageous to put the simulation stopping criteria in the Statistics Collection Class. The choice of the threshold values to stop a simulation run can be sometimes tricky because it depends on how fast the results converge to a certain value. In this 802.11 WMAC simulator, a simulation run is stopped when the following two criteria are all met: • The number of successfully received data frames must be at least 1000. Chapter 4 Design of the Simulation Framework 58 • The mean, |u, of the throughput distribution listed in Table 4.6 must be within a (1 - a) 100% confidence interval given by *Jn >Jn where s is the sample standard deviation, x is the sample mean, n is the total number of samples, and ta/2 is the t-value from the Student t-distribution with v = n - 1 degrees of freedom. In our simulations, we have chosen a to be 0.05 or the confidence interval is 95%. The allowable deviation for the throughput statistics must be within 0.1. In addition, if the above two rules are not met within 100 seconds simulation time, the simulation is also stopped. This rule makes sure that a simulation does not run forever if the results converge very slowly. Chapter 5 Discussion of the Simulation Results Given all the simulation assumptions and models defined in Chapter 4, the performance measurement methods used are described and presented in the next section. In any simulation, there is always the danger of using a set of parameters that favours or disfavours a certain scheme. Hence, the sensitivity of system performance to changes in parameter values is studied. Sections 5.2 to 5.6 address five major types of parameters that may affect the performance of the 802.11 WMAC protocol. 5.1 Measurement Techniques This section describes how some of the collected and processed statistics in Table 4.6 are obtained and calculated. Before delving into the details, the point at which statistics are gathered must be clearly defined. Figure 5.1 is a "better view" (or abstraction) of the block diagram in Figure 4.2 in terms of showing measurements. In the diagram, the light grey box represents the complete system; Points A and D are the inputs and outputs of the system respectively. The medium grey box includes only the WMAC protocol, and point B can only see the actual number Hll-'Oyucik-© 1 © Figure 5.1 Description of Various Levels of Result Measurements. 59 Chapter 5 Discussion of the Simulation Results 60 of unique data blocks1 that can make it into the WMAC protocol. The dark grey box includes all the data frames coming out of the WMAC protocol, and point C can see the total number of data frames, including any retransmitted data frames, that are transmitted over the wireless medium. Data blocks arrive at the system with an arrival rate2 X. When a new data block, B*, enters the system via point A, B* is either immediately accepted or rejected. When the queue is full, new arriving blocks cannot enter the system, and are blocked. Hence, the blocking probability, PB, is defined as: P B = Pr {An incoming data block is rejected due to queue full} _ Number of data blocks rejected • (5.1) Total number of data blocks generated When a data frame, F , is dequeued and enters the WMAC protocol via point B, F is accepted. Hence, we can define another quantity called the acceptance rate, PA, as: PA = Pr {A data block is dequeued and enters the WMAC protocol} . _ Number of data blocks dequeued (5.2) Total number of blocks generated One observation we can make about PA and PB is that if the queue size is zero, that is, if all data blocks in the queue are eventually dequeued, PA = \-PB. Since the queue size used in most of the simulations are relatively small, the curves for PA and 1 - PB are quite close. Hence, the curves for PB are not shown in this thesis. 1 Here, we use a data block to represent the actual data and a data frame to represent the data and its MAC header. 2 In this thesis, the terms "arrival rate" and "offered load" are used interchangeably, and the meaning of "offered load" is defined in § 4.6.1. Chapter 5 Discussion of the Simulation Results 61 Once a data block is dequeued, the WMAC layer adds a MAC header and attempts to transmit the data frame, F*, via point C. F* has one of the following outcomes: i) It completes the protocol, and the received unique data block exits via point D. In case of using the ARQ protocol, F must not only be received correctly by the desti-nation STA but its ACK frame must also be received correctly by the source STA. The destination STA knows that an ACK frame is successfully received if the next frame received has a different MPDU ID. If the next frame has the same MPDU ID as the previous one, that frame is not counted as a received frame, but the ACK pro-cedure, as described in Section 3.1.6, is followed. ii) It may be rejected because the maximum retransmission count is exceeded. iii) It may be lost because the frame cannot be captured. In case of using the ARQ proto-col, the frame will be retransmitted. There are three types of statistics that can be used to measure the performance depending on whether point A, B, or C is used as the reference transmission point. If point C is used, we can define the ARQ's success rate or efficiency, Ps, as: Since the denominator in (5.3) counts the total number of transmitted frames, it includes those frames that are retransmitted. It turns out from the simulation results that this statistic does not change much when our set of simulation parameters is varied and hence, the curves are not shown in this thesis. Number of unique data blocks received Total number of frames transmitted (5.3) If point B is used as the reference transmission point, we can define another quantity Chapter 5 Discussion of the Simulation Results .62 called the completion rate, PQ, given by: Number of unique data blocks received Total number of blocks dequeued (5.4) The completion rate for an ARQ system is always higher than that for a non-ARQ system since the responsibility of an ARQ system is to try its best to deliver a data block to its destination. However, this can reduce the acceptance rate (hence increase the blocking probability) since the rate of dequeueing a data block is being slowed down if the WMAC protocol needs to retransmit a frame several times. The product of the acceptance rate, P A , the completion rate, P C , and the system offered load3, is the system's throughput, T|, Le.: Delay statistics are another set of important system performance measures. Two types are measured by the simulator: queueing delay and transfer delay. Queueing delay measures the waiting time of a data block from the time it enters the queue to the time it exits the queue. Transfer delay measures the amount of time a data block takes from the time it is dequeued to the time it is successfully received. If an ACK is used, the transfer delay measures the delay up to the time an ACK is successfully received by the source STA. Both types of delay statistics are only computed for those data blocks that can make it into the WMAC protocol and complete the entire protocol cycle. C Number of unique data blocks received • Total number of blocks generated (5.5) 3 The system offered load, Xs, is the sum of all offered loads, from each STA,-. Chapter 5 Discussion of the Simulation Results 63 In summary, the set of performance measurement statistics that this thesis focuses on is acceptance rate, completion rate, system throughput, queueing delay, and transfer delay. Their mean values and distributions for various simulation test cases will be shown and discussed where appropriate. Also, the simulation parameter values used are the default values shown in Table 4.4 and Table 4.5 unless otherwise specified. Several conventions are used to display the simulation results. The "C" protocol is the generic CSMA/CA'scheme and is mainly used for broadcasting in the standard. Although only point-to-point transmissions are simulated, the results can be interpreted as the average perfor-mance per station for the broadcasting case due to the broadcasting nature of the WMAC and the scheme is a type of CSMA. Its performance is shown using a dotted (" ") line. The "C+R/ C" protocol uses the CSMA/CA scheme with the RTS and CTS exchange procedure. Its perfor-mance is shown using a dashed ("- ") line. The "C+A" protocol uses the ACK procedure in addition to the basic CSMA/CA access scheme. Its performance is shown using a solid (" ") line. Finally, the "C+R/C+A" protocol uses both the RTS/CTS exchange procedure and the ACK procedure. Its performance is shown using a dash-dotted (" ") line. Different symbols, such as "o", "•", "• "• ", and " *", are also used to denote different sets of parame-ters used in a simulation. 5.2 Effects of Different Geometries and Network Topology In this section, the performance of the WMAC protocol as a function of the number of stations and their locations is studied. Moreover, the effects of different network arrangements and co-channel interference between two adjacent BSSs on the system's performance are studied. In all the cases to be discussed in this section, the STAs are assumed to be distributed regularly on Chapter 5 Discussion of the Simulation Results 64 rectangular grids as described in Section 4.7. Before delving into the details, we need to devise a quantity to measure how severe the "hidden terminal problem" (HTP) is since it is a potential problem as discussed in Section 3.1.1. Another potential problem is the connectivity of a BSS. Let P/j be a "rough estimation" of the average percent of stations that are hidden to a transmitting station among the set of STAs that are contending for the same receiving STA. It is a "rough estimation" because Ph depends on the receiver sensitivity, the distance between the stations, and the propagation effects, but it is estimated under "no fading" conditions. Detailed procedures on how to estimate Pn can be found in Appendix C. The connectivity of a BSS is the average number of STAs reachable from any STA under "no fading" conditions4. It is clear that as the connectivity increases, the contention problem becomes more severe since more STAs are trying to access a single receiving STA. This is shown in the simulation results later on in this chapter. In the following sections, the system offered load is varied from 50 to 500 kbytes/s in steps of 50 kbytes/s for each geometry considered unless otherwise specified. Each STA's offered load is divided equally from the system offered load. The data block size is fixed at 1000 bytes. 5.2.1 Effects of Increasing the Number of STAs in a Large BSA In this section, the BSA is fixed in a 150m x 150m square. This is quite a large area that is probably not practical under the set of simulation parameters which we have chosen5, but its main 4 Under "no fading" conditions, we can find the number of STAs that are reachable from a STA, S*. Let this number be C,-. The connectivity is the sum of all Q from all STAs divided by the total number of STAs. 5 With a receiver sensitivity of -85dBm and a transmitting power of 20dBm, the maximum distance a signal can travel is 165m under "no fading" conditions and our signal attentuation parameters. Chapter 5 Discussion of the Simulation Results 65 purpose is to examine the performance of the CSMA/CA protocol when the HTP is severe. The various geometric parameters are shown in Table 5.1 below. Figure 5.2 and Figure 5.3 show the Table 5.1 Geometric Parameters for Different Number of STAs in a Large BSA. Number of Stations Network Arrangement Adjacent Distance l l l l l l l Connectivity <> 3x3 grid 75m 29.1% 5.8 stations 16 4x4 grid 50m 8.1% 13.8 stations 3fi 6x6 grid 30m 4.3% 33.3 stations various performance of the three cases. From the figures, we can observe the following character-istics as the number of STAs, N, increases: (i) The overall throughput is higher for the "C" protocol. (ii) The throughput improvement of the "C+R/C+A" over the "C+A" protocol increases. For instance, an improvement of approximately 10% and 57% can be observed in the 9 STAs and 36 STAs cases respectively. (iii) The acceptance rate is higher for the "C", "C+R/C", and "C+R/C+A" protocols but slightly lower for the "C+A" protocol. (iv) The completion rate is lower for the "C+R/C", "C+A", and "C+R/C+A" protocols but higher for the "C" protocol. (v) The transfer delay is longer for all fOiir protocols. (vi) The queueing delay is longer for all protocols under heavy load conditions. Under light load conditions, the queueing delay is shorter for "C" and "C+R/C" protocols. Since there is no feedback in the "C" protocol, the success of a data frame transfer Chapter 5 Discussion of the Simulation Results 66 1.1 1.0 0.9 0.8 " l 0.7 a * 0.6 <u § 0.5 H 0.4 0.3 0.2 0.1 0.0 \ \ x 9 I I I I I ' I ' ' ' ' I 100 200 300 400 500 Offered Load, Xs(kbyte/s) 600 1.1 1.0 0.9 0.8 0 * ! 0.7 a «5 0.6 c <s 'fj 0.5 "I 1 0.4 O 0.3 0.2 0.1 0.0 x—x—*-^e-x i • • ' ' i ' ' ' ' i ' ' ' ' i ' ' ' ' i 100 200 300 400 500 Offered Load, Xs(kbyte/s) 600 120.0 100:0 h S 80.0 - 60.0 h .IP 1 40.0 20.0 0.0 9 STAs 16 STAs 36 STAs 9 STAs 16 STAs 36 STAs c —-o— - — • — • - -X---- C+R/C - -e- - - -X- -C+A \s C+R/C+A --X--o • / \ _ l I I 1_ _ l I I 1_ _1 I I L_ J I I I I I I l _ 100 200 300 400 Offered Load, Xs(kbyte/s) 500 600 Figure 5.2 Acceptance Rate, Completion Rate, and Throughput for 9,16, and 36 STAs in a 150m x 150m Square BSA. Chapter 5 Discussion of the Simulation Results 67 0 100 200 300 400 500 600 0 100 200 300 400 500 600 Offered Load, Xs (kbyte/s) Offered Load, Xs (kbyte/s) 9 STAs 16 STAs 36 STAs 9 STAs 16 STAs 36 STAs c — - • © " — .... -x—-. C+R/C ------ — x — C+A — e — — • — X C+R/C+A ---e--- x — Figure 5.3 Queueing and Transfer Delay Performances for 9,16, and 36 STAs in a 150m x 150m Square BSA. depends solely on the carrier sensing function. Since Ph is lowered as N increases, the completion rate increases and so does the throughput. This explains (i) and (v). When protocols with feedback capabilities are used, the random backoff procedure is used more frequently as the connectivity increases. This adds extra transfer and queueing delays to the system, and the retransmission of data frames adds extra loading to the channel. Hence, the throughput and the completion rates are lower as N increases. These effects explain (ii), (v), (vi), and (vii). As TV increases (thus increasing the connectivity) and Ph is nonzero, the probability of a collision is higher and hence, retransmis-sion is needed. Due to the size of each data frame (1000 bytes + 34 bytes header), retransmitting such a large data frame is inefficient compared to the use of handshaking with relatively small-Chapter 5 Discussion of the Simulation Results 68 sized RTS/CTS frames. This explains (iii). As N increases and Pn is nonzero, the probability that more than one STA transmitting simultaneously to different receiving STAs is higher since the connectivity is higher. Since Ph is nonzero, a ready-to-transmit STA may not be able to sense the existence of another on-going transmission all the time. Since there is no feedback in the "C" protocol, the next data block is dequeued right after it has transmitted a frame whether the CS function works or not. Hence, the "C" protocol has a slightly higher acceptance rate as /V increases. With the virtual CS function, the RTS/CTS exchange determines whether a data frame should be transmitted. Under heavy loads, the maximum retransmission limit for RTS is reached before the data part can be transmitted, and the whole MPDU is discarded. Hence, there is a possibility that a data block is dequeued but it is never transmitted. Thus, the acceptance rate is higher but the completion rate is lower when N increases. This explains (iv) and (v). In fact, this phenomenon is more pronounced in the network arrangement in Section 5.2.3. The following are some additional observations regarding the throughput performance of the four protocols in a large BSA, independent of the number of stations: (i) Using RTS/CTS exchange becomes advantageous under heavy load conditions when we compare protocols without the ACK procedure. This is because the virtual CS function increases the completion rate. Although the acceptance rate is higher for the "C" proto-col, its completion rate is much lower compared to the "C+R/C" protocol. (ii) Using RTS/CTS exchange is advantageous most of the time when the ACK procedure is used. Chapter 5 Discussion of the Simulation Results , ' , 6 9 (iii) The throughput of the "C" protocol decreases as the system offered load continues to in-crease beyond the data rate. This throughput can be increased if the value of r w is min increased. A detailed explanation can be found in Section 5.6.1. (iv) The protocols with RTS/CTS exchange make the throughput performance invariant to the number of stations. For example; the throughput for the "C+R/C+A" protocol is roughly 50 kbytes/s for 9, 16, and 36 STAs. (v) In the protocols without the ACK procedure, although the throughput performance using the "C" protocol is better than the one using the "C+R/C" protocol, the completion rate is not. Hence, if reliability is of more concern, using the "C+R/C" protocol is preferable in a large BSA where the HTP is present. 5.2.2 Effects of Increasing the Number of STAs in a Small BSA In this section, the BSA is fixed in a 25m x 25m square. This area represents a more realis-tic environment where the HTP is negligible. The various geometric parameters are shown in Table 5.2. Since the Ph values are zero for these cases, we expect the throughput to be high. In Table 5.2 Geometric Parameters for Different Number of STAs in a Small BSA. Number of Stations Arrangement Adjacent Distance BBS! Connectivity lllllllllllll 3x3 grid 12.5m 0% 8 stations 16 4x4 grid 8.33m 0% 15 stations 36 6x6 grid 5m 0% 35 stations Figure 5.4 and Figure 5.5, we observe the following characteristics: Chapter 5 Discussion of the Simulation Results 70 250.0 200.0 3 5% 3 150.0 s 100.0 50.0 0.0 9 STAs 16 STAs 36 STAs c Q -X----C+A Q v C+R/C - - 0 - - - -X C+R/C+A - - e- - - - - X- - -: i i i i I i i i L JL 100 200 300 400 Offered Load, Xs (kbyte/s) 500 600 Figure 5.4 Throughput Performance for 9, 16, and 36 STAs in a 25m x 25m Square BSA. (i) The throughput performance increases linearly when the system offered load, Xs, is be-low 80% of the data rate. (ii) As Xs approaches the data rate, the throughput basically stays close to the data rate val-ue. Moreover, all four WMAC protocols behave similarly independent of the number of stations. (iii) Using RTS/CTS exchange frames increases the delay of the system without any gain in throughput performance. (iv) As N increases (so is the connectivity), both the transfer and the queueing delays are longer. This is mainly due to the more frequent use of the backoff procedure. Chapter 5 Discussion of the Simulation Results 71 Offered Load, Xs (kbyte/s) Offered Load, Xs (kbyte/s) 9 STAs 16 STAs 36 STAs 9 STAs 16 STAs 36 STAs c .—o—~ -—-x—- C+R/C — • _ _ x — -C + A —e— • —x-— C+R/C+A ---e— • — - : - x — Figure 5.5 Queueing and Transfer Delay Performances for 9,16, and 36 STAs in a 25m x 25m Square BSA. 5.2.3 Effects of Increasing the Number of STAs in a Single BSS with Fixed Adjacent STA Distance In this section, the distance between any adjacent STAs is fixed at 50m. Table 5.3 shows Table 5.3 Geometric Parameters for Different Number of STAs in a Equally Spaced BSA. Number of Stations |||l||||el*bpl||||||:: Arrangement | | | | i | e:;||||i|| Connectivity 9 3x3 grid 100m x 100m 0% 8 stations 36 .6x6 grid 250m x 250m 23.3% 20.3 stations the geometric parameters used in the simulations. We expect the throughput performance for 9 STAs to be better than that for 36 STAs since the number of STAs and the BSA in the first config-uration are smaller than the ones in the second configuration. This is shown in Figure 5.6. From Chapter 5 Discussion of the Simulation Results. 72 0.0 _i i i_ —i i i i i i_ 100 200 300 400 500 600 Offered Load, Xs(kbyte/s) Figure 5.6 Acceptance Rate, Completion Rate, and Throughput for 9 and 36 STAs whose adjacent distances are set at 50m. Chapter 5 Discussion of the Simulation Results 73 Figure 5.6 and Figure 5.7, we observe the following characteristics: Offered Load, X$ (kbyte/s) Offered Load, Xg (kbyte/s) ? STAs 36 STAs 9 STAs 36 STAs c —-O" — C+R/C --€>-- — • — C+A - e— • C+R/C+A Q « Figure 5.7 Queueing and Transfer Delay Performances for 9 and 36 STAs whose adjacent distance is set at 50m. (i) As N increases, the overall throughput decreases. (ii) When N = 9 (small), using RTS/CTS handshaking generally degrades the throughput. However, the situation is reversed when N is 36 (large): (iii) When N = 9, the throughput for the "C" protocol drops rapidly as the system offered load continues to increase beyond the data rate. This does not happen when Af = 36 or for the other three protocols. Chapter 5 Discussion of the Simulation Results 74 (iv) As N increases from 9 to 36, the acceptance rate is higher for the protocols without ACKs ("C" and "C+R/C") but lower for the protocols using the ACK procedure ("C+A" and "C+R/C+A"). (v) The completion rate is lowered as N increases from 9 to 36. (vi) Both the transfer and queueing delay in N = 9 case is longer than that in N = 36 case for the "C" protocol. The situation is reversed for the other three protocols. The reason for (i) and (v) is that both the connectivity and Ph are higher when N - 36; this implies that more stations are trying to access the same receiver while they may collide with higher probability because some of the transmitting STAs cannot detect each other before a transmission starts. When N = 9, the Pn is zero. Hence, the HTP is not very severe and using RTS/ CTS handshaking simply increases overhead in the data transmission. This explains (ii). Observations (iii), (iv), and (vi) are all related. The clue to this behaviour can be found in the transfer delay curves for the "C" protocol. At a transfer rate of 2 Mbps, a 1034 byte data frame takes about 4.1 ms to transmit. When Xs is 300 kbytes/s, the transfer delays for N = 9 and N=36 are respectively 15ms and 8ms. In the "C" protocol, a data frame takes more than its minimum time to transmit only when it is forced to go into the random backoff period. The occurrence of this event has already been explained in Section 3.1.5. With CWmin set to 32 and the slot-time at 50|is, the average backoff time is 16 x 50|is or 0.8ms. Hence, when N = 9, a transmitting STA has to wait for, on the average, 2 to 3 transmitters to finish transmitting before its turn6, but when N = 36, the average waiting is about 1 transmitter. With the enforcing of the random backoff period, 6 Out of the transfer delay of 15ms, 4.2ms is used to transmit the frame plus DIFS sensing time. After deducting the remaining 10.8ms by 0.8ms average backoff time, there is 10ms left. This time is enough to transmit 2.5 frames. Chapter 5 Discussion of the Simulation Results 75 both the transfer and the queueing delays are longer while the acceptance rate decreases. One possible reason for this occurrence is that since Pn is zero when N = 9, a transmitting STA can detect the other ones, with high probability, before a transmission. Hence, under moderate to heavy system load conditions, a transmitting STA is forced to go into random backoff period before transmission. This yields a higher completion rate but a lower acceptance rate. On the other hand when N = 36, although the connectivity is high (20.3 stations), the Ph is high also (23.3%). Hence, a transmitting STA may not be aware that another one is transmitting, and it goes . into transmission after sensing for DIFS time. This increases the probability of a collision, and hence it yields a lower completion rate but a higher acceptance rate. 5.2.4 Effects of Different Network Arrangements with the Same Number of STAs In this section, we investigate two arrangements of 16 STAs with an adjacent distance of 50m. Table 5.4 shows the geometric parameters, and their geometries have already been shown in Table 5.4 Geometric Parameters for Two Network Arrangements with 16 STAs. Number of Stations Network Arrangement Size or BSA Connectivity 16 4x4 grid 150m x 150m 8.1% ' 13.8 stations 2x8 grid 50m x 350m 15.9% 10 stations Figure 4.3. The simulation results, shown in Figure 5.8 and Figure 5.9, allow the following observations to be made: (i) Both network configurations have similar throughput performance' in the "C+R/C", "C+A", and "C+R/C+A" protocols. Chapter 5 Discussion of the Simulation Results 76 Figure 5.8 Acceptance Rate, Completion Rate, and Throughput for Two Network Arrangements using 16 STAs whose adjacent distances are set at 50m. Chapter 5 Discussion of the Simulation Results 77 4 0 100 200 300 400 500 600 0 100 200 300 400 500 600 Offered Load, Xs (kbyte/s) Offered Load, Xs(kbyte/s) 4 x 4 2 x 8 4 x 4 2 x 8 c —-o— C+R/C - -o- - - - • - -C+A —e— • C+R/C+A -Figure 5.9 Queueing and Transfer Delay Performances for Two Network Arrangements using 16 STAs whose adjacent distances are fixed at 50m. (ii) In the " C " protocol, the 2 x 8 configuration has a better throughput performance than that of 4 x 4 configuration as the system offered load increases beyond the data rate. (iii) The acceptance rate of the 2 x 8 configuration is slightly higher than that of the 4 x 4 configuration. (iv) The completion rate of 2 x 8 is higher than that of 4 x 4 in the "No A C K " protocols ("C" and "C+R/C") but lower in the protocols using the A C K procedure ("C+A" and "C+R/ C+A). (v) Both the transfer and queueing delays of the 2 x 8 network are shorter than that of the 4 x 4 network. Chapter 5 Discussion of the Simulation Results • 78 From the observations, we can see that the "C" protocol is more sensitive to the network arrangement than the other protocols. With the lower Pn value and higher connectivity for the 4 x 4 configuration, more data frames need to undergo the random backoff period than that of the 2 x 8 configuration on the first transmission. Hence, in the "C" protocol, both the transfer and the queueing delays are longer, and the acceptance rate is slightly lower at moderate to heavy system offered load. Since the connectivity of 4 x 4 is slightly higher than that of 2 x 8, the completion rate for 4 x 4 is slightly less than that of 2 x 8. Hence, the combined effects of both the completion and the acceptance rate make the throughput of the "C" protocol in the 4 x 4 configuration lower than that of the 2 x 8 configuration under heavy load conditions. Furthermore, since the Ph value is lower for the 4 x 4 configuration, a ready-to-transmit STA makes less error in detecting an idle channel. This reduces the number of collisions and hence, the number of retransmissions of a data frame should decrease. Moreover, it also reduces the number of data frames rejected due to exceeding the maximum retransmission count. The consequence is a higher completion rate for the protocols using the ACK procedure for the 4 x 4 network than for the 2 x 8 network. 5.2.5 Effects of Cochannel Interference between Two Independent BSSs In this section, cochannel interference between two independent equally sized BSSs is investigated. Each BSS contains 9 STAs arranged in a 3 x 3 grid and separated by 12.5m. From the center of each BSS, the separation distance, D, between the two networks is varied from 20m to 170m in steps of 25m, and the overall performance of the networks is examined. As an example, when D = 20m, the two networks overlap each other. Figure 5.10 illustrates the network setup. For all D values, the system offered load values, 100 and 250 kbytes/s, are used. In Figure 5.11, when the system offered load is heavy, the throughput increases steadily as the separation Chapter 5 Discussion of the Simulation Results 79 l o " o o o o 12.5m 12.5m o =STA T ° O 0 T ° o o T o o o h 1 D O 0 Figure 5.10 Network Setup to test the Effects of Co-channel Interference, distance between the two networks increases. Another observation is that under light load conditions, co-channel interference does not affect the throughput performance. As a point of reference, the throughput of a single network is shown in the shaded area at the fictitious point D = 190m. We would expect that as the separation distance increases, the throughput of both networks should approach that of a single network. 250.0 200.0 h ^ 150.0 3 §> 100.0 g 50.0 0.0 100 kbyte/s 250 kbyte/s C •©- » C+A <-> \J , ^ C+R/C — e — • C+R/C+A _.._e-- • -J I I I L _L J I I I I I L _L _i i i i i i i_ 0 20 40 60 80 100 120 140 160 180 200 Separation Distance, D (m) Figure 5.11 Average Throughput Performance of Two Independent BSSs Sharing the Same Channel. Chapter 5 Discussion of the Simulation Results . 8 0 5.2.6 On the Delay Distributions of the Protocols Both the queueing and transfer delay curves shown in the previous sections are average values. Their distributions are shown in this section. One observation from the distributions is that regardless of the geometry and network configurations, the same protocol yields similar delay distribution curves except for differences in the mean values. Hence, only some samples for each protocol are shown in this section. The network configuration chosen is the 2 x 8 network as used in Section 5.2.4. The cumulative distribution functions of queueing and transfer delays are shown in Figure 5.12 and Figure 5.13 respectively. In the figures, we can observe the following charac-teristics: (i) With the "C" and "C+R/C" protocols, the cumulative distributions of the queueing delay show that as the system load increases, more frames are gradually having longer queue-ing delays. This is also true for the cumulative distribution of the transfer delay for the "C" protocol. (ii) The cumulative distributions of the transfer delay for the "C+R/C" protocol have similar characteristics as the system load increases beyond the data rate. (iii) With the "C+A" and "C+R/C+A" protocols, the cumulative distributions for both trans-fer and queueing delays tend to have similar characteristics as the system offered load increases. (iv) In the transfer delay, distribution curves of the "C+A" protocol, the CDF values stay con-stant between 5 and 10ms. This is due to the backoff mechanism in the CSMA/CA pro-tocol since the period, 5ms, consists of 4.1ms for transmission of an MPDU, and an average of 0.8ms for the backoff time (when CWmin - 32 and SlotTime = 50|ns are used). Chapter 5 Discussion of the Simulation Results 81 Figure 5.12 Cumulative Queueing Delay Distribution Function for the 2 x 8 Network Configuration for (a) C, (b) C+A, (c) C+R/C, and (d) C+R/C+A protocols. Chapter 5 Discussion of the Simulation Results 82 Figure 5.13 Cumulative Transfer Delay Distribution Function for the 2 x 8 Network Configuration for (a) C, (b) C+A, (c) C+R/C, and (d) C+R/C+A protocols. Chapter 5 Discussion of the Simulation Results . 83 5.3 Effects of Different Traffic Conditions In this section, different traffic flow scenarios in an infrastructure network between a S T A and its A P are investigated. The study focuses on a configuration similar to a centralized network i n which the A P is treated as a base station, and al l its STAs can only communicate with it. Moreover, the effect of having only RTS/CTS exchanges on inbound traffic to an A P is studied. In addition, the performance of the W M A C protocols as a function of the data frame size is studied. 5.3.1 Effects of Different Inbound and Outbound Traffic Flows Three different traffic flow conditions into and out of an A P are studied in this section. A balanced inbound (IB) and outbound (OB) traffic flow to and from an A P means that between any pair of S T A and AP, their traffic flows are equal in both directions. This scenario is very common especially when user interactions with a computer program or other users are the main activities i n a network. A n imbalanced inbound and outbound traffic flow to and from an A P means that between any pair of S T A and AP, their traffic flows are not equal in both directions. There are two cases: • The inbound flow is greater than the outbound flow (IB > OB) . A n example of such a scenario is that the STAs in a BSS are some database engines, and some STAs from another B S S are querying those databases. • The outbound flow is greater than the inbound, flow (IB < O B ) . A n example of such a scenario is that the STAs in a B S S are receiving a large amount of data from, say, the ethernet backbone. Table 5.5 shows the network setups for the simulations. In a l l simulations, R T S / C T S frames are used only i n inbound traffic to an A P , and the A C K procedure is used i n both Chapter 5 Discussion of the Simulation Results Table 5.5 Network Setups to Investigate Different Traffic How Conditions. 84 Number of STAs Adjacent Distance l l l l l l l l l i l l Flow Condition OB Traffic (Fraction of A,§) Total IH Traffic (Fraction of X$) 9 75m 125m x 125m IB>OB IB = OB IB<OB 1/9 1/2 3/4 8/9 1/2 1/4 12.5m 25m x 25m IB>OB IB = OB IB<OB 1/9 1/2 3/4 8/9 1/2 1/4 25 37.5m 125m x 125m IB>OB IB = OB IB<OB 1/25 1/2 3/4 24/25 1/2 1/4 6.25m 25m x 25m IB>OB IB = OB IB<OB 1/25 1/2 3/4 24/ 25 1/2 1/4 directions. Figure 5.14 and Figure 5.15 show the outcomes of the simulations. From the figures, we can observe the following characteristcs: (i) Regardless of the network configuration, both the transfer and queueing delay perfor-mances degrade as the traffic flow becomes heavier on the inbound than on the outbound direction. (ii) In the small BSAs with 9 and 25 STAs, the acceptance rate, as well as the throughput, increases as the traffic flow becomes heavier on the inbound than on the outbound when the system offered load is above 80% of the data rate (200 kbytes/s). (iii) In the large BSAs with 9 and 25 STAs, the acceptance rate, as well as the throughput, is lowest when the inbound traffic is heavier than the outbound. However, in the "IB = OB" and "IB < OB" cases, the situation depends on the number of stations in the BSS. When the system offered load value is higher than the data rate, the performances are very similar in the three traffic flow conditions. Chapter 5 Discussion of the Simulation Results 85 Figure 5.14 Throughput, Acceptance Rate, Transfer and Queueing Delays of Different Traffic Flow Conditions for Two Network Configurations using 9 STAs. Chapter 5 Discussion of the Simulation Results 86 Figure 5.15 Throughput, Acceptance Rate, Transfer and Queueing Delays of Different Traffic Flow Conditions for Two Network Configurations using 25 STAs. Chapter 5 Discussion of the Simulation Results •-• 87 Intuitively, one would expect that as the outbound traffic becomes heavier than the inbound traffic, the performance should be better. In the extreme case where there is no inbound traffic, no collision can occur because no other STAs are contending for the channel. Hence, the AP has full control of the channel and the throughput should be high. This can be seen from (i) that the delays increase as the inbound traffic becomes heavier. However, in a small BSA where there are no hidden STAs, the observations in (ii) seem to be contrary to the prediction. This interesting phenomenon is explained in the next paragraph. Not shown in this section are the completion rates of the simulations. In all cases, they are close to 100%. Since the system throughput is a combined effect of both the completion rate and the acceptance rate, the key to understanding this phenomenon is the acceptance rate. From the "OB Traffic" column of Table 5.5, the AP has a much heavier outbound traffic than the rest of the STAs when IB < OB. Since it cannot simultaneously transmit data frames to its STAs, frames in an AP are queued up at a high rate. Moreover, when the BSA is small, all STAs can detect each other with a high probability; if any STA wants to transmit, the AP yields eventually for the other STAs to transmit due to the CSMA/CA mechanism. All these events account for the reduction of the acceptance rate as the outbound traffic becomes heavier than the inbound under moderate to heavy load conditions when the BSA is small. When the BSA is large, the HTP is more severe for the STAs but hot for the AP. However, . this problem is alleviated by using the RTS/CTS exchange. Due to capture effects, one of the data frames may be captured, but the others will simply increase the contention windows and retrans-mit after a longer delay. Hence, when the inbound traffic is heavier than the outbound traffic, the acceptance rate is the lowest. Now, depending on the connectivity and the assigned traffic of the Chapter 5 Discussion of the Simulation Results • 88 STAs, they may yield a different acceptance rate under light to moderate load conditions. Under heavy load conditions, it is believed that all these effects cancel each other, and both the acceptance rate and the throughput converge to their average values regardless of the traffic flow condition. 5.3.2 Effects of Using RTS/CTS Only for the Inbound Traffic The standard suggests using RTS/CTS exchange only for inbound traffic to an AP since if an AP can detect all its STAs, using RTS/CTS only increases transmission overhead. The perfor-mance gain as a result of using this suggestion is studied in this section. Two networks with differ-o ent Pn values are studied. Both networks have 9 STAs arranged in a 3 x 3 grid. Table 5.6 shows the geometric parameters used in the simulations. The simulation results for the balanced Table 5.6 Geometric Parameters for Two Network Arrangements with 9 STAs. Number of Stations Adjacent Distance Size of BSA Connectivity 75m 150m x 150m 29.1% 5.8 stations 12.5m 25m x 25m 0% 8 stations inbound and outbound traffic flow is shown in Figure 5.16. In the figure, the "C+R/C+A" protocol means that RTS/CTS is used in both direction whereas "Hybrid" means that RTS/CTS is used only in the inbound direction (STA to AP). The following observations are made: (i) In a small BSA, use of RTS/CTS in both directions decreases the throughput. Using the hybrid scheme raises the throughput by about 5%. Performance degradation between the "hybrid" and the "C+A" scheme is no more than 5%. Chapter 5 Discussion of the Simulation Results 89 250.0 75m 12.5m C+A —e • — C+R/C+A - - -e * - -Hybrid —<>--• — •©- -©- •©- •o •©- —o 0.0 0 600 Offered Load, Xs (kbyte/s) Figure 5.16 Effects of Using RTS/CTS Frames in inbound traffic to an AP on the Throughput Performance. (ii) In a large BSA, use of RTS/CTS increases the throughput by up to 33%. Using the hy-brid scheme further increases the throughput by up to an additional 25%. Although the throughput performances for the imbalanced traffic flows under similar simulation conditions are not shown, they have similar characteristics. 5.3.3 Effects of Varying the Data Frame Size As discussed in Section 3.1.8, RTS/CTS exchange is used only in an ad-hoc network if the data frame size is greater than a certain threshold value. In this section, we try to determine this threshold value by varying the data frame size from 200 to 1500 bytes in steps of 200 bytes. System offered load values of 50 and 250 kbytes/s are used to examine the performance under light and heavy load conditions. One point to note is that given a certain X$ value, as the data block size increases, the rate of data block generation decreases. The network configuration Chapter 5 Discussion of the Simulation Results 90 chosen is the 36 STAs case in Section 5.2.1 since it shows the largest performance difference between the "C+A" and "C+R/C+A" protocols. The simulation results, shown in Figure 5.17, reveal the following characteristics: (i) Under light load conditions, using RTS/CTS frames degrades the throughput perfor-mance for any data frame sizes. (ii) Under heavy load conditions, using RTS/CTS frames improves the throughput perfor-mance for data frame size greater than 500 bytes. (iii) Under any load conditions, the throughput of "C+R/C+A" protocol approaches a steady value when the data frame size continues to increase beyond 800 bytes. (iv) At 50 kbytes/s, the throughput of the "C+A" protocol has approximately the same value for any data frame size. At 250 kbytes/s, it decreases as the data frame size increases. (v) The acceptance rate of the "C+R/C+A" protocol increases as the data frame size increas-es regardless of the system load. It, however, remains steady under light load and de-creases slightly under heavy load for the "C+A" protocol. (vi) The completion rate decreases as the data frame size increases under heavy load condi-tions but remains steady under light load conditions. As the data frame size increases, the overhead associated with RTS/CTS exchange decreases. Moreover, as the rate of frame generation decreases, the acceptance rate increases since the blocking probability decreases. This accounts for the increase in throughput for the "C+R/C+A" protocol. When HTP exists, a data frame may be required to transmit more than once before it can be successfully received. As the data frame size increases, the amount of retransmit-Chapter 5 Discussion of the Simulation Results 91 Figure 5.17 Acceptance Rate, Completion Rate, and Throughput of 36 STAs where the Data Frame Size is varied. Chapter 5 Discussion of the Simulation Results 92 ted data bits increases. Hence, the completion rate decreases. This also accounts for the decrease in the acceptance rate of the "C+A" protocol under heavy load condition. 5.4 Effects of RF Hardware Parameters and Channel Conditions Hardware technology and their implementations usually limit the performance of a system. Two of the major parameters are the receiver sensitivity (rxs) and the carrier sense thresh-old (est) values. Related to the hardware limitations are the limitations of the channel models. The effects of these parameters are analyzed in this section. 5.4.1 Effects of Varying the Receiver Sensitivity The receiver sensitivity (rxs) value affects the receiver's capturing and sensing capabili-ties. As defined in Section 4.5, the receiver sensitivity is the sum of the receiver noise floor, r\F, (in dBm) and the capture ratio (in dB). Hence, both parameters are varied in order to investigate their effects in the simulations. The rxs value7 is varied from -90dBm to -76dBm, and the result-ing throughput performances of the "C+A" and "C+R/C+A" protocols are studied. The simula-tions use 16 STAs arranged in 2 x 8 and 4x4 grids as in Table 5.4, and the system load is set at 100 kbytes/s. Figure 5.18 shows the simulation results. In the figure, "Cap. Ratio" means that the receiver noise floor is set at -95dBm, and the capture ratio is varied from 5 to 19dB in steps of 2dB, whereas "NoiseFloor" means that the capture ratio is set at lOdB, and the noise floor is varied from -lOOdBm to -86dBm. In practice, the receiver noise floor is a hardware parameter, and it depends on the hardware design and technology. Hence, it is, in general, not a parameter that can be varied in practice. Nevertheless, the simulations provide the system designer ideas 7 Normally, the greater the receiver sensitivity, the lower is the rxs value since a lower rxs value allows a STA to receive a weaker signal. Chapter 5 Discussion of the Simulation Results 93 100.0 80.0 I 60.0 3 >^ 40.0 20.0 h 0.0 Cap. Ratio NoiseFloor C+A • e — C+R/C+A ------- ---©---100.0 -90 -88 -86 -84 -82 -80 -78 -76 Receiver Sensitivity (dBm) (a) -90 -88 -86 -84 -82 -80 -78 -76 Receiver Sensitivity (dBm) (b) Figure 5.18 Throughput as a Function of Receiver Sensitivity Values for (a) 2 x 8 STAs, and (b) 4 x 4 STAs. about the consequences of different receiver noise floor values. From Figure 5.18, we can observe the following characteristics: (i) The throughput performances for all protocols and network arrangements simulated tend to decrease as rxs increases from -90dBm to -80dBm. This is true whether the varying parameter is the capture ratio or the receiver noise floor values. (ii) The throughput performances fluctuate up and down, and it tends to increase as rxs in-creases from -80dBm to -76dBm. (iii) When the receiver noise floor is the varying parameter, the fluctuation in throughput per-formance is not as severe as when the capture ratio is the varying parameter. Chapter 5 Discussion of the Simulation Results 94 (iv) The throughput performance of the "C+R/C+A" protocol becomes higher than that of the "C+A" protocol as rxs increases. The difference is more pronounced if the varying parameter is the capture ratio. As the receiver becomes less sensitive (higher rxs value), it cannot detect any weak signals before a transmission. This increases the probability of a collision and, hence, the through-put decreases as observed in (i). Since the physical CS function is not very effective at higher rxs value, the virtual CS function (using RTS/CTS frames) becomes more important in determining a distant transmitter. Hence, observation (iv) is reasonable. The receiver noise floor provides a minimum threshold for the receiving circuit to demodulate an incoming signal. On the other hand, the frame capturing part, in case of simultaneous transmissions, is controlled solely by the capture ratio. Increasing the capture ratio means that the desired signal of a frame and the interfering signals must differ by a greater amount before it is declared as being "captured": Therefore, observations (i) and (iii) are as expected. The fluctuation observed in (iii) is not so obvious though. This is mainly due to some artifacts in the simulation setup. From Section 4.6.2, a STA only transmits to another STA that is reachable under the "no-fading" conditions. Moreover, from Section 5.2, the connectivity is related to the average number of reachable STAs. The parameter to determine the connectivity is rxs. Varying rxs changes both the connectivity and Pn simultaneously, but the throughput perfor-mance is a function of these two quantities. Hence, throughput fluctuations can be seen from the results. Table 5.7 shows the connectivity and Ph values as rxs increases. 5.4.2 Effects of Varying the Carrier Sensing Threshold The carrier sensing threshold (est) value affects the transmitter's sensing capability. In this Chapter 5 Discussion of the Simulation Results Table 5.7 Values for Ph and Connectivity as a function of the rxs value. 95 Network rxs (dBm) -91) i i i i i -8ft -84 -82 -80 -78 -76 -74 2x8 Ph 11.4 15.9 15.9 22.0 21.4 21.4 33.9 30 30 Connectivity 12 10 10 8.75 7.5 7.5 6 4.5 4.5 4x4 P;, 0 1.7 8.1 14.8 19.4 19.4 38.2 34.3 34.3 Connecti\ity 15 14.75 13.75 12.25 10.25 10.25 7.25 5.25 5.25 section, the est value is varied from -90dBm to -74dBm, and the resulting throughput perfor-mances of the "C+A" and "C+R/C+A" protocols are studied. The simulations use 16 STAs arranged in 2 x 8 and 4x4 grids as in Table 5.4, and the system load is set at 100 kbytes/s. From Figure 5.19, we can see that as the est value increases from -90dBm to -74dBm, the throughput tends to decrease in both network configurations. An immediate conclusion is to use the lowest est value for all STAs. However, due to physical limitations such as ambient noise, this est value 60.0 30.0 3 | 20.0 10.0 h 0.0 C+A *— C+R/C+A --X--i . i . i . i . i . i . i . i 60.0 50.0 h | 40.0 £ 30.0 h 3 I 20.0 h--90 -88 -86 -84 -82 -80 -78 -76 -74 Carrier Sensing Threshold, est (dBm) (a) 10.0 0.0 -— " 1 , 1 , 1 , 1 , 1 , 1 , 1 , i , i -90 -88 -86 -84 -82 -80 -78 -76 -74 Carrier Sensing Threshold, est (dBm) (b) Figure 5.19 Throughput as a Function of Carrier Sensing Threshold Values for (a) 2 x 8 STAs, and (b) 4x4 STAs. Chapter 5 Discussion of the Simulation Results cannot be too small. 96 5.4.3 Effects of Short-Term Rayleigh Fading In [33], the simulation results presented do not include the effects of short-term fading such as Rayleigh fading. Although all of our simulations have included this effect, we would like to see how the absence of Rayleigh fading affects the performance. Using 16 STAs arranged in a 2 x 8 rectangle separated by 50m, the simulation results are shown in Figure 5.20. As expected, the throughput increases when Rayleigh fading is absent. Although the results are not shown here, the 180.0 160.0 140.0 h ^ , 120.0 h P 100.0 h 3 80.0 h 60.0 40.0 20.0 0.0 0 • • • ••o e- — _ - © • w/ Ray. w/o Ray. w/ Ray. w/o Ray. c . . . . . © . . . . . C+R/C - T © • - -C+A _ C+R/C+A - - e- •• - -u w _L _L 100 200 300 400 Offered Load, Xs (kbyte/s) 500 Figure 5.20 Throughput Performances of 16 STAs with and without Rayleigh Fading. 600 4x4 network arrangement exhibits a similar increase in the throughput when Rayleigh fading is absent. Chapter 5 Discussion of the Simulation Results 97 5.4.4 Effects of Varying Log-Normal Shadowing Parameter Another channel parameter that may affect the performance is the standard deviation for log-normal shadowing. Throughout all simulations presented in this thesis, we have chosen this value to be 5dB according to [33]. However, from [8], this parameter is very dependent on the indoor environment, and its value can range from 3dB to over lOdB. Using 16 STAs arranged in a 2 x 8 rectangle separated by 50m, the simulation results are shown in Figure 5.21. Values of 3.0, 7.0, 9.6, and 14.1 dB, taken from [8], are used in the simula-tions. From Figure 5.21, we can observe that as GS increases, the throughput generally decreases for all protocols except the "C+A" protocol which remains somewhat constant at 45 kbytes/s. Although the results are not shown here, the 4 x 4 network arrangement has similar characteristics in throughput as os is increased. 5.5 Effects of Varying the Source Queue Size The size of the source queue affects the blocking probability, the acceptance rate, and, hence, the throughput of the system. Under very light load conditions, the WMAC protocol can serve all requests. Therefore, the size of the queue can be zero since no frames are queued up. However, under moderate to heavy load conditions, the size of the source queue can affect the system performance. Table 5.8 shows the two network configurations used in the simulations. For each simulation, the queue size values used are 0, 2, 5, 10, 100, to 1000, and they are repeated at 100 kbytes/s and 250 kbytes/s. The results of the simulations as a function of the queue size are shown in Figure 5.22 and Figure 5.23. Although some of the queue size values used are greater than 10, only values up to 10 are shown in the figures because the results stay constant at queue size of 10 and above. From the figures, we can observe the following characteristics: Chapter 5 Discussion of the Simulation Results 98 160.0 140\0 h 120.0 f 100.0 3« 80.0 § 60.0 40.0 20.0 0.0 x - x C - C+R/C - -x -C+A — * — C+R/C+A ---X--' i ' ' ' ' i _L_L 160.0 140.0 120.0 f 100.0 J 80.0 oo § 60.0 100 200 300 400 500 600 Offered Load, Xs (kbyte/s) (a) 40.0 20.0 0.0 x-x -x . ,x / ,x-x^ / * *^x"* / ' / :/ -X-I I I I I I I I I I I I I I I I I I I I 100 200 300 400 500 600 Offered Load, Xs (kbyte/s) (b) 160.0 140.0 120.0 ^ 100.0 h J 80.0 h oo 3 60.0 40.0 20.0 0.0 . - x I I I I I I I I I I I I I 1 1 1 1 I 1 1 1 1 I 0 100 200 300 400 500 600 Offered Load, Xs (kbyte/s) (c) 160.0 140.0 120.0 f 100.0 J • 80.0 0 0 § 60.0 40.0 20.0 0.0 x / x - * - * - * - x ' .x. / .- x--x -X--X-—X-—x—-x—X-—x 1 1 i i i i _L 0 100 200 300 . 400 500 600 Offered Load, \ s (kbyte/s) (d) Figure 5.21 Throughput of 16 STAs using Gs values of (a) 3.0 dB, (b) 7.0 dB, (c) 9.6 dB, and (d) 14.1 dB. Chapter 5 Discussion of the Simulation Results Table 5.8 Geometric Parameters for Different Number of STAs in a Equally Spaced BSA. 99. Number of Stations Network Arrangement liiilllljf Connectivity y 3x3 grid 100m x100m 0% 8 stations 4x4 grid 150m x 150m 8.1% 13.8 stations 1.0 0.9 0.8 « 0.7 I 0.6 0.5 0.4 h 0.3 100 kbyte/s 250 kbyte/s C+A —e— — • — C+R/C+A - - • © - - - - * - -_L _L 110.0 100.0 90.0 la- 80.0 IP g 2 4 6 8 Queue Size (data blocks) 10 70.0 60.0 50.0 © -J i L _i I i I i L 0 2 4 6 8 10 Queue Size (data blocks) Figure 5.22 Acceptance Rate and Throughput of 9 STAs as a function of the Queue Size. (i) When the number of STAs is 9, the acceptance rate and the throughput of both the "C+A" and "C+R/C+A" protocols increase as the queue size increases up to a value of 10. (ii) When the number of STAs is 16, the acceptance rate and the throughput of the "C+R/ C + A " protocol increase as the queue size increases up to a value of 10. However, the ac-ceptance rate remains almost constant, but the throughput slightly decreases in. the " C + A " protocol. Chapter 5 Discussion of the Simulation Results 100 0.6 0.5 | 0.4 h e a I- 0.3 1^ 0.2 0.1 . - © —e -_ © - H 100 kbyte/s 250 kbyte/s C+A —e— — • — C+R/C+A - - © - - - - * - -_L _L _L 60.0 1 50.0 3 So 3 s 40.0 h 0 2 4 6 8 10 Queue Size (data blocks) 30.0 2 4 6 Queue Size (data blocks) Figure 5.23 Acceptance Rate and Throughput of 16 STAs as a function of the Queue Size, (iii) Not shown in the figures is the queueing delay which increases in all cases as the queue size increases. Although not shown in this section, the completion rates for all cases remain constant. Hence, the throughput performance depends entirely on the acceptance rate. Therefore, as the acceptance rate increases, the throughput also increases. This is observed in (i) and (ii). One important result in this section is that there is an optimum value for the queue size. In our simulations, the value is 10 since the throughput is less below this value but remain constant above this value. However, the choice of this value is dependent on other system parameters such as the connectivity, Th, the contention windows size, the maximum retransmission count, etc. since they all affect the acceptance and completion rates of the, system. Chapter 5 Discussion of the Simulation Results 101 5.6 Effects of Varying the Backoff Parameters In this section, two important parameters, CWmin and the maximum retransmission limit, that control the backoff mechanism are studied. The analysis is based on the simulation of the 9 STAs network configuration shown in Table 5.3. 5.6.1 Effects of Initial Contention Window Size The Contention Window size, especially CWmin, plays an important role when the system offered load is close to or above the data rate. This is because the random backoff period is a function of it. If the initial CWmin is too large, the channel is not used efficiently; However, if it is too small, the function of "collision avoidance" cannot be achieved because the backoff mechanism may put the transmission starting point of more than one frame into the same slot, and, hence, introduces frame collisions. The simulation uses CWmin sizes of 8, 16, 32, 64, 128, 256, and 512 with the maximum retransmission count, r, set to 16, and CWmax set to 1024. Two system offered load values, 100 kbyte/s and 400 kbytes/s, are used to examine the effects under moderate and heavy load conditions. The throughput results of the four protocols as a function of CWmin are shown in Figure 5.24. However, only the acceptance and completion rates of the "C" protocol under heavy load is shown in Figure 5.25 because it is the only protocol in which the completion rate tends to increase as CWmin increases. The completion rates for the other protocols remain more-or-less unchanged, and hence, the throughput depends mainly on the acceptance rate. From the figures, we can observe the following characteristics: Chapter 5 Discussion of the Simulation Results 102 150.0 & 100.0 p-3 3 s fi 50.0 0.0 — ©• • — -e —. 100 kbyte/s 400 kbyte/s 100 kbyte/s 400 kbyte/s c - - • -©•-- C + R / C - - » - - - - O - -C+A — • — — e — C+R/C+A - - * - - - - © - -_L _ l I I t _ _ L _ 101 10z Minimum Contention Window Size, CW^ (slot) Figure 5.24 Throughput Performance of 9 STAs as a Function of CWmin. 1.0 0.9 0.8 0.7 a. •Si Q 0.6 *t <U 0.5 si a 8- 0.4 0.3 0.2 0.1 0.0 o-101 C,PC o <3r-_ l I I L _L - i - i_ 10z 1.0 H 0.9 0.8 0.7 H 0.6 0.5 0.4 0.3 0.2 0.1 0.0 Minimum Contention Window Size, CWmin (slot) Figure 5.25 Acceptance and Completion Rates of the "C" Protocol at 400 kBytes/s as a Function of 0 OH •Sf a e •2 1 CWmin when the number of STAs is 9. Chapter 5 Discussion of the Simulation Results 103 (i) The acceptance rate decreases as CWmin increases for all protocols. This is because the start-of-transmission time is delayed as CWm{n increases, thus increasing the transfer de-lay. For protocols with feedback using ACK and/or RTS/CTS frames, an increase in the transfer delay potentially decreases the acceptance rate. (ii) The throughput for all except the "C" protocol decreases as CWmin increases since the acceptance rate decreases and the completion rate remains more-or-less constant for all except the "C" protocol. (iii) The completion rate increases in the "C" protocol under heavy load condition as ONmm increases. This is the main cause for the sudden increase in throughput for the protocol. Moreover, this CWmin can be adjusted to increase the throughput of the "C" protocol un-der heavy load conditions for the cases in Section 5.2. The reason is explained below. The "C" protocol has no feedback at all. Hence, the contention window for the random backoff period is always chosen between 1 and CWmin x SlotTime. Under heavy load conditions, it is certain that all STAs must go through the random time backoff period before a transmission can start. However, when HTP exists, the physical CS does not work always and collisions cannot be avoided. In order to reduce frame collisions, the backoff time should be longer than the transmis-sion time of a data frame because this lowers the probability that the backoff timer expires8 during the time another STA is transmitting. In our case, the data frame transmission time including sensing time is about 4.3ms. Given the SlotTime value of 50(is, this requires CWmin to be 128. In order to achieve this average value, CWmin must be 256 since a uniform number generator is used to generate a random number between 1 and CWmin x SlotTime. A close observation of Figure 8 Recall that a backoff timer only decrements and expires when a STA senses an idle channel, and frame transmission starts as soon as the timer expires. Chapter 5 Discussion of the Simulation Results 5.25 reveals that the completion rate starts to increase when CWmin increases beyond 256. 104 5.6.2 Effects of the Maximum Retransmission Count The Maximum Retransmission Count, r, controls how many attempts a MPDU can be retransmitted before it is rejected. In our simulations, the r values used are 0,1,2, 4, 8,16, and 32, and the {CWmin, CWmax} pair is set to {32, 1024} slots as usual. System offered load values are varied from 50 kbytes/s to 500 kbyte/s in steps of 50 kbytes/s. Figure 5.26 shows the performance of the "C+A" protocol with different r values9. In addition, the performance of the "C" protocol is shown as a reference for the case where r = 0. From the figure, we can observe the following characteristics: (i) The acceptance rate decreases as r increases. (ii) The completion rate increases as r increases. Moreover, when comparing the "C+A" protocol where r = 0 with the "C" protocol, the former has a lower completion rate due to the ACK procedure overhead (which is useless since no retransmission is allowed when r = 0.) and the probability of a loss ACK frame. Although not shown, the transfer delay also increases as r increases. (iii) Under the simulation's assumptions, a near optimal value for r is 16 since the overall performance remains unchanged above this value but is lower below this value. Al-though a value of 32 gives marginally better results, it is not chosen because it increases the transfer delay slightly. Although the "C+R/C+A" protocol was also simulated, the results are not presented here since they have similar characteristics. Chapter 5 Discussion of the Simulation Results 105 100 200 300 400 500 . Offered Load, Xs (kbyte/s) 100 200 300 400 500 Offered Load, Xs (kbyte/s) 150.0 S 100.0 h s 0 0 3 50.0 h 600 Offered Load, Xs (kbyte/s) Figure 5.26 Throughput, Acceptance and Completion Rates for 9 STAs as a Function of the Maximum Retransmission Count, r. Chapter 6 Conclusions The performance of the IEEE 802.11 WMAC protocol, in particular the embedded CSMA/CA protocol under the DCF, is investigated through extensive computer simulations. The object-oriented approach is used to design the simulator which makes it possible to examine the effects of a wide selection of parameters on the protocol. Sensitivity analysis is done in six major areas: geometry, traffic flow, channel models, source queueing size, RF hardware, and backoff parameters. In each case, the acceptance rate, completion rate, throughput, transfer delay and queueing delay are studied. To simulate the DCF, a FSM is designed to handle the complex handshaking procedures of the protocol. This FSM combines both the transmitting and receiving part of a STA. The approach reduces overhead in passing many control parameters to synchronize the transmitting and receiv-ing part of a STA and, hence improves the speed of the simulation. In studying the effects of varying the number of stations, the BSA sizes, and different network arrangements, it turns out that the connectivity and the hidden terminal parameter, Pn, are two parameters that can control the outcome. As the connectivity increases, the completion rate decreases while the transfer delay increases. On the other hand, the Ph changes the acceptance rate depending on the number of STAs and the protocol used..The system throughput, which is directly proportional to both the acceptance and the completion rates, varies accordingly. For instance, if both the acceptance and completion rates increase, the throughput increases. Hence, the performance can be quite different for two network arrangements with different connectivity and Pn values even if they both have the same number of STAs. 106 Chapter 6 Conclusions 107 Co-channel interference tends to degrade the performance under moderate to heavy system load conditions. Under light loading, the effects are not very pronounced. As the ad-hoc networks are moved farther apart from each other, the performance of each network converges to that of a single ad-hoc network since the amount of co-channel interference is reduced. When the HTP is not too severe or. when the system load is light or when the data frame size is small, using RTS/CTS exchange actually degrades the throughput performance. This is mainly due to the overhead in the handshaking part. However, throughput improvements of more than 50% are possible for the "C+R/C+A" protocol over the "C+A" protocol when the system load is moderate to heavy, the data frame size is large, and HTP exists. The throughput performance of an imbalanced traffic flow between an AP and its STAs within a BSS depends on the BSA size and the connectivity. For instance, in a 25m x 25m BSA, the throughput increases as the inbound traffic flow becomes heavier than the outbound traffic whereas in a 125m x 125m BSA, the throughput is lowest when the inbound traffic is heavier than the outbound traffic. Moreover, as the traffic flow becomes heavier on the inbound than on the outbound, both the transfer and the queueing delay performances become worse regardless of the BSA size and the connectivity. In studying the effects of the receiver sensitivity and the carrier sense threshold values, it turns out that varying the receiver sensitivity changes both the connectivity and Ph, and, hence the throughput fluctuates. However, the general trend is that as the receiver becomes more sensitive, the throughput increases. Moreover, as the carrier sense threshold value decreases, the throughput increases. Chapter 6 Conclusions 108 When comparing the simulation results between "with Rayleigh fading" and "no fading" conditions, the throughput with no fading outperforms the ones with Rayleigh fading by up to 50%. Moreover, as the standard deviation of the log-normal fading component increases, the throughput performance tends to decrease. In studying the effects of the source queue size, it turns out that a near optimal value can be found for the queue size since after which no further throughput performance can be observed. Using two different network configurations with different connectivity and Ph, it is found that a source queue size value of 10 gives near optimal performance in terms of throughput, delay, and memory usage. Finally, in varying the backoff parameters, it is observed that the initial contention window size, CWmin, has a big effect on the performance of the "C" protocol under moderate to heavy load conditions. The choice of an optimum value for CWmin depends on the data frame size and the system load. However, for the other protocols, CWmin should be chosen to be approxi-mately equal to the number of STAs in the BSS. In studying the effects of the maximum retrans-mission count, a value of 16 seems to be near optimal. Increasing this value further does not result in a significantly higher throughput. Among the topics which could be further studied are the following: • Add PCF support on top of the CSMA/CA protocol to examine the delay performance of time-bounded and asynchronous services in the contention-free period of a super-frame. Chapter 6 Conclusions 109 * Add time beacons and power-saving modes for the DCF to investigate the trade-off between power-saving and system performance. Glossary This section provides a list of acronyms used in this thesis. AP - Access Point BSA - Basic Service Area BSS - Basic Service Set CF - Contention Free CSMA/CA - Carrier Sense Multiple Access with Collision Avoidance CTS - Clear-To-Send (frame) DCF - Distributed Coordination Function DIFS - Distributed Inter-Frame Space DS - Distribution System DSM - - Distribution System Medium DSS - Distribution System Services ESA - Extended Service Area ESS - Extended Service Set MPDU - MAC Protocol Data Unit NAV - Network Allocation Vector PC - Point Coordinator PCF - Point Coordination Function PHY - Physical PIFS - Priority Inter-Frame Space PSNP - Power Save Non-Polling (mode) PSP - Power Save Polling (mode) RTS - Ready-To-Send (frame) SIFS - Short Inter-Frame Space SS - Station Services STA - Station WMAC - Wireless Medium Access Control WM - Wireless Medium 110 References [1] N. Baran, "The Greatest Show on Earth, " Byte Magazine, vol. 20, no. 7, pp. 69-86, July 1995. [2] D. E. Comer, Internetworking with TCP/IP, volume I. Prentice Hall, Englewood Cliffs, NJ, 2nd Edition, 1991. ISBN 0-13-468505-9. [3] A. S. Tanenbaum, Computer Networks. Prentice Hall, Englewood Cliffs, NJ, 2nd Edition, 1988. ISBN 0-13-166836-6. [4] U. D. Black, Data Communications and Distributed Networks. Prentice Hall, Englewood Cliffs, NJ, 3rd Edition, 1993. ISBN 0-13-090853-3. [5] D. Bertsekas, and R. Gallager, Data Networks. Prentice Hall, Englewood Cliffs, NJ, 2nd Edition, 1992. ISBN 0-13-201674-5. [6] W. R. Stevens, TCP/IP Illustrated - The Protocols. Addison-Wesley, Reading, MA, 1994. ISBN 0-201-63346-9. [7] IEEE, Piscataway, NJ, IEEE 802.11 - Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, Dec 1994. P802.11/D1. [8] K.-C. Chen, "Medium Access Control of Wireless LANs for Mobile Computing, " IEEE Network Magazine, pp. 50-63, September/October 1994. [9] International Organization for Standardization (ISO), ISO/IEC 7498-1:1994 - Information Technology - Open Systems Interconnection - Basic Reference Model: The Basic Model, 2nd Edition, 1994. [10] A. Kamas, et al., Ptolemy: The Almagest - Vol. I - TV. University of California at Berkeley, Berkeley, CA, 0.5.2 Edition, May 1995. [11] A. M. Law, and M. G. McComas, "Simulation Software for Communications Networks: The State of the Art, " IEEE Communications Magazine, vol. 32, no. 3, pp. 44-50, March 1994. Ill References 112 [12] K. S. Shanmugan, "Simulation and Implementation Tools for Signal Processing and Communication Systems, " IEEE Communications Magazine, vol. 32, no. 7, pp. 36—40, July 1994. [13] J. Buck, et al. "Ptolemy: A Platform for Heterogeneous Simulation and Prototyping." In Proc. of the 1991 European Simulation Conference, Copenhagen, Denmark, June 1991. [14] J. Buck, S. Ha, A. Lee, and D. G. Messerschmitt, "Ptolemy: A Framework for Simulating and Prototyping Heterogeneous Systems, " Int. Journal of Computer Simulation, January 1994. Special issue on "Simulation Software Development". [15] P. Coad, and J. Nicola, Object-oriented Programming. Yourdon Press Computing Series. Prentice Hall, Englewood Cliffs, NJ, 1993. ISBN 0-13-032616-X. [16] E. A. Lee, and D. G. Messerchmitt, "Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing," IEEE Transactions on Computers, vol. 36, no. 1, pp. 24-35, January 1987. [17] E. A. Lee, and D. G. Messerchmitt, "Synchronous Data Flow, " Proc. of the IEEE, vol. 75, no. 9, pp. 1235-1245, September 1987. [18] A. Kamas, et al., Vol. Ill - Ptolemy 0.5.2'Programmer's Manual. University of California at Berkeley, Berkeley, CA, 0.5.2 Edition, May 1995. [19] J. K. Ousterhout. "Tel: An Embeddable Command Language." In USENIX Conference Proceedings, pp. 133-146, January 1990. [20] J. K. Ousterhout. "An XI1 Toolkit Based on the Tel Language." In USENIX Conference Proceedings, pp. 105-115, January 1991. [21] J. B. Andersen, T. S. Rappaport, and S. Yoshida, "Propagation Measurements and Models for Wireless Communications Channels, " IEEE Communications Magazine, vol. 33, no. 1, pp. 42-49, January 1995. [22] W. Diepstraten, "Wireless Network Performance Modeling Approach, " Doc. IEEE P802.11-92/26, NCR/AT&T Network Product Group, Nieuwegein, The Netherlands, February 1992. [23] C. M. Puig, RF MAC Simulator Documentation. Apple Computer, Inc., Cupertino, CA, 0.32 Edition, July 1993. References 113 [24] J. G. Proakis, Digital Communications. McGRAW-Hill, 2nd Edition, 1989. ISBN 0-07-100269-3. [25] D. Cox, R. Murray, and A. Norris, "800MHz Attenuation Measured in and Around Suburban Houses, " AT&T Bell Laboratories Tech. J., vol. 673, no. 6, pp. 921-954, July/ August 1984. [26] M. Hata, "Empirical Formulae for Propagation Loss in Land Mobile Services, " IEEE Transactions on vehicular Technology, vol. VT-29, pp. 317-325, 1980. [27] S. Y. Seidel, and T. S. Rappaport, "914MHz Path Loss Prediction Models for Indoor Wireless Communications in Multifloored Buildings, " IEEE Transactions on Antennas and Propagation, vol. 40, no. 2, pp. 207-217, February 1992. [28] D. Molkdar, "Review on Radio Propagation Into and Within Buildings, " IEE Proceedings, PartH: Microwaves, Antennas and Propagation, vol. 138, no. 1, pp. 61-73, February 1991. [29] D. Devasirvatham, "Time Delay Spread and Signal Level Measurements of 850MHz Radio Waves in Building Environments, " IEEE Transactions on Antennas and Propagation, vol. AP-34, no. 11, pp. 1300-1308, November 1986. [30] A. Saleh, and R. Valenzuela, "A Statistical Model of Indoor Multipath Propagation, " IEEE JSAC, vol. SAC5, no. 2, pp. 138-146, February 1987. [31] W. C. Y. Lee, Mobile Cellular Telecommunications Systems. Electronic Engineering Series. McGRAW-Hill, 1990. ISBN 0-07-100790-3. [32] W. C. Y. Lee, and Y. S. Yeh, "On the Estimation of the Second-order Statistics of Log-normal Fading in Mobile Environment, " IEEE Transactions on Communications, vol. COM-22, no. 6, pp. 869, June 1974. [33] C M . Puig, "RF MAC Simulation Highlights, " Doc. IEEE P802.11-94/20, Apple Computer, Inc., Cupertino, CA, January 1994. Appendix A Derivation of the Rayleigh Fading Parameter In this appendix, Equation (4.7) in Section 4.4.4 is derived. The Rayleigh probability density function (pdf) is used as a model for short-term fading in a radio channel. With a certain signal amplitude, a, and a known mean power x0, the Rayleigh pdf, p(a), is given by: a -a /(2x0) p(a) = - • g • . (A.1) 1 2 The instantaneous signal power can be expressed as x = . Using the change of variable theorem [24] where p (x) - p (g (x)) • -^-g (x) if a = g (x) , we have: dx p(x) = j-e °. (A.2) Now, /?(JC) is exponentially distributed and-is the pdf for instantaneous pOwer with mean power XQ. In a mobile radio environment where there are path loss attenuation and shadowing effects, this mean power corresponds to the local mean power. This local mean power, x0, is given b ^ o = z ^ i ^ y ^ Equation (4.1). In simulation technique, one way to generate a random number that has a certain pdf, say p(x), is to use a uniform random number generator to generate a number uniformly distributed between 0 and 1. That number corresponds to the outcome of the cumulative distribution function (CDF), say P(y). To find the actual random number, we take the inverse of P(y). Hence, using this procedure, we must, first of all, find the CDF of (A.2) which is given by: 114 Appendix A Derivation of the Rayleigh Fading Parameter .115 y P (y) = \p (x) dx { (A-3) = 1 - e Now, solving for y given that P (y) is a uniformly distributed random number, say X, we have: y = x ° ' l n i i h t ) - ( A - 4 ) Hence, y is the received instantaneous signal power corresponding to PR in Equation (4.1), and a is given by: a = l n | i T ^ J . (A . 5 ) Q . E . D . Appendix B Software Architecture of Ptolemy In this appendix, we briefly describe the software architecture of the text-based Ptcl and graphical-based Pigi Ptolemy environments. The Ptcl environment is suitable for batch-mode simulation where the simulation task can be run without any user intervention. The Pigi environ-ment, on the other hand, is needed to design the simulation graphically so that the designer has a better view of the hierarchy of the simulation design. Moreover, it minimizes errors in connecting blocks. With Ptcl, the user can either type in commands interactively or call a command file to execute a simulation in a batch mode. Underlying the Tel interface is Ptolemy's kernel and domains. The software architecture of Pigi is more complex since the user interacts with Ptolemy's kernel and domains through a graphical user interface consisting of Tcl/Tk and Athena Widgets X-Windows toolkits. Figure B.l depicts the skeleton of Pigi where it is executed in two Unix X-Windows Kn\ irunment RPC i Tcl/Tk • * CJ O _ Athena Widgets Ptolemy Kernel o vem Ptolemy Domains ^FikT' System RPC = Remote Procedure Call Figure B.l The Software Architecture of Pigi, Ptolemy Interactive Graphical Interface. 116 Appendix B Software Architecture of Ptolemy ' 117 processes: pigiRpc and vem. The pigiRpc process is the core part of Ptolemy that contains the kernel, domains, and the Tcl/Tk user interface whereas the vem process provides a Computer-Aided Design (CAD) interface for the user to manipulate simulation blocks such as create and connect. These two processes communicate through the Remote Procedure Call (RPC) mechanism whereby, for instance, the vem can send a "Execute Simulation" command to pigiRpc for processing, and the result is sent back to vem by the RPC mechanism. In the figure, oct is a database engine that stores the schematics and layout of all connected blocks. Appendix C Estimation of the Hidden Terminal Parameter In this appendix, a method to estimate the hidden terminal parameter, Ph, is shown. Recall from Section 5.2, Ph estimates the average percent of stations that are hidden from a transmitting station. Assume that there are N stations in a network, and the matrix of unfaded rss values, as defined in Section 4.5, has been precomputed. Then, we can estimate Pn using the following pseudocode: For each STA, S*, among N stations, 1. Assume 5 to be a receiver. Search for all STAs, {T }, in TV that are reachable to S , that is, rss between S* and T* < rxs. * II * | | + 4= 2. Let the size for the set {T } be \\T ||. For each T in {T }, 2.1 Check the reachability between T* and the other ||r || - 1 members in {T*}. 2.2 Count those pairs that are not reachable. Let Cnr be this number. c * 2.3 The ratio ,, "r accounts for the fraction of hidden stations given T . \ T \ - \ C 5fc | | * | | , _ 3. Sum up all ,, "r contributions from each T and divide by \\T \\. The result is the I H - i fraction of hidden stations experienced by transmitters during a transmission to receiver S . Let this fraction be Fh(S ). , 4. Repeat 1 to 3 for all N stations. Sum up all Fn(S ) contributions from each S , divide the result by N, and, then, multiply by 100%. The final result is Ph. As an example, consider a 9-stations case in which stations are located at the vertices of a 118 Appendix C Estimation of the Hidden Terminal Parameter 119 3x3 grid, and each station is separated by 75m. The configuration is shown in Figure C. l . Let's (in m) 150 o 3 06 o9 75 o 2 o5 0 8 0 0 i 1 04 1 0 7 1 0 =.STA 0 75 150 (inm) 1-9 = STA address Figure C.l An Illustration of arranging 9 stations in a 3 x 3 grid separated by 75m. assume that if the distance between any two STAs is greater than 160m, the STAs are not reachable. Using the above procedure, we have for S* = 1, the set of reachable STAs is {T*} = {2, 3, 4, 5, 7}. Hence, = 5 . Now, from T* = 2, only STA#7 is not reachable in {T*}. Therefore, Cnr - 1, and C" r = \ . From T* = 3, only STAs 4 and 7 are not reachable in {T*}. Therefore, Cnr \\T 1-1 4 ,= 2, and pjp— = \ - Following this procedure, Fh(l) = \{\ + \ + \ + ^) = JQ - If w e repeat procedures 1 to 3 for S* = 2, Fh (2) = 1(| • 3 +1 • 2) = .1:Finally, PH = 29%. 

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0064843/manifest

Comment

Related Items