/
loadGeneratorConfig.txt
194 lines (194 loc) · 7.2 KB
/
loadGeneratorConfig.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
# ------------------------------------------------------------------------------
# settings for the load generator (see package evaluation.loadGenerator)
# ------------------------------------------------------------------------------
#
GENERATE_LOAD_ON = APPLICATION_LEVEL
# possible values:
# - APPLICATION_LEVEL: the load generator will generate payload and send
# it through a layer 4 socket (see options below)
# - MIX_PACKET_LEVEL: the load generator will generate and send mix
# packets directly (see options below)
#
#
USE_SLOW_BUT_ACCURATE_SCHEDULER = FALSE
# use a slower but more accurate scheduler (can simulate less clients in
# parallel, but has more precise timing)
#
SCHEDULE_AHEAD = 1000000
# to decrease memory usage the load generator will schedule packets during
# load generation. the load generator will try to have always scheduled
# "SCHEDULE_AHEAD" packets in addition to the packet currently sent
#
TOLERANCE = 2500
# in microsec; displays a warning if the load generator is more than
# "TOLERANCE" microsec behind the schedule (i.e. if messages
# are sent later than specified in the trace file/by the workload model =
# delay_deviation)
#
LOG_TOLERANCE = FALSE
# will measure and display statistics about the delay_deviation
LOG_TOLERANCE_BEGIN_RECORDING_AFTER = 5000
# wait LOG_TOLERANCE_BEGIN_AFTER ms before recording
LOG_TOLERANCE_RECORDING_DURATION = 30000
# record delay_deviation for LOG_TOLERANCE_RECORDING_DURATION ms
#
# ------------------------------------------------------------------------------
# random variables:
# options below tagged with [SUPPORTS_RANDOM_VARIABLE] can be set to one of
# the following random variables:
# - [RAND_VAR:Binomial(int numberOfTrials, double probabilityOfSuccess)]:
# [int]
# - [RAND_VAR:Exponential(double mean)]:[double]
# - [RAND_VAR:Gaussian(double mu, double sigma)]:[double]
# - [RAND_VAR:Hypergeometric(int populationSize, int numberOfSuccesses,
# int sampleSize)]:[int]
# - [RAND_VAR:Poisson(double mean)]:[int]
# - [RAND_VAR:UniformDouble(double lower, double upper)]:[double]
# - [RAND_VAR:UniformInt(int lower, int upper)]:[int]
# - [RAND_VAR:Zipf(int numberOfElements, double exponent)]:[int]
# - [RAND_VAR:Weibull(double shape, double scale)]:[double]
# example: REQUEST_SIZE = [RAND_VAR:UniformInt(16, 16000)]
# see "org.apache.commons.math.random.RandomDataImpl" for details
#
#
# ------------------------------------------------------------------------------
# settings for APPLICATION_LEVEL load generation:
#
AL-MODE = AFAP
# possible values:
# - RaFM: Replay and Feedback Model (trace-based replay; cf. [1] and
# see options below)
# - AFAP: the simulated clients will send (A)s (F)ast (A)s (P)ossible
# ("greedy source model"; see options below)
# - TRACE_FILE: the load generator will replay traffic from a trace file
# (see property "TRACE_FILE_NAME" below)
# - CONSTANT_RATE: the simulated clients will send at constant rate
# (see options below)
# - POISSON: the simulated clients will send mix packets poisson
# distributed (see options below)
# [1] Karl-Peter Fuchs, Dominik Herrmann, and Hannes Federrath: "Generating
# Realistic Application Workloads for Mix-Based Systems for Controllable,
# Repeatable and Usable Experimentation", IFIP SEC 2013
#
#
# ---RaFM-options:
AL-RaFM-LIMIT_NUMBER_OF_CLIENTS = TRUE
AL-RaFM-CLIENT_LIMIT = 10
AL-RaFM-NUMBER_OF_SCHEDULER_THREADS = 4
# Note: the RaFM scheduler will use simplex or duplex mode as set in the
# anonNode config file and "simplex" corresponds to "SIMPLEX_WITH_FEEDBACK"
# in [1] ("SIMPLEX_OPEN_LOOP" mode is not available, since this is a load
# generator that suffers from tcp feedback, i.e. "SIMPLEX_OPEN_LOOP" is only
# applicable for the discrete event simulator in package
# "evaluation.simulator")
AL-RaFM_TraceFile-NAME = ./inputOutput/global/traces/auck8/auck8_5min_500user_dpe.gmf
# trace file must be in folder "./inputOutput/global/traces/" or a sub-folder
AL-RaFM_DISPLAY_DEBUG_INFO = FALSE
#
#---AL-TRACE_FILE-options:
AL-TRACE_FILE-NAME = mixed/trace.dat
# trace file must be in folder "./inputOutput/loadGenerator/" or a sub-folder
#
AL-TRACE_FILE-READ_AHEAD = 1000
# number of lines the trace reader will try to "read ahead" of the currently
# active line
#
AL-TRACE_FILE-USE_DYNAMIC_SCHEDULE = FALSE
# with a dynamic schedule, the load generator will not send requests at the
# exact points of time specified in the trace file, but always wait for the
# corresponding reply (before sending the next request)
#
# ---AFAP-options:
AL-AFAP-NUMBER_OF_CLIENTS = 10
#
# ---CONSTANT_RATE-options:
AL-CONSTANT_RATE-REQUEST_PAYLOAD_SIZE = AUTO
# each simulated client will send "AL-CONSTANT_RATE-PAYLOAD_SIZE" bytes
# per "CONSTANT_RATE_PERIOD" ms
# when set to "AUTO", the "AL-CONSTANT_RATE-REQUEST_PAYLOAD_SIZE" will be set
# to the maximum payload of a mix packet
# [SUPPORTS_RANDOM_VARIABLE]
#
AL-CONSTANT_RATE-REPLY_PAYLOAD_SIZE = AUTO
# in byte
# when set to "AUTO", the "AL-CONSTANT_RATE-REPLY_PAYLOAD_SIZE" will be set
# to the maximum payload of a reply packet
# [SUPPORTS_RANDOM_VARIABLE]
#
AL-CONSTANT_RATE-PERIOD = 1
# in seconds (float)
#
AL-CONSTANT_RATE-MESSAGES_PER_PERIOD = 0.5
# (float)
#
AL-CONSTANT_RATE-NUMBER_OF_CLIENTS = 2
#
AL-CONSTANT_RATE-REPLY_DELAY = 0.1
# in seconds (float)
# [SUPPORTS_RANDOM_VARIABLE]
#
# ---POISSON-options:
AL-POISSON-REQUEST_PAYLOAD_SIZE = AUTO
# each simulated client will send "AL-POISSON-REQUEST_PAYLOAD_SIZE" bytes
# per "CONSTANT_RATE_PERIOD" ms
# when set to "AUTO", the "AL-POISSON-REQUEST_PAYLOAD_SIZE" will be set to the
# maximum payload of a mix packet
# [SUPPORTS_RANDOM_VARIABLE]
#
AL-POISSON-REPLY_PAYLOAD_SIZE = AUTO
# in byte
# when set to "AUTO", the "AL-POISSON-REPLY_PAYLOAD_SIZE" will be set to the
# maximum payload of a reply packet
# [SUPPORTS_RANDOM_VARIABLE]
#
AL-POISSON-AVERAGE_SEND_OPERATIONS_PER_PULSE = 5
# average number of payload-objects to be sent per client and pulse (see
# "AL-POISSON-PULSE_LENGTH") (= lambda)
# (float)
# [SUPPORTS_RANDOM_VARIABLE]
#
AL-POISSON-PULSE_LENGTH = 1
# in seconds (float)
#
AL-POISSON-NUMBER_OF_CLIENTS = 4
#
AL-POISSON-REPLY_DELAY = 0.1
# in seconds (float)
# [SUPPORTS_RANDOM_VARIABLE]
#
# ------------------------------------------------------------------------------
# settings for MIX_PACKET_LEVEL load generation:
#
MPL-MODE = POISSON
# possible values:
# - AFAP: the simulated clients will send (A)s (F)ast (A)s (P)ossible
# ("greedy source model"; see options below)
# - CONSTANT_RATE: the simulated clients will send at constant rate
# (see options below)
# - POISSON: the simulated clients will send mix packets poisson
# distributed (see options below)
#
# ---AFAP-options:
MPL-AFAP-NUMBER_OF_CLIENTS = 10
#
# ---CONSTANT_RATE-options:
MPL-CONSTANT_RATE-PERIOD = 1
# in seconds (float)
#
MPL-CONSTANT_RATE-PACKET_PER_PERIOD = 2
# (float) (packets per period and client)
#
MPL-CONSTANT_RATE-NUMBER_OF_CLIENTS = 2
#
# ---POISSON-options:
MPL-POISSON-AVERAGE_PACKETS_PER_PULSE = 5
# average number of packets to be sent per client and pulse (see
# "MPL-POISSON-PULSE_LENGTH") (= lambda)
# (float)
# [SUPPORTS_RANDOM_VARIABLE]
#
MPL-POISSON-PULSE_LENGTH = 1
# in seconds (float)
#
MPL-POISSON-NUMBER_OF_CLIENTS = 4
#