1[ 2 { 3 "id": "1212", 4 "name": "Create CAKE with default setting", 5 "category": [ 6 "qdisc", 7 "cake" 8 ], 9 "plugins": { 10 "requires": "nsPlugin" 11 }, 12 "setup": [ 13 "$IP link add dev $DUMMY type dummy || /bin/true" 14 ], 15 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake", 16 "expExitCode": "0", 17 "verifyCmd": "$TC qdisc show dev $DUMMY", 18 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 19 "matchCount": "1", 20 "teardown": [ 21 "$TC qdisc del dev $DUMMY handle 1: root", 22 "$IP link del dev $DUMMY type dummy" 23 ] 24 }, 25 { 26 "id": "3281", 27 "name": "Create CAKE with bandwidth limit", 28 "category": [ 29 "qdisc", 30 "cake" 31 ], 32 "plugins": { 33 "requires": "nsPlugin" 34 }, 35 "setup": [ 36 "$IP link add dev $DUMMY type dummy || /bin/true" 37 ], 38 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake bandwidth 1000", 39 "expExitCode": "0", 40 "verifyCmd": "$TC qdisc show dev $DUMMY", 41 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth 1Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 42 "matchCount": "1", 43 "teardown": [ 44 "$TC qdisc del dev $DUMMY handle 1: root", 45 "$IP link del dev $DUMMY type dummy" 46 ] 47 }, 48 { 49 "id": "c940", 50 "name": "Create CAKE with autorate-ingress flag", 51 "category": [ 52 "qdisc", 53 "cake" 54 ], 55 "plugins": { 56 "requires": "nsPlugin" 57 }, 58 "setup": [ 59 "$IP link add dev $DUMMY type dummy || /bin/true" 60 ], 61 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake autorate-ingress", 62 "expExitCode": "0", 63 "verifyCmd": "$TC qdisc show dev $DUMMY", 64 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited autorate-ingress diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 65 "matchCount": "1", 66 "teardown": [ 67 "$TC qdisc del dev $DUMMY handle 1: root", 68 "$IP link del dev $DUMMY type dummy" 69 ] 70 }, 71 { 72 "id": "2310", 73 "name": "Create CAKE with rtt time", 74 "category": [ 75 "qdisc", 76 "cake" 77 ], 78 "plugins": { 79 "requires": "nsPlugin" 80 }, 81 "setup": [ 82 "$IP link add dev $DUMMY type dummy || /bin/true" 83 ], 84 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake rtt 200", 85 "expExitCode": "0", 86 "verifyCmd": "$TC qdisc show dev $DUMMY", 87 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 200us raw overhead", 88 "matchCount": "1", 89 "teardown": [ 90 "$TC qdisc del dev $DUMMY handle 1: root", 91 "$IP link del dev $DUMMY type dummy" 92 ] 93 }, 94 { 95 "id": "2385", 96 "name": "Create CAKE with besteffort flag", 97 "category": [ 98 "qdisc", 99 "cake" 100 ], 101 "plugins": { 102 "requires": "nsPlugin" 103 }, 104 "setup": [ 105 "$IP link add dev $DUMMY type dummy || /bin/true" 106 ], 107 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake besteffort", 108 "expExitCode": "0", 109 "verifyCmd": "$TC qdisc show dev $DUMMY", 110 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited besteffort triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 111 "matchCount": "1", 112 "teardown": [ 113 "$TC qdisc del dev $DUMMY handle 1: root", 114 "$IP link del dev $DUMMY type dummy" 115 ] 116 }, 117 { 118 "id": "a032", 119 "name": "Create CAKE with diffserv8 flag", 120 "category": [ 121 "qdisc", 122 "cake" 123 ], 124 "plugins": { 125 "requires": "nsPlugin" 126 }, 127 "setup": [ 128 "$IP link add dev $DUMMY type dummy || /bin/true" 129 ], 130 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake diffserv8", 131 "expExitCode": "0", 132 "verifyCmd": "$TC qdisc show dev $DUMMY", 133 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv8 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 134 "matchCount": "1", 135 "teardown": [ 136 "$TC qdisc del dev $DUMMY handle 1: root", 137 "$IP link del dev $DUMMY type dummy" 138 ] 139 }, 140 { 141 "id": "2349", 142 "name": "Create CAKE with diffserv4 flag", 143 "category": [ 144 "qdisc", 145 "cake" 146 ], 147 "plugins": { 148 "requires": "nsPlugin" 149 }, 150 "setup": [ 151 "$IP link add dev $DUMMY type dummy || /bin/true" 152 ], 153 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake diffserv4", 154 "expExitCode": "0", 155 "verifyCmd": "$TC qdisc show dev $DUMMY", 156 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv4 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 157 "matchCount": "1", 158 "teardown": [ 159 "$TC qdisc del dev $DUMMY handle 1: root", 160 "$IP link del dev $DUMMY type dummy" 161 ] 162 }, 163 { 164 "id": "8472", 165 "name": "Create CAKE with flowblind flag", 166 "category": [ 167 "qdisc", 168 "cake" 169 ], 170 "plugins": { 171 "requires": "nsPlugin" 172 }, 173 "setup": [ 174 "$IP link add dev $DUMMY type dummy || /bin/true" 175 ], 176 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake flowblind", 177 "expExitCode": "0", 178 "verifyCmd": "$TC qdisc show dev $DUMMY", 179 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 flowblind nonat nowash no-ack-filter split-gso rtt 100ms raw overhead", 180 "matchCount": "1", 181 "teardown": [ 182 "$TC qdisc del dev $DUMMY handle 1: root", 183 "$IP link del dev $DUMMY type dummy" 184 ] 185 }, 186 { 187 "id": "2341", 188 "name": "Create CAKE with dsthost and nat flag", 189 "category": [ 190 "qdisc", 191 "cake" 192 ], 193 "plugins": { 194 "requires": "nsPlugin" 195 }, 196 "setup": [ 197 "$IP link add dev $DUMMY type dummy || /bin/true" 198 ], 199 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake dsthost nat", 200 "expExitCode": "0", 201 "verifyCmd": "$TC qdisc show dev $DUMMY", 202 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 dsthost nat nowash no-ack-filter split-gso rtt 100ms raw overhead", 203 "matchCount": "1", 204 "teardown": [ 205 "$TC qdisc del dev $DUMMY handle 1: root", 206 "$IP link del dev $DUMMY type dummy" 207 ] 208 }, 209 { 210 "id": "5134", 211 "name": "Create CAKE with wash flag", 212 "category": [ 213 "qdisc", 214 "cake" 215 ], 216 "plugins": { 217 "requires": "nsPlugin" 218 }, 219 "setup": [ 220 "$IP link add dev $DUMMY type dummy || /bin/true" 221 ], 222 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake hosts wash", 223 "expExitCode": "0", 224 "verifyCmd": "$TC qdisc show dev $DUMMY", 225 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 hosts nonat wash no-ack-filter split-gso rtt 100ms raw overhead", 226 "matchCount": "1", 227 "teardown": [ 228 "$TC qdisc del dev $DUMMY handle 1: root", 229 "$IP link del dev $DUMMY type dummy" 230 ] 231 }, 232 { 233 "id": "2302", 234 "name": "Create CAKE with flowblind and no-split-gso flag", 235 "category": [ 236 "qdisc", 237 "cake" 238 ], 239 "plugins": { 240 "requires": "nsPlugin" 241 }, 242 "setup": [ 243 "$IP link add dev $DUMMY type dummy || /bin/true" 244 ], 245 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake flowblind no-split-gso", 246 "expExitCode": "0", 247 "verifyCmd": "$TC qdisc show dev $DUMMY", 248 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 flowblind nonat nowash no-ack-filter no-split-gso rtt 100ms raw overhead", 249 "matchCount": "1", 250 "teardown": [ 251 "$TC qdisc del dev $DUMMY handle 1: root", 252 "$IP link del dev $DUMMY type dummy" 253 ] 254 }, 255 { 256 "id": "0768", 257 "name": "Create CAKE with dual-srchost and ack-filter flag", 258 "category": [ 259 "qdisc", 260 "cake" 261 ], 262 "plugins": { 263 "requires": "nsPlugin" 264 }, 265 "setup": [ 266 "$IP link add dev $DUMMY type dummy || /bin/true" 267 ], 268 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake dual-srchost ack-filter", 269 "expExitCode": "0", 270 "verifyCmd": "$TC qdisc show dev $DUMMY", 271 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 dual-srchost nonat nowash ack-filter split-gso rtt 100ms raw overhead", 272 "matchCount": "1", 273 "teardown": [ 274 "$TC qdisc del dev $DUMMY handle 1: root", 275 "$IP link del dev $DUMMY type dummy" 276 ] 277 }, 278 { 279 "id": "0238", 280 "name": "Create CAKE with dual-dsthost and ack-filter-aggressive flag", 281 "category": [ 282 "qdisc", 283 "cake" 284 ], 285 "plugins": { 286 "requires": "nsPlugin" 287 }, 288 "setup": [ 289 "$IP link add dev $DUMMY type dummy || /bin/true" 290 ], 291 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake dual-dsthost ack-filter-aggressive", 292 "expExitCode": "0", 293 "verifyCmd": "$TC qdisc show dev $DUMMY", 294 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 dual-dsthost nonat nowash ack-filter-aggressive split-gso rtt 100ms raw overhead", 295 "matchCount": "1", 296 "teardown": [ 297 "$TC qdisc del dev $DUMMY handle 1: root", 298 "$IP link del dev $DUMMY type dummy" 299 ] 300 }, 301 { 302 "id": "6572", 303 "name": "Create CAKE with memlimit and ptm flag", 304 "category": [ 305 "qdisc", 306 "cake" 307 ], 308 "plugins": { 309 "requires": "nsPlugin" 310 }, 311 "setup": [ 312 "$IP link add dev $DUMMY type dummy || /bin/true" 313 ], 314 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake memlimit 10000 ptm", 315 "expExitCode": "0", 316 "verifyCmd": "$TC qdisc show dev $DUMMY", 317 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw ptm overhead 0 memlimit 10000b", 318 "matchCount": "1", 319 "teardown": [ 320 "$TC qdisc del dev $DUMMY handle 1: root", 321 "$IP link del dev $DUMMY type dummy" 322 ] 323 }, 324 { 325 "id": "2436", 326 "name": "Create CAKE with fwmark and atm flag", 327 "category": [ 328 "qdisc", 329 "cake" 330 ], 331 "plugins": { 332 "requires": "nsPlugin" 333 }, 334 "setup": [ 335 "$IP link add dev $DUMMY type dummy || /bin/true" 336 ], 337 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake fwmark 8 atm", 338 "expExitCode": "0", 339 "verifyCmd": "$TC qdisc show dev $DUMMY", 340 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw atm overhead 0 fwmark 0x8", 341 "matchCount": "1", 342 "teardown": [ 343 "$TC qdisc del dev $DUMMY handle 1: root", 344 "$IP link del dev $DUMMY type dummy" 345 ] 346 }, 347 { 348 "id": "3984", 349 "name": "Create CAKE with overhead and mpu", 350 "category": [ 351 "qdisc", 352 "cake" 353 ], 354 "plugins": { 355 "requires": "nsPlugin" 356 }, 357 "setup": [ 358 "$IP link add dev $DUMMY type dummy || /bin/true" 359 ], 360 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake overhead 128 mpu 256", 361 "expExitCode": "0", 362 "verifyCmd": "$TC qdisc show dev $DUMMY", 363 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 256", 364 "matchCount": "1", 365 "teardown": [ 366 "$TC qdisc del dev $DUMMY handle 1: root", 367 "$IP link del dev $DUMMY type dummy" 368 ] 369 }, 370 { 371 "id": "5421", 372 "name": "Create CAKE with conservative and ingress flag", 373 "category": [ 374 "qdisc", 375 "cake" 376 ], 377 "plugins": { 378 "requires": "nsPlugin" 379 }, 380 "setup": [ 381 "$IP link add dev $DUMMY type dummy || /bin/true" 382 ], 383 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake conservative ingress", 384 "expExitCode": "0", 385 "verifyCmd": "$TC qdisc show dev $DUMMY", 386 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash ingress no-ack-filter split-gso rtt 100ms atm overhead 48", 387 "matchCount": "1", 388 "teardown": [ 389 "$TC qdisc del dev $DUMMY handle 1: root", 390 "$IP link del dev $DUMMY type dummy" 391 ] 392 }, 393 { 394 "id": "6854", 395 "name": "Delete CAKE with conservative and ingress flag", 396 "category": [ 397 "qdisc", 398 "cake" 399 ], 400 "plugins": { 401 "requires": "nsPlugin" 402 }, 403 "setup": [ 404 "$IP link add dev $DUMMY type dummy || /bin/true", 405 "$TC qdisc add dev $DUMMY handle 1: root cake conservative ingress" 406 ], 407 "cmdUnderTest": "$TC qdisc del dev $DUMMY handle 1: root", 408 "expExitCode": "0", 409 "verifyCmd": "$TC qdisc show dev $DUMMY", 410 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash ingress no-ack-filter split-gso rtt 100ms atm overhead 48", 411 "matchCount": "0", 412 "teardown": [ 413 "$IP link del dev $DUMMY type dummy" 414 ] 415 }, 416 { 417 "id": "2342", 418 "name": "Replace CAKE with mpu", 419 "category": [ 420 "qdisc", 421 "cake" 422 ], 423 "plugins": { 424 "requires": "nsPlugin" 425 }, 426 "setup": [ 427 "$IP link add dev $DUMMY type dummy || /bin/true", 428 "$TC qdisc add dev $DUMMY handle 1: root cake overhead 128 mpu 256" 429 ], 430 "cmdUnderTest": "$TC qdisc replace dev $DUMMY handle 1: root cake mpu 128", 431 "expExitCode": "0", 432 "verifyCmd": "$TC qdisc show dev $DUMMY", 433 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 128", 434 "matchCount": "1", 435 "teardown": [ 436 "$TC qdisc del dev $DUMMY handle 1: root", 437 "$IP link del dev $DUMMY type dummy" 438 ] 439 }, 440 { 441 "id": "2313", 442 "name": "Change CAKE with mpu", 443 "category": [ 444 "qdisc", 445 "cake" 446 ], 447 "plugins": { 448 "requires": "nsPlugin" 449 }, 450 "setup": [ 451 "$IP link add dev $DUMMY type dummy || /bin/true", 452 "$TC qdisc add dev $DUMMY handle 1: root cake overhead 128 mpu 256" 453 ], 454 "cmdUnderTest": "$TC qdisc change dev $DUMMY handle 1: root cake mpu 128", 455 "expExitCode": "0", 456 "verifyCmd": "$TC qdisc show dev $DUMMY", 457 "matchPattern": "qdisc cake 1: root refcnt [0-9]+ bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 128", 458 "matchCount": "1", 459 "teardown": [ 460 "$TC qdisc del dev $DUMMY handle 1: root", 461 "$IP link del dev $DUMMY type dummy" 462 ] 463 }, 464 { 465 "id": "4365", 466 "name": "Show CAKE class", 467 "category": [ 468 "qdisc", 469 "cake" 470 ], 471 "plugins": { 472 "requires": "nsPlugin" 473 }, 474 "setup": [ 475 "$IP link add dev $DUMMY type dummy || /bin/true" 476 ], 477 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root cake", 478 "expExitCode": "0", 479 "verifyCmd": "$TC class show dev $DUMMY", 480 "matchPattern": "class cake", 481 "matchCount": "0", 482 "teardown": [ 483 "$TC qdisc del dev $DUMMY handle 1: root", 484 "$IP link del dev $DUMMY type dummy" 485 ] 486 } 487] 488