So, we are in agreement in that point: if you are going that way, you are relying on the physical switches.
I'm not sure about the problem being solved, depending on the scale.
If you are with your use-case (number of rules, macs, five-tuples, ...) outside the capabilities of the hardware, then, in my experience, it breaks down quickly. (I.e. flooding, or becoming unresponsive to configuration commands and needed to be _power cycled_, ...).
And those are switches costing easily five figures, and from two different well known vendors.
If you have practical experience with a setup, which scales more gracefully, please share.
But I'm sceptical that it exists, considering Google, Facebook, AWS all went with custom hardware.
I'm wondering, if at a certain scale of virtual NICs/flows per port, you are not better off with a hybrid approach, where software is part of a decision hierarchy. E.g Openflow.
No practical experience though.