Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qdisc step on ingress is incorrect #10

Open
shemminger opened this issue Sep 7, 2023 · 4 comments
Open

Qdisc step on ingress is incorrect #10

shemminger opened this issue Sep 7, 2023 · 4 comments

Comments

@shemminger
Copy link
Contributor

The step about qdisc on ingress side is incorrect.
By default there is no ingress queue discipline.

It is possible to add ingress qdisc, but it is not the default qdisc. The ingress qdisc is special, it never queues packet it only does actions like policing or redirect.

@leandromoreira
Copy link
Owner

leandromoreira commented Sep 7, 2023

Hi there @shemminger thank you for pointing this out. Is it fair to assume that the default behavior is pfifo_fast for the default_qdisc? I'm thinking about ways to change to text and graphic to be more accurate.

source: https://www.kernel.org/doc/Documentation/sysctl/net.txt

@shemminger
Copy link
Contributor Author

Egress qdisc has an actual packet queue, and the choice of qdisc determines how it schedules those packets. See pfifo, sfq, codel, etc.

Ingress qdisc has no actual queue of packets. It is only useful as a place to apply filtering rules.
By default the ingress qdisc is not enabled.
When it is enabled, some options are to police which limits traffic to a certain maximum. Packets over that max rate get dropped.

Another ingress usage is to forward the packets to a pseudo device call ifb. With ifb the ingress packets become egress packets so more complex egress qdisc can be applied.

Lots of details here: https://tldp.org/HOWTO/html_single/Traffic-Control-HOWTO/

@leandromoreira
Copy link
Owner

Thanks @shemminger :) do you mind to review my PR in the future? (when I create one to solve this)

@shemminger
Copy link
Contributor Author

Sure, just add me as reviewer if you want

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants