我想将Mininet仿真设置升级到物理设置,并安装了10个支持OpenFlow的交换机和4个服务器 .

交换机按以下方式组织(X代表两个链路;每个层与前一个网格完全啮合):

/- B - D - F - H -\
A    X   X   X    J
\- C - E - G - I -/

预期结果是2个具有2个链路(A和J)的交换机,4个具有4个链路(D,F,E,G)的交换机,以及具有3个链路(B,C,H,I)的4个交换机 .

我得到的东西对我没有意义:https://ibb.co/gFruXw

注意A是545,B是546 ......我是553,J缺失了 . 我担心的是,不知何故,一个节点有5个链接,几乎所有节点都缺少链接,或者链接根本不存在 . 在查看DLUX中链接的ID时,我发现“不存在的链接”通常与其他链接的名称相同 . 例如,将有两个ID为openflow的节点连接器:547:3 . 在启动ODL时,我得到以下消息的重复序列(从我的代码打印):

'节点545已删除,节点545已添加,节点连接器545:5098已添加,节点连接器545:5099已添加'

另一个谜团是,如果我一遍又一遍地重新加载拓扑结构,拓扑结构会不断变化(但绝不会降级为空洞) . 这是神秘的,因为每当ODL改变拓扑时我都打印出节点和链接消息,并且我没有得到这样的消息(我得到的唯一消息是属于节点545的消息,这绝对不是唯一的交换机改变) .

在交换机上运行命令 show openflow interface ,我可以看到3或4个千兆以太网链路,如下:

GigabitEthernet1/0/1
GigabitEthernet1/0/2
GigabitEthernet1/0/3

我不太清楚如何更改这些配置,因为我不是负责连接实验设置的硬件的人 . 我希望只需通过某种形式的配置即可解决问题 .

我的问题应该很明显 . 为什么发现协议如此破碎,这里虽然它在mininet中运行良好?如果在MD-SAL中没有注册链路/节点消息,拓扑如何在DLUX中不断变化?为什么有重复的端口?我怎样才能解决这个问题?

EDIT 我've just tested the same ODL build inside Mininet, and it seems that the same issue of duplicate links occur. I'我不确定究竟是什么问题,因为它在我为控制器切换机器之前有效...