In this moonshot talk Rony Efraim Roni, Bar Yanai and Yossi Kuperman come up with a clever way to do efficient forwarding by introducing an offloaded TC hash action.
An example use case of this feature is closely emulating what Equal Cost Multipath (ECMP) based forwarding does. ECMP-like can be achieved by enabling policy which will: - First create a hash on a classical 5 tuple in hardware - Kernel s/ware receives the hashid as metadata - Use the resulting hashid as a tc filter chain id and jump to that filter chain - within the destination chain lookup a much smaller set of tc flower rules (in the equivalent 5 tuple space) and execute the associated leaf action(s) such as setting the next hop mac address, etc.
Roni et al will suggest the TC extension semantics to define the hash offload and solicit feedback from the community. They will further discuss the challenges involved.
More info: https://netdevconf.info/0x14/session.html?talk-extending-tc-with-5-tuple-has...
Reminder, registration is now open and early bird is still in effect. https://netdevconf.info/0x14/registration.html
cheers, jamal