delay tolerant voice calls in a gsm/gprs cell

27
Delay Tolerant Voice Calls in a GSM/GPRS Cell University of Glamorgan Mobile Computing and Networking Research Centre Performance Modelling with MOSEL-2 Patrick Wuechner 1,2 , Khalid Al-Begain 1 , Joerg Barner 2 , Gunter Bolch 2 1 University of Glamorgan, Wales, UK 2 University of Erlangen, Germany

Upload: jabir

Post on 03-Feb-2016

43 views

Category:

Documents


0 download

DESCRIPTION

University of Glamorgan Mobile Computing and Networking Research Centre. Performance Modelling with MOSEL-2. Delay Tolerant Voice Calls in a GSM/GPRS Cell. Patrick Wuechner 1,2 , Khalid Al-Begain 1 , Joerg Barner 2 , Gunter Bolch 2 1 University of Glamorgan, Wales, UK - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Delay Tolerant Voice Calls in a GSM/GPRS Cell

Delay Tolerant Voice Calls in a GSM/GPRS Cell

University of GlamorganMobile Computing and Networking Research Centre

Performance Modelling with MOSEL-2

Patrick Wuechner 1,2, Khalid Al-Begain 1, Joerg Barner 2, Gunter Bolch 2

1 University of Glamorgan, Wales, UK

2 University of Erlangen, Germany

Page 2: Delay Tolerant Voice Calls in a GSM/GPRS Cell

Outline Introduction Performance Modelling with

MOSEL-2 A single GSM/GPRS Cell with Delay

Tolerant Voice Calls (DeTVoC) Recent Improvements of MOSEL-2

Page 3: Delay Tolerant Voice Calls in a GSM/GPRS Cell

Introduction

MOSEL (Modelling, Specification, and Evaluation Language) is a textual high-level

modelling language. Developed in Erlangen. Suitable for describing system model based on

queuing networks, Petri Nets, and many else. MOSEL Package contains: Language

Interpreter, Numerical/simulation solvers, and graphical tool for result presentation.

Page 4: Delay Tolerant Voice Calls in a GSM/GPRS Cell

Introduction

History of MOSEL- MOSLANG (predecessor of MOSEL)- MOSEL (H. Herold, G. Bolch, K.Al-Begain)

- Markov solution only- C based syntax and support- Support for SPNP and MOSES tools

- MOSEL-2 (B. Beutel, J. Barner, G.Bolch)- Markov and DSPN based solution (immediate, exponential and

deterministic transitions)- Simulation- Moved away from C- Support for SPNP and MOSES tools

- Next MOSEL (P. Wuechner, K.Al-Begain)- Empirical and General distributions- ???

Page 5: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

Petri Net model description:

Exp Det

p1 p2

N=3

Page 6: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

MOSEL model description:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

Exp Det

p1 p2

N=3

Page 7: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

MOSEL model description: 1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

Exp Det

p1 p2

N=3

Parameter Part

Page 8: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

MOSEL model description: 1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

Exp Det

p1 p2

N=3

System State Definition Part

Page 9: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

MOSEL model description: 1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

Exp Det

p1 p2

N=3

Transition Rules Part

Page 10: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: A Basic Example

Closed Tandem Network:

MOSEL model description:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

1: PARAMETER rate_t1 := 2 .. 8 STEP 2;

2: CONST mean_t2 := 1/5;

3: NODE p1[3] := 2;

4: NODE p2[3] := 1;

5: FROM p1 TO p2 RATE rate_t1;

6: FROM p2 TO p1 AFTER mean_t2;

7: PRINT avg_in_p1 := MEAN(p1);:

Exp Det

p1 p2

N=3

Result definition part

Page 11: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Invoking the Environment

Command line:

Options:-T: Translate MOSEL model to

TimeNET model.(can be c for SPNP or m for

Moses)

-s: Start appropriate tool (TimeNET) automatically.

mosel2 –Ts tandem.mosmosel2 –Ts tandem.mos

Page 12: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Workflow

MOSES SPNP TimeNET other

