• Nem Talált Eredményt

Ka´rolyFarkas ,TheusHossmann ,FranckLegendre ,BernhardPlattner ,SajalK.Das Linkqualitypredictioninmeshnetworks

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Ka´rolyFarkas ,TheusHossmann ,FranckLegendre ,BernhardPlattner ,SajalK.Das Linkqualitypredictioninmeshnetworks"

Copied!
16
0
0

Teljes szövegt

(1)

Link quality prediction in mesh networks

Ka´roly Farkas

a,*

, Theus Hossmann

b

, Franck Legendre

b

, Bernhard Plattner

b

, Sajal K. Das

c

aInstitute of Informatics and Economics, University of West Hungary, Bajcsy-Zsilinszky u. 9., H-9400 Sopron, Hungary

bComputer Engineering and Networks Laboratory (TIK), ETH Zurich, Gloriastr. 35, CH-8092 Zurich, Switzerland

cCenter for Research in Wireless Mobility and Networking (CReWMaN), The University of Texas at Arlington, TX 76019, USA

Abstract

Wireless self-organizing networks such as mesh networks strive hard to get rid of mobility and radio propagation effects. Links – the basic elements ensuring connectivity in wireless networks – are impacted first from them. But what happens if one could mitigate these effects by forecasting the links’ future states?

In this paper, we propose XCoPred (using Cross-Correlation to Predict), a pattern matching based scheme to predict link quality variations. XCoPred does not require the use of any external hardware, it relies simply on Signal to Noise Ratio (SNR) measurements (that can be obtained from any wireless interface) as a quality measure. The nodes monitor and store the links’ SNR values to their neigh- bors in order to obtain a time series of SNR measurements. When a prediction on the future state of a link is required, the node looks for similar SNR patterns to the current situation in the past (time series) using a cross-correlation function. The matches found are then used as a base for the prediction. Clearly, XCoPred takes advantage of the occurrence and recurrence of patterns observed in SNR measures reflecting the joint effect of human motion and radio propagation. XCoPred focuses only on the scale of links and as such is comple- mentary to mobility prediction schemes, which target prediction at a broader scale. We first prove the occurrence of SNR patterns resulted by the joint effect of human motion and radio propagation. Then we evaluate XCoPred in an indoor mesh network showing, that XCoPred is able to recognize mobility patterns in up to 85% of the cases correctly and the average prediction error on mid-term predictions (i.e., assessing the future link quality more than 1 min ahead) is less than half the error we get using linear prediction.

Eventually, we propose and evaluate an enhanced handoff management scheme for 802.11 mesh networks showing the usefulness of XCoPred as a cross-layer input.

Ó2008 Elsevier B.V. All rights reserved.

Keywords: Link quality prediction; Mesh networks; XCoPred; Kalman filter; Pattern matching

1. Introduction

Self-organizing networks such as mesh networks pose significant challenges on the design of new communication protocols and applications. One important aspect to deal with is the joint effect of node mobility and radio propaga- tion, and their consequences[1]. Even though recent works have contributed to demonstrate their benefits for different network aspects such as increasing capacity[2], security[3],

and coverage[4], just to cite a few, still mobility and radio propagation have a great impact on every layer of the pro- tocol stack. What happens if we could mitigate or, in other words, we could forecast their effect? Many solutions have been proposed to predict macroscopic mobility, i.e., the sequence of base stations or access points encountered by a node, which are useful for handoff, resource reservation or route selection in fixed cellular and self-organized mesh networks. Yet, our goal is not to predict macroscopic mobility, but instead predict the rather short term (i.e. tens of seconds) variations of link quality. This is important as links are in fact the basic elements ensuring connectivity in self-organized networks and having a precise view on the future evolution of a link is fundamental for applications

0140-3664/$ - see front matterÓ2008 Elsevier B.V. All rights reserved.

doi:10.1016/j.comcom.2008.01.047

* Corresponding author. Tel.: +36 30 9843449.

E-mail addresses: farkas@inf.nyme.hu (K. Farkas), hossmath@

tik.ee.ethz.ch (T. Hossmann), legendre@tik.ee.ethz.ch (F. Legendre), plattner@tik.ee.ethz.ch(B. Plattner),das@cse.uta.edu(S.K. Das).

www.elsevier.com/locate/comcom Computer Communications xxx (2008) xxx–xxx

(2)

at all layers of the protocol stack to optimize, or increase the reliability of these networks. However, current predic- tion schemes on links provide assessments only with a coarse precision in space and time, thus the applicability of these approaches is limited.

In this paper, we propose XCoPred (using Cross-Corre- lation to Predict), an approach based on pattern matching, to predict a link’s future state in terms of its quality varia- tions. XCoPred does not consider possible emerging links in the future (i.e., link creation) but performs predictions on a node’s existing links to its neighbors. We present here an enhanced version of XCoPred that was first described in [5]. In contrast to most of the existing prediction techniques targeting node mobility like [6–8], XCoPred does not require the use of any external hardware or reference points. Each node monitors and stores the signal quality of its links to obtain a time series of link quality measures (cf.Fig. 1which illustrates this with a hypothetical network consisting of five nodes). The Signal to Noise Ratio (SNR) is used as this measure. When a prediction is required, a node searches patterns similar to the current situation in the history of its stored time series of link quality measures.

For this purpose, the node computes the normalized cross- correlation between the current pattern and the history of the links’ quality. Several matches may be found and the one with the highest cross-correlation value is retained.

Otherwise, XCoPred applies a fallback solution based on autoregression.

Clearly, XCoPred takes profit of the occurrence and repeatability of patterns seen at the scale of links. In order to validate our approach, we prove the existence of pat- terns in the joint effect of human motion and radio prop-

agation (at the scale of links) with the example of indoor pedestrian motion, and its reflection in the signal space.

We evaluate the performance of XCoPred by experiments using SNR measurements from a real indoor mesh testbed with a static backbone of 20 nodes and mobile, handheld devices carried by human-beings. Results show, that using the cross-correlation XCoPred is able to recognize mobility patterns in the SNR measurements in up to 85% of the cases correctly and that the average SNR pre- diction error of 3 dB for predicting the 60 s ahead future of the links is less than half the error we get using linear prediction.

Although XCoPred was designed to deal with link qual- ity changes occurred by node mobility but the backbone nodes in a mesh network are usually static, still we can exploit the power of our approach in such networks target- ing mobile end devices and their handoff. Thus, we propose and evaluate the use of XCoPred’s predictions for improv- ing handovers of mobile devices between access points in 802.11 mesh networks.

We can summarize the novelty and contributions pre- sented in this paper as follows:

We consider the problem of predicting link quality vari- ations in mesh networks.

We propose XCoPred, a pattern matching based approach for predicting future link quality.

XCoPred does not require the use of any external hard- ware or localization scheme. Rather it relies for its pre- diction on link quality measures obtained from off-the- shelf 802.11 wireless cards (i.e., Signal to Noise Ratio (SNR)).

Fig. 1. Signal quality past time series (solid lines) and its predicted future variations (dashed lines).

(3)

We demonstrate through measurements the existence of patterns in the physical space, resulted by human motion in a given physical environment, that are also reflected in the signal space of link quality.

We evaluate XCoPred in a real indoor mesh testbed environment.

We evaluate the improvement of handover management using XCoPred to predict link quality changes.

The rest of the paper is structured as follows. Section2 surveys the most interesting approaches related to our work. In Section 3, we demonstrate the feasibility of link state prediction in mesh networks. We present XCoPred, our approach in Section 4 and evaluate its performance in Section 5. Section 6 evaluates the enhancement of the handover management scheme taking profit of XCoPred’s predictions. Finally, we conclude the paper in Section7.

2. Related work

Link state prediction is a subset of mobility prediction, which is and has been extensively studied for fixed cellular networks (e.g., PCS, GSM, 3G) as well as for self-organiz- ing networks to improve the efficiency of many functional- ities (e.g., handoff and routing). In this section, we review the different approaches to mobility and link state predic- tion proposed in both network areas.

Predicting mobility aims at estimating the future state of a node. This state is tightly related to the application needs and can be network-centric (e.g., links quality (SNR) or discrete location, such as base station or access point) or mobility-centric with relative or absolute coordinates (e.g., GPS).1Depending on the desired state to predict, sev- eral prediction techniques can be used: (i) linear, (ii) auto- regression, (iii) pattern matching, (iv) information theoretic, and (v) Markov chains based. We relate these techniques and their capabilities in terms of state prediction in the following.

Linear statical and dynamical system models are often used to predict a system’s future state given the current and past state(s). In [6], authors propose a linear statical model of a node’s mobility to define its future positions (based on GPS information). This model basically assumes that the node always keeps on moving in the same direction with the same speed while in reality this is often not the case. Authors also propose to map these predictions to the assessment on link expiration time. For this, they com- pute the relative evolution of distance between two nodes and using a freespace radio propagation model determine when the distance will be too high to allow enough power at the receiver for successful reception (i.e., below sensibil- ity threshold).

In order to include the ‘‘dynamical” aspect of mobility, an enhancement is to use linear dynamical system models.

This can be exploited in cellular networks estimating the future node position which helps predicting handover of the node from one cell to the next and can be used to reserve resources and speed up the handover process. Kal- man filters (KF) and Extended Kalman filter (EKF)[9]are particularly suite for this task. Proposals in [10–12]use a Kalman autoregressive model (AR) instead of the linear statical model to predict future positions. In[10], a location prediction algorithm, called hierarchical location predic- tion (HLP), is used for advance resource reservation in wireless ATM networks. HLP uses an AR(1) model to esti- mate the position, velocity and acceleration of the mobile nodes. In[11,12], the AR model is also used for SNR pre- diction or Time Of Arrival (TOA) predictions. Note that determining the current absolute position, speed, velocity, and possibly acceleration can be performed with dedicated hardware such as a GPS receiver. To obtain relative loca- tion values RF-localization schemes (e.g., RADAR [13], a tracking system for in building environments which uses the a priori knowledge of the building’s radio map to asso- ciate coordinates to nodes based on their current measure of signal strength) may be used which than can be associ- ated to absolute values of sources given by GPS coordi- nates. The main motivation behind RF-localization schemes is to remedy the GPS indoor deficiency.

For discrete location predictions (mobility tracking), different techniques have been proposed to predict the attachment sequence to base stations, access points, and even any kind of fixed communicating infrastructure. In [14], the authors propose to train a back-propagation neu- ral network to predict the trajectory of a mobile node as a sequence of base stations. The authors in [15,16] propose an information theoretic approach to this problem. It maintains the history of the base stations (or closest sen- sors) a node encounters and applies the LZ78 compression algorithm [17]2 to generate a dictionary of the recurrent observed paths. In[18], a calibrated Markov chain is pro- posed with states representing access points to model the mobility of users on the ETH campus in Zurich. In [19], the authors proposed a similar approach.

3. Link quality prediction

In this section, we discuss the applicability of combining Signal to Noise Ratio measurements with a pattern match- ing technique to predict the future state of a link.

3.1. Link state prediction vs. mobility prediction

XCoPred targets applications that require a quantitative prediction of the link quality. We selected the Signal to

1 Another mean of classification is to relate these measures to their level of granularity, i.e., microscopic or macroscopic similarly to mobility models classification. We will use this classification in the sequel.

2 The LZ78 algorithm for lossless compression is based on Shannon’s entropy. Variants of it are widely used today for instance in the Unix

‘compress’ utility and in the GIF image format.

(4)

Noise Ratio (SNR) as a measure of the node’s link state because it is easy to monitor using off-the-shelf wireless devices and does not require any special hardware. And this measure reflects the best a node’s current connectivity.

Knowing the mobility state by performing mobility pre- diction via relative or absolute localization schemes is an alternative to asses link quality variations. Yet, deriving connectivity information from position information is not straightforward since it requires to find a one-to-one map- ping between distance and signal quality. Due to noise, interference, fading, etc., monitoring the signal quality is a better choice than using physical positions and than do the mapping.

Now looking at link state prediction in more detail, pat- tern matching based approaches are more accurate than linear approaches used for mobility prediction because:

(i) there are clear patterns of motion in human mobility whatever means of transport is used; (ii) these patterns are reflected in the signal space; (iii) patterns convey more information (i.e., the stored time series are likely to occur again since one’s mobility is often made of recurrent dis- placements and besides patterns also include effects of the environment); and (iv) there is no need for a priori infor- mation about the geographic environment of the network.

