82
A Study of Performance Improvement Methods for Real-time Applications in Wireless Mesh Networks March, 2013 Sritrusta Sukaridhoto Graduate School of Natural Science and Technology (Doctor Course) Okayama University

A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

A Study of Performance Improvement Methods forReal-time Applications in Wireless Mesh Networks

March, 2013

Sritrusta Sukaridhoto

Graduate School ofNatural Science and Technology

(Doctor Course)Okayama University

Page 2: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 3: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Dissertation submitted toGraduate School of Natural Science and Technology

ofOkayama University

forpartial fulfillment of the requirements

for the degree ofDoctor of Philosophy.

Written under the supervision of

Professor Nobuo Funabiki

and co-supervised byProfessor Masaharu Hata

andProfessor Toru Nakanishi

Okayama University, March 2013.

Page 4: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 5: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

ToWhom ItMay Concern

We hereby certify that this is a typical copy of the original doctor thesis ofMr. Sritrusta Sukaridhoto.

Seal of Seal of

the Supervisor Graduate School of

Prof. Nobuo Funabiki Natural Science and Technology

Page 6: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 7: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Abstract

As a flexible and cost-efficient scalable Internet access network, we have studied architectures,protocols, and design optimizations of Wireless Internet-access Mesh NETwork (WIMNET).WIMNET is composed of multiple access point (APs) that are connected with each other bywireless links using IEEE 802.11 standards. In WIMNET, a host can be accessed to the Internetthrough multihop wireless communications between APs.

The increasing popularity of real-time applications such as IP-phones and IP-TV resultsin the strong demand for their supports in WIMNET. Unfortunately, the contention resolutionmechanism using a random backoff-time in the CSMA/CA protocol of IEEE 802.11 standardsis not sufficient for handling real-time traffics in multihop wireless communications due to thelimitation of the available bandwidth in wireless links. It may increase the network latencyunacceptably in supporting real-time traffics.

In this thesis, we propose two methods to solve the abovementioned problem, namely theFixed Backoff-time Switching (FBS) method and the TRaffic Control (TRC) method for WIM-NET. For these proposals, we review the CSMA/CA protocol and its problem in WIMNET.

Then, we propose the FBS method for the CSMA/CA protocol to improve the real-timetraffic performance in WIMNET by giving the necessary activation chances to each link. Forevaluations of the FBS method, we implement it on a well-known QualNet simulator, and verifyits effectiveness through simulations. In addition, we present an implementation design of theFBS method in the Linux kernel to show its practicality and investigate the performance in areal network.

After that, we propose the TRC method to improve the WIMNET performance by prior-itizing real-time traffics than others. This method is used together with the bandwidth usageestimation to estimate the consumed bandwidth by them. Less prioritized traffics are repeatedlydropped at the Internet gateway using the leaky bucket traffic shaping. For evaluations of theTRC method, we implement it on the QualNet simulator, and verify its effectiveness throughsimulations.

In future works, we will combine both the FBS and TRC methods together to further im-prove the performance for real-time applications in WIMNET, and will implement them onOpenFlow that is a typical platform for Software Defined Networking (SDN).

i

Page 8: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 9: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Acknowledgment

It is my great pleasure to thank those who made this thesis possible.I owe my deepest gratitude to my supervisor, Prof. Nobuo Funabiki, who has supported me

throughout my thesis with his patience and knowledge. I am greatly indebted to him, whose en-couragement, advice, and support from the beginning enabled me to develop an understandingof the subject, not only in scientific but also in life. He gave me a wonderful advice, comments,and guidance when writing papers and presenting them.

I am heartily thankful to my co-supervisors, Prof. Masaharu Hata and Prof. Toru Nakanishi,for their continuous supports, guidance, and proofreading of this work.

I would like to acknowledge the Ministry of Education, Culture, Sports, Science and Tech-nology of Japan (MEXT) for financially supporting my doctoral course study in Okayama Uni-versity.

I would like to thank to Ir. Dadet Pramadihanto, M.Eng., Ph.D. and the people in ElectricalEngineering Polytechnic Institute Surabaya (EEPIS) to support my leave to study here with theDIKTI scholarship.

I would like to thank for the helpful discussions from many people, a non-exhaustive listincludes: Prof. Shigeto Tajima, Prof. Kan Watanabe, Ezharul Islam MD., Chen Chew, ZheWang, Junki Shimizu, Daiki Ikeda, and Junanto Sani Saputra.

I would also like to thank to all FUNABIKI Lab’s members. They are my wonderful friends.I am eternally grateful to my wife Rizqi Putri Nourma Budiarti, my kids, my mother, and

my parents in law. They always encourage me and support the spirit either in an atmosphere ofhappiness or sadness.

Lastly, I am eternally grateful to my deceased father who always encouraged and supportedme during his life.

iii

Page 10: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 11: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

List of Publications

Journal1. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, Kan Watanabe, and Shigeto

Tajima, ”A fixed backoff-time switching method for CSMA/CA protocol in wireless meshnetworks,” to appear in IEICE Transactions on Communications, vol. E96-B, no. 4, April2013.

International Conference Proceeding

2. Sritrusta Sukaridhoto, Nobuo Funabiki, and Toru Nakanishi, ”A proposal of a trafficcontrol method with consumed bandwidth estimation for real-time applications in wire-less mesh networks,” The 15th IEEE Symposium on Consumer Electronics (ISCE2011),June 2011.

3. Nobuo Funabiki, Sritrusta Sukaridhoto, Zhe Wang, Toru Nakanishi, Kan Watanabe, andShigeto Tajima, ”An implementation of fixed backoff-time switching method on IEEE802.11 MAC protocol for wireless Internet-access mesh network,” The 2011 InternationalWorkshop on Smart Info-Media System in Asia (SISA 2011), pp. 67-72, October 2011.

4. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, and Kan Watanabe, ”A pro-posal of CSMA fixed backoff-time switching protocol and its implementation on QualNetsimulator for wireless mesh networks,” The Eighth International Workshop on Heteroge-neous Wireless Networks (HWISE 2012), pp. 520-525, March 2012.

Other Papers

5. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, and Dadet Pramadihanto, ”Acomparative study of open source softwares for virtualization with streaming server appli-cations,” The 13th IEEE International Symposium on Consumer Electronics (ISCE2009),pp. 577-581, May 2009.

6. Sritrusta Sukaridhoto, Nobuo Funabiki, and Toru Nakanishi ”A proposal of a trafficcontrol method with bandwidth usage estimation for real-time applications in wirelessmesh networks,” Technical Report of IEICE, NS2010-109, pp. 25-30, December 2010.

v

Page 12: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

7. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, Kan Watanabe, and ShigetoTajima, ”An implementation and evaluation of fixed backoff-time switching method onQualNet for wireless mesh networks,” Technical Report of IEICE, NS2011-49, pp. 33-38,June 2011.

8. Nobuo Funabiki, Sritrusta Sukaridhoto, Masaharu Hata, Shigeru Tomisato, Toru Nakan-ishi, Kan Watanabe, and Shigeto Tajima, ”A smart access-point selection algorithm forscalable wireless mesh networks,” IAENG International Journal of Computer Science,vol. 38, no.3, pp. 260-267, Sep. 2011.

9. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, Kan Watanabe, and ShigetoTajima, ”An Idea of Linux Implementation of Fixed Backoff-time Switching Methodfor Wireless Mesh Networks,” 2012 IEICE Society Conference, BS-5-29, pp. 82-83,September 2012.

10. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, Kan Watanabe, and ShigetoTajima, ”A Linux implementation design of fixed backoff-time switching method forwireless mesh networks,” Technical Report of IEICE, NS2012-67, pp. 83-88, Septem-ber 2012.

11. Sritrusta Sukaridhoto, Nobuo Funabiki, Toru Nakanishi, and Kan Watanabe, A designfor OpenFlow implementation of fixed backoff-time switching method in wireless meshnetworks, to appear in 2013 IEICE General Conference.

vi

Page 13: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

List of Figures

1.1 Outline of WIMNET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2.1 Types of wireless mesh networks. . . . . . . . . . . . . . . . . . . . . . . . . 62.2 WMN generations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.3 Leaky and Token Buckets algorithms. . . . . . . . . . . . . . . . . . . . . . . 102.4 QualNet Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.5 QualNet Protocol Stack. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.6 Linux kernel interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.7 Linux wireless kernel structure. . . . . . . . . . . . . . . . . . . . . . . . . . . 182.8 Structure of mac80211. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.9 ONF architecture for Software Defined Networks. . . . . . . . . . . . . . . . . 212.10 Architecture of an OpenFlow switch. . . . . . . . . . . . . . . . . . . . . . . . 22

