evaluation of path cost algorithms for a bridged wireless ... · evaluation of path cost algorithms...

31
Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the Spanning Tree Protocol ALLAN FARAJ Master’s Degree Project Stockholm, Sweden 2004 TRITA-NA-E04154

Upload: vancong

Post on 04-Apr-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless

Distribution System) Mobile Network using the Spanning Tree Protocol

ALLAN FARAJ

Master’s Degree Project Stockholm, Sweden 2004

TRITA-NA-E04154

Page 2: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Numerisk analys och datalogi Department of Numerical Analysis KTH and Computer Science 100 44 Stockholm Royal Institute of Technology SE-100 44 Stockholm, Sweden

ALLAN FARAJ

TRITA-NA-E04154

Master’s Thesis in Computer Science (20 credits) at the School of Electrical Engineering,

Royal Institute of Technology year 2004 Supervisor at Nada was Stefan Nilsson

Examiner was Stefan Arnborg

Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile

Network using the Spanning Tree Protocol

Page 3: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 2(30) Allan Nadhmi Faraj

For my Mom and Dad, who made it all possible

Page 4: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 3(30) Allan Nadhmi Faraj

Abstract The aim of this Thesis was to evaluate a path cost algorithm for the Spanning Tree Protocol (STP) in a wireless mobile network, using the Wireless Distribution System (WDS). For this task we have limited ourselves to researching and experimentally verifying a cost based upon the signal and noise qualities of the links. To provide layer two connectivity the Spanning Tree Protocol was used. This is to define a loop-free topology that spans all bridges in the network. Each link in the topology represents a cost/value. Modified software was used to analyse the signal and noise values in order to calculate a proper cost. This cost is inserted into the spanning tree protocol. The mathematical model, describing the transition between given SNR values to a cost into STP, is roughly estimated through experiments. The experiments were performed on five Possio’s wireless PX30 gateways. In short, the results of the simulations have shown an improved performance of the wireless network when using the path cost algorithm as compared to without. Sammanfattning Målet med denna examensrapport är att utvärdera en kostnadsalgoritm för Spanning Tree-protokollet i ett trådlöst mobilt nätverk, genom användandet utav ett trådlöst distributionssystem. För denna uppgift har vi begränsat oss till att utforska och experimentellt verifiera en kostnad baserad på signal- och brus- egenskaperna hos en länk. För att tillgodose en länklagersammankoppling så har Spanning Tree-protokollet använts. Detta för att definiera en loop-fri topologi som spänner över alla bryggor i ett nätverk. Varje länk i topologin representerar en kostnad. Modifierad mjukvara användes för att analysera signal- och brusvärdena för att på så sätt kunna räkna ut en kostnad. Denna kostnad sätts in i Spanning Tree-protokollet. Den matematiska modellen som beskriver överföringen mellan ett givet SNR (signal brus förhållande) värde till en kostnad i STP kommer att genom experiment grovt estimeras. Experimenten utfördes på fem utav Possio’s trådlösa PX30 bryggor. Sammanfattningsvis så visade resultaten av experimenten en förbättrad prestanda hos det trådlösa nätverket när man använde kostnadsalgoritmen till skillnad mot utan.

Page 5: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 4(30) Allan Nadhmi Faraj

Preface This report is the result of my master’s project carried out at Possio AB in Stockholm during spring 2004. It is therefore the last part of my Master of Science degree at the Royal Institute of Technology. Possio AB is an engineering company within tele-/data communication with more than 20 years of experience. In short my thesis consisted of experimenting and programming Possio’s programmable wireless router, PX30. It is to evaluate a path cost algorithm for obtaining a better use of bandwidth to maintain a higher performance. I would like to thank the following persons: Johan Moberg for being my supervisor and for giving me great support at Possio AB. Thanks to Stefan Nilsson at the department of Numerical Analysis and Computing Science for helping me getting started with this thesis. Thanks to Stefan Arnborg for being my examiner at the Royal Institute of Technology. Great thanks to everybody at Possio AB for being nice and helpful to me during my time there. Last but not least I also would like to thank Kambiz Behrooz for his help, time and advice.

Page 6: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 5(30) Allan Nadhmi Faraj

Table of Contents 1. Introduction............................................................................................................................. 7

1.1. Background ....................................................................................................................... 7 1.2. Problem description .......................................................................................................... 7 1.3. Equipment and software.................................................................................................... 8 1.4. Possio AB.......................................................................................................................... 8 1.5. Project organization .......................................................................................................... 8 1.6. Outline............................................................................................................................... 9

2. WLAN - 802.11b ..................................................................................................................... 10

2.1. 802.11 Overview............................................................................................................... 10 2.2. Basic 802.11 definitions.................................................................................................... 12

3. WDS - Wireless Distribution System .................................................................................... 13 3.1. The 802.11 Distribution System ....................................................................................... 13 3.2. What is the WDS?............................................................................................................. 13

4. STP – Spanning Tree Protocol............................................................................................... 14 4.1. Spanning Tree Protocol Concepts..................................................................................... 14 4.2. Quality of Service in routing protocols............................................................................. 17

5. Bridges and Experimental Setup........................................................................................... 18 6. Algorithms and method discussion........................................................................................ 19

6.1. Costs from SNR – 1st algorithm........................................................................................ 19 6.2. Additional algorithm – 2nd algorithm................................................................................ 21

7. Results and evaluations .......................................................................................................... 23

7.1. Results with the 1st algorithm............................................................................................ 23 7.2. Results with the 2nd algorithm........................................................................................... 24

8. Conclusions.............................................................................................................................. 25

8.1. Discussion of the obtained results..................................................................................... 25 8.2. Future work....................................................................................................................... 25

9. References................................................................................................................................ 26 APPENDIX A – PX30 pictures .................................................................................................... 27

A.1 Front picture with shell .................................................................................................... 27 A.2 Front picture without shell ............................................................................................... 27 A.3 Rear picture...................................................................................................................... 27

APPENDIX B – Manual Reference page for Iwlist.................................................................... 28 APPENDIX C – Iw_own source code .......................................................................................... 29 APPENDIX D – Bridge Init script............................................................................................... 30

Page 7: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 6(30) Allan Nadhmi Faraj