3.2. Patterns

Human behavior shows clear patterns that are moreover recurrent in the mobility/physical and also in the signal space. We demonstrate it intuitively and then verify it empirically with measurements from our mesh testbed network.

Human motion, whatever means of transport is used, can be considered at two levels, namely, the macroscopic and microscopic level. The macroscopic behavior defines the intentions on a daily basis (e.g., going back and forth from the house to work, taking a break, going to an office meeting or to work with a colleague) while the microscopic behavior defines how humans deal with their surrounding environment (e.g., indoor, outdoor, road network).

We focus only on patterns observed at the radio range of wireless interfaces since XCoPred relies only on monitoring the quality of links (i.e., SNR) to neighbors. At this scale, patterns of motion are heavily influenced by microscopic mobility. For instance, in an office building, people carry- ing the nodes are usually walking along floors (e.g., going to the printer to fetch a document, walking to the coffee corner and returning back to their office). Another physical restriction is that in this environment humans are rarely moving faster than 2 m/s (i.e., 7.2 km/h). Vehicular mobil- ity is even more restrictive since vehicles have to follow the course of roads with their speed limits and traffic density, intersections with stops or traffic lights also come into play.

The existence of patterns (macroscopic and microscopic) in motion is quite intuitive. Now, we may wonder if these patterns in the mobility/physical space are also reflected in the signal space. When a node takes a certain path

(e.g., along a floor in a building) this corresponds to a cer- tain pattern in the evolution of the distance between the two end points of the link, i.e., the static access point and the mobile node. Assuming a one-to-one mapping of dis- tance to signal strength, this pattern would also be reflected in the signal space. However, we know that finding such a mapping is way too complex as it is highly depending on the physical environment which effects the radio propaga- tion, and thus the measured SNR, through reflection, dif- fraction and scattering. These effects in combination cause large-scale fading and small-scale fading of the signal [20]. Further, the SNR is subject to noise and interference by other sources of radio on the same frequencies. In order to get rid of the random effects of small-scale fading (noise and interference) we use a Kalman filter as described in Section 4.2. Assuming that this filter completely cancels these effects, what is left in the SNR is the large-scale fading (or shadowing), which is solely depending on the physical environment and is the same every time a node moves along the same physical path. That is, the same SNR pat- tern occurs every time the same path is taken.

Fig. 2 shows an example of such a pattern in signal space. It shows the SNR measurements of a mobile node to a fixed node in our mesh testbed under different occur- rences of a typical pattern in mobility/physical space, that is to fetch a document from a printer. Clearly, a pattern is recognizable, though the different instances of the same mobility pattern are not completely equal in signal space due to the above mentioned random effects.

We see that patterns occur in both the mobility/physical and signal space and a mapping between them exists. The recurrent nature of the patterns as well as the a priori infor- mation contained in the variations of these patterns call for pattern matching based prediction relying on training data.

For instance, considering an existing link, if we can match its variation in time to similar patterns seen in the past (i.e., training data), we can then predict its future quality just taking the upcoming part of the best matching pattern.

Therefore, the quest is to match the current pattern to ones in the past and select the best matching pattern. This is the goal of our XCoPred mechanism described in the following section.

4. Predict via pattern matching

In this section, we present our prediction mechanism called XCoPred (using Cross-Correlation to Predict) which implements link quality prediction based on pattern match- ing as motivated in the sections above. The general build- ing blocks with the two major parts, State Observation andPrediction, of XCoPred are visualized inFig. 3.

4.1. Overview

The task of State Observation is to keep track of link state. This is implemented in the Link Observer module.

(5)

The output of the Link Observer is the input to the Predic- tion part.

The Prediction part can be split in two major func- tions, such as the State Predictor and the Parameter Esti- mator. The State Predictor makes the actual prediction and models the system. Its input comes from the Link Observer and the system model parameters come from the Parameter Estimator. The Parameter Estimator gets the training data as input from the Link Observer and computes the required parameters. As a simple example, consider a linear model of a node movement. In order to make a linear prediction of geographic position, the State Predictor needs the actual coordinates of the node as input, and its speed and acceleration as parameters.

So the Parameter Estimator gets a time series of mea- sured coordinates, computes the velocity and moving direction, and hands them over to the State Predictor as the system model parameters. With these parameters and the input being the actual position, the State Predic- tor is able to predict the future position of the node. Our approach targets the same goal but in the more complex case where linearity is not assumed.

4.2. State observation

As the measure of link quality, we use the Signal to Noise Ratio (SNR) value of the link. The node periodi- cally monitors the SNR values of its links and these val- ues serve as input to the Link Observer. Fig. 4shows an example of a link’s SNR time series seen by one device which was linked by radio to a mesh access point in our testbed representing an office environment. We can observe that there are periodic patterns of SNR variations.

4.2.1. Signal to noise ratio

We have chosen to use the SNR value as a measure of link quality because the SNR not only takes into account the signal strength, but also the amount of noise in the sig- nal. Moreover, it can be easily measured. For instance, in wireless LAN network interfaces based on the 802.11 stan- dard[21], the firmware and the driver usually provide some measurements of signal strength and background noise observed on the channel.

The SNR is generally defined as

0 10 20 30 40 50 60 70 80

0 20 40 60

SNR [dB]

Time [s]

Fig. 2. Example of pattern in signal space.

Fig. 3. Overview of XCoPred.

(6)

SNR½dB ¼10log10 Psignal Pnoise

½dB; ð1Þ

wherePsignalis the power level of the signal andPnoise is the power level of noise. The signal power is influenced by sev- eral parameters of the communication system. At the sen- der, it depends on the transmission power of the sending device and the antenna gain. During propagation, the sig- nal experiences a propagation loss, which is usually mod- eled with various propagation models e.g., freespace, two-ray ground, path-loss. It is further influenced mainly by three effects, such as reflection, scattering and diffrac- tion. Together, all these physical factors build the radio propagation model. On the other hand, the noise power is usually modeled as receiver noise (e.g., thermal noise in the receiver modeled as Additive White Gaussian Noise – AWGN), environmental noise (from different sources in the environment, usually also modeled as AWGN) and interference caused by other transmissions on the same channel or nearby, overlapping channels. For more details we invite the reader to refer to[20].

