ovs 和 ovsk 有什么区别?

what is the difference between ovs and ovsk?

当运行ning mininet拓扑结构时,我们可以在mininet的mn命令中使用ovs或ovsk作为--switch参数,例如:

mn --custom topo.py  --topo topo --mac --switch ovs --controller remote
mn --custom topo.py  --topo topo --mac --switch ovsk --controller remote

所以我想知道这两个命令有什么区别吗?

由于 openvswitch 可以在用户 space 或内核 space 上 运行,我认为这可能与此有关,ovsk 表示 ovs 内核 space。但是我在文档和 google.

上找不到关于此的任何信息

有人可以帮忙吗?

来自 mn git 中的 mn 代码: ovsk 和 ovs 指向相同的对象 OVSSwitch class,出于兼容性原因“ovsk”仍然存在,但实际上它们是相同的。

SWITCHDEF = 'default'
SWITCHES = { 'user': UserSwitch,
         'ovs': OVSSwitch,
         'ovsbr' : OVSBridge,
         # Keep ovsk for compatibility with 2.0
         'ovsk': OVSSwitch,
         'ivs': IVSSwitch,
         'lxbr': LinuxBridge,
         'default': OVSSwitch }

您可以验证来自 Mininet python 代码的 Giuseppe's 答案以及 node.py 文件中的 行1253,OVSKernelSwitch = OVSSwitch写成.