sys.m sys.c sys.tn sys.?…

sys.mos

user

real system

numerical analysis

discrete event simulation

tool specific result files…

sys.{res, igl}

11

2

3

4

5

6

2

3

4

5

6

1) building MOSEL-2 system description and starting the environment

2) MOSEL-2 translates the given model to the input file format of an evaluation tool

3) the appropriate tool is called by MOSEL-2

4) the tool evaluates the model either using numerical analysis methods or discrete event simulation

5) tool writes it output to tool specific output files

6) MOSEL-2 collects and parses all output files to uniform result files

Page 13: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Result Presentation

textual:Stationary analysis of "tandem.mos" by TimeNET

Parameters:

rate_t1 = 2

Results:

avg_in_p1 = 2.49505

==============================================

Parameters:

rate_t1 = 4

Results:

avg_in_p1 = 1.80837

==============================================

Parameters:

rate_t1 = 6

Results:

avg_in_p1 = 1.20243

==============================================

Parameters:

rate_t1 = 8

Results:

avg_in_p1 = 0.818239

Stationary analysis of "tandem.mos" by TimeNET

Parameters:

rate_t1 = 2

Results:

avg_in_p1 = 2.49505

==============================================

Parameters:

rate_t1 = 4

Results:

avg_in_p1 = 1.80837

==============================================

Parameters:

rate_t1 = 6

Results:

avg_in_p1 = 1.20243

==============================================

Parameters:

rate_t1 = 8

Results:

avg_in_p1 = 0.818239

graphical:(if specified)

Page 14: Delay Tolerant Voice Calls in a GSM/GPRS Cell

GSM/GPRS Cell with Delay Tolerant Voice Calls

Assumptions: N GSM channels shared between Voice and data

traffic. Voice is circuit-switched. Data is packet switched (can be buffered). Data traffic utilises all channels not used by

Voice. When all channels are busy Voice calls are

blocked but NOT lost immediately. Blocked voice calls are delayed for a certain

(fixed) amount of time before being rejected.

Page 15: Delay Tolerant Voice Calls in a GSM/GPRS Cell

DSPN model of GSM/GPRS air interface

p1

t1

p2

t2

TDMA

p3

p4

t3

DV

t4

t5

t7

t8

t6…

V D

t1: Poisson voice arrival processt2: Poisson data arrival processt3: data losst4: data admissiont5: call admissiont6: DeTVoC (deterministic, IS)t7: data service (exponential, IS)t8: voice service (exponential)

Page 16: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2 Model01 /* PARAMETER AND CONSTANTS **********************/02 PARAMETER lambda_d := 0.1, 0.5 .. 2.5 STEP 0.25;03 CONST lambda_v := 1/100;04 CONST mue_single_v := 1/80;05 CONST max_users_v := 100; 06 CONST chan_res_d := 1;07 CONST waiting_time := 10;08 CONST mue_single_d := (21.4/8) / 10;0910 /* NODES ****************************************/11 NODE p1[max_users_v] := 0;12 NODE p2[1] := 0;13 NODE p3[32] := 0;14 NODE p4[chans-chan_res_d] := 0;1516 /* TRANSITIONS **********************************/17 FROM EXTERN TO p1 RATE lambda_v; //t118 FROM EXTERN TO p2 RATE lambda_d; //t219 FROM p2 TO EXTERN PRIO 1; //t320 FROM p2 TO p3 PRIO 2; //t421 FROM p1 TO p4 PRIO 2; //t522 @<1..max_users_v>{ //t623 IF p1 >= # FROM p1 24 TO EXTERN 25 AFTER waiting_time 26 PRIO 1;27 }