In order to obtain a time series of the SNR history, each node has to make measurements at fixed time intervals of lengthTm.

Definition 4.1. The measurement interval Tm is the time between two consecutive measurements performed on one link of the node.

Tmis a design parameter and was chosen to be 1 s in our case. It is a trade-off between having too frequent measure- ments, which increases the computational costs and having too few measurements, which means loss of information about the node’s behavior.

In order to account for breaking links, the special value ofSNR¼0 is defined as having no connection between the nodes. Each node keeps the history of the corresponding link and, in case of link failure, fills it with zeros to have the information when and for how long the connection broke. Having this information is important to predict future link failures.

As the resources of mobile devices are generally scarce, the number of measurements which are stored must be lim- ited. The history of each link is therefore stored in a circu-

lar buffer of N elements. N is another design parameter, which has to be chosen as a trade-off between memory usage and having enough training data for the prediction.

Assuming that each measurement requires 1 Byte of stor- age – as typical WLAN interfaces only distinguish between less than 256 values in their channel measurements this is enough. The amount of storage required per link for 48 hours of training data (with Tm¼1) then is about 170 KBytes (24 h3600 s1 Byte).3 In our example of the office environment where people usually work for 8 hours per day this would include training data of the last 6 days, which seems reasonable to capture the majority of patterns. Thus, we setNasN= 483600 = 172 800.

Now consider that node A has a link to node B and node A wants to predict the future state of this link. When A’s Link Observer is triggered, it hands over the training data and the query to the prediction algorithm. They are defined below.

Definition 4.2. The training data t is the measured time series of one link from the past in the time range t¼ ðtqNTmÞ;. . .;tq wheretq is thequery time.

Definition 4.3. The query q is the recent part of the time series of measurements, which is used for creating the link predicted state. Thequery order ois the length of the query, i.e., the number of measurements used in the query.

Fig. 5(a) shows an example of training data gathered from one link, a query, and a query order. The query order o is another important design parameter. We discuss the choice ofo in the evaluation part (see Section5.3) of this paper.

4.2.2. Smoothing with Kalman filter

One problem with this approach is, that the measure- ments of the training data are usually noisy. In order to reduce this noise as far as possible, we filter the measure- ments with a Kalman filter[9]. Fig. 6shows a time series

0 50 100 150 200 250 300 350 400 450

0 20 40 60

SNR [dB]

Time [s]

Fig. 4. SNR measurement example.

3 The amount of storage can of course be reduced by compression, i.e.

storing just the length of constant sequences (for instance the absence of a link) instead of the whole sequences.

(7)

of SNR measurements (dots in the figure) of a link together with the filtered values (solid line in the figure).

The basic idea behind the Kalman filter is essentially to estimate the state xk of a system at point of time k, which can be observed only indirectly or inaccurately, as the linear combination of a prediction, based on the last value, and the measured value. The underlying dynamic system model of the Kalman filter is visualized in Fig. 7, where circles are vectors, squares are matrices, and stars represent Gaussian noise with the associated covariance matrix at the lower right (for more informa- tion refer to [9]).

The Kalman filter’s system model is described with the following equations:

xk¼Axk1þBuk1þwk; ð2Þ

Fig. 5. Sample training data and query.

0 50 100 150 200 250 300 350 400 450

0 20 40 60

SNR [dB]

Time [s]

Fig. 6. SNR time series filtered with Kalman filter.

Fig. 7. Underlying system model of the Kalman filter.

(8)

with measurements

zk¼Hxkþvk: ð3Þ

Here A is the system matrix, which is determined by the nature of the system. MatrixBrelates the optional control input uk to the state xk, since matrixH relates the actual state of the system to the measurement zk. The terms wk andvk are independent random variables with normal dis- tribution representing the process and the measurement noise, respectively:

pðwÞ Nð0;SÞ; ð4Þ

pðvÞ Nð0;QÞ: ð5Þ

Though the real statexkof the system at point of timek is never exactly known, the Kalman filter works with three estimates of the system state: (i) the a priori estimate ^xk, which is a prediction of the next value based on the previ- ous ones; (ii) the measurementzk, related toxk by expres- sion (3); and (iii) the a posteriori estimate ^xk which combines the a priori estimate and the measurement, and it is the actual output of the filter. In order to compute

^xk, the Kalman filter works recursively with two steps: (i) the time update, in which the a priori estimate of the value is predicted; and (ii) the measurement update, in which the prediction is corrected with having the measured value.

In the time update step, the next value of the system state is predicted based on the previous value using the fol- lowing equation:

^xk ¼A^xk1þBuk1: ð6Þ

For the SNR filter, where the system state is the scalar SNR value, this equation can be rewritten as

^

xk ¼A^xk1þB1¼a^xk1þc ð7Þ with the model parametersa and c. This approach of the next SNR value, being dependant solely on the previous one and a constant c, is an order-1 autoregressive model denoted by AR(1). The parametersa andcof the autore- gressive model are calculated at each filtering step using the least squares method[22]:

PO1

i¼0xkixki1 ðO1Þx2

PO1

i¼0x2ki1 ðO1Þx2 ; ð8Þ

c¼ ð1aÞx; ð9Þ

wherexdenotes the mean of the Olatest training sample vector. Note that Ois the order of the training data. We discuss the choice ofOlater in the evaluation part (cf. Sec- tion5.3). Furthermore, in the time update step, the a priori estimate error covariance is calculated according to

Pk ¼APk1ATþQk; ð10Þ

wherePk1is the a posteriori estimate error covariance (see below). The measurement noise covariance Q, see (5), at time pointkis denoted byQk and can be dynamically esti- mated with the following equation (cf.[11]):

Qk ¼ PO

i¼1^xi ða^xi1þcÞ

O : ð11Þ

In the measurement update step, the linear combination of the a priori estimated state and the measured state is cal- culated as

^xk¼^xk þKkðzkH^xkÞ: ð12Þ

The measurement innovationKk is defined as Kk¼ PkHT

HPkHTþS: ð13Þ

The a posteriori estimate error covariance is calculated according to

Pk ¼ ðIKkHÞPk: ð14Þ