List of Acronyms AODV Ad hoc on-demand Distance Vector AP Access Point BPDU Bridge Protocol Data Unit BSS Basic Service Set CSMA/CA Carrier Sense Multiple Access with Collision Avoidance DS Distribution System DSSS Direct Sequence Spread Spectrum ESS Extended Service Set IBSS Independent Basic Server Set IEEE Institute of Electrical and Electronics Engineers IETF Internet Engineering Task Force ISM band Industrial, Scientific and Medical band KTH Royal Institute of Technology, (Swedish term is Kungliga Tekniska Högskolan) LAN Local Area Network MAC Medium Access Control MANET Mobile Ad hoc NETworking NADA Department of Numerical Analysis and Computing Science, (Swedish term is

Numerisk Analys och Datalogi) NIC Network Interface Card OLSR Optimized Link State Routing RFC Request for Comments SNR Signal to Noise Ratio SS Spread Spectrum SSH Secure SHell STA Spanning Tree Algorithm STP Spanning Tree Protocol WDS Wireless Distribution System WLAN Wireless Local Area Network

Page 8: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 7(30) Allan Nadhmi Faraj

1 Introduction 1.1 Background This work has been carried out at Possio AB premises during spring 2004 in cooperation with NADA1 at KTH2. Possio AB has developed among other things a wireless gateway called PX30, which acts as an application server and as a bridge to wireless technologies. This development is due to the rapid growth of wireless LANs. The PX30 can be used as an enhancement of existing networks or used in full scale for deployment of wireless networks. The 802.1D Spanning Tree Protocol (STP) standard is a link management protocol that prevents undesirable bridging loops in a network while provides path redundancy in case one link fails. When loops occur it confuses the forwarding process and allows duplicate frames to be forwarded. For a proper functioning network we apply the spanning tree protocol so only one active path exists for data in the network. Each link in the path represents a cost/value, but the algorithm for assigning the path cost based upon the signal and noise qualities of the link is not subject to standardization. We might allow for a better use of bandwidth by inserting different path cost. If we want to enable transparent bridging in our wireless network such that it creates a wireless backbone then the Wireless Distribution System (WDS) has to be used. This mode allows the wireless nodes to only communicate with/through each other’s. A node might send data packets bound for a station on another node over the wireless network. Transparent bridges get their name because they are invisible to all the network nodes for which they provide services. 1.2 Problem description Wireless networks have certain unique characteristics where the most important one is the dynamically changing network of mobile devices. This imposes new demands on the protocol that is being used. Link conditions and surrounding circumstances between wireless nodes can change quite frequently. The wireless network needs thus to adapt to these changes in order to maintain a high performance. This arrangement requires some support from the lower layer. This final thesis discusses and evaluates two methods for assigning STP path costs using a bridged, wireless (using WDS) and mobile network. A test-bed of Possio’s wireless routers (PX30) will be used where the methods will be tested and experimental data will be obtained. For this task we have limited ourselves to researching and experimentally verifying a cost based upon the signal and noise qualities of the links. It was also desirable to compare the path cost assignment (i.e. in terms of Quality of Service) with some proposed routing protocols for wireless Ad-Hoc Networks. Since link conditions and surrounding circumstances between wireless nodes can change quite frequently we should take this into account when evaluating the path cost algorithm. The topology in the test-bed is mobile, and the changes are slow. The path cost assignment will be based upon which of the presented methods to use, so that afterwards one could decide which of them given these conditions should be choosed as the best one. What we define as best was that the percentage amount of arrived data packets should be large. For the main part of the experiments the PING utility has been used to gather the packet loss statistics.

1 NADA stands for Numerisk Analys och Datalogi and is the Swedish term for the Department of Numerical Analysis and Computing Science. 2 KTH stands for Kungliga Tekniska Högskolan, and is the Swedish term for the Royal Institute of Technology. http://www.kth.se/eng/index.html

Page 9: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 8(30) Allan Nadhmi Faraj

1.3 Equipment and software We need equipment in order to run any experiments, and software to analyze the data. So we start by choosing the appropriate equipment to be used to perform the experiments. Five of Possio’s wireless gateways (PX30) are used. For the wireless cards that were chosen in these experiments we had SENAOs 3 pc card with two antenna jacks. For obtaining and analyzing the data, I need to use the wireless tools package embedded in the PX30 operating system. Since Iwlist is used to display some information from the wireless network, I therefore modified the Iwlist source code (written in C) to gather the necessary data in real-time. The new and modified Iwlist, suitably called Iw_own was developed to do this. Iw_own gathers the data that is to be used, make some calculations and inserts the proper cost to the available protocol. This is done in real-time so this new tool now reacts on dynamic changes. The source codes for Iw_own can be found in APPENDIX C. New additions to the iwlist code are highlighted. More on how the code works will be found in Chapter 6. 1.4 Possio AB Possio AB4 develops and market wireless router products that interconnects between cellular data networking and local wireless technologies like WLAN and Bluetooth. Possio is a Stockholm based engineering company with more than 20 years of experience in product development within tele-/data communication. Possio develops a programmable wireless router (PX30) that makes it possible to connect pc´s, hand-held devices, phones, and other WLAN or Bluetooth-enabled terminals to cellular networks using GSM/GPRS, CDMA or UMTS networks. Possio also manufacture the worlds only integrated GSM Fax as well as PCMCIA cards for GSM/GPRS and GSM-R. [12] 1.5 Project organization Following persons have been involved in this master’s project: Master thesis author M.Sc. Allan Nadhmi Faraj Supervisor at Possio AB M.Sc. Johan Moberg Supervisor at Department of Numerical Analysis and Computing Science at Royal Institute of Technology Ph.D. Stefan Nilsson Advisor at Network Operating Center, Royal Institute of Technology System Engineer Fredrik Widell Examiner at Royal Institute of Technology Prof. Stefan Arnborg

3 http://www.senao.com 4 http://www.possio.com

Page 10: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 9(30) Allan Nadhmi Faraj

1.6 Outline Chapter 1 is an introduction and a problem definition of the report. Chapters 2 and 3 cover the 802.11 basic concepts. Chapter 4 describes the Spanning Tree Protocol and its concepts. Chapter 5 explains the bridge and the experimental setup for the wireless router (PX30). Chapter 6 describes the algorithm and the experiments that were made using it. Chapter 7 and 8 concludes the whole report and chapter 9 holds the references that I have used. The appendices contain some source code, pictures and an init script that was used.

Page 11: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 10(30) Allan Nadhmi Faraj

