On Wed, Dec 15, 2021 at 12:46 PM Naveen Mamindlapalli <naveen130617.lkml@xxxxxxxxx> wrote: > > Hi, > > Our NIC hardware provides a hierarchical QoS tree for each physical > link with strict > priority and DRR scheduling & also supports traffic shaping at each > level. I'm curious what the closest qdisc that supports the above > functionalities for offloading to hardware. I looked into htb/drr/prio > qdiscs, but each qdisc supports a subset of the functionality enabled > by our hardware. > > As per my understanding, The HTB hardware offload is used for shaping > rather than scheduling (strict priority/DRR). Correct. > The PRIO qdisc seems to support strict priority but not DRR. Similarly > DRR doesn't support strict priority. My assumption is your hardware does not do 5 tuple FQ for the DRR, but leverages the dscp field? Instead, linux pretty much does a 5 tuple hash universally now for packet steering (RPS) and in the sch_fq and fq_codel qdiscs. I am not really big on strict priority with dscp, as whenever someone lucks into the right dscp value they get most of the bandwidth, and it's more or less a matter of historical accident that the support in mqprio/pfifo_fast is not more abused in the field. But that's me. > > Please advise on how to effectively offload all the features. > > Is the ETS - Enhanced Transmission Selection scheduler a better fit if > we simply need to offload scheduling with strict priority and DRR? Of course, my dream is to see 5 tuple fq-codel or cake land in some offload somewhere. I don't know enough about how when and where ets is used, it's pretty new, and I'd lke to know more. > > Thanks, > Naveen -- I tried to build a better future, a few times: https://wayforward.archive.org/?site=https%3A%2F%2Fwww.icei.org Dave Täht CEO, TekLibre, LLC