In wireless networks, the process noisewkis usually modeled by a normally distributed random variable with typical standard deviation in the range of 4–8 dB (cf.[11]). A value ofS= 49 was chosen in our case for the process noise covariance, which relates to assuming a standard deviation of noise of 7 dB.

In case of filtering the SNR, the above equations are sim- plified because the system statexkand its estimates are sca- lar values, thus all matrices and vectors become scalar.

Furthermore, the equations are simplified by setting H¼1, as the SNR is directly measured. The resulting equa- tions for filtering the SNR values are summarized inTable 1.

4.3. Prediction

As we mentioned above, the link quality prediction per- formed with two complementary alternatives: (i) Parameter Estimation – State Prediction; or (ii) a Fallback option using autoregression.

4.3.1. Parameter estimation with cross-correlation

The parameters which the Parameter Estimator hands over to the State Predictor are references to points in the link history, where similar situations to the actual one may have been observed.4 The information what the Parameter Estimator gets from the Link Observer is the training data and the query. Thus, its task is to find pat- terns in the training data which are similar to the query.

In order to do this, the Parameter Estimator computes the normalized cross-correlation[23]of the query and the

Table 1

Kalman filter equations for our SNR filter

Time update step Measurement update step

a¼ PO1

i¼0xkixki1ðO1Þx2

PO1

i¼0x2ki1ðO1Þx2 Kk¼PPk

kþS

c¼ ð1x ^xk¼^xk þKkðzk^xkÞ

^xk ¼a^xk1þc Pk¼ ð1KkÞPk Qk¼

PO

i¼1^xiða^xi1þcÞ O

Pk ¼a2Pk1þQk

4 Experiments have shown indeed that patterns are recurrent.

(9)

training data. The normalized cross-correlationcðmÞat lag mis a measure of similarity of the query to the appropriate part of the training data at this lag. It is defined as cðmÞ ¼

Po

i¼1½qðiÞ q½tj;fðmþiÞ tj;f ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi Po

i¼1½qðiÞ q2Po

i¼1½tj;fðmþiÞ tj;f2

q ; ð15Þ

whereqðiÞdenotes theith value of the query,tj;fðiÞdenotes theith value of the training data of the link between nodej and nodef, whereasqandtj;f respectively denote the mean of the query and the corresponding part of the training data.

An example of the normalized cross-correlation func- tion is depicted inFig. 5(b) (the computed cross-correlation value relates always to the last point of the sliding query).

Note that in this example only one time series of training data was used. When the node hasyneighbors, this results in computing y normalized cross-correlations. The plot shows that there are several good matches resulting in local maxima at lags aroundm¼ f140;260;. . .g and the global maximum is atm¼260 withcð260Þ ¼0:92.

The Parameter Estimator should hand over these lags representing good matches to the State Predictor. Thus, it has to determine the local maxima of the correlation func- tion. For doing this, a thresholdcminis defined, such thatm is a good match, ifcðmÞPcmin.

Definition 4.4. The match threshold cmin is a scalar value, above which the correlation of the query with the training data is considered to be a match and is used for the prediction.

cmin has to be chosen as a trade-off between being not too strict and not too loose about what a good match is.

The former case could lead to having none or only a small number of matches, while the latter one would define situ- ations as matches which are not really similar to the query.

In order to find the local maxima ofcðmÞ, first determine all the regions ofmwhere the normalized cross-correlation is abovecmin. Then, for each of these regions the maximum is searched and inserted in the set of lags which are handed over to the State Predictor.

We discuss the choice of the match thresholdcminlater in the evaluation part (Section5.3).

4.3.2. State prediction

Getting the set of matches from the Parameter Estimator and the training data from the Link Observer, the task of the State Predictor is to create the local model of the link. The model is based on the training data regions following the lags of the matches. This means, that if a lag ofmis received from the Parameter Estimator, the part of the training data used for creating the model is the measurements of m;. . .; ðmþlÞ for an l-step-ahead prediction. So, the first step in modelling is to create from the set of lags a set of predictors.5

Definition 4.5. If the set of matches contains i lags fm1;. . .;mig, then those i parts of the training data ftðm1;. . .;m1þlÞ;. . .;tðmi;. . .;miþlÞg form the set of predictors p. Theith predictor is denoted bypi.

Parameter l, the length of the predictors, is called the prediction order. It determines how far in the future the prediction will reach. It is a design parameter and can be set according to the needs of the application for which the prediction is used.

Having a set of predictors, the link model can be created in the following way. In the set of predictors, eachpirepre- sents a past situation where the link was in a similar state to its current status. It can be assumed that in these predic- tors, different patterns of SNR changes appear because in a given situation the nodes have typically several options of how to behave. In order to predict the most probable one of these patterns, the pattern which appeared the most frequently in the past should be chosen. This can be done by looking at which predictor has the most similarities to the other ones. Again, the normalized cross-correlation function is used for measuring the similarity between pre- dictors pi and pj, which is denoted by ci;j. After this, the average similarity of a predictorpiis defined as

ci¼ PL

j¼1ci;j

L ; ð16Þ

whereLis the total number of predictors.

For the prediction, the predictor with the maximum average similarity among all the predictors is chosen and the link future behavior is modeled by the selected predic- tor. Choosing one of the predictors directly as the predic- tion means that the prediction has the same length as the predictor. Thus, if the predictor contains lmeasurements, anl-step-ahead predictionis performed.

4.3.3. Fallback option using autoregression

It can happen that the Parameter Estimator does not find any match in the training data due to the following reasons:

The training data are too short, as the order of the train- ing measurements has to be at least the length of the queryo(for being able to compute the cross-correlation) plus the prediction orderl(as theltraining samples after a matching part of the training data are used as a predictor).

The cross-correlation does not contain a value above the match threshold cmin, because the pattern in the query was not observed before.

In such a case, we use a fallback solution exploiting the inherent predictive capability of the Kalman filter. As our Kalman filter, a first order autoregressive link model AR(1) is created in the time update step of the State Obser- vation (see Section 4.2). Using this model for an iterative

5 Note that these predictors are not the same as the State Predictor, as they are patterns in the link history since the State Predictor is a functional part of a prediction algorithm.

(10)