01 /* PARAMETER AND CONSTANTS **********************/02 PARAMETER lambda_d := 0.1, 0.5 .. 2.5 STEP 0.25;03 CONST lambda_v := 1/100;04 CONST mue_single_v := 1/80;05 CONST max_users_v := 100; 06 CONST chan_res_d := 1;07 CONST waiting_time := 10;08 CONST mue_single_d := (21.4/8) / 10;0910 /* NODES ****************************************/11 NODE p1[max_users_v] := 0;12 NODE p2[1] := 0;13 NODE p3[32] := 0;14 NODE p4[chans-chan_res_d] := 0;1516 /* TRANSITIONS **********************************/17 FROM EXTERN TO p1 RATE lambda_v; //t118 FROM EXTERN TO p2 RATE lambda_d; //t219 FROM p2 TO EXTERN PRIO 1; //t320 FROM p2 TO p3 PRIO 2; //t421 FROM p1 TO p4 PRIO 2; //t522 @<1..max_users_v>{ //t623 IF p1 >= # FROM p1 24 TO EXTERN 25 AFTER waiting_time 26 PRIO 1;27 }

28 FROM p3 TO EXTERN RATE mue_single_d * (8-p4); //t729 FROM p4 TO EXTERN RATE mue_single_v * p4; //t83031 /* RESULTS **************************************/32 // TEXTUAL (.res)33 PRINT d_loss := PROB (p3=32);34 PRINT v_block := UTIL (p1);3536 // GRAPHICAL (.igl)37 PICTURE “prob. of data loss and voice blocking"38 PARAMETER lambda_d39 XLABEL "incoming burst rate"40 YLABEL "PROB"41 CURVE d_loss42 CURVE v_block

28 FROM p3 TO EXTERN RATE mue_single_d * (8-p4); //t729 FROM p4 TO EXTERN RATE mue_single_v * p4; //t83031 /* RESULTS **************************************/32 // TEXTUAL (.res)33 PRINT d_loss := PROB (p3=32);34 PRINT v_block := UTIL (p1);3536 // GRAPHICAL (.igl)37 PICTURE “prob. of data loss and voice blocking"38 PARAMETER lambda_d39 XLABEL "incoming burst rate"40 YLABEL "PROB"41 CURVE d_loss42 CURVE v_block

Page 17: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2 Results

Page 18: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2 Results

Page 19: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Recent Improvements

Introducing automatic approximation of “empirical” distributions:

MOSEL:

Petri Net:

3 different approximations depending on Squared Coefficient of Variation: 2

22

tc

2

22

tc

Page 20: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Recent Improvements

c2 = 1Empirical distribution gets substituted by Exponential distribution with service rate:

t

1t

1

Page 21: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2 Recent Improvements

c2 > 1Empirical distribution gets substituted by Generalized Exponential (GE) construct:

Page 22: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Recent Improvements

c2 < 1Empirical distribution gets substituted by Hypoexponential Phase-Type (PH) construct:

Page 23: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Application revisited

ESPN model of GSM/GPRS air interface:

p1

t1

p2

t2

TDMA

p3

p4

t3DV

t4

t5

t7

t8

t6…

V D

t1: Poisson voice arrival processt2: Poisson data arrival processt3: data losst4: data admissiont5: call admissiont6: DeTVoC (exp delay)t7: data service (empirical, IS)t8: voice service (exponential)

Page 24: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2 Model 1 /* PARAMETER AND CONSTANTS **********************/ 2 CONST lambda_d := 1.5; 3 PARAMETER lambda_v := 0.02 .. 0.06 STEP 0.01; 4 CONST mue_single_v := 1/80; 5 CONST max_users_v := 50; 6 CONST chans := 8; 7 CONST chan_res_d := 1; 8 CONST chan_max_d := chans - 2; 9 CONST waiting_time := 10;10 CONST mean_single_d := 10 / (21.4/8);11 PARAMETER scv_d := 0.5, 1, 2;12 CONST var_d := scv_d * mean_single_d13 * mean_single_d;1415 /* NODES ****************************************/16 NODE p1[max_users_v] := 0;17 NODE p2[1] := 0;18 NODE p3[32] := 0;19 NODE p4[chans-chan_res_d] := 0;2021 /* TRANSITIONS **********************************/22 FROM EXTERN TO p1 RATE lambda_v; //t123 FROM EXTERN TO p2 RATE lambda_d; //t224 FROM p2 TO EXTERN PRIO 1; //t325 FROM p2 TO p3 PRIO 2; //t426 FROM p1 TO p4 PRIO 2; //t527 FROM p1 TO EXTERN RATE //t628 p1*(1/WAITING_TIME) PRIO 1;29 30

