jim9606 sriov 的 vf 之间是有 switch 的。但是可能需要在固件里配置。可以配置成虚拟 switch 或 vepa 等多种模式。如果是商业用的话比较多见 vepa ,因为要的就是隔离。
mayli 一定要说的话还真有。rdma 。但是 virtio 因为完全在内存里,再加上支持超大的 jumbo frame 支持,所以配置得当的话应该还是 virtio 好。前提是 jumbo frame 要开得够大。软件处理虚拟网络的瓶颈一般在包。因为硬件支持 tso tro ,所以通过硬件走的开销可以相当于处理最大的 jumbo frame 。处理速度的瓶颈不是复制 payload ,这个全看内存速度。难的是 header match 。用 CPU 去 hash 然后模拟 mac 表 /路由表,这就很耗 CPU 。但是对于硬件 switch 来说完全由专用电路实现。哪怕最便宜的 switch 都可以做到线速。