3.1 Timing chart for data frame transmission. . . . . . . . . . . . . . . . . . . . . 233.2 Simulated network topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.3 Throughput for CBR (CSMA, 802.11e, Minooei, FBS). . . . . . . . . . . . . . 323.4 Number of successful and failed link activations for CBR (CSMA, 802.11e,

Minooei, FBS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.5 Packet loss probability for CBR (CSMA, 802.11e, Minooei, FBS). . . . . . . . 343.6 Throughput for TCP (CSMA, 802.11e, Minooei, FBS). . . . . . . . . . . . . . 353.7 Packet loss probability for mixture of CBR and FTP (CSMA, 802.11e, Minooei,

FBS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.8 Packet loss probability for mixture of CBR and FTP with leaky bucket traffic

shaping (CSMA, 802.11e, Minooei, FBS). . . . . . . . . . . . . . . . . . . . . 37

4.1 Data Flow for FBS Method in Linux Implementation. . . . . . . . . . . . . . . 39

5.1 Flowchart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.2 Example topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475.3 Leaky bucket operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.4 Tree Topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.5 Line Topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495.6 Throughput with single client for bandwidth threshold. . . . . . . . . . . . . . 505.7 Throughput with three clients in tree topology for bandwidth threshold. . . . . 515.8 Throughput with three clients in line topology for bandwidth threshold. . . . . 525.9 Throughput with six clients in tree topology for bandwidth threshold. . . . . . 525.10 Throughput with six clients in line topology for bandwidth threshold. . . . . . 535.11 Throughput for. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545.12 Throughput with real-time application only for TRC analysis. . . . . . . . . . . 54

vii

Page 14: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

5.13 Throughput with both real-time and best-effort applications for TRC analysis. . 55

viii

Page 15: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

List of Tables

2.1 Access Categories for WMM . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.1 Simulation environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

ix

Page 16: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 17: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Contents

Abstract i

Acknowledgment iii

List of Publications v

List of Figures viii

List of Tables ix

1 Introduction 1

2 Background Technology 52.1 Wireless Mesh Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.2 Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.1.3 Classification of Wireless Mesh Networks . . . . . . . . . . . . . . . . 62.1.4 Media Access Control (MAC) Protocol . . . . . . . . . . . . . . . . . 72.1.5 Features and Challenges . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 Quality of Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2.1 QoS Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2.2 Traffic Shaping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2.3 Leaky and Token Buckets . . . . . . . . . . . . . . . . . . . . . . . . 102.2.4 Wi-Fi Multimedia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 QualNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3.1 QualNet Features and Benefits . . . . . . . . . . . . . . . . . . . . . . 122.3.2 QualNet Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3.3 Scenario-based Network Simulation . . . . . . . . . . . . . . . . . . . 142.3.4 QualNet Protocol Stack . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.4 Linux Wireless Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.1 Linux Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.2 Evolution of Linux Wireless Drivers . . . . . . . . . . . . . . . . . . . 172.4.3 Control Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.4 Other Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5 Software Defined Networking . . . . . . . . . . . . . . . . . . . . . . . . . . 202.5.1 Introduction to Software Defined Networks . . . . . . . . . . . . . . . 202.5.2 Architecture of Software Defined Networks . . . . . . . . . . . . . . . 202.5.3 OpenFlow Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

xi

Page 18: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

3 Proposal of Fixed Backoff-time Switching Method 233.1 Review of CSMA/CA Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2 Related Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3 Overview of FBS Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.4 Two Link Activation Rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4.1 Target Link Activation Rate . . . . . . . . . . . . . . . . . . . . . . . 263.4.2 Actual Link Activation Rate . . . . . . . . . . . . . . . . . . . . . . . 26

3.5 Fixed Backoff-time Switching . . . . . . . . . . . . . . . . . . . . . . . . . . 273.5.1 Active/Passive Backoff-time . . . . . . . . . . . . . . . . . . . . . . . 273.5.2 Backoff-time Switching at Link Activation Chance . . . . . . . . . . . 28

3.6 Implementation on QualNet . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.6.1 Modified Functions in QualNet . . . . . . . . . . . . . . . . . . . . . 283.6.2 Target Link Activation Rate . . . . . . . . . . . . . . . . . . . . . . . 283.6.3 Actual Link Activation Rate . . . . . . . . . . . . . . . . . . . . . . . 29

3.7 Evaluation by Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.7.1 Simulation Environment . . . . . . . . . . . . . . . . . . . . . . . . . 293.7.2 Evaluation for Real-time Application . . . . . . . . . . . . . . . . . . 31

3.7.2.1 Throughput . . . . . . . . . . . . . . . . . . . . . . . . . . 313.7.2.2 Successful/Failed Link Activations . . . . . . . . . . . . . . 313.7.2.3 Packet Loss . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.7.3 Evaluation for TCP Application . . . . . . . . . . . . . . . . . . . . . 323.7.4 Evaluation for Mixture of Real-time and TCP Applications . . . . . . . 333.7.5 Evaluation with Leaky Bucket Traffic Shaping . . . . . . . . . . . . . 343.7.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4 Linux Implementation Design of Fixed Backoff-time Switching Method 394.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.2 Kernel Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.3 Debugfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.4 Minstrel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.5 Modification of iw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.6 FBSdaemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5 Proposal of Traffic Control Method 455.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.2 Related Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.3 Overview of Traffic Control Method . . . . . . . . . . . . . . . . . . . . . . . 465.4 Two Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.4.1 Consumed Bandwidth Estimation Module . . . . . . . . . . . . . . . . 475.4.2 Drop Control Module . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.5 Evaluation by Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.5.1 Simulation Environment . . . . . . . . . . . . . . . . . . . . . . . . . 485.5.2 Bandwidth Threshold Measurement . . . . . . . . . . . . . . . . . . . 49

5.5.2.1 Single Client . . . . . . . . . . . . . . . . . . . . . . . . . . 495.5.2.2 Three Clients . . . . . . . . . . . . . . . . . . . . . . . . . 495.5.2.3 Six Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.5.3 Traffic Control Method Analysis . . . . . . . . . . . . . . . . . . . . . 50

xii

Page 19: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

5.5.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

6 Conclusion 57

Bibliography 59

xiii

Page 20: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 21: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 1

Introduction

Recently, the wireless mesh network has recently been studied as a promising technology toprovide a flexible and cost-efficient solution for a scalable wireless network. It can expand thecommunication service area by distributing wireless mesh routers on a network field [1, 2, 3].These mesh routers are connected with each other through multihop wireless communicationlinks using IEEE 802.11 standards, in addition to wireless links between client hosts and routersin conventional wireless networks.

As a scalable Internet access network based on this technology, we studied architectures,protocols, and design optimizations of the Wireless Internet access Mesh NETwork (WIMNET)[3]. For its simple architecture, WIMNET is composed of only access points (APs) as meshrouters. Figure 1.1 illustrates the outline of WIMNET. In WIMNET, at least one AP acts asa Gate Way (GW) to the Internet. Any host can be accessed to the Internet through multihopcommunications between APs and the GW after establishing an association with one neighborAP.

Figure 1.1: Outline of WIMNET.

Like conventional wireless networks, WIMNET adopts the CSMA/CA (Carrier Sense Multi-ple Access with Collision Avoidance) protocol in the IEEE 802.11 MAC (Media Access Control)standard for the shared communication media access to resolve contentions among interferedwireless links [4]. In this CSMA/CA protocol, any wireless node holding a transmission packetis on standby for a random time called the backoff-time before starting the data frame trans-mission, to avoid frame collisions among contending nodes while providing their fairness. At

1

Page 22: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

each transmission chance, a random value within a size called the Contention Window (CW)is selected for the backoff-time. When a node fails at a transmission, the CW size is doubledto reduce the probability of the collision occurrence in the retransmission, which is called thebinary exponential backoff. When the node succeeds at a transmission, it resets the CW size tothe initial one.

Unfortunately, this conventional CSMA/CA protocol is not sufficient for multihop commu-nications in WIMNET. Firstly, heavy congestions of links around the GW can be bottlenecksfor all WIMNET communications, because these links have to handle a lot of packets to/fromthe GW for the Internet access. Thus, they should be activated with higher priorities than otherlinks. Secondly, interferences among these congested links may not be resolved by a randombackoff-time in the CSMA/CA protocol because of the limited CW size. Here, we note thatthe initial CW size is small, and even the maximum CW size is limited. Then, multiple con-flicting links can be activated simultaneously by generating the same or similar backoff-timesat their transmitting nodes. As a result, no link can complete packet transmission successfully,and needs a retransmission that may cause further conflicts. Hence, using the conventionalCSMA/CA protocol, WIMNET can cause a lot of packet losses and intolerable delays, whichcannot afford real-time applications such as IP-phones and IP-TVs, although their popularityhas been increased with the advancement of digital communication technologies.

In this thesis, we propose two methods to solve the abovementioned problems, namelythe Fixed Backoff-time Switching (FBS) method and the TRaffic Control (TRC) method, forWIMNET. The first method is designed to solve these problems directly by controlling prioritiesof link activations on the MAC layer using the CSMA/CA protocol. The second method isdesigned to do so by controlling less important traffics at the GW.

In the FBS method, the two constant parameters, namely the active backoff-time and thepassive backoff-time, must be assigned to every link before starting communications when thetopology is changed. Here, the link activation means that the transmitting node of the corre-sponding wireless link sends out a signal for a frame transmission. The active backoff-timerepresents a shorter waiting time for the link to be activated preferentially when it holds packetsfor transmissions. The passive backoff-time represents a longer waiting time for the link to beactivated only if the contending links using the active backoff-time are not activated, where alarger value than any active backoff-time is used. Besides, for any backoff-time of any link,a different value is assigned from each other to avoid simultaneous link activations as best aspossible, and the magnitude follows the descending order of expected traffic loads of links sothat congested links can be activated more frequently. During communications, the target linkactivation rate and the actual link activation rate are calculated at every link activation chance.The former one represents the required rate of activating the corresponding link to handle itstraffics properly, and is calculated from the required total bit rate of the link, the average framesize, and the transmission error rate. The latter one represents the rate of actually activating thecorresponding link, and is calculated by counting the numbers of link activation chances andactually activated times for each link. If the actual link activation rate is smaller than the tar-get activation rate, the active backoff-time is selected for the preferential activation of the link.Otherwise, the passive backoff-time is selected. Because different values are assigned to them,contentions among interfered links are expected to be resolved.

For evaluations, we implement the FBS method on a well-known network simulator Qual-Net [5]. QualNet adopts a more realistic physical model than other network simulators such asns-2 [6]. Before implementing the proposal on hardware, evaluations on such a realistic net-work simulator are significant to refine the details. Using QualNet, we verify the effectiveness

2

Page 23: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

of the FBS method through simulations in three network topologies with four scenarios.Then, we design an implementation of the FBS method on a Linux kernel so that the per-

formance can be evaluated in a real network. As an open source operating system, Linux hasbeen used as a platform to implement new protocols, methods, and devices for advancementsof wireless networks including wireless mesh networks [7]-[10]. Our Linux implementationdesign consists of implementations or modifications of the five programs: Kernel configuration,Debugfs, Minstrel, iw, and FBSdaemon.

In the TRC method, only the prioritized traffics are serviced in WIMNET to improve thereal-time traffic performance, if the available bandwidth is not sufficient to afford all the com-munication requests. The TRC method is used together with the bandwidth usage estimationin order to estimate the consumed bandwidth by the requests. Less prioritized traffics are re-peatedly dropped at the GW using the leaky bucket traffic shaping. For evaluations of the TRCmethod, we implement it on the QualNet simulator, and verify its effectiveness through simula-tions in two topologies.

The remaining part of this thesis is organized as follows.Chapter 2 briefly overviews terminologies, features, challenges, and problems in wireless

mesh networks including WIMNET. Besides, this chapter introduces the Quality of Service(QoS), QualNet, Linux Wireless Networking and Software Defined Networking as backgroundtechnologies for this thesis.

Chapter 3 describes our proposal of the FBS method in WIMNET as the main contributionof this thesis. Then, this chapter presents the QualNet implementation of the FBS method, andshow simulation results using it for evaluations.

Chapter 4 presents our design for the Linux implementation of the FBS method.Chapter 5 describes our proposal of the TRC method with the consumed bandwidth estima-

tion to afford the prioritized real-time applications in WIMNET. Then, this chapter presents theQualNet implementation of the TRC method, and show simulation results using it for evalua-tions.

Finally, Chapter 6 concludes this thesis with some future works.

3

Page 24: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 25: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 2

Background Technology

In this section we briefly introduce four technologies as backgrounds for this thesis. First, weoverview the Wireless Mesh Network (WMN). Then, we discuss Quality of Service (QoS) forcomputer networks. Also, we introduce the network simulator QualNet adopted for simulationsin this thesis. Finally, we give the information of the Linux Wireless Networking that is necessaryfor Linux implementations of our proposals.

2.1 Wireless Mesh NetworksIn this section, we first introduce the basic terminology related to the wireless mesh network(WMN). Then, we discuss typical usage scenarios, network types, some characteristics, andchallenges of the WMN.

2.1.1 TerminologyAccording to the IEEE 802.11s draft standard [11], a WMN can comprise the four types ofnodes: Mesh Stations, Mesh Access Points, Mesh Portals, and Stations. A Mesh Station (MSTA)is a node to support mesh networking services in a WMN in addition to the functions of a legacyclient Station (STA). An MSTA implements the protocols for managements and operations of aWMN. In particular, MSTAs can forward packets through wireless communication links. If anode provides only access services to a STA, it is called a Mesh Access Point (MAP). Since theassociation procedure is identical to the association with a normal access point, accessing theWMN via a MAP is transparent for STAs. A Mesh Portal (MPP) is a node that is connected toother WMNs and the Internet. An MPP serves as an entry point for MAC Service Data Units(MSDUs). MSDU is the unit for data transmissions used at the MAC layer, which is receivedfrom the upper layer. The portal is the logical point where MSDUs from non-802.11 LANs canenter into the WMN.

Because every WMN does not follow the IEEE 802.11s, other terms can be found in liter-ature including this thesis. For example, an MSTA and a MAP are sometimes called a meshrouter and a mesh relay respectively. The connection between a WMN and a wired networkincluding the Internet is realized in a mesh portal or a mesh gateway [1].

5

Page 26: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

2.1.2 Usage ScenariosDue to the flexible structure, WMNs have a wide range of application scenarios. Some of themare discussed as follows:

• Community network: local authorities such as cities or communities operate WMNs toprovide Internet access to their citizens or tourists. Access to community networks canbe free of charge or at very low costs.

• Hot-spot extension: hot-spot operators can extend existing hot-spot infrastructures.

• Home networks: WMNs are used in private homes for distributions of the Internet accessservice and multi-media contents. Particularly, it is useful when the Internet access ser-vice has to be distributed over several rooms, oors, or garden areas, as it can solve theaccess point positioning problem easily.

• Public security: closed-circuit television (CCTV) systems can be connected via WMNsin a region. Due to the easy deployment of WMNs, temporary installations of CCTVbecome possible.

• Building automation: WMNs can be suitable networks for connecting the sensors andactuators for the building automation, especially if no cable infrastructure is present ordeploying cables is impossible due to a preservation order in a building.

• Disaster recovery: after natural disasters such as earthquakes or ooding, WMNs can bequickly deployed to replace damaged voice/data networks, and to help the coordinationof rescue teams.

2.1.3 Classification of Wireless Mesh Networks

(a) Backbone/Infrastructure WMN (b) Client WMN

Figure 2.1: Types of wireless mesh networks.

There are several types for WMNs as depicted in Figure 2.1 [1]:

6

Page 27: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

• Infrastructure/Backbone WMN: MSTAs and MAPs form a meshed wireless network thatserves as a backbone for STAs. The STAs connect to MAPs via some standards such asthe IEEE 802.11, but do not implement mesh networking services. Mesh portals can actas gateways to wired networks and wireless networks using other technologies such asthe IEEE 802.16 or LTE.

• Client WMN: MSTAs form a mesh network where no MAPs are involved. In this scenario,an MSTA is typically mobile and subject to the energy constraint, which is normally notthe case for MAPs in a backbone WMN. Therefore, the requirements for client WMNsare different from those for infrastructure WMNs.

• Hybrid WMN: Backbone WMN and Client WMN are mixed here.

In addition, several other types of wireless networks exist, where they have some common-alities with WMNs. A Mobile Ad-hoc Network (MANET) is a wireless multi-hop network thatis typically formed by mobile clients. A MANET can be seen as a kind of a client WMN. Theterm ad-hoc network is sometimes also used as a legacy IEEE 802.11 ad-hoc network, wherea STA forwards packets to its adjacent STAs wirelessly, not to distant STAs through multiplehops. A Wireless Sensor Network (WSN) can use multihop transmissions that are similar to aWMN, where it is usually much more restricted in terms of power consumptions and processingpowers.

Figure 2.2: WMN generations.

Furthermore, a WMN can be classied by the number of radios and channels used, as depictedin Figure 2.2. A radio refers to a wireless network interface card in a node, and a channel refersto a wireless communication channel or frequency. In the first generation of a WMN, each nodemay have only one radio (single-radio mesh). Then, in the second generation, each node mayuse one dedicated wireless radio for the client access and another for the data forwarding. Inthe third generation, each node can forward data using multiple radios (multi-radio mesh).

2.1.4 Media Access Control (MAC) ProtocolCurrently, a WMN predominately uses Media Access Control (MAC) protocols based on Car-rier Sense Multiple Access Collision Avoidance (CSMA/CA). Therefore, we focus our discus-

7

Page 28: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

sions on CSMA/CA-based protocols. The CSMA/CA protocol belongs to the class of listen-before-talking protocols. Before a node transmits a packet, it listens to the wireless channel,which is called the carrier sense, to detect ongoing transmissions. Only if the wireless channelor medium is idle, a node transmits packets.

A prominent implementation of the CSMA/CA-based MAC protocol is the Distributed Co-ordination Function (DCF), which is the default MAC protocol for IEEE 802.11 standards. TheDCF implements two modes of operations. First, in the basic mode, a station transmits aftera backoff. If the transmission is successful, the receiver waits for a constant time called ShortInterframe Space (SIFS) and answers to the sender with an acknowledgement (ACK). If the dataframe or the ACK has not been received correctly, the sender triggers a retry after a backoffprocedure when the timer expires there. Then, in another mode, each transmission starts witha request-to-send (RTS) and clear-to-send (CTS) handshake to virtually reserve the medium.These control packets can improve the performance in the single-hop case, because data pack-ets are usually much larger than RTS-CTS control packets and thus, become more affected bycollisions.

The backoff procedure is identical in both modes of operations and works. Initially, a sta-tion chooses a backoff counter randomly and uniformly from [0,W0 − 1], where W0 = CWmin

represents the initial contention window (CW) size. After the channel is idle during a slot oflength σ, the backoff counter is decremented by 1. When the channel is busy, the countdown isfrozen, until the channel becomes idle again for a period of another constant time called DCFInterframe Space (DIFS). When the countdown reaches 0, the station attempts to transmit apacket. Every time a transmission fails, the station selects a new counter value from [0, min(Wi

- 1, CWmax)], where i denotes the transmission retry counter and Wi = 2iW0.CWmin, CWmax, and DIFS are actually configurable parameters. The Enhanced Distributed

Channel Access (EDCA) is an improved variant of the DCF. The EDCA allows different valuesfor CWmin, CWmax and DIFS depending on the traffic type. Thereby, the channel access of onetraffic class called the access class can be prioritized over second classes. In addition, the EDCAintroduces the concept of the Transmission Opportunity (TXOP). A TXOP is a time interval,which is specified by its length T XOPlimit, where a node may transmit several packets with theseparation time of S IFS without contending for the medium. The TXOP can be configured foreach access class individually. The EDCA is mandatory in the IEEE 802.11s compliant devices.

2.1.5 Features and ChallengesA WMN may differ from a normal LAN or WLAN in many aspects. This difference bringsalong new features and challenges in the design of protocols for the WMN, and requires newsolutions. In this subsection, we discuss some of them.

Usually, a WMN is operated in unlicensed bands, including the ISM band at 2.4 GHz orthe U-NII band at 5 GHz. In these frequency bands, strong fluctuations in the link quality dueto external interference are common. Another feature of a WMN is the multi-hop communi-cation paradigm, which requires the special attention. The increase of wireless links or hopsbetween the sender and the receiver degrades the available bandwidth. When compared to awired network, the throughput of a WMN is typically much lower.

An important requirement in a WMN protocol is the scalability, where it can operate ef-ficiently WMN with a few nodes as well as with hundreds of nodes. A distributed algorithmusually has the better scaling property than a centralized one, and thus, is preferably used ina WMN. An important challenge in the design of a WMN is to ensure the interoperability. A

8

Page 29: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

WMN can comprise a variety of radio technologies, hardware platforms, and protocols. As aresult, providing real-time application services such as streaming video or VoIP, which havestrict Quality of Service (QoS) requirements, becomes very hard in a WMN.

In this thesis, a simple form of a WMN called Wireless Internet-access Mesh NETwork(WIMNET) is studied. WIMNET is based on the IEEE 802.11 standard, and is composed ofaccess points. WIMNET is designed to provide a scalable Internet access network flexibly andcost-efficiently.

2.2 Quality of ServiceThe quality of service (QoS) is defined as the provision of a special treatment to some specialtraffic as compared to other traffics in a network. The QoS is the differentiation between differentflows or different flow aggregates in the network, which means the decision for who will getgood service and who will not.

The Internet was designed to provide the best-effort delivery service where every networktraffic is treated as equal. As the network traffic grows, congestions frequently occur, and thedelivery of packets becomes slow. Due to the tremendous traffic increase, specially by the ad-vancement of multimedia traffic over the Internet, the current Internet Protocol and its serviceshave become inadequate. To overcome this problem, an issue of the QoS has been greatly dis-cussed. In the QoS, several performance metrics such as the throughput, the packet loss, thelatency, and the jitter are considered.

2.2.1 QoS ModelsThe Internet Engineering Task Force (IETF) has proposed and recommended two models forthe QoS:

• Integrated Service ArchitectureThe integration service architecture mainly focuses on the resource reservation along thepath from the source to the destination. Different protocols for this reservation have beendeveloped including RSVP, RTP, and RTCP.

• Differentiated Service ArchitectureThe differentiated service architecture mainly focuses on the traffic scheduling along thepath from the source to the destination. Models under this architecture include the trafficshaping, the scheduling, the policing, the labeling, and the dropping mechanism.

2.2.2 Traffic ShapingBefore a network makes the QoS commitment, it must know which traffic should be guaranteed.Unfortunately, the traffic in a network is bursty. It typically arrives at non-uniform rates sincethe traffic rate can vary by compressions. The burst traffic is more difficult to handle than theconstant-rate traffic, because it can fill buffers and cause packets to be lost.

The traffic shaping is a technique for regulating the average rate and the burst of a dataflow that enters the network. The goal of the traffic shaping is to allow applications to transmita wide variety of traffic including some bursts. It has a simple and useful way to describe thepossible traffic patterns to the network. The traffic shaping can reduce congestions and thus,

9

Page 30: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

helps the network live up to its promise. To make it work, there is another issue of how theprovider can tell to users, even if they follow the policy. In the traffic shaping, to monitor atraffic flow is called the traffic policing.

The traffic shaping is of great importance for real-time traffic, such as audio and videoconnections, because they have the stringent QoS requirements.

2.2.3 Leaky and Token BucketsThe leaky bucket and token bucket algorithms are both ways to achieve the good QoS. The for-mulations are slightly different between them. However, both methods give equivalent results.

(a) Shaping packets (b) A leaky bucket (c) A token bucket

Figure 2.3: Leaky and Token Buckets algorithms.

When a router receives packets from a host at the interface, they will be checked by theleaky or token bucket algorithm. Then, the router will forward these packets with the rate Rspecified by the algorithm as shown in Figure 2.3a.

Figure 2.3b illustrates the outline of the leaky bucket algorithm. It regulates the maximumnumber of packets or bytes per unit time as R. When the bucket size B is full, incoming packetsare discarded. When all the packets have the same size as in the asynchronous transfer mode(ATM), this algorithm can be used as it is. When the packet size is varied, the fixed number ofbytes per tick is often better to be used.

Figure 2.3c illustrates the outline of the token bucket algorithm. It allows the output rateR to speed up to a certain maximum when a large burst arrives from a host. Tokens are used toaccumulate rights to send packets or bytes. When this algorithm is used, packets are less likelyto be discarded than the leaky bucket algorithm. In this thesis, we used both the leaky bucketand token bucket algorithms for the TRC method.

2.2.4 Wi-Fi MultimediaThe Wi-Fi Multimedia (WMM) [12] is an enhancement to the MAC layer to add the QoS func-tionality to Wi-Fi networks. The WMM is an extension to the legacy CSMA/CA-based DCFmechanism that gives the same priority to all the devices, and it is based on the best-effortlisten-before-talk algorithm. In the WMM, each client waits for a random backoff time, andthen, transmits only if no other device is transmitting at that time. This collision avoidancemechanism can give the same opportunity for packet transmissions to all the devices. However,

10

Page 31: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

under a high traffic demand condition, a network becomes overloaded, and the performance ofevery device is equally affected.

The WMM using the IEEE 802.11e can enhance the DCF and PCF through a new coor-dination function called the Hybrid Coordination Function (HCF). Within the HCF, there aretwo channel access methods, which are similar to those defined in the legacy 802.11 MAC,called the HCF Controlled Channel Access (HCCA) and the Enhanced Distributed ChannelAccess (EDCA). Both the EDCA and the HCCA define the Traffic Categories (TCs). For ex-ample, Electric mails could be assigned to a low priority class, and Voice-over-Wireless-LAN(VoWLAN) could be assigned to a high priority class, because of their traffic natures.

The EDCA introduces the traffic prioritization capability using the Access Category (AC) asshown in Table 2.1, to address the DCFs inadequacy to support multimedia applications. Thehigher AC represents the higher probability to transmit packets. The primary purpose of theEDCA is to protect the high priority data from the low priority data. Even in the same class,some data can be protected from other data in the class.

Table 2.1: Access Categories for WMM

Priority AC CWmin CWmax AIFSN- Legacy DCF 31 1023 2Low Background (AC BK) 15 1023 7

Best Effort (AC BE) 15 1023 3Video (AC VI) 7 15 2

High Voice (AC VO) 3 7 2

2.3 QualNetQualNet [5] is a network simulator that mimics the behaviors of a real network. Networksimulations using a network simulator is a cost-effective method in developing early stages ofprotocols for network centric systems. A user of a simulator can evaluate the basic behaviorof a network, and can test combinations of network features and parameters that are likely towork. QualNet provides a comprehensive environment for designing a new protocol, creatingand animating a variety of network scenarios, and analyzing the performance.

QualNet is composed of the following tools:

• QualNet Architect: a graphical experiment design and visualization tool. Architect hastwo modes: the design mode for designing experiments, and the visualize mode for run-ning and visualizing experiments.

• QualNet Analyzer: a graphical statistics analyzing tool.

• QualNet Packet Tracer: a graphical tool to display and analyze packet traces.

• QualNet File Editor: a text editing tool.

• QualNet Command Line Interface: command line access to the simulator.

11

Page 32: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

2.3.1 QualNet Features and BenefitsActually, QualNet is a comprehensive suite of tools for modeling large wired and wirelessnetworks. Through simulations, it can predict the behavior and the performance of a networkto improve the design, the operation, and the management.

QualNet enables users to:

• To design new protocol models,

• To optimize new and existing models,

• To design large wired and wireless networks using pre-configured or user-designed mod-els, and

• To analyze the performance of a network and allow the what-if analysis to optimize them.

Key features of QualNet for creating a virtual network environment are described as follows:

• SpeedQualNet can support real-time speeds to enable the software-in-the-loop, the networkemulation, and the hardware-in-the-loop modeling. A faster speed enables a model de-veloper and a network designer to run multiple what-if analyses by varying the model,the network, and traffic parameters in a short time.

• ScalabilityQualNet can model thousands of nodes by taking the advantage of the latest hardwareand parallel computing techniques. QualNet can run on cluster, multi-core, and multi-processor systems to model large networks with high fidelity.

• Model FidelityQualNet uses the highly detailed standards-based implementation of protocol models. Italso includes advanced models for wireless environments to enable more accurate mod-eling of real-world networks.

• PortabilityQualNet and its library of models run on a vast array of platforms, including Windowsand Linux operating systems, distributed and cluster parallel architectures, and both 32-and 64-bit computing platforms. A user can now develop a protocol model or design anetwork in QualNet on his/her desktop or laptop Windows computer. Then, the user cantransfer it to a powerful multi-processor Linux server to run capacity, performance, andscalability analyses.

• ExtensibilityQualNet can connect to other hardware and software applications, such as OTB, real net-works, and third party visualization software, to greatly enhance the value of the networkmodel.

12

Page 33: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 2.4: QualNet Architecture.

2.3.2 QualNet ArchitectureFigure 2.4 illustrates the QualNet architecture. High-level descriptions of the various compo-nents are given as follows:

QualNet kernelThe kernel of QualNet is implemented as a parallel discrete-event scheduler. It providesthe scalability and portability to run thousands of nodes with high-fidelity models on avariety of platforms, from laptop PCs to high performance computing systems. In thisthesis, we use QualNet APIs to develop our protocol models and interact with the kernel.

QualNet model librariesQualNet supports a number of model libraries that enable the user to design computer net-works using various protocol models. QualNet includes the Developer, Multimedia andEnterprise, and Wireless Model Libraries. Additional libraries to model cellular networks,satellite networks, UMTS, WiMAX, sensor networks, and military radio networks, andadvanced propagation model libraries are also available. In this thesis, we often modifiedmodules in Wireless Model Library to implement our proposals.

QualNet graphical user interface (GUI)QualNet GUI consists of Architect, Analyzer, Packet Tracer, and File Editor.

• Architect is a network design and visualization tool in QualNet. It has two modes:the design mode and the visualize mode.In the design mode, the user can set up terrain, channels, network connections, sub-nets, wireless nodes, and other functional parameters of network nodes. It is possibleto create network models by using intuitive, click and drag operations. Besides, it isalso possible to customize the protocol stack of any of the nodes, and to specify theapplication layer traffic and services that run on the network.In the visualize mode, the user can perform the in-depth visualization and analysisof a network scenario that was designed in the design mode. While a simulationis running on QualNet,the user can observe packet flows at various layers throughthe network and view dynamic graphs for critical performance metrics. Real-time

13

Page 34: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

statistics are also available, where the user can view dynamic graphs while a net-work scenario simulation is running.Furthermore, the user can assign jobs to run in the batch mode on a fast server, andto view the animated data later. It is possible to perform the what-if analysis bysetting a range of values for a particular protocol parameter and by comparing thenetwork performance results among different ranges.

• Analyzer is a statistical graphing tool to display hundreds of metrics collected dur-ing the simulation for a network scenario. It is possible to see pre-designed reportsor to customize graphs with their own statistics. Multi-experiment reports are alsoavailable. All of the statistics can be exported to spreadsheets in the CSV format.

• Packet Tracer provides a visual representation of the packet trace files generatedduring the simulation for a network scenario. The trace files are text files in theXML format that contain the information about packets when they move up anddown the protocol stack.

• File Editor is a text editing tool to display the contents of the selected files in thetext format and allows editing them.

QualNet command line interfaceThe QualNet command line interface enables the user to run QualNet from a commandwindow in the OS including Linux. When QualNet runs from the command line, theinputs to QualNet are given in text files that can be generated and modified using any texteditor. To build and run the scenarios using the command line interface can take the lessmemory, and usually can run faster than the case using the GUI. With the command lineinterface, we can have the flexible interface with visualization and analysis tools of ourchoice.

QualNet HLA/DIS/STK/Socket interfacesQualNet can also interact with a number of external tools in real-time.

• The HLA/DIS module, which is a part of the Standard Interfaces Model Library,allows QualNet to interact with other HLA/DIS compliant simulators and computer-generated force (CGF) tools like OTB.

• The QualNet STK interface, which is a part of the Developer Model Library, pro-vides a way to interface with the Satellite Toolkit (STK) that has been developed byAnalytical Graphics, Inc. (AGI), and the functions in a client-server environment.

• The Socket Interface, which is a part of the Standard Interfaces Model Library, pro-vides inter-process communications between QualNet and external programs overTCP sockets, where QualNet acts as the server and an external program as the client.

2.3.3 Scenario-based Network SimulationIn QualNet, a specific network topology is referred to as a scenario. A scenario specifies allthe network components and conditions where the network will operate. A scenario includesterrain details, channel propagation effects including path loss, fading, and shadowing, wiredand wireless subnets, network devices such as switches, hubs and routers, the entire protocol

14

Page 35: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

stack of a variety of standard or user-configured network components, and applications runningon the network.

The inputs to QualNet are given by several files. For the command line interface, the inputfiles are text files. The main input files for the command line interface are:

• Scenario configuration file is the primary input file for QualNet. It specifies the networkscenario and parameters for the simulation. The file usually has the extension .config.

• Node placement file is referenced by the scenario configuration file, and specifies theinitial positions of the nodes in the scenario. We note that the node placement file mayalso contain the future positions of nodes. The file usually has the extension .nodes.

• Application configuration file is referenced by the scenario configuration file, and spec-ifies the applications running on the nodes in the scenario. The file usually has the exten-sion .app.

In addition to these three files, QualNet may use other input files. These additional filesdepend on the models that are specified in the configuration file, which are referenced by theconfiguration file. In this thesis, we add custom configuration files for simulations of our pro-posals.

The primary output file generated by a QualNet simulation is a statistics file, which has theextension .stat. This file contains the various statistics collected during the simulation run.

2.3.4 QualNet Protocol StackQualNet uses a layered architecture similar to that of the TCP/IP network protocol stack. Withinthis architecture, data moves between adjacent layers. QualNet’s protocol stack, as shown inFigure 2.5. The layers consist of the application, transport, network, link (MAC), and physicallayers.

Figure 2.5: QualNet Protocol Stack.

15

Page 36: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Adjacent layers in the protocol stack can communicate with each other via well-definedAPIs. Generally, inter-layer communications occur only between adjacent layers. For exam-ple, the transport layer protocols can receive and forward data to and from the application andnetwork layer protocols, but cannot do so with the link layer protocols or the physical layerprotocols. This rule concerning communications only between adjacent layers may be circum-vented by the programmer.

In this thesis, we modified MACDOT11 wireless library files with the name mac dot11-*.cpp and mac dot11-*.h that locate in the snt/qualnet/5.0/libraries/wireless/src directory.

2.4 Linux Wireless NetworkingThe IEEE 802.11 is the de facto standard that has been used for wireless devices. This stan-dard has evolved over the last ten years, and has spawned into a number of subgroups suchas 802.11b, 802.11a, 802.11g, and 802.11n. Each subgroup is an enhancement over the basic802.11 functionality and/or performance. The newly developed standards are backward com-patible and support legacy systems. This makes it feasible for existing hardware to work withnew products.

In the case of software and hardware implementations, any software driver should be capa-ble of handling all the mandatory functions in the standard. Depending on the vendor, it mayimplement some optional functions and proprietary features. The Linux wireless kernel driversdeveloped by major vendors actually implement most of the mandatory functions, while theothers are still in development.

The modes for operations supported by any IEEE 802.11 device include the ad-hoc, infras-tructure, mesh, wireless distribution system (WDS), virtual access point (VAP), virtual inter-face, and monitor. Peer to peer connections are made in the ad-hoc mode. In this mode, eachIEEE 802.11 device communicates directly without any central coordinator such as an accesspoint (AP). In the infrastructure mode, an AP becomes the coordinator for every client. All thetraffic passes through an AP. The mesh mode is an extension of the ad-hoc mode. The salientfeature of this mode is the multi hop transmission. WDS has a bridging similar to Ethernet, andprovides repeater functionalities. VAP allows multiple virtual APs on a single hardware device.The virtual interface represents multiple logical interfaces using a single physical interface. Themonitor mode is used for passively sniffing the air interface. In the IEEE 802.11 standard, theinfrastructure and ad-hoc are defined in 802.11a/g/n, the mesh in 802.11s, and the security is in802.11i.

2.4.1 Linux KernelThe Linux kernel is an open source operating system kernel. The Linux kernel has a modulararchitecture. Most of the drivers for the peripheral hardware are built as loadable modules. Adriver is loaded when a new hardware is attached or at boot time. When any module is loaded,they export their functions to the kernel space.

The user space applications can interact with the kernel space modules through system calls.A simplified Linux kernel network stacks interaction between user applications, TCP/IP stack,network device driver, and hardware, is shown in Figure 2.6.

Insmod is a user space function to load any kernel module. Insmod calls the initializationfunction of each module. This initialization function initializes the hardware, and registers the

16

Page 37: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 2.6: Linux kernel interaction.

public functions used by other layers in the kernel network stack. Other user space tools areifconfig and iw. The function of the ifconfig command is to assign an IP address informationinto a network interface. The function of the iw command is to control the behavior of wirelesshardware properties like the association, the mode, the channel, and others.

2.4.2 Evolution of Linux Wireless DriversThe wireless driver in the Linux kernel is structured like other network device (netdev) drivers.In general, wireless devices are connected through PCI or USB interfaces. The interconnectingdriver varies based on the interface to the wireless device like PCI or USB. The network driverfor Atheros wireless hardware was initially started as an independent project, and is now a partof the Linux kernel itself.

Earlier, the network interface hardware used to handle the medium access control (MAC)and other lower layer protocols were called FullMAC. The other implementation model was thenetwork device hardware and firmware. None of them were provided by end user developers,because they did not have the access to the firmware codes.

The original open source Atheros driver was developed for FreeBSD. Then, it was portedinto Linux with the name MADWiFi. MADWiFi drivers work on the binary and open hardwareabstraction layer (HAL) and net80211. Figure 2.7a shows the MADWiFi structure. net80211,ath, HAL, and proprietary algorithms exist in the kernel space. HAL is a piece of software tohandle the access to the wireless hardware. This is different from the firmware, which loadsinto the onboard microcontroller. HAL executes in the host processor, and provides applicationprogramming interfaces (APIs) to the driver in order to access the hardware.

17

Page 38: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

(a) MADWiFi (b) Linux Kernel Stack

Figure 2.7: Linux wireless kernel structure.

The next generation network devices are shifting the MAC functionalities into software. Thesoftware MAC (SoftMAC) is loaded as a Linux kernel module. This implementation methodgives the end user developer more access to the code. The two major implementations for theIEEE 802.11 WLAN SoftMAC are net80211 [13] and mac80211 [14]. The original net80211is the IEEE 802.11 SoftMAC implementation for FreeBSD. The stack net8011 was suggestedas the generic stack for the IEEE 802.11 in the Linux kernel. However, it did not satisfy thecriteria of the real Linux kernel network stack, and was never picked.

Figure 2.7b shows the layer diagram of a WLAN driver in the Linux kernel stack and higherlayer protocols. WLAN device drivers are divided into two modules (kernel components),namely the hardware dependent module and the protocol module (SoftMAC). The hardwaredependent module is different among vendors and capabilities. The SoftMAC handles most ofthe MAC functionality with respect of the IEEE 802.11 protocol. The functions in SoftMACare used by hardware drivers amongst different vendors. In the case of WLAN, this SoftMACimplementation is known as mac80211. The hardware dependent drivers include Atheros ath9k,ath5k, and Intel iwlwifi.

2.4.3 Control PlaneIn a WLAN, the scanning, the association and the setting specific threshold values for RTS,fragmentation, and others should be initiated and controlled from the user space.

Figure 2.8 shows the modular structure of the mac80211-WLAN driver, and gives an ab-stracted view of the interaction between various layers. cfg80211 [15], mac80211, and ath9kare in the kernel space, and the applications for controls and managements are in the user space.The user space application use nl80211 [16] calls to interact with cfg80211, which in turn com-municates with mac80211. The controls are initiated from a user space application and are inturn transferred through system calls.

MADWifi driver uses wireless-extension (wext) for all the configuration and managementfunctionalities from the user level [17]. There is no intermediate layer such as cfg80211. Theconfigurations are made using system calls directly to the network device driver. The functionsof nl80211 and cfg80211 more clearly define the semantics of the commands than the wireless-extension.

A. User spaceThe user space is the network management application. Through this space, it controls

18

Page 39: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 2.8: Structure of mac80211.

and configures WLAN devices. This allows the user configuring the physical layer andthe MAC layer parameters including the security. For example, they include iw [18],wpa supplicant [19], and hostapd [20].

These tools use the nl80211-header-defined system calls to interact with cfg80211. nl80211is the new 802.11 netlink functions under developments. A number of interactions fromthe user space to mac80211 are carried out through wireless-extensions (wext) that areprimitive user control functions.

B. cfg80211This layer exists between the user space and the protocol driver (mac80211). The set ofAPIs perform the sanity check and the protocol translation to configure wireless devices.It provides functions for:

• device registration,

• regularity enforcement,

• station management,

• key management,

• mesh management,

• virtual interface management, and

• scanning

The device registration includes the band, the channel, the bit rate, the high throughput(HT) capability, and supported interface modes. The regularity enforcement ensures dur-ing the registration of cfg80211 that only the specified frequency channels permitted inthe country will be enabled. The station management enables to add, remove, modifystations, and dump station details. These functions are parts of AP capabilities.

2.4.4 Other FunctionsA. Debugfs

An in-kernel file-system is designed to help kernel developers easily export debug data to

19

Page 40: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

the user-space. The debugfs is an interactive system debugger, and can be used to examineand change the values of kernel module variables.

debugfs uses kernel functions to create a file in the in-kernel file system, and to read/writethe kernel module values in this file. The in-kernel file system is mounted to the physicalfile system in order to examine and modify the kernel module values.

B. MinstrelMinstrel is the mac80211 rate control algorithm ported over from MADWifi that supportsmultiple rate retries. Minstrel has been claimed to be one of the best rate control algo-rithms. It provides the success/failure information, the actual data rate communication,and the status of the interface.

2.5 Software Defined NetworkingIn this section we center our discussion around network architectures. We will introduce the ideaof software defined networks, which is a new design paradigm for communication networks.

2.5.1 Introduction to Software Defined NetworksThe computing industry has seen a tremendous progress over the past half century. This successcan be in large parts attributed to open computing platforms such as the Personal Computer andthe ease of writing and deploying software on those machines. Personal Computers offer anopen interface, which allows for different operating systems. The operating systems themselvesagain provide programming interfaces, which allow application programmers to write their ap-plications largely independent of the hardware. This openness has fostered innovation and hasled to the rise of the software industry.

Networking devices such as routers and switches, however, follow a different design strat-egy. In many network devices the hardware and software are tightly coupled and can only beextended by the hardware manufacturer. This design makes it hard to create new applicationson top of those networking devices. The inability to re-program networking hardware has beenrecognized and subsequently caused the development of OpenFlow [21] and the concept ofSoftware Defined Networks (SDNs).

The main idea of SDNs is to extend networking devices with standardized APIs that allow3rd-party programmers to control the flow of data through the device and the network. In addi-tion, SDNs provide higher level abstractions to network designers and programmers. Instead ofreimplementing features like topology discovery and network access control for each applica-tion, abstractions at a higher level are provided to SDN programmers. SDNs promise to reducethe complexity of networks by making many specialized protocols obsolete. By providing net-working programmers with a centralized, up-to-date view of the network, the de- velopmentof network management applications is simplified significantly. Tedious tasks such as statedistribution and synchronization are handled by a control layer provided by the SDN.

2.5.2 Architecture of Software Defined NetworksIn [22], a new architecture is proposed, in which routers and switches simply forward packetsto a decision plane, which has a network view and can specify how packets are forwarded.

20

Page 41: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

[22] can be seen as a precursor to OpenFlow and the standardization activities of the OpenNetworking Foundation (ONF). Figure 2.9 depicts the SDN architecture envisioned by the ONF[23]. According to the ONF, an SDN can be divided into an application layer, a control layerand an infrastructure layer. The infrastructure layer contains all networking devices, which canbe programmed via a control protocol such as OpenFlow. The ONF compares OpenFlow to theinstruction set of a CPU as it specifies how an external application can program the forwardinglogic of a networking device, just like a CPU instruction set allows to program a computer.SDN control software uses this API to implement networking services such as routing, accesscontrol or traffic engineering. The control layer then exposes APIs to the application layer.From the application layer perspective, the whole network appears like a large logical switch.An application on the application layer thus does not need to know about the specifics of thenetwork hardware or the protocols that are used to configure it.

Figure 2.9: ONF architecture for Software Defined Networks.

2.5.3 OpenFlow ProtocolAn OpenFlow network as shown in Figure 2.10 consists of OpenFlow switches and OpenFlowcontrollers that communicate with each other using the OpenFlow protocol. A normal switchusually has a data path and a control path. The data path is responsible for forwarding packets.For performance reasons, it is typically implemented in an Application-Specific Integrated Cir-cuit (ASIC). The ASIC uses a flow table to decide how to handle a packet, for example at whichport to output a packet with a given destina- tion MAC address. The control path is mostlyimplemented in software, often with specialized operating systems like Cisco IOS. OpenFlowswitches in addition have a small control component in the data path, which allows OpenFlowcontrollers to configure the flow-table using the OpenFlow protocol.

The main task of the OpenFlow protocol is to configure and query flow table entries, socalled rules. A rule consists of a match, an action and statistics. Matches are used to classifypackets according to packet header values and wildcards, e.g. all packets with MAC source ad-dress 02:44:11:22:44:*. Possible actions are to output a packet at a specific port, to encapsulateand forward the packet to the controller, to drop the packet, to modify header fields or to sendthe packet to the normal switch processing pipeline. The statistics field keeps byte and packet

21

Page 42: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 2.10: Architecture of an OpenFlow switch.

counters about how often a rule has been matched. When a packet arrives at the switch, the flowtable is processed sequentially, until a rule with an appropriate match is found. The action isthen executed and the statistics are updated. If no rule is found, the packet header is sent to theOpenFlow controller for further processing. There are both hardware OpenFlow switches frommanufacturers such as Juniper and HP as well as software switches for Linux available. Hard-ware switches have benefits when it comes to performance and scalability. They can forwarddata at line rate (10 GBit/s or more) and can have dozens of switch ports. In contrast, soft-ware switches can be run on cheap multi-purpose PCs or embedded hardware. With softwareswitches, such as OpenVSwitch [24], the datapath is of course implemented in software insteadof an ASIC, which often leads to lower performance when compared to hardware switches.

The OpenFlow controller hosts applications that use the OpenFlow protocol to program thenetwork. OpenFlow applications can program the network in a reactive or a proactive mode. Inthe reactive mode, the application waits until it receives a packet from a switch (which had norule for this packet). The application then decides how to handle the packet and installs a rule onthe switch. In the proactive mode, an application installs rules independent of the actual trafficin the network. Each mode has its advantages and disadvantages and which mode should beused depends on the application requirements. For example, with the reactive mode, latenciesin packet forwarding can occur, since a packet first needs to be sent to the controller, which theninstalls a rule for the packet. However, the newly installed rule usually matches all packets ofthe same data flow (e.g. TCP flow). Hence, the controller only needs to be consulted for thefirst packet of a flow. In the proactive mode, no such forwarding latencies occur, but it maybe hard to know beforehand which rules will be required later. One OpenFlow controller canserve multiple switches and one switch can connect to multiple controllers. There are severalOpenFlow controllers available, for example POX, and NOX [25].

22

Page 43: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 3

Proposal of Fixed Backoff-time SwitchingMethod

In this chapter, we propose a Fixed Backoff-time Switching (FBS) method for the CSMA/CAprotocol in WIMNET

3.1 Review of CSMA/CA ProtocolThe CSMA/CA protocol in IEEE802.11 standards allows multiple wireless nodes to use thesame physical medium or communication channel for data transmissions by detecting and/oravoiding data frame collisions among interfered links. Figure 3.1 illustrates the timing chartfor the data frame transmission on this protocol. When a channel becomes free, a transmittingnode waits for a constant DIFS period and a backoff-time that is randomly selected between0 and the CW size. During this waiting period, if the node does not detect any transmissionfrom other node, it starts the transmission. This random backoff-time is used to stagger thetransmission starting timing among ready nodes to avoid their collisions. Nevertheless, if acollision happens, the CW size is doubled as the binary exponential backoff to avoid furthercollisions, and the transmission procedure is applied again. If a transmission succeeds, the CWsize is reset to the initial one CWmin.

Figure 3.1: Timing chart for data frame transmission.

3.2 Related WorksIn [26], Xu et al. raised a question: can the IEEE 802.11 work well in wireless ad hoc networks? They concluded that the protocol was not designed for multihop networks. Although it

23

Page 44: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

can support some ad hoc network architecture, it is not intended to support wireless multihopnetworks including ad hoc networks and wireless mesh networks, because RTS/CTS exchangeswill block all the wireless nodes in the neighborhood.

In [27], Nakamura et al. examined a fixed backoff-time for wireless local area networks.Through simulations, they showed that it can improve the throughput and delay performanceby reducing collisions and idling periods. However, their method is based on the PCF scheme,whereas WIMNET is based on DCF.

In [28], Minooei et al. proposed an efficient backoff model for ad hoc networks using DCFthat modifies the backoff-time by considering the frame collision probability of each node inmultihop wireless networks. For this purpose, the backoff-time btm is given by:

btm = rand[CWmin × 2m−1,CWmin × 2m

](3.1)

where CWmin represents the initial CW size, m does the number of consecutive transmissionfailures (retry counter), and the function rand[x, y] returns a uniformly randomized integer be-tween x and y. Their simulation results show that it provides higher end-to-end throughputsthan the conventional one. We adopted this backoff-time model and modified it into our fixedbackoff-time one, where the performance is compared in Section 5. However, their methoddoes not consider the traffic feature of a wireless mesh network, where links closer to the GWneed to transmit more packets than links farer from it. Thus, our FBS method incorporates amechanism of activating each link depending on its traffic volume to be transmitted.

In [29], Wu et al. presented an improvement of the method in [28], whereas our simula-tion results show that it gives the worse performance than [28]. This reason may come fromthe longer backoff-time in [29] by adopting an additional term considering the frame collisionprobability of the node. The longer backoff-time can suppress collisions more, but prolongsidling time, which decreases the throughput. A proper backoff-time is important to resolve thetrade-off of suppressing collisions and idling time at the same time. Thus, we did not include itin the performance comparison.

In [30], Zhu et al. proposed T-MAC as an enhancement of the TDMA-like IEEE802.11eMAC protocol. Through simulations, they showed that this TDMA approach with loosely syn-chronized clocks can give a better performance. However, the implementation of clock syn-chronizations among many nodes is difficult in real devices.

In [31][32], Furukawa et al. proposed an intermittent periodic transmission method to im-prove the performance of a wireless mesh network by avoiding collisions between the interferedlinks along a routing path. To block the interference from the outside of the path, the interferedlinks are sustained during the intermittent periodic transmissions. However, this method can beeffective in a limited situation where only one communication request of transmitting packetsfrom a source to a destination appears in a wireless mesh network. When two or more interferedrequests arrive at a network at the same time, they need to be handled sequentially. Besides, theproper transmission period is hard to be set or cannot be fixed in real networks, because condi-tions of wireless links are often affected by interferences from surrounding objects. Thus, theirmethod is not suitable for realistic situations in this paper where multiple requests for real-timeapplications arrive at the same time.

In [33], Yamada et al. proposed the IEEE 802.11e EDCA (Enhanced Distributed Chan-nel Access) based congestion control method for a wireless mesh network, where the waitingtime before the backoff called AIFS (Arbitration Inter Frame Space) of a node is dynamically

24

Page 45: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

changed so that the receiving traffic and the transmitting traffic can be balanced there. Unfortu-nately, like [31][32], this method can be effective in a limited situation with only one request.

In [34][35], Kishida et al. proposed a MAC protocol to suppress collisions and improvethe fairness among the hosts associated with the same AP by assigning different initial backoff-times and the same cyclic backoff-time to them. This method assumes that every host in awireless network is associated with one AP and has the same traffic. Thus, it cannot be di-rectly applied to WIMNET, where hosts are associated with different APs that are performingmultihop communications, and their traffics are usually different from each other.

3.3 Overview of FBS MethodThe FBS method uses the active backoff-time and the passive backoff-time for each link, andselects either of them as a backoff-time at a frame transmission by comparing the target linkactivation rate and the actual link activation rate. Any backoff-time is assigned a differentvalue from each other so that no pair of the conflicting links may be activated simultaneously.Besides, the backoff-time for a link with larger traffic is assigned a smaller value than that fora link with smaller one, so that congested links can be activated preferentially. Furthermore,any active backoff-time is assigned a smaller value than a passive one, so that links using activeones have higher priorities in activations than links using passive ones.

During communications, every time a node holding packets detects that the channel fortransmissions becomes free, it updates both the target activation rate and the actual activationrate. If the actual one is smaller than the target one, it selects the active backoff-time to let thelink be activated, because the current activation rate of the link is not sufficient to handle itstraffic. On the other hand, if it is larger, it selects the passive backoff-time to let other links withactive backoff-times be activated with higher priorities. A link with the passive backoff-timecan be activated only if any conflicting link with the active backoff-time does not hold packets.The following subsections describe how to calculate the three parameters in the FBS method.

Here, we discuss the design goal of the FBS method from a different point of view. Toimprove the throughput of a wireless network using the CSMA/CA protocol, it is necessaryto reduce both the collisions among interfered links and the idling time caused by backoff-time. However, to avoid collisions, a longer backoff-time is more effective than a shorter one.Thus, the tradeoff problem between them should be considered properly. The FBS method hasbeen designed to solve this tradeoff problem by assigning different backoff-times to the links toavoid collisions at any retry counter, and shorter backoff-times to links with heavier traffics thanthose to links with lighter traffics to reduce the idling time. Because shorter backoff-times cancause more collisions, we adopt two backoff-times for each link, and switch them dependingon whether the corresponding link transmits the demanded traffic or not, which is judged bycomparing two activation rates in the FBS method.

3.4 Two Link Activation RatesIn this section, we present the procedures to calculate the target link activation rate and theactual link activation rate for each link.

25

Page 46: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

3.4.1 Target Link Activation RateFor a wireless link li j transmitting packets from APi to AP j for i = 1, · · · ,N and j = 1, · · · ,Nwhere N is the number of APs, the target link activation rate rti j can be calculated by:

rti j =tni j

ani j(3.2)

where tni j represents the target number of activating link li j per second, and ani j does the averagenumber of link activations per second. tni j can be given from the requested bit rate by:

tni j =rbi j

f bi j× 1

1 − f ei j(3.3)

where rbi j represents the number of bits per second that link li j needs to be transmitted, f bi j

does the average number of bits in one transmitted frame, and f ei j does the rate of causing theframe transmission error. ani j can be given by:

ani j =1

f ti j(3.4)

where f ti j represents the average duration time of one frame transmission.Among the parameters for the target link activation rate, rbi j should be calculated by taking

the summation of the bit rates requested by the applications using link li j in the routing pathof WIMNET. The others, f bi j, f ei j, and f ti j, should be updated during communications by thefollowing equations:

f bi j =sbi j

s fi j(3.5)

f ei j =f fi j

s fi j + f fi j(3.6)

f ti j =t

s fi j + f fi j + o fi j(3.7)

where sbi j, s fi j, f fi j, and o fi j represent the total number of successfully transmitted bits by linkli j, the total number of successfully transmitted frames, the total number of failed frames, andthe total number of transmitted frames of the interfered links with link li j, when t seconds havepassed since the communication started in WIMNET, respectively.

3.4.2 Actual Link Activation RateThe actual link activation rate rai j for link li j is obtained by dividing the number of successfullytransmitted frames with the number of possibly activating chances for the link:

rai j =s fi j

aci j(3.8)

26

Page 47: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

where aci j represents the number of possibly activating chances of link li j.In the CSMA/CA protocol, aci j is hard to be obtained. Unlike the TDMA protocol where

the link activations are synchronized by a single clock, the timing of counting the number ofactivating chances is not clear in the CSMA/CA protocol. Besides, the link activation chancesresulting in transmission failures must be considered. In this paper, aci j is counted every timeAPi detects that the channel becomes free.

3.5 Fixed Backoff-time SwitchingIn this section, we present the procedures to calculate the active backoff-time and the passivebackoff-time, and to switch either of them for each link activation.

3.5.1 Active/Passive Backoff-timeThe active backoff-time tam

i j and the passive backoff-time tpmi j for link li j are calculated by the

following procedure, where m represents the number of consecutively failed transmissions (orretry counter) due to heavy traffics and is saturated by 6. These backoff-times are updated everytime the routing path is changed due to the topology change by adding a new AP or removingan existing AP and the host distribution change by a host join or leave to WIMNET. Then, theyare fixed during communications.

A. Calculate the number of bits to be transmitted per second rbi j for link li j by taking thesummation of the bit rates for all the communication requests by the hosts using li j:

rbi j =∑k∈Hi j

hrk (3.9)

where Hi j represents the set of the host indices using link li j in the routing path, and hrk

does the requested bit rate (bps) of host k.

B. Sort every link in descending order of rbi j, where the tiebreak is resolved by the numberof hosts using this link for the routing path.

C. Set this sorted order to the link priority pi j for li j.

D. Calculate the active/passive backoff-times for li j:

taminmi j = CWmin ·

(2m−1 + 2m−2 · pi j−1

P

),

tamaxmi j = CWmin ·

(2m−1 + 2m−2 · pi j

P

),

tami j = rand

[taminm

i j, tamaxmi j

],

(3.10)

where taminmi j and tamaxm

i j represent the minimum and maximum values for the activebackoff-time for li j when the retry counter is m, CWmin does the initial CW size, and Pdoes the largest priority among the links. In our simulations, CWmin = 31 is used in anycase.

tpminmi j = CWmin ·

(2m−1 + 2m−2 · P+pi j−1

P

),

tpmaxmi j = CWmin ·

(2m−1 + 2m−2 · P+pi j

P

),

tpmi j = rand

[tpminm

i j, tpmaxmi j

].

(3.11)

27

Page 48: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

where tpminmi j and tpmaxm

i j represent the minimum and maximum values for the passivebackoff-time for li j when the retry counter is m.

3.5.2 Backoff-time Switching at Link Activation ChanceIn the FBS method, either of the active backoff-time or the passive backoff-time is selected foruse at each link activation chance by the following procedure:

if rti j > rai j then select tami j else select tpm

i j, for the backoff-time of li j

where m represents the retry counter. Thus, from (10) and (11), the backoff-time is increasedexponentially as the number of retransmissions is increased.

3.6 Implementation on QualNetIn this section, we present our implementation of the FBS method on the QualNet simulator.

3.6.1 Modified Functions in QualNetFor the implementation of the FBS method, we modified the following five functions in Qual-Net:

• MacDot11StationProcessAck deals with a reception of the ACK frame at a node when itcan send a packet to the destination successfully.

• MacDot11StationRetransmit deals with a packet retransmission procedure at a node whenit fails in the previous packet transmission due to collisions.

• MacDot11StationProcessNotMyFrame deals with transmitted frames that can be detectedby a node, which indicates that the frames are transmitted by its interfered links.

• MacDot11StationSetBackoffIfZero deals with the procedure of setting a backoff-time,where the main function of the FBS method in calculating the target/actual link activationrates and setting a backoff-time for a link is implemented.

• MacDot11AttempToGoIntoWaitForDifsOrEifsState deals with the waiting procedure forDIFS when the channel becomes clear.

3.6.2 Target Link Activation RateFor the target link activation rate, the initial values of rbi j, f bi j, f ei j, and f ti j should be setbefore communications. Here, we note that each link in WIMNET has the maximum bit ratefor transmissions. When rbi j exceeds this capacity LCi j for link li j, it should be saturated thereto avoid the serious degradation of the performance of WIMNET. LCi j can be calculated by:

LCi j =NC × α∑

pq∈Ii j

rbpq(3.12)

28

Page 49: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

where NC represents the link capacity in WIMNET that must be specified beforehand in theQualNet simulation, α does the coefficient to calculate the effective network capacity by con-sidering the guard time and the acknowledgement response of a wireless link, and Ii j does theset of the interfered links with link li j. From our preliminary experiments using NC = 2(Mbps),we set α = 0.6 in our simulations. Besides, the initial values for the number of bits perframe f bi j = 2, 272, the frame transmission error rate f ei j = 0.1, and the frame duration timef ti j = 0.02 are used.

During communications, these parameter values should be automatically updated by usingthe obtained values of sbi j, s fi j, f fi j, and o fi j in Section 3.3. For this purpose, the functionMacDot11StationProcessAck in QualNet is modified to obtain sbi j and s fi j when AP j receivesan ACK message. Besides, f fi j is increased when APi retransmits a failed frame by the functionMacDot11StationRetransmit. To obtain o fi j, we use the NAV counter in the function Mac-Dot11StationProcessNotMyFrame. In the function MacDot11StationSetBackoffIfZero, the tar-get link activation rate rti j is updated by using the latest parameter values.

3.6.3 Actual Link Activation RateIn our implementation, aci j is counted every time APi detects that the channel becomes freewhere no node is occupying the same channel, and s fi j is counted every time link li j starts adata frame transmission.

In QualNet, one necessary variable dot11− >chance for s fi j is added into the function:MacDot11AttempToGoIntoWaitForDifsOrEifsState,and the value is increased every time this function is called. Then, for aci j, the value is ob-tained from the variable dot11->pktsToSend. By using two variables node->nodeId and dot11->currentNextHopAddress, the link index i j of link li j is obtained.

For the implementation in QualNet, the abovementioned procedures are added in the func-tion MacDot11StationSetBackoffIfZero.

3.7 Evaluation by SimulationsIn this section, we discuss simulation results on QualNet to evaluate our proposal in this paper.

3.7.1 Simulation EnvironmentIn our simulations, three network topologies with the static routing in Figure 3.2 are examined,namely, a) Line, b) Grid, and c) Random. The topology for Random is given from [36]. Thenominal bit-rate of each node is set 2Mbps for NC, and the nominal wireless range is 250m. InLine, the host and the GW act as both the source and destination of two data flows in oppositedirections. For Grid and Random, every host sends data to the GW.