l-step-ahead prediction6 has the benefit that the model already exists and can simply be applied. Thus, in any case, even if the current situation was not observed before, a pre- diction will be available.

Table 2gives a summary of the design parameters.

5. Evaluation

In this section, we evaluate XCoPred with SNR mea- surements from our mesh testbed network. The testbed itself and the measurement setup we used for evaluation are described in Section 5.1. The important question of when to trigger a prediction is addressed in Section 5.2.

As described in the previous sections, XCoPred has a num- ber of parameters which have to be set appropriately. The setting of these parameters is discussed in Section 5.3, together with the quality of matches we get for our specific setting of the parameters. Finally, in Section5.4we evalu- ate the predictions XCoPred makes in terms of average prediction error and compare this to linear prediction.

5.1. TIK-NET Testbed

The testbed we used for the evaluation is a mesh network consisting of 20 static and one mobile node, situated on one floor in an office building at ETH Zurich. The map of the sta- tic part of this testbed is shown inFig. 8. All the nodes are equipped with 802.11 b/g WLAN interfaces, operated by the Madwifi driver[24]. The driver reports theReceived Signal Strength Indicator (RSSI)for every packet it receives. These RSSI values are integer values in the range of 0–60 and can be converted SNR values according to[25]. The mobile node is a Nokia WLAN enabled mobile phone. The RSSI values of the beacons, sent 10 times a second, are logged by every static node in its transmission range, resampled to one measurement per second and stored for later, offline analysis.7

For our evaluation we used two datasets from this test- bed. In a first experiment, we wanted to see how well cer- tain mobility patterns were represented in the SNR time series. Therefor, we consecutively repeated the following four typical actions, ten times each:

(1) Fetch a document from the printer and return to the office.

(2) Take a break in the coffee corner and return to the office.

(3) Go to the bathroom and return to the office.

(4) Go outside and return to the office.

The measurement of SNR values from each of the testbed nodes to the mobile node for roughly 6 hours, during which these actions were performed altogether, is ourDataset A.

For this dataset we have the exact information about when a node moves from where to where and therefor can use it to validate the matches we get from the cross-correlation.

The second measurement, Dataset B, is a whole week (i.e. 5 workdays) of SNR values collected while working regularly and always carrying the mobile phone. Of course this dataset also contains all the above mentioned mobility patterns several times, along with other more or less fre- quent patterns.

5.2. Triggers

The question of when a mobile node should do a predic- tion for its links was not addressed so far. In a scenario such as our office environment, the nodes are most of the time static, i.e. the user is sitting at his/her desk, in a meet- ing, having lunch, etc. During these static periods, the handover management does not need a prediction of the SNR variations8, as the node then is statically associated with an access point. But as soon as the node starts to move, we would like to know what is going on in order to make good handover decisions.

In order to detect when a node starts to move, we use a simple but effective triggering system. We define two states in which the node can be: either it issteadyormoving.9For the transitions between these two states, we use simple con- ditions on the evolution of the filtered SNR time series. If the node is in steady state and the SNR changes a certain amount during a specified number of measurements, it trig- gers a prediction and switches to moving state. In moving state, if the SNR variation is below a certain threshold for a certain time, it switches back to steady state. These conditions are given in the following two equations:

6 Iterative prediction means that the predicted next-step-value is used again as input for the model. Doing thisltimes leads to anl-step-ahead prediction.

Table 2

Summary of the XCoPred mechanism’s design parameters

Design parameter Value

Kalman filter parameters

a Computed according to Eq.(8)

c Computed according to Eq.(9)

Process noise covariance (S) 49

Training data order (O) 10 (see Section5.3) Prediction parameters

Measurement interval (Tm) 1 s No. of stored measurements (N) 172 800

Query order (o) 60 (see Section5.3) Match threshold (cmin) 0.95 (seeSection 5.3) Prediction order (l) Depends on the application

7 Note that in this testbed, the static nodes do the measurements.

However, the patterns observed on the static nodes should be more or less the same as if they were measured on the mobile node.

8 Of course for other applications it might also be interesting to predict how long such a static state is going to last. However, this is not what XCoPred was designed for.

9 Note that this state captures also the situation when the signal propagation conditions are changing regardless the node is moving or not.

(11)

jSNRðtÞ SNRðtkÞj>Tmoving; ð17Þ jSNRðtÞ SNRðtkÞj>Tsteady: ð18Þ Experimenting with the parameters of these conditions has shown that for the testbed,k= 10 s,Tmoving= 10 dB, Tsteady= 3 dB are working well. We applied the trigger sys- tem with these parameters to Dataset A on the link to the static node located in the office which is the starting- and end-point of all of the four mobility patterns mentioned above. On this link the trigger fires 83 times, 80 of which are desired, i.e. 10 times for moving from office to printer, 10 times printer to office, 10 times office to bathroom, and so on. All the movements trigger a prediction. Further we get 2 false positives, when a trigger is fired while the node is actually not moving and 1 additional trigger for a move- ment which is reported twice.

5.3. Parameters

There remain three important parameters of the XCo- Pred algorithm to be set: (i) the training data order for the autoregressiv model in the Kalman filter, (ii) thequery orderand (iii) thematch threshold. These parameters are all influencing the quality of the predictions we get and are all depending on the type of patterns we observe in the net- work, i.e. how fast are the nodes moving, how often do they move, and so on. In the following, we discuss for each of these parameters how their values influence the predic- tions and how we empirically set them for the specific sce- nario under which we evaluated XCoPred.

(1) Training data order:As discussed previously, the Kal- man filter parameters a and c can be computed according to Eqs. (8) and (9). In order to set them at each filtering step, that is at each time a new mea-

surement is made, the past measurements of the link have to be used as training data. But we have not dis- cussed yet the training data orderO, i.e., how many values in the past should be used as training data.

Using a small number of training measurements for creating the model gives better results than choosing a large training data order, since this creates a more accurate model of the actual link state. As the Kal- man filter operates only with 1-step-ahead predic- tions, this is different from predicting the link quality changes which requires long term predictions.

Using our Dataset A, we calibrated the training data order toO= 10 for good performance of the filter.

(2) Query order:The query ordero(seeDefinition 4.3) is related to how long a pattern in the movement of the nodes is assumed to be. The two main effects of the query order on the prediction accuracy are:

A short query leads to a large number of predictors.

This is a benefit, as the prediction can be based on many similar situations from the past. However, if the query order is too small, the predictors are bad representations of the current node behavior. This may lead to a degraded accuracy of the prediction.

A large query order leads to a small number of higher quality predictors with the risk that a similar situa- tion is not recognized and no predictor is found at all.

This should be avoided, as in this case the fallback solution (see Section4.3) has to be applied.

In our testbed we have set the query order to a value of o= 60 (i.e. taking the last 60 s) as this is roughly the dura- tion of movement we can expect in an office environment.

The measurements in our Dataset A, where we know when the node moves from where to where, confirm this value.

Typical lengths of patterns in this dataset are between 30 and 90 s.

Fig. 8. The TIK-NET mesh testbed.

(12)

(3) Match Threshold:The match thresholdcmin(seeDef- inition 4.4) is the value above which the correlation of the query and the training data at a certain lagmis considered to be a match. The match threshold, just as the query order, influences the number of matches found and hence the number of predictors and the accuracy of the prediction. Its influence is quite sim- ilar to that of the query order:

A small match threshold leads to a large number of predictors, as the match need not be perfect. Ho- wever, a too small threshold can be harmful since patterns are considered as matches which are not really similar to the query.

On the other hand, choosing a high match thresh- old leads to a small number of predictors with the risk of not recognizing the same mobility pattern even though it would be in the training data.

From observations made with our Dataset A, we set the match threshold to a value of cmin¼0:95. This gives rea- sonable matches in our testbed as we show now.

For the parameters set as discussed above, we have eval- uated the matches we get from the cross-correlation using Dataset A. In order to do so, we used the same link as in Section5.2using the 80 desired triggers received from the trigger system (we let the 3 undesired triggers aside). For each of the triggers we checked whether the best resulting match is indeed from the same mobility pattern or not.

Table 3 summarizes for each of the 80 movements in this dataset the number of true positives (reported matches from the same mobility pattern), false positives (reported

matches which were caused by another mobility pattern) and the number of cases where no match was found. In total, 85% of the patterns were correctly recognized, 11.25% of the matches came from a false pattern, and for 3.75% no match was found at all.

5.4. Prediction accuracy

In order to evaluate the accuracy of the predictions, we ran XCoPred on Dataset B using the whole 5 days of mea- surements as training data. For each link (i.e. the 20 links from the mobile node to each of the static nodes) we pre- dicted the SNR variations 60 s ahead in time whenever a trigger fired (see Section5.2) and afterwards checked how accurate the prediction was. In total 2483 predictions were evaluated and averaged.

Fig. 9 depicts in detail the dependence of the average absolute prediction error depending on how far in the future the prediction goes. In case of XCoPred, the error increases to around 2.5 dB for a 20-step-ahead prediction (i.e. 20 s ahead). This error comes from either false posi- tives, that is patterns where the wrong mobility pattern was found as a match, or from fluctuations in the SNR val- ues caused by slight modifications of a correctly detected mobility pattern and random effects not captured by the fil- ter. The error then only slightly increases to a value of about 3 dB for a 60-step-ahead prediction. For linear pre- diction, the error increases more steadily. For a 20-step- ahead prediction we see an error of around 3.2 dB and it then goes up to 6.4 dB predicting 60 s ahead. Thus, we can state that the pattern matching based approach works significantly better for middle term predictions ranging

Table 3

Matches for the 80 movements in Dataset A

Movement Total # True positives (%) False positives No match

Office?Printer 10 8 (80%) 1 1

Printer?Office 10 9 (90%) 0 1

Office?Coffee 10 7 (70%) 3 0

Coffee?Office 10 10 (100%) 0 0

Office?Outside 10 10 (100%) 0 0

Outside?Office 10 10 (100%) 0 0

Office?Bathroom 10 6 (60%) 3 1

Bathroom?Office 10 8 (80%) 2 0

0 10 20 30 40 50 60

0 2 4 6 8

Prediction Step [s]

Mean Absolute Error [dB]

XCoPred Linear Prediction

Fig. 9. Mean prediction error for different prediction length with XCoPred and linear prediction.

(13)

more than a few seconds ahead in time than linear prediction.

6. Application – an enhanced handoff management scheme To illustrate the usefulness of our approach, we propose an enhanced 802.11 handoff management scheme, XCo- Pred-Handoff, benefiting from the link quality predictions of XCoPred. The basic idea is to predict handovers while roaming between access points (APs) in order to obtain the best SNR value. We evaluate our solution by roaming between the APs of our 802.11 mesh testbed network.

6.1. Handoffs in 802.11 mesh networks

While roaming, a mobile node changes its point of attachment. This requires layer 2 handoff from one AP to another in order to keep connectivity. According to the IEEE 802.11 standard [26], this function is divided into three steps: (i) discovery; (ii) authentication; and (iii) association. In the first step, also called scanning, the wireless card sends Probe Request frames on all IEEE 802.11 channels and waits for Probe Response frames. These frames indicate the availability of an in- range AP. In the second step, the mobile node chooses the AP showing the highest link quality (i.e., either RSSI or SNR based) and starts to authenticate (i.e., Authenti- cation Request/Response). If the authentication is suc- cessful, the mobile node sends an Association Request

and in return the AP sends an Association Response to conclude the handoff.

The question is now how the handoff process is trig- gered. The most common behavior of drivers regarding the handoff trigger is to wait until the signal quality from the current AP drops below a certain threshold. When this threshold is reached, the mobile node starts the three handoff steps. Fig. 10 shows a measurement example of three APs’ link quality evolution to a mobile node, car- ried out in our mesh testbed network, with two handoffs while roaming. We can observe that the handoffs occur when the signal quality (SNR) drops below 6 dBm.

Yet, monitoring (i.e., continuous scanning) the link qual- ity of these three APs on the same roaming paths shows that we could avoid going down to this threshold and we can optimize the handoff trigger. Fig. 11 shows another measurement example, carried out again in our mesh testbed network, of the same three APs’ link quality evo- lution while scanning. We can observe that the handoff can be optimized by switching to the next AP when the SNR of the link to this AP is already higher than the actual one.10

