simulation of adversarial scenarios in omnet++€¦ · Š adversary’s goal: maximize stress on...

25
Simulation of Adversarial Scenarios in OMNeT++ Putting Adversarial Queueing Theory from Its Head to Feet Daniel Berger, Martin Karsten, and Jens Schmitt OMNeT++ Workshop 2013 in Cannes, French Riviera March 5th, 2013

Upload: others

Post on 26-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

Simulation of Adversarial Scenariosin OMNeT++

Putting Adversarial Queueing Theory from ItsHead to Feet

Daniel Berger, Martin Karsten, and Jens Schmitt

OMNeT++ Workshop 2013 in Cannes, French RivieraMarch 5th, 2013

Page 2: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

1. Introduction

Introduction

1 Introduction

2 Adversarial Queueing

3 Simulation Results

4 Challenges and Future Work

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 1/18

Page 3: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

1. Introduction

Overview

Adversarial Queueing Theory (AQT) studies hypotheticalworst-case queueing scenarios.

What we did

Why simulation

Results

→ simulation of AQT scenarios

→ study, new insights, and communicate

→ e.g. on bound tightness, robustness

Goal of this talk

1 raise interest for AQT in the simulation community

2 establish simulation as complementary method to analysis

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 2/18

Page 4: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

1. Introduction

Scenario

imagine a network with the following requirement:guaranteed delay ≤ 20ms

worst-case delay? ⇒ two steps:1 determine: is a delay guarantee possible2 if yes: find tight bound (employ network calculus/. . . )

rough definition

a network is stable ⇔ a finite bound on delay exists

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 3/18

Page 5: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

1. Introduction

Scenario

imagine a network with the following requirement:guaranteed delay ≤ 20ms

worst-case delay? ⇒ two steps:1 determine: is a delay guarantee possible2 if yes: find tight bound (employ network calculus/. . . )

rough definition

a network is stable ⇔ a finite bound on delay exists

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 3/18

Page 6: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

1. Introduction

Contribution

e3

e5

e1

e2

e4

framework to capture adversarial traffic description

� in short: packet trajectories, and adversarial strategies

implementation of some classical AQT scenarios

interpretation of some of the results

� modeling assumptions, bound tightness, parameter interaction

An open simulator for the Adversarial Queueing frameworkhttp://disco.informatik.uni-kl.de/content/Aqtmodel

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 4/18

Page 7: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Adversarial Queueing

1 Introduction

2 Adversarial Queueing

3 Simulation Results

4 Challenges and Future Work

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 5/18

Page 8: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Network Instability

network instability is based on inductive constructions

� recall: mentioned cyclic graphs

e3

e5

e1

e2

e4

hypothetical adversary (cf. online algorithms)

� can inject anywhere and can choose packet trajectory� adversary’s goal: maximize stress on network

injections are subject to a leaky-bucket constraint (e.g.):for any edge: sum of injections in [t1, t2] ≤ r(t2 − t1) + b

r < edge capacity

⇒ e.g. this topology is stable:

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 6/18

Page 9: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Example of Inductive Injection Scheme

e3

e5

e1

e2

e4

1. assume a set of red packets queued at e1

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 7/18

Page 10: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Example of Inductive Injection Scheme

e3

e5

e1

e2

e4

1. assume a set of red packets queued at e12. inject blue packets into e1 with path (e1, e2, e4)

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 7/18

Page 11: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Example of Inductive Injection Scheme

e3

e5

e1

e2

e4

1. assume a set of red packets queued at e12. inject blue packets into e1 with path (e1, e2, e4)3.a inject green packets into e1 with path (e1, e3, e4).

3.b inject packets into e2⇒ slow down blue packets

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 7/18

Page 12: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Example of Inductive Injection Scheme

e3

e5

e1

e2

e4

1. assume a set of red packets queued at e12. inject blue packets into e1 with path (e1, e2, e4)3.a inject green packets into e1 with path (e1, e3, e4).

3.b inject packets into e2⇒ slow down blue packets

4. fill queue at e4,more injections,transfer to e1,repeat . . .

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 7/18

Page 13: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Effect of Adversarial Injections

queue of e4 (and others) experiences repeated bursts

burst size grows without bound over time

no upper bound on queue length or delay

e3

e5

e1

e2

e40

10

20

0 50 100 150Time [Time Steps]

Queu

e Len

gth

[Pac

kets

]

theory seeks exact conditions of stability

as an engineer: open questions may be different!?

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 8/18

Page 14: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

2. Adversarial Queueing

Open Questions

0

10

20

0 50 100 150Time [Time Steps]

Queu

e Len

gth

[Pac

kets

]

in general:

how real is the threat?

so what does it mean?

more specific:

how long does it take to induce some particular delay?

countermeasures?

how realistic are modeling assumptions?

� perfect time synchronization� infinite buffers� errors in discretization, rough calculations, bounds, . . .

assumption of initial network state (so-called initial sets)

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 9/18

Page 15: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Simulation Results

1 Introduction

2 Adversarial Queueing

3 Simulation Results

4 Challenges and Future Work

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 10/18

Page 16: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Simulation Results

Case study with four examples

Baseball (BB), due to Andrews et al., 2001

Diaz et al., 2001

graph minor A+, due to Weinard, 2006

gadget chains, Lotker et al., 2004

Disclaimer

Only exemplary study - may not be universally valid.

yet, we consider the selection of scenarios representative

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 11/18

Page 17: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Analytical Prediction vs. Simulative ResultQ

ueu

e Len

gth

[Pac

kets

]

MethodAnalysisSimulation

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 12/18

Page 18: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Bound TightnessGadget Chains, Lotker et al.

5000

10000

15000

20000

25000

Que

ue L

engt

h [P

acke

ts]

MethodSimulationAnalysis: lower bound

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 13/18

Page 19: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Rerandomization

adversary relies on strictly deterministic synchronization

� events take place on distinct nodes with exact timing� no noise: fixed channel capacity

we introduce “rerandomization”

� channel with variable delay� every traversal delay is sampled from a Normal distribution

channel mean delay = deterministic delay

delay standard deviation e.g. of 5% or 30%

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 14/18

Page 20: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

3. Simulation Results

Rerandomization

0

2000

4000

6000

8000

Queu

e Len

gth

[Pac

kets

]

Deviation

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 15/18

Page 21: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

4. Challenges and Future Work

Challenges and Future Work

1 Introduction

2 Adversarial Queueing

3 Simulation Results

4 Challenges and Future Work

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 16/18

Page 22: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

4. Challenges and Future Work

Challenges and Future Work

high number of nodes, events

long execution time

simplifying abstraction,modeling error

→ approximation

→ parallelism

→ step-wise convergencetowards realism

classical challenges in simulation

we have great interest to learn from simulation community

future work

� utilize as part of our own theoretic work in AQT� develop towards more realistic scenarios

e.g. assess the role of cross traffic in the adversary’s operation� enhance visualization

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 17/18

Page 23: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

Simulation of Adversarial Scenariosin OMNeT++

Putting Adversarial Queueing Theory from ItsHead to Feet

Daniel Berger, Martin Karsten, and Jens Schmitt

Slides will be available:http://disco.informatik.uni-kl.de/software/AQTmodel/SlidesOMNeT2013.pdf

Page 24: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

4. Challenges and Future Work

Rerandomization Detailed Operation

0

10

20

30

0 50 100 150Time [Time Steps]

Qu

eue

Len

gth

[P

acke

ts]

Deviation0%30%

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 19/18

Page 25: Simulation of Adversarial Scenarios in OMNeT++€¦ · Š adversary’s goal: maximize stress on network injections are subject to a leaky-bucket constraint (e.g.): for any edge:

4. Challenges and Future Work

Interaction of Initial Sets with Injection Rate

0.0

0.5

1.0

1.5

Del

ay [se

c]

Initial Set Size

Daniel Berger, Martin Karsten, and Jens Schmitt – Simulation of Adversarial Scenarios in OMNeT++ S. 20/18