1[ 2 { 3 "id": "684b", 4 "name": "Create CAKE_MQ with default setting (4 queues)", 5 "category": [ 6 "qdisc", 7 "cake_mq" 8 ], 9 "plugins": { 10 "requires": "nsPlugin" 11 }, 12 "setup": [ 13 "echo \"1\" > /sys/bus/netdevsim/del_device || true", 14 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 15 ], 16 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq", 17 "expExitCode": "0", 18 "verifyCmd": "$TC qdisc show dev $ETH", 19 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 20 "matchCount": "5", 21 "teardown": [ 22 "echo \"1\" > /sys/bus/netdevsim/del_device" 23 ] 24 }, 25 { 26 "id": "7ee8", 27 "name": "Create CAKE_MQ with bandwidth limit (4 queues)", 28 "category": [ 29 "qdisc", 30 "cake_mq" 31 ], 32 "plugins": { 33 "requires": "nsPlugin" 34 }, 35 "setup": [ 36 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 37 ], 38 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq bandwidth 1000", 39 "expExitCode": "0", 40 "verifyCmd": "$TC qdisc show dev $ETH", 41 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth 1Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 42 "matchCount": "5", 43 "teardown": [ 44 "echo \"1\" > /sys/bus/netdevsim/del_device" 45 ] 46 }, 47 { 48 "id": "1f87", 49 "name": "Create CAKE_MQ with rtt time (4 queues)", 50 "category": [ 51 "qdisc", 52 "cake_mq" 53 ], 54 "plugins": { 55 "requires": "nsPlugin" 56 }, 57 "setup": [ 58 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 59 ], 60 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq rtt 200", 61 "expExitCode": "0", 62 "verifyCmd": "$TC qdisc show dev $ETH", 63 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 200us raw overhead 0 ", 64 "matchCount": "5", 65 "teardown": [ 66 "echo \"1\" > /sys/bus/netdevsim/del_device" 67 ] 68 }, 69 { 70 "id": "e9cf", 71 "name": "Create CAKE_MQ with besteffort flag (4 queues)", 72 "category": [ 73 "qdisc", 74 "cake_mq" 75 ], 76 "plugins": { 77 "requires": "nsPlugin" 78 }, 79 "setup": [ 80 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 81 ], 82 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq besteffort", 83 "expExitCode": "0", 84 "verifyCmd": "$TC qdisc show dev $ETH", 85 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited besteffort triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 86 "matchCount": "5", 87 "teardown": [ 88 "echo \"1\" > /sys/bus/netdevsim/del_device" 89 ] 90 }, 91 { 92 "id": "7c05", 93 "name": "Create CAKE_MQ with diffserv8 flag (4 queues)", 94 "category": [ 95 "qdisc", 96 "cake_mq" 97 ], 98 "plugins": { 99 "requires": "nsPlugin" 100 }, 101 "setup": [ 102 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 103 ], 104 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq diffserv8", 105 "expExitCode": "0", 106 "verifyCmd": "$TC qdisc show dev $ETH", 107 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv8 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 108 "matchCount": "5", 109 "teardown": [ 110 "echo \"1\" > /sys/bus/netdevsim/del_device" 111 ] 112 }, 113 { 114 "id": "5a77", 115 "name": "Create CAKE_MQ with diffserv4 flag (4 queues)", 116 "category": [ 117 "qdisc", 118 "cake_mq" 119 ], 120 "plugins": { 121 "requires": "nsPlugin" 122 }, 123 "setup": [ 124 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 125 ], 126 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq diffserv4", 127 "expExitCode": "0", 128 "verifyCmd": "$TC qdisc show dev $ETH", 129 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv4 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 130 "matchCount": "5", 131 "teardown": [ 132 "echo \"1\" > /sys/bus/netdevsim/del_device" 133 ] 134 }, 135 { 136 "id": "8f7a", 137 "name": "Create CAKE_MQ with flowblind flag (4 queues)", 138 "category": [ 139 "qdisc", 140 "cake_mq" 141 ], 142 "plugins": { 143 "requires": "nsPlugin" 144 }, 145 "setup": [ 146 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 147 ], 148 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq flowblind", 149 "expExitCode": "0", 150 "verifyCmd": "$TC qdisc show dev $ETH", 151 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 flowblind nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 152 "matchCount": "5", 153 "teardown": [ 154 "echo \"1\" > /sys/bus/netdevsim/del_device" 155 ] 156 }, 157 { 158 "id": "7ef7", 159 "name": "Create CAKE_MQ with dsthost and nat flag (4 queues)", 160 "category": [ 161 "qdisc", 162 "cake_mq" 163 ], 164 "plugins": { 165 "requires": "nsPlugin" 166 }, 167 "setup": [ 168 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 169 ], 170 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq dsthost nat", 171 "expExitCode": "0", 172 "verifyCmd": "$TC qdisc show dev $ETH", 173 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 dsthost nat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 174 "matchCount": "5", 175 "teardown": [ 176 "echo \"1\" > /sys/bus/netdevsim/del_device" 177 ] 178 }, 179 { 180 "id": "2e4d", 181 "name": "Create CAKE_MQ with wash flag (4 queues)", 182 "category": [ 183 "qdisc", 184 "cake_mq" 185 ], 186 "plugins": { 187 "requires": "nsPlugin" 188 }, 189 "setup": [ 190 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 191 ], 192 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq hosts wash", 193 "expExitCode": "0", 194 "verifyCmd": "$TC qdisc show dev $ETH", 195 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 hosts nonat wash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 196 "matchCount": "5", 197 "teardown": [ 198 "echo \"1\" > /sys/bus/netdevsim/del_device" 199 ] 200 }, 201 { 202 "id": "b3e6", 203 "name": "Create CAKE_MQ with flowblind and no-split-gso flag (4 queues)", 204 "category": [ 205 "qdisc", 206 "cake_mq" 207 ], 208 "plugins": { 209 "requires": "nsPlugin" 210 }, 211 "setup": [ 212 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 213 ], 214 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq flowblind no-split-gso", 215 "expExitCode": "0", 216 "verifyCmd": "$TC qdisc show dev $ETH", 217 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 flowblind nonat nowash no-ack-filter no-split-gso rtt 100ms raw overhead 0 ", 218 "matchCount": "5", 219 "teardown": [ 220 "echo \"1\" > /sys/bus/netdevsim/del_device" 221 ] 222 }, 223 { 224 "id": "62cd", 225 "name": "Create CAKE_MQ with dual-srchost and ack-filter flag (4 queues)", 226 "category": [ 227 "qdisc", 228 "cake_mq" 229 ], 230 "plugins": { 231 "requires": "nsPlugin" 232 }, 233 "setup": [ 234 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 235 ], 236 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq dual-srchost ack-filter", 237 "expExitCode": "0", 238 "verifyCmd": "$TC qdisc show dev $ETH", 239 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 dual-srchost nonat nowash ack-filter split-gso rtt 100ms raw overhead 0 ", 240 "matchCount": "5", 241 "teardown": [ 242 "echo \"1\" > /sys/bus/netdevsim/del_device" 243 ] 244 }, 245 { 246 "id": "0df3", 247 "name": "Create CAKE_MQ with dual-dsthost and ack-filter-aggressive flag (4 queues)", 248 "category": [ 249 "qdisc", 250 "cake_mq" 251 ], 252 "plugins": { 253 "requires": "nsPlugin" 254 }, 255 "setup": [ 256 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 257 ], 258 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq dual-dsthost ack-filter-aggressive", 259 "expExitCode": "0", 260 "verifyCmd": "$TC qdisc show dev $ETH", 261 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 dual-dsthost nonat nowash ack-filter-aggressive split-gso rtt 100ms raw overhead 0 ", 262 "matchCount": "5", 263 "teardown": [ 264 "echo \"1\" > /sys/bus/netdevsim/del_device" 265 ] 266 }, 267 { 268 "id": "9a75", 269 "name": "Create CAKE_MQ with memlimit and ptm flag (4 queues)", 270 "category": [ 271 "qdisc", 272 "cake_mq" 273 ], 274 "plugins": { 275 "requires": "nsPlugin" 276 }, 277 "setup": [ 278 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 279 ], 280 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq memlimit 10000 ptm", 281 "expExitCode": "0", 282 "verifyCmd": "$TC qdisc show dev $ETH", 283 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw ptm overhead 0 memlimit 10000b ", 284 "matchCount": "5", 285 "teardown": [ 286 "echo \"1\" > /sys/bus/netdevsim/del_device" 287 ] 288 }, 289 { 290 "id": "cdef", 291 "name": "Create CAKE_MQ with fwmark and atm flag (4 queues)", 292 "category": [ 293 "qdisc", 294 "cake_mq" 295 ], 296 "plugins": { 297 "requires": "nsPlugin" 298 }, 299 "setup": [ 300 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 301 ], 302 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq fwmark 8 atm", 303 "expExitCode": "0", 304 "verifyCmd": "$TC qdisc show dev $ETH", 305 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw atm overhead 0 fwmark 0x8 ", 306 "matchCount": "5", 307 "teardown": [ 308 "echo \"1\" > /sys/bus/netdevsim/del_device" 309 ] 310 }, 311 { 312 "id": "93dd", 313 "name": "Create CAKE_MQ with overhead 0 and mpu (4 queues)", 314 "category": [ 315 "qdisc", 316 "cake_mq" 317 ], 318 "plugins": { 319 "requires": "nsPlugin" 320 }, 321 "setup": [ 322 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 323 ], 324 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq overhead 128 mpu 256", 325 "expExitCode": "0", 326 "verifyCmd": "$TC qdisc show dev $ETH", 327 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 256 ", 328 "matchCount": "5", 329 "teardown": [ 330 "echo \"1\" > /sys/bus/netdevsim/del_device" 331 ] 332 }, 333 { 334 "id": "1475", 335 "name": "Create CAKE_MQ with conservative and ingress flag (4 queues)", 336 "category": [ 337 "qdisc", 338 "cake_mq" 339 ], 340 "plugins": { 341 "requires": "nsPlugin" 342 }, 343 "setup": [ 344 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 345 ], 346 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq conservative ingress", 347 "expExitCode": "0", 348 "verifyCmd": "$TC qdisc show dev $ETH", 349 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash ingress no-ack-filter split-gso rtt 100ms atm overhead 48 ", 350 "matchCount": "5", 351 "teardown": [ 352 "echo \"1\" > /sys/bus/netdevsim/del_device" 353 ] 354 }, 355 { 356 "id": "7bf1", 357 "name": "Delete CAKE_MQ with conservative and ingress flag (4 queues)", 358 "category": [ 359 "qdisc", 360 "cake_mq" 361 ], 362 "plugins": { 363 "requires": "nsPlugin" 364 }, 365 "setup": [ 366 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 367 "$TC qdisc add dev $ETH handle 1: root cake_mq conservative ingress" 368 ], 369 "cmdUnderTest": "$TC qdisc del dev $ETH handle 1: root", 370 "expExitCode": "0", 371 "verifyCmd": "$TC qdisc show dev $ETH", 372 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash ingress no-ack-filter split-gso rtt 100ms atm overhead 48 ", 373 "matchCount": "0", 374 "teardown": [ 375 "echo \"1\" > /sys/bus/netdevsim/del_device" 376 ] 377 }, 378 { 379 "id": "ee55", 380 "name": "Replace CAKE_MQ with mpu (4 queues)", 381 "category": [ 382 "qdisc", 383 "cake_mq" 384 ], 385 "plugins": { 386 "requires": "nsPlugin" 387 }, 388 "setup": [ 389 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 390 "$TC qdisc add dev $ETH handle 1: root cake_mq overhead 128 mpu 256" 391 ], 392 "cmdUnderTest": "$TC qdisc replace dev $ETH handle 1: root cake_mq mpu 128", 393 "expExitCode": "0", 394 "verifyCmd": "$TC qdisc show dev $ETH", 395 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 128 ", 396 "matchCount": "5", 397 "teardown": [ 398 "echo \"1\" > /sys/bus/netdevsim/del_device" 399 ] 400 }, 401 { 402 "id": "6df9", 403 "name": "Change CAKE_MQ with mpu (4 queues)", 404 "category": [ 405 "qdisc", 406 "cake_mq" 407 ], 408 "plugins": { 409 "requires": "nsPlugin" 410 }, 411 "setup": [ 412 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 413 "$TC qdisc add dev $ETH handle 1: root cake_mq overhead 128 mpu 256" 414 ], 415 "cmdUnderTest": "$TC qdisc change dev $ETH handle 1: root cake_mq mpu 128", 416 "expExitCode": "0", 417 "verifyCmd": "$TC qdisc show dev $ETH", 418 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 128 mpu 128 ", 419 "matchCount": "5", 420 "teardown": [ 421 "echo \"1\" > /sys/bus/netdevsim/del_device" 422 ] 423 }, 424 { 425 "id": "67e2", 426 "name": "Show CAKE_MQ class (4 queues)", 427 "category": [ 428 "qdisc", 429 "cake_mq" 430 ], 431 "plugins": { 432 "requires": "nsPlugin" 433 }, 434 "setup": [ 435 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 436 ], 437 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq", 438 "expExitCode": "0", 439 "verifyCmd": "$TC class show dev $ETH", 440 "matchPattern": "class cake_mq", 441 "matchCount": "4", 442 "teardown": [ 443 "echo \"1\" > /sys/bus/netdevsim/del_device" 444 ] 445 }, 446 { 447 "id": "2de4", 448 "name": "Change bandwidth of CAKE_MQ (4 queues)", 449 "category": [ 450 "qdisc", 451 "cake_mq" 452 ], 453 "plugins": { 454 "requires": "nsPlugin" 455 }, 456 "setup": [ 457 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 458 "$TC qdisc add dev $ETH handle 1: root cake_mq" 459 ], 460 "cmdUnderTest": "$TC qdisc replace dev $ETH handle 1: root cake_mq bandwidth 1000", 461 "expExitCode": "0", 462 "verifyCmd": "$TC qdisc show dev $ETH", 463 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth 1Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 464 "matchCount": "5", 465 "teardown": [ 466 "echo \"1\" > /sys/bus/netdevsim/del_device" 467 ] 468 }, 469 { 470 "id": "5f62", 471 "name": "Fail to create CAKE_MQ with autorate-ingress flag (4 queues)", 472 "category": [ 473 "qdisc", 474 "cake_mq" 475 ], 476 "plugins": { 477 "requires": "nsPlugin" 478 }, 479 "setup": [ 480 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device" 481 ], 482 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq autorate-ingress", 483 "expExitCode": "2", 484 "verifyCmd": "$TC qdisc show dev $ETH", 485 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited autorate-ingress diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 486 "matchCount": "0", 487 "teardown": [ 488 "echo \"1\" > /sys/bus/netdevsim/del_device" 489 ] 490 }, 491 { 492 "id": "038e", 493 "name": "Fail to change setting of sub-qdisc under CAKE_MQ", 494 "category": [ 495 "qdisc", 496 "cake_mq" 497 ], 498 "plugins": { 499 "requires": "nsPlugin" 500 }, 501 "setup": [ 502 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 503 "$TC qdisc add dev $ETH handle 1: root cake_mq" 504 ], 505 "cmdUnderTest": "$TC qdisc add dev $ETH parent 1:1 cake besteffort flows", 506 "expExitCode": "2", 507 "verifyCmd": "$TC qdisc show dev $ETH", 508 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 509 "matchCount": "5", 510 "teardown": [ 511 "echo \"1\" > /sys/bus/netdevsim/del_device" 512 ] 513 }, 514 { 515 "id": "7bdc", 516 "name": "Fail to replace sub-qdisc under CAKE_MQ", 517 "category": [ 518 "qdisc", 519 "cake_mq" 520 ], 521 "plugins": { 522 "requires": "nsPlugin" 523 }, 524 "setup": [ 525 "echo \"1 1 4\" > /sys/bus/netdevsim/new_device", 526 "$TC qdisc add dev $ETH handle 1: root cake_mq" 527 ], 528 "cmdUnderTest": "$TC qdisc add dev $ETH parent 1:1 fq", 529 "expExitCode": "2", 530 "verifyCmd": "$TC qdisc show dev $ETH", 531 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 532 "matchCount": "5", 533 "teardown": [ 534 "echo \"1\" > /sys/bus/netdevsim/del_device" 535 ] 536 }, 537 { 538 "id": "18e0", 539 "name": "Fail to install CAKE_MQ on single queue device", 540 "category": [ 541 "qdisc", 542 "cake_mq" 543 ], 544 "plugins": { 545 "requires": "nsPlugin" 546 }, 547 "setup": [ 548 "echo \"1 1 1\" > /sys/bus/netdevsim/new_device" 549 ], 550 "cmdUnderTest": "$TC qdisc add dev $ETH handle 1: root cake_mq", 551 "expExitCode": "2", 552 "verifyCmd": "$TC qdisc show dev $ETH", 553 "matchPattern": "qdisc (cake_mq 1: root|cake 0: parent 1:[1-4]) bandwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overhead 0 ", 554 "matchCount": "0", 555 "teardown": [ 556 "echo \"1\" > /sys/bus/netdevsim/del_device" 557 ] 558 } 559] 560