2 WLAN – 802.11b 2.1 802.11 Overview Wireless Local Area Network has been deployed since 1980 as an appealing alternative to the usual wired net because of its flexibility in our everyday life. The first WLAN standard arrived 1997 and is called 802.11, which was developed by IEEE (Institute of Electrical and Electronic Engineers). [5] For a secure transmission of the data there is a modulation technique called Spread Spectrum (SS), which several of the 802.11 wireless LAN standards are using, including 802.11b. It basically means that the information that is being sent is divided over the available bandwidth instead of using the whole bandwidth as in the case for a channel. That technique was developed to make the communication safer against eavesdropping or changing in the signal among other things. One of the two variants of SS is the Direct Sequence Spread Spectrum (DSSS) technique, which encrypts the data. The encryption is based on that bits of data in a haphazard sequence are mixed with the actual data, and the sending and receiving station only knows this encryption. All stations are applying the same code. It is also used to spread the data over a larger frequency spectrum. DSSS spreads the data over a bandwidth of 25 MHz, which means that there is room in the frequency band for three non-overlapping channels out of fourteen channels. To minimize the interference between neighbouring access points you have to plan where to use which channel and in that way configure multiple DSSS networks to operate simultaneously in the same area. Fourteen channels are defined in the IEEE 802.11 for operation across the 2.4 GHz frequency band. In North America 11 channels are allowed ranging from 2.412 GHz to 2.462 GHz. In most of Europe thirteen channels are allowed ranging from 2.412 GHz to 2.472 GHz. As an example, the channel arrangement for North America is illustrated in Figure 2.1.

One of the additions that IEEE did 1999 to 802.11 was 802.11b. This addition to the 802.11 standard meant an increase from 2 Mbps up to 11 Mbps in data rate, and can only be implemented if DSSS is used. It can also use 5.5, 2 and 1 Mbps when 11 Mbps cannot be maintained. The 802.11b standard is currently the most utilized within WLAN, and operates in the unlicensed 2.4 GHz ISM – band. [2] [5] [10]

2400 GHz 2.412 2.437 2.462 2483 GHz

Figure 2.1 Minimum channels spacing for DSSS Networks in North America

Channel 1 Channel 6 Channel 11 25 MHz 25 MHz

Page 12: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 11(30) Allan Nadhmi Faraj

Stations in a wireless network must be able to coordinate its admission and its usefulness of the shared medium, and this is maintained by the MAC- protocol. The 802.11 MAC protocol is CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance). The protocol can sense if the “channel” is busy with the help of that the physical layer reads the energy levels of the radiofrequencies. This is to determine if another station is transmitting or not and therefore gives this information to the MAC protocol. Like CSMA/CD (used in wired networks) the CSMA/CA is used to reduce the collisions in the network by “listening” to the network before transmission. CA (Collision Avoidance) broadcasts to the network and “warns” everybody else that it will use the network for an amount of time. The problem with CSMA/CA is that it kind of increases the network loads by broadcasting before the real data actually is transmitted. [7] [10] Wireless stations, STA (STAtion) and access points (AP) are also defined by the 802.11 standard. A computer with a network interface card (NIC) but also handheld computers or something similar with a network card is being able to act as a station. A unit which both can send and receive signals, but also is able to connect wireless networks with each other or with physical networks is called an access point. Every network card (NIC) is identified by a 48-bits address, called a MAC address, which is given out in blocks by IEEE. [5] [10]

Page 13: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 12(30) Allan Nadhmi Faraj

Wired LAN, Distribution System

(BSS) (ESS)

Infrastructure Mode Ad Hoc Mode

(IBSS)

2.2 Basic 802.11 definitions There are two topologies that occur in WLAN and these are Ad Hoc mode and Infrastructure mode as shown in Figure 2.2. In Ad Hoc, also called peer to peer, the network is detached, where all the computers can communicate directly with each other within a range of 100 meters. For larger distances a repeater has to be used and these are so-called signal amplifiers, which easily can double up the range. If a client in an Ad Hoc mode wishes to communicate outside the cell (the access point coverage area), then a member of that cell has to operate as a gateway. It means that it can’t connect to another LAN, (at the data link layer), but it is possible to connect to other networks at the IP layer. It is more like a computer-to-computer network. Ad Hoc LAN is defined as Independent Basic Server Set (IBSS) by the 802.11 standard. IBSS is a self-contained network, and in which no access to the distribution system (DS) is available. The distribution system is a fundamental part of an 802.11 infrastructure. In Infrastructure mode no direct communication can be obtained to the receiver without a so-called middle hand, an access point, which all data is sent to. It functions like an ethernet bridge and as a router. Infrastructure mode is defined by the 802.11 standard as a Basic Service Set (BSS). When several BSSs are connected by a distribution system (DS) it’s called an Extended Service Set (ESS). An access point now functions as a portal to the DS, and the ESS can be thought of as being connected by the distribution system to form a collection of hubs. To network equipment outside of the ESS, the ESS and all of its mobile stations appears to be a single MAC- layer network where all stations are physically stationary. If a wireless station (STA) accidentally happen to be encountered outside a cell the station uses it self of roaming, which means that it seeks the access point that covers the area best. A closer explanation of the DS will be found in the next chapter. [2] [11]

Figure 2.2 Infrastructure Mode and Ad Hoc Mode

Page 14: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 13(30) Allan Nadhmi Faraj