1 /* PARAMETER AND CONSTANTS **********************/ 2 CONST lambda_d := 1.5; 3 PARAMETER lambda_v := 0.02 .. 0.06 STEP 0.01; 4 CONST mue_single_v := 1/80; 5 CONST max_users_v := 50; 6 CONST chans := 8; 7 CONST chan_res_d := 1; 8 CONST chan_max_d := chans - 2; 9 CONST waiting_time := 10;10 CONST mean_single_d := 10 / (21.4/8);11 PARAMETER scv_d := 0.5, 1, 2;12 CONST var_d := scv_d * mean_single_d13 * mean_single_d;1415 /* NODES ****************************************/16 NODE p1[max_users_v] := 0;17 NODE p2[1] := 0;18 NODE p3[32] := 0;19 NODE p4[chans-chan_res_d] := 0;2021 /* TRANSITIONS **********************************/22 FROM EXTERN TO p1 RATE lambda_v; //t123 FROM EXTERN TO p2 RATE lambda_d; //t224 FROM p2 TO EXTERN PRIO 1; //t325 FROM p2 TO p3 PRIO 2; //t426 FROM p1 TO p4 PRIO 2; //t527 FROM p1 TO EXTERN RATE //t628 p1*(1/WAITING_TIME) PRIO 1;29 30

31 @<1..chan_max_d>{ //t732 IF (chans-p4) >= #33 FROM p3 TO EXTERN EMP (mean_single_d, var_d);34 }35 FROM p4 TO EXTERN RATE mue_single_v * p4; //t83637 /* RESULTS **************************************/38 // TEXTUAL (.res)39 PRINT d_loss := PROB (p3=32);40 PRINT v_block := UTIL (p1);4142 PRINT data_mean := MEAN (p3);43 PRINT voice_mean := MEAN (p4);44 PRINT voice_mean_w := MEAN (p1);4546 // GRAPHICAL (.igl)4748 PICTURE "data burst loss and voice blocking"49 PARAMETER lambda_V50 XLABEL "incoming burst rate"51 YLABEL "PROB"52 CURVE d_loss53 5455 PICTURE “Voice Blocking Probability"56 PARAMETER lambda_v57 XLABEL "incoming burst rate"58 YLABEL “PROB"59 CURVE d_loss60 61

31 @<1..chan_max_d>{ //t732 IF (chans-p4) >= #33 FROM p3 TO EXTERN EMP (mean_single_d, var_d);34 }35 FROM p4 TO EXTERN RATE mue_single_v * p4; //t83637 /* RESULTS **************************************/38 // TEXTUAL (.res)39 PRINT d_loss := PROB (p3=32);40 PRINT v_block := UTIL (p1);4142 PRINT data_mean := MEAN (p3);43 PRINT voice_mean := MEAN (p4);44 PRINT voice_mean_w := MEAN (p1);4546 // GRAPHICAL (.igl)4748 PICTURE "data burst loss and voice blocking"49 PARAMETER lambda_V50 XLABEL "incoming burst rate"51 YLABEL "PROB"52 CURVE d_loss53 5455 PICTURE “Voice Blocking Probability"56 PARAMETER lambda_v57 XLABEL "incoming burst rate"58 YLABEL “PROB"59 CURVE d_loss60 61

Page 25: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Results 1

Page 26: Delay Tolerant Voice Calls in a GSM/GPRS Cell

MOSEL-2: Results 2

Page 27: Delay Tolerant Voice Calls in a GSM/GPRS Cell

Conclusion

MOSEL is growing and getting more and more interesting features

Increased modelling power Unfortunately, the new features limit

the size of the model because of new nodes added.

We hope to start a new project on a new version of MOSEL that will be very powerful tool with many new features.