Each host performs CBR as a real-time UDP application, and FTP as a TCP application. ForCBR, one packet is transmitted from each host to the GW at every 0.05sec. (= 20 f ps), wherethe packet size is changed from 160bytes to 1280bytes to examine the performance changeunder different traffic loads. For FTP, one file of different sizes from 160bytes to 1280bytesis transmitted from each host to the GW at every 0.05sec. Each network simulation is carriedon for 30min., and the average result throughout the simulation is used in evaluations. Thesimulation environment is summarized in Table 3.1. Because the distance between adjacent

29

Page 50: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

(a) Line

(b) Grid

(c) Random

Figure 3.2: Simulated network topology.

APs is usually larger than that between a host and its associated AP in WIMNET, we selected2Mbps for an AP and 11Mbps for a host as the nominal bit-rate.

To evaluate the performance of the FBS method through comparisons, the conventional

30

Page 51: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Table 3.1: Simulation environment.

Parameter ValueInterface IEEE802.11bNominal bit-rate AP: 2 Mbps

Host: 11 MbpsChannel frequency AP: 2.484 GHz

Host: 2.412, 2.437, 2.462 GHzNetwork simulation time 30 min.Application CBR for UDP

FTP Generic for TCPPacket rate for CBR 20 packets/sec.Packet size for CBR 160, 320, 640, 1280 bytesFile rate for FTP 20 files/sec.File size for FTP 160, 320, 640, 1280 bytesMaximum retry counter 6CWmin 31