3 WDS – Wireless Distribution System 3.1 The 802.11 Distribution System As was shown in the previous chapter the Distribution System (DS) is a system used to interconnect a set of BSSs (Basic Service Set’s) and integrated local area networks to create an ESS (Extended Service Set). The IEEE 802.11 standard does not necessarily describe the distribution system as a network and does furthermore not place any restrictions on how it is implemented, only on the services it must provide. The distribution system may be constructed of either wired or wireless networks, and it is a fundamental part of an 802.11 infrastructure BSS and ESS. It is a mechanism by which one access point communicates with another to exchange frames for stations in their BSSs, forward frames to follow mobile stations from one BSS to another, and exchange frames with wired networks, if any. It is therefore the backbone of the WLAN. [2] [11] 3.2 What is the WDS? A Wireless DS (WDS) is used sometimes instead of the wired one, which some access point’s support. This means that an access point might send packets bound for a station on another access point over the wireless network. In order for that to work they must be on the same channel, agree on the same rates etc. WDS is basically a system/mode that enables transparent bridging. This mode allows the wireless access points to only communicate with/through each other’s such that it creates a wireless backbone (an extension of the wireless network), while at the same time providing a local hot spot. There are some ways an access point can exchange packets, and one of them is to use the 802.11 WDS by which all four address spots in the 802.11 header are used, (source, destination, transmitter and receiver). This is accomplished by that both the “To DS” and “From DS” bits are set in the 802.11 WDS packet. This method is also the one that we are using in our firmware. Due to a bug in station firmware code used in Intersil Prism2/2.5/3 cards that prevent standard-compliant 4 address frames, the Host Ap driver does WDS by using a non-standard frame format. This is done by using three addresses and embedding the fourth address (which is usually also in the header) in the frame payload. Jouni Malinen implemented it. For more information regarding these drivers visit the homepage5 for this software at [4]. Multiple implementations of a WDS are incompatible with each other hence interoperability between 802.11 products of different vendors does not always work, and is therefore not guaranteed. This is probably because the WDS feature is not completely specified in IEEE or Wi-Fi standards. [16] The interface of an access point works in a way that when another access point is in reach they can talk to each other if and when WDS is enabled. Both access points must apply the same wireless parameters to each other thus enabling the two to communicate. The more WDS peers you add in the bridging setup, the greater will the coverage area be. One drawback of this setup is that loops easily can occur in the network if the links aren’t configured appropriately. This is accomplished by adding these interfaces to a bridge group and STA (Spanning Tree Algorithm) running over it. When loops occur it allows duplicate data frames to be forwarded and duplicated endlessly. By discovering other bridges in the network topology and establishing forwarding rules so only on path exists for data in the network is of crucial importance for the proper functioning of the network. It is not clear what the best-automated routing protocol for this arrangement would be. The term STA that is used throughout the 802.11 specifications is as I said the term for a station, which is any device that participates in talking on the wireless network. That should not be mixed up with the similar term STA, which stands for Spanning Tree Algorithm. More of the Spanning Tree Algorithm and STP (Spanning Tree Protocol) will be found in the next chapter. [10] [11] 5 http://hostap.epitest.fi/

Page 15: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 14(30) Allan Nadhmi Faraj

4 STP – Spanning Tree Protocol During 1985 IEEE (Institute of Electrical and Electronics Engineers) began to develop a standard (802.1D) [IEEE90a] for transparent bridge operation and created the Spanning Tree Protocol, (STP). It is used to allow the Layer 2 network to have more than one path to a destination by blocking ports that can cause a packet to make a complete circle through the network. The descriptions and discussion of the STP in this and other chapters relate exclusively to the IEEE 802.1D version of the protocol. [5] [15] 4.1 The Spanning Tree Protocol Concepts STP is a link management protocol that prevents undesirable bridging loops in a network, where there is more than one active path between two stations, while providing path redundancy in case one link fails. When loops occur it confuses the forwarding process and allows duplicate frames to be forwarded. To provide path redundancy, Spanning Tree Protocol defines a tree that spans all switches/bridges in an extended network. If you trace a path from any bridge to any other bridge, you will find that there is only one possible path and that is the desired topology for our bridged network. We need to understand some basic concepts of the protocol before going any further. [10] The logical center of the network is the Root Bridge, which acts as a reference point. Any bridge can be the Root Bridge depending on the configuration of certain parameters. If the topology changes the Root Bridge may also change. To ensure a loop free network only one bridge has to be responsible for forwarding traffic from the direction of the Root Bridge. This bridge is known as a Designated Bridge, which each link from the Root Bridge will have. The Root Bridge is always the Designated Bridge for all links to which it is directly connected. Each bridge and port within a bridge in the network has to be uniquely identified in order for everything to function properly and for that a Bridge Identifier is used. A Bridge Identifier is a 64-bit field, which consists of a globally unique 48-bit field, and a 16-bit priority field, unique to each bridge. The bridge MAC address is used in the 48-bit field of the Bridge Identifier, while the priority field can be in a range of 0 to 65 535, (default value is 32 768). The determination of the Root and Designated Bridges is dependent in part of the numerical value of the Bridge Identifier. The bridge with the numerically lowest Bridge Identifier becomes the Root Bridge. The priority field allows a network administrator to control the topology independently from that which would result if she depended solely on the numerical nature of the 48-bit MAC address (i.e. when the default value of the priority field is set). As in the case with a Bridge Identifier each port on a bridge is assigned a Port Identifier that contains a unique 8-bit port number with a configurable port priority field. There are three types of ports for a given Designated Bridge:

• A Designated Port • A Root Port • All other ports are not part of the active topology

STP attempts to configure the network topology such that every bridge is reachable from the Root through the path with the lowest cost. The cost in each port specifies the efficiency of each link, that is the lower the cost, the more efficient the link is. Remember that the path cost is simply the sum of the link costs over the path. This means that the Spanning Tree will form such that the highest capacity links are always used. By default the cost of a given link is 100. [10] [14]

Page 16: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 15(30) Allan Nadhmi Faraj

STP forces all the redundant data paths into a blocked state. By blocking the paths to destinations other than the given root path, STP creates only one path through the network. To avoid confusion, let me clarify that the Spanning Tree Protocol (STP) and the Spanning Tree Algorithm (STA) are two different entities. After STP discovers all the links in the network, the STA chooses a single path through the network and blocks redundant links, and does that by electing a Root Bridge. STP will reconfigure and recalculate the Spanning Tree topology, if any of the network segments in the Spanning Tree become unreachable, or if the costs change between any links. It does so by using the once blocked links in the network, (i.e. activating the standby path). The Spanning Tree algorithm is based on the graph theory, also known as Shortest Path Algorithm, and was developed by Edsger Dijkstra. Communications between the bridges is carried out using Bridge Protocol Data Units (BPDUs). BPDUs are messages passed between bridges/switches to help STP calculate and learn the topology of a network. These are transmitted with a known multicast address. Under steady state conditions, there will be only one BPDU received or transmitted on any port every 2 seconds. The multicast messages contain information that identifies the network link such as:

• The bridge presumed to be the Root Bridge • The calculated Root path cost • Other STP bridges • Port identifiers

These messages are exchanged at configurable intervals, and should one or more bridges fail or another STP member join the network, BPDU messages will help the other STP member bridges to notice this change in the network topology. The neighbouring bridges will detect the lack of configuration message and initiate an immediate STA calculation. [13] [15] Each port on a bridge using STP exists in one of the following five states and moves between these states as described in the next page: [10] [14]

• Blocking state o A port in this state is neither a Designated Port nor a Root Port. A blocking port

