Feat/tm examples docs - #29
Merged
Mingyumaz merged 4 commits intoAug 31, 2026
Merged
Conversation
Contributor
|
The document doc/traffic-manager.md is solid and cleanly : ) |
Vineet1101
force-pushed
the
feat/tm-examples-docs
branch
from
August 25, 2026 13:55
38c9e4e to
cb7325a
Compare
Collaborator
Author
done |
Saturating UDP flow through the VOQ+fabric datapath with the switch egress port as the sole bottleneck (ingress link kept fast so the queue-less host NIC never limits). Measures goodput vs line rate. Results: 100Mbps egress -> 97.13%, 1Gbps egress -> 97.09% of line (both at the Ethernet/IP/UDP header-overhead ceiling ~97.1%), 0 drops, TM forwards 100% of offered load. Confirms the event-driven, completion-paced egress has no artificial timer bottleneck. One egress rate per invocation (bmv2 boots once per process): ./ns3 run "p4-voq-fabric-throughput --linkRate=100Mbps" ./ns3 run "p4-voq-fabric-throughput --linkRate=1000Mbps"
Design/validation doc for the Traffic Manager: VOQ -> fabric -> strict-priority egress datapath, completion-driven egress + channel model, the attribute/stats/drop-reason surface, and captured results from the unit suite, the integration example, and the throughput benchmark (near line rate at 100M/1G, zero internal drops).
Two UDP flows from separate sender hosts converge on one receiver through the qos P4 program; HIGH (prio 3) and LOW (prio 1) contend at a shared oversubscribed output port. Strict priority protects HIGH at ~96% of its offered load while LOW is squeezed to the leftover capacity and the excess is dropped from the low-priority queue. Flows enter on separate ingress ports so each has its own VOQ and the contention is resolved inside the switch (not at a shared host NIC). Adds flowtable_priority.txt (3-host qos table) and folds the demo's validated output into doc/traffic-manager.md.
…p reason Reflect the completion-driven egress fix: NotifyEgressTxComplete() now accounts for each frame by TmTxOutcome (transmitted / dropped / recirculated) rather than counting every dequeued frame as transmitted. Add the totalRecirculated counter and the EGRESS_POST_DEQUEUE_DROP drop reason to the statistics section, and bump dropsByReason to [6]. Signed-off-by: Vineet1101 <vineetgoel692@gmail.com>
Vineet1101
force-pushed
the
feat/tm-examples-docs
branch
2 times, most recently
from
August 31, 2026 13:03
005f13a to
aef9987
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
No description provided.