CSMA/CA, the IEEE 802.11e protocol, and the method by Minooei et al. in [28] are togethersimulated. The 802.11e protocol has been defined to enhance the QoS (Quality of Service) ofreal-time UDP applications by adopting the EDCA (Enhanced Distributed Channel Access) thatallows different priorities to network services [39]. For the 802.11e protocol, we select priority1 (Background) for CBR and priority 0 (Best effort) for FTP because we found that this priorityselection gives the best performance in our preliminary experiments.

3.7.2 Evaluation for Real-time ApplicationAs the first scenario, we evaluate the performance in real-time applications using CBR.

3.7.2.1 Throughput

We compare the throughput when only CBR is adopted at any host. Figure 3.3 shows throughputresults for different packet sizes in three topologies. They indicate that when the packet size is160 or 320 bytes, all of the four methods for Line and the three methods except CSMA/CA forGrid, provide the same or similar highest throughput. However, in other cases, the FBS methodalways provides the best throughput among them.

3.7.2.2 Successful/Failed Link Activations

To investigate the cause of throughput results in Figure 3.3, we examine the total number ofsuccessful and failed link activations during communications by the four methods. In the simu-lated instances, the number of packets is increased in order of Line, Grid, and Random, and onepacket size is increased from 160 bytes to 1280 bytes, whereas the network bandwidth is fixedfor any case. Thus, both successful and failed link activations can be increased there.

