1 [ 1 [ 2 { 2 { 3 "id": "cb28", 3 "id": "cb28", 4 "name": "Create NETEM with default set 4 "name": "Create NETEM with default setting", 5 "category": [ 5 "category": [ 6 "qdisc", 6 "qdisc", 7 "netem" 7 "netem" 8 ], 8 ], 9 "plugins": { 9 "plugins": { 10 "requires": "nsPlugin" 10 "requires": "nsPlugin" 11 }, 11 }, 12 "setup": [ 12 "setup": [ 13 ], 13 ], 14 "cmdUnderTest": "$TC qdisc add dev $DU 14 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem", 15 "expExitCode": "0", 15 "expExitCode": "0", 16 "verifyCmd": "$TC qdisc show dev $DUMM 16 "verifyCmd": "$TC qdisc show dev $DUMMY", 17 "matchPattern": "qdisc netem 1: root r 17 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ limit", 18 "matchCount": "1", 18 "matchCount": "1", 19 "teardown": [ 19 "teardown": [ 20 "$TC qdisc del dev $DUMMY handle 1 20 "$TC qdisc del dev $DUMMY handle 1: root" 21 ] 21 ] 22 }, 22 }, 23 { 23 { 24 "id": "a089", 24 "id": "a089", 25 "name": "Create NETEM with limit flag" 25 "name": "Create NETEM with limit flag", 26 "category": [ 26 "category": [ 27 "qdisc", 27 "qdisc", 28 "netem" 28 "netem" 29 ], 29 ], 30 "plugins": { 30 "plugins": { 31 "requires": "nsPlugin" 31 "requires": "nsPlugin" 32 }, 32 }, 33 "setup": [ 33 "setup": [ 34 ], 34 ], 35 "cmdUnderTest": "$TC qdisc add dev $DU 35 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem limit 200", 36 "expExitCode": "0", 36 "expExitCode": "0", 37 "verifyCmd": "$TC qdisc show dev $DUMM 37 "verifyCmd": "$TC qdisc show dev $DUMMY", 38 "matchPattern": "qdisc netem 1: root r 38 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ limit 200", 39 "matchCount": "1", 39 "matchCount": "1", 40 "teardown": [ 40 "teardown": [ 41 "$TC qdisc del dev $DUMMY handle 1 41 "$TC qdisc del dev $DUMMY handle 1: root" 42 ] 42 ] 43 }, 43 }, 44 { 44 { 45 "id": "3449", 45 "id": "3449", 46 "name": "Create NETEM with delay time" 46 "name": "Create NETEM with delay time", 47 "category": [ 47 "category": [ 48 "qdisc", 48 "qdisc", 49 "netem" 49 "netem" 50 ], 50 ], 51 "plugins": { 51 "plugins": { 52 "requires": "nsPlugin" 52 "requires": "nsPlugin" 53 }, 53 }, 54 "setup": [ 54 "setup": [ 55 ], 55 ], 56 "cmdUnderTest": "$TC qdisc add dev $DU 56 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms", 57 "expExitCode": "0", 57 "expExitCode": "0", 58 "verifyCmd": "$TC qdisc show dev $DUMM 58 "verifyCmd": "$TC qdisc show dev $DUMMY", 59 "matchPattern": "qdisc netem 1: root r 59 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms", 60 "matchCount": "1", 60 "matchCount": "1", 61 "teardown": [ 61 "teardown": [ 62 "$TC qdisc del dev $DUMMY handle 1 62 "$TC qdisc del dev $DUMMY handle 1: root" 63 ] 63 ] 64 }, 64 }, 65 { 65 { 66 "id": "3782", 66 "id": "3782", 67 "name": "Create NETEM with distributio 67 "name": "Create NETEM with distribution and corrupt flag", 68 "category": [ 68 "category": [ 69 "qdisc", 69 "qdisc", 70 "netem" 70 "netem" 71 ], 71 ], 72 "plugins": { 72 "plugins": { 73 "requires": "nsPlugin" 73 "requires": "nsPlugin" 74 }, 74 }, 75 "setup": [ 75 "setup": [ 76 ], 76 ], 77 "cmdUnderTest": "$TC qdisc add dev $DU 77 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal corrupt 1%", 78 "expExitCode": "0", 78 "expExitCode": "0", 79 "verifyCmd": "$TC qdisc show dev $DUMM 79 "verifyCmd": "$TC qdisc show dev $DUMMY", 80 "matchPattern": "qdisc netem 1: root r 80 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms 10ms corrupt 1%", 81 "matchCount": "1", 81 "matchCount": "1", 82 "teardown": [ 82 "teardown": [ 83 "$TC qdisc del dev $DUMMY handle 1 83 "$TC qdisc del dev $DUMMY handle 1: root" 84 ] 84 ] 85 }, 85 }, 86 { 86 { 87 "id": "2b82", 87 "id": "2b82", 88 "name": "Create NETEM with distributio 88 "name": "Create NETEM with distribution and duplicate flag", 89 "category": [ 89 "category": [ 90 "qdisc", 90 "qdisc", 91 "netem" 91 "netem" 92 ], 92 ], 93 "plugins": { 93 "plugins": { 94 "requires": "nsPlugin" 94 "requires": "nsPlugin" 95 }, 95 }, 96 "setup": [ 96 "setup": [ 97 ], 97 ], 98 "cmdUnderTest": "$TC qdisc add dev $DU 98 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal duplicate 1%", 99 "expExitCode": "0", 99 "expExitCode": "0", 100 "verifyCmd": "$TC qdisc show dev $DUMM 100 "verifyCmd": "$TC qdisc show dev $DUMMY", 101 "matchPattern": "qdisc netem 1: root r 101 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms 10ms duplicate 1%", 102 "matchCount": "1", 102 "matchCount": "1", 103 "teardown": [ 103 "teardown": [ 104 "$TC qdisc del dev $DUMMY handle 1 104 "$TC qdisc del dev $DUMMY handle 1: root" 105 ] 105 ] 106 }, 106 }, 107 { 107 { 108 "id": "a932", 108 "id": "a932", 109 "name": "Create NETEM with distributio 109 "name": "Create NETEM with distribution and loss flag", 110 "category": [ 110 "category": [ 111 "qdisc", 111 "qdisc", 112 "netem" 112 "netem" 113 ], 113 ], 114 "plugins": { 114 "plugins": { 115 "requires": "nsPlugin" 115 "requires": "nsPlugin" 116 }, 116 }, 117 "setup": [ 117 "setup": [ 118 ], 118 ], 119 "cmdUnderTest": "$TC qdisc add dev $DU 119 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution pareto loss 1%", 120 "expExitCode": "0", 120 "expExitCode": "0", 121 "verifyCmd": "$TC qdisc show dev $DUMM 121 "verifyCmd": "$TC qdisc show dev $DUMMY", 122 "matchPattern": "qdisc netem 1: root r 122 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms 10ms loss 1%", 123 "matchCount": "1", 123 "matchCount": "1", 124 "teardown": [ 124 "teardown": [ 125 "$TC qdisc del dev $DUMMY handle 1 125 "$TC qdisc del dev $DUMMY handle 1: root" 126 ] 126 ] 127 }, 127 }, 128 { 128 { 129 "id": "e01a", 129 "id": "e01a", 130 "name": "Create NETEM with distributio 130 "name": "Create NETEM with distribution and loss state flag", 131 "category": [ 131 "category": [ 132 "qdisc", 132 "qdisc", 133 "netem" 133 "netem" 134 ], 134 ], 135 "plugins": { 135 "plugins": { 136 "requires": "nsPlugin" 136 "requires": "nsPlugin" 137 }, 137 }, 138 "setup": [ 138 "setup": [ 139 ], 139 ], 140 "cmdUnderTest": "$TC qdisc add dev $DU 140 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution paretonormal loss state 1", 141 "expExitCode": "0", 141 "expExitCode": "0", 142 "verifyCmd": "$TC qdisc show dev $DUMM 142 "verifyCmd": "$TC qdisc show dev $DUMMY", 143 "matchPattern": "qdisc netem 1: root r 143 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms 10ms loss state p13 1% p31 99% p32 0% p23 100% p14 0%", 144 "matchCount": "1", 144 "matchCount": "1", 145 "teardown": [ 145 "teardown": [ 146 "$TC qdisc del dev $DUMMY handle 1 146 "$TC qdisc del dev $DUMMY handle 1: root" 147 ] 147 ] 148 }, 148 }, 149 { 149 { 150 "id": "ba29", 150 "id": "ba29", 151 "name": "Create NETEM with loss gemode 151 "name": "Create NETEM with loss gemodel flag", 152 "category": [ 152 "category": [ 153 "qdisc", 153 "qdisc", 154 "netem" 154 "netem" 155 ], 155 ], 156 "plugins": { 156 "plugins": { 157 "requires": "nsPlugin" 157 "requires": "nsPlugin" 158 }, 158 }, 159 "setup": [ 159 "setup": [ 160 ], 160 ], 161 "cmdUnderTest": "$TC qdisc add dev $DU 161 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem loss gemodel 1%", 162 "expExitCode": "0", 162 "expExitCode": "0", 163 "verifyCmd": "$TC qdisc show dev $DUMM 163 "verifyCmd": "$TC qdisc show dev $DUMMY", 164 "matchPattern": "qdisc netem 1: root r 164 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*loss gemodel p 1%", 165 "matchCount": "1", 165 "matchCount": "1", 166 "teardown": [ 166 "teardown": [ 167 "$TC qdisc del dev $DUMMY handle 1 167 "$TC qdisc del dev $DUMMY handle 1: root" 168 ] 168 ] 169 }, 169 }, 170 { 170 { 171 "id": "0492", 171 "id": "0492", 172 "name": "Create NETEM with reorder fla 172 "name": "Create NETEM with reorder flag", 173 "category": [ 173 "category": [ 174 "qdisc", 174 "qdisc", 175 "netem" 175 "netem" 176 ], 176 ], 177 "plugins": { 177 "plugins": { 178 "requires": "nsPlugin" 178 "requires": "nsPlugin" 179 }, 179 }, 180 "setup": [ 180 "setup": [ 181 ], 181 ], 182 "cmdUnderTest": "$TC qdisc add dev $DU 182 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms reorder 2% gap 100", 183 "expExitCode": "0", 183 "expExitCode": "0", 184 "verifyCmd": "$TC qdisc show dev $DUMM 184 "verifyCmd": "$TC qdisc show dev $DUMMY", 185 "matchPattern": "qdisc netem 1: root r 185 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*reorder 2%", 186 "matchCount": "1", 186 "matchCount": "1", 187 "teardown": [ 187 "teardown": [ 188 "$TC qdisc del dev $DUMMY handle 1 188 "$TC qdisc del dev $DUMMY handle 1: root" 189 ] 189 ] 190 }, 190 }, 191 { 191 { 192 "id": "7862", 192 "id": "7862", 193 "name": "Create NETEM with rate limit" 193 "name": "Create NETEM with rate limit", 194 "category": [ 194 "category": [ 195 "qdisc", 195 "qdisc", 196 "netem" 196 "netem" 197 ], 197 ], 198 "plugins": { 198 "plugins": { 199 "requires": "nsPlugin" 199 "requires": "nsPlugin" 200 }, 200 }, 201 "setup": [ 201 "setup": [ 202 ], 202 ], 203 "cmdUnderTest": "$TC qdisc add dev $DU 203 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem rate 20000", 204 "expExitCode": "0", 204 "expExitCode": "0", 205 "verifyCmd": "$TC qdisc show dev $DUMM 205 "verifyCmd": "$TC qdisc show dev $DUMMY", 206 "matchPattern": "qdisc netem 1: root r 206 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*rate 20Kbit", 207 "matchCount": "1", 207 "matchCount": "1", 208 "teardown": [ 208 "teardown": [ 209 "$TC qdisc del dev $DUMMY handle 1 209 "$TC qdisc del dev $DUMMY handle 1: root" 210 ] 210 ] 211 }, 211 }, 212 { 212 { 213 "id": "7235", 213 "id": "7235", 214 "name": "Create NETEM with multiple sl 214 "name": "Create NETEM with multiple slot rate", 215 "category": [ 215 "category": [ 216 "qdisc", 216 "qdisc", 217 "netem" 217 "netem" 218 ], 218 ], 219 "plugins": { 219 "plugins": { 220 "requires": "nsPlugin" 220 "requires": "nsPlugin" 221 }, 221 }, 222 "setup": [ 222 "setup": [ 223 ], 223 ], 224 "cmdUnderTest": "$TC qdisc add dev $DU 224 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem slot 10 200 packets 2000 bytes 9000", 225 "expExitCode": "0", 225 "expExitCode": "0", 226 "verifyCmd": "$TC qdisc show dev $DUMM 226 "verifyCmd": "$TC qdisc show dev $DUMMY", 227 "matchPattern": "qdisc netem 1: root r 227 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*slot 10ns 200ns packets 2000 bytes 9000", 228 "matchCount": "1", 228 "matchCount": "1", 229 "teardown": [ 229 "teardown": [ 230 "$TC qdisc del dev $DUMMY handle 1 230 "$TC qdisc del dev $DUMMY handle 1: root" 231 ] 231 ] 232 }, 232 }, 233 { 233 { 234 "id": "5439", 234 "id": "5439", 235 "name": "Create NETEM with multiple sl 235 "name": "Create NETEM with multiple slot setting", 236 "category": [ 236 "category": [ 237 "qdisc", 237 "qdisc", 238 "netem" 238 "netem" 239 ], 239 ], 240 "plugins": { 240 "plugins": { 241 "requires": "nsPlugin" 241 "requires": "nsPlugin" 242 }, 242 }, 243 "setup": [ 243 "setup": [ 244 ], 244 ], 245 "cmdUnderTest": "$TC qdisc add dev $DU 245 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem slot distribution pareto 1ms 0.1ms", 246 "expExitCode": "0", 246 "expExitCode": "0", 247 "verifyCmd": "$TC qdisc show dev $DUMM 247 "verifyCmd": "$TC qdisc show dev $DUMMY", 248 "matchPattern": "qdisc netem 1: root r 248 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*slot distribution 1ms 100us", 249 "matchCount": "1", 249 "matchCount": "1", 250 "teardown": [ 250 "teardown": [ 251 "$TC qdisc del dev $DUMMY handle 1 251 "$TC qdisc del dev $DUMMY handle 1: root" 252 ] 252 ] 253 }, 253 }, 254 { 254 { 255 "id": "5029", 255 "id": "5029", 256 "name": "Change NETEM with loss state" 256 "name": "Change NETEM with loss state", 257 "category": [ 257 "category": [ 258 "qdisc", 258 "qdisc", 259 "netem" 259 "netem" 260 ], 260 ], 261 "plugins": { 261 "plugins": { 262 "requires": "nsPlugin" 262 "requires": "nsPlugin" 263 }, 263 }, 264 "setup": [ 264 "setup": [ 265 "$TC qdisc add dev $DUMMY handle 1 265 "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal loss 1%" 266 ], 266 ], 267 "cmdUnderTest": "$TC qdisc change dev 267 "cmdUnderTest": "$TC qdisc change dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal loss 2%", 268 "expExitCode": "0", 268 "expExitCode": "0", 269 "verifyCmd": "$TC qdisc show dev $DUMM 269 "verifyCmd": "$TC qdisc show dev $DUMMY", 270 "matchPattern": "qdisc netem 1: root r 270 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*loss 2%", 271 "matchCount": "1", 271 "matchCount": "1", 272 "teardown": [ 272 "teardown": [ 273 "$TC qdisc del dev $DUMMY handle 1 273 "$TC qdisc del dev $DUMMY handle 1: root" 274 ] 274 ] 275 }, 275 }, 276 { 276 { 277 "id": "3785", 277 "id": "3785", 278 "name": "Replace NETEM with delay time 278 "name": "Replace NETEM with delay time", 279 "category": [ 279 "category": [ 280 "qdisc", 280 "qdisc", 281 "netem" 281 "netem" 282 ], 282 ], 283 "plugins": { 283 "plugins": { 284 "requires": "nsPlugin" 284 "requires": "nsPlugin" 285 }, 285 }, 286 "setup": [ 286 "setup": [ 287 "$TC qdisc add dev $DUMMY handle 1 287 "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal loss 1%" 288 ], 288 ], 289 "cmdUnderTest": "$TC qdisc replace dev 289 "cmdUnderTest": "$TC qdisc replace dev $DUMMY handle 1: root netem delay 200ms 10ms", 290 "expExitCode": "0", 290 "expExitCode": "0", 291 "verifyCmd": "$TC qdisc show dev $DUMM 291 "verifyCmd": "$TC qdisc show dev $DUMMY", 292 "matchPattern": "qdisc netem 1: root r 292 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 200ms 10ms", 293 "matchCount": "1", 293 "matchCount": "1", 294 "teardown": [ 294 "teardown": [ 295 "$TC qdisc del dev $DUMMY handle 1 295 "$TC qdisc del dev $DUMMY handle 1: root" 296 ] 296 ] 297 }, 297 }, 298 { 298 { 299 "id": "4502", 299 "id": "4502", 300 "name": "Delete NETEM with handle", 300 "name": "Delete NETEM with handle", 301 "category": [ 301 "category": [ 302 "qdisc", 302 "qdisc", 303 "netem" 303 "netem" 304 ], 304 ], 305 "plugins": { 305 "plugins": { 306 "requires": "nsPlugin" 306 "requires": "nsPlugin" 307 }, 307 }, 308 "setup": [ 308 "setup": [ 309 "$TC qdisc add dev $DUMMY handle 1 309 "$TC qdisc add dev $DUMMY handle 1: root netem delay 100ms 10ms distribution normal" 310 ], 310 ], 311 "cmdUnderTest": "$TC qdisc del dev $DU 311 "cmdUnderTest": "$TC qdisc del dev $DUMMY handle 1: root", 312 "expExitCode": "0", 312 "expExitCode": "0", 313 "verifyCmd": "$TC qdisc show dev $DUMM 313 "verifyCmd": "$TC qdisc show dev $DUMMY", 314 "matchPattern": "qdisc netem 1: root r 314 "matchPattern": "qdisc netem 1: root refcnt [0-9]+ .*delay 100ms 10ms", 315 "matchCount": "0", 315 "matchCount": "0", 316 "teardown": [ 316 "teardown": [ 317 ] 317 ] 318 }, 318 }, 319 { 319 { 320 "id": "0785", 320 "id": "0785", 321 "name": "Show NETEM class", 321 "name": "Show NETEM class", 322 "category": [ 322 "category": [ 323 "qdisc", 323 "qdisc", 324 "netem" 324 "netem" 325 ], 325 ], 326 "plugins": { 326 "plugins": { 327 "requires": "nsPlugin" 327 "requires": "nsPlugin" 328 }, 328 }, 329 "setup": [ 329 "setup": [ 330 ], 330 ], 331 "cmdUnderTest": "$TC qdisc add dev $DU 331 "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root netem", 332 "expExitCode": "0", 332 "expExitCode": "0", 333 "verifyCmd": "$TC class show dev $DUMM 333 "verifyCmd": "$TC class show dev $DUMMY", 334 "matchPattern": "class netem 1:", 334 "matchPattern": "class netem 1:", 335 "matchCount": "0", 335 "matchCount": "0", 336 "teardown": [ 336 "teardown": [ 337 "$TC qdisc del dev $DUMMY handle 1 337 "$TC qdisc del dev $DUMMY handle 1: root" 338 ] 338 ] 339 } 339 } 340 ] 340 ]
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.