Several approaches propose to improve the handoff management scheme of 802.11 wireless cards. In[27], Noel et al. propose to predict the next point of attachment by selecting the closest AP to a mobile node using the Haver-

Fig. 10. APs’ link quality evolution to a mobile node while roaming (standard handoff behavior).

10Note that in this figure the optimal handoff points in time are actually later than inFig. 10because this plot depicts a different experiment but using the same roaming paths.

(14)

sine distance formula. This however requires nodes to know their position by GPS. If this is suitable for outdoor environments, in an indoor environment GPS localization is deficient. Besides, the assumption that the best link qual- ity can be obtained by taking the closest AP is not always verified because of the large-scale fading effect mentioned earlier as well as the waveguide effect occurring in corridors and staircases. Rivera et al.[28]revert the handoff manage- ment to the mesh infrastructure. APs continuously monitor the link quality of any mobile node in their range and share this information with other APs in the vicinity to define which one of them should serve the mobile node. This adds some state and complexity to the infrastructure not com- plying with the ‘‘end-to-end” principle, which states that the complexity should be delegated as much as possible to end nodes.

6.2. XCoPred-Handoff: An enhanced handoff management scheme for 802.11 mesh networks

We propose to enhance the handoff management func- tionality of 802.11 wireless cards. Our basic idea is to optimize the handoff time trigger in order to get the best overall link quality. This will increase the overall throughput by minimizing retransmissions and allow the wireless card to function at its highest bit rate (i.e., 11 or 54 Mb/s). More precisely, XCoPred-Handoff mon-

itors the link quality to the current and possible APs and requests predictions on the future link quality evolution of these links using our XCoPred method. Based on the returned matching, XCoPred-Handhoff computes the intersection of the predicted evolution of the current link quality with all predicted link quality evolution of possible APs. It then chooses the intersection with the maximum SNR value and draws the time when this will occur (according to the prediction). This time is used as the handoff trigger time.

6.3. Experimental setup and results

We roam one-way at walking speed from one office to another where static node 2 and 20 of our mesh testbed are situated, respectively, as shown inFig. 8. We take the lower corridor for this path. The mobile node is an IBM X20 laptop equipped with a Prism II 802.11b WLAN interface operated by the HostAP driver [29] under Linux 2.6. The driver reports the Signal and Noise strength for every packet it receives, from which we can compute the SNR values.

We train XCoPred by walking several times back and forth on this path. XCoPred gathers the SNR values of link quality evolution from scan results for each distinct AP (one instance of this training is shown in Fig. 11). Now while roaming, XCoPred uses this training data to match the past and current link quality evolution of available links to APs

Fig. 11. APs’ link quality evolution to a mobile node while roaming (continuous scanning).

(15)

and predict their future evolution.11Given the matches, our XCoPred-Handoff scheme determines the current timing at which it is optimal to trigger the handoff function in order to swap to the AP with the best SNR value.

Fig. 12 shows the link quality evolution using our enhanced handoff scheme while roaming. Compared to Fig. 10, we can observe that the handovers happen to the same three APs but at the optimal time to always get the maximal SNR.12

Our enhancement requires only a little modification of the HostAP driver. It can even rely on the manual roaming functionality offered by Linux wireless tools [31]. Besides, our scheme reduces the handoff latency since no scanning is necessary. According to[30], 90% of the handoff latency is accounted to the discovery/scanning phase. Here, we only need to authenticate and associate.

To conclude, we have shown the benefits of XCoPred predictions on link quality to enhance the 802.11 handoff management scheme.

7. Conclusions and future work

In this paper we presented XCoPred, a pattern match- ing based approach to predict links’ state evolution. The novelty of our approach is using pattern matching tech- niques on the link quality variations represented by SNR measurement values. As such it is complementary to schemes tackling mobility prediction at a coarser view.

These approaches enable to predict a node’s future loca- tion with relative or absolute coordinates or access point/

base station association using either linear, pattern match- ing or information theoretic techniques. What can be derived from these approaches is a node’s next move (loca- tion or association) but with a limited precision in space and time. XCoPred on the other hand can give accurate predictions in the time dimension (space is not considered).

It is centered on link connectivity. XCoPred takes profit of the underlying patterns governing human motion at the scale of wireless devices’ radio range (microscopic scale).

Note that patterns also occur at a macroscopic scale and are at the basis of macroscopic mobility prediction schemes mentioned previously. Besides, our method is based on SNR, a measure that gives clear indications on the quality of a node’s connectivity with its neighbors.

Fig. 12. APs’ link quality evolution to a mobile node while roaming (applying XCoPred-Handoff).

11 The current link quality to which the card is associated can be obtained at no cost by looking at the values updated at every received packet in /proc/net/wireless. However, knowing the link quality to other APs requires to perform a discovery scan which hangs the card for several milliseconds (i.e., between 50 and 300 ms)[30]. But we can relieve such scans by associating the current pattern of the link quality evolution of the current AP to the other APs’ link quality evolution gathered during the training phase. In our case, this is straightforward since the training data is only composed of APs seen on the walking one-way trip of the experiment.

12 Note again that the absolute point in time of the handovers are not relevant in the comparison because the plots depict two different measurements.

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

To define the average element size, we have to click on Mesh branch and in Details of Mesh window we can select Sizing/Element Size window and type in the value (Figure

In this paper we introduce the notion of generalized (p- order) Sierpinski-like triangle-pattern, and we proof that if p is an odd prime then the divisibility patterns, respect to p,

The network trainbr 2-2 containing 2 neurons in its hidden layer and two in its output layer has an average error of prediction of the amount of concrete and reinforcement of

Therefore, this study is focusing on an evaluation of changes in average monthly discharges and selected characteristics of maximum and minimum discharges up to 2100 using the MPI

5.6 Mean prediction error for different prediction times using the RWP mobility model, query order 70 and match threshold 0.5 78 5.7 Mean prediction error for different prediction

The new version of ASTRAS will be able to simulate the point to point radio channel, the mobile and indoor radio channel and optical communication systems.. In

Rheological measurements were performed by shearing the suspension at constant shear stress (5 Pa) both in lack of electric field and under the influence of field. Low oscillating

Although the network is designed on the basis of kernel estimation of joint probability density functions, a theory has been presented showing the network to be valid in more