Gprs Optimization Tutorial

download Gprs Optimization Tutorial

of 21

Transcript of Gprs Optimization Tutorial

  • 7/31/2019 Gprs Optimization Tutorial

    1/21

    N2-METAWIN

    Measurement-based Optimizationof the GPRS/UMTS Core NetworkTechnical Report FTW-TR-2005-009

    About this document

    This is a document of the N2-METAWIN project.Its scope is to report on the exploitation of the data measured by the METAWIN system for the opt-mization of the Core Network. Specifically, we address the problem of finding the optimal assignementof Gb links to SGSNs. The optimality criteria are twofolds: balance the peak number of attached MSsto each SGSN, and at the same time minimize the volume of inter-SGSN Routing Area Updates.We present a method to extract the relevant input data (e.g. mobility matrix) from the packet tracescollected by the METAWIN system. The traces are collected by passive monitoring of Gb links. Weshow how to manipulate the measured data (e.g. error clean-up, outlier filtering) and prepare them toserve as the input of the optimization process. We provide a novel Integer Linear Programming (ILP)

    formulation for the problem under study. Finally, we present numerical results for a case study derivedfrom traces collected in October 2004 from the operational network of mobilkom austria AG & Co KG,.

    For any comment and/or request for clarification, please contact the author.

    This report and the future updated versions are available from:http://publications.ftw.tuwien.ac.at/publications/project summary.asp?projectno=310

    AuthorFabio Ricciato (ftw, [email protected]).

    Document versions:

    Version number Date Commentsv1.0 25.9.2005 Preliminary version (internal)v1.2 30.9.2005 First public version (work in progress)

    DOCUMENT STATUS: PUBLIC

  • 7/31/2019 Gprs Optimization Tutorial

    2/21

    Contents

    1 Problem Statement and Organization of the Document 3

    2 Problem Formulation 52.1 Introduction to the problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.2 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3 ILP Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    3 Input data: extraction and preparation 83.1 Extraction of the Mobility Matrix bi,j(k) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.2 Extraction of the Attachment Vector ai(k) . . . . . . . . . . . . . . . . . . . . . . . . . . 93.3 Exploratory analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.4 Outlier filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    4 Numerical Results 15

    5 Application to real networks 17

    6 Possible refinements and extensions 196.1 Support heuristic for large networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196.2 Multi-period optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196.3 Refined filtering process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    A List of Acronims 21

    2

  • 7/31/2019 Gprs Optimization Tutorial

    3/21

    1 Problem Statement and Organization of the Document

    The scheme of the GPRS network is given in Figure 1, where the main building blocks of interest forthis study are evidenced 1. The PCU (Packet Control Unit) are the logical components within the BSC(Base Station Controller) that are in charge of handling packet-switched traffic. Conventionally the BSC(hence the PCU) are considered as part of the Radio Access Network (RAN), while the SGSN are in

    the Core Network (CN), therefore the Gb links between them represent the frontier between the twodomains.

    Each Gb link connects one PCU to the associated SGSN. In the most simple case one PCU coversa single Routing Area (RA), but it is also possible that one RA is split among multiple PCUs, or thata single PCU covers a conglomerate of RA. The design of the radio coverage (i.e. the placement ofcells and the assignements of cells to RAs) as well as the association between RAs and PCUs (RA-PCUmapping) are part of the RAN planning process, that is out of the scope of this work. Here we assumethat the configuration of the radio access network is given, and the problem is to find anoptimal assignements of PCU to SGSNs. In other words we consider the problem of find theoptimal PCU-SGSNs mapping given a certain RA-PCU mapping and the measured mobility patterns.As a side value, the optmization method will produce in output the minimum number of SGSNs requiredto support certain load requirements. We do not cover here the problem of dimensioning individual Gb

    links, which is decoupled from the assignement problem.

    Figure 1: Scheme of the GPRS Core Network.

    The optimization problem is complicated by the fact that two concurrent goals have to be considered:

    balance the number of attached MSs amongst the SGSNs - or equivalently minimize the maximumnumber of MSs attached to each SGSN;

    minimize the rate of inter-SGSN Routing Area Updates.

    These two objectives are generally conflicting, and a trade-off is in place between them. The overalloptimization problem is formally defined in Section 2.In this type of engineering tasks based on measurements one has to cope with the volatility of the dataat hand. We will show how to find an optimal solution givena certain mobility matrix. But the mobilityprocess of real users is not deterministic: it is subject to daily variations and random fluctuations, not tomention long-term trends and sporadic anomalies. Also, measurement data are subject to errors. Thenthe question is : How to distill a meaningful mobility matrix for the specific problem under study ? Wetry to answer this question in Section 3.We have applied these methods to a case study based on one week of traces collected in October 2004from the operational GPRS network of Mobilkom Austria. At that time, the monitoring system was cov-ering a very high fraction of the RAs attached to the SGSNs located at the Arsenal site. The numericalresults and exemplaray figures derived from such dataset are presented in Section 4.

    1We assume that the reader is familiar with the fundamental aspects of a GPRS network and the related terminology

    3

  • 7/31/2019 Gprs Optimization Tutorial

    4/21

    In our case study we considered a number of simplifiying assumptions (e.g. the RA-PCU mapping being1:1, absence of geographical constraints onto the PCU-SGSN mapping). In general, the applicability ofthe optimization method to real production networks requires the introduction of a number of additionalconstraints into the formulation (e.g. the actual RA-PCU mapping, geographical constraints). Thesecan be easily handled from the conceptual point of view, but in practice their implementation involvesnon-negligible efforts (e.g. availability of a complete RA-PCU database). These aspects are covered in

    Section 5.

    The methods proposed here can be used satisfactorily to support the planning process of real networks.In Section 6 we discuss some limitations of the proposed methods and identify some directions for furtherresearch.

    4

  • 7/31/2019 Gprs Optimization Tutorial

    5/21

    2 Problem Formulation

    2.1 Introduction to the problem

    In order to minimize the resource consumption within each individual SGSN, it is desirable to balancethe total workload across the set of available SGSNs. Generally speaking, the workload on the SGSN

    has a multi-dimensional nature, since different dimensions of physical and logical resources (CPU cycles,buffer, bandwidth, memory states etc.) are consumed by dfferent types of traffic units (e.g. signalingmessages, data packets). However, to make the problem tractable we will consider a mono-dimensionalmetric for the SGSN workload, namely the number of contemporary attached MSs. This is justified bythe following factors:

    the level of SGSN resource consumption along each dimension is grossly proportional to the in-stantaneous number of attached MS;

    the capacity of commercial SGSNs is typically expressed in terms of maximum number of support-able attached MSs.

    Denote by m the peak number of MSs attached to SGSN m. Therefore, the primary objective of theoptimization would be to minimize the maximum value = maxm m.

    An additional optimization objective is to minimize the incidence of inter-SGSN Routing Area Up-dates (iRAU for short). Recall that when a MS moves from RA i to j it performs a RAU procedure. Ifboth RAs are attached to the same SGSN, the RAU consumes resources exclusively within the SGSN. Ifinstead the two RAs are attached to different SGSNs, this leads to a more resource-consuming procedure,namely the inter-SGSN RAU (iRAU for short). Each iRAU involves four (!) different elements: the twoSGSNs, the GGSN and the HLR. Each iRAU consumes a certain amount of resources within each ofsuch elements, and at the same time generates comunication overhead between them (signaling trafficon the Gn network). Therefore, it is desirable to minimize the total rate of iRAU messages across thenetwork, hereafter denoted by .

    In general, the two goals of minimizing and balancing are concurrent and a trade-off is in placebetween them. To see that, just consider that the minimum possible value of is be obtained by

    attaching all Gb links to a single SGSN (leading to = 0) but that would maximize the value of (nobalancing). The optimization process must be designed to find the optimal trade-off curve between thesetwo quantities. Based on that the network engineers will select the best operational point by taking intoaccount external informations (e.g. equipment features) by assigning different weights to each objective.

    In the above tractation we considered scalar values of the involved quantities and . However in areal-world network any traffic component - including the number of attached user to each RA and theinstantaneous iRAU rate between two RAs - varies in time and should be regarded as function of time.For sake of simplicity we will consider a discrete time axis, therefore we will handle discrete time-series(e.g. ai(k) and bi,j(k)). This matches with the nature of the measured data, i.e. counters for time-binsof fixed length T. From the point of view of network planning it is important to minimize the peakvalues of the quantities related to resource consumption. Within the scope of this work we will adoptthe static optimization approach (see discussion in Section 6.2), therefore we will preliminarily reduceeach time-series to a single scalar value representing its peak (i.e. ai(k) i and bi,j(k) i,j). Thiswill involve a procedure somewhat more complex than a plain maximization, since some pre-filtering ilapplied to the time-series to eliminate outliers and anomalous peaks (see Section 3).

    For the problem under analysis we can consider the RAs as the smallest traffic generator unit. Howeverin a real network there are some constraints that must be considered when designing the PCU-SGSNsmapping. For instance a RA can not be attached to multiple SGSNs, therefore if the RA is split amongmultiple PCUs, all such PCUs must be associated to the same SGSN. Additionally, some PCUs mightbe preferably attached to certain SGSNs based on geographical proximity. For ease of tractation in therest of this section we take the following simplifiying assumptions:

    the mapping between PCU and RA is strictly 1:1;

    there are no preferential RA-SGSN associations.

    In Section 5 we will discuss how to handle such constraints when optimizing real-world networks.

    5

  • 7/31/2019 Gprs Optimization Tutorial

    6/21

    2.2 Notation

    For sake of clarity, we will index the RAs with i, j and the SGSNs with m. The total number of RAsand SGSNs will be denoted by N and M respectively. The index k will be used for the discrete timeintervals. The following notation is introduced.

    ai(k) is the measured number of MS attached to RA-i at time tk; the complete set {ai(k)} will bereferred to as the Attachment Vector (AV).

    bi,j(k) is the measured average intensity of the RAU flow from RA-i to RA-j in the kth time-bink; the complete set of measured {bi,j(k)} will be referred to as the Mobility Matrix (MM).

    i maxk ai(k) and i,j maxk bi,j(k) denote the peak values of the series ai(k) and bi,j(k)respectively (the symbol recalls that some data cleaning is applied before maximization, asexplained later in Section 3).

    Note that the time axis for the two signals ai(k) and bi,j(k) are independent from each other - despite weuse the same index k for both. In other words, the set of characteristics instants {tk} where the numberof attached MS is sampled do not need to be synchronized with the set of time-bins {k}.

    xi,m is the binary variable accounting for the RA-SGSN mapping: xi,m = 1 means RA-i is con-nected to the mth SGSN.

    m is the peak number of MS attached to the mth SGSN;

    = maxm {m}) is the maximum number of MS attached to a single SGSN;

    +m and m are the peak intensities of the outbound / inbound iRAU flow from / to the mth SGSN;

    = maxm {+m + m} is the maximum rate of cumulated iRAU flow (inbound and outbound) for

    a single SGSN;

    y+i,j,m and yi,j,m are binary support variables used in the ILP formulation; they are defined only

    for RA pairs with non-null RAU flow (i.e. i, j : i,j = 0); the value y+i,j,m = 1 [resp. y

    i,j,m = 1]

    means that the RAU flow from RA-i to RA-j contributes to the outbound [resp. inbound] iRAUflow for the mth SGSN.

    2.3 ILP Formulation

    The goal of the optimization is to jointly minimize both and , given the set of constraints formulatedbelow. As usal with dual objective optimization, two possible strategies can be adopted. One strategyforesee the adoption of a combined cost function C = w + (1w) , where the relative weight factorw serves as a tuning knob to trade-off between the minimization of the two objective variables.The alternative strategy foresee a two-steps optimization. In Step I the primary objective is minimizedand the absolute optimal value is found, denoted by . In the second Step II, the primary variableis constrained within a neighborhood of the absolute optimal value defined by a slack factor (i.e.

    ), and the secondary variable is minimized. With this approach the value of the parameter serves as a tuning knob in the trade-off between the two ob jective variables. In this work, we havepreferred the two-steps strategy.

    The following set of constraints define a Integer Linear Programming (ILP) formulation of the prob-lem:

    minimize: (in Step I) or (in Step II)

    subject to:

    (1)

    (constraint 1 is present only in Step II)

    6

  • 7/31/2019 Gprs Optimization Tutorial

    7/21

    i=1..N

    xi,m = 1, m = 1..M. (2)

    m=1..M

    y+i,j,m =

    m=1..M

    yi,j,m i, j : i,j = 0. (3)

    m=1..M

    y+i,j,m 1,

    m=1..M

    yi,j,m 1 i, j : i,j = 0. (4)

    xi,m + yi,j,m = xj,m + y

    +i,j,m, i, j : i,j = 0, m = 1..M. (5)

    yi,j,m + y+i,j,m 1, i, j : i,j = 0, m = 1..M. (6)

    m =

    i,j:i,j=0

    i,j yi,j,m, m = 1..M. (7)

    +m =

    i,j:i,j=0

    i,j y+i,j,m, m = 1..M. (8)

    +m + m, m = 1..M (9)

    m =

    i=1..N

    i xi,m, m = 1..M. (10)

    m, m = 1..M. (11)

    xi,m, y+i,j,m, y

    i,j,m binary (12)

    Constraint 2 forces each RA to be attached to one SGSN. Contstraints 3-4 enforce iRAU flow conser-vation. The constraints 5-6 are the central component of the ILP formulation: together with the previous

    constraints 3-4 they drive the support variable y+i,j,m = 1 [resp. yi,j,m = 1 ] iff xi,m = 1 and xj,m = 0[resp. xi,m = 0 and xj,m = 1]. Recall that the binary support variables y

    +i,j,m and y

    i,j,m are key to the

    formulation: they account for the contribution of the RAU subflow from RA-i to RA-j to the outbound/inbound iRAU flow from / to the mth SGSN. Constraints 7-8 build up the inbound / outbound iRAUflow for each SGSN from the values of the support variables y+i,j,m and y

    i,j,m. Contraints 10 and 11

    define the number of MS attached to each SGSN m and its maximum .

    7

  • 7/31/2019 Gprs Optimization Tutorial

    8/21

    3 Input data: extraction and preparation

    In this section we describe the process of collecting measurements and transform them into input datafor the optimization problem formulated in Section 2. We present numerical results and examplaryfigures derived for a case-study based on real measurements. The measurements were collected fromthe operational network of mobilkom austria AG & Co KG, with the METAWIN monitoring system [1].

    The dataset used here includes one full week of measurements in October 2004 (from Monday 00:00 toSunday 24:00) on a subset of the Gb links. We monitored only a subset of the Gb links, specifically thoseattached to the K SGSN co-located at a single site. The dataset includes 127 different RAs, representinga fraction F of the total network coverage.

    Note: For proprietary reasons we can not disclose the values of K and F, nor provide absolutequantitative values like traffic volumes, number of MS, number of Gb links, etc. Therefore in the followinggraphs the values of the vectors bi,j(k) and ai(k) have been re-scaled by an arbitrary un-disclosed factor.

    Figure 2: Monitored RAs

    3.1 Extraction of the Mobility Matrix bi,j(k)

    Whenever a MS moves from RA i to a new RA j it generates a RAU messages directed to the SGSNcovering j. The RAU message seen on Gb contains both the identifiers of the new and old RAs.A specific software module (hereafter denoted as HRO) was developed during the project to parse allthe RAU messages and count the occurrences of i, j pairs at time bins of length Tb (unless differentlyspecified we used Tb = 5 min). Note that a new set of counters is produced. for each new pair (i, j) seen

    from the RAUs.

    Non monitored RAOur monitoring system covers only a fraction of the Gb links, hence only a fraction of PCUs and RAs.For the monitored RA (e.g. x and y in Figure 2) it is possible to derive the inbound RAU flows from anyother RA, included non-monitored RAs. Instead, the outbound RAU flows towards a non-monitored RA(e.g. z in Figure 2) can not be measured. In summary, with reference to Figure 2, we can measure theRAU flow bz,x but not bx,z.Note that also foreign RAs (e.g. RA from another operator) are visible as source RAs when the MSmoves into a monitored RA. These can be discriminated by the prefix value of the RA identifier.For our purposes we merge all the non-monitored RAs into a single virtual external RA, therefore foreach RA i we will be able to measure the inbound flow from the external RA bext,i, but not the outbound

    bi,ext. In Section 5 we will discuss further how to handle such RAU flow in the problem formulation.

    8

  • 7/31/2019 Gprs Optimization Tutorial

    9/21

    Erroneous identifiersRecall that the identifier for the destination RA j is filled in by the BSC, and therefore can be alwaystrusted assuming no configuration errors in the BSC. Instead, the identifier of the source RA i is adver-tised directly by the MSs. As a consequence, it is subject to errors by the MS, that could advertise awrong or non-existent RA. For instance in our dataset there was a very large amount of RAU messagesadvertising the invalid value 0-0-0-0 as the old-RA. Additionally, sporadic errors by the MS build up a

    large number of useless counters, since the HRO generates a vector of counters bi,j(k) for each pair ofnew pair (i, j) seen on Gb.

    Sporadic elementsIt can be expected that the mobility matrix is sparse, i.e. many elements are null. For instance, RAthat are distant from each other do not exchange RAU flow. This is an advantage for our optimization,since the size of the ILP problem (specifically the number of constraints) depends on the number ofnon-null elements i,j > 0. In some cases we found pairs of RAs with very sporadic RAU messages, i.e.bi,j(k) holds non-null values only in very few time bins. This is probably the case of distant RAs thatoccasionally come into proximity (e.g. due to fluctuations in the radio coverage) or to RA within a regionwith very low mobility (e.g. rural area distant from major roads). For our purpose it is convenient toignore these spurious elements in order to reduce the prolem size, with a negligible impact on the quality

    of the final solution.

    Anomalous peaksThe problem formulation given in Section 2.3 takes as input the peak values of the RAU flow vectorbi,j(k). However for some (i, j) pairs the time series bi,j(k) display some anomalous peaks that are con-siderable higher than the normal peaks we want to consider in the network planning. Anomalous peakscan be originated by occasional events like BSC failures or pre-planned rebooting. In fact, when RA i isturned off, all MSs attached to i migrate instananeously to the neighboring RA, say j, generating a highpeak in the RAU flow bi,j(k). Conversely, when the RA is turned on again, most MS (but not all, due tohisteresys) will return to i. If the peak value i,j is computed by simple maximization of the time-seriesbi,j(k), such anomalous events would inflate its value and ultimately lead to large over-estimation. Tocounteract such effect it is required to identify and filter away the anomalous peaks before applyingthe maximization. This process requires the implementation of some outlier-filtering methods that arediscussed in details below in Section 3.4.

    Data preparationFrom the above discussion it should be clear that the HRO output must be cleaned-up in post-processingin order to derive a meaningful bi,j dataset. The following actions must be performed:

    The bi,j(k) samples associated to source RA identifier that are known to be wrong bust be droppedfrom the dataset, e.g. the well known 0-0-0-0. Notably this will lead to some slight under-estimationof the real RAU load, since in general RAU messages are processed by the SGSNs despite an invalidold-RA identifier.

    Sporadic non-null elements of the bi,j(k) dataset must be filtered away. This can be achieved byasimple threshold-based approach: for a specific (i, j) pair, the full vector bi,j(k) in k is dropped

    from the dataset if its maximum value maxk ({bi,j(k)}) is below a certain threshold (e.g. 1 mes-sage/min). In this way also sporadic elements due to occasional errors by the MS are eliminated.

    Outlier filtering (see Section 3.4).

    Merging of foreign RAs into a single external RA.

    We applied these procedures to our dataset, and derived a cleaned up version of the bi,j(k) vectorsfor the 128 RA (127 real RA plus one external RA). From it, we derived the peak elements i,j of theMobility Matrix by simple maximization. A graphical representation of such matrix is given in Figure3. Note that the index 128 is associated to the external RA, which is only present as source RA.

    3.2 Extraction of the Attachment Vector ai(k)

    From the traces on Gb we can extract the number of attached users in each RA and at each instant. Thisrequires the tracking of Attach and Detach messages for each MS (identifies through the IMSI), and the

    9

  • 7/31/2019 Gprs Optimization Tutorial

    10/21

    implementation of simplified state machines for each MS in order to trigger implicit detachement aftera specific timeout (Routing Area Update timeout). We have developed an ad-hoc stateful code scalableenough to track millions of different MSs. An internal vector of counter indicates the number of attachedMSs to each RA. The counter is sampled at regular intervals (e.g. 1 minute) in order to generate thediscrete signal ai(k). Note that the time-serie ai(k) has a different periodicity than bi,j(k) (1 min vs. 5min).

    Similarly to the RAU flow signal bi,j(k), also the signal ai(k) requires outlier-filtering to eliminateanomalous peaks before maximization. This issue is discussed in details in Section 3.4. Some samplegraphs of ai(k) are given in Figure 4.

    3.3 Exploratory analysis

    In this section we explore the data at hand in order to evidence the need for outlier filtering.

    In Figure 5-top we plot the number of estimated attached MSs in RA 50/89 2 and the number ofinbound / outbound RAU for the same RA (lower curves). We notice two major events, labelled Aand B zoomed in fig. 5-bottom, which are discussed below.

    As a general remark, it can be seen that the daily peak in the number of attached MSs is not synchro-

    nized with the peak in the inbound/outbound RAU. This should be taken into account in the planningprocess: the concept of a unique peak-hour does not suffice for all the dimensions involved in the opti-mization.

    The case of missing dataA first notch (A) at time 710-719 is due to missing data. There are neither inbound nor outboundRAU messages during a period of 45 minutes, and we also verified that also periodic RAU and other

    2In the rest of this document we label each RAs with a pair of arbitrary indices, in the format xx/yy, in order to notdisclose the real Routing Area Identifier (RAI).

    Figure 3: Mobility Matrix (peak values, re-scaled).

    10

  • 7/31/2019 Gprs Optimization Tutorial

    11/21

    signaling messages were missing for the same period. Interestingly, this has an impact on the estimationof the number of attached MSs. In fact, the HRO that estimates the number of attached MSs basedon the Gb traces relies on packets from / to the terminal to decide whether a terminal is attached ornot: basically it tries to approximately reconstruct the state machine within the SGSN in order to findthe instant of implicit detach. As a consequence, missing packets might cause the HRO to consider theterminal as implicitly detached. In those cases where the packet was present in the network but was

    then lost by the monitoring system, this automatically led to a temporary understimation error in thenumber of attached terminals.

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    2000

    4000

    6000

    8000

    10000

    12000

    Attached users in RA70

    time [5 min bins]

    Num

    .attachedusers[5minbins]

    Measured DataFilter Median UP

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    500

    1000

    1500

    2000

    2500

    3000

    3500

    4000

    Attached users in RA34

    time [5 min bins]

    Num.attachedusers[5minbins]

    Measured DataFilter Median UP

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    Attached users in RA38

    time [5 min bins]

    Num.attachedus

    ers[5minbins]

    Measured DataFilter Median UP

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    Attached users in RA56

    time [5 min bins]

    Num.attachedus

    ers[5minbins]

    Measured DataFilter Median UP

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    50

    100

    150

    200

    250

    300

    350

    Attached users in RA125

    time [5 min bins]

    Num.attachedusers[5minbin

    s]

    Measured DataFilter Median UP

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    Attached users in RA69

    time [5 min bins]

    Num.attachedusers[5minbins

    ]

    Measured DataFilter Median UP

    Figure 4: Number of attached MS to some sample RAs (one week in October 2004). Each graph includes

    the signal envelope after outlier filtering and the corresponding peak (note: numerical values on the Y-axis are re-scaled by undisclosed factor).

    11

  • 7/31/2019 Gprs Optimization Tutorial

    12/21

    A first case of off/on cycleThe second event (B) occurrs at time 850 (around 11:00 pm of Wednesday) and it is clear associatedto a switch off / on cycle of the RA - since it occurred over night time, it might be due to a plannedmaintenancetipically intervention. When the RA goes down (B1 in fig. 5-bottom), the terminalsimmediately move to others neighboring RAs. Similarly, when it comes up again (B2) after few

    minutes, most terminals return back. This is evident from the zoomed graph in fig. 5-right. However,the level of attached MSs after the off/on cycle is lower than before (specifically, with a gap of 1000c.ca MSs from 6000 c.ca). This can be explained with the hysteresis in the cell selection process (someterminals will remain attached to the last visited RA if the power gain is not sufficient to justify a hand-over procedure). As can be seen from the figure, the effect of the off/on cycle in terms of reduced numberof attached MSs are still visible after several hours: in the specific case, it will take approximately 8hours (period C) for the attached MSs curve to realign with the normal daily behavior.

    It is important to explain why the curve of (estimated) attached MSs does not reach the zero levelduring the RA off period. First, some terminals can not jump to another RA since they are not underthe radio coverage of other stations. Secondly, those terminals that are temporary out of radio coverageremain attached to the current RA - that is, the state in the SGSN and in the terminal itself keep alive- until the expiration of the timeout for implicit detachement 3.

    Impact on neighboring RAThe off/on cycle of the previous RA 50/89 induced a peak in the inbound RAU flow of the neighboringRA 43/5 which was located within the same Location Area (recall that RAs are subsets of LAs). Theweekly behavior of the latter is reported in Figure 6. The small peak in the attached MS (upper graph)indicates that most of the MSs migrated to the RA 43/5 during the off/on cycle of RA 50/89.

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    8000

    time [5 min bins]

    Numberofusers

    Attached users RA50

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    500

    1000

    1500

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA89

    Outbound RA89

    A

    A

    B

    B

    C

    700 720 740 760 780 800 820 840 860 880 9000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    8000

    time [5 min bins]

    Numberofusers

    Attached users RA50

    700 720 740 760 780 800 820 840 860 880 9000

    500

    1000

    1500

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA89

    Outbound RA89

    A

    A

    B1

    B1

    B2

    B2

    Figure 5: Measured data for RA 50/89 (re-scaled).

    3This raise an interesting paradox: for off/on cycles shorter than the timeout, the terminals which are out of radiocoverage remain attached to the RA, while those with good radio coverage immediately migrate to other RAs.

    12

  • 7/31/2019 Gprs Optimization Tutorial

    13/21

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    8000

    time [5 min bins]

    Numberofusers

    Attached users RA43

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    50

    100

    150

    200

    250

    300

    350

    400

    450

    500

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA5

    Outbound RA5

    700 720 740 760 780 800 820 840 860 880 9000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    8000

    time [5 min bins]

    Numberofusers

    Attached users RA43

    700 720 740 760 780 800 820 840 860 880 9000

    100

    200

    300

    400

    500

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA5

    Outbound RA5

    Figure 6: Measured data for 43/5 (re-scaled).

    A second case of off/on cycleAnother case of anomalous RAU peak caused by off/on cycle of RA is found for RA 16/85. Its weeklybehavior is plotted in fig. 7. It shows a peak in the inbound RAU at time 150. The detailed analysissuggest that this RA had a short off/on cycle, but differently from the previous case (RA 50/89) no largeoutbound peak is seen at the beginning of the off period. There are two possible explications:

    The MS could not migrate to other neighboring RA, perhaps because of non overlapping radiocoverage, and therefore remain hanging.

    The MS migrated to an external (non monitored) RA.

    When the RA comes up again, the MSs return back, thus originating a peak in the inbound flow andrecovering the previous level of attached MSs.

    A off/on cycle of non-monitored RAFurther inspection of the data showed the case of RA x/104 whose outbound RAU flow is plotted in Figure3.3. This is a foreign RA from another operator, therefore could not be directly monitored, therefore wecan not measure the number of attached MS nor the inbound RAU flow. However we can measure thecumulated outbound RAU flow towards the neighboring monitored RAs, shown in Figure 3.3. Shortlybefore 3:00 am of Thursday this RA injected a massive RAU flow into our network, more than 10 timesthe normal daily peak. The hypothesis that the RA went through an off/on cycle is comforted by thefact that after the peak the outbound flow reached zero for a few minutes (label D in fig. 3.3-bottom).Since the event occurred overnight, it is likely that the off/on event was a pre-planned OM intervention.

    Additionally, we incidentally note that the daily profile after this event changed permanently, with alower level of RAU flow: this suggests that OM intervention was not just a rebooting but involved some

    13

  • 7/31/2019 Gprs Optimization Tutorial

    14/21

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    8000

    time [5 min bins]

    Numberofusers

    Attached users RA16

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    100

    200

    300

    400

    500

    600

    700

    800

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA85

    Outbound RA85

    80 100 120 140 160 180 2000

    1000

    2000

    3000

    4000

    5000

    6000

    7000

    time [5 min bins]

    Numberofusers

    80 100 120 140 160 180 2000

    100

    200

    300

    400

    500

    600

    700

    time [5 min bins]

    RAU

    msg/minute

    Attached users RA16

    Inbound RA85

    Outbound RA85

    Figure 7: Measured data for RA 16/85 (re-scaled).

    permenent reconfiguration (e.g. a reduction of the RA coverage, or the installation of an additional RAabsorbin some of the MSs in the area 4.

    3.4 Outlier filtering

    The exploratory analysis of the data has revealed several cases of anomalous short-term peaks. In this

    section we describe the method adopted to identify and eliminate them automatically. We have appliedthis method to each individual vector bi,j(k) and ai(k).

    Given a discrete-time vector x(k) we consider a moving window of length W. We denote by mW(k)and W(k) respectively the median and standard deviation of the samples in the range (kW/2, k+W/2).Note that we use the median rather than the mean as the indicator of the mass of the distribution. Thisis due to the better stability in presence of very large outliers: they bias the mean but have almostno impact onto the median. The generic sample in k is marked as outlier if it exceeds the value ofmW(k) + 3W(k). In this case its value is set down to mW(k).The window length W must be chosen carefully. Ideally, the signal can be assumed stationary in thewindow W, and the number of samples in each window is sufficient to estimate the first moments of theamplitude distribution. In our study we assumed a window length equal to 1 hour.

    4As a side comment, this example shows how much information one can infer - also about foreign networks - from thedetailed analysis of the mobility signaling.

    14

  • 7/31/2019 Gprs Optimization Tutorial

    15/21

    200 400 600 800 1000 1200 1400 1600 1800 20000

    50

    100

    150

    200

    250

    300

    350

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA104

    Outbound RA104

    850 860 870 880 890 900 910 920 930 940 9500

    5

    10

    15

    20

    25

    30

    35

    40

    45

    50

    time [5 min bins]

    RAU

    msg/minute

    Inbound RA104

    Outbound RA104

    D

    E

    Figure 8: Outbound RAU flow for RA x/104 - foreign RA from another operator.

    4 Numerical Results

    In this chapter we provide numerical results and examplary figures derived for a case-study based onreal measurements. The input measurements were collected from the operational network of mobilkomaustria AG & Co KG with the METAWIN monitoring system. The dataset used here includes one fullweek of measurements in October 2004 (from Monday 00:00 to Sunday 24:00) on a subset of the Gblinks. We monitored only a subset of the Gb links, specifically those attached to the K SGSN co-locatedat a single site. The dataset includes 127 different RAs, representing a fraction F of the total networkcoverage.

    Note: For proprietary reasons we can not disclose the values of K and F, nor provide absolutequantitative values like traffic volumes, number of MS, number of Gb links, etc. Therefore in the followinggraphs the values of the vectors bi,j(k) and ai(k) have been re-scaled by an arbitrary un-disclosed factor.

    The number of attached users for each RA (sampling period: 1 min) and the RAU flows (counted intime bins of 5 min) were extracted with ad-hoc extraction code (HRO) developed during the project. Theresulting data were cleaned-up according to the methods previously described in Section 3, implementedin MATLAB scripts. The optimization problem formulated in Section 2.3 was implemented in AMPLlanguage [2] and solved with CPLEX [3], a well-known commercial tool for mathematical optimization.We remark that the whole resolution process involves several stages using different software modules andtools (HRO, MATLAB, AMPL, CPLEX), and that each stage is performed manually.

    In our case-study we have taken a number of simplifying assumptions:

    We ignore the real RA-PCU mapping, and assume a simple 1:1 mapping. In other words, each RAcan be freely assigned to any SGSN without considering the super-RA clusters introduced later(see Section 5).

    15

  • 7/31/2019 Gprs Optimization Tutorial

    16/21

    1 1.5 2 2.5 3 3.5 4 4.5 5

    x 105

    0

    500

    1000

    1500

    2000

    2500

    3000

    max attached MSs (rescaled)

    RAU

    flow(re

    scaled)

    opt

    for M=5

    opt

    for M=4

    opt

    for M=3

    opt

    for M=2

    M=5

    M=4

    M=3

    M=2

    Figure 9: Optimal curve for the case-study (rescaled values).

    We do not consider the RAU flow from/to the external-RA (see Section 3.1).

    The optimization problem formulated in Section 2.3 was implemented in AMPL language [2] andsolved with CPLEX [3]. Several problem instances were solved with different values of the parametersM (number of SGSNs) and . The latter serves as a tuning knob for the trade-off between the twominimization objectives and . For each combination of these parameters, the optimal RA-SGSNassignement is found and the associated values of (Y-axis) and (X-axis) are reported Figure 9.The curve represents the optimal trade-off region between and . Clearly, the minimum value of (computed with = 0, marked by vertical lines in Figure 9) depends on the number M of availableSGSNs. With more SGSNs one can achieve lower values of by distributing the MSs into more subsets,but in most cases that comes at the cost of a higher iRAU flow . For large values of the slack factor the iRAU flow minimization dominates the overall optimization process, and the solutions for M = X

    overlap with those for M = X h (h=1,2..), meaning that h out of M SGSN are left unused in theoptimal solution. Intestingly, we note that in some cases the availability of one more SGSN allows abetter placement of the RAs, yelding a smaller value of for the same value of (e.g. compare M = 5vs. M = 4 for = 1.6e5, and similarly M = 4 vs. M = 3 for = 2.1e5).

    The curve in Figure 9 can be used by the network staff to find the more convenient operating pointbased on external cost factors, and to derive the optimal number of SGSN M required to implementthe optimal solution. The method proposed above can be directly used to optimize the PCU-SGSNassignement for a real network or part of it. For example a sub-problem of practical interest is tooptimize the PCU-SGSN assignement limited to the SGSNs co-located at a single physical site.

    16

  • 7/31/2019 Gprs Optimization Tutorial

    17/21

    5 Application to real networks

    The numerical results presented in Section 4 were obtained assuming complete freedom in the assigne-ment of RA to SGSN. Such a simplifying assumption is fine to illustrate the overall optimization processin the first place. However the adoption of the above approach to the planning of a real network wouldrequire taking into account a number of additional constraints. Below we discuss how to adapt the

    optimization process to address such aspects.

    Physical contraintsGeographical proximity and considerations related to the costs of the wired infrastructure interconnect-ing the PCU to the SGSN would probably dictate the assignement of certain PCU (hence RA) to somepre-defined SGSNs. Such constraints can be easily implemented by fixing the values of the routing vari-ables xi,m associated to these RA.

    Logical contraintsThe RA-to-PCU assignement can be not as simple as 1:1. It is possible that several RAs are attached tothe same PCU (i.e. BSC): in this case, all these RAs will be assigned to the same SGSN. It is also possiblethat one RA is split among multiple PCU on a cell-by-cell basis (this is the case for very large RAs). But

    the 3GPP specifications forbid that a single RA is split between multiple SGSNs. As a consequence, allthe PCUs sharing the same RA will be necessarily linked to the same SGSN. These aspects introducemutual constraints between the associations of RA to SGSN, which can be used to reduce the size of theoptimization problem. In fact, if n different RAs are forced to be attached to the same SGSN, we cangroup them under a single virtual entity, called super-RA, with a single set of routing variables xi,minstead ofn (in this case the index i refer to the super-RA). In practice, it is required to pre-process theset of RA and associated PCUs in order to define the minimum set of super-RAs, then the optimizationproblem given in Section 2.3 is applied to the super-RA set.An example of super-RA associations is given in Figure 10: the RAs r1 and r2 share the same PCU p1,therefore will be merged into the same super-RA; but since r2 is also attached to PCU p2, all the RAsattached to p2 must be merged into the same super-RA to avoid splitting of r2 between multiple SGSNs.In the same example, RA r5 and r6 do not share any PCU with other RAs, therefore can be mapped1:1 to individual super-RA. In the end, we have reduced the number of entities from 9 RAs to only 4

    super-RAs.The pre-processing can be automatized by means of a very simple algorithm. In fact we can build anon-directed graph as follows: assign a node to each RA and to each PCU, and draw a link between eachRA and its attached PCU. The resulting graph will be a collection of sub-graphs, called interconnectedcomponents, separeted from each other. It can be easily shown that each sub-graph corresponds to asuper-RA.While the determination of super-RA is conceptually very simple, its practical implementation requiresthe setup of a database collecting all the RA identifiers and associated PCUs. In fact the number ofentities to be handled is typically in the order of several hundreds, and it is impractical to rely on manualcomputation.

    Implementation requirements

    In order to achieve a meaningful global solution, it is required to collect the data for the complete net-work, i.e. to monitor all RAs.In some cases the network staff is interested in solving a partial sub-problem: given a subset of SGSN,typically co-located in the same physical site, re-optimize the PCU-SGSN assignement for these only. Inthis case it is not required to monitor the RAs attached to other SGSN, since they are excluded a priorifrom the problem. However we maintain the requirement to monitor all the RA attached to the set ofSGSN under consideration.

    Handling non-monitored RAThe iRAU flow from / to external SGSNs (i.e. SGSN that are not considered in the optimization, likeforeign SGSN) contribute to the iRAU load of each monitored SGSN, therefore should be taken intoaccount in the optimization process. This can be fitted into the structure of the ILP formulation bydefining an additional virtual RA, called external RA, that embeds all non-monitored RAs. Recall

    that we have assumed above that that non-monitored RAs do not share the same SGSN of the monitoredRA. In other words, for a generic SGSN, either we monitor all RAs potentially attached to it or noneof

    17

  • 7/31/2019 Gprs Optimization Tutorial

    18/21

    them. From this assumption it derives that the RAU flows from / to the external-RA must be alwaysconsidered as inter-SGSN RAU. The inbound iRAU flow from the external-RA towards each other RAis known, but the outbound flow (towards the external-RA) is not. A possible workaround would be toassume the external outbound flow equal to the inbound for each RA.

    Figure 10: Scheme of RA-PCU mapping and associated set of super-RA.

    18

  • 7/31/2019 Gprs Optimization Tutorial

    19/21

    6 Possible refinements and extensions

    In this section we identify possible directions for progressing this work.

    6.1 Support heuristic for large networks

    The resolution of the ILP formulation with CPLEX through the standard branch-and-bound method ona standard PC takes few hours for the case study under analysis: 128 RA, up to N = 5 SGSNs. It wouldbe inpractical to attack larger problem instances by direct resolution of the full problem. For largernetworks, it would be required to develop decomposition heuristics in order to drive the optimizationproblem towards a good sub-optimal solution in a reasonable time. With this approach, the problemis decomposed into a set of smaller sub-problems that are resolved sequentially. In a further phase ofiterations can be added in order to improve the quality of the final solution. Such heuristics can beimplemented directly in the AMPL language. A similar approach was adopted in some previous worksabout ILP optimization applied to networks [4] [5].We remark however that in most practical cases the size of the problem would still be attackable bydirect branch-and-bound resolution. In fact, despite the number of RA is certainly much larger thanin our case-study (probably one order of magnitude), the physical and logical constraints discussed inSection 5 would probably drive the number of free routing variables to be dramatically lower.

    6.2 Multi-period optimization

    The term seasonality indicates pseudo-periodicity in the time-series. Traffic data typically displaystrong seasonality at two levels: daily and weekly. Daily cycles reflect the changes in user activity atdifferent hours, with large differences between morning, evening and night. Weekly cycles mainly reflectdifferences between working days and weekends. In general different network sections display differentdaily / weekly patterns. For instance, business areas hold higher traffic during the morning than in theevening, while the opposite is true for residential areas.In principle, it is possible to exploit such differences to save resources: by coupling traffic flows with

    opposite daily behaviour on the same network resources, the total maximum load can be kept belowthe sum of the individual maxima. More formally, consider two traffic flows x1(t) and x2(t) with peakvalues p1 = maxt(x1(t)) and p2 = maxt(x1(t)) sharing the same network resource. A planning processbased on the individual peak values will reserve a total amount of resource equal to pstatic = p1 + p2 =maxt(x1(t)) + maxt(x2(t)) which is larger than the maximum traffic value maxt(x1(t) + x2(t)). Byreducing the input signals xi(t) to a single scalar value pi, the full time-profile of the process is lost -hence we shall refer to such approach as static optimization. A more sophisticated approach wouldconsider the full time-profile of the process, and feed the entire vector xi(t) into the optmization processrather than just its peak. In this way, one can achieve a better estimation of the required resource.This approach, referred to as time-varying optimization - or multi-period optimization - has beenexplored in some past papers [4] [5]. From a mathematical point of view, the problem formulation givenin Section 2.3 could be easily extended towards multi-period optimization. However in this work we donot consider this option, and let the application of multi-period optimization to Core Network planningfor future study. Here we adopt the classical (and simpler) approach of static optimization, which issimilar in principle to the peak-hour methods that are traditionally used in network planning. Thereasons for that are the following:

    The effective gain in resource saving between the static and multi-period approach heavily dependson the data at hand. When most of the network areas follow quasi-synchronized daily patterns,the gain is negligible.

    A multi-period optimization is much heavier to solve than a static one, since several variables andconstraints must be duplicated for each time-period.

    Because of the above point one has to develop some heuristic methods to derive a solution fornetworks of practical size. The implementation of heuristics in AMPL is time-consuming and

    would require considerable amount of manpower.

    19

  • 7/31/2019 Gprs Optimization Tutorial

    20/21

    The higher complexity in the implementation and resolution of the multi-period formulation wouldbe justified only if it yeld a considerable resource saving. As a probing activity, we implemented a mixedformulation where only the seasonality of the ai(k) signal (attached MS) was considered. Preliminaryresults applied to our data showed a rather poor saving with respect to static optimization - less than10% - that does not justify further efforts in this direction for the moment being.In summary, multi-period optmization is left out of this work, but might be resumed as an interesting

    direction for further research when new data will become available (see section 5).

    0 200 400 600 800 1000 1200 1400 1600 1800 20000

    200

    400

    600

    800

    1000

    1200

    1400

    1600

    Attached users in RA124

    time [5 min bins]

    Num.attachedusers[5minbins]

    Measured DataFilter Median UP

    Figure 11: RA with recurrent short-term peaks in the RAU flow (note: numerical values on the Y-axisare re-scaled by undisclosed factor).

    6.3 Refined filtering process

    The filtering process described in Section 3.4 is meant to filter out short-term anomalous peaks. The

    implementation is relatively simple, however has some limitations. For instance short-term spikes thatare recurrent over many days should not be regarded as anomalies - an example is given in Figure11. These peaks are cut by the filtering method proposed above. In fact it is based only on the localbehavior of the signal in the window (t W/2, t + W/2) to identify an anomalous peak in t. A morerefined approach would also consider the signal characteristics at the same hour of previous days, i.e.(t W/2 nD,t + W/2 nD) (with D = 24h and n=1,2,..).Such refinement have been left out of the scope of this paper. In fact in our study recurrent spikes likethose found Figure 11 are very rare (only appear in a couple of RAs), and ultimately the impact ontothe final solution of the optimization problem is negligible.

    20

  • 7/31/2019 Gprs Optimization Tutorial

    21/21

    A List of Acronims

    BSC Base Station Controller

    iRAU inter-SGSN Routing Area Update

    GGSN Gateway GPRS Support Node

    MS Mobile Station

    PCU Packet Control Unit

    RA Routing Area

    RAU Routing Area Update

    SGSN Serving GPRS Support Node

    References

    [1] METAWIN home page. http://www.ftw.at/ftw/research/projects/ProjekteFolder/N2.

    [2] AMPL: A Modeling Language for Mathematical Programming. http://www.ampl.com.

    [3] ILOG CPLEX. http://www.ilog.com/products/cplex/.

    [4] F. Ricciato, S. Salsano, M. Listanti. Off-line Configuration of a MPLS over WDM Network underTime-Varying Offered Traffic. IEEE INFOCOM02, New York, June 2002.

    [5] F. Ricciato, U. Monaco. Routing Demands with Time-Varying Bandwidth Profiles on a MPLSNetwork. Journal of Computer Networks (Elsevier), 47(1), January 2005.

    *** *** ***END OF DOCUMENT