Figure 3.4 shows the total numbers of successful and failed link activations for each case.Here, we regard packet receptions as successful link activations, and ACK timeouts and RTSretransmissions as failed link activations. The results indicate that for the cases where several

31

Page 52: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

0

50000

100000

150000

200000

250000

300000

350000

400000

450000

500000

160 320 640 1280

Thr

ough

put (

bit/s

)

Packet size (bytes)

CSMA802.11eMinooeiFBS

(a) Line

0

200000

400000

600000

800000

1000000

1200000

1400000

1600000

1800000

2000000

160 320 640 1280

Thr

ough

put (

bit/s

)

Packet size (bytes)

CSMA802.11eMinooeiFBS

(b) Grid

0

100000

200000

300000

400000

500000

600000

700000

800000

160 320 640 1280

Thr

ough

put (

bit/s

)

Packet size (bytes)

CSMA802.11eMinooeiFBS

(c) Random

Figure 3.3: Throughput for CBR (CSMA, 802.11e, Minooei, FBS).

methods provide the same highest throughput, all of the necessary link activations are success-fully completed, which indicates the sufficiency of the network bandwidth for them. For othercases, the number of successful link activations is the largest and that of failed ones is the small-est for the FBS method among the four methods. Thus, as we discussed in Section 3.3, the FBSmethod can increase the number of successful link activations by assigning shorter backoff-times to congested links, and can reduce the number of failed link activations by assigningdifferent backoff-times to the links.

3.7.2.3 Packet Loss

Then, we examine the packet loss probability during communications by the four methods.Figure 3.5 shows the ratio of the number of lost packets to the total number of transmittedpackets from the transmitting nodes as the packet loss probability for each case. These resultsindicate that again, the FBS method generates the smallest packet loss.

3.7.3 Evaluation for TCP ApplicationAs known in [37, 38], a TCP application has the tendency of dominating the whole networkbandwidth when the conventional CSMA/CA protocol is used. As a result, it has been observedin WIMNET that hosts closer to the GW in terms of hop counts consume the network bandwidthwhereas hosts farer from the GW cannot take it. Thus, a host may receive unfair services in TCPapplications depending on the location in WIMNET. The solution to this unfairness problem isanother important issue in WIMNET, in addition to the total throughput improvement.

32

Page 53: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

)0&

1'&

02&

)'%&

&

3&&&

)&&&&

)3&&&

'&&&&

'3&&&

"455*66748

.9+8*:

!"#$%&'()*%'+,-&%(.

/'01'2)3$'"#&)4"&)03(

(a) Line

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

)0&

1'&

02&

)'%&

&

'&&&&

2&&&&

0&&&&

%&&&&

)&&&&&

)'&&&&

)2&&&&

"344*55637

.8+7*9

!"#$%&'()*%'+,-&%(.

/'01'2)3$'"#&)4"&)03(

(b) Grid

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

!"#$

%&'())*

#+,--*+

./"

)0&

1'&

02&

)'%&

&

'&&&&

2&&&&

0&&&&

%&&&&

)&&&&&

)'&&&&

)2&&&&

)0&&&&

)%&&&&

"344*55637

.8+7*9

!"#$%&'()*%'+,-&%(.

/'01'2)3$'"#&)4"&)03(

(c) Random

Figure 3.4: Number of successful and failed link activations for CBR (CSMA, 802.11e, Mi-nooei, FBS).

As the second scenario, to evaluate the contribution in solving this unfairness problem bythe FBS method, we observe the difference between the highest and lowest throughputs amongthe hosts in addition to the average throughput, when every host executes only FTP. Figure 3.6shows the results, where the thick bar represents the average throughput among the hosts, andthe top/bottom edge of the thin line represents the highest and lowest throughput of one host.They indicate that the FBS provides the highest average throughput for any case, and generallyreduces the difference between the highest and lowest throughputs. However, the further im-provement of the fairness is necessary. The analysis of the reason causing the unfairness and itsprovision will be in our future studies.

3.7.4 Evaluation for Mixture of Real-time and TCP ApplicationsAs the third scenario, we evaluate the performance when both real-time UDP applications andTCP applications appear in WIMNET as a typical situation in an access network For the IEEE802.11e, we set 1 for the priority class of real-time applications, and 0 for that of TCP applica-

33

Page 54: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(a) Line

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(b) Grid

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(c) Random

Figure 3.5: Packet loss probability for CBR (CSMA, 802.11e, Minooei, FBS).

tions. In Line, the host sends CBR packets to the GW, and the GW sends FTP packets to thehost. In Grid, two hosts associated with AP4 and AP6 send FTP packets whereas the others sendCBR packets. In Random, two hosts associated with AP6 and AP7 send FTP packets whereasthe others send CBR packets. Figure 3.7 shows the packet loss probability for CBR by the fourmethods for different packet sizes, while any packet of FTP is received by the GW. This figureindicates that the FBS method can reduce the packet loss probability more successfully than theother methods.

3.7.5 Evaluation with Leaky Bucket Traffic ShapingAs the last scenario, the leaky bucket traffic shaping [40] is adopted together at the GW tofurther reduce lost packets by avoiding the bandwidth domination of TCP applications, when

34

Page 55: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

60000

Packet size (bytes)

CSMA802.11eMinooei

20000

0

FBS 80000

100000

120000

140000

160000

180000

200000

160 320 640 1280

40000

Thr

ough

put (

bit/s

)

(a) Line

0640 1280

Thr

ough

put (

bit/s

)

Packet size (bytes)

CSMA802.11eMinooeiFBS

100000

200000

300000

400000

500000

600000

700000

160 320

(b) Grid

0640 1280

Thr

ough

put (

bit/s

)

Packet size (bytes)

CSMA802.11eMinooeiFBS

20000

40000

60000

80000

100000

120000

140000

160 320

(c) Random

Figure 3.6: Throughput for TCP (CSMA, 802.11e, Minooei, FBS).

both real-time and TCP applications appear. In our simulations, we used 32Kbps for the tokenrate and 10Kbps for the bucket size. Figure 3.8 shows the packet loss probability for CBR inthis scenario. The comparison between the results in Figures 3.7 and 3.8 indicate that for anymethod, the application of the leaky bucket traffic sharing can reduce the packet loss probabilityto almost 0 for Line and by about 40% for Grid. However, it is not effective for Random exceptfor the conventional CSMA/CA whose packet loss probability can be reduced by about 20%.This reason can be considered that the current link capacity is too small to handle the hightraffic load in Random. Either of the increase of the link capacity or the rejection of somecommunication requests from hosts will be necessary in this case.

3.7.6 DiscussionThe performance comparisons of the four methods in three topologies with four applicationscenarios show that the FBS generally provides better results than other methods. Thus, weconclude that the proposed FBS method is more suitable for WIMNET, whereas the advantagecan be different and depend on the network topology and the traffic load. We recognize that

35

Page 56: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(a) Line

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(b) Grid

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(c) Random

Figure 3.7: Packet loss probability for mixture of CBR and FTP (CSMA, 802.11e, Minooei,FBS).

the weak point of the FBS method is in the complexity of the parameter adjustment. Theparameters need to be readjusted every time the routing path between the GW and the APs orthe host location is changed.

In our future studies, we will present the autonomous adjustment mechanism of the param-eters, complete the Linux implementation, and evaluate the performance in real networks usingthe implemented personal computers.

36

Page 57: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(a) Line

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(b) Grid

0.00

0.20

0.40

0.60

0.80

1.00

160 320 640 1280

Pack

et lo

ss p

roba

bilit

y

Packet size (bytes)

CSMA802.11eMinooeiFBS

(c) Random

Figure 3.8: Packet loss probability for mixture of CBR and FTP with leaky bucket traffic shap-ing (CSMA, 802.11e, Minooei, FBS).

37

Page 58: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 59: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 4

Linux Implementation Design of FixedBackoff-time Switching Method

In this chapter, we propose a design for the Linux implementation of Fixed Backoff-time Switch-ing (FBS) method. For convenience, we call a Linux PC implementing the FBS method aLinux-FBS in this thesis.

4.1 OverviewBasically, in this design for the Linux-FBS, we collect the necessary information from thestatistics in the devices, to calculate the fixed back-off time in the FBS method, and assignits calculated value to AIFS for use as the actual backoff-time in the network device withCWmin = CWmax = 0, as shown in Figure 4.1.

Figure 4.1: Data Flow for FBS Method in Linux Implementation.

For our design of the Linux-FBS, we have considered implementations or modifications ofthe following five programs.

• Kernel configuration is modified to activate Debugfs and Minstrel.

39

Page 60: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

• Debugfs is used to obtain the necessary information in the kernel space at the user spacethrough Minstrel.

• Minstrel is used to obtain the necessary information for the FBS method.

• iw is modified to allow the assignment of a specified value (fixed backoff-time) to CWmin.

• FBSdaemon is newly implemented as a daemon application to calculate the target/activelink activation rates and select the fixed back-off time by comparing them as the mainprocedure of the FBS method.

4.2 Kernel ConfigurationFor our Linux-FBS, we need to activate some features in Linux kernel configurations such asDebugfs [41] and Minstrel [42] that are used for wireless networks. Therefore, we set up theconfiguration of the Linux kernel as follows:

CONFIG_DEBUG_FS=y

CONFIG_DEBUG_KERNEL=y

CONFIG_WIRELESS=y

CONFIG_CFG8011=m

CONFIG_CFG80211_DEBUGFS=y

CONFIG_LIB80211=m

CONFIG_LIB80211_DEBUG=y

CONFIG_MAC80211=m

CONFIG_MAC80211_RC_MINSTREL=y

CONFIG_MAC80211_RC_MINSTREL_HT=y

CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y

CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"

CONFIG_MAC80211_DEBUGFS=y

For the wireless drivers for our implementation, we set up the configuration of the Linuxkernel as follows:

CONFIG_ATH_COMMON=m

CONFIG_ATH_DEBUG=y

CONFIG_ATH5K_DEBUG=y

CONFIG_ATH9K_DEBUGFS=y

CONFIG_ATH9K_HTC_DEBUGFS=y

4.3 DebugfsDebugfs is a special file system available in a Linux kernel. It is technically referred as a kernelspace-user-space interface, and is a simple RAM-based file system that is designed for debug-ging the kernel. Debugfs allows a kernel developer to make information in the kernel spaceavailable in the user space. To compile a Linux kernel with Debugfs, we need to set CON-FIG DEBUG FS option yes. Then, we need to mount Debugfs with the following command:

mount -t debugfs none /sys/kernel/debug

40

Page 61: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

4.4 MinstrelMinstrel is a mac80211 rate control algorithm ported over from MadWifi that supports multiplerate retries. Minstrel has been claimed to be one of the best rate control algorithms. Minstrelprovides the success/failure information, the actual data rate communication, and the status ofinterface.

After mounting Debugfs, we can use Minstrel from a subdirectory of Debugfs. Inside thedirectory of /sys/kernel/debug/ieee80211/phy0/netdev:wlan0/stations, subdirectories exist whereeach subdirectory corresponds to each wireless node in the network such as a host (client PC)that is associated with the Linux-FBS. The name of a subdirectory is the MAC address of theassociated node. For example, /sys/kernel/debug/ieee80211/phy0/netdev:wlan0/stations/00:22:cf:72:21:22/ represents the subdirectory corresponding to a node whose mac address is00:22:cf:72:21:22. Inside of this subdirectory, we can find the files of the minstrel informationfor this node.

For the Linux-FBS, we use the following files from Minstrel: rc stats, tx bytes, tx packets,tx retry count, and tx retry failed.

From the tx packets file, we can get the value for s fi j (the total number of successfullytransmitted frames of link li j). From the rc stats file, we can get the value for aci j (the numberof possibly activating chances) from the attemp value. Then, we can calculate the value for rai j

(actual link activation rate). Also, from this file, we can get the value for rbi j (the number ofbits to be transmitted per second for link li j) from the throughput value.

Then, we can get the value for sbi j (the total number of successfully transmitted bits bylink li j) from the tx bytes file, the value for o fi j (the total number of transmitted frames of theinterfered links with link li j) from the tx retry count file, and the value for f fi j (the total numberof failed frames) from the tx retry failed file, respectively. Then, we can calculate the value fortai j (target link activation rate).

4.5 Modification of iwiw[18] is a new nl80211 based CLI (Command Line Interface) configuration utility for wirelessdevices. nl80211 is a new IEEE 802.11 netlink interface public header. iw supports most of thenew drivers that have been recently added to the Linux kernel. In our Linux-FBS implementa-tion, we use iw to assign the fixed backoff-time in the FBS method by changing the values ofthe variables for Wi-Fi Multimedia (WMM) in IEEE802.11e, namely CWmin, CWmax, AIFS , andT XOP.

