With the emergence of switchdev as the canonical NIC-switch representation comes the view that we need to expose each switch port as a singular netdev.
There is, however, an impedance mismatch between that model and a few important use cases.
Take, for example, the need to scale performance of high speed ports; where a reasonable approach is to spread a single NIC-switch port's traffic across multiple PCIe devices. A single netdev representation doesn't cut it for that scenario.
There are other use cases of which involve hierarchies of VMs/containers where more of these issues emerge - for these use cases there have been discussions to use 2 or 3 netdev layers; however, even there, some challenges emerge.
Sridhar Samudrala made the argument that the switchdev port representer as is, is not the best fit for these use cases.
In this talk at Netdev 0x12 in Montreal on July 12th, 2018, Sridhar put forth a proposal that he felt would cater to various use case needs while maintaining strong control over the resources proposed by the switchdev model.
More info:
https://www.netdevconf.org/0x12/session.html?composing-and-configuring-complex-network-interfaces-exposed-from-network-devices-that-contain-a-switch