bufferbloat-tests.batch 6.73 KB
Newer Older
1 2 3 4 5 6 7
# -*- mode:conf -*-
[Command::clear_caches]
exec = ./clear_caches.sh
type = pre
essential = yes

[Command::setup_qdiscs]
8
exec = ./setup_qdiscs.sh ${qdisc_name} "${qdisc_args_down}" "${qdisc_args_up}" ${rate_down} ${rate_up} ${rtt} ${cc}
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
type = pre
essential = yes

[Command::qdisc_stats]
exec = ./qdisc_stats.sh
type = post
essential = no

[Command::tcpdump]
filename = ${data_filename}
exec = ssh ${hostname} "python tcpdump-wrapper.py start ${filename} -i ${interface} -s ${capsize}"
type = pre
essential = yes

[Command::tcpdump_stop]
filename = ${data_filename}
exec = ssh ${hostname} "python tcpdump-wrapper.py stop ${filename} -d /home/data/${batch_name}"
type = post
essential = yes

[Command::tcpdump_egress]
inherits = tcpdump
hostname = ${egress_router_hostname}
interface = ${egress_router_iface}
extra_commands = tcpdump_egress_stop

[Command::tcpdump_egress_stop]
inherits = tcpdump_stop
hostname = ${egress_router_hostname}

[Command::tcpdump_ingress]
inherits = tcpdump
hostname = ${ingress_router_hostname}
interface = ${ingress_router_iface}
extra_commands = tcpdump_ingress_stop

[Command::tcpdump_ingress_stop]
inherits = tcpdump_stop
hostname = ${ingress_router_hostname}

[Command::tcpdump_server]
inherits = tcpdump
hostname = ${server_hostname}
interface = ${server_iface}
extra_commands = tcpdump_server_stop

[Command::tcpdump_server_stop]
inherits = tcpdump_stop
hostname = ${server_hostname}

[Command::tcpdump_client]
filename = ${data_filename}
exec = python tcpdump-wrapper.py start ${filename} -i ${interface} -s ${capsize}
interface = "${client_iface}"
type = pre
essential = yes
extra_commands = tcpdump_client_stop

[Command::tcpdump_client_stop]
filename = ${data_filename}
exec = python tcpdump-wrapper.py stop ${filename} -d /home/data/${batch_name}
type = post
essential = yes

73 74 75
[Command::link_makefile]
exec = ln -s ../../Makefile batch-${batch_time}/${batch_name}/
type = post
76 77 78 79 80 81


[Batch::global]
# rc file keys
remote_metadata = ${egress_router_hostname}, ${ingress_router_hostname}, ${end_hostname}, ${delaybox_hostname}
extended_metadata = yes
82 83 84 85 86
save_raw = yes
local_bind = 10.60.1.1
control_local_bind = 10.60.1.5
title = qdisc:${qdisc_label} rep:${repetition} rtt:${rtt} rate:${rate_down}/${rate_up} cc:${cc}
filename_extra = ${rtt}-${rate_up}-${qdisc_label}-${cc}-${repetition}
87 88
output_path = batch-${batch_time}/${batch_name}/${rate_up}-${repetition}
ip_version = 4
89 90 91 92
length = 140
commands = clear_caches, setup_qdiscs, tcpdump_client, tcpdump_egress, tcpdump_ingress, tcpdump_server, qdisc_stats, link_makefile
for_qdiscs = ared, fq_codel, fq_nocodel, codel, pie, pfifo_fast, pfifo_fast_1000, sfq
for_bandwidths = 100mbit, 10mbit, 1mbit
93 94 95 96 97 98 99 100 101 102 103 104 105 106
for_rtts = 50ms
repetitions = 1
debug_log = yes
hosts = testserv-05

# Not runnable
abstract = yes

# how long to pause after each run?
pause = 5

[Batch::rrul]
inherits = global
test_name = rrul_be
107 108 109
length = 140
for_bandwidths = 10mbit, 1mbit
repetitions = 10
110 111 112 113 114 115 116 117 118 119

[Batch::tcp-upload]
inherits = global
test_name = tcp_1up_noping
disabled = yes

[Batch::tcp-upload-compete]
inherits = global
test_name = tcp_2up_delay
for_cap = fullcap
120
disabled = yes
121 122 123 124

[Batch::rtt-fair]
inherits = global
hosts = testserv-01, testserv-02, testserv-03, testserv-04
125
for_ccs = cubic, reno
126 127
test_name = rtt_fair_up
for_rtts = multi
128 129 130
for_bandwidths = 1mbit, 10mbit, 100mbit
length = 600
repetitions = 3
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146

[Batch::voip]
inherits = global
test_name = voip
disabled = yes

[Batch::voip-1up]
inherits = global
test_name = voip-1up

[Batch::voip-rrul]
inherits = global
test_name = voip-rrul

[Batch::http]
inherits = global
147 148
filename_extra = ${rtt}-${rate_up}-${http_site}-${qdisc_label}-${cc}-${repetition}
title = qdisc:${qdisc_label} rep:${repetition} site:${http_site} rtt:${rtt} rate:${rate_down}/${rate_up} cc:${cc}
149 150 151 152
test_name = http
for_rtts = multi
for_sites = google, huffpost

153 154 155 156 157 158 159 160
[Batch::http-7flow]
inherits = http
for_sites = 7flow
for_bandwidths = 1mbit
length = 5
step_size = 2.0
repetitions = 30

161 162 163 164 165 166 167
[Batch::http-1up]
inherits = http
test_name = http-1up

[Batch::http-rrul]
inherits = http
test_name = http-rrul
168 169 170 171 172 173 174 175 176 177 178 179 180 181

[Batch::burst-100]
inherits = global
test_name = bursts
test_parameters = burst-ports=100
for_ccs = cubic
disabled = true

[Batch::burst-1000]
inherits = global
test_name = bursts
test_parameters = burst-ports=1000
for_ccs = cubic
disabled = true
182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

[Arg::global]
egress_router_hostname = testbed-02
egress_router_iface = eth2
ingress_router_hostname = testbed-04
ingress_router_iface = eth1
server_hostname = testbed-05
server_iface = eth1
client_iface = eth2
delaybox_hostname = testbed-03
end_hostname = testbed-05
capsize = 128
qdisc_args =
qdisc_label = ${qdisc_name}
rate_down = 10Mbit
rate_up = 10Mbit
rtt = 50ms
qdisc_args_up = ${qdisc_args}
qdisc_args_down = ${qdisc_args}
201 202 203 204 205 206 207
cc = cubic

[Arg::cubic]
cc = cubic

[Arg::reno]
cc = reno
208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234

[Arg::fullcap]
capsize = 0

[Arg::http]
http_getter_urllist = http://testserv-05.http/mirror/${http_site}_files.txt
http_getter_dns = 10.60.5.1

[Arg::google]
inherits = http
http_site = google

[Arg::cnn]
inherits = http
http_site = cnn
step_size = 1.0

[Arg::huffpost]
inherits = http
http_site = huffpost
step_size = 1.0

[Arg::dn]
inherits = http
http_site = dn
step_size = 1.0

235 236 237 238 239 240
[Arg::7flow]
inherits = http
http_site = 7flow
step_size = 1.0


241 242 243 244 245 246 247 248
[Arg::1mbit]
rate_up = 1Mbit
ared_args_up = min 1514 max 3028
codel_args_up = target 13ms

[Arg::10mbit]
rate_up = 10Mbit

249 250 251 252 253 254
[Arg::100mbit]
rate_up = 100Mbit
rate_down = 100Mbit
ared_args_up = min 125000
ared_args_down = min 125000

255 256 257 258 259 260 261 262 263
[Arg::50ms]
rtt = 50ms

[Arg::multi]
rtt = multi

[Arg::pie]
inherits = global
qdisc_name = pie
264
qdisc_args =
265 266 267 268

[Arg::codel]
inherits = global
qdisc_name = codel
269
qdisc_args =
270 271 272 273 274 275
qdisc_args_up = ${qdisc_args} ${codel_args_up}
codel_args_up =

[Arg::fq_codel]
inherits = global
qdisc_name = fq_codel
276
qdisc_args = noecn
277 278 279 280 281
qdisc_args_up = ${qdisc_args} ${codel_args_up}
codel_args_up =

[Arg::fq_nocodel]
inherits = fq_codel
282
qdisc_args = limit 127 noecn target 100s
283 284 285
qdisc_args_up = ${qdisc_args}
qdisc_label = fq_nocodel

286 287 288 289 290 291
[Arg::fq_nocodel_1000]
inherits = fq_codel
qdisc_args = limit 1000 noecn target 100s
qdisc_args_up = ${qdisc_args}
qdisc_label = fq_nocodel

292 293 294
[Arg::ared]
inherits = global
qdisc_name = red
295 296
ared_args_up = min 12500
ared_args_down = min 12500
297
qdisc_args = limit 1514000 avpkt 1514 adaptive harddrop
298 299 300 301
qdisc_args_up = ${qdisc_args} bandwidth ${rate_up} ${ared_args_up}
qdisc_args_down = ${qdisc_args} bandwidth ${rate_down} ${ared_args_down}
qdisc_label = ared

302 303 304 305 306 307
[Arg::ared_20]
inherits = ared
ared_args_up = min 12500
ared_args_down = min 12500
qdisc_label = ared_20

308 309 310
[Arg::pfifo_fast]
inherits = global
qdisc_name = pfifo_fast
311
qdisc_args = limit 127
312 313 314 315 316

[Arg::pfifo_fast_1000]
inherits = global
qdisc_name = pfifo_fast
qdisc_args = limit 1000
317
qdisc_label = pfifo_fast_1000
318 319 320 321

[Arg::sfq]
inherits = global
qdisc_name = sfq
322
qdisc_args =
323 324 325 326 327

[Arg::sfq_1000]
inherits = global
qdisc_name = sfq
qdisc_args = limit 1000