will not receive or forward data. It will not transmit BPDU messages but it will listen for them and will become active if there are no BPDUs heard. The port does therefore not put any of the information it hears into the address table. To become in an active state it will go through different states as shown in the next page.

• Listening state

o A port in this state is not forwarding data but it will compare its own information with information received from other bridges and decides which is best suited for the Spanning Tree. In this state the port is not learning any addresses.

• Learning state

o A port in this state is preparing to forward traffic by learning the relative locations of attached stations and builds its address table accordingly. It is still not allowed to send or receive frames. The learning state is similar to the listening state, except the port can now add information it has learned to the address table.

• Forwarding state

o A port in this state is part of the active Spanning Tree and can now begin to learn from BPDUs and starts to build a filter table.

Page 17: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 16(30) Allan Nadhmi Faraj

• Disabled state o A Disabled Port will neither nor transmits data frames or BPDUs. A port in this

state has been manually shut down by the network administrator or by the system due to a hardware problem.

A port moves through these five states as follows: [3]

� From Initialization to Blocking. � From Blocking to Listening or to Disabled. � From Listening to Learning or to Disabled. � From Learning to Forwarding or to Disabled. � From Forwarding to Disabled.

STP uses different timers that control the behaviour of the network topology. The timers are used to determine how long it will take STP to converge after a link failure or change in the network topology. Three different timers and their default settings are shown: [10] [14] [15]

• Hello Time o This Hello time is the time between configuration BPDUs emitted by the Root

Bridge. Fast Hello times will result in faster detection of topology changes at the expense of increased STP traffic. The default value is 2 seconds.

• Max Age

o This timer determines how long the bridge stores protocol information received on a port. The default value is set to 20 seconds.

• Forward Delay

o This timer determines how long listening and learning will last before the port begins forwarding. The default value is 15 seconds.

The Spanning Tree is continually and reliably monitoring the network and makes sure that data loops do not occur. A poem titled Algorhyme was written by the inventor of the Spanning Tree Algorithm [13]. Here it is:

I think that I shall never see A graph more lovely than a tree. A tree whose crucial property Is loop-free connectivity. A tree that must be sure to span So packets can reach every LAN. First, the root must be selected. By ID, it is elected. Least-cost paths from root are traced. In the tree, these paths are placed. A mesh is made by folks like me, Then bridges find a spanning tree.

- Radia Perlman

Page 18: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 17(30) Allan Nadhmi Faraj

4.2 Quality of Service in routing protocols It was also desirable to compare the path cost assignment (i.e. in terms of Quality of Service) with some proposed routing protocols for wireless Ad-Hoc Networks. Internet Engineering Task Force6 has a working group that are working on developing and improving routing protocols. This working group is called MANET (Mobile Ad-Hoc NETworking) [8]. Several routing protocols have been proposed from MANET during the last few years. Some of the protocols are still under development (work in progress). These documents are known as Internet drafts and have a maximum lifetime of six months. If they are not updated by that time, they will be deleted. Internet drafts are the preliminary versions of RFC (Request for Comment) documents. An RFC is a technical report of proposals for new or revised protocols and may be extended with more functionality if necessary. [6] There are currently two RFCs in wireless Ad-Hoc networking presented in MANET. Unfortunately none of them supports Quality of Service since the number-one concern is not about finding the best optimized/shortest-path route to a destination. Depending on what these networks will be used for, then Quality of Service (QoS) might be needful to have into a routing protocol. These are the following RFCs:

• AODV – Ad hoc On-Demand Distance Vector protocol, RFC 3561 [1] The Ad hoc On-Demand Distance Vector (AODV) routing protocol is intended for use by mobile nodes in an Ad hoc network. It is a reactive protocol, which means that it only requests a route when needed. This does not require nodes to maintain routes to destinations that are not in active communication. When a node determines that it needs a route to a destination a route request is generated. The path from a source to a destination is determined from the route request that reaches the destination first. Sequence numbers are used to guarantee a loop free topology and a node is required to select the greatest sequence number when given the choice between two routes. Hello messages are used to determine if a neighbour node has moved away or if the link is down. So, by listening for packets from its set of neighbours a node may determine connectivity. It does however not support Quality of Service.

• OLSR – Optimized Link State Routing protocol, RFC 3626 [9]

The Optimized Link State Routing protocol is intended for use by mobile nodes in an Ad hoc network. It is a proactive protocol, which means that it maintains a topological map of the entire network. The key concept used in this protocol is that of multipoint relays (MPRs). The nodes selected as MPRs forwards broadcast messages during the flooding process and are used to calculate the route between any given nodes. OLSR provides optimal routes in terms of number of hops using shortest path algorithm. Hello messages are broadcasts between nodes with information about the state of the link. It does however neither contains support for Quality of Service.

These routing protocols have two dominated factors that affect the network complexity. The factors are the rate at which changes occur in the topology and the number of PX30s in the network. Changes due to surrounding circumstances in a mobile network make the current state information imprecise, which makes the idea of adding QoS to a real challenge. That is why the focus on routing in wireless networks is only on best effort data traffic.

6 www.ietf.org

Page 19: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 18(30) Allan Nadhmi Faraj

5 Bridges and Experimental Setup In this section I will go through how we did the bridge and the experimental setup for the PX30. By setting up an experimental test-bed the performance evaluation of the presented algorithms could be done. Five of Possio’s wireless gateways (PX30) equipped with IEEE 802.11b cards, a router and a PC are used in the test-bed. The tests are conducted at Possio’s premises. During the first test I had the PX30s placed in different locations in a room with the default parameters set (e.g. cost of 100 between all WDS-links) in STP. The PING utility was then used to gather the packet loss statistics to each and every node. This was done by sending TCP packets of same size (1500 Bytes) from one wireless node to the rest of the nodes simultaneously. At the sender node the throughput was evaluated as the number of echo requests that was received. A response to the request is allowed within the default time of one second. The output data was thus saved and a log of the throughput was obtained. A separate channel was used with the purpose of preventing interference from other PX30s that was active at Possio. The purpose of this test was to find out how the mathematical function of the first algorithm (presented in the next chapter) should be estimated. Further experiments with about the same procedure were done, and a log of the throughput was obtained. During the experimental phase the PX30s were initially placed out without any external antennas, and did undergo about the same procedure as with the first test. This time two pairs of external antennas were gradually and in a controlled manner taking turn on the PX30s that was placed out. In other words, the antennas were connected and disconnected from a PX30 during the experimental phase. Seven different combinations were tried out when moving the antennas around. We could therefore construct a mobile network by moving the antennas around instead of moving the actual PX30s. The exactly same procedure was made but this time using one of the algorithms (presented in the next chapter). The idea is that the data packets generated from the PING utility should choose to go a more efficient way/path than in the default case. Two different set ups were about to be compared to each other:

• Default parameter set vs. the first presented algorithm, against • Default parameter set vs. the second presented algorithm (additional algorithm)

By placing some of the receiving nodes at certain positions they tend to move in and out of the sending nodes range. The traffic condition and throughput of the net should be in a poor state by then. When the sender node loose connectivity with a node the other nodes supports routing through them. A main router was also used in the test bed. Its main function was to separate the network of the test-bed with the company’s internal network. A daemon process was running in all of the PX30s in order to calculate a cost from each reachable node in the network. The modified iwlist software does provide for the SNR measurements and therefore even the inserted path cost. Because of not risking going through the configuration every time the PX30 make a reboot or if something goes wrong I had prepared an init script for the setup that consists of standard configuration. The init script from one of the PX30 can be seen in APPENDIX D.

Page 20: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 19(30) Allan Nadhmi Faraj

6 Algorithms and method discussion The signal to noise ratio (SNR) values can be obtained from neighbouring nodes and periodic updates of these values can be done. By maintaining the history of numerous values over a certain period of time a weighted moving average was calculated. The modified iwlist software did provide for the SNR measurements for each neighbouring node and therefore even the inserted path costs into STP. The modified software does only calculate a cost to a neighbouring node if a WDS-link has been put up to that node. By base the path cost between each node using a performance measure like SNR the STP was able to build a more preferable topology of the “WDS-enabled” network. A high value of the SNR indicates that we have a good link, where the probability of the packet loss is low. When having a low value of SNR it indicated that we had a bad link with lots of packet loss. The unit of the measurements are in dBm. Link conditions and surrounding circumstances between wirelesses nodes can change quite frequently. We took this into account when calculating the path cost. The 1st and the 2nd algorithm that was used throughout the experiments are presented as output Y and Y2, which can be seen later in this chapter. The mathematical model of the first algorithm, describing the transition between given SNR values to a cost into STP, is roughly estimated through experiments. 6.1 Costs from SNR – 1st algorithm A wireless node, call it N, registers signal to noise ratio (SNR) values from other wireless nodes, call them Mi where i = 1... 4. The quality of each link (i.e. SNR values) that I base my calculation upon are available to an application from the wireless gateway platform, and are collected using iwlist. Iwlist is used to display some information from a wireless network interface, see APPENDIX B for more information. The registered signal to noise ratio value is derived from a subtraction of the noise value from the signal value. If the wireless nodes are far from each other a SNR value of zero is observed, and when close to each other a SNR value of approximately 36 is noticed. At node N the 20 most recent registered SNR-values is saved from each node Mi and will be kept in separate tables, which we can name Tabi where i = 1... 4. The most recent SNR-value in Tabi is stored at position one, and the second recent value is stored at position two etc. See Figure 6.1. Due to the surrounding changes (e.g. atmospherically disturbances) the registered values will have a slight random fluctuation around a slowly varying mean level. The noise/disturbance is acting about the same at different time intervals, where one could assume that the results have been influenced from similar random mechanisms. Some form of a mean value is preferable.

Figure 6.1 Registered values in each node for a given link

The most recent value is inserted here at position 1.

Pos. 1 Pos. 2 … … Pos. 20 t = 0s 0 0 0 0 … 0 0 t = 3s 14 0 0 0 … 0 0 t = 6s 17 14 0 0 … 0 0 t = 9s 15 17 14 0 … 0 0

Page 21: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 20(30) Allan Nadhmi Faraj

Since that the most recent registered values are more important than the past ones (mobile system), a weighted moving average should be of interest. Instead of calculating the mean from each vector at Tabi, we multiply this vector with a so-called weight vector, let us call it Weighti, where i = 1… 20, see Figure 6.2. For example, the value at position i = 1 in Weighti, points at the most recent registered value at Tabi. If we used the simple moving average we will treat the i last observations equally, but with the use of a moving average past values should be treated with a less emphasis than the recent. So the weight or percentage is set depending on how long we want the most recent values to remain significant in the calculation. For example, if 100% is given to the current registered value, then 100% of the current value is added up with 90% of the previous value. Since the changes in our system should be considered as slow, then we have to use a long period, which means that we derive a percentage of approximately 10%. That gives us:

Percentage, 9.0)1.01( =−≈λ (1)

Figure 6.2 Weight vector

By looking at Figure 6.1 we can see that the mean value at Tabi is initially set to zero, which means that the output, Y, is 100 when using (2). When the next value (three seconds later) is registered the mean value quickly changes to 14, which change the value Y to 6, and this value is inserted to the spanning tree protocol. For each new value in Tabi a new Y is calculated using (2).

Y =

����

����

=

= 1)(

)()(

100

1

1k

i

k

i

iWeight

iWeightiTab; k = Number of applied values (2)

If the reported value of Y differentiates more than a given threshold from the current Y value, then the current value will be reported, see (3). The mathematical model of this first algorithm (2), describing the transition between given SNR values to a cost into STP, is roughly estimated through experiments.

Report if: 35)(

)()(100 >−×

reportedYcurrentYreportedY

(3)

The value at position i = 1 in Weighti, points at the most recent registered value at Tabi.

1 λ λ2 λ3 … λ18 λ19

Page 22: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 21(30) Allan Nadhmi Faraj

The SNR value does usually vary between 0-36, which gives us that Y´ s variation giving these boundaries does vary between 100-2. The lower the cost we have on a link indicates that the SNR value for that link is higher, which means that a good link will give us a low cost. If a link goes down an SNR value of zero is registered. 6.2 Additional algorithm – 2nd algorithm Another way of calculating the output Y was performed (i.e. 2nd algorithm) and experimental data was obtained. It is based upon the theories of Shannon’s formula of a channel capacity. Since the SNR values in our case vary between 0-36, a relationship is obtained using (4).

)101(log 102

SNR

bBaSTP ++= (4) A bad SNR indicates a cost of 100, while a good SNR indicates a cost of two. That is the requirements that I have set, just as the first algorithm (2).

)101(log1

100100100

))101(log1(

100

)101(log

100

)101(log1000

)101(log036

1001000

10max

2

10max

210

max

2

10max

2

10max

2

SNR

SNRSNR

SNR

SNR

bBa

BBB

b

bBbB

bBaSTPSNR

bBabBaSTPSNR

+−−=−=�

+−×=

+−=�

++−=

++==�=

−=�+==�=

Inserting these values (i.e. a and b) into (4) will give us the relationship between a given SNR value to a cost into STP.

�+−×+−

−�

�+×+−

++−

=++=

))101(log1(

)101(log1

100100

)101(log

))101(log1(

100

)101(log1

100100

)101(log

102

10max

2

102

10max

210

max

2

102

SNR

SNR

SNR

SNRSNR

SNR

bBaSTP

Page 23: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 22(30) Allan Nadhmi Faraj

=

����

����

� ×=

���

���

���

���

+−

+−−×=

=

=

36

)(

)()(

;

)101(log1

)101(log11100

max

1

1

10max

2

102

2

SNR

iWeight

iWeightiTabSNR

Y k

i

k

i

SNR

SNR

���

���

���

���

+−

+−−×=∴

���

���

���

���

+−

+−−×≡���

���

+−

+−×−�

)101(log1

)101(log11100

)101(log1

)101(log11100

)101(log1

)101(log1100100

10max

2

102

10max

2

102

10max

2

102

SNR

SNR

SNR

SNR

SNR

SNR

STP

This gives us a new output, Y2 as shown in (5).

(5) Experiments as described in the previous chapter where made on both of the algorithms, and experimental data was obtained. As can be seen from the results in the next chapter, we get a significant improvement of the networks performance when using the path cost algorithms as compared to without (i.e. default case). For obtaining and analyzing the data, I need to use the wireless tools package embedded in the PX30 operating system as mentioned earlier. Since Iwlist is used to display some information from the wireless network, I therefore modified the Iwlist source code (written in C) to gather the necessary data in real-time. The new and modified Iwlist, suitably called Iw_own was developed to do this. Iw_own gathers the data that is to be used, makes some calculations and inserts the proper cost to the available protocol using either (2) or (5).

Page 24: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 23(30) Allan Nadhmi Faraj

7 Results and evaluations On the experiments that have been run, the first algorithm works better than the second. It provides a high increased performance of the wireless network. This does not mean that the first algorithm is the best choice to use in all kind of wireless networks. The gains from using these path cost estimation algorithms do of course depend on the wireless networks that are being set up. In short the obtained results depend on the emplacement of the five nodes, and changes in the environment. The two algorithms will be run under the impact of node movement to evaluate their performances under dynamic topology changes. As mentioned in chapter five seven different combinations were tried out when moving the antennas around. We could therefore construct a mobile network by moving the antennas around instead of moving the actual PX30s. The packet loss values presented in these tables below are the average values of the packet loss from a node to another of each combination. 7.1 Results with the 1st algorithm The packet loss values presented in these tables below are the average values of the packet loss from a node to another of each combination. Figure 7.1 shows the average packet loss between each given nodes when using the first algorithm as compared to without.

Node-2-node 1� 2 1�3 1�4 1�5 Average Packet loss, default settings 52% 26% 49% 61% Average Packet loss using 1st algorithm 16% 5% 14% 26%

Table 7.1 Average Packet loss statistics

Experiment with the 1st algorithm

52%

26%

49%

61%

16%

5%

14%

26%

0%

10%

20%

30%

40%

50%

60%

70%

1--> 2 1--> 3 1--> 4 1--> 5

Node-2-Node

Pac

ket l

oss

Average Packet loss, default settings Average Packet loss using 1st algorithm

Figure 7.1 Average packet loss when using the first algorithm as compared to without

Page 25: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 24(30) Allan Nadhmi Faraj

7.2 Results with the 2nd algorithm The packet loss values presented in this table below are the average values of the packet loss from a node to another of each combination. The average packet loss when using the second algorithm (additional algorithm) as compared to without is shown in Figure 7.2.

Node-2-node 1�2 1�3 1�4 1�5 Average Packet loss, default settings 28% 26% 24% 32% Average Packet loss, using 2nd algorithm 14% 22% 17% 13%

Table 7.2 Average Packet loss statistics

Experiment with the 2nd algorithm

28%26%

24%

32%

14%

22%

17%

13%

0%

5%

10%

15%

20%

25%

30%

35%

1--> 2 1--> 3 1--> 4 1--> 5

Node-2-Node

Pac

ket l

oss

Average Packet loss, default settings Average Packet loss, using 2nd algorithm

Figure 7.2 Average packet loss when using the first algorithm as compared to without

Page 26: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 25(30) Allan Nadhmi Faraj

8 Conclusions 8.1 Discussion of the obtained results Experiments have verified that Quality of Service, from a performance perspective, is needed in wireless networks. This does however not mean that it is always the best choice depending on what the network will be used for. Changes due to surrounding circumstances in a mobile network make the current state information imprecise, which makes the idea of adding QoS to a real challenge. That is why the focus on routing in wireless networks is only on best effort data traffic, and not about finding the best optimized/shortest-path route to a destination. The path cost algorithms presented in this paper does improve the networks reliability and performance. It does so by choosing the best route based on the Quality of Service constraint among the possible routes that is computed in the Spanning Tree Protocol. On all experiments that have been run, the first algorithm works better than the second. The obtained results do of course depend on changes in the environment as mentioned, and the emplacement of the nodes. Nodes far away but still within transmitting range to a node are considered as valid, despite the poor connection. Most of the present routing protocols use the “shortest hops path”, and by doing so the good quality links may not be used. The revised algorithm may thus improve the chance that a better bandwidth route is found between two adjacent nodes. 8.2 Future work There are several issues that could be subject to further studies. These are just some of them:

• An approach is to complement the Spanning Tree Protocol with an Ethernet protocol that uses the Wireless Distribution System to gather values from other bridges and therefore set a path cost to them.

• Investigate the relationship between given SNR values to a path cost by studying the behaviour of the packet loss in different scenarios. This is accomplished by study the SNR values and the packet loss between different n-hop neighbours to each other.

• Study the advantages of using the Rapid Spanning Tree Protocol (RSTP; IEEE 802.1W) with the presented path cost algorithms.

Page 27: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 26(30) Allan Nadhmi Faraj

9 References A URL for the reference is provided wherever possible. While all URLs provided below were valid (and tested) in Aug 2004, URLs can become out of date. [1] Ad hoc On-Demand Distance Vector (AODV) Routing, http://www.ietf.org/rfc/rfc3561.txt [2] By Bob O’Hara and Al Petrick, “IEEE 802.11 Handbook – A Designer’s Companion”, The

Institute of Electrical and Electronics Engineers, New York, ISBN 0-7381-1855-9. [3] Cisco Systems http://www.cisco.com [4] HostAp driver http://hostap.epitest.fi/ [5] IEEE, Institute of Electrical and Electronic Engineers http://www.ieee.org [6] Internet Engineering Task Force http://www.ietf.org [7] James F. Kurose and Keith W. Ross, “Computer Networking – A Top-Down Approach Featuring

the Internet – 2nd edition”, Addison – Wesley Publishing Company, Massachusetts, ISBN 0-201-97699-4.

[8] Mobile Ad hoc Networking (MANET) – Routing Protocol Performance Issues and Evaluation

Considerations, http://www.ietf.org/rfc/rfc2501.txt [9] Optimized Link State Routing Protocol (OLSR), http://www.ietf.org/rfc/rfc3626.txt [10] Part 3: Media Access Control (MAC) Bridges – ANSI/IEEE 802.1D, http://standards.ieee.org./getieee802/ [11] Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)

Specifications, http://standards.ieee.org/getieee802/802.11.html [12] Possio AB http://www.possio.com [13] Radia Perlman, “Interconnections 2nd edition – Bridges, Routers, Switches, and Internetworking

Protocols”, Addison – Wesley Publishing Company, Massachusetts, ISBN 0-201-63448-1. [14] Rich Seifert, “The Switch Book”, Wiley Computer Publishing, New York, ISBN 0-471-34586-5. [15] Sean Odom and Hanson Nottingham, “CISCO Switching – Black Book”, the Coriolis Group,

Arizona, ISBN 1-57610-706-X [16] Wi-Fi Planet http://www.wi-fiplanet.com/

Page 28: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 27(30) Allan Nadhmi Faraj

APPENDIX A – PX30 pictures7

A.1 Front picture with shell

A.2 Front picture without shell

A.3 Rear picture

7 http://linuxdevices.com/articles/AT7459336271.html

Page 29: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 28(30) Allan Nadhmi Faraj

APPENDIX B – Manual Reference8 Page for Iwlist NAME iwlist - Get wireless statistics from specific nodes SYNOPSIS iwlist interface freq iwlist interface ap iwlist interface scan iwlist interface rate iwlist interface key iwlist interface power iwlist interface txpower iwlist interface retry iwlist --help iwlist --version DESCRIPTION Iwlist is used to display some large chunk of information from a wireless network interface that is not displayed by iwconfig. This is typically list of parameters. PARAMETERS Freq/channel Give the list of available frequencies in the device and the number of defined channels. Please note that usually the driver returns the total number of channels and only the frequencies available in the present locale, so there is no one to one mapping between frequencies displayed and channel numbers. Ap/access point Give the list of Access Points in range, and optionally the quality of link to them. This feature is obsolete and now deprecated in favour of scanning support (below), and it will disappear in the future. Scan [ning] Give the list of Access Points and Ad-Hoc cells in range, and optionally a whole bunch of information about them (ESSID, Quality, Frequency, Mode...). The type of information returned depends on what the card support. Triggering scanning is a privileged operation (root only) and normal users can only read left-over scan results. By default, the way scanning is done (the scope of the scan) will be impacted by the current setting of the driver. Also, this command is supposed to take extra arguments to control the scanning behaviour, but this is currently not implemented. Rate/bit [rate] List the bit-rates supported by the device. Key/enc [ryption] List the encryption key sizes supported and display all the encryption keys available in the device. Power List the various Power Management attributes and modes of the device. Txpower List the various Transmit Power available on the device. Retry List the transmit retry limits and retry lifetime on the device. --Version Display the version of the tools, as well as the recommended and current Wireless Extensions version for the tool and the various wireless interfaces.

8 http://leaf.sourceforge.net/devel/jnilo/manpages/iwlist.html

Page 30: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 29(30) Allan Nadhmi Faraj

APPENDIX C – Iw_own source code The source code for Iw_own can be viewed at this URL: www.e.kth.se/~afj/Iw_own_source_code.pdf For further information contact me at: [email protected]

Page 31: Evaluation of Path Cost Algorithms for a Bridged Wireless ... · Evaluation of Path Cost Algorithms for a Bridged Wireless (Wireless Distribution System) Mobile Network using the

Master Thesis Project 2004-12-08 30(30) Allan Nadhmi Faraj

APPENDIX D – Bridge Init script Because of not risking going through the configuration everytime the PX30 make a reboot or if something goes wrong I have prepared an init script for the setup that consists of standard configuration.

#Init script iwpriv wlan0 wds_add 00:02:6F:31:03:E6 (1) iwpriv wlan0 wds_add 00:02:6F:30:DA:81 iwpriv wlan0 wds_add 00:02:6F:31:03:EA iwpriv wlan0 wds_add 00:02:6F:07:23:14 brctl addbr br0 (2) brctl addif br0 wlan0 (3) brctl addif br0 eth0 brctl addif br0 wlan0wds0 (4) brctl addif br0 wlan0wds1 brctl addif br0 wlan0wds2 brctl addif br0 wlan0wds3 /etc/rc.d/init.d/rc.firewall (5) /etc/rc.d/init.d/sshd start (6) ifconfig wlan0wds0 0.0.0.0 (7) ifconfig wlan0wds1 0.0.0.0 ifconfig wlan0wds2 0.0.0.0 ifconfig wlan0wds3 0.0.0.0 ifconfig br0 192.168.0.2 (8) route add -net 0.0.0.0/0 gw 192.168.0.1 br0 (9) iwconfig wlan0 channel 3 (10) iwconfig wlan0 enc ************************** (11) iwconfig wlan0 essid test_allan (12) hostname Allan1 (13) exit 0

(1) This command adds new WDS link connections towards a bridge with a certain MAC address (2) This command creates a logical bridge interface named br0 (3) This command connects each corresponding interface with the bridge br0 (4) We are also interested in enslaving all of the WDS links to this logical bridge br0 (5) Changing the filtering and firewall parameters (6) Enables SSH connections (7) Brings the interface up (8) Assign an IP address to the bridge interface (9) Creating an entry for the gateway to use in the routing table (10) Determine which channel to use (11) Enable encryption in the wireless interface (12) Creating an essid for the wireless interface (13) Changing the hostname of the wireless gateway to Allan1