However, a default application of iw cannot access to or modify the values for them. Thus,we modified the source code of iw so that it is possible. In this source code modification, weuse a function in the hostapd application so that we can change the values for CWmin, CWmax,AIFS , and T XOP. Actually, we add the handle txq params function in the phy.c file to accessto T XQ PARAMS in wireless Linux kernel parameters.

Listing 4.1 shows our modification of the source code for iw.

s t a t i c i n t h a n d l e d t x q p a r a m s ( s t r u c t n l 8 0 2 1 1 s t a t e ∗ s t a t e , s t r u c t n l c b ∗cb, s t r u c t nl msg ∗msg , i n t argc , char ∗∗ a rgv )

{u 8 queue , a i f s ;u 1 6 cwmin , cwmax , txop ;

41

Page 62: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

s t r u c t n l a t t r ∗ t x q ;

/ / S a n i t y c h e c k i n g. . .

queue = s t r t o u l ( a rgv [ 0 ] , NULL, 10) ;cwmin = s t r t o u l ( a rgv [ 1 ] , NULL, 10) ;cwmax = s t r t o u l ( a rgv [ 2 ] , NULL, 10) ;t xop = s t r t o u l ( a r gv [ 3 ] , NULL, 10) ;a i f s = s t r t o u l ( a r gv [ 4 ] , NULL, 10) ;

p r i n t f ( ” S e t TXQ PARAMS f o r c l a s s [%d ] : cwmin=%d cwmax=%d txop=%d a i f s=%d\n ” , queue , cwmin , cwmax , txop , a i f s ) ;

/ / Range c h e c k i n g f o r t h e a c c e s s c l a s s param. . .

t x q = n l a n e s t s t a r t ( msg ,NL80211 ATTR WIPHY TXQ PARAMS ) ;

i f ( ! t x q )re turn −ENOBUFS;

s t r u c t n l a t t r ∗ t x = n l a n e s t s t a r t ( msg , queue ) ;

NLA PUT U8 ( msg , NL80211 TXQ ATTR QUEUE , queue ) ;NLA PUT U16 ( msg , NL80211 TXQ ATTR CWMIN , cwmin ) ;NLA PUT U16 ( msg , NL80211 TXQ ATTR CWMAX , cwmax ) ;NLA PUT U16 ( msg , NL80211 TXQ ATTR TXOP , txop ) ;NLA PUT U8 ( msg , NL80211 TXQ ATTR AIFS , a i f s ) ;

n l a n e s t e n d ( msg , t x ) ;

n l a n e s t e n d ( msg , t x q ) ;

re turn 0 ;

n l a p u t f a i l u r e :re turn −ENOBUFS;

}COMMAND( s e t , t xq pa rams , ”< a c c e s s c l a s s > <cwmin> <cwmax> < txop> < a i f s >” ,

NL80211 CMD SET WIPHY , 0 , CIB PHY , h a n d l e t x q p a r a m s , ” S e t TXQ PARAMSwi th Queue , CWmin , CWmax, TXOP, AIFS\n ” ) ;

Listing 4.1: ”IW modification in phy.c”

Using the iw phy0 set txq params 0 0 0 0 10 command, we set the values of the WMMvariables for class 0 (Best Effort), such that CWmin = CWmax = T XOP = 0, and AIFS = 10 ifthe selected fixed backoff-time in the FBS method is 10 for this link.

4.6 FBSdaemonWe implement the procedure for the FBS method by generating a daemon application usingPerl. In this paper, we call this application FBSdaemon.

The main cycle for the backoff-time control for the FBS method in FBSdaemon consists of

42

Page 63: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

the following four steps:

1) reading the necessary files from Minstrel,

2) calculating both the target and active link activation rates,

3) selecting the fixed back-off time by comparing the both rates, and

4) assigning the selected fixed back-off time to AIFS by using the syntax system and callingthe modified iw application. Besides, FBSdaemon can give a log report, and can run inthe background.

Algorithm 1 shows this procedure in FBSdaemon.

input : Minstrel files: rc stats, tx bytes, tx packets, tx retry count, tx retry f ailedBO file

output: AIFS

Perl initialization for Daemon, Log, Files;begin

Log start;Daemonize;for (;;) do

aci j ← read(rc stats, attemp);s fi j ← read(rc stats, success);

sbi j ← read(tx bytes);s fi j ← read(tx packets);o fi j ← read(tx retry count);f fi j ← read(tx retry f ailed);

active← read(bo f ile, active);passive← read(bo f ile, passive);

Calculate rai j, tai j;if rai j < tai j then

AIFS ← activeelse

AIFS ← passiveendsystem(”iw phy0 set txq params 0 0 0 0 AIFS ”);wait(300s);

endend

Algorithm 1: FBS Daemon

43

Page 64: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 65: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 5

Proposal of Traffic Control Method

5.1 IntroductionSeveral challenges exist for effectively deploying real-time applications over WIMNET. Firstly,in WIMNET, because all the APs share and compete for the spectrum, conflicts can happenamong the whole contention domain, which is different from wired networks, cellular networks,and wireless local area networks (WLANs). Under such situations, it is very complicated tocompute and manage the bandwidth resources. Secondly, real-time applications such as VoIPusually coexist with best-effort applications such as email, ftp and world-wide web. Real-timeapplications must compete with other data traffics sharing the transmission media in WIMNET.

To provide very small tolerance for the network latency and jitter, we propose a TRafficControl (TRC) method for real-time applications. This method consists of two main modules:1) the bandwidth usage estimation module using the hop count and traffic bandwidths fromclients, and 2) the drop control module using the leaky bucket traffic shaping.

5.2 Related WorksThe issue of providing the QoS guarantee in wireless multi-hop networks has been widelyinvestigated in the literature, in particular with the reference to wireless ad hoc networks. For asurvey of QoS approaches for wireless ad hoc networks, readers can be referred to [43]. Giventhe fully distributed, mobile nature of ad hoc networks, problems of accurately characterizingthe bandwidth and delay characteristic of each link is very challenging.

In [44], Mogre et al. reviewed the critical aspect that needs to be considered using the meshnode in the IEEE802.16-2004 standard as a case-study. In addition to research challenges, theyhighlighted pitfalls and gave pointers to realize the QoS in wireless mesh networks. In thisthesis, we follow their objectives to use efficient and adaptive bandwidth managements.

In [45], Wei et al. gave the work more related to ours. Thy have the similar goal to thisthesis of providing the QoS guarantee in terms of the bandwidth and delay constraints to finalusers. However, this paper is based on a simplistic interference model represented by a conflictgraph. The accuracy of the predicted bandwidth/delay estimation by the proposed frameworkbecomes an issue.

In [46], Chu presented an approach based on the TDMA protocol at the MAC later to com-pletely neglect the effects of radio interferences. It assumes that enough radio resources areavailable at the backbone nodes so that an arbitrary number of simultaneous transmissions can

45

Page 66: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

appear without mutual interferences. Unfortunately, this assumption is hardly met in a practicalsystem, where the amount of available radio resources is severely constrained. Actually, only afew orthogonal channels are available in IEEE 802.11a/b/g/n.

5.3 Overview of Traffic Control MethodThe goal of the traffic control (TRC) method is to accept as many real-time flows as much aspossible, and to guarantee no impaction of any already accepted real-time flow by additionalreal-time and/or best effort traffics. Both IntServ and DiffServ are adopted in the TRC methodto satisfy the bandwidth requirement of real-time applications.

Figure 5.1 illustrates the flowchart of our TRC method. This method first classifies the traf-fics into either real-time applications or best-effort ones. Then, it estimates the consumed band-width in WIMNET for each real-time flow by multiplying the requested bandwidth (Bwapp(i) inthe flowchart) with the hop count (Link(i)) that indicates the number of links along the path be-tween the host and GW. After that, it calculates the total consumed bandwidth (BWE) by takingthe summation among all the real-time flows. If the total consumed bandwidth is larger than theavailable bandwidth in WIMNET, it drops the real-time flow with the largest consumed band-width by applying the leaky bucket traffic shaping. This process is repeated until the former oneis smaller than the latter one.

Here, we note that through several experiments, we have found that the available bandwidthof a link using IEEE 802.11b protocol for transmitting data is 60% of the designed bandwidthof the link. This means that if each link is assigned 2 Mbps, it actually can send data with 1.4Mbps.

Figure 5.1: Flowchart.

46

Page 67: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

5.4 Two ModulesIn this section, we present the consumed bandwidth estimation module and the drop controlmodule for the TRC method.

5.4.1 Consumed Bandwidth Estimation Module

Figure 5.2: Example topology.

Figure 5.2 shows an example topology to explain the consumed bandwidth estimation mod-ule. In this example, we assume that IEEE 802.11b protocol is adopted with 2 Mbps as thebandwidth of any link, and that any client sends data with 256 Kbps in a real-time applica-tion. The client with 192.168.0.5 has one hop count because it is connected directly to GW.The client with 192.168.0.6 has two hop counts, and the client with 192.168.0.7 has three hopcounts. Then, the consumed bandwidth can be calculated by:

BWE = (256 × 1) + (256 × 2) + (256 × 3)= 1536Kbps. (5.1)

5.4.2 Drop Control ModuleWhen the estimated bandwidth is larger than the available bandwidth, the drop control moduledrops some of the requested flows. Usually, both of real-time application flows and best-effortflows exist in WIMNET, which may interfere with each other. Thus, our drop control moduledrops real-time application flows until the estimated bandwidth does not exceed the availablebandwidth of the WIMNET while reducing impacts to other flows.

The basic principle of the drop control is to shape the traffic with the drop method in theleaky bucket traffic shaping. The leaky bucket [47] is actually a traffic meter, and is used tomeasure the amount of information transmitted by a certain data flow. When it is coupled withan algorithmic dropper, it becomes a means of the bandwidth enforcement. The leaky buckethas two parameters: 1) the token rate, 2) the burst tolerance size or bucket size. The toke rate isoften called the Committed Information Rate (CIR). Figure 5.3 shows the operation of the leakybucket.

For the implementation of the TRC method in QualNet, we use TRAFFIC-TRACE thathas been implemented there. In TRAFFIC-TRACE, we give a large value to the Bucket Sizeparameter for the traffic accepted by our method. To drop the traffic rejected by our method,we give a small value to the Bucket Size parameter, and set DROP rather than DELAY to theAction parameter. To make the constant rate, we give the transmission rate to the Token Rateparameter.

47

Page 68: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.3: Leaky bucket operation.

5.5 Evaluation by Simulations

5.5.1 Simulation EnvironmentWe implement the TRC method in the QualNet simulator [5] for evaluations. Here, we preparetwo simulation scenarios, namely, 1) the scenario for the bandwidth threshold measurement, and2) the scenario for the TRC method analysis. The first scenario is aimed to measure the availablebandwidth of a wireless link at the IEEE 802.11b protocol for the designed bandwidth, and toevaluate the effect of the hop count between a host and GW. The second scenario is aimed toverify the effectiveness of the TRC method.

Figure 5.4: Tree Topology.

In both scenarios, we use two network topologies for the WIMNET backbone, namely, thetree topology in Figure 5.4 and the line topology Figure 5.5. The distance between neighboringAPs is set 250 m, and the transmission rate of any link between APs is 2 Mbps using IEEE

48

Page 69: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.5: Line Topology.

802.11b protocol. The number of clients is changed from one to three, and the transmissionrange of any wireless device is fixed to 300 m.

VoIP [48] is adopted as a representative real-time application, so that two programs ofTRAFFIC-TRACE and CBR are used as traffics in QualNet to simulate VoIP with the leaky-bucket traffic shaping. The six different packet sizes are using including 64 Kbps, 128 Kbps,256 Kbps, 512 Kbps, 1024 Kbps, and 2048 Kbps. Here, we note that we modify source codesin QualNet to report the bandwidth usage.

5.5.2 Bandwidth Threshold MeasurementThe goal of this measurement is to know the bandwidth threshold that is available for each hopcount. We use the results to give the available bandwidth in the TRC method.

5.5.2.1 Single Client

First, only one client host is connected to one AP in the line topology, and transmits 2048 Kbpsreal-time application data. The associated AP of the client is changed among AP1, AP2 andAP3. Figure 5.6 shows the throughput results. Here, we can see that the throughput for AP1 isabout 1.4 Mbps. This means that one hop count gives only around 70% of the designed band-width as the available bandwidth for data transmissions. Then, the throughput for AP2 is about0.75 Mbps, which means that two hop counts give only 35-37% of the designed bandwidth, orthe half of the available bandwidth for the one hop case. The throughput for AP3 is about 0.45Mbps, which means that three hop counts give only 22-25% of the designed bandwidth, or theone-third of the available bandwidth for the one hop case.

5.5.2.2 Three Clients

Then, one client is connected to each AP in the line and tree topologies, and each of the threeclients transmit 2048 Kbps real-time application data. Figures 5.7 and 5.8 show the throughputresults for each topology respectively. The average throughput among the two clients in the treetopology is about 1.4 Mbps, whereas the average throughput in the line topology are about 1.1Mbps. In the latter topology, AP2 needs to forward data from AP3.

5.5.2.3 Six Clients

Finally, two clients are connected to each AP, and each of the six clients transmit 2048 Kbpsreal-time application data. Figures 5.9 and 5.10 show the throughput results. The averagethroughput among the three clients in the tree topology is about 1.4 Mbps, whereas the average

49

Page 70: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.6: Throughput with single client for bandwidth threshold.

throughput in the line topology is only 1.3 Mbps. The latter one becomes degraded as the casefor the one client to each AP.

From these results, we selected the threshold for the TRC method with the 60% of theavailable bandwidth.

5.5.3 Traffic Control Method AnalysisIn the second scenario, both the tree and line topologies are adopted. The number of client hoststransmitting real-time application data is increased from one to three. The associated AP to eachclient is also changed from AP1 to AP3, where the number of client hosts increases one by one.Client locations are generated randomly within the circle of the 50 m radius from each AP.TRAFFIC-TRACE and CBR applications are used as real-time applications and FTP/GENERICis used as the TCP application. For each topology, both the case with the TRC and the casewithout the TRC are simulated to compare their results. All the clients transmit 256 Kbps datafor real-time applications at the same time.

When one client is associated with each AP and all of the three clients are sending dataat the same time, our TRC method drops the traffic from the third client associated with AP3,because the estimated total consumed bandwidth is larger than the available bandwidth and thethird client is consuming the largest bandwidth among three clients.

Figures 5.11a and 5.11b show that throughputs are fluctuated when the TRC method is notadopted. This fluctuation means that the jitter happens in data transmissions. Besides, the thirdclient associated with AP3 cannot achieve the requested throughput where only about 170 Kbpscan be sent in the line topology, and the throughput is fluctuated in the tree topology. Theseresults indicate that the communication without the TRC method provides the poor quality forreal-time applications.

On the other hand, Figures 5.11c and 5.11d show that the throughput of each client is notfluctuated and is constant at 256 Kbps by dropping the traffic from the third client. This means

50

Page 71: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.7: Throughput with three clients in tree topology for bandwidth threshold.

that the clients can satisfy the real-time applications in good conditions, although the third clientneeds to give up the real-time application.

Then, in order to observe the effectiveness of the TRC method in more practical situationswhere both best-effort and real-time applications coexist in the network. The data of one clientis actually changed to the TCP application. As before, both the case with the TRC and the casewithout the TRC are simulated to compare their results. All the clients except for the clientrequesting the TCP application transmit 256 Kbps data for real-time applications at the sametime. Here, we adopt FTP as the TCP application.

Figures 5.13a and 5.13b show that without the TRC, the throughput for the real-time applica-tion is far more fluctuated because of the TCP application. Here, the TCP application consumesthe large bandwidth. On the other hand, Figures 5.13c and 5.13d show that the throughput forany real-time application becomes constant at 254 Kbps, because the rate of the TCP applicationis restricted by the TRC method.

5.5.4 DiscussionThe simulation results in two topologies show that the use of the TRC method generally im-proves the throughput. Thus, we conclude that the TRC method is suitable for real-time applica-tions in WIMNET, whereas the advantage can be different and depend on the network topologyand the traffic load. In future studies, we will improve the accuracy of the bandwidth usage es-timation and extend the drop control module by combining the link sharing algorithm. We willalso implement the TRC method using COTS (Commercial Off-The-Shelf) to realize a practicalWIMNET system.

51

Page 72: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.8: Throughput with three clients in line topology for bandwidth threshold.

Figure 5.9: Throughput with six clients in tree topology for bandwidth threshold.

52

Page 73: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Figure 5.10: Throughput with six clients in line topology for bandwidth threshold.

53

Page 74: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

(a) Without TRC in line topology (b) Without TRC in tree topology

(c) With TRC in line topology (d) With TRC in tree topology

Figure 5.11: Throughput for.

Figure 5.12: Throughput with real-time application only for TRC analysis.

54

Page 75: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

(a) Without TRC in line topology (b) Without TRC in tree topology

(c) With TRC in line topology (d) With TRC in tree topology

Figure 5.13: Throughput with both real-time and best-effort applications for TRC analysis.

55

Page 76: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 77: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Chapter 6

Conclusion

In this thesis, we proposed two performance improvement methods for real-time applications inthe Wireless Internet-access Mesh Network (WIMNET), namely the Fixed Backoff-time Switch-ing (FBS) method and the TRaffic Control (TRC) method. As the background to them, webriefly introduced the Wireless Mesh Network (WMN), the Quality of Service (QoS) in the com-puter network, the QualNet simulator, the Linux wireless networking and the Software DefinedNetworking.

The FBS method gives the necessary activation chances to each link in the CSMA/CA pro-tocol to improve the real-time traffic performance in WIMNET. For its evaluations, we imple-ment it on a well-known QualNet simulator, and verify its effectiveness through simulations.In addition, we present an design of the Linux implementation of the FBS method to show itspracticality and investigate the performance in a real network.

In future studies for the FBS method, we will present the autonomous adjustment mecha-nism of the parameters, complete the Linux implementation, and evaluate the performance inreal networks using the implemented personal computers.

The TRC method prioritizes real-time traffics than others at the Internet gateway. It is usedtogether with the bandwidth usage estimation to estimate the consumed bandwidth by them.Less prioritized traffics are repeatedly dropped at the gateway using the leaky bucket trafficshaping. For its evaluation, we implement it on the QualNet simulator, and verify its effective-ness through simulations.

In future studies for the TRC method, we will improve the accuracy of the bandwidth us-age estimation and extend the drop control module by combining the link sharing algorithm,and may include an autonomous parameter adjustment mechanism for the FBS method, fur-ther improvements in the unfairness problem for TCP applications, and evaluations in differentnetwork topologies and traffics.

57

Page 78: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless
Page 79: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

Bibliography

[1] I. F. Akyildiz, X. Wang, and W. Wang, ”Wireless mesh networks: a survey,” Comput.Network. ISDN Syst., vol.47, no.4, pp.445-487, Mar. 2005.

[2] Y. Zhang, J. Luo, and H. Hu, Wireless mesh networking: architectures, protocols andstandards, Auerbach Pub., 2006.

[3] N. Funabiki edited, Wireless mesh networks, InTech - Open Access Pub., 2011, http://www.intechopen.com/books/show/title/wireless-mesh-networks.

[4] Part 11: Wireless LAN medium access control (MAC) and physical layer (PHY) specifi-cations, IEEE Std. 802.11, 1999.

[5] QualNet simulator, Scalable network tech., http://www.scalable-networks.com.

[6] G. A. D. Caro, Analysis of simulation environments for mobile ad hoc networks, Tech.Rep., no. IDSIA-24-03, Dec. 2003.

[7] M. Vipin and S. Srikanth, Analysis of open source drivers for IEEE 802.11 WLANs, Proc.ICWCSC 2010, 2010.

[8] K. Chebrolu and B. Raman, FRACTEL: a fresh perspective on (rural) mesh networks,Proc. ACM SIGCOMM NSDR, Aug. 2007.

[9] A. Sharma and E. M. Belding, FreeMAC: implementing a multi-channel TDMA MAC on802.11 hardware, http://moment.cs.ucsb.edu/˜asharma/freemac-mobisys.pdf.

[10] P. Djukic and P. Mohapatra, Soft-TDMAC: a software TDMA-based MAC over commod-ity 802.11 hardware, Proc. INFOCOM, April 2009.

[11] IEEE Std 802.11s-2010.

[12] Wi-Fi Alliance, ”Wi-Fi Certified for WMM - Support for Multimedia Applications withQuality of Service in Wi-Fi Networks, Sep. 2004.

[13] DevDocs - madwifi-project.org, http://madwifi-project.org/wiki/DevDocs.

[14] mac80211 - Linux Wireless, http://linuxwireless.org/en/developers/

Documentation/mac80211.

[15] cfg80211 - Linux Wireless, http://linuxwireless.org/en/developers/

Documentation/cfg80211.

59

Page 80: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

[16] nl08211 - Linux Wireless, http://linuxwireless.org/en/developers/

Documentation/nl80211.

[17] Wireless Extension for Linux, http://www.hpl.hp.com/personal/Jean_

Tourrilhes/Linux/Tools.html.

[18] iw - Linux Wireless http://wireless.kernel.org/en/users/Documentation/iw.

[19] Linux WPA/WPA2/IEEE 802.1X Supplicant, http://hostap.epitest.fi/wpa_supplicant/.

[20] hostapd: IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator,http://hostap.epitest.fi/hostapd/.

[21] OpenFlow - Enabling Innovation in Your Network, http://www.openflow.org.

[22] M. Casado, M.J. Freedman, J. Pettit, Jianying Luo, N. Gude, N. McKeown, and S.Shenker, ”Rethinking Enterprise Network Control”, IEEE/ACM Transactions on Net-working, 17(4):1270-1283, August 2009.

[23] Software-Defined Networking: The New Norm for Networks. Technical Report, OpenNetworking Foundation, April 2012.

[24] Open vSwitch, http://openvswitch.org.

[25] NOXRepo, http://www.noxrepo.org.

[26] S. Xu and T. Saadawi, Does the IEEE 802.11 MAC protocol work well in multihop wire-less ad hoc networks, IEEE Commun. Mag., vol. 39, no. 6, pp. 130-137, June 2001.

[27] K. Nakamura, S. Satake, and H. Inai, ”An access method using fixed backoff for wirelessLANs,” Electrical Eng. Japan, vol. 173, no. 3, pp. 30-39, 2010.

[28] H. Minooei and H. Nojumi, ”Performance evaluation of a new backoff method for IEEE802.11,” Comp. Commun., vol. 30, no. 18, pp. 3698-3704, 2007.

[29] C.-M. Wu, H.-K. Su, and W.-H. Yang, Efficient backoff algorithm in wireless multihop adhoc networks,” Int. J. Advance. Comput. Tech., vol. 3, no. 1, Feb. 2011.

[30] R. Zhu, W. Shu, T. Mao, and T. Deng, ”Enhanced MAC protocol to support multimediatraffic in cognitive wireless mesh networks,” Multi. Tool. App., Dec. 2011.

[31] H. Furukawa, ”Hop count independent throughput realization by a new wireless multihoprelay,” IEEE VTC2004-Fall, 2999-3003, Sept. 2004.

[32] Y. Tohzaka, K. Maruta, Y. Higa, and H. Furukawa, ”Evaluations of wireless multihop net-work incorporating intermittent periodic transmit and packet forwarding path reservation,”IEICE Trans. Commun., vol. J91-B, no. 10, pp. 1287-1298, Oct. 2008 (in Japanese).

[33] A. Yamada, A. Fujiwara, L. L. Yang, and B. Sadeghi, ”EDCA based congestion controlfor WLAN mesh networks,” IEEE VTC2006-Spring, pp.1288-1292, May 2006.

60

Page 81: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

[34] A. Kishida, M. Umeuchi, T. Onizawa, M. Iwabuchi, and H. Shibayama, ”Centralized anddistributed MAC protocol for IEEE802.11 WLAN,” IEICE Tech. Report, vol. RCS2011-35, pp.1-6, June 2011 (in Japanese).

[35] A. Kishida, M. Iwabuchi, T. Shintaku, F. Nagase, T. Sakata, and T. Onizawa, ”Fairnesscontrol method for centralized and distributed MAC protocol using CSMA/CA,” IEICETech. Report, vol. RCS2011-60, pp.79-84, Nov. 2011 (in Japanese).

[36] S. Das, K. Papagiannaki, S. Banerjee, and Y. C. Tay, ”SWARM: the power of structure incommunity wireless mesh networks,” IEEE/ACM Trans. Networking, vol. 19, no. 3, June2011.

[37] R. Morris, ”TCP behavior with many flows,” Proc. Int. Conf. Netw. Protocols, pp. 205-211, Oct. 1997.

[38] A. Vishwanath, V. Sivaraman, and G. N. Rouskas, ”Anomalous loss performance formixed real-time and TCP traffic in routers with very small buffers,” IEEE/ACM Trans.Networking, vol. 19, no. 4, pp. 933-946, Aug. 2011.

[39] IEEE Standard 802.11e-2005.

[40] A. S. Tanenbaum, Computer Networks, 5th ed., Prentice Hall, 2010.

[41] Debug - Linux Wireless, http://linuxwireless.org/en/users/Drivers/ath9k/debug.

[42] Minstrel - Linux Wireless, http://linuxwireless.org/en/developers/

Documentation/mac80211/RateControl/minstrel/.

[43] T. B. Reddy, I. Karthigeyan, B. Manoj, and C. S. R. Murthy, ”Quality of service pro-visioning in ad hoc wireless networks: a survey of issues and solutions.” http://www.sciencedirect.com, April 2004.

[44] P. S. Mogre, M. Hollick, and R. Steinmetz, ”QoS in wireless mesh networks: challenges,pitfalls, and roadmap to its realization,” 17th Int. Work. Network and Operating Sys. Sup-port. Digital Audio & Video, June 2007.

[45] Y. Wei, R. Maosheng, T. Zhao, L. Xiaoming, ”A bandwidth management scheme supportfor real-time applications in wireless mesh networks,” Proc. ACM SAC, pp.2063-2068,2008.

[46] X. Chu, ”Provisioning of parameterized quality of service in 802.11e based wireless meshnetworks, Mobile Networks and Applications, vol. 13, pp. 6-18, April 2008.

[47] Leaky Bucket - QoS Guide, http://qos-guide.com/html/leaky_bucket.html.

[48] ITU-T Recommendation G.729A, ”Coding of speech at 8 kbit/s using conjugate-structurealgebraic-code-exited-Linear-prediction (SC-ACELP), March 1996.

[49] T. Jane and J.-W. Chen, ”IEEE 802.11 MAC protocol over wireless mesh networks: prob-lems and perspectives,” Proc. AINA 05, pp. 60-63, March 2005.

61

Page 82: A Study of Performance Improvement Methods for …ousar.lib.okayama-u.ac.jp/files/public/5/50762/...A Study of Performance Improvement Methods for Real-time Applications in Wireless

[50] H.-Y. Hsieh and R. Sivakumar, EEE 802.11 over multi-hop wireless networks: problemsand new perspectives, Proc. IEEE VTC 2002 Fall, Sep. 2002

[51] H. Zhu, G. Cao, A. Yener, and A. D. Mathias, EDCF-DM: a novel enhanced distributedcoordination function for wireless ad hoc networks, Proc. IEEE ICC’04, June 2004.

[52] L. Romdhami, Q. Ni, and T. Turletti, Adaptive EDCF: enhanced service differentiation forIEEE 802.11 wireless ad-hoc networks, Proc. IEEE Wireless Commun. Networking Conf.(WCNC), March 2003.

[53] Strix System, ”Solving the wireless mesh multi-hop dilemma,” White Paper, 2005.

[54] S. Tajima, N. Funabiki, and T. Higashino, ”A proposal of fixed backoff-time switchingmethod by link activation rate for wireless mesh networks,” Proc. Int. Conf. Complex,Intell., Software Intensive Sys. (CISIS), pp. 647-652, 2011.

[55] N. Funabiki, S. Sukaridhoto, Z. Wang, T. Nakanishi, K. Watanabe, and S. Tajima, ”Animplementation of fixed backoff-time switching method on IEEE 802.11 MAC protocolfor wireless Internet-access mesh network,” Proc. Int. Work. Smart Info-Media Sys. Asia(SISA 2011), pp. 67-72, Oct. 2011.

[56] S. Sukaridhoto, N. Funabiki, T. Nakanishi, and K. Watanabe, ”A proposal of CSMA fixedbackoff-time switching protocol and its Implementation on QualNet simulator for wirelessmesh networks,” Proc. WAINA, March 2012.

62