Add kernel configs necessary for enabling traffic control's (tc) NETEM #1334
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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 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, 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
net/sched/sch_netem.o
built into the kernel.config
and.config.old
file maintained the added kernel configs (P382)