[NetDev-People] 0x14: nutsnbolts talks, Hierarchical Token Bucket

Jamal Hadi Salim jhs at mojatatu.com
Mon Jan 27 16:00:31 UTC 2020


Hierarchial bandwith management is a very important packet
service for a lot of networking use cases (ranging from large data
centres to service provider use cases, etc).
Over the last decade, the TC Hierarchical Token Bucket(HTB) qdisc
has emerged as the most popular non-work conserving queueing discipline
for enabling this service in Linux.
HTB is quite flexible and versatile, but at large scale
(think thousands to million flows) it comes at a cost:
1) cpu cycles predominantly due to stalls caused by shared
queus lock contentions 2)extensive memory costs when adding many flows.

At 0x14 we have two sessions that are addressing this issue in
different ways.

Our first talk is from Yosef Kuperman, Rony Efraim and Maxim
Mikityanskiy and focuses on offloading HTB to the NIC hardware
(Mellanox cnx5).
Flow classification takes place in the TC egress clsact to avoid
any sorts of (queue) locking. Packets are tagged and the offloaded
HTB uses these tags as flow/classids to select the correct queue in
the hierarchy.
Kuperman et al will go over the challenges they overcame, show
performance numbers and solicit feedback.

More Info:
https://netdevconf.info/0x14/session.html?talk-hierarchical-QoS-hardware-offload

Our second talk is from the Google folks Stanislav Fomichev, Eric
Dumazet, Willem de Bruijn, Vlad Dumitrescu, Bill Sommerfeld and
Peter Oskolkov.
Google has for many years utilized HTB and consequently faced scaling
challenges.
With the recent introduction of Early Departure Time model (See
Van Jacobson's keynote on EDT in netdev 0x12), an opportunity has
opened up to achieve the same packet service in a more efficient way.
In this talk, Stan et al describe how they moved away from HTB
altogether.
The packet service is created using composition of BPF, FQ and
EDT. The authors will provide performance numbers, discuss some of the
outstanding challenges and solicit feedback from the community.

More info:
https://www.netdevconf.info/0x14/session.html?talk-replacing-HTB-with-EDT-and-BPF

Reminder, registration is now open and early bird is still in effect.
https://netdevconf.info/0x14/registration.html

cheers,
jamal


More information about the people mailing list