Commit 9711f0f
authored
Add kernel configs necessary for enabling traffic control's (tc) NETEM (#1334)
Summary: Add kernel configs necessary for enabling traffic control's
(tc) NETEM
The goal with this change is to enable more advanced network shaping
during BPF testing. For example, the recently added tcp stats source
connector tracks tcp retransmissions, but we don't have a way to cause
these retransmissions in order to verify that functionality works.
I'd like to use the
[tc-netem](https://man7.org/linux/man-pages/man8/tc-netem.8.html)
functionality to inject latency into a network interface that specific
gtests can listen on (thinking link local interface that specific tests
can opt themselves into). Configuring that interface and providing a
nice c++ interface to it will come in later changes.
Busybox provides a [tc
utility](https://boxmatrix.info/wiki/Property:tc_(bbcmd)), so I don't
think any additional userspace tools are necessary. I will validate that
the userspace component of this works once this kernel is available. If
there are good ways to do this ahead of time, I'm happy to do that
validation. It seems like I need to push a kernel to gcs or find a way
for bazel to use a local kernel to do that.
Relevant Issues: N/A
Type of change: /kind test-infra
Test Plan: Verified the following the ensure the kernel config applied
correctly
- [x] Verified compiling our oldest and newest kernel results in
`net/sched/sch_netem.o` built into the kernel
```
$ make -C tools/docker .build/kernel_build/linux-build-6.1.18.tar.gz 2>&1 | grep sch_netem
CC net/sched/sch_netem.o
$ make -C tools/docker .build/kernel_build/linux-build-4.14.254.tar.gz 2>&1 | grep sch_netem
CC net/sched/sch_netem.o
```
Signed-off-by: Dom Del Nano <ddelnano@pixielabs.ai>1 parent 2734a9e commit 9711f0f
2 files changed
Lines changed: 60 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1221 | 1221 | | |
1222 | 1222 | | |
1223 | 1223 | | |
1224 | | - | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
| 1237 | + | |
| 1238 | + | |
| 1239 | + | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
| 1245 | + | |
| 1246 | + | |
| 1247 | + | |
| 1248 | + | |
| 1249 | + | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
| 1253 | + | |
| 1254 | + | |
| 1255 | + | |
| 1256 | + | |
| 1257 | + | |
| 1258 | + | |
| 1259 | + | |
| 1260 | + | |
| 1261 | + | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
| 1269 | + | |
| 1270 | + | |
| 1271 | + | |
| 1272 | + | |
| 1273 | + | |
| 1274 | + | |
| 1275 | + | |
| 1276 | + | |
1225 | 1277 | | |
1226 | 1278 | | |
1227 | 1279 | | |
| |||
0 commit comments