Skip to content

Move bridged TC off the node NIC so the DUT can own its qdisc - #101

Open
Jafaral wants to merge 3 commits into
LabNConsulting:mainfrom
Jafaral:switch-side-tc
Open

Move bridged TC off the node NIC so the DUT can own its qdisc#101
Jafaral wants to merge 3 commits into
LabNConsulting:mainfrom
Jafaral:switch-side-tc

Conversation

@Jafaral

@Jafaral Jafaral commented Sep 6, 2026

Copy link
Copy Markdown
Contributor
  • Host-to-switch delay / rate / loss are applied on the switch, not the node NIC, so the DUT keeps its root qdisc.
  • Switch to: N is traffic toward that node (node RX, switch egress). Switch from: N is traffic from that node (node TX, IFB on switch ingress). Use two entries for both directions.
  • A node’s own delay still means that node’s TX (same pipe as from:). Network-root constraints still default to to: (RX). P2P is unchanged; warn if TC stays on the node.

Example Config

networks:
  - name: wan1
    connections:
      - to: r1
        delay: 2500
        rate: { rate: "15M", burst: 16384, limit: 131072 }
      - from: r1
        delay: 2500
        rate: { rate: "15M", burst: 16384, limit: 131072 }

Host-to-switch netem/tbf was installed on the node NIC and replaced
the DUT's root qdisc. Keep the old TX meaning: node attachment
constraints shape that node's outbound via an IFB on the switch
veth ingress. Switch-attachment constraints still shape switch
outbound. P2P stays on the node; warn instead of inventing a switch.

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
Keep TX and RX on the switch so the DUT keeps its qdisc. Switch
to: is node RX; from: is node TX (IFB). Schema is generated from
the YANG in README.org.

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
Switch tests were sharing the module munet with leftover sw1-e0/eth0.
Node delay/rate/loss now live on the switch IFB, not the node NIC.

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
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

Successfully merging this pull request may